From 63e34d2a0e3b28fdccb27de3476002b47a54d9f2 Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Fri, 1 Jul 2016 12:42:30 +0530 Subject: [PATCH 01/12] Addition of MIBS files supported Internal Tag: OcNOS-1.2.0.203 --- mibs/BGP4-MIB.txt | 839 ++++++++++++++++ mibs/BRIDGE.txt | 1478 ++++++++++++++++++++++++++++ mibs/IEEE8023-LAG-MIB.txt | 1371 ++++++++++++++++++++++++++ mibs/IF-MIB.txt | 1899 ++++++++++++++++++++++++++++++++++++ mibs/MSTP-MIB.txt | 732 ++++++++++++++ mibs/P-BRIDGE-MIB.txt | 1245 ++++++++++++++++++++++++ mibs/Q-BRIDGE-MIB.txt | 1905 +++++++++++++++++++++++++++++++++++++ mibs/RSTP-MIB.txt | 327 +++++++ 8 files changed, 9796 insertions(+) create mode 100644 mibs/BGP4-MIB.txt create mode 100644 mibs/BRIDGE.txt create mode 100644 mibs/IEEE8023-LAG-MIB.txt create mode 100644 mibs/IF-MIB.txt create mode 100644 mibs/MSTP-MIB.txt create mode 100644 mibs/P-BRIDGE-MIB.txt create mode 100644 mibs/Q-BRIDGE-MIB.txt create mode 100644 mibs/RSTP-MIB.txt diff --git a/mibs/BGP4-MIB.txt b/mibs/BGP4-MIB.txt new file mode 100644 index 00000000..94654e0b --- /dev/null +++ b/mibs/BGP4-MIB.txt @@ -0,0 +1,839 @@ +BGP4-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, + IpAddress, Integer32, Counter32, Gauge32 + FROM SNMPv2-SMI + mib-2 + FROM RFC1213-MIB; + + bgp MODULE-IDENTITY + LAST-UPDATED "9405050000Z" + ORGANIZATION "IETF BGP Working Group" + CONTACT-INFO + " John Chu (Editor) + Postal: IBM Corp. + P.O.Box 218 + Yorktown Heights, NY 10598 + US + Tel: +1 914 945 3156 + Fax: +1 914 945 2141 + E-mail: jychu@watson.ibm.com" + DESCRIPTION + "The MIB module for BGP-4." + ::= { mib-2 15 } + + bgpVersion OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Vector of supported BGP protocol version + numbers. Each peer negotiates the version + from this vector. Versions are identified + via the string of bits contained within this + object. The first octet contains bits 0 to + 7, the second octet contains bits 8 to 15, + and so on, with the most significant bit + referring to the lowest bit number in the + octet (e.g., the MSB of the first octet + refers to bit 0). If a bit, i, is present + and set, then the version (i+1) of the BGP + is supported." + ::= { bgp 1 } + + bgpLocalAs OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local autonomous system number." + ::= { bgp 2 } + + + + -- BGP Peer table. This table contains, one entry per + -- BGP peer, information about the BGP peer. + + bgpPeerTable OBJECT-TYPE + SYNTAX SEQUENCE OF BgpPeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "BGP peer table. This table contains, + one entry per BGP peer, information about + the connections with BGP peers." + ::= { bgp 3 } + bgpPeerEntry OBJECT-TYPE + SYNTAX BgpPeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Entry containing information about the + connection with a BGP peer." + INDEX { bgpPeerRemoteAddr } + ::= { bgpPeerTable 1 } + + BgpPeerEntry ::= SEQUENCE { + bgpPeerIdentifier + IpAddress, + bgpPeerState + INTEGER, + bgpPeerAdminStatus + INTEGER, + bgpPeerNegotiatedVersion + Integer32, + bgpPeerLocalAddr + IpAddress, + bgpPeerLocalPort + INTEGER, + bgpPeerRemoteAddr + IpAddress, + bgpPeerRemotePort + INTEGER, + bgpPeerRemoteAs + INTEGER, + bgpPeerInUpdates + Counter32, + bgpPeerOutUpdates + Counter32, + bgpPeerInTotalMessages + Counter32, + bgpPeerOutTotalMessages + Counter32, + bgpPeerLastError + OCTET STRING, + bgpPeerFsmEstablishedTransitions + Counter32, + bgpPeerFsmEstablishedTime + Gauge32, + bgpPeerConnectRetryInterval + INTEGER, + bgpPeerHoldTime + INTEGER, + bgpPeerKeepAlive + INTEGER, + bgpPeerHoldTimeConfigured + INTEGER, + bgpPeerKeepAliveConfigured + INTEGER, + bgpPeerMinASOriginationInterval + INTEGER, + bgpPeerMinRouteAdvertisementInterval + INTEGER, + bgpPeerInUpdateElapsedTime + Gauge32 + } + + bgpPeerIdentifier OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The BGP Identifier of this entry's BGP + peer." + ::= { bgpPeerEntry 1 } + + bgpPeerState OBJECT-TYPE + SYNTAX INTEGER { + idle(1), + connect(2), + active(3), + opensent(4), + openconfirm(5), + established(6) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The BGP peer connection state." + ::= { bgpPeerEntry 2 } + + bgpPeerAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + stop(1), + start(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The desired state of the BGP connection. + A transition from 'stop' to 'start' will + cause the BGP Start Event to be generated. + A transition from 'start' to 'stop' will + cause the BGP Stop Event to be generated. + This parameter can be used to restart BGP + peer connections. Care should be used in + providing write access to this object + without adequate authentication." + ::= { bgpPeerEntry 3 } + + bgpPeerNegotiatedVersion OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The negotiated version of BGP running + between the two peers." + ::= { bgpPeerEntry 4 } + + bgpPeerLocalAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local IP address of this entry's BGP + connection." + ::= { bgpPeerEntry 5 } + + bgpPeerLocalPort OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local port for the TCP connection + between the BGP peers." + ::= { bgpPeerEntry 6 } + + bgpPeerRemoteAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The remote IP address of this entry's BGP + peer." + ::= { bgpPeerEntry 7 } + + bgpPeerRemotePort OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The remote port for the TCP connection + between the BGP peers. Note that the + objects bgpPeerLocalAddr, + bgpPeerLocalPort, bgpPeerRemoteAddr and + bgpPeerRemotePort provide the appropriate + reference to the standard MIB TCP + connection table." + ::= { bgpPeerEntry 8 } + + bgpPeerRemoteAs OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The remote autonomous system number." + ::= { bgpPeerEntry 9 } + + bgpPeerInUpdates OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of BGP UPDATE messages + received on this connection. This object + should be initialized to zero (0) when the + connection is established." + ::= { bgpPeerEntry 10 } + + bgpPeerOutUpdates OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of BGP UPDATE messages + transmitted on this connection. This + object should be initialized to zero (0) + when the connection is established." + ::= { bgpPeerEntry 11 } + + bgpPeerInTotalMessages OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of messages received + from the remote peer on this connection. + This object should be initialized to zero + when the connection is established." + ::= { bgpPeerEntry 12 } + + bgpPeerOutTotalMessages OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of messages transmitted to + the remote peer on this connection. This + object should be initialized to zero when + the connection is established." + ::= { bgpPeerEntry 13 } + + bgpPeerLastError OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (2)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The last error code and subcode seen by this + peer on this connection. If no error has + occurred, this field is zero. Otherwise, the + first byte of this two byte OCTET STRING + contains the error code, and the second byte + contains the subcode." + ::= { bgpPeerEntry 14 } + + bgpPeerFsmEstablishedTransitions OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of times the BGP FSM + transitioned into the established state." + ::= { bgpPeerEntry 15 } + + bgpPeerFsmEstablishedTime OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This timer indicates how long (in + seconds) this peer has been in the + Established state or how long + since this peer was last in the + Established state. It is set to zero when + a new peer is configured or the router is + booted." + ::= { bgpPeerEntry 16 } + + bgpPeerConnectRetryInterval OBJECT-TYPE + SYNTAX INTEGER (1..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time interval in seconds for the + ConnectRetry timer. The suggested value + for this timer is 120 seconds." + ::= { bgpPeerEntry 17 } + + bgpPeerHoldTime OBJECT-TYPE + SYNTAX INTEGER ( 0 | 3..65535 ) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Time interval in seconds for the Hold + Timer established with the peer. The + value of this object is calculated by this + BGP speaker by using the smaller of the + value in bgpPeerHoldTimeConfigured and the + Hold Time received in the OPEN message. + This value must be at lease three seconds + if it is not zero (0) in which case the + Hold Timer has not been established with + the peer, or, the value of + bgpPeerHoldTimeConfigured is zero (0)." + ::= { bgpPeerEntry 18 } + + bgpPeerKeepAlive OBJECT-TYPE + SYNTAX INTEGER ( 0 | 1..21845 ) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Time interval in seconds for the KeepAlive + timer established with the peer. The value + of this object is calculated by this BGP + speaker such that, when compared with + bgpPeerHoldTime, it has the same + proportion as what + bgpPeerKeepAliveConfigured has when + compared with bgpPeerHoldTimeConfigured. + If the value of this object is zero (0), + it indicates that the KeepAlive timer has + not been established with the peer, or, + the value of bgpPeerKeepAliveConfigured is + zero (0)." + ::= { bgpPeerEntry 19 } + + bgpPeerHoldTimeConfigured OBJECT-TYPE + SYNTAX INTEGER ( 0 | 3..65535 ) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time interval in seconds for the Hold Time + configured for this BGP speaker with this + peer. This value is placed in an OPEN + message sent to this peer by this BGP + speaker, and is compared with the Hold + Time field in an OPEN message received + from the peer when determining the Hold + Time (bgpPeerHoldTime) with the peer. + This value must not be less than three + seconds if it is not zero (0) in which + case the Hold Time is NOT to be + established with the peer. The suggested + value for this timer is 90 seconds." + ::= { bgpPeerEntry 20 } + + bgpPeerKeepAliveConfigured OBJECT-TYPE + SYNTAX INTEGER ( 0 | 1..21845 ) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time interval in seconds for the + KeepAlive timer configured for this BGP + speaker with this peer. The value of this + object will only determine the + KEEPALIVE messages' frequency relative to + the value specified in + bgpPeerHoldTimeConfigured; the actual + time interval for the KEEPALIVE messages + is indicated by bgpPeerKeepAlive. A + reasonable maximum value for this timer + would be configured to be one + third of that of + bgpPeerHoldTimeConfigured. + If the value of this object is zero (0), + no periodical KEEPALIVE messages are sent + to the peer after the BGP connection has + been established. The suggested value for + this timer is 30 seconds." + ::= { bgpPeerEntry 21 } + + bgpPeerMinASOriginationInterval OBJECT-TYPE + SYNTAX INTEGER (1..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time interval in seconds for the + MinASOriginationInterval timer. + The suggested value for this timer is 15 + seconds." + ::= { bgpPeerEntry 22 } + + bgpPeerMinRouteAdvertisementInterval OBJECT-TYPE + SYNTAX INTEGER (1..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time interval in seconds for the + MinRouteAdvertisementInterval timer. + The suggested value for this timer is 30 + seconds." + ::= { bgpPeerEntry 23 } + + bgpPeerInUpdateElapsedTime OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Elapsed time in seconds since the last BGP + UPDATE message was received from the peer. + Each time bgpPeerInUpdates is incremented, + the value of this object is set to zero + (0)." + ::= { bgpPeerEntry 24 } + + + bgpIdentifier OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The BGP Identifier of local system." + ::= { bgp 4 } + + -- Received Path Attribute Table. This table contains, + -- one entry per path to a network, path attributes + -- received from all peers running BGP version 3 or + -- less. This table is deprecated. + + bgpRcvdPathAttrTable OBJECT-TYPE + SYNTAX SEQUENCE OF BgpPathAttrEntry + MAX-ACCESS not-accessible + STATUS obsolete + DESCRIPTION + "The BGP Received Path Attribute Table + contains information about paths to + destination networks received from all + peers running BGP version 3 or less. + --IPI Comments: Not Supported" + ::= { bgp 5 } + + bgpPathAttrEntry OBJECT-TYPE + SYNTAX BgpPathAttrEntry + MAX-ACCESS not-accessible + STATUS obsolete + DESCRIPTION + "Information about a path to a network. + --IPI Comments: Not Supported" + INDEX { bgpPathAttrDestNetwork, + bgpPathAttrPeer } + ::= { bgpRcvdPathAttrTable 1 } + + BgpPathAttrEntry ::= SEQUENCE { + bgpPathAttrPeer + IpAddress, + bgpPathAttrDestNetwork + IpAddress, + bgpPathAttrOrigin + INTEGER, + bgpPathAttrASPath + OCTET STRING, + bgpPathAttrNextHop + IpAddress, + bgpPathAttrInterASMetric + Integer32 + } + + bgpPathAttrPeer OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The IP address of the peer where the path + information was learned. + --IPI Comments: Not Supported" + ::= { bgpPathAttrEntry 1 } + + bgpPathAttrDestNetwork OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The address of the destination network. + --IPI Comments: Not Supported" + ::= { bgpPathAttrEntry 2 } + + bgpPathAttrOrigin OBJECT-TYPE + SYNTAX INTEGER { + igp(1),-- networks are interior + egp(2),-- networks learned via EGP + incomplete(3) -- undetermined + } + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The ultimate origin of the path information. + --IPI Comments: Not Supported" + ::= { bgpPathAttrEntry 3 } + + bgpPathAttrASPath OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (2..255)) + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The set of ASs that must be traversed to + reach the network. This object is + probably best represented as SEQUENCE OF + INTEGER. For SMI compatibility, though, + it is represented as OCTET STRING. Each + AS is represented as a pair of octets + according to the following algorithm: + + first-byte-of-pair = ASNumber / 256; + second-byte-of-pair = ASNumber & 255; + --IPI Comments: Not Supported" + ::= { bgpPathAttrEntry 4 } + + bgpPathAttrNextHop OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The address of the border router that + should be used for the destination + network. + --IPI Comments: Not Supported" + ::= { bgpPathAttrEntry 5 } + + bgpPathAttrInterASMetric OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The optional inter-AS metric. If this + attribute has not been provided for this + route, the value for this object is 0. + --IPI Comments: Not Supported" + ::= { bgpPathAttrEntry 6 } + + + + -- BGP-4 Received Path Attribute Table. This table + -- contains, one entry per path to a network, path + -- attributes received from all peers running BGP-4. + + bgp4PathAttrTable OBJECT-TYPE + SYNTAX SEQUENCE OF Bgp4PathAttrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The BGP-4 Received Path Attribute Table + contains information about paths to + destination networks received from all + BGP4 peers. + --IPI Comments: Not Supported" + ::= { bgp 6 } + + bgp4PathAttrEntry OBJECT-TYPE + SYNTAX Bgp4PathAttrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a path to a network. + --IPI Comments: Not Supported" + INDEX { bgp4PathAttrIpAddrPrefix, + bgp4PathAttrIpAddrPrefixLen, + bgp4PathAttrPeer } + ::= { bgp4PathAttrTable 1 } + + Bgp4PathAttrEntry ::= SEQUENCE { + bgp4PathAttrPeer + IpAddress, + bgp4PathAttrIpAddrPrefixLen + INTEGER, + bgp4PathAttrIpAddrPrefix + IpAddress, + bgp4PathAttrOrigin + INTEGER, + bgp4PathAttrASPathSegment + OCTET STRING, + bgp4PathAttrNextHop + IpAddress, + bgp4PathAttrMultiExitDisc + INTEGER, + bgp4PathAttrLocalPref + INTEGER, + bgp4PathAttrAtomicAggregate + INTEGER, + bgp4PathAttrAggregatorAS + INTEGER, + bgp4PathAttrAggregatorAddr + IpAddress, + bgp4PathAttrCalcLocalPref + INTEGER, + bgp4PathAttrBest + INTEGER, + bgp4PathAttrUnknown + OCTET STRING + + } + + bgp4PathAttrPeer OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the peer where the path + information was learned. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 1 } + + bgp4PathAttrIpAddrPrefixLen OBJECT-TYPE + SYNTAX INTEGER (0..32) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Length in bits of the IP address prefix + in the Network Layer Reachability + Information field. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 2 } + + bgp4PathAttrIpAddrPrefix OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An IP address prefix in the Network Layer + Reachability Information field. This object + is an IP address containing the prefix with + length specified by + bgp4PathAttrIpAddrPrefixLen. + Any bits beyond the length specified by + bgp4PathAttrIpAddrPrefixLen are zeroed. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 3 } + + bgp4PathAttrOrigin OBJECT-TYPE + SYNTAX INTEGER { + igp(1),-- networks are interior + egp(2),-- networks learned + -- via EGP + incomplete(3) -- undetermined + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The ultimate origin of the path + information. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 4 } + + bgp4PathAttrASPathSegment OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (2..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence of AS path segments. Each AS + path segment is represented by a triple + . + + The type is a 1-octet field which has two + possible values: + 1 AS_SET: unordered set of ASs a + route in the UPDATE + message has traversed + 2 AS_SEQUENCE: ordered set of ASs + a route in the UPDATE + message has traversed. + + The length is a 1-octet field containing the + number of ASs in the value field. + + The value field contains one or more AS + numbers, each AS is represented in the octet + string as a pair of octets according to the + following algorithm: + first-byte-of-pair = ASNumber / 256; + second-byte-of-pair = ASNumber & 255; + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 5 } + + bgp4PathAttrNextHop OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the border router that + should be used for the destination + network. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 6 } + + bgp4PathAttrMultiExitDisc OBJECT-TYPE + SYNTAX INTEGER (-1..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This metric is used to discriminate + between multiple exit points to an + adjacent autonomous system. A value of -1 + indicates the absence of this attribute. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 7 } + + bgp4PathAttrLocalPref OBJECT-TYPE + SYNTAX INTEGER (-1..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The originating BGP4 speaker's degree of + preference for an advertised route. A + value of -1 indicates the absence of this + attribute. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 8 } + + bgp4PathAttrAtomicAggregate OBJECT-TYPE + SYNTAX INTEGER { + lessSpecificRrouteNotSelected(1), + lessSpecificRouteSelected(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether or not the local system has + selected a less specific route without + selecting a more specific route. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 9 } + + bgp4PathAttrAggregatorAS OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The AS number of the last BGP4 speaker that + performed route aggregation. A value of + zero (0) indicates the absence of this + attribute. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 10 } + + bgp4PathAttrAggregatorAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the last BGP4 speaker + that performed route aggregation. A value + of 0.0.0.0 indicates the absence of this + attribute. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 11 } + + bgp4PathAttrCalcLocalPref OBJECT-TYPE + SYNTAX INTEGER (-1..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The degree of preference calculated by the + receiving BGP4 speaker for an advertised + route. A value of -1 indicates the + absence of this attribute. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 12 } + + bgp4PathAttrBest OBJECT-TYPE + SYNTAX INTEGER { + false(1),-- not chosen as best route + true(2) -- chosen as best route + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An indication of whether or not this route + was chosen as the best BGP4 route. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 13 } + + bgp4PathAttrUnknown OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "One or more path attributes not understood + by this BGP4 speaker. Size zero (0) + indicates the absence of such + attribute(s). Octets beyond the maximum + size, if any, are not recorded by this + object. + --IPI Comments: Not Supported" + ::= { bgp4PathAttrEntry 14 } + + + -- Traps. + + bgpTraps OBJECT IDENTIFIER ::= { bgp 7 } + + bgpEstablished NOTIFICATION-TYPE + OBJECTS { bgpPeerLastError, + bgpPeerState } + STATUS current + DESCRIPTION + "The BGP Established event is generated when + the BGP FSM enters the ESTABLISHED state." + ::= { bgpTraps 1 } + + bgpBackwardTransition NOTIFICATION-TYPE + OBJECTS { bgpPeerLastError, + bgpPeerState } + STATUS current + DESCRIPTION + "The BGPBackwardTransition Event is generated + when the BGP FSM moves from a higher numbered + state to a lower numbered state." + ::= { bgpTraps 2 } + +END \ No newline at end of file diff --git a/mibs/BRIDGE.txt b/mibs/BRIDGE.txt new file mode 100644 index 00000000..f3abcd44 --- /dev/null +++ b/mibs/BRIDGE.txt @@ -0,0 +1,1478 @@ +-- ***************************************************************** +-- BRIDGE-MIB.my: Managed Objects for Bridges +-- +-- April 2006, Jayakumar Kadirvelu +-- +-- Copyright (c) 2006 by cisco Systems, Inc. +-- All rights reserved. +-- ***************************************************************** +-- +-- This mib was extracted from RFC 4188 + + BRIDGE-MIB DEFINITIONS ::= BEGIN + + -- ---------------------------------------------------------- -- + -- MIB for IEEE 802.1D devices + -- ---------------------------------------------------------- -- + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, + Counter32, Integer32, TimeTicks, mib-2 + FROM SNMPv2-SMI + TEXTUAL-CONVENTION, MacAddress + FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF + InterfaceIndex FROM IF-MIB + ; + + dot1dBridge MODULE-IDENTITY + LAST-UPDATED "200509190000Z" + ORGANIZATION "IETF Bridge MIB Working Group" + CONTACT-INFO + "Email: bridge-mib@ietf.org + + K.C. Norseth (Editor) + L-3 Communications + Tel: +1 801-594-2809 + Email: kenyon.c.norseth@L-3com.com + Postal: 640 N. 2200 West. + Salt Lake City, Utah 84116-0850 + Les Bell (Editor) + 3Com Europe Limited + Phone: +44 1442 438025 + Email: elbell@ntlworld.com + Postal: 3Com Centre, Boundary Way + Hemel Hempstead + Herts. HP2 7YU + UK + + Send comments to " + DESCRIPTION + "The Bridge MIB module for managing devices that support + IEEE 802.1D. + + Copyright (C) The Internet Society (2005). This version of + this MIB module is part of RFC 4188; see the RFC itself for + full legal notices." + REVISION "200509190000Z" + DESCRIPTION + "Third revision, published as part of RFC 4188. + + The MIB module has been converted to SMIv2 format. + Conformance statements have been added and some + description and reference clauses have been updated. + + The object dot1dStpPortPathCost32 was added to + support IEEE 802.1t and the permissible values of + dot1dStpPriority and dot1dStpPortPriority have been + clarified for bridges supporting IEEE 802.1t or + IEEE 802.1w. + + The interpretation of dot1dStpTimeSinceTopologyChange + has been clarified for bridges supporting the Rapid + Spanning Tree Protocol (RSTP)." + REVISION "199307310000Z" + DESCRIPTION + "Second revision, published as part of RFC 1493." + REVISION "199112310000Z" + DESCRIPTION + "Initial revision, published as part of RFC 1286." + ::= { mib-2 17 } + + + -- ---------------------------------------------------------- -- + -- Textual Conventions + -- ---------------------------------------------------------- -- + + BridgeId ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The Bridge-Identifier, as used in the Spanning Tree + Protocol, to uniquely identify a bridge. Its first two + octets (in network byte order) contain a priority value, + and its last 6 octets contain the MAC address used to + refer to a bridge in a unique fashion (typically, the + numerically smallest MAC address of all ports on the + bridge)." + SYNTAX OCTET STRING (SIZE (8)) + + Timeout ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "A Spanning Tree Protocol (STP) timer in units of 1/100 + seconds. Several objects in this MIB module represent + values of timers used by the Spanning Tree Protocol. + In this MIB, these timers have values in units of + hundredths of a second (i.e., 1/100 secs). + + These timers, when stored in a Spanning Tree Protocol's + BPDU, are in units of 1/256 seconds. Note, however, that + 802.1D-1998 specifies a settable granularity of no more + than one second for these timers. To avoid ambiguity, + a conversion algorithm is defined below for converting + between the different units, which ensures a timer's + value is not distorted by multiple conversions. + + To convert a Timeout value into a value in units of + 1/256 seconds, the following algorithm should be used: + + b = floor( (n * 256) / 100) + + where: + floor = quotient [ignore remainder] + n is the value in 1/100 second units + b is the value in 1/256 second units + + To convert the value from 1/256 second units back to + 1/100 seconds, the following algorithm should be used: + + n = ceiling( (b * 100) / 256) + + where: + ceiling = quotient [if remainder is 0], or + quotient + 1 [if remainder is nonzero] + n is the value in 1/100 second units + b is the value in 1/256 second units + + Note: it is important that the arithmetic operations are + done in the order specified (i.e., multiply first, + divide second)." + SYNTAX Integer32 + + -- ---------------------------------------------------------- -- + -- subtrees in the Bridge MIB + -- ---------------------------------------------------------- -- + + dot1dNotifications OBJECT IDENTIFIER ::= { dot1dBridge 0 } + + dot1dBase OBJECT IDENTIFIER ::= { dot1dBridge 1 } + dot1dStp OBJECT IDENTIFIER ::= { dot1dBridge 2 } + + dot1dSr OBJECT IDENTIFIER ::= { dot1dBridge 3 } + -- documented in RFC 1525 + + dot1dTp OBJECT IDENTIFIER ::= { dot1dBridge 4 } + dot1dStatic OBJECT IDENTIFIER ::= { dot1dBridge 5 } + + -- Subtrees used by Bridge MIB Extensions: + -- pBridgeMIB MODULE-IDENTITY ::= { dot1dBridge 6 } + -- qBridgeMIB MODULE-IDENTITY ::= { dot1dBridge 7 } + -- Note that the practice of registering related MIB modules + -- below dot1dBridge has been discouraged since there is no + -- robust mechanism to track such registrations. + + dot1dConformance OBJECT IDENTIFIER ::= { dot1dBridge 8 } + + -- ---------------------------------------------------------- -- + -- the dot1dBase subtree + -- ---------------------------------------------------------- -- + -- Implementation of the dot1dBase subtree is mandatory for all + -- bridges. + -- ---------------------------------------------------------- -- + + dot1dBaseBridgeAddress OBJECT-TYPE + + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The MAC address used by this bridge when it must be + referred to in a unique fashion. It is recommended + that this be the numerically smallest MAC address of + all ports that belong to this bridge. However, it is only + required to be unique. When concatenated with + dot1dStpPriority, a unique BridgeIdentifier is formed, + which is used in the Spanning Tree Protocol." + REFERENCE + "IEEE 802.1D-1998: clauses 14.4.1.1.3 and 7.12.5" + ::= { dot1dBase 1 } + + dot1dBaseNumPorts OBJECT-TYPE + SYNTAX Integer32 + UNITS "ports" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of ports controlled by this bridging + entity." + REFERENCE + "IEEE 802.1D-1998: clause 14.4.1.1.3" + ::= { dot1dBase 2 } + + dot1dBaseType OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + transparent-only(2), + sourceroute-only(3), + srt(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates what type of bridging this bridge can + perform. If a bridge is actually performing a + certain type of bridging, this will be indicated by + entries in the port table for the given type." + ::= { dot1dBase 3 } + + -- ---------------------------------------------------------- -- + -- The Generic Bridge Port Table + -- ---------------------------------------------------------- -- + dot1dBasePortTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dBasePortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains generic information about every + port that is associated with this bridge. Transparent, + source-route, and srt ports are included." + ::= { dot1dBase 4 } + + dot1dBasePortEntry OBJECT-TYPE + SYNTAX Dot1dBasePortEntry + MAX-ACCESS not-accessible + STATUS current + + DESCRIPTION + "A list of information for each port of the bridge." + REFERENCE + "IEEE 802.1D-1998: clause 14.4.2, 14.6.1" + INDEX { dot1dBasePort } + ::= { dot1dBasePortTable 1 } + + Dot1dBasePortEntry ::= + SEQUENCE { + dot1dBasePort + Integer32, + dot1dBasePortIfIndex + InterfaceIndex, + dot1dBasePortCircuit + OBJECT IDENTIFIER, + dot1dBasePortDelayExceededDiscards + Counter32, + dot1dBasePortMtuExceededDiscards + Counter32 + } + + dot1dBasePort OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The port number of the port for which this entry + contains bridge management information." + ::= { dot1dBasePortEntry 1 } + + dot1dBasePortIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of the instance of the ifIndex object, + defined in IF-MIB, for the interface corresponding + to this port." + ::= { dot1dBasePortEntry 2 } + + dot1dBasePortCircuit OBJECT-TYPE + SYNTAX OBJECT IDENTIFIER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "For a port that (potentially) has the same value of + dot1dBasePortIfIndex as another port on the same bridge. + This object contains the name of an object instance + unique to this port. For example, in the case where + multiple ports correspond one-to-one with multiple X.25 + virtual circuits, this value might identify an (e.g., + the first) object instance associated with the X.25 + virtual circuit corresponding to this port. + + For a port which has a unique value of + dot1dBasePortIfIndex, this object can have the value + { 0 0 }." + ::= { dot1dBasePortEntry 3 } + + dot1dBasePortDelayExceededDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of frames discarded by this port due + to excessive transit delay through the bridge. It + is incremented by both transparent and source + route bridges." + REFERENCE + "IEEE 802.1D-1998: clause 14.6.1.1.3" + ::= { dot1dBasePortEntry 4 } + + dot1dBasePortMtuExceededDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of frames discarded by this port due + to an excessive size. It is incremented by both + transparent and source route bridges." + REFERENCE + "IEEE 802.1D-1998: clause 14.6.1.1.3" + ::= { dot1dBasePortEntry 5 } + + -- ---------------------------------------------------------- -- + -- the dot1dStp subtree + -- ---------------------------------------------------------- -- + -- Implementation of the dot1dStp subtree is optional. It is + -- implemented by those bridges that support the Spanning Tree + -- Protocol. + -- ---------------------------------------------------------- -- + + dot1dStpProtocolSpecification OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + decLb100(2), + ieee8021d(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An indication of what version of the Spanning Tree + Protocol is being run. The value 'decLb100(2)' + indicates the DEC LANbridge 100 Spanning Tree protocol. + IEEE 802.1D implementations will return 'ieee8021d(3)'. + If future versions of the IEEE Spanning Tree Protocol + that are incompatible with the current version + are released a new value will be defined." + ::= { dot1dStp 1 } + + dot1dStpPriority OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value of the write-able portion of the Bridge ID + (i.e., the first two octets of the (8 octet long) Bridge + ID). The other (last) 6 octets of the Bridge ID are + given by the value of dot1dBaseBridgeAddress. + On bridges supporting IEEE 802.1t or IEEE 802.1w, + permissible values are 0-61440, in steps of 4096." + REFERENCE + "IEEE 802.1D-1998 clause 8.10.2, Table 8-4, + IEEE 802.1t clause 8.10.2, Table 8-4, clause 14.3." + ::= { dot1dStp 2 } + + dot1dStpTimeSinceTopologyChange OBJECT-TYPE + SYNTAX TimeTicks + UNITS "centi-seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time (in hundredths of a second) since the + last time a topology change was detected by the + bridge entity. + For RSTP, this reports the time since the tcWhile + timer for any port on this Bridge was nonzero." + REFERENCE + "IEEE 802.1D-1998 clause 14.8.1.1., + IEEE 802.1w clause 14.8.1.1." + ::= { dot1dStp 3 } + + dot1dStpTopChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of topology changes detected by + this bridge since the management entity was last + reset or initialized." + REFERENCE + "IEEE 802.1D-1998 clause 14.8.1.1." + ::= { dot1dStp 4 } + + dot1dStpDesignatedRoot OBJECT-TYPE + SYNTAX BridgeId + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The bridge identifier of the root of the spanning + tree, as determined by the Spanning Tree Protocol, + as executed by this node. This value is used as + the Root Identifier parameter in all Configuration + Bridge PDUs originated by this node." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.3.1" + ::= { dot1dStp 5 } + + dot1dStpRootCost OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The cost of the path to the root as seen from + this bridge." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.3.2" + ::= { dot1dStp 6 } + + dot1dStpRootPort OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The port number of the port that offers the lowest + cost path from this bridge to the root bridge." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.3.3" + ::= { dot1dStp 7 } + + dot1dStpMaxAge OBJECT-TYPE + SYNTAX Timeout + UNITS "centi-seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The maximum age of Spanning Tree Protocol information + learned from the network on any port before it is + discarded, in units of hundredths of a second. This is + the actual value that this bridge is currently using." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.3.4" + ::= { dot1dStp 8 } + + dot1dStpHelloTime OBJECT-TYPE + SYNTAX Timeout + UNITS "centi-seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The amount of time between the transmission of + Configuration bridge PDUs by this node on any port when + it is the root of the spanning tree, or trying to become + so, in units of hundredths of a second. This is the + actual value that this bridge is currently using." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.3.5" + ::= { dot1dStp 9 } + + dot1dStpHoldTime OBJECT-TYPE + SYNTAX Integer32 + UNITS "centi-seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This time value determines the interval length + during which no more than two Configuration bridge + PDUs shall be transmitted by this node, in units + of hundredths of a second." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.3.14" + ::= { dot1dStp 10 } + + dot1dStpForwardDelay OBJECT-TYPE + SYNTAX Timeout + UNITS "centi-seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This time value, measured in units of hundredths of a + second, controls how fast a port changes its spanning + state when moving towards the Forwarding state. The + value determines how long the port stays in each of the + Listening and Learning states, which precede the + Forwarding state. This value is also used when a + topology change has been detected and is underway, to + age all dynamic entries in the Forwarding Database. + [Note that this value is the one that this bridge is + currently using, in contrast to + dot1dStpBridgeForwardDelay, which is the value that this + bridge and all others would start using if/when this + bridge were to become the root.]" + REFERENCE + "IEEE 802.1D-1998: clause 8.5.3.6" + ::= { dot1dStp 11 } + + dot1dStpBridgeMaxAge OBJECT-TYPE + SYNTAX Timeout (600..4000) + UNITS "centi-seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value that all bridges use for MaxAge when this + bridge is acting as the root. Note that 802.1D-1998 + specifies that the range for this parameter is related + to the value of dot1dStpBridgeHelloTime. The + granularity of this timer is specified by 802.1D-1998 to + be 1 second. An agent may return a badValue error if a + set is attempted to a value that is not a whole number + of seconds." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.3.8" + ::= { dot1dStp 12 } + + dot1dStpBridgeHelloTime OBJECT-TYPE + SYNTAX Timeout (100..1000) + UNITS "centi-seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value that all bridges use for HelloTime when this + bridge is acting as the root. The granularity of this + timer is specified by 802.1D-1998 to be 1 second. An + agent may return a badValue error if a set is attempted + to a value that is not a whole number of seconds." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.3.9" + ::= { dot1dStp 13 } + + dot1dStpBridgeForwardDelay OBJECT-TYPE + SYNTAX Timeout (400..3000) + UNITS "centi-seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value that all bridges use for ForwardDelay when + this bridge is acting as the root. Note that + 802.1D-1998 specifies that the range for this parameter + is related to the value of dot1dStpBridgeMaxAge. The + granularity of this timer is specified by 802.1D-1998 to + be 1 second. An agent may return a badValue error if a + set is attempted to a value that is not a whole number + of seconds." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.3.10" + ::= { dot1dStp 14 } + + -- ---------------------------------------------------------- -- + -- The Spanning Tree Port Table + -- ---------------------------------------------------------- -- + + dot1dStpPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dStpPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains port-specific information + for the Spanning Tree Protocol." + ::= { dot1dStp 15 } + + dot1dStpPortEntry OBJECT-TYPE + SYNTAX Dot1dStpPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of information maintained by every port about + the Spanning Tree Protocol state for that port." + INDEX { dot1dStpPort } + ::= { dot1dStpPortTable 1 } + + Dot1dStpPortEntry ::= + SEQUENCE { + dot1dStpPort + Integer32, + dot1dStpPortPriority + Integer32, + dot1dStpPortState + INTEGER, + dot1dStpPortEnable + INTEGER, + dot1dStpPortPathCost + Integer32, + dot1dStpPortDesignatedRoot + BridgeId, + dot1dStpPortDesignatedCost + Integer32, + dot1dStpPortDesignatedBridge + BridgeId, + dot1dStpPortDesignatedPort + OCTET STRING, + dot1dStpPortForwardTransitions + Counter32, + dot1dStpPortPathCost32 + Integer32 + } + + dot1dStpPort OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The port number of the port for which this entry + contains Spanning Tree Protocol management information." + REFERENCE + "IEEE 802.1D-1998: clause 14.8.2.1.2" + ::= { dot1dStpPortEntry 1 } + + dot1dStpPortPriority OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value of the priority field that is contained in + the first (in network byte order) octet of the (2 octet + long) Port ID. The other octet of the Port ID is given + by the value of dot1dStpPort. + On bridges supporting IEEE 802.1t or IEEE 802.1w, + permissible values are 0-240, in steps of 16." + REFERENCE + "IEEE 802.1D-1998 clause 8.10.2, Table 8-4, + IEEE 802.1t clause 8.10.2, Table 8-4, clause 14.3." + ::= { dot1dStpPortEntry 2 } + + dot1dStpPortState OBJECT-TYPE + SYNTAX INTEGER { + disabled(1), + blocking(2), + listening(3), + learning(4), + forwarding(5), + broken(6) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The port's current state, as defined by application of + the Spanning Tree Protocol. This state controls what + action a port takes on reception of a frame. If the + bridge has detected a port that is malfunctioning, it + will place that port into the broken(6) state. For + ports that are disabled (see dot1dStpPortEnable), this + object will have a value of disabled(1)." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.5.2" + ::= { dot1dStpPortEntry 3 } + + dot1dStpPortEnable OBJECT-TYPE + SYNTAX INTEGER { + enabled(1), + disabled(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The enabled/disabled status of the port." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.5.2" + ::= { dot1dStpPortEntry 4 } + + dot1dStpPortPathCost OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The contribution of this port to the path cost of + paths towards the spanning tree root which include + this port. 802.1D-1998 recommends that the default + value of this parameter be in inverse proportion to + the speed of the attached LAN. + + New implementations should support dot1dStpPortPathCost32. + If the port path costs exceeds the maximum value of this + object then this object should report the maximum value, + namely 65535. Applications should try to read the + dot1dStpPortPathCost32 object if this object reports + the maximum value.--IPI Comments: Not Supported" + REFERENCE "IEEE 802.1D-1998: clause 8.5.5.3" + ::= { dot1dStpPortEntry 5 } + + dot1dStpPortDesignatedRoot OBJECT-TYPE + SYNTAX BridgeId + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unique Bridge Identifier of the Bridge + recorded as the Root in the Configuration BPDUs + transmitted by the Designated Bridge for the + segment to which the port is attached." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.5.4" + ::= { dot1dStpPortEntry 6 } + + dot1dStpPortDesignatedCost OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The path cost of the Designated Port of the segment + connected to this port. This value is compared to the + Root Path Cost field in received bridge PDUs." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.5.5" + ::= { dot1dStpPortEntry 7 } + + dot1dStpPortDesignatedBridge OBJECT-TYPE + SYNTAX BridgeId + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Bridge Identifier of the bridge that this + port considers to be the Designated Bridge for + this port's segment." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.5.6" + ::= { dot1dStpPortEntry 8 } + + dot1dStpPortDesignatedPort OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (2)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Port Identifier of the port on the Designated + Bridge for this port's segment." + REFERENCE + "IEEE 802.1D-1998: clause 8.5.5.7" + ::= { dot1dStpPortEntry 9 } + + dot1dStpPortForwardTransitions OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this port has transitioned + from the Learning state to the Forwarding state." + ::= { dot1dStpPortEntry 10 } + + dot1dStpPortPathCost32 OBJECT-TYPE + SYNTAX Integer32 (1..200000000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The contribution of this port to the path cost of + paths towards the spanning tree root which include + this port. 802.1D-1998 recommends that the default + value of this parameter be in inverse proportion to + the speed of the attached LAN. + + This object replaces dot1dStpPortPathCost to support + IEEE 802.1t.--IPI Comments: Not Supported" + REFERENCE + "IEEE 802.1t clause 8.10.2, Table 8-5." + ::= { dot1dStpPortEntry 11 } + + -- ---------------------------------------------------------- -- + -- the dot1dTp subtree + -- ---------------------------------------------------------- -- + -- Implementation of the dot1dTp subtree is optional. It is + -- implemented by those bridges that support the transparent + -- bridging mode. A transparent or SRT bridge will implement + -- this subtree. + -- ---------------------------------------------------------- -- + + dot1dTpLearnedEntryDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of Forwarding Database entries that + have been or would have been learned, but have been + discarded due to a lack of storage space in the + Forwarding Database. If this counter is increasing, it + indicates that the Forwarding Database is regularly + becoming full (a condition that has unpleasant + performance effects on the subnetwork). If this counter + has a significant value but is not presently increasing, + it indicates that the problem has been occurring but is + not persistent." + REFERENCE + "IEEE 802.1D-1998: clause 14.7.1.1.3" + ::= { dot1dTp 1 } + + dot1dTpAgingTime OBJECT-TYPE + SYNTAX Integer32 (10..1000000) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The timeout period in seconds for aging out + dynamically-learned forwarding information. + 802.1D-1998 recommends a default of 300 seconds." + REFERENCE + "IEEE 802.1D-1998: clause 14.7.1.1.3" + ::= { dot1dTp 2 } + + + -- ---------------------------------------------------------- -- + -- The Forwarding Database for Transparent Bridges + -- ---------------------------------------------------------- -- + + dot1dTpFdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dTpFdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains information about unicast + entries for which the bridge has forwarding and/or + filtering information. This information is used + by the transparent bridging function in + determining how to propagate a received frame." + ::= { dot1dTp 3 } + + dot1dTpFdbEntry OBJECT-TYPE + SYNTAX Dot1dTpFdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a specific unicast MAC address + for which the bridge has some forwarding and/or + filtering information." + INDEX { dot1dTpFdbAddress } + ::= { dot1dTpFdbTable 1 } + + Dot1dTpFdbEntry ::= + SEQUENCE { + dot1dTpFdbAddress + MacAddress, + dot1dTpFdbPort + Integer32, + dot1dTpFdbStatus + INTEGER + } + + dot1dTpFdbAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A unicast MAC address for which the bridge has + forwarding and/or filtering information." + REFERENCE + "IEEE 802.1D-1998: clause 7.9.1, 7.9.2" + ::= { dot1dTpFdbEntry 1 } + + dot1dTpFdbPort OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Either the value '0', or the port number of the port on + which a frame having a source address equal to the value + of the corresponding instance of dot1dTpFdbAddress has + been seen. A value of '0' indicates that the port + number has not been learned, but that the bridge does + have some forwarding/filtering information about this + address (e.g., in the dot1dStaticTable). Implementors + are encouraged to assign the port value to this object + whenever it is learned, even for addresses for which the + corresponding value of dot1dTpFdbStatus is not + learned(3)." + ::= { dot1dTpFdbEntry 2 } + + dot1dTpFdbStatus OBJECT-TYPE + SYNTAX INTEGER { + other(1), + invalid(2), + learned(3), + self(4), + mgmt(5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The status of this entry. The meanings of the + values are: + other(1) - none of the following. This would + include the case where some other MIB object + (not the corresponding instance of + dot1dTpFdbPort, nor an entry in the + dot1dStaticTable) is being used to determine if + and how frames addressed to the value of the + corresponding instance of dot1dTpFdbAddress are + being forwarded. + invalid(2) - this entry is no longer valid (e.g., + it was learned but has since aged out), but has + not yet been flushed from the table. + learned(3) - the value of the corresponding instance + of dot1dTpFdbPort was learned, and is being + used. + self(4) - the value of the corresponding instance of + dot1dTpFdbAddress represents one of the bridge's + addresses. The corresponding instance of + dot1dTpFdbPort indicates which of the bridge's + ports has this address. + mgmt(5) - the value of the corresponding instance of + dot1dTpFdbAddress is also the value of an + existing instance of dot1dStaticAddress." + ::= { dot1dTpFdbEntry 3 } + + -- ---------------------------------------------------------- -- + -- Port Table for Transparent Bridges + -- ---------------------------------------------------------- -- + + dot1dTpPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dTpPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains information about every port that + is associated with this transparent bridge." + ::= { dot1dTp 4 } + + dot1dTpPortEntry OBJECT-TYPE + SYNTAX Dot1dTpPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of information for each port of a transparent + bridge." + INDEX { dot1dTpPort } + ::= { dot1dTpPortTable 1 } + + Dot1dTpPortEntry ::= + SEQUENCE { + dot1dTpPort + Integer32, + dot1dTpPortMaxInfo + Integer32, + dot1dTpPortInFrames + Counter32, + dot1dTpPortOutFrames + Counter32, + dot1dTpPortInDiscards + Counter32 + } + + dot1dTpPort OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The port number of the port for which this entry + contains Transparent bridging management information." + ::= { dot1dTpPortEntry 1 } + + -- It would be nice if we could use ifMtu as the size of the + -- largest INFO field, but we can't because ifMtu is defined + -- to be the size that the (inter-)network layer can use, which + -- can differ from the MAC layer (especially if several layers + -- of encapsulation are used). + + dot1dTpPortMaxInfo OBJECT-TYPE + SYNTAX Integer32 + UNITS "bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The maximum size of the INFO (non-MAC) field that + this port will receive or transmit." + ::= { dot1dTpPortEntry 2 } + + dot1dTpPortInFrames OBJECT-TYPE + SYNTAX Counter32 + UNITS "frames" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of frames that have been received by this + port from its segment. Note that a frame received on the + interface corresponding to this port is only counted by + this object if and only if it is for a protocol being + processed by the local bridging function, including + bridge management frames." + REFERENCE + "IEEE 802.1D-1998: clause 14.6.1.1.3" + ::= { dot1dTpPortEntry 3 } + + dot1dTpPortOutFrames OBJECT-TYPE + SYNTAX Counter32 + UNITS "frames" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of frames that have been transmitted by this + port to its segment. Note that a frame transmitted on + the interface corresponding to this port is only counted + by this object if and only if it is for a protocol being + processed by the local bridging function, including + bridge management frames." + REFERENCE + "IEEE 802.1D-1998: clause 14.6.1.1.3" + ::= { dot1dTpPortEntry 4 } + + dot1dTpPortInDiscards OBJECT-TYPE + SYNTAX Counter32 + UNITS "frames" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Count of received valid frames that were discarded + (i.e., filtered) by the Forwarding Process." + REFERENCE + "IEEE 802.1D-1998: clause 14.6.1.1.3" + ::= { dot1dTpPortEntry 5 } + + -- ---------------------------------------------------------- -- + -- The Static (Destination-Address Filtering) Database + -- ---------------------------------------------------------- -- + -- Implementation of this subtree is optional. + -- ---------------------------------------------------------- -- + + dot1dStaticTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dStaticEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing filtering information configured + into the bridge by (local or network) management + specifying the set of ports to which frames received + from specific ports and containing specific destination + addresses are allowed to be forwarded. The value of + zero in this table, as the port number from which frames + with a specific destination address are received, is + used to specify all ports for which there is no specific + entry in this table for that particular destination + address. Entries are valid for unicast and for + group/broadcast addresses." + REFERENCE + "IEEE 802.1D-1998: clause 14.7.2" + ::= { dot1dStatic 1 } + + dot1dStaticEntry OBJECT-TYPE + SYNTAX Dot1dStaticEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Filtering information configured into the bridge by + (local or network) management specifying the set of + ports to which frames received from a specific port and + containing a specific destination address are allowed to + be forwarded." + REFERENCE + "IEEE 802.1D-1998: clause 14.7.2" + INDEX { dot1dStaticAddress, dot1dStaticReceivePort } + ::= { dot1dStaticTable 1 } + + Dot1dStaticEntry ::= + SEQUENCE { + dot1dStaticAddress MacAddress, + dot1dStaticReceivePort Integer32, + dot1dStaticAllowedToGoTo OCTET STRING, + dot1dStaticStatus INTEGER + } + + dot1dStaticAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The destination MAC address in a frame to which this + entry's filtering information applies. This object can + take the value of a unicast address, a group address, or + the broadcast address." + REFERENCE + "IEEE 802.1D-1998: clause 7.9.1, 7.9.2" + ::= { dot1dStaticEntry 1 } + + dot1dStaticReceivePort OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Either the value '0', or the port number of the port + from which a frame must be received in order for this + entry's filtering information to apply. A value of zero + indicates that this entry applies on all ports of the + bridge for which there is no other applicable entry." + ::= { dot1dStaticEntry 2 } + + dot1dStaticAllowedToGoTo OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (0..512)) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The set of ports to which frames received from a + specific port and destined for a specific MAC address, + are allowed to be forwarded. Each octet within the + value of this object specifies a set of eight ports, + with the first octet specifying ports 1 through 8, the + second octet specifying ports 9 through 16, etc. Within + each octet, the most significant bit represents the + lowest numbered port, and the least significant bit + represents the highest numbered port. Thus, each port + of the bridge is represented by a single bit within the + value of this object. If that bit has a value of '1', + then that port is included in the set of ports; the port + is not included if its bit has a value of '0'. (Note + that the setting of the bit corresponding to the port + from which a frame is received is irrelevant.) The + default value of this object is a string of ones of + appropriate length. + + The value of this object may exceed the required minimum + maximum message size of some SNMP transport (484 bytes, + in the case of SNMP over UDP, see RFC 3417, section 3.2). + SNMP engines on bridges supporting a large number of + ports must support appropriate maximum message sizes." + ::= { dot1dStaticEntry 3 } + + dot1dStaticStatus OBJECT-TYPE + SYNTAX INTEGER { + other(1), + invalid(2), + permanent(3), + deleteOnReset(4), + deleteOnTimeout(5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the status of this entry. + The default value is permanent(3). + other(1) - this entry is currently in use but the + conditions under which it will remain so are + different from each of the following values. + invalid(2) - writing this value to the object + removes the corresponding entry. + permanent(3) - this entry is currently in use and + will remain so after the next reset of the + bridge. + deleteOnReset(4) - this entry is currently in use + and will remain so until the next reset of the + bridge. + deleteOnTimeout(5) - this entry is currently in use + and will remain so until it is aged out." + ::= { dot1dStaticEntry 4 } + + -- ---------------------------------------------------------- -- + -- Notifications for use by Bridges + -- ---------------------------------------------------------- -- + -- Notifications for the Spanning Tree Protocol + -- ---------------------------------------------------------- -- + + newRoot NOTIFICATION-TYPE + -- OBJECTS { } + STATUS current + DESCRIPTION + "The newRoot trap indicates that the sending agent has + become the new root of the Spanning Tree; the trap is + sent by a bridge soon after its election as the new + root, e.g., upon expiration of the Topology Change Timer, + immediately subsequent to its election. Implementation + of this trap is optional." + ::= { dot1dNotifications 1 } + + topologyChange NOTIFICATION-TYPE + -- OBJECTS { } + STATUS current + DESCRIPTION + "A topologyChange trap is sent by a bridge when any of + its configured ports transitions from the Learning state + to the Forwarding state, or from the Forwarding state to + the Blocking state. The trap is not sent if a newRoot + trap is sent for the same transition. Implementation of + this trap is optional." + ::= { dot1dNotifications 2 } + + -- ---------------------------------------------------------- -- + -- IEEE 802.1D MIB - Conformance Information + -- ---------------------------------------------------------- -- + + dot1dGroups OBJECT IDENTIFIER ::= { dot1dConformance 1 } + dot1dCompliances OBJECT IDENTIFIER ::= { dot1dConformance 2 } + + -- ---------------------------------------------------------- -- + -- units of conformance + -- ---------------------------------------------------------- -- + + -- ---------------------------------------------------------- -- + -- the dot1dBase group + -- ---------------------------------------------------------- -- + + dot1dBaseBridgeGroup OBJECT-GROUP + OBJECTS { + dot1dBaseBridgeAddress, + dot1dBaseNumPorts, + dot1dBaseType + } + STATUS current + DESCRIPTION + "Bridge level information for this device." + ::= { dot1dGroups 1 } + + dot1dBasePortGroup OBJECT-GROUP + OBJECTS { + dot1dBasePort, + dot1dBasePortIfIndex, + dot1dBasePortCircuit, + dot1dBasePortDelayExceededDiscards, + dot1dBasePortMtuExceededDiscards + } + STATUS current + DESCRIPTION + "Information for each port on this device." + ::= { dot1dGroups 2 } + + -- ---------------------------------------------------------- -- + -- the dot1dStp group + -- ---------------------------------------------------------- -- + + dot1dStpBridgeGroup OBJECT-GROUP + OBJECTS { + dot1dStpProtocolSpecification, + dot1dStpPriority, + dot1dStpTimeSinceTopologyChange, + dot1dStpTopChanges, + dot1dStpDesignatedRoot, + dot1dStpRootCost, + dot1dStpRootPort, + dot1dStpMaxAge, + dot1dStpHelloTime, + dot1dStpHoldTime, + dot1dStpForwardDelay, + dot1dStpBridgeMaxAge, + dot1dStpBridgeHelloTime, + dot1dStpBridgeForwardDelay + } + STATUS current + DESCRIPTION + "Bridge level Spanning Tree data for this device." + ::= { dot1dGroups 3 } + + dot1dStpPortGroup OBJECT-GROUP + OBJECTS { + dot1dStpPort, + dot1dStpPortPriority, + dot1dStpPortState, + dot1dStpPortEnable, + dot1dStpPortPathCost, + dot1dStpPortDesignatedRoot, + dot1dStpPortDesignatedCost, + dot1dStpPortDesignatedBridge, + dot1dStpPortDesignatedPort, + dot1dStpPortForwardTransitions + } + STATUS current + DESCRIPTION + "Spanning Tree data for each port on this device." + ::= { dot1dGroups 4 } + + dot1dStpPortGroup2 OBJECT-GROUP + OBJECTS { + dot1dStpPort, + dot1dStpPortPriority, + dot1dStpPortState, + dot1dStpPortEnable, + dot1dStpPortDesignatedRoot, + dot1dStpPortDesignatedCost, + dot1dStpPortDesignatedBridge, + dot1dStpPortDesignatedPort, + dot1dStpPortForwardTransitions, + dot1dStpPortPathCost32 + } + STATUS current + DESCRIPTION + "Spanning Tree data for each port on this device." + ::= { dot1dGroups 5 } + + dot1dStpPortGroup3 OBJECT-GROUP + OBJECTS { + dot1dStpPortPathCost32 + } + STATUS current + DESCRIPTION + "Spanning Tree data for devices supporting 32-bit + path costs." + ::= { dot1dGroups 6 } + + -- ---------------------------------------------------------- -- + -- the dot1dTp group + -- ---------------------------------------------------------- -- + + dot1dTpBridgeGroup OBJECT-GROUP + OBJECTS { + dot1dTpLearnedEntryDiscards, + dot1dTpAgingTime + } + STATUS current + DESCRIPTION + "Bridge level Transparent Bridging data." + ::= { dot1dGroups 7 } + + dot1dTpFdbGroup OBJECT-GROUP + OBJECTS { + dot1dTpFdbAddress, + dot1dTpFdbPort, + dot1dTpFdbStatus + } + + STATUS current + DESCRIPTION + "Filtering Database information for the Bridge." + ::= { dot1dGroups 8 } + + dot1dTpGroup OBJECT-GROUP + OBJECTS { + dot1dTpPort, + dot1dTpPortMaxInfo, + dot1dTpPortInFrames, + dot1dTpPortOutFrames, + dot1dTpPortInDiscards + } + STATUS current + DESCRIPTION + "Dynamic Filtering Database information for each port of + the Bridge." + ::= { dot1dGroups 9 } + + -- ---------------------------------------------------------- -- + -- The Static (Destination-Address Filtering) Database + -- ---------------------------------------------------------- -- + + dot1dStaticGroup OBJECT-GROUP + OBJECTS { + dot1dStaticAddress, + dot1dStaticReceivePort, + dot1dStaticAllowedToGoTo, + dot1dStaticStatus + } + STATUS current + DESCRIPTION + "Static Filtering Database information for each port of + the Bridge." + ::= { dot1dGroups 10 } + + -- ---------------------------------------------------------- -- + -- The Trap Notification Group + -- ---------------------------------------------------------- -- + + dot1dNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + newRoot, + topologyChange + } + STATUS current + DESCRIPTION + "Group of objects describing notifications (traps)." + ::= { dot1dGroups 11 } + + -- ---------------------------------------------------------- -- + -- compliance statements + -- ---------------------------------------------------------- -- + + bridgeCompliance1493 MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for device support of bridging + services, as per RFC1493." + + MODULE + MANDATORY-GROUPS { + dot1dBaseBridgeGroup, + dot1dBasePortGroup + } + + GROUP dot1dStpBridgeGroup + DESCRIPTION + "Implementation of this group is mandatory for bridges + that support the Spanning Tree Protocol." + + GROUP dot1dStpPortGroup + DESCRIPTION + "Implementation of this group is mandatory for bridges + that support the Spanning Tree Protocol." + + GROUP dot1dTpBridgeGroup + DESCRIPTION + "Implementation of this group is mandatory for bridges + that support the transparent bridging mode. A + transparent or SRT bridge will implement this group." + + GROUP dot1dTpFdbGroup + DESCRIPTION + "Implementation of this group is mandatory for bridges + that support the transparent bridging mode. A + transparent or SRT bridge will implement this group." + + GROUP dot1dTpGroup + DESCRIPTION + "Implementation of this group is mandatory for bridges + that support the transparent bridging mode. A + transparent or SRT bridge will implement this group." + + GROUP dot1dStaticGroup + DESCRIPTION + "Implementation of this group is optional." + + GROUP dot1dNotificationGroup + DESCRIPTION + "Implementation of this group is optional." + ::= { dot1dCompliances 1 } + + bridgeCompliance4188 MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for device support of bridging + services. This supports 32-bit Path Cost values and the + more restricted bridge and port priorities, as per IEEE + 802.1t. + + Full support for the 802.1D management objects requires that + the SNMPv2-MIB [RFC3418] objects sysDescr, and sysUpTime, as + well as the IF-MIB [RFC2863] objects ifIndex, ifType, + ifDescr, ifPhysAddress, and ifLastChange are implemented." + + MODULE + MANDATORY-GROUPS { + dot1dBaseBridgeGroup, + dot1dBasePortGroup + } + + GROUP dot1dStpBridgeGroup + DESCRIPTION + "Implementation of this group is mandatory for + bridges that support the Spanning Tree Protocol." + + OBJECT dot1dStpPriority + SYNTAX Integer32 (0|4096|8192|12288|16384|20480|24576 + |28672|32768|36864|40960|45056|49152 + |53248|57344|61440) + DESCRIPTION + "The possible values defined by IEEE 802.1t." + + GROUP dot1dStpPortGroup2 + DESCRIPTION + "Implementation of this group is mandatory for + bridges that support the Spanning Tree Protocol." + + GROUP dot1dStpPortGroup3 + DESCRIPTION + "Implementation of this group is mandatory for bridges + that support the Spanning Tree Protocol and 32-bit path + costs. In particular, this includes devices supporting + IEEE 802.1t and IEEE 802.1w." + + OBJECT dot1dStpPortPriority + SYNTAX Integer32 (0|16|32|48|64|80|96|112|128 + |144|160|176|192|208|224|240) + DESCRIPTION + "The possible values defined by IEEE 802.1t." + + GROUP dot1dTpBridgeGroup + DESCRIPTION + "Implementation of this group is mandatory for + bridges that support the transparent bridging + mode. A transparent or SRT bridge will implement + this group." + + GROUP dot1dTpFdbGroup + DESCRIPTION + "Implementation of this group is mandatory for + bridges that support the transparent bridging + mode. A transparent or SRT bridge will implement + this group." + + GROUP dot1dTpGroup + DESCRIPTION + "Implementation of this group is mandatory for + bridges that support the transparent bridging + mode. A transparent or SRT bridge will implement + this group." + + GROUP dot1dStaticGroup + DESCRIPTION + "Implementation of this group is optional." + + GROUP dot1dNotificationGroup + DESCRIPTION + "Implementation of this group is optional." + + ::= { dot1dCompliances 2 } + + END diff --git a/mibs/IEEE8023-LAG-MIB.txt b/mibs/IEEE8023-LAG-MIB.txt new file mode 100644 index 00000000..de8fa5e0 --- /dev/null +++ b/mibs/IEEE8023-LAG-MIB.txt @@ -0,0 +1,1371 @@ +IEEE8023-LAG-MIB DEFINITIONS ::= BEGIN + + +-- ------------------------------------------------------------- +-- IEEE 802.3ad MIB +-- ------------------------------------------------------------- + + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Counter32, TimeTicks, BITS + FROM SNMPv2-SMI + DisplayString, MacAddress, TEXTUAL-CONVENTION, TruthValue + FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF + InterfaceIndex + FROM IF-MIB + PortList + FROM Q-BRIDGE-MIB + ; + + +lagMIB MODULE-IDENTITY + LAST-UPDATED “9911220000Z” + ORGANIZATION “IEEE 802.3ad Working Group” + CONTACT-INFO + “ stds-802-3-trunking@majordomo.ieee.org” + DESCRIPTION + “The Link Aggregation module for managing IEEE 802.3ad.” + ::= { iso(1) member-body(2) us(840) ieee802dot3(10006) snmpmibs(300) linkagg(43) } + + +lagMIBObjects OBJECT IDENTIFIER ::= { lagMIB 1 } + + +-- ------------------------------------------------------------- +-- Textual Conventions +-- ------------------------------------------------------------- + + +LacpKey ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + “The Actor or Partner Key value.” + SYNTAX INTEGER (0..65535) + + +LacpState ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + “The Actor and Partner State values from the LACPDU.” + SYNTAX BITS { + lacpActivity(0), + lacpTimeout(1), + aggregation(2), + synchronization(3), + collecting(4), + distributing(5), + defaulted(6), + expired(7) + } + + +ChurnState ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + “The state of the Churn Detection machine.” + SYNTAX INTEGER { + noChurn(1), + churn(2), + churnMonitor(3) + } + + +-- ------------------------------------------------------------- + + +-- ------------------------------------------------------------- +-- groups in the LAG MIB +-- ------------------------------------------------------------- + + +dot3adAgg OBJECT IDENTIFIER ::= { lagMIBObjects 1 } +dot3adAggPort OBJECT IDENTIFIER ::= { lagMIBObjects 2 } + + +-- ------------------------------------------------------------- + +-- ------------------------------------------------------------- +-- The Tables Last Changed Object +-- ------------------------------------------------------------- + +dot3adTablesLastChanged OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “This object indicates the time of the + most recent change to the dot3adAggTable, + dot3adAggPortListTable, or + dot3adAggPortTable.” +::= { lagMIBObjects 3 } + +-- ------------------------------------------------------------- +-- The Aggregator Configuration Table +-- ------------------------------------------------------------- + + +dot3adAggTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot3adAggEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “A table that contains information about every + Aggregator that is associated with this System.” + REFERENCE + “IEEE 802.3 Subclause 30.7.1” + ::= { dot3adAgg 1 } + + +dot3adAggEntry OBJECT-TYPE + SYNTAX Dot3adAggEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “A list of the Aggregator parameters. This is indexed + by the ifIndex of the Aggregator.” + INDEX { dot3adAggIndex } + ::= { dot3adAggTable 1 } + + +Dot3adAggEntry ::= + SEQUENCE { + dot3adAggIndex + InterfaceIndex, + dot3adAggMACAddress + MacAddress, + dot3adAggActorSystemPriority + INTEGER, + dot3adAggActorSystemID + MacAddress, + dot3adAggAggregateOrIndividual + TruthValue, + dot3adAggActorAdminKey + LacpKey, + dot3adAggActorOperKey + LacpKey, + dot3adAggPartnerSystemID + MacAddress, + dot3adAggPartnerSystemPriority + INTEGER, + dot3adAggPartnerOperKey + LacpKey, + dot3adAggCollectorMaxDelay + INTEGER + } + + +dot3adAggIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “The unique identifier allocated to this Aggregator by the local System. + This attribute identifies an Aggregator instance among the subordinate + managed objects of the containing object. This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.1” + ::= { dot3adAggEntry 1 } + + +dot3adAggMACAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A 6-octet read-only value carrying the individual + MAC address assigned to the Aggregator.” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.9” + ::= { dot3adAggEntry 2 } + + +dot3adAggActorSystemPriority OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “A 2-octet read-write value indicating the priority value + associated with the Actor’s System ID.” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.5” + ::= { dot3adAggEntry 3 } + + +dot3adAggActorSystemID OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A 6-octet read-write MAC address value used as a unique + identifier for the System that contains this Aggregator. + NOTE—From the perspective of the Link Aggregation mechanisms described in Clause 43 [Part 3], + only a single combination of Actor’s System ID and System Priority are considered, and no + distinction is made between the values of these parameters for an Aggregator and the port(s) that + are associated with it; i.e., the protocol is described in terms of the operation of aggregation within + a single System. However, the managed objects provided for the Aggregator and the port both + allow management of these parameters. The result of this is to permit a single piece of equipment + to be configured by management to contain more than one System from the point of view of the + operation of Link Aggregation. This may be of particular use in the configuration of equipment + that has limited aggregation capability (see 43.6 [Part 3]).” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.4” + ::= { dot3adAggEntry 4 } + + +dot3adAggAggregateOrIndividual OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A read-only Boolean value indicating whether the + Aggregator represents an Aggregate (‘TRUE’) or + an Individual link (‘FALSE’).” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.6” + ::= { dot3adAggEntry 5 } + + +dot3adAggActorAdminKey OBJECT-TYPE + SYNTAX LacpKey + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “The current administrative value of the Key for the Aggregator. + The administrative Key value may differ from the operational + Key value for the reasons discussed in 43.6.2. This is a 16-bit, + read-write value. The meaning of particular Key values + is of local significance.” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.7” + ::= { dot3adAggEntry 6 } + + +dot3adAggActorOperKey OBJECT-TYPE + SYNTAX LacpKey + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The current operational value of the Key for the Aggregator. + The administrative Key value may differ from the operational + Key value for the reasons discussed in 43.6.2. + This is a 16-bit read-only value. The meaning of particular Key + values is of local significance. + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.8” + ::= { dot3adAggEntry 7 } + + +dot3adAggPartnerSystemID OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A 6-octet read-only MAC address value consisting + of the unique identifier for the current protocol Partner of + this Aggregator. A value of zero indicates that there is no + known Partner. If the aggregation is manually configured, this + System ID value will be a value assigned by the local System.” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.10” + ::= { dot3adAggEntry 8 } + + +dot3adAggPartnerSystemPriority OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A 2-octet read-only value that indicates the priority + value associated with the Partner’s System ID. If the + aggregation is manually configured, this System Priority value + will be a value assigned by the local System.” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.11” + ::= { dot3adAggEntry 9 } + + +dot3adAggPartnerOperKey OBJECT-TYPE + SYNTAX LacpKey + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The current operational value of the Key for the + Aggregator’s current protocol Partner. This is + a 16-bit read-only value. If the aggregation is manually + configured, this Key value will be a value assigned by the + local System.” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.12” + ::= { dot3adAggEntry 10 } + + +dot3adAggCollectorMaxDelay OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “The value of this 16-bit read-write attribute defines + the maximum delay, in tens of microseconds, that + may be imposed by the Frame Collector between + receiving a frame from an Aggregator Parser, and + either delivering the frame to its MAC Client or discarding + the frame (see 43.2.3.1.1 [Part 3]).” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.32” + ::= { dot3adAggEntry 11 } + + +-- ------------------------------------------------------------- +-- The Aggregation Port List Table +-- ------------------------------------------------------------- + + +dot3adAggPortListTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot3adAggPortListEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “A table that contains a list of all the ports + associated with each Aggregator.” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.30” + ::= { dot3adAgg 2 } + + +dot3adAggPortListEntry OBJECT-TYPE + SYNTAX Dot3adAggPortListEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “A list of the ports associated with a given Aggregator. + This is indexed by the ifIndex of the Aggregator.” + INDEX { dot3adAggIndex } + ::= { dot3adAggPortListTable 1 } + + +Dot3adAggPortListEntry ::= + SEQUENCE { + dot3adAggPortListPorts + PortList + } + + +dot3adAggPortListPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The complete set of ports currently associated with + this Aggregator. Each bit set in this list represents + an Actor Port member of this Link Aggregation.” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.30” + ::= { dot3adAggPortListEntry 1 } + + +-- ------------------------------------------------------------- +-- The Aggregation Port Table +-- ------------------------------------------------------------- + + +dot3adAggPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot3adAggPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “A table that contains Link Aggregation Control + configuration information about every + Aggregation Port associated with this device. + A row appears in this table for each physical port.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2” + ::= { dot3adAggPort 1 } + + +dot3adAggPortEntry OBJECT-TYPE + SYNTAX Dot3adAggPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “A list of Link Aggregation Control configuration + parameters for each Aggregation Port on this device.” + INDEX { dot3adAggPortIndex } + ::= { dot3adAggPortTable 1 } + + +Dot3adAggPortEntry ::= + SEQUENCE { + dot3adAggPortIndex + InterfaceIndex, + dot3adAggPortActorSystemPriority + INTEGER, + dot3adAggPortActorSystemID + MacAddress, + dot3adAggPortActorAdminKey + LacpKey, + dot3adAggPortActorOperKey + LacpKey, + dot3adAggPortPartnerAdminSystemPriority + INTEGER, + dot3adAggPortPartnerOperSystemPriority + INTEGER, + dot3adAggPortPartnerAdminSystemID + MacAddress, + dot3adAggPortPartnerOperSystemID + MacAddress, + dot3adAggPortPartnerAdminKey + LacpKey, + dot3adAggPortPartnerOperKey + LacpKey, + dot3adAggPortSelectedAggID + InterfaceIndex, + dot3adAggPortAttachedAggID + InterfaceIndex, + dot3adAggPortActorPort + INTEGER, + dot3adAggPortActorPortPriority + INTEGER, + dot3adAggPortPartnerAdminPort + INTEGER, + dot3adAggPortPartnerOperPort + INTEGER, + dot3adAggPortPartnerAdminPortPriority + INTEGER, + dot3adAggPortPartnerOperPortPriority + INTEGER, + dot3adAggPortActorAdminState + LacpState, + dot3adAggPortActorOperState + LacpState, + dot3adAggPortPartnerAdminState + LacpState, + dot3adAggPortPartnerOperState + LacpState, + dot3adAggPortAggregateOrIndividual + TruthValue + } + + +dot3adAggPortIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “The ifIndex of the port” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.1” + ::= { dot3adAggPortEntry 1 } + + +dot3adAggPortActorSystemPriority OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “A 2-octet read-write value used to define the priority + value associated with the Actor’s System ID.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.2” + ::= { dot3adAggPortEntry 2 } + + +dot3adAggPortActorSystemID OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A 6-octet read-only MAC address value that defines + the value of the System ID for the System that contains this + Aggregation Port.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.3” + ::= { dot3adAggPortEntry 3 } + + +dot3adAggPortActorAdminKey OBJECT-TYPE + SYNTAX LacpKey + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “The current administrative value of the Key for the + Aggregation Port. This is a 16-bit read-write value. + The meaning of particular Key values is of local significance.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.4” + ::= { dot3adAggPortEntry 4 } + + +dot3adAggPortActorOperKey OBJECT-TYPE + SYNTAX LacpKey + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “The current operational value of the Key for the + Aggregation Port. This is a 16-bit read-only value. + The meaning of particular Key values is of local significance.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.5” + ::= { dot3adAggPortEntry 5 } + + +dot3adAggPortPartnerAdminSystemPriority OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “A 2-octet read-write value used to define the administrative + value of priority associated with the Partner’s System ID. The + assigned value is used, along with the value of + aAggPortPartnerAdminSystemID, aAggPortPartnerAdminKey, + aAggPortPartnerAdminPort, and aAggPortPartnerAdminPortPriority, + in order to achieve manually configured aggregation.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.7” + ::= { dot3adAggPortEntry 6 } + + +dot3adAggPortPartnerOperSystemPriority OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A 2-octet read-only value indicating the operational value + of priority associated with the Partner’s System ID. The + value of this attribute may contain the manually configured value + carried in aAggPortPartnerAdminSystemPriority + if there is no protocol Partner.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.7” + ::= { dot3adAggPortEntry 7 } + + +dot3adAggPortPartnerAdminSystemID OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “A 6-octet read-write MACAddress value representing + the administrative value of the Aggregation Port’s protocol + Partner’s System ID. The assigned value is used, along with + the value of aAggPortPartnerAdminSystemPriority, + aAggPortPartnerAdminKey, aAggPortPartnerAdminPort, + and aAggPortPartnerAdminPortPriority, in order to + achieve manually configured aggregation.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.8” + ::= { dot3adAggPortEntry 8 } + + +dot3adAggPortPartnerOperSystemID OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A 6-octet read-only MACAddress value representing + the current value of the Aggregation Port’s protocol Partner’s + System ID. A value of zero indicates that there is no known + protocol Partner. The value of this attribute may contain the + manually configured value carried in + aAggPortPartnerAdminSystemID if there is no protocol Partner.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.9” + ::= { dot3adAggPortEntry 9 } + + +dot3adAggPortPartnerAdminKey OBJECT-TYPE + SYNTAX LacpKey + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “The current administrative value of the Key for the + protocol Partner. This is a 16-bit read-write value. + The assigned value is used, along with the value of + aAggPortPartnerAdminSystemPriority, aAggPortPartnerAdminSystemID, + aAggPortPartnerAdminPort, and aAggPortPartnerAdminPortPriority, + in order to achieve manually configured aggregation. + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.10” + ::= { dot3adAggPortEntry 10 } + + +dot3adAggPortPartnerOperKey OBJECT-TYPE + SYNTAX LacpKey + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The current operational value of the Key for the + protocol Partner. The value of this attribute may contain + the manually configured value carried in + aAggPortPartnerAdminKey if there is no protocol Partner. + This is a 16-bit read-only value.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.11” + ::= { dot3adAggPortEntry 11 } + + +dot3adAggPortSelectedAggID OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The identifier value of the Aggregator that this Aggregation + Port has currently selected. Zero indicates that the Aggregation + Port has not selected an Aggregator, either because it is in the + process of detaching from an Aggregator or because there is no + suitable Aggregator available for it to select. This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.12” + ::= { dot3adAggPortEntry 12 } + + +dot3adAggPortAttachedAggID OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The identifier value of the Aggregator that this Aggregation + Port is currently attached to. Zero indicates that the Aggregation + Port is not currently attached to an Aggregator. This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.13” + ::= { dot3adAggPortEntry 13 } + + +dot3adAggPortActorPort OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The port number locally assigned to the Aggregation Port. + The port number is communicated in LACPDUs as the + Actor_Port. This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.14” + ::= { dot3adAggPortEntry 14 } + + +dot3adAggPortActorPortPriority OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “The priority value assigned to this Aggregation Port. + This 16-bit value is read-write.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.15” + ::= { dot3adAggPortEntry 15 } + + +dot3adAggPortPartnerAdminPort OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “The current administrative value of the port number + for the protocol Partner. This is a 16-bit read-write value. + The assigned value is used, along with the value of + aAggPortPartnerAdminSystemPriority, + aAggPortPartnerAdminSystemID, aAggPortPartnerAdminKey, + and aAggPortPartnerAdminPortPriority, + in order to achieve manually configured aggregation.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.16” + ::= { dot3adAggPortEntry 16 } + + +dot3adAggPortPartnerOperPort OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The operational port number assigned to this Aggregation + Port by the Aggregation Port’s protocol Partner. The value + of this attribute may contain the manually configured value + carried in aAggPortPartnerAdminPort if there is no protocol + Partner. This 16-bit value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.17” + ::= { dot3adAggPortEntry 17 } + + +dot3adAggPortPartnerAdminPortPriority OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “The current administrative value of the port priority + for the protocol Partner. This is a 16-bit read-write value. + The assigned value is used, along with the value of + aAggPortPartnerAdminSystemPriority, aAggPortPartnerAdminSystemID, + aAggPortPartnerAdminKey, and aAggPortPartnerAdminPort, + in order to achieve manually configured aggregation.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.18” + ::= { dot3adAggPortEntry 18 } + + +dot3adAggPortPartnerOperPortPriority OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The priority value assigned to this Aggregation Port + by the Partner. The value of this attribute may contain the + manually configured value carried in + aAggPortPartnerAdminPortPriority if there is no + protocol Partner. This 16-bit value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.19” + ::= { dot3adAggPortEntry 19 } + + +dot3adAggPortActorAdminState OBJECT-TYPE + SYNTAX LacpState + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “A string of 8 bits, corresponding to the administrative values + of Actor_State (43.4.2 [Part 3]) as transmitted by the Actor in LACPDUs. + The first bit corresponds to bit 0 of Actor_State (LACP_Activity), + the second bit corresponds to bit 1 (LACP_Timeout), the third bit + corresponds to bit 2 (Aggregation), the fourth bit corresponds to + bit 3 (Synchronization), the fifth bit corresponds to bit 4 + (Collecting), the sixth bit corresponds to bit 5 (Distributing), + the seventh bit corresponds to bit 6 (Defaulted), and the eighth + bit corresponds to bit 7 (Expired). These values allow + administrative control over the values of LACP_Activity, + LACP_Timeout and Aggregation. This attribute value is read-write.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.20” + ::= { dot3adAggPortEntry 20 } + + +dot3adAggPortActorOperState OBJECT-TYPE + SYNTAX LacpState + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A string of 8 bits, corresponding to the current + operational values of Actor_State as transmitted by the + Actor in LACPDUs. The bit allocations are as defined in + 30.7.2.1.20. This attribute value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.21” + ::= { dot3adAggPortEntry 21 } + + +dot3adAggPortPartnerAdminState OBJECT-TYPE + SYNTAX LacpState + MAX-ACCESS read-write + STATUS current + DESCRIPTION + “A string of 8 bits, corresponding to the current administrative + value of Actor_State for the protocol Partner. The bit + allocations are as defined in 30.7.2.1.20. This attribute value is + read-write. The assigned value is used in order to achieve + manually configured aggregation.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.22” + ::= { dot3adAggPortEntry 22 } + + +dot3adAggPortPartnerOperState OBJECT-TYPE + SYNTAX LacpState + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A string of 8 bits, corresponding to the current values of + Actor_State in the most recently received LACPDU transmitted + by the protocol Partner. The bit allocations are as defined in + 30.7.2.1.20. In the absence of an active protocol Partner, this + value may reflect the manually configured value + aAggPortPartnerAdminState. This attribute value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.2.1.23” + ::= { dot3adAggPortEntry 23 } + + +dot3adAggPortAggregateOrIndividual OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A read-only Boolean value indicating whether the + Aggregation Port is able to Aggregate (‘TRUE’) or is + only able to operate as an Individual link (‘FALSE’).” + REFERENCE + “IEEE 802.3 Subclause 30.7.1.1.24” + ::= { dot3adAggPortEntry 24 } + + +-- ------------------------------------------------------------- +-- LACP Statistics Table +-- ------------------------------------------------------------- + + +dot3adAggPortStatsTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot3adAggPortStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “A table that contains Link Aggregation information + about every port that is associated with this device. + A row appears in this table for each physical port.” + REFERENCE + “IEEE 802.3 Subclause 30.7.3” + ::= { dot3adAggPort 2 } + + +dot3adAggPortStatsEntry OBJECT-TYPE + SYNTAX Dot3adAggPortStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “A list of Link Aggregation Control Protocol statistics + for each port on this device.” + INDEX { dot3adAggPortIndex } + ::= { dot3adAggPortStatsTable 1 } + + +Dot3adAggPortStatsEntry ::= + SEQUENCE { + dot3adAggPortStatsLACPDUsRx + Counter32, + dot3adAggPortStatsMarkerPDUsRx + Counter32, + dot3adAggPortStatsMarkerResponsePDUsRx + Counter32, + dot3adAggPortStatsUnknownRx + Counter32, + dot3adAggPortStatsIllegalRx + Counter32, + dot3adAggPortStatsLACPDUsTx + Counter32, + dot3adAggPortStatsMarkerPDUsTx + Counter32, + dot3adAggPortStatsMarkerResponsePDUsTx + Counter32 + } + + +dot3adAggPortStatsLACPDUsRx OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The number of valid LACPDUs received on this + Aggregation Port. This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.3.1.2” + ::= { dot3adAggPortStatsEntry 1 } + + +dot3adAggPortStatsMarkerPDUsRx OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The number of valid Marker PDUs received on this + Aggregation Port. This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.3.1.3” + ::= { dot3adAggPortStatsEntry 2 } + + +dot3adAggPortStatsMarkerResponsePDUsRx OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The number of valid Marker Response PDUs received on this + Aggregation Port. This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.3.1.4” + ::= { dot3adAggPortStatsEntry 3 } + + +dot3adAggPortStatsUnknownRx OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The number of frames received that either: + - carry the Slow Protocols Ethernet Type value (43B.4 [Part 3]), + but contain an unknown PDU, or: + - are addressed to the Slow Protocols group MAC + Address (43B.4), but do not carry the Slow Protocols Ethernet Type. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.3.1.5” + ::= { dot3adAggPortStatsEntry 4 } + + +dot3adAggPortStatsIllegalRx OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The number of frames received that carry the Slow + Protocols Ethernet Type value (43B.4), but contain a badly formed + PDU or an illegal value of Protocol Subtype (43B.4 [Part 3]). + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.3.1.6” + ::= { dot3adAggPortStatsEntry 5 } + + +dot3adAggPortStatsLACPDUsTx OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The number of LACPDUs transmitted on this + Aggregation Port. This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.3.1.7” + ::= { dot3adAggPortStatsEntry 6 } + + +dot3adAggPortStatsMarkerPDUsTx OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The number of Marker PDUs transmitted on this + Aggregation Port. This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.3.1.8” + ::= { dot3adAggPortStatsEntry 7 } + + +dot3adAggPortStatsMarkerResponsePDUsTx OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The number of Marker Response PDUs transmitted + on this Aggregation Port. This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.3.1.9” + ::= { dot3adAggPortStatsEntry 8 } + + +-- ------------------------------------------------------------- +-- LACP Debug Table +-- ------------------------------------------------------------- +dot3adAggPortDebugTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot3adAggPortDebugEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “A table that contains Link Aggregation debug + information about every port that is associated with + this device. A row appears in this table for each + physical port.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4” + ::= { dot3adAggPort 3 } + + +dot3adAggPortDebugEntry OBJECT-TYPE + SYNTAX Dot3adAggPortDebugEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + “A list of the debug parameters for a port.” + INDEX { dot3adAggPortIndex } + ::= { dot3adAggPortDebugTable 1 } + + +Dot3adAggPortDebugEntry ::= + SEQUENCE { + dot3adAggPortDebugRxState + INTEGER, + dot3adAggPortDebugLastRxTime + TimeTicks, + dot3adAggPortDebugMuxState + INTEGER, + dot3adAggPortDebugMuxReason + DisplayString, + dot3adAggPortDebugActorChurnState + ChurnState, + dot3adAggPortDebugPartnerChurnState + ChurnState, + dot3adAggPortDebugActorChurnCount + Counter32, + dot3adAggPortDebugPartnerChurnCount + Counter32, + dot3adAggPortDebugActorSyncTransitionCount + Counter32, + dot3adAggPortDebugPartnerSyncTransitionCount + Counter32, + dot3adAggPortDebugActorChangeCount + Counter32, + dot3adAggPortDebugPartnerChangeCount + Counter32 + } + + +dot3adAggPortDebugRxState OBJECT-TYPE + SYNTAX INTEGER { + current(1), + expired(2), + defaulted(3), + initialize(4), + lacpDisabled(5), + portDisabled(6) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “This attribute holds the value ‘current’ if the Receive + state machine for the Aggregation Port is in the + CURRENT state, ‘expired’ if the Receive state machine + is in the EXPIRED state, ‘defaulted’ if the Receive state + machine is in the DEFAULTED state, ‘initialize’ if the + Receive state machine is in the INITIALIZE state, + ‘lacpDisabled’ if the Receive state machine is in the + LACP_DISABLED state, or ‘portDisabled’ if the Receive + state machine is in the PORT_DISABLED state. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.2” + ::= { dot3adAggPortDebugEntry 1 } + + +dot3adAggPortDebugLastRxTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The value of aTimeSinceSystemReset (F.2.1) when + the last LACPDU was received by this Aggregation Port. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.3” + ::= { dot3adAggPortDebugEntry 2 } + + +dot3adAggPortDebugMuxState OBJECT-TYPE + SYNTAX INTEGER { + detached(1), + waiting(2), + attached(3), + collecting(4), + distributing(5), + collecting_distributing(6) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “This attribute holds the value ‘detached’ if the Mux + state machine (43.4.14 [Part 3]) for the Aggregation Port is + in the DETACHED state, ‘waiting’ if the Mux state machine + is in the WAITING state, ‘attached’ if the Mux state + machine for the Aggregation Port is in the ATTACHED + state, ‘collecting’ if the Mux state machine for the + Aggregation Port is in the COLLECTING state, ‘distributing’ + if the Mux state machine for the Aggregation Port is + in the DISTRIBUTING state, and ‘collecting_distributing’ + if the Mux state machine for the Aggregation Port is in + the COLLECTING_DISTRIBUTING state. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.4” + ::= { dot3adAggPortDebugEntry 3 } + + +dot3adAggPortDebugMuxReason OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “A human-readable text string indicating the reason + for the most recent change of Mux machine state. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.5” + ::= { dot3adAggPortDebugEntry 4 } + + +dot3adAggPortDebugActorChurnState OBJECT-TYPE + SYNTAX ChurnState + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The state of the Actor Churn Detection machine + (43.4.17 [Part 3]) for the Aggregation Port. A value of ‘noChurn’ + indicates that the state machine is in either the + NO_ACTOR_CHURN or the ACTOR_CHURN_MONITOR + state, and ‘churn’ indicates that the state machine is in the + ACTOR_CHURN state. This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.6” + ::= { dot3adAggPortDebugEntry 5 } + + +dot3adAggPortDebugPartnerChurnState OBJECT-TYPE + SYNTAX ChurnState + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “The state of the Partner Churn Detection machine + (43.4.17 [Part 3]) for the Aggregation Port. A value of ‘noChurn’ + indicates that the state machine is in either the + NO_PARTNER_CHURN or the PARTNER_CHURN_MONITOR + state, and ‘churn’ indicates that the state machine is + in the PARTNER_CHURN state. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.7” + ::= { dot3adAggPortDebugEntry 6 } + + +dot3adAggPortDebugActorChurnCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “Count of the number of times the Actor Churn state + machine has entered the ACTOR_CHURN state. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.8” + ::= { dot3adAggPortDebugEntry 7 } + + +dot3adAggPortDebugPartnerChurnCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “Count of the number of times the Partner Churn + state machine has entered the PARTNER_CHURN state. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.9” + ::= { dot3adAggPortDebugEntry 8 } + + +dot3adAggPortDebugActorSyncTransitionCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “Count of the number of times the Actor’s Mux state + machine (43.4.15 [Part 3]) has entered the IN_SYNC state. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.10” + ::= { dot3adAggPortDebugEntry 9 } + + +dot3adAggPortDebugPartnerSyncTransitionCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “Count of the number of times the Partner’s Mux + state machine (43.4.15 [Part 3]) has entered the IN_SYNC state. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.11” + ::= { dot3adAggPortDebugEntry 10 } + + +dot3adAggPortDebugActorChangeCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “Count of the number of times the Actor’s perception of + the LAG ID for this Aggregation Port has changed. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.12” + ::= { dot3adAggPortDebugEntry 11 } + + +dot3adAggPortDebugPartnerChangeCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + “Count of the number of times the Partner’s perception of + the LAG ID (see 43.3.6.1 [Part 3]) for this Aggregation Port has changed. + This value is read-only.” + REFERENCE + “IEEE 802.3 Subclause 30.7.4.1.13” + ::= { dot3adAggPortDebugEntry 12 } + +-- ------------------------------------------------------------- +-- IEEE 802.3ad MIB - Conformance Information +-- ------------------------------------------------------------- + +dot3adAggConformance OBJECT IDENTIFIER ::= { lagMIB 2 } + + +dot3adAggGroups OBJECT IDENTIFIER ::= { dot3adAggConformance 1 } + + +dot3adAggCompliances OBJECT IDENTIFIER + ::= { dot3adAggConformance 2 } + +-- ------------------------------------------------------------- +-- units of conformance +-- ------------------------------------------------------------- + +dot3adAggGroup OBJECT-GROUP + OBJECTS { + dot3adAggActorSystemID, + dot3adAggActorSystemPriority, + dot3adAggAggregateOrIndividual, + dot3adAggActorAdminKey, + dot3adAggMACAddress, + dot3adAggActorOperKey, + dot3adAggPartnerSystemID, + dot3adAggPartnerSystemPriority, + dot3adAggPartnerOperKey, + dot3adAggCollectorMaxDelay + } + STATUS current + DESCRIPTION + “A collection of objects providing information about an + aggregation.” + ::= { dot3adAggGroups 1 } + + +dot3adAggPortListGroup OBJECT-GROUP + OBJECTS { + dot3adAggPortListPorts + } + STATUS current + DESCRIPTION + “A collection of objects providing information about every + port in an aggregation.” + ::= { dot3adAggGroups 2 } + + +dot3adAggPortGroup OBJECT-GROUP + OBJECTS { + dot3adAggPortActorSystemPriority, + dot3adAggPortActorSystemID, + dot3adAggPortActorAdminKey, + dot3adAggPortActorOperKey, + dot3adAggPortPartnerAdminSystemPriority, + dot3adAggPortPartnerOperSystemPriority, + dot3adAggPortPartnerAdminSystemID, + dot3adAggPortPartnerOperSystemID, + dot3adAggPortPartnerAdminKey, + dot3adAggPortPartnerOperKey, + dot3adAggPortSelectedAggID, + dot3adAggPortAttachedAggID, + dot3adAggPortActorPort, + dot3adAggPortActorPortPriority, + dot3adAggPortPartnerAdminPort, + dot3adAggPortPartnerOperPort, + dot3adAggPortPartnerAdminPortPriority, + dot3adAggPortPartnerOperPortPriority, + dot3adAggPortActorAdminState, + dot3adAggPortActorOperState, + dot3adAggPortPartnerAdminState, + dot3adAggPortPartnerOperState, + dot3adAggPortAggregateOrIndividual + } + STATUS current + DESCRIPTION + “A collection of objects providing information about every + port in an aggregation.” + ::= { dot3adAggGroups 3 } + + +dot3adAggPortStatsGroup OBJECT-GROUP + OBJECTS { + dot3adAggPortStatsLACPDUsRx, + dot3adAggPortStatsMarkerPDUsRx, + dot3adAggPortStatsMarkerResponsePDUsRx, + dot3adAggPortStatsUnknownRx, + dot3adAggPortStatsIllegalRx, + dot3adAggPortStatsLACPDUsTx, + dot3adAggPortStatsMarkerPDUsTx, + dot3adAggPortStatsMarkerResponsePDUsTx + } + STATUS current + DESCRIPTION + “A collection of objects providing information about every + port in an aggregation.” + ::= { dot3adAggGroups 4 } + + +dot3adAggPortDebugGroup OBJECT-GROUP + OBJECTS { + dot3adAggPortDebugRxState, + dot3adAggPortDebugLastRxTime, + dot3adAggPortDebugMuxState, + dot3adAggPortDebugMuxReason, + dot3adAggPortDebugActorChurnState, + dot3adAggPortDebugPartnerChurnState, + dot3adAggPortDebugActorChurnCount, + dot3adAggPortDebugPartnerChurnCount, + dot3adAggPortDebugActorSyncTransitionCount, + dot3adAggPortDebugPartnerSyncTransitionCount, + dot3adAggPortDebugActorChangeCount, + dot3adAggPortDebugPartnerChangeCount + } + STATUS current + DESCRIPTION + “A collection of objects providing debug information about + every aggregated port.” + ::= { dot3adAggGroups 5 } + +dot3adTablesLastChangedGroup OBJECT-GROUP + OBJECTS { + dot3adTablesLastChanged + } + STATUS current + DESCRIPTION + “A collection of objects providing information about the time + of changes to the configuration of aggregations and their ports.” +::= { dot3adAggGroup 6 } + +-- ------------------------------------------------------------- +-- compliance statements +-- ------------------------------------------------------------- + + +dot3adAggCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + “The compliance statement for device support of + Link Aggregation.” + + + MODULE + MANDATORY-GROUPS { + dot3adAggGroup, + dot3adAggPortGroup, + dot3adTablesLastChangedGroup + } + + + GROUP dot3adAggPortListGroup + DESCRIPTION + “This group is optional.” + + + GROUP dot3adAggPortStatsGroup + DESCRIPTION + “This group is optional.” + + + GROUP dot3adAggPortDebugGroup + DESCRIPTION + “This group is optional.” + + + ::= { dot3adAggCompliances 1 } + + +END \ No newline at end of file diff --git a/mibs/IF-MIB.txt b/mibs/IF-MIB.txt new file mode 100644 index 00000000..80132033 --- /dev/null +++ b/mibs/IF-MIB.txt @@ -0,0 +1,1899 @@ +IF-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Counter32, Gauge32, Counter64, + Integer32, TimeTicks, mib-2, + NOTIFICATION-TYPE FROM SNMPv2-SMI + TEXTUAL-CONVENTION, DisplayString, + PhysAddress, TruthValue, RowStatus, + TimeStamp, AutonomousType, TestAndIncr FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP, + NOTIFICATION-GROUP FROM SNMPv2-CONF + snmpTraps FROM SNMPv2-MIB + IANAifType FROM IANAifType-MIB; + + +ifMIB MODULE-IDENTITY + LAST-UPDATED "200006140000Z" + ORGANIZATION "IETF Interfaces MIB Working Group" + CONTACT-INFO + " Keith McCloghrie + Cisco Systems, Inc. + 170 West Tasman Drive + San Jose, CA 95134-1706 + US + + 408-526-5260 + kzm@cisco.com" + DESCRIPTION + "The MIB module to describe generic objects for network + interface sub-layers. This MIB is an updated version of + MIB-II's ifTable, and incorporates the extensions defined in + RFC 1229." + + + REVISION "200006140000Z" + DESCRIPTION + "Clarifications agreed upon by the Interfaces MIB WG, and + published as RFC 2863." + REVISION "199602282155Z" + DESCRIPTION + "Revisions made by the Interfaces MIB WG, and published in + RFC 2233." + REVISION "199311082155Z" + DESCRIPTION + "Initial revision, published as part of RFC 1573." + ::= { mib-2 31 } + + +ifMIBObjects OBJECT IDENTIFIER ::= { ifMIB 1 } + +interfaces OBJECT IDENTIFIER ::= { mib-2 2 } + +-- +-- Textual Conventions +-- + + +-- OwnerString has the same semantics as used in RFC 1271 + +OwnerString ::= TEXTUAL-CONVENTION + DISPLAY-HINT "255a" + STATUS deprecated + DESCRIPTION + "This data type is used to model an administratively + assigned name of the owner of a resource. This information + is taken from the NVT ASCII character set. It is suggested + that this name contain one or more of the following: ASCII + form of the manager station's transport address, management + station name (e.g., domain name), network management + personnel's name, location, or phone number. In some cases + the agent itself will be the owner of an entry. In these + cases, this string shall be set to a string starting with + 'agent'." + SYNTAX OCTET STRING (SIZE(0..255)) + +-- InterfaceIndex contains the semantics of ifIndex and should be used +-- for any objects defined in other MIB modules that need these semantics. + +InterfaceIndex ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + + + "A unique value, greater than zero, for each interface or + interface sub-layer in the managed system. It is + recommended that values are assigned contiguously starting + from 1. The value for each interface sub-layer must remain + constant at least from one re-initialization of the entity's + network management system to the next re-initialization." + SYNTAX Integer32 (1..2147483647) + +InterfaceIndexOrZero ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "This textual convention is an extension of the + InterfaceIndex convention. The latter defines a greater + than zero value used to identify an interface or interface + sub-layer in the managed system. This extension permits the + additional value of zero. the value zero is object-specific + and must therefore be defined as part of the description of + any object which uses this syntax. Examples of the usage of + zero might include situations where interface was unknown, + or when none or all interfaces need to be referenced." + SYNTAX Integer32 (0..2147483647) + +ifNumber OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of network interfaces (regardless of their + current state) present on this system." + ::= { interfaces 1 } + +ifTableLastChange OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time of the last creation or + deletion of an entry in the ifTable. If the number of + entries has been unchanged since the last re-initialization + of the local network management subsystem, then this object + contains a zero value." + ::= { ifMIBObjects 5 } + + +-- the Interfaces table + +-- The Interfaces table contains information on the entity's + + +-- interfaces. Each sub-layer below the internetwork-layer +-- of a network interface is considered to be an interface. + +ifTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of interface entries. The number of entries is + given by the value of ifNumber." + ::= { interfaces 2 } + +ifEntry OBJECT-TYPE + SYNTAX IfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing management information applicable to a + particular interface." + INDEX { ifIndex } + ::= { ifTable 1 } + +IfEntry ::= + SEQUENCE { + ifIndex InterfaceIndex, + ifDescr DisplayString, + ifType IANAifType, + ifMtu Integer32, + ifSpeed Gauge32, + ifPhysAddress PhysAddress, + ifAdminStatus INTEGER, + ifOperStatus INTEGER, + ifLastChange TimeTicks, + ifInOctets Counter32, + ifInUcastPkts Counter32, + ifInNUcastPkts Counter32, -- deprecated + ifInDiscards Counter32, + ifInErrors Counter32, + ifInUnknownProtos Counter32, + ifOutOctets Counter32, + ifOutUcastPkts Counter32, + ifOutNUcastPkts Counter32, -- deprecated + ifOutDiscards Counter32, + ifOutErrors Counter32, + ifOutQLen Gauge32, -- deprecated + ifSpecific OBJECT IDENTIFIER -- deprecated + } + + + +ifIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A unique value, greater than zero, for each interface. It + is recommended that values are assigned contiguously + starting from 1. The value for each interface sub-layer + must remain constant at least from one re-initialization of + the entity's network management system to the next re- + initialization." + ::= { ifEntry 1 } + +ifDescr OBJECT-TYPE + SYNTAX DisplayString (SIZE (0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A textual string containing information about the + interface. This string should include the name of the + manufacturer, the product name and the version of the + interface hardware/software." + ::= { ifEntry 2 } + +ifType OBJECT-TYPE + SYNTAX IANAifType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of interface. Additional values for ifType are + assigned by the Internet Assigned Numbers Authority (IANA), + through updating the syntax of the IANAifType textual + convention." + ::= { ifEntry 3 } + +ifMtu OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The size of the largest packet which can be sent/received + on the interface, specified in octets. For interfaces that + are used for transmitting network datagrams, this is the + size of the largest network datagram that can be sent on the + interface." + ::= { ifEntry 4 } + +ifSpeed OBJECT-TYPE + + + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An estimate of the interface's current bandwidth in bits + per second. For interfaces which do not vary in bandwidth + or for those where no accurate estimation can be made, this + object should contain the nominal bandwidth. If the + bandwidth of the interface is greater than the maximum value + reportable by this object then this object should report its + maximum value (4,294,967,295) and ifHighSpeed must be used + to report the interace's speed. For a sub-layer which has + no concept of bandwidth, this object should be zero." + ::= { ifEntry 5 } + +ifPhysAddress OBJECT-TYPE + SYNTAX PhysAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The interface's address at its protocol sub-layer. For + example, for an 802.x interface, this object normally + contains a MAC address. The interface's media-specific MIB + must define the bit and byte ordering and the format of the + value of this object. For interfaces which do not have such + an address (e.g., a serial line), this object should contain + an octet string of zero length." + ::= { ifEntry 6 } + +ifAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), -- ready to pass packets + down(2), + testing(3) -- in some test mode + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The desired state of the interface. The testing(3) state + indicates that no operational packets can be passed. When a + managed system initializes, all interfaces start with + ifAdminStatus in the down(2) state. As a result of either + explicit management action or per configuration information + retained by the managed system, ifAdminStatus is then + changed to either the up(1) or testing(3) states (or remains + in the down(2) state)." + ::= { ifEntry 7 } + + + +ifOperStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), -- ready to pass packets + down(2), + testing(3), -- in some test mode + unknown(4), -- status can not be determined + -- for some reason. + dormant(5), + notPresent(6), -- some component is missing + lowerLayerDown(7) -- down due to state of + -- lower-layer interface(s) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current operational state of the interface. The + testing(3) state indicates that no operational packets can + be passed. If ifAdminStatus is down(2) then ifOperStatus + should be down(2). If ifAdminStatus is changed to up(1) + then ifOperStatus should change to up(1) if the interface is + ready to transmit and receive network traffic; it should + change to dormant(5) if the interface is waiting for + external actions (such as a serial line waiting for an + incoming connection); it should remain in the down(2) state + if and only if there is a fault that prevents it from going + to the up(1) state; it should remain in the notPresent(6) + state if the interface has missing (typically, hardware) + components." + ::= { ifEntry 8 } + +ifLastChange OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time the interface entered + its current operational state. If the current state was + entered prior to the last re-initialization of the local + network management subsystem, then this object contains a + zero value." + ::= { ifEntry 9 } + +ifInOctets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of octets received on the interface, + + + including framing characters. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifEntry 10 } + +ifInUcastPkts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets, delivered by this sub-layer to a + higher (sub-)layer, which were not addressed to a multicast + or broadcast address at this sub-layer. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifEntry 11 } + +ifInNUcastPkts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "The number of packets, delivered by this sub-layer to a + higher (sub-)layer, which were addressed to a multicast or + broadcast address at this sub-layer. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime. + + This object is deprecated in favour of ifInMulticastPkts and + ifInBroadcastPkts." + ::= { ifEntry 12 } + +ifInDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of inbound packets which were chosen to be + discarded even though no errors had been detected to prevent + + + their being deliverable to a higher-layer protocol. One + possible reason for discarding such a packet could be to + free up buffer space. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifEntry 13 } + +ifInErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "For packet-oriented interfaces, the number of inbound + packets that contained errors preventing them from being + deliverable to a higher-layer protocol. For character- + oriented or fixed-length interfaces, the number of inbound + transmission units that contained errors preventing them + from being deliverable to a higher-layer protocol. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifEntry 14 } + +ifInUnknownProtos OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "For packet-oriented interfaces, the number of packets + received via the interface which were discarded because of + an unknown or unsupported protocol. For character-oriented + or fixed-length interfaces that support protocol + multiplexing the number of transmission units received via + the interface which were discarded because of an unknown or + unsupported protocol. For any interface that does not + support protocol multiplexing, this counter will always be + 0. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifEntry 15 } + + +ifOutOctets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of octets transmitted out of the + interface, including framing characters. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifEntry 16 } + +ifOutUcastPkts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of packets that higher-level protocols + requested be transmitted, and which were not addressed to a + multicast or broadcast address at this sub-layer, including + those that were discarded or not sent. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifEntry 17 } + +ifOutNUcastPkts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "The total number of packets that higher-level protocols + requested be transmitted, and which were addressed to a + multicast or broadcast address at this sub-layer, including + those that were discarded or not sent. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime. + + This object is deprecated in favour of ifOutMulticastPkts + and ifOutBroadcastPkts." + ::= { ifEntry 18 } + + +ifOutDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of outbound packets which were chosen to be + discarded even though no errors had been detected to prevent + their being transmitted. One possible reason for discarding + such a packet could be to free up buffer space. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifEntry 19 } + +ifOutErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "For packet-oriented interfaces, the number of outbound + packets that could not be transmitted because of errors. + For character-oriented or fixed-length interfaces, the + number of outbound transmission units that could not be + transmitted because of errors. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifEntry 20 } + +ifOutQLen OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "The length of the output packet queue (in packets)." + ::= { ifEntry 21 } + +ifSpecific OBJECT-TYPE + SYNTAX OBJECT IDENTIFIER + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "A reference to MIB definitions specific to the particular + media being used to realize the interface. It is + + + recommended that this value point to an instance of a MIB + object in the media-specific MIB, i.e., that this object + have the semantics associated with the InstancePointer + textual convention defined in RFC 2579. In fact, it is + recommended that the media-specific MIB specify what value + ifSpecific should/can take for values of ifType. If no MIB + definitions specific to the particular media are available, + the value should be set to the OBJECT IDENTIFIER { 0 0 }." + ::= { ifEntry 22 } + + + +-- +-- Extension to the interface table +-- +-- This table replaces the ifExtnsTable table. +-- + +ifXTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfXEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of interface entries. The number of entries is + given by the value of ifNumber. This table contains + additional objects for the interface table." + ::= { ifMIBObjects 1 } + +ifXEntry OBJECT-TYPE + SYNTAX IfXEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing additional management information + applicable to a particular interface." + AUGMENTS { ifEntry } + ::= { ifXTable 1 } + +IfXEntry ::= + SEQUENCE { + ifName DisplayString, + ifInMulticastPkts Counter32, + ifInBroadcastPkts Counter32, + ifOutMulticastPkts Counter32, + ifOutBroadcastPkts Counter32, + ifHCInOctets Counter64, + ifHCInUcastPkts Counter64, + ifHCInMulticastPkts Counter64, + + + ifHCInBroadcastPkts Counter64, + ifHCOutOctets Counter64, + ifHCOutUcastPkts Counter64, + ifHCOutMulticastPkts Counter64, + ifHCOutBroadcastPkts Counter64, + ifLinkUpDownTrapEnable INTEGER, + ifHighSpeed Gauge32, + ifPromiscuousMode TruthValue, + ifConnectorPresent TruthValue, + ifAlias DisplayString, + ifCounterDiscontinuityTime TimeStamp + } + + +ifName OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The textual name of the interface. The value of this + object should be the name of the interface as assigned by + the local device and should be suitable for use in commands + entered at the device's `console'. This might be a text + name, such as `le0' or a simple port number, such as `1', + depending on the interface naming syntax of the device. If + several entries in the ifTable together represent a single + interface as named by the device, then each will have the + same value of ifName. Note that for an agent which responds + to SNMP queries concerning an interface on some other + (proxied) device, then the value of ifName for such an + interface is the proxied device's local name for it. + + If there is no local name, or this object is otherwise not + applicable, then this object contains a zero-length string." + ::= { ifXEntry 1 } + +ifInMulticastPkts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets, delivered by this sub-layer to a + higher (sub-)layer, which were addressed to a multicast + address at this sub-layer. For a MAC layer protocol, this + includes both Group and Functional addresses. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + + + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 2 } + +ifInBroadcastPkts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets, delivered by this sub-layer to a + higher (sub-)layer, which were addressed to a broadcast + address at this sub-layer. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 3 } + +ifOutMulticastPkts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of packets that higher-level protocols + requested be transmitted, and which were addressed to a + multicast address at this sub-layer, including those that + were discarded or not sent. For a MAC layer protocol, this + includes both Group and Functional addresses. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 4 } + +ifOutBroadcastPkts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of packets that higher-level protocols + requested be transmitted, and which were addressed to a + broadcast address at this sub-layer, including those that + were discarded or not sent. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + + + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 5 } + +-- +-- High Capacity Counter objects. These objects are all +-- 64 bit versions of the "basic" ifTable counters. These +-- objects all have the same basic semantics as their 32-bit +-- counterparts, however, their syntax has been extended +-- to 64 bits. +-- + +ifHCInOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of octets received on the interface, + including framing characters. This object is a 64-bit + version of ifInOctets. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 6 } + +ifHCInUcastPkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets, delivered by this sub-layer to a + higher (sub-)layer, which were not addressed to a multicast + or broadcast address at this sub-layer. This object is a + 64-bit version of ifInUcastPkts. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 7 } + +ifHCInMulticastPkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + "The number of packets, delivered by this sub-layer to a + higher (sub-)layer, which were addressed to a multicast + address at this sub-layer. For a MAC layer protocol, this + includes both Group and Functional addresses. This object + is a 64-bit version of ifInMulticastPkts. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 8 } + +ifHCInBroadcastPkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets, delivered by this sub-layer to a + higher (sub-)layer, which were addressed to a broadcast + address at this sub-layer. This object is a 64-bit version + of ifInBroadcastPkts. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 9 } + +ifHCOutOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of octets transmitted out of the + interface, including framing characters. This object is a + 64-bit version of ifOutOctets. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 10 } + +ifHCOutUcastPkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + "The total number of packets that higher-level protocols + requested be transmitted, and which were not addressed to a + multicast or broadcast address at this sub-layer, including + those that were discarded or not sent. This object is a + 64-bit version of ifOutUcastPkts. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 11 } + +ifHCOutMulticastPkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of packets that higher-level protocols + requested be transmitted, and which were addressed to a + multicast address at this sub-layer, including those that + were discarded or not sent. For a MAC layer protocol, this + includes both Group and Functional addresses. This object + is a 64-bit version of ifOutMulticastPkts. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 12 } + +ifHCOutBroadcastPkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of packets that higher-level protocols + requested be transmitted, and which were addressed to a + broadcast address at this sub-layer, including those that + were discarded or not sent. This object is a 64-bit version + of ifOutBroadcastPkts. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of + ifCounterDiscontinuityTime." + ::= { ifXEntry 13 } + +ifLinkUpDownTrapEnable OBJECT-TYPE + + + SYNTAX INTEGER { enabled(1), disabled(2) } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates whether linkUp/linkDown traps should be generated + for this interface. + + By default, this object should have the value enabled(1) for + interfaces which do not operate on 'top' of any other + interface (as defined in the ifStackTable), and disabled(2) + otherwise." + ::= { ifXEntry 14 } + +ifHighSpeed OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An estimate of the interface's current bandwidth in units + of 1,000,000 bits per second. If this object reports a + value of `n' then the speed of the interface is somewhere in + the range of `n-500,000' to `n+499,999'. For interfaces + which do not vary in bandwidth or for those where no + accurate estimation can be made, this object should contain + the nominal bandwidth. For a sub-layer which has no concept + of bandwidth, this object should be zero." + ::= { ifXEntry 15 } + +ifPromiscuousMode OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object has a value of false(2) if this interface only + accepts packets/frames that are addressed to this station. + This object has a value of true(1) when the station accepts + all packets/frames transmitted on the media. The value + true(1) is only legal on certain types of media. If legal, + setting this object to a value of true(1) may require the + interface to be reset before becoming effective. + + The value of ifPromiscuousMode does not affect the reception + of broadcast and multicast packets/frames by the interface." + ::= { ifXEntry 16 } + +ifConnectorPresent OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + + + STATUS current + DESCRIPTION + "This object has the value 'true(1)' if the interface + sublayer has a physical connector and the value 'false(2)' + otherwise." + ::= { ifXEntry 17 } + +ifAlias OBJECT-TYPE + SYNTAX DisplayString (SIZE(0..64)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is an 'alias' name for the interface as + specified by a network manager, and provides a non-volatile + 'handle' for the interface. + + On the first instantiation of an interface, the value of + ifAlias associated with that interface is the zero-length + string. As and when a value is written into an instance of + ifAlias through a network management set operation, then the + agent must retain the supplied value in the ifAlias instance + associated with the same interface for as long as that + interface remains instantiated, including across all re- + initializations/reboots of the network management system, + including those which result in a change of the interface's + ifIndex value. + + An example of the value which a network manager might store + in this object for a WAN interface is the (Telco's) circuit + number/identifier of the interface. + + Some agents may support write-access only for interfaces + having particular values of ifType. An agent which supports + write access to this object is required to keep the value in + non-volatile storage, but it may limit the length of new + values depending on how much storage is already occupied by + the current values for other interfaces." + ::= { ifXEntry 18 } + +ifCounterDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion at which + any one or more of this interface's counters suffered a + discontinuity. The relevant counters are the specific + instances associated with this interface of any Counter32 or + + + Counter64 object contained in the ifTable or ifXTable. If + no such discontinuities have occurred since the last re- + initialization of the local management subsystem, then this + object contains a zero value." + ::= { ifXEntry 19 } + +-- The Interface Stack Group +-- +-- Implementation of this group is optional, but strongly recommended +-- for all systems +-- + +ifStackTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfStackEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table containing information on the relationships + between the multiple sub-layers of network interfaces. In + particular, it contains information on which sub-layers run + 'on top of' which other sub-layers, where each sub-layer + corresponds to a conceptual row in the ifTable. For + example, when the sub-layer with ifIndex value x runs over + the sub-layer with ifIndex value y, then this table + contains: + + ifStackStatus.x.y=active + + For each ifIndex value, I, which identifies an active + interface, there are always at least two instantiated rows + in this table associated with I. For one of these rows, I + is the value of ifStackHigherLayer; for the other, I is the + value of ifStackLowerLayer. (If I is not involved in + multiplexing, then these are the only two rows associated + with I.) + + For example, two rows exist even for an interface which has + no others stacked on top or below it: + + ifStackStatus.0.x=active + ifStackStatus.x.0=active " + ::= { ifMIBObjects 2 } + + +ifStackEntry OBJECT-TYPE + SYNTAX IfStackEntry + MAX-ACCESS not-accessible + STATUS current + + + DESCRIPTION + "Information on a particular relationship between two sub- + layers, specifying that one sub-layer runs on 'top' of the + other sub-layer. Each sub-layer corresponds to a conceptual + row in the ifTable." + INDEX { ifStackHigherLayer, ifStackLowerLayer } + ::= { ifStackTable 1 } + + +IfStackEntry ::= + SEQUENCE { + ifStackHigherLayer InterfaceIndexOrZero, + ifStackLowerLayer InterfaceIndexOrZero, + ifStackStatus RowStatus + } + + +ifStackHigherLayer OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The value of ifIndex corresponding to the higher sub-layer + of the relationship, i.e., the sub-layer which runs on 'top' + of the sub-layer identified by the corresponding instance of + ifStackLowerLayer. If there is no higher sub-layer (below + the internetwork layer), then this object has the value 0." + ::= { ifStackEntry 1 } + + +ifStackLowerLayer OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The value of ifIndex corresponding to the lower sub-layer + of the relationship, i.e., the sub-layer which runs 'below' + the sub-layer identified by the corresponding instance of + ifStackHigherLayer. If there is no lower sub-layer, then + this object has the value 0." + ::= { ifStackEntry 2 } + + +ifStackStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + "The status of the relationship between two sub-layers. + + Changing the value of this object from 'active' to + 'notInService' or 'destroy' will likely have consequences up + and down the interface stack. Thus, write access to this + object is likely to be inappropriate for some types of + interfaces, and many implementations will choose not to + support write-access for any type of interface." + ::= { ifStackEntry 3 } + +ifStackLastChange OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time of the last change of + the (whole) interface stack. A change of the interface + stack is defined to be any creation, deletion, or change in + value of any instance of ifStackStatus. If the interface + stack has been unchanged since the last re-initialization of + the local network management subsystem, then this object + contains a zero value." + ::= { ifMIBObjects 6 } + + +-- Generic Receive Address Table +-- +-- This group of objects is mandatory for all types of +-- interfaces which can receive packets/frames addressed to +-- more than one address. +-- +-- This table replaces the ifExtnsRcvAddr table. The main +-- difference is that this table makes use of the RowStatus +-- textual convention, while ifExtnsRcvAddr did not. + +ifRcvAddressTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfRcvAddressEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains an entry for each address (broadcast, + multicast, or uni-cast) for which the system will receive + packets/frames on a particular interface, except as follows: + + - for an interface operating in promiscuous mode, entries + are only required for those addresses for which the system + would receive frames were it not operating in promiscuous + mode. + + + - for 802.5 functional addresses, only one entry is + required, for the address which has the functional address + bit ANDed with the bit mask of all functional addresses for + which the interface will accept frames. + + A system is normally able to use any unicast address which + corresponds to an entry in this table as a source address." + ::= { ifMIBObjects 4 } + +ifRcvAddressEntry OBJECT-TYPE + SYNTAX IfRcvAddressEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of objects identifying an address for which the + system will accept packets/frames on the particular + interface identified by the index value ifIndex." + INDEX { ifIndex, ifRcvAddressAddress } + ::= { ifRcvAddressTable 1 } + +IfRcvAddressEntry ::= + SEQUENCE { + ifRcvAddressAddress PhysAddress, + ifRcvAddressStatus RowStatus, + ifRcvAddressType INTEGER + } + +ifRcvAddressAddress OBJECT-TYPE + SYNTAX PhysAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An address for which the system will accept packets/frames + on this entry's interface." + ::= { ifRcvAddressEntry 1 } + +ifRcvAddressStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is used to create and delete rows in the + ifRcvAddressTable.--IPI Comments: Not Supported" + + ::= { ifRcvAddressEntry 2 } + +ifRcvAddressType OBJECT-TYPE + SYNTAX INTEGER { + + + other(1), + volatile(2), + nonVolatile(3) + } + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object has the value nonVolatile(3) for those entries + in the table which are valid and will not be deleted by the + next restart of the managed system. Entries having the + value volatile(2) are valid and exist, but have not been + saved, so that will not exist after the next restart of the + managed system. Entries having the value other(1) are valid + and exist but are not classified as to whether they will + continue to exist after the next restart.--IPI Comments: Not Supported" + + DEFVAL { volatile } + ::= { ifRcvAddressEntry 3 } + +-- definition of interface-related traps. + +linkDown NOTIFICATION-TYPE + OBJECTS { ifIndex, ifAdminStatus, ifOperStatus } + STATUS current + DESCRIPTION + "A linkDown trap signifies that the SNMP entity, acting in + an agent role, has detected that the ifOperStatus object for + one of its communication links is about to enter the down + state from some other state (but not from the notPresent + state). This other state is indicated by the included value + of ifOperStatus." + ::= { snmpTraps 3 } + +linkUp NOTIFICATION-TYPE + OBJECTS { ifIndex, ifAdminStatus, ifOperStatus } + STATUS current + DESCRIPTION + "A linkUp trap signifies that the SNMP entity, acting in an + agent role, has detected that the ifOperStatus object for + one of its communication links left the down state and + transitioned into some other state (but not into the + notPresent state). This other state is indicated by the + included value of ifOperStatus." + ::= { snmpTraps 4 } + +-- conformance information + + + +ifConformance OBJECT IDENTIFIER ::= { ifMIB 2 } + +ifGroups OBJECT IDENTIFIER ::= { ifConformance 1 } +ifCompliances OBJECT IDENTIFIER ::= { ifConformance 2 } + + +-- compliance statements + +ifCompliance3 MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for SNMP entities which have + network interfaces." + + MODULE -- this module + MANDATORY-GROUPS { ifGeneralInformationGroup, + linkUpDownNotificationsGroup } + +-- The groups: +-- ifFixedLengthGroup +-- ifHCFixedLengthGroup +-- ifPacketGroup +-- ifHCPacketGroup +-- ifVHCPacketGroup +-- are mutually exclusive; at most one of these groups is implemented +-- for a particular interface. When any of these groups is implemented +-- for a particular interface, then ifCounterDiscontinuityGroup must +-- also be implemented for that interface. + + + GROUP ifFixedLengthGroup + DESCRIPTION + "This group is mandatory for those network interfaces which + are character-oriented or transmit data in fixed-length + transmission units, and for which the value of the + corresponding instance of ifSpeed is less than or equal to + 20,000,000 bits/second." + + GROUP ifHCFixedLengthGroup + DESCRIPTION + "This group is mandatory for those network interfaces which + are character-oriented or transmit data in fixed-length + transmission units, and for which the value of the + corresponding instance of ifSpeed is greater than 20,000,000 + bits/second." + + GROUP ifPacketGroup + DESCRIPTION + + + "This group is mandatory for those network interfaces which + are packet-oriented, and for which the value of the + corresponding instance of ifSpeed is less than or equal to + 20,000,000 bits/second." + + GROUP ifHCPacketGroup + DESCRIPTION + "This group is mandatory only for those network interfaces + which are packet-oriented and for which the value of the + corresponding instance of ifSpeed is greater than 20,000,000 + bits/second but less than or equal to 650,000,000 + bits/second." + + GROUP ifVHCPacketGroup + DESCRIPTION + "This group is mandatory only for those network interfaces + which are packet-oriented and for which the value of the + corresponding instance of ifSpeed is greater than + 650,000,000 bits/second." + + + GROUP ifCounterDiscontinuityGroup + DESCRIPTION + "This group is mandatory for those network interfaces that + are required to maintain counters (i.e., those for which one + of the ifFixedLengthGroup, ifHCFixedLengthGroup, + ifPacketGroup, ifHCPacketGroup, or ifVHCPacketGroup is + mandatory)." + + + GROUP ifRcvAddressGroup + DESCRIPTION + "The applicability of this group MUST be defined by the + media-specific MIBs. Media-specific MIBs must define the + exact meaning, use, and semantics of the addresses in this + group." + + OBJECT ifLinkUpDownTrapEnable + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ifPromiscuousMode + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ifAdminStatus + + + SYNTAX INTEGER { up(1), down(2) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, nor is support for the value + testing(3)." + + OBJECT ifAlias + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + ::= { ifCompliances 3 } + +-- units of conformance + +ifGeneralInformationGroup OBJECT-GROUP + OBJECTS { ifIndex, ifDescr, ifType, ifSpeed, ifPhysAddress, + ifAdminStatus, ifOperStatus, ifLastChange, + ifLinkUpDownTrapEnable, ifConnectorPresent, + ifHighSpeed, ifName, ifNumber, ifAlias, + ifTableLastChange } + STATUS current + DESCRIPTION + "A collection of objects providing information applicable to + all network interfaces.--IPI Comments: Not Supported" + ::= { ifGroups 10 } + +-- the following five groups are mutually exclusive; at most +-- one of these groups is implemented for any interface + +ifFixedLengthGroup OBJECT-GROUP + OBJECTS { ifInOctets, ifOutOctets, ifInUnknownProtos, + ifInErrors, ifOutErrors } + STATUS current + DESCRIPTION + "A collection of objects providing information specific to + non-high speed (non-high speed interfaces transmit and + receive at speeds less than or equal to 20,000,000 + bits/second) character-oriented or fixed-length-transmission + network interfaces." + ::= { ifGroups 2 } + +ifHCFixedLengthGroup OBJECT-GROUP + OBJECTS { ifHCInOctets, ifHCOutOctets, + ifInOctets, ifOutOctets, ifInUnknownProtos, + ifInErrors, ifOutErrors } + STATUS current + DESCRIPTION + + + "A collection of objects providing information specific to + high speed (greater than 20,000,000 bits/second) character- + oriented or fixed-length-transmission network interfaces." + ::= { ifGroups 3 } + +ifPacketGroup OBJECT-GROUP + OBJECTS { ifInOctets, ifOutOctets, ifInUnknownProtos, + ifInErrors, ifOutErrors, + ifMtu, ifInUcastPkts, ifInMulticastPkts, + ifInBroadcastPkts, ifInDiscards, + ifOutUcastPkts, ifOutMulticastPkts, + ifOutBroadcastPkts, ifOutDiscards, + ifPromiscuousMode } + STATUS current + DESCRIPTION + "A collection of objects providing information specific to + non-high speed (non-high speed interfaces transmit and + receive at speeds less than or equal to 20,000,000 + bits/second) packet-oriented network interfaces.--IPI Comments: Not Supported" + ::= { ifGroups 4 } + +ifHCPacketGroup OBJECT-GROUP + OBJECTS { ifHCInOctets, ifHCOutOctets, + ifInOctets, ifOutOctets, ifInUnknownProtos, + ifInErrors, ifOutErrors, + ifMtu, ifInUcastPkts, ifInMulticastPkts, + ifInBroadcastPkts, ifInDiscards, + ifOutUcastPkts, ifOutMulticastPkts, + ifOutBroadcastPkts, ifOutDiscards, + ifPromiscuousMode } + STATUS current + DESCRIPTION + "A collection of objects providing information specific to + high speed (greater than 20,000,000 bits/second but less + than or equal to 650,000,000 bits/second) packet-oriented + network interfaces." + ::= { ifGroups 5 } + +ifVHCPacketGroup OBJECT-GROUP + OBJECTS { ifHCInUcastPkts, ifHCInMulticastPkts, + ifHCInBroadcastPkts, ifHCOutUcastPkts, + ifHCOutMulticastPkts, ifHCOutBroadcastPkts, + ifHCInOctets, ifHCOutOctets, + ifInOctets, ifOutOctets, ifInUnknownProtos, + ifInErrors, ifOutErrors, + ifMtu, ifInUcastPkts, ifInMulticastPkts, + ifInBroadcastPkts, ifInDiscards, + ifOutUcastPkts, ifOutMulticastPkts, + + + ifOutBroadcastPkts, ifOutDiscards, + ifPromiscuousMode } + STATUS current + DESCRIPTION + "A collection of objects providing information specific to + higher speed (greater than 650,000,000 bits/second) packet- + oriented network interfaces." + ::= { ifGroups 6 } + +ifRcvAddressGroup OBJECT-GROUP + OBJECTS { ifRcvAddressStatus, ifRcvAddressType } + STATUS current + DESCRIPTION + "A collection of objects providing information on the + multiple addresses which an interface receives.--IPI Comments: Not Supported" + ::= { ifGroups 7 } + +ifStackGroup2 OBJECT-GROUP + OBJECTS { ifStackStatus, ifStackLastChange } + STATUS current + DESCRIPTION + "A collection of objects providing information on the + layering of MIB-II interfaces.--IPI Comments: Not Supported" + ::= { ifGroups 11 } + +ifCounterDiscontinuityGroup OBJECT-GROUP + OBJECTS { ifCounterDiscontinuityTime } + STATUS current + DESCRIPTION + "A collection of objects providing information specific to + interface counter discontinuities.--IPI Comments: Not Supported" + ::= { ifGroups 13 } + +linkUpDownNotificationsGroup NOTIFICATION-GROUP + NOTIFICATIONS { linkUp, linkDown } + STATUS current + DESCRIPTION + "The notifications which indicate specific changes in the + value of ifOperStatus.--IPI Comments: Not Supported" + ::= { ifGroups 14 } + +-- Deprecated Definitions - Objects + + +-- +-- The Interface Test Table +-- +-- This group of objects is optional. However, a media-specific + + +-- MIB may make implementation of this group mandatory. +-- +-- This table replaces the ifExtnsTestTable +-- + +ifTestTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfTestEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "This table contains one entry per interface. It defines + objects which allow a network manager to instruct an agent + to test an interface for various faults. Tests for an + interface are defined in the media-specific MIB for that + interface. After invoking a test, the object ifTestResult + can be read to determine the outcome. If an agent can not + perform the test, ifTestResult is set to so indicate. The + object ifTestCode can be used to provide further test- + specific or interface-specific (or even enterprise-specific) + information concerning the outcome of the test. Only one + test can be in progress on each interface at any one time. + If one test is in progress when another test is invoked, the + second test is rejected. Some agents may reject a test when + a prior test is active on another interface. + + Before starting a test, a manager-station must first obtain + 'ownership' of the entry in the ifTestTable for the + interface to be tested. This is accomplished with the + ifTestId and ifTestStatus objects as follows: + + try_again: + get (ifTestId, ifTestStatus) + while (ifTestStatus != notInUse) + /* + * Loop while a test is running or some other + * manager is configuring a test. + */ + short delay + get (ifTestId, ifTestStatus) + } + + /* + * Is not being used right now -- let's compete + * to see who gets it. + */ + lock_value = ifTestId + + if ( set(ifTestId = lock_value, ifTestStatus = inUse, + + + ifTestOwner = 'my-IP-address') == FAILURE) + /* + * Another manager got the ifTestEntry -- go + * try again + */ + goto try_again; + + /* + * I have the lock + */ + set up any test parameters. + + /* + * This starts the test + */ + set(ifTestType = test_to_run); + + wait for test completion by polling ifTestResult + + when test completes, agent sets ifTestResult + agent also sets ifTestStatus = 'notInUse' + + retrieve any additional test results, and ifTestId + + if (ifTestId == lock_value+1) results are valid + + A manager station first retrieves the value of the + appropriate ifTestId and ifTestStatus objects, periodically + repeating the retrieval if necessary, until the value of + ifTestStatus is 'notInUse'. The manager station then tries + to set the same ifTestId object to the value it just + retrieved, the same ifTestStatus object to 'inUse', and the + corresponding ifTestOwner object to a value indicating + itself. If the set operation succeeds then the manager has + obtained ownership of the ifTestEntry, and the value of the + ifTestId object is incremented by the agent (per the + semantics of TestAndIncr). Failure of the set operation + indicates that some other manager has obtained ownership of + the ifTestEntry. + + Once ownership is obtained, any test parameters can be + setup, and then the test is initiated by setting ifTestType. + On completion of the test, the agent sets ifTestStatus to + 'notInUse'. Once this occurs, the manager can retrieve the + results. In the (rare) event that the invocation of tests + by two network managers were to overlap, then there would be + a possibility that the first test's results might be + overwritten by the second test's results prior to the first + + + results being read. This unlikely circumstance can be + detected by a network manager retrieving ifTestId at the + same time as retrieving the test results, and ensuring that + the results are for the desired request. + + If ifTestType is not set within an abnormally long period of + time after ownership is obtained, the agent should time-out + the manager, and reset the value of the ifTestStatus object + back to 'notInUse'. It is suggested that this time-out + period be 5 minutes. + + In general, a management station must not retransmit a + request to invoke a test for which it does not receive a + response; instead, it properly inspects an agent's MIB to + determine if the invocation was successful. Only if the + invocation was unsuccessful, is the invocation request + retransmitted. + + Some tests may require the interface to be taken off-line in + order to execute them, or may even require the agent to + reboot after completion of the test. In these + circumstances, communication with the management station + invoking the test may be lost until after completion of the + test. An agent is not required to support such tests. + However, if such tests are supported, then the agent should + make every effort to transmit a response to the request + which invoked the test prior to losing communication. When + the agent is restored to normal service, the results of the + test are properly made available in the appropriate objects. + Note that this requires that the ifIndex value assigned to + an interface must be unchanged even if the test causes a + reboot. An agent must reject any test for which it cannot, + perhaps due to resource constraints, make available at least + the minimum amount of information after that test + completes." + ::= { ifMIBObjects 3 } + +ifTestEntry OBJECT-TYPE + SYNTAX IfTestEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "An entry containing objects for invoking tests on an + interface." + AUGMENTS { ifEntry } + ::= { ifTestTable 1 } + +IfTestEntry ::= + + + SEQUENCE { + ifTestId TestAndIncr, + ifTestStatus INTEGER, + ifTestType AutonomousType, + ifTestResult INTEGER, + ifTestCode OBJECT IDENTIFIER, + ifTestOwner OwnerString + } + +ifTestId OBJECT-TYPE + SYNTAX TestAndIncr + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "This object identifies the current invocation of the + interface's test.--IPI Comments: Not Supported" + ::= { ifTestEntry 1 } + +ifTestStatus OBJECT-TYPE + SYNTAX INTEGER { notInUse(1), inUse(2) } + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "This object indicates whether or not some manager currently + has the necessary 'ownership' required to invoke a test on + this interface. A write to this object is only successful + when it changes its value from 'notInUse(1)' to 'inUse(2)'. + After completion of a test, the agent resets the value back + to 'notInUse(1)'.--IPI Comments: Not Supported" + ::= { ifTestEntry 2 } + +ifTestType OBJECT-TYPE + SYNTAX AutonomousType + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "A control variable used to start and stop operator- + initiated interface tests. Most OBJECT IDENTIFIER values + assigned to tests are defined elsewhere, in association with + specific types of interface. However, this document assigns + a value for a full-duplex loopback test, and defines the + special meanings of the subject identifier: + + noTest OBJECT IDENTIFIER ::= { 0 0 } + + When the value noTest is written to this object, no action + is taken unless a test is in progress, in which case the + test is aborted. Writing any other value to this object is + + + only valid when no test is currently in progress, in which + case the indicated test is initiated. + + When read, this object always returns the most recent value + that ifTestType was set to. If it has not been set since + the last initialization of the network management subsystem + on the agent, a value of noTest is returned.--IPI Comments: Not Supported" + ::= { ifTestEntry 3 } + +ifTestResult OBJECT-TYPE + SYNTAX INTEGER { + none(1), -- no test yet requested + success(2), + inProgress(3), + notSupported(4), + unAbleToRun(5), -- due to state of system + aborted(6), + failed(7) + } + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "This object contains the result of the most recently + requested test, or the value none(1) if no tests have been + requested since the last reset. Note that this facility + provides no provision for saving the results of one test + when starting another, as could be required if used by + multiple managers concurrently.--IPI Comments: Not Supported" + ::= { ifTestEntry 4 } + +ifTestCode OBJECT-TYPE + SYNTAX OBJECT IDENTIFIER + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "This object contains a code which contains more specific + information on the test result, for example an error-code + after a failed test. Error codes and other values this + object may take are specific to the type of interface and/or + test. The value may have the semantics of either the + AutonomousType or InstancePointer textual conventions as + defined in RFC 2579. The identifier: + + testCodeUnknown OBJECT IDENTIFIER ::= { 0 0 } + + is defined for use if no additional result code is + available.--IPI Comments: Not Supported" + ::= { ifTestEntry 5 } + + +ifTestOwner OBJECT-TYPE + SYNTAX OwnerString + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The entity which currently has the 'ownership' required to + invoke a test on this interface.--IPI Comments: Not Supported" + ::= { ifTestEntry 6 } + +-- Deprecated Definitions - Groups + + +ifGeneralGroup OBJECT-GROUP + OBJECTS { ifDescr, ifType, ifSpeed, ifPhysAddress, + ifAdminStatus, ifOperStatus, ifLastChange, + ifLinkUpDownTrapEnable, ifConnectorPresent, + ifHighSpeed, ifName } + STATUS deprecated + DESCRIPTION + "A collection of objects deprecated in favour of + ifGeneralInformationGroup." + ::= { ifGroups 1 } + + +ifTestGroup OBJECT-GROUP + OBJECTS { ifTestId, ifTestStatus, ifTestType, + ifTestResult, ifTestCode, ifTestOwner } + STATUS deprecated + DESCRIPTION + "A collection of objects providing the ability to invoke + tests on an interface." + ::= { ifGroups 8 } + + +ifStackGroup OBJECT-GROUP + OBJECTS { ifStackStatus } + STATUS deprecated + DESCRIPTION + "The previous collection of objects providing information on + the layering of MIB-II interfaces." + ::= { ifGroups 9 } + + +ifOldObjectsGroup OBJECT-GROUP + OBJECTS { ifInNUcastPkts, ifOutNUcastPkts, + ifOutQLen, ifSpecific } + STATUS deprecated + DESCRIPTION + + + "The collection of objects deprecated from the original MIB- + II interfaces group." + ::= { ifGroups 12 } + +-- Deprecated Definitions - Compliance + +ifCompliance MODULE-COMPLIANCE + STATUS deprecated + DESCRIPTION + "A compliance statement defined in a previous version of + this MIB module, for SNMP entities which have network + interfaces." + + MODULE -- this module + MANDATORY-GROUPS { ifGeneralGroup, ifStackGroup } + + GROUP ifFixedLengthGroup + DESCRIPTION + "This group is mandatory for all network interfaces which + are character-oriented or transmit data in fixed-length + transmission units." + + GROUP ifHCFixedLengthGroup + DESCRIPTION + "This group is mandatory only for those network interfaces + which are character-oriented or transmit data in fixed- + length transmission units, and for which the value of the + corresponding instance of ifSpeed is greater than 20,000,000 + bits/second." + + GROUP ifPacketGroup + DESCRIPTION + "This group is mandatory for all network interfaces which + are packet-oriented." + + GROUP ifHCPacketGroup + DESCRIPTION + "This group is mandatory only for those network interfaces + which are packet-oriented and for which the value of the + corresponding instance of ifSpeed is greater than + 650,000,000 bits/second." + + GROUP ifTestGroup + DESCRIPTION + "This group is optional. Media-specific MIBs which require + interface tests are strongly encouraged to use this group + for invoking tests and reporting results. A medium specific + MIB which has mandatory tests may make implementation of + + + this group mandatory." + + GROUP ifRcvAddressGroup + DESCRIPTION + "The applicability of this group MUST be defined by the + media-specific MIBs. Media-specific MIBs must define the + exact meaning, use, and semantics of the addresses in this + group." + + OBJECT ifLinkUpDownTrapEnable + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ifPromiscuousMode + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ifStackStatus + SYNTAX INTEGER { active(1) } -- subset of RowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and only one of the six + enumerated values for the RowStatus textual convention need + be supported, specifically: active(1)." + + OBJECT ifAdminStatus + SYNTAX INTEGER { up(1), down(2) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, nor is support for the value + testing(3)." + ::= { ifCompliances 1 } + +ifCompliance2 MODULE-COMPLIANCE + STATUS deprecated + DESCRIPTION + "A compliance statement defined in a previous version of + this MIB module, for SNMP entities which have network + interfaces." + + MODULE -- this module + MANDATORY-GROUPS { ifGeneralInformationGroup, ifStackGroup2, + ifCounterDiscontinuityGroup } + + GROUP ifFixedLengthGroup + DESCRIPTION + + + "This group is mandatory for all network interfaces which + are character-oriented or transmit data in fixed-length + transmission units." + + GROUP ifHCFixedLengthGroup + DESCRIPTION + "This group is mandatory only for those network interfaces + which are character-oriented or transmit data in fixed- + length transmission units, and for which the value of the + corresponding instance of ifSpeed is greater than 20,000,000 + bits/second." + + GROUP ifPacketGroup + DESCRIPTION + "This group is mandatory for all network interfaces which + are packet-oriented." + + GROUP ifHCPacketGroup + DESCRIPTION + "This group is mandatory only for those network interfaces + which are packet-oriented and for which the value of the + corresponding instance of ifSpeed is greater than + 650,000,000 bits/second." + + GROUP ifRcvAddressGroup + DESCRIPTION + "The applicability of this group MUST be defined by the + media-specific MIBs. Media-specific MIBs must define the + exact meaning, use, and semantics of the addresses in this + group." + + OBJECT ifLinkUpDownTrapEnable + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ifPromiscuousMode + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ifStackStatus + SYNTAX INTEGER { active(1) } -- subset of RowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and only one of the six + enumerated values for the RowStatus textual convention need + be supported, specifically: active(1)." + + + OBJECT ifAdminStatus + SYNTAX INTEGER { up(1), down(2) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, nor is support for the value + testing(3)." + + OBJECT ifAlias + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + ::= { ifCompliances 2 } + +END diff --git a/mibs/MSTP-MIB.txt b/mibs/MSTP-MIB.txt new file mode 100644 index 00000000..3277c952 --- /dev/null +++ b/mibs/MSTP-MIB.txt @@ -0,0 +1,732 @@ +MSTP-MIB DEFINITIONS ::= BEGIN +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Counter32, Integer32 + FROM SNMPv2-SMI + TruthValue, RowStatus, DisplayString + FROM SNMPv2-TC + TimeTicks + FROM RFC1155-SMI + BridgeId, Timeout + FROM BRIDGE-MIB + dot1dBridge + FROM BRIDGE-MIB; + +dot1sStp MODULE-IDENTITY + LAST-UPDATED "20041250000Z" + ORGANIZATION "IETF Bridge MIB Working Group" + CONTACT-INFO + "Email: Bridge-mib@ietf.org" + DESCRIPTION + " The Bridge MIB Extension module for managing devices + that support the Multiple Spanning Tree Protocol defined + by IEEE 802.1s." + REVISION "20041250000Z " + + + + DESCRIPTION + "Draft 1" + ::= { dot1dBridge 99 } + +dot1sStpName OBJECT-TYPE + SYNTAX DisplayString (SIZE (0..32)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The configuration name that identifies the MST + region and is used as one of the inputs in the + computation of the MST Configuration Identifier. + This object does not have any default value." + REFERENCE + "IEEE 802.1s clause 13.7" + ::= { dot1sStp 1 } +dot1sStpRevision OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object identifies the MST revision that + identifies the MST region and is used as one + of the inputs in the computation of the MST + configuration Identifier. This object does not + have any default value." + REFERENCE + "IEEE 802.1s: Section 13.7" + ::= { dot1sStp 2 } +dot1sStpEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This parameter is used for enabling or disabling + MST globally on all the bridging ports." + REFERENCE + "IEEE 802.1s" + DEFVAL { 2 } + ::= { dot1sStp 3 } +dot1sStpBridgeMaxAge OBJECT-TYPE + SYNTAX Timeout (600..4000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value that all bridges use for MaxAge when + this bridge is acting as the root. This parameter + is applicable for all MST Instances including CIST." + REFERENCE + "IEEE 802.1s: Section 13.23.4, 13.23.10" + DEFVAL { 2000 } + ::= { dot1sStp 4 } +dot1sStpBridgeHelloTime OBJECT-TYPE + SYNTAX Timeout (100..1000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value that all bridges use for HelloTime when + this bridge is acting as the root. This parameter + is applicable for all MST Instances including CIST." + REFERENCE + "IEEE 802.1s: Section 13.23.4, 13.23.10" + DEFVAL { 200 } + ::= { dot1sStp 5 } +dot1sStpBridgeForwardDelay OBJECT-TYPE + SYNTAX Timeout (4..30) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value that all bridges use for ForwardDelay + when this bridge is acting as the root. This parameter + is applicable for all MST Instances including CIST." + REFERENCE + "IEEE 802.1s: Section 13.23.4, 13.23.10" + DEFVAL { 1500 } + ::= { dot1sStp 6 } +dot1sStpTxHoldCount OBJECT-TYPE + SYNTAX Integer32 (1..15) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value used by the Port Transmit state machine to + limit the maximum transmission rate of MST BPDUs within + the hello interval." + REFERENCE + "IEEE 802.1s: Section 13.22" + DEFVAL { 3 } + ::= { dot1sStp 7 } +dot1sStpProtocolSpecification OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + decLb100(2), + ieee8021d(3), + ieee8021w(4), + ieee8021s(5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An indication of what version of the Spanning + Tree Protocol is being run. The value + 'decLb100(2)' indicates the DEC LANbridge 100 + Spanning Tree protocol. IEEE 802.1w + implementations will return 'ieee8021w(4)'. IEEE + 802.1s implementations will return 'ieee8021s(5). If + future versions of the IEEE Spanning Tree Protocol + are released that are incompatible with the + current version a new value will be defined." + REFERENCE + "IEEE 802.1s: Section 13.22" + DEFVAL { 5 } + ::= { dot1sStp 8 } +dot1sStpInstTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1sStpInstEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains MST instance-specific + configuration and operational information." + ::= { dot1sStp 9 } + +dot1sStpInstEntry OBJECT-TYPE + SYNTAX Dot1sStpInstEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of information maintained by every mst instance + about the STP topology for that instance." + INDEX { dot1sStpInstId } + ::= { dot1sStpInstTable 1 } +Dot1sStpInstEntry ::= + SEQUENCE { + dot1sStpInstId + Integer32, + dot1sStpPriority + Integer32, + dot1sStpInstTimeSinceTopologyChange + TimeTicks, + dot1sStpInstTopChanges + Counter32, + dot1sStpInstDesignatedRoot + BridgeId, + dot1sStpInstRootCost + Integer32, + dot1sStpInstRootPort + Integer32, + dot1sStpInstMaxAge + Timeout, + dot1sStpInstHelloTime + Timeout, + dot1sStpInstForwardDelay + Timeout, + dot1sStpInstAdminEnable + TruthValue, + dot1sStpInstOperEnable + TruthValue + } +dot1sStpInstId OBJECT-TYPE + SYNTAX Integer32 (1..64) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Identifier of this MST Instance" --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s" + ::= { dot1sStpInstEntry 1 } +dot1sStpPriority OBJECT-TYPE + SYNTAX Integer32 (0..61440) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value of the write-able portion of the Bridge + ID, i.e., the first two octets, out of which the + priority is the most significant 4 bits of the first + octet of the (8 octet long) Bridge ID. The other + (last) 6 octets of the Bridge ID are given by the + value of dot1dBaseBridgeAddress in the BRIDGE-MIB. + The value of this object should always be a multiple + of 4096." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.23.2" + DEFVAL { 32768 } + ::= { dot1sStpInstEntry 2 } +dot1sStpInstTimeSinceTopologyChange OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time (in hundredths of a second) since the + last time a topology change was detected by the + bridge entity running MSTP." --- IPI Comments: Not Supported + REFERENCE + " IEEE 802.1D-1990: Section 6.8.1.1.3" + ::= { dot1sStpInstEntry 3 } +dot1sStpInstTopChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of topology changes detected by + this bridge entity running MST since the management + entity was last reset or initialized." --- IPI Comments: Not Supported + REFERENCE + " IEEE 802.1D-1990: Section 6.8.1.1.3" + ::= { dot1sStpInstEntry 4 } +dot1sStpInstDesignatedRoot OBJECT-TYPE + SYNTAX BridgeId + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The bridge identifier of the root of the + corresponding spanning tree instance as determined + by the Spanning Tree Protocol for that instance. + This value is used as the CIST Root Identifier or MSTI + regional root identifier parameter in all MST BPDUs + originated by this node." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.23.6, 13.23.12" + ::= { dot1sStpInstEntry 5 } +dot1sStpInstRootCost OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The cost of the path to the root as seen from + this bridge for this instance." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.23.6, 13.23.12" + ::= { dot1sStpInstEntry 6 } +dot1sStpInstRootPort OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The port number of the port which offers the + lowest cost path from this bridge to the root + bridge for this instance." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.23.6, 13.23.12" + ::= { dot1sStpInstEntry 7 } +dot1sStpInstMaxAge OBJECT-TYPE + SYNTAX Timeout + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The maximum age of Spanning Tree Protocol + information learned from the network on any port + before it is discarded, in units of hundredths of + a second. This is the actual value, which is + advertised by the Root bridge and is currently + used for this MST Instance." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.23.7, 13.23.13" + ::= { dot1sStpInstEntry 8 } +dot1sStpInstHelloTime OBJECT-TYPE + SYNTAX Timeout + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The period of time between the transmission of + MST BPDUs by this node on any port when it is the + root of the spanning tree or trying to become so, + in units of hundredths of a second. This is the actual + value, which is advertised by the Root bridge and is + currently used for this MST Instance." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.23.7, 13.23.13" + ::= { dot1sStpInstEntry 9 } +dot1sStpInstForwardDelay OBJECT-TYPE + SYNTAX Timeout + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This time value, measured in units of hundredths + of a second, controls how fast a port changes its + spanning state when moving towards the Forwarding + state. The value determines how long the port + stays in each of the Discarding and Learning + states, which precede the Forwarding state. This + value is also used, when a topology change has + been detected and is underway, to age all dynamic + entries in the Forwarding Database. [Note that + this value is the one that this bridge is + currently using, in contrast to + dot1sStpBridgeForwardDelay which is the value that + this bridge and all others would start using + if/when this bridge were to become the root.]" --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.23.7, 13.23.13" + ::= { dot1sStpInstEntry 10 } +dot1sStpInstAdminEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative enabled/disabled status of the + instance" --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s" + DEFVAL { 2 } + ::= { dot1sStpInstEntry 11 } +dot1sStpInstOperEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The operational enabled/disabled status of the + instance. An MST Instance may be administratively + enabled but may not be operationally running, for + example, when no VLAN is mapped to that MST Instance." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s" + DEFVAL { 2 } + ::= { dot1sStpInstEntry 12 } + +dot1sStpPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1sStpPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains MSTP ports' information." + ::= { dot1sStp 9 } + +dot1sStpPortEntry OBJECT-TYPE + SYNTAX Dot1sStpPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of information maintained by every MST port + about the Spanning Tree Protocol state for that port." + INDEX { dot1sStpPort } + ::= { dot1sStpPortTable 1 } + +Dot1sStpPortEntry ::= + SEQUENCE { + dot1sStpPort + Integer32, + dot1sStpPortAdminEdgePort + TruthValue, + dot1sStpPortAdminPointToPoint + INTEGER, + dot1sStpPortOperEdgePort + TruthValue, + dot1sStpPortOperPointToPoint + TruthValue, + dot1sStpVersion + INTEGER + } + +dot1sStpPort OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The port number of the port for which this entry + contains Spanning Tree Protocol management + information." + REFERENCE + " IEEE 802.1s: Section 13.24.21" + ::= { dot1sStpPortEntry 1 } + + +dot1sStpPortAdminEdgePort OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative value of the Edge Port parameter. A + value of TRUE(1) indicates that this port should be + assumed as an edge-port and a value of FALSE(2) indicates + that this port should be assumed as a non-edge-port." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 12.8.2.1.3" + ::= { dot1sStpPortEntry 2 } + +dot1sStpPortAdminPointToPoint OBJECT-TYPE + SYNTAX INTEGER { + forceTrue(1), + forceFalse(2), + auto(3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative point-to-point status of the LAN segment + attached to this port. A value of forceTrue(1) indicates that + this port should always be treated as if it is connected to + a point-to-point link. A value of forceFalse(2) indicates + that this port should be treated as having a shared media + connection. A value of auto(3) indicates that this port is + considered to have a point-to-point link if it is an Aggregator + and all of its members are aggregatable, or if the MAC entity + is configured for full duplex operation, either through + auto-negotiation or by management means." + REFERENCE + "IEEE 802.1s: Section 13.18" + ::= { dot1sStpPortEntry 3 } + +dot1sStpPortOperEdgePort OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The operational value of the Edge Port parameter. A + value of TRUE(1) indicates that this port should be + assumed as an edge-port and a value of FALSE(2) indicates + that this port should be assumed as a non-edge-port." + REFERENCE + "IEEE 802.1s: Section 12.8.2.1.3" + ::= { dot1sStpPortEntry 4 } + + dot1sStpPortOperPointToPoint OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The operational point-to-point status of the LAN segment + attached to this port. It indicates whether a port is + considered to have a point-to-point connection or not. + The value is determined by management or by auto-detection, + as described in the dot1dStpPortAdminPointToPoint object." + REFERENCE + "IEEE 802.1s: Section 13.18" + ::= { dot1sStpPortEntry 5 } + +dot1sStpVersion OBJECT-TYPE + SYNTAX INTEGER { + stpCompatible(0), + rstp-mstp(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The version of Spanning Tree Protocol the bridge is + currently running. The value 'stpCompatible(0)' + indicates the Spanning Tree Protocol specified in + IEEE 802.1D and 'rstp/mstp(2)' indicates the Rapid + Spanning Tree Protocol specified in IEEE 802.1w and + Multiple Spanning Tree Protocol specified in IEEE + 802.1s. New value may be defined as future versions + of the protocol become available." + REFERENCE + "IEEE 802.1s: Section 14.2" + DEFVAL { rstp-mstp } + ::= { dot1sStpPortEntry 6 } + +dot1sStpInstPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1sStpInstPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains MST port and instance + information." + ::= { dot1sStp 10 } + +dot1sStpInstPortEntry OBJECT-TYPE + SYNTAX Dot1sStpInstPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of information maintained by every MST port + for each MST instance it belongs to about the Spanning + Tree Protocol state for that port." + INDEX { dot1sStpInstId, dot1sStpPort } + ::= { dot1sStpInstPortTable 1 } + +Dot1sStpInstPortEntry ::= + SEQUENCE { + dot1sStpInstPortPriority + Integer32, + dot1sStpInstPortState + INTEGER, + dot1sStpInstPortPathCost + Integer32, + dot1sStpInstPortDesignatedRoot + BridgeId, + dot1sStpInstPortDesignatedCost + Integer32, + dot1sStpInstPortDesignatedBridge + BridgeId, + dot1sStpInstPortDesignatedPort + OCTET STRING, + dot1sStpInstPortForwardTransitions + Counter32, + dot1sStpInstPortRole + INTEGER + } + +dot1sStpInstPortPriority OBJECT-TYPE + SYNTAX Integer32 (0..240) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value of the priority field which is + contained in the most significant 4 bits + of the first (in network byte order) + octet of the (2 octet long) Port ID. As it is + contained only in 4 bits, the value has to be + a multiple of 16. The other octet of the Port + ID is given by the value of dot1dStpPort." --- IPI Comments: Not Supported +REFERENCE + "IEEE 802.1s: Section 13.24.21" + ::= { dot1sStpInstPortEntry 1 } + +dot1sStpInstPortState OBJECT-TYPE + SYNTAX INTEGER { + disabled(1), + discarding(2), + learning(3), + forwarding(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The port's current state as defined by + application of the Spanning Tree Protocol. This + state controls what action a port takes on + reception of a frame. For ports which + are disabled (see dot1dStpPortEnable), this object + will have a value of disabled(1)." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.16" + ::= { dot1sStpInstPortEntry 2 } + +dot1sStpInstPortPathCost OBJECT-TYPE + SYNTAX Integer32 (1..200000000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The contribution of this port to the path cost of + paths towards the spanning tree root which include + this port. 802.1D-1990 recommends that the + default value of this parameter be in inverse + proportion to the speed of the attached LAN." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.24.8, 13.24.17" + ::= { dot1sStpInstPortEntry 3 } + +dot1sStpInstPortDesignatedRoot OBJECT-TYPE + SYNTAX BridgeId + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unique Bridge Identifier of the Bridge + recorded as the Root in the Configuration BPDUs + transmitted by the Designated Bridge for the + segment to which the port is attached." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.24.4, 13.24.11" + ::= { dot1sStpInstPortEntry 4 } + +dot1sStpInstPortDesignatedCost OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The path cost of the Designated Port of the + segment connected to this port. This value is + compared to the Root Path Cost field in received + bridge PDUs." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.24.4, 13.24.11" + ::= { dot1sStpInstPortEntry 5 } + +dot1sStpInstPortDesignatedBridge OBJECT-TYPE + SYNTAX BridgeId + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Bridge Identifier of the bridge which this + port considers to be the Designated Bridge for + this port's segment." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.24.4, 13.24.11" + ::= { dot1sStpInstPortEntry 6 } + +dot1sStpInstPortDesignatedPort OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (2)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Port Identifier of the port on the Designated + Bridge for this port's segment." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.24.4, 13.24.11" + ::= { dot1sStpInstPortEntry 7 } + +dot1sStpInstPortForwardTransitions OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this port has transitioned + from the Learning state to the Forwarding state." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s" + ::= { dot1sStpInstPortEntry 8 } + +dot1sStpInstPortRole OBJECT-TYPE + SYNTAX INTEGER { + master(0), + alternate-backup(1), + root(2), + designated(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The role of the port. As per IEEE 802.1s, the + port can have any of the following roles: + Disabled, Root, Designated, Alternate, Backup, + Master" --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s: Section 13.24.25" + ::= { dot1sStpInstPortEntry 9 } + +dot1sStpVlanTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1sStpVlanEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains MSTI-VLAN mapping." + ::= { dot1sStp 11 } + +dot1sStpVlanEntry OBJECT-TYPE + SYNTAX Dot1sStpVlanEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of information maintained by every MST instance + about the VLANs mapped to that instance." --- IPI Comments: Not Supported + INDEX { dot1sStpVlanMstIndex, dot1sStpVlanRangeIndex } + ::= { dot1sStpVlanTable 1 } + +Dot1sStpVlanEntry ::= + SEQUENCE { + dot1sStpVlanMstIndex + Integer32, + dot1sStpVlanRangeIndex + Integer32, + dot1sStpVlanMin + Integer32, + dot1sStpVlanMax + Integer32, + dot1sStpVlanRowStatus + RowStatus + } + +dot1sStpVlanMstIndex OBJECT-TYPE + SYNTAX Integer32 (2..8) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This is the primary index to the MST-VLAN table + and is derived from the MST Instance id by + incrementing by 1." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s" + ::= { dot1sStpVlanEntry 1 } + + +dot1sStpVlanRangeIndex OBJECT-TYPE + SYNTAX Integer32 (1..4094) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This is the secondary index to the MSTI-VLAN Table. + It signifies the index to the VLAN range entry in + the table." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s" + ::= { dot1sStpVlanEntry 2 } + +dot1sStpVlanMin OBJECT-TYPE + SYNTAX Integer32 (1..4094) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The lower value in the VLAN range mapped + to the MST Instance." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s" + ::= { dot1sStpVlanEntry 3 } + +dot1sStpVlanMax OBJECT-TYPE + SYNTAX Integer32 (1..4094) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The higher value in the VLAN range mapped + to the MST Instance." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s" + ::= { dot1sStpVlanEntry 4 } + +dot1sStpVlanRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of the row as per SNMP-v2." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1s" + ::= { dot1sStpVlanEntry 5 } + +END diff --git a/mibs/P-BRIDGE-MIB.txt b/mibs/P-BRIDGE-MIB.txt new file mode 100644 index 00000000..72a4de18 --- /dev/null +++ b/mibs/P-BRIDGE-MIB.txt @@ -0,0 +1,1245 @@ +P-BRIDGE-MIB DEFINITIONS ::= BEGIN + +-- ------------------------------------------------------------- +-- MIB for IEEE 802.1p devices +-- ------------------------------------------------------------- + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Counter32, Integer32, Counter64 + FROM SNMPv2-SMI + TruthValue, TimeInterval, MacAddress, TEXTUAL-CONVENTION + FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF + dot1dTp, dot1dTpPort, dot1dBridge, + dot1dBasePortEntry, dot1dBasePort + FROM BRIDGE-MIB; + +pBridgeMIB MODULE-IDENTITY + LAST-UPDATED "200601090000Z" + ORGANIZATION "IETF Bridge MIB Working Group" + CONTACT-INFO + "Email: bridge-mib@ietf.org + ietfmibs@ops.ietf.org + + David Levi + Postal: Nortel Networks + 4655 Great America Parkway + Santa Clara, CA 95054 + USA + Phone: +1 865 686 0432 + Email: dlevi@nortel.com + + David Harrington + Postal: Effective Software + 50 Harding Rd. + Portsmouth, NH 03801 + USA + Phone: +1 603 436 8634 + Email: ietfdbh@comcast.net + + Les Bell + Postal: Hemel Hempstead, Herts. HP2 7YU + UK + Email: elbell@ntlworld.com + + Vivian Ngai + + + + Email: vivian_ngai@acm.org + + Andrew Smith + Postal: Beijing Harbour Networks + Jiuling Building + 21 North Xisanhuan Ave. + Beijing, 100089 + PRC + Fax: +1 415 345 1827 + Email: ah_smith@acm.org + + Paul Langille + Postal: Newbridge Networks + 5 Corporate Drive + Andover, MA 01810 + USA + Phone: +1 978 691 4665 + Email: langille@newbridge.com + + Anil Rijhsinghani + Postal: Accton Technology Corporation + 5 Mount Royal Ave + Marlboro, MA 01752 + USA + Phone: + Email: anil@accton.com + + Keith McCloghrie + Postal: Cisco Systems, Inc. + 170 West Tasman Drive + San Jose, CA 95134-1706 + USA + Phone: +1 408 526 5260 + Email: kzm@cisco.com" + DESCRIPTION + "The Bridge MIB Extension module for managing Priority + and Multicast Filtering, defined by IEEE 802.1D-1998, + including Restricted Group Registration defined by + IEEE 802.1t-2001. + + Copyright (C) The Internet Society (2006). This version of + this MIB module is part of RFC 4363; See the RFC itself for + full legal notices." + REVISION "200601090000Z" + DESCRIPTION + "Added dot1dPortRestrictedGroupRegistration. + Deprecated pBridgePortGmrpGroup and pBridgeCompliance + and added pBridgePortGmrpGroup2 and pBridgeCompliance2." + + + + REVISION "199908250000Z" + DESCRIPTION + "The Bridge MIB Extension module for managing Priority + and Multicast Filtering, defined by IEEE 802.1D-1998. + + Initial version, published as RFC 2674." + + ::= { dot1dBridge 6 } + +pBridgeMIBObjects OBJECT IDENTIFIER ::= { pBridgeMIB 1 } + +-- ------------------------------------------------------------- +-- Textual Conventions +-- ------------------------------------------------------------- + +EnabledStatus ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "A simple status value for the object." + SYNTAX INTEGER { enabled(1), disabled(2) } + +-- ------------------------------------------------------------- +-- subtrees in the P-BRIDGE MIB +-- ------------------------------------------------------------- + +dot1dExtBase OBJECT IDENTIFIER ::= { pBridgeMIBObjects 1 } +dot1dPriority OBJECT IDENTIFIER ::= { pBridgeMIBObjects 2 } +dot1dGarp OBJECT IDENTIFIER ::= { pBridgeMIBObjects 3 } +dot1dGmrp OBJECT IDENTIFIER ::= { pBridgeMIBObjects 4 } + +-- ------------------------------------------------------------- +-- the dot1dExtBase subtree +-- ------------------------------------------------------------- + +dot1dDeviceCapabilities OBJECT-TYPE + SYNTAX BITS { + dot1dExtendedFilteringServices(0), + dot1dTrafficClasses(1), + dot1qStaticEntryIndividualPort(2), + dot1qIVLCapable(3), + dot1qSVLCapable(4), + dot1qHybridCapable(5), + dot1qConfigurablePvidTagging(6), + dot1dLocalVlanCapable(7) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "Indicates the optional parts of IEEE 802.1D and 802.1Q + that are implemented by this device and are manageable + through this MIB. Capabilities that are allowed on a + per-port basis are indicated in dot1dPortCapabilities. + + dot1dExtendedFilteringServices(0), + -- can perform filtering of + -- individual multicast addresses + -- controlled by GMRP. + dot1dTrafficClasses(1), + -- can map user priority to + -- multiple traffic classes. + dot1qStaticEntryIndividualPort(2), + -- dot1qStaticUnicastReceivePort & + -- dot1qStaticMulticastReceivePort + -- can represent non-zero entries. + dot1qIVLCapable(3), -- Independent VLAN Learning (IVL). + dot1qSVLCapable(4), -- Shared VLAN Learning (SVL). + dot1qHybridCapable(5), + -- both IVL & SVL simultaneously. + dot1qConfigurablePvidTagging(6), + -- whether the implementation + -- supports the ability to + -- override the default PVID + -- setting and its egress status + -- (VLAN-Tagged or Untagged) on + -- each port. + dot1dLocalVlanCapable(7) + -- can support multiple local + -- bridges, outside of the scope + -- of 802.1Q defined VLANs." + REFERENCE + "ISO/IEC 15802-3 Section 5.2, + IEEE 802.1Q/D11 Section 5.2, 12.10.1.1.3/b/2" + ::= { dot1dExtBase 1 } + +dot1dTrafficClassesEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value true(1) indicates that Traffic Classes are + enabled on this bridge. When false(2), the bridge + operates with a single priority level for all traffic. + + The value of this object MUST be retained across + reinitializations of the management system. + --IPI Comments: Not Supported" + DEFVAL { true } + + + + ::= { dot1dExtBase 2 } + +dot1dGmrpStatus OBJECT-TYPE + SYNTAX EnabledStatus + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative status requested by management for + GMRP. The value enabled(1) indicates that GMRP should + be enabled on this device, in all VLANs, on all ports + for which it has not been specifically disabled. When + disabled(2), GMRP is disabled, in all VLANs and on all + ports, and all GMRP packets will be forwarded + transparently. This object affects both Applicant and + Registrar state machines. A transition from disabled(2) + to enabled(1) will cause a reset of all GMRP state + machines on all ports. + + The value of this object MUST be retained across + reinitializations of the management system. + --IPI Comments: Not Supported" + DEFVAL { enabled } + ::= { dot1dExtBase 3 } + +-- ------------------------------------------------------------- +-- Port Capabilities Table +-- ------------------------------------------------------------- + +dot1dPortCapabilitiesTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dPortCapabilitiesEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains capabilities information about + every port that is associated with this bridge." + ::= { dot1dExtBase 4 } + +dot1dPortCapabilitiesEntry OBJECT-TYPE + SYNTAX Dot1dPortCapabilitiesEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A set of capabilities information about this port + indexed by dot1dBasePort." + AUGMENTS { dot1dBasePortEntry } + ::= { dot1dPortCapabilitiesTable 1 } + +Dot1dPortCapabilitiesEntry ::= + SEQUENCE { + + + + dot1dPortCapabilities + BITS + } + +dot1dPortCapabilities OBJECT-TYPE + SYNTAX BITS { + dot1qDot1qTagging(0), + dot1qConfigurableAcceptableFrameTypes(1), + dot1qIngressFiltering(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the parts of IEEE 802.1D and 802.1Q that are + optional on a per-port basis, that are implemented by + this device, and that are manageable through this MIB. + + dot1qDot1qTagging(0), -- supports 802.1Q VLAN tagging of + -- frames and GVRP. + dot1qConfigurableAcceptableFrameTypes(1), + -- allows modified values of + -- dot1qPortAcceptableFrameTypes. + dot1qIngressFiltering(2) + -- supports the discarding of any + -- frame received on a Port whose + -- VLAN classification does not + -- include that Port in its Member + -- set." + REFERENCE + "ISO/IEC 15802-3 Section 5.2, + IEEE 802.1Q/D11 Section 5.2" + ::= { dot1dPortCapabilitiesEntry 1 } + +-- ------------------------------------------------------------- +-- the dot1dPriority subtree +-- ------------------------------------------------------------- + +-- ------------------------------------------------------------- +-- Port Priority Table +-- ------------------------------------------------------------- + +dot1dPortPriorityTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dPortPriorityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains information about every port that + is associated with this transparent bridge." + + + + ::= { dot1dPriority 1 } + +dot1dPortPriorityEntry OBJECT-TYPE + SYNTAX Dot1dPortPriorityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of Default User Priorities for each port of a + transparent bridge. This is indexed by dot1dBasePort." + AUGMENTS { dot1dBasePortEntry } + ::= { dot1dPortPriorityTable 1 } + +Dot1dPortPriorityEntry ::= + SEQUENCE { + dot1dPortDefaultUserPriority + Integer32, + dot1dPortNumTrafficClasses + Integer32 + } + +dot1dPortDefaultUserPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The default ingress User Priority for this port. This + only has effect on media, such as Ethernet, that do not + support native User Priority. + + The value of this object MUST be retained across + reinitializations of the management system. + --IPI Comments: Not Supported" + ::= { dot1dPortPriorityEntry 1 } + +dot1dPortNumTrafficClasses OBJECT-TYPE + SYNTAX Integer32 (1..8) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The number of egress traffic classes supported on this + port. This object may optionally be read-only. + + The value of this object MUST be retained across + reinitializations of the management system. + --IPI Comments: Not Supported" + ::= { dot1dPortPriorityEntry 2 } + +-- ------------------------------------------------------------- +-- User Priority Regeneration Table +-- ------------------------------------------------------------- + + + +dot1dUserPriorityRegenTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dUserPriorityRegenEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of Regenerated User Priorities for each received + User Priority on each port of a bridge. The Regenerated + User Priority value may be used to index the Traffic + Class Table for each input port. This only has effect + on media that support native User Priority. The default + values for Regenerated User Priorities are the same as + the User Priorities." + REFERENCE + "ISO/IEC 15802-3 Section 6.4" + ::= { dot1dPriority 2 } + +dot1dUserPriorityRegenEntry OBJECT-TYPE + SYNTAX Dot1dUserPriorityRegenEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A mapping of incoming User Priority to a Regenerated + User Priority." + INDEX { dot1dBasePort, dot1dUserPriority } + ::= { dot1dUserPriorityRegenTable 1 } + +Dot1dUserPriorityRegenEntry ::= + SEQUENCE { + dot1dUserPriority + Integer32, + dot1dRegenUserPriority + Integer32 + } + +dot1dUserPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The User Priority for a frame received on this port. + --IPI Comments: Not Supported" + ::= { dot1dUserPriorityRegenEntry 1 } + +dot1dRegenUserPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The Regenerated User Priority that the incoming User + + + + Priority is mapped to for this port. + + The value of this object MUST be retained across + reinitializations of the management system. + --IPI Comments: Not Supported" + ::= { dot1dUserPriorityRegenEntry 2 } + +-- ------------------------------------------------------------- +-- Traffic Class Table +-- ------------------------------------------------------------- + +dot1dTrafficClassTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dTrafficClassEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table mapping evaluated User Priority to Traffic + Class, for forwarding by the bridge. Traffic class is a + number in the range (0..(dot1dPortNumTrafficClasses-1))." + REFERENCE + "ISO/IEC 15802-3 Table 7-2" + ::= { dot1dPriority 3 } + +dot1dTrafficClassEntry OBJECT-TYPE + SYNTAX Dot1dTrafficClassEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "User Priority to Traffic Class mapping." + INDEX { dot1dBasePort, dot1dTrafficClassPriority } + ::= { dot1dTrafficClassTable 1 } + +Dot1dTrafficClassEntry ::= + SEQUENCE { + dot1dTrafficClassPriority + Integer32, + dot1dTrafficClass + Integer32 + } + +dot1dTrafficClassPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Priority value determined for the received frame. + This value is equivalent to the priority indicated in + the tagged frame received, or one of the evaluated + priorities, determined according to the media-type. + + + + For untagged frames received from Ethernet media, this + value is equal to the dot1dPortDefaultUserPriority value + for the ingress port. + + For untagged frames received from non-Ethernet media, + this value is equal to the dot1dRegenUserPriority value + for the ingress port and media-specific user priority. + --IPI Comments: Not Supported" + ::= { dot1dTrafficClassEntry 1 } + +dot1dTrafficClass OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The Traffic Class the received frame is mapped to. + + The value of this object MUST be retained across + reinitializations of the management system. + --IPI Comments: Not Supported" + ::= { dot1dTrafficClassEntry 2 } + +-- ------------------------------------------------------------- +-- Outbound Access Priority Table +-- ------------------------------------------------------------- + +dot1dPortOutboundAccessPriorityTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dPortOutboundAccessPriorityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table mapping Regenerated User Priority to Outbound + Access Priority. This is a fixed mapping for all port + types, with two options for 802.5 Token Ring." + REFERENCE + "ISO/IEC 15802-3 Table 7-3" + ::= { dot1dPriority 4 } + +dot1dPortOutboundAccessPriorityEntry OBJECT-TYPE + SYNTAX Dot1dPortOutboundAccessPriorityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Regenerated User Priority to Outbound Access Priority + mapping." + INDEX { dot1dBasePort, dot1dRegenUserPriority } + ::= { dot1dPortOutboundAccessPriorityTable 1 } + +Dot1dPortOutboundAccessPriorityEntry ::= + SEQUENCE { + + + + dot1dPortOutboundAccessPriority + Integer32 + } + +dot1dPortOutboundAccessPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Outbound Access Priority the received frame is + mapped to. + --IPI Comments: Not Supported" + ::= { dot1dPortOutboundAccessPriorityEntry 1 } + +-- ------------------------------------------------------------- +-- the dot1dGarp subtree +-- ------------------------------------------------------------- + +-- ------------------------------------------------------------- +-- The GARP Port Table +-- ------------------------------------------------------------- + +dot1dPortGarpTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dPortGarpEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of GARP control information about every bridge + port. This is indexed by dot1dBasePort." + ::= { dot1dGarp 1 } + +dot1dPortGarpEntry OBJECT-TYPE + SYNTAX Dot1dPortGarpEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "GARP control information for a bridge port." + AUGMENTS { dot1dBasePortEntry } + ::= { dot1dPortGarpTable 1 } + +Dot1dPortGarpEntry ::= + SEQUENCE { + dot1dPortGarpJoinTime + TimeInterval, + dot1dPortGarpLeaveTime + TimeInterval, + dot1dPortGarpLeaveAllTime + TimeInterval + } + + + +dot1dPortGarpJoinTime OBJECT-TYPE + SYNTAX TimeInterval + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The GARP Join time, in centiseconds. + + The value of this object MUST be retained across + reinitializations of the management system. + --IPI Comments: Not Supported" + DEFVAL { 20 } + ::= { dot1dPortGarpEntry 1 } + +dot1dPortGarpLeaveTime OBJECT-TYPE + SYNTAX TimeInterval + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The GARP Leave time, in centiseconds. + + The value of this object MUST be retained across + reinitializations of the management system. + --IPI Comments: Not Supported" + DEFVAL { 60 } + ::= { dot1dPortGarpEntry 2 } + +dot1dPortGarpLeaveAllTime OBJECT-TYPE + SYNTAX TimeInterval + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The GARP LeaveAll time, in centiseconds. + + The value of this object MUST be retained across + reinitializations of the management system. + --IPI Comments: Not Supported" + DEFVAL { 1000 } + ::= { dot1dPortGarpEntry 3 } + +-- ------------------------------------------------------------- +-- The GMRP Port Configuration and Status Table +-- ------------------------------------------------------------- + +dot1dPortGmrpTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dPortGmrpEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of GMRP control and status information about + every bridge port. Augments the dot1dBasePortTable." + ::= { dot1dGmrp 1 } + + + +dot1dPortGmrpEntry OBJECT-TYPE + SYNTAX Dot1dPortGmrpEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "GMRP control and status information for a bridge port." + AUGMENTS { dot1dBasePortEntry } + ::= { dot1dPortGmrpTable 1 } + +Dot1dPortGmrpEntry ::= + SEQUENCE { + dot1dPortGmrpStatus + EnabledStatus, + dot1dPortGmrpFailedRegistrations + Counter32, + dot1dPortGmrpLastPduOrigin + MacAddress, + dot1dPortRestrictedGroupRegistration + TruthValue + } + +dot1dPortGmrpStatus OBJECT-TYPE + SYNTAX EnabledStatus + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative state of GMRP operation on this port. The + value enabled(1) indicates that GMRP is enabled on this port + in all VLANs as long as dot1dGmrpStatus is also enabled(1). + A value of disabled(2) indicates that GMRP is disabled on + this port in all VLANs: any GMRP packets received will + be silently discarded, and no GMRP registrations will be + propagated from other ports. Setting this to a value of + enabled(1) will be stored by the agent but will only take + effect on the GMRP protocol operation if dot1dGmrpStatus + also indicates the value enabled(1). This object affects + all GMRP Applicant and Registrar state machines on this + port. A transition from disabled(2) to enabled(1) will + cause a reset of all GMRP state machines on this port. + + The value of this object MUST be retained across + reinitializations of the management system. + --IPI Comments: Not Supported" + DEFVAL { enabled } + ::= { dot1dPortGmrpEntry 1 } + +dot1dPortGmrpFailedRegistrations OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "The total number of failed GMRP registrations, for any + reason, in all VLANs, on this port. + --IPI Comments: Not Supported" + ::= { dot1dPortGmrpEntry 2 } + +dot1dPortGmrpLastPduOrigin OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Source MAC Address of the last GMRP message + received on this port. + --IPI Comments: Not Supported" + ::= { dot1dPortGmrpEntry 3 } + +dot1dPortRestrictedGroupRegistration OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The state of Restricted Group Registration on this port. + If the value of this control is true(1), then creation + of a new dynamic entry is permitted only if there is a + Static Filtering Entry for the VLAN concerned, in which + the Registrar Administrative Control value is Normal + Registration. + + The value of this object MUST be retained across + reinitializations of the management system." + REFERENCE + "IEEE 802.1t clause 10.3.2.3, 14.10.1.3." + DEFVAL { false } + ::= { dot1dPortGmrpEntry 4 } + +-- ------------------------------------------------------------- +-- High-Capacity Port Table for Transparent Bridges +-- ------------------------------------------------------------- + +dot1dTpHCPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dTpHCPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains information about every high- + capacity port that is associated with this transparent + bridge." + ::= { dot1dTp 5 } + + + + +dot1dTpHCPortEntry OBJECT-TYPE + SYNTAX Dot1dTpHCPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Statistics information for each high-capacity port of a + transparent bridge." + INDEX { dot1dTpPort } + ::= { dot1dTpHCPortTable 1 } + +Dot1dTpHCPortEntry ::= + SEQUENCE { + dot1dTpHCPortInFrames + Counter64, + dot1dTpHCPortOutFrames + Counter64, + dot1dTpHCPortInDiscards + Counter64 + } + +dot1dTpHCPortInFrames OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of frames that have been received by this + port from its segment. Note that a frame received on + the interface corresponding to this port is only counted + by this object if and only if it is for a protocol being + processed by the local bridging function, including + bridge management frames." + REFERENCE + "ISO/IEC 15802-3 Section 14.6.1.1.3" + ::= { dot1dTpHCPortEntry 1 } + +dot1dTpHCPortOutFrames OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of frames that have been transmitted by this + port to its segment. Note that a frame transmitted on + the interface corresponding to this port is only counted + by this object if and only if it is for a protocol being + processed by the local bridging function, including + bridge management frames." + REFERENCE + "ISO/IEC 15802-3 Section 14.6.1.1.3" + + + + ::= { dot1dTpHCPortEntry 2 } + +dot1dTpHCPortInDiscards OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Count of valid frames that have been received by this + port from its segment that were discarded (i.e., + filtered) by the Forwarding Process." + REFERENCE + "ISO/IEC 15802-3 Section 14.6.1.1.3" + ::= { dot1dTpHCPortEntry 3 } + +-- ---------------------------------------------------- +-- Upper part of High-Capacity Port Table for Transparent Bridges +-- ---------------------------------------------------- + +dot1dTpPortOverflowTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dTpPortOverflowEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains the most-significant bits of + statistics counters for ports that are associated with this + transparent bridge that are on high-capacity interfaces, as + defined in the conformance clauses for this table. This table + is provided as a way to read 64-bit counters for agents that + support only SNMPv1. + + Note that the reporting of most-significant and + least-significant counter bits separately runs the risk of + missing an overflow of the lower bits in the interval between + sampling. The manager must be aware of this possibility, even + within the same varbindlist, when interpreting the results of + a request or asynchronous notification." + ::= { dot1dTp 6 } + +dot1dTpPortOverflowEntry OBJECT-TYPE + SYNTAX Dot1dTpPortOverflowEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The most significant bits of statistics counters for a high- + capacity interface of a transparent bridge. Each object is + associated with a corresponding object in dot1dTpPortTable + that indicates the least significant bits of the counter." + INDEX { dot1dTpPort } + + + + ::= { dot1dTpPortOverflowTable 1 } + +Dot1dTpPortOverflowEntry ::= + SEQUENCE { + dot1dTpPortInOverflowFrames + Counter32, + dot1dTpPortOutOverflowFrames + Counter32, + dot1dTpPortInOverflowDiscards + Counter32 + } + +dot1dTpPortInOverflowFrames OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times the associated dot1dTpPortInFrames + counter has overflowed." + REFERENCE + "ISO/IEC 15802-3 Section 14.6.1.1.3" + ::= { dot1dTpPortOverflowEntry 1 } + +dot1dTpPortOutOverflowFrames OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times the associated dot1dTpPortOutFrames + counter has overflowed." + REFERENCE + "ISO/IEC 15802-3 Section 14.6.1.1.3" + ::= { dot1dTpPortOverflowEntry 2 } + +dot1dTpPortInOverflowDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times the associated + dot1dTpPortInDiscards counter has overflowed." + REFERENCE + "ISO/IEC 15802-3 Section 14.6.1.1.3" + ::= { dot1dTpPortOverflowEntry 3 } + +-- ------------------------------------------------------------- +-- IEEE 802.1p MIB - Conformance Information +-- ------------------------------------------------------------- + + + +pBridgeConformance OBJECT IDENTIFIER ::= { pBridgeMIB 2 } + +pBridgeGroups OBJECT IDENTIFIER ::= { pBridgeConformance 1 } + +pBridgeCompliances OBJECT IDENTIFIER + ::= { pBridgeConformance 2 } + +-- ------------------------------------------------------------- +-- units of conformance +-- ------------------------------------------------------------- + +pBridgeExtCapGroup OBJECT-GROUP + OBJECTS { + dot1dDeviceCapabilities, + dot1dPortCapabilities + } + STATUS current + DESCRIPTION + "A collection of objects indicating the optional + capabilities of the device. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 1 } + +pBridgeDeviceGmrpGroup OBJECT-GROUP + OBJECTS { + dot1dGmrpStatus + } + STATUS current + DESCRIPTION + "A collection of objects providing device-level control + for the Multicast Filtering extended bridge services. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 2 } + +pBridgeDevicePriorityGroup OBJECT-GROUP + OBJECTS { + dot1dTrafficClassesEnabled + } + STATUS current + DESCRIPTION + "A collection of objects providing device-level control + for the Priority services. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 3 } + +pBridgeDefaultPriorityGroup OBJECT-GROUP + OBJECTS { + dot1dPortDefaultUserPriority + } + STATUS current + DESCRIPTION + + + + "A collection of objects defining the User Priority + applicable to each port for media that do not support + native User Priority. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 4 } + +pBridgeRegenPriorityGroup OBJECT-GROUP + OBJECTS { + dot1dRegenUserPriority + } + STATUS current + DESCRIPTION + "A collection of objects defining the User Priorities + applicable to each port for media that support native + User Priority. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 5 } + +pBridgePriorityGroup OBJECT-GROUP + OBJECTS { + dot1dPortNumTrafficClasses, + dot1dTrafficClass + } + STATUS current + DESCRIPTION + "A collection of objects defining the traffic classes + within a bridge for each evaluated User Priority. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 6 } + +pBridgeAccessPriorityGroup OBJECT-GROUP + OBJECTS { + dot1dPortOutboundAccessPriority + } + STATUS current + DESCRIPTION + "A collection of objects defining the media-dependent + outbound access level for each priority. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 7 } + +pBridgePortGarpGroup OBJECT-GROUP + OBJECTS { + dot1dPortGarpJoinTime, + dot1dPortGarpLeaveTime, + dot1dPortGarpLeaveAllTime + } + STATUS current + DESCRIPTION + "A collection of objects providing port level control + and status information for GARP operation. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 8 } + + + +pBridgePortGmrpGroup OBJECT-GROUP + OBJECTS { + dot1dPortGmrpStatus, + dot1dPortGmrpFailedRegistrations, + dot1dPortGmrpLastPduOrigin + } + STATUS deprecated + DESCRIPTION + "A collection of objects providing port level control + and status information for GMRP operation. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 9 } + +pBridgeHCPortGroup OBJECT-GROUP + OBJECTS { + dot1dTpHCPortInFrames, + dot1dTpHCPortOutFrames, + dot1dTpHCPortInDiscards + } + STATUS current + DESCRIPTION + "A collection of objects providing 64-bit statistics + counters for high-capacity bridge ports. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 10 } + +pBridgePortOverflowGroup OBJECT-GROUP + OBJECTS { + dot1dTpPortInOverflowFrames, + dot1dTpPortOutOverflowFrames, + dot1dTpPortInOverflowDiscards + } + STATUS current + DESCRIPTION + "A collection of objects providing overflow statistics + counters for high-capacity bridge ports. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 11 } + +pBridgePortGmrpGroup2 OBJECT-GROUP + OBJECTS { + dot1dPortGmrpStatus, + dot1dPortGmrpFailedRegistrations, + dot1dPortGmrpLastPduOrigin, + dot1dPortRestrictedGroupRegistration + } + STATUS current + DESCRIPTION + "A collection of objects providing port level control + and status information for GMRP operation. + --IPI Comments: Not Supported" + ::= { pBridgeGroups 12 } + + + +-- ------------------------------------------------------------- +-- compliance statements +-- ------------------------------------------------------------- + +pBridgeCompliance MODULE-COMPLIANCE + STATUS deprecated + DESCRIPTION + "The compliance statement for device support of Priority + and Multicast Filtering extended bridging services. + --IPI Comments: Not Supported" + + MODULE + MANDATORY-GROUPS { pBridgeExtCapGroup } + + GROUP pBridgeDeviceGmrpGroup + DESCRIPTION + "This group is mandatory for devices supporting the GMRP + application, defined by IEEE 802.1D Extended Filtering + Services." + + GROUP pBridgeDevicePriorityGroup + DESCRIPTION + "This group is mandatory only for devices supporting + the priority forwarding operations defined by IEEE + 802.1D." + + GROUP pBridgeDefaultPriorityGroup + DESCRIPTION + "This group is mandatory only for devices supporting + the priority forwarding operations defined by the + extended bridge services with media types, such as + Ethernet, that do not support native User Priority." + + GROUP pBridgeRegenPriorityGroup + DESCRIPTION + "This group is mandatory only for devices supporting + the priority forwarding operations defined by IEEE 802.1D + and that have interface media types that support + native User Priority, e.g., IEEE 802.5." + + GROUP pBridgePriorityGroup + DESCRIPTION + "This group is mandatory only for devices supporting + the priority forwarding operations defined by IEEE 802.1D." + + GROUP pBridgeAccessPriorityGroup + DESCRIPTION + "This group is optional and is relevant only for devices + supporting the priority forwarding operations defined by + + + + IEEE 802.1D and that have interface media types that + support native Access Priority, e.g., IEEE 802.5." + + GROUP pBridgePortGarpGroup + DESCRIPTION + "This group is mandatory for devices supporting any + of the GARP applications: e.g., GMRP, defined by the + extended filtering services of 802.1D; or GVRP, + defined by 802.1Q (refer to the Q-BRIDGE-MIB for + conformance statements for GVRP)." + + GROUP pBridgePortGmrpGroup + DESCRIPTION + "This group is mandatory for devices supporting the + GMRP application, as defined by IEEE 802.1D Extended + Filtering Services." + + GROUP pBridgeHCPortGroup + DESCRIPTION + "Support for this group in a device is mandatory for those + bridge ports that map to network interfaces that have the + value of the corresponding instance of ifSpeed + greater than 650,000,000 bits/second." + + GROUP pBridgePortOverflowGroup + DESCRIPTION + "Support for this group in a device is mandatory for those + bridge ports that map to network interfaces that have the + value of the corresponding instance of ifSpeed + greater than 650,000,000 bits/second." + + OBJECT dot1dPortNumTrafficClasses + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT dot1dTrafficClass + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT dot1dRegenUserPriority + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + ::= { pBridgeCompliances 1 } + + + + +pBridgeCompliance2 MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for device support of Priority + and Multicast Filtering extended bridging services. + --IPI Comments: Not Supported" + + MODULE + MANDATORY-GROUPS { pBridgeExtCapGroup } + + GROUP pBridgeDeviceGmrpGroup + DESCRIPTION + "This group is mandatory for devices supporting the GMRP + application, defined by IEEE 802.1D Extended Filtering + Services." + + GROUP pBridgeDevicePriorityGroup + DESCRIPTION + "This group is mandatory only for devices supporting + the priority forwarding operations defined by IEEE + 802.1D." + + GROUP pBridgeDefaultPriorityGroup + DESCRIPTION + "This group is mandatory only for devices supporting + the priority forwarding operations defined by the + extended bridge services with media types, such as + Ethernet, that do not support native User Priority." + + GROUP pBridgeRegenPriorityGroup + DESCRIPTION + "This group is mandatory only for devices supporting + the priority forwarding operations defined by IEEE 802.1D + and that have interface media types that support + native User Priority, e.g., IEEE 802.5." + + GROUP pBridgePriorityGroup + DESCRIPTION + "This group is mandatory only for devices supporting + the priority forwarding operations defined by IEEE 802.1D." + + GROUP pBridgeAccessPriorityGroup + DESCRIPTION + "This group is optional and is relevant only for devices + supporting the priority forwarding operations defined by + IEEE 802.1D and that have interface media types that + support native Access Priority, e.g., IEEE 802.5." + + GROUP pBridgePortGarpGroup + + + + DESCRIPTION + "This group is mandatory for devices supporting any + of the GARP applications: e.g., GMRP, defined by the + extended filtering services of 802.1D; or GVRP, + defined by 802.1Q (refer to the Q-BRIDGE-MIB for + conformance statements for GVRP)." + + GROUP pBridgePortGmrpGroup2 + DESCRIPTION + "This group is mandatory for devices supporting the + GMRP application, as defined by IEEE 802.1D Extended + Filtering Services." + + GROUP pBridgeHCPortGroup + DESCRIPTION + "Support for this group in a device is mandatory for those + bridge ports that map to network interfaces that have the + value of the corresponding instance of ifSpeed + greater than 650,000,000 bits/second." + + GROUP pBridgePortOverflowGroup + DESCRIPTION + "Support for this group in a device is mandatory for those + bridge ports that map to network interfaces that have the + value of the corresponding instance of ifSpeed + greater than 650,000,000 bits/second." + + OBJECT dot1dPortNumTrafficClasses + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT dot1dTrafficClass + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT dot1dRegenUserPriority + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + ::= { pBridgeCompliances 2 } + +END \ No newline at end of file diff --git a/mibs/Q-BRIDGE-MIB.txt b/mibs/Q-BRIDGE-MIB.txt new file mode 100644 index 00000000..16aad75a --- /dev/null +++ b/mibs/Q-BRIDGE-MIB.txt @@ -0,0 +1,1905 @@ +-- extracted from rfc2674.txt +-- at Mon Nov 15 17:12:07 1999 + +Q-BRIDGE-MIB DEFINITIONS ::= BEGIN + +-- ------------------------------------------------------------- +-- MIB for IEEE 802.1Q Devices +-- ------------------------------------------------------------- + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, + Counter32, Counter64, Unsigned32, TimeTicks + FROM SNMPv2-SMI + RowStatus, TruthValue, TEXTUAL-CONVENTION, MacAddress + FROM SNMPv2-TC + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF + dot1dBridge, dot1dBasePortEntry, dot1dBasePort + FROM BRIDGE-MIB + EnabledStatus + FROM P-BRIDGE-MIB + TimeFilter + FROM RMON2-MIB; + +qBridgeMIB MODULE-IDENTITY + LAST-UPDATED "9908250000Z" + ORGANIZATION "IETF Bridge MIB Working Group" + CONTACT-INFO + " Les Bell + Postal: 3Com Europe Ltd. + 3Com Centre, Boundary Way + Hemel Hempstead, Herts. HP2 7YU + UK + Phone: +44 1442 438025 + Email: Les_Bell@3Com.com + + Andrew Smith + Postal: Extreme Networks + 3585 Monroe St. + Santa Clara CA 95051 + USA + Phone: +1 408 579 2821 + Email: andrew@extremenetworks.com + + Paul Langille + Postal: Newbridge Networks + 5 Corporate Drive + Andover, MA 01810 + USA + Phone: +1 978 691 4665 + Email: langille@newbridge.com + + Anil Rijhsinghani + Postal: Cabletron Systems + 50 Minuteman Road + Andover, MA 01810 + USA + Phone: +1 978 684 1295 + Email: anil@cabletron.com + + Keith McCloghrie + Postal: cisco Systems, Inc. + 170 West Tasman Drive + San Jose, CA 95134-1706 + USA + Phone: +1 408 526 5260 + Email: kzm@cisco.com" + DESCRIPTION + "The VLAN Bridge MIB module for managing Virtual Bridged + Local Area Networks, as defined by IEEE 802.1Q-1998." + +-- revision history + + REVISION "9908250000Z" + DESCRIPTION + "Initial version, published as RFC 2674." + + ::= { dot1dBridge 7 } + +qBridgeMIBObjects OBJECT IDENTIFIER ::= { qBridgeMIB 1 } + +-- ------------------------------------------------------------- +-- Textual Conventions +-- ------------------------------------------------------------- + +PortList ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Each octet within this value specifies a set of eight + ports, with the first octet specifying ports 1 through + 8, the second octet specifying ports 9 through 16, etc. + Within each octet, the most significant bit represents + the lowest numbered port, and the least significant bit + represents the highest numbered port. Thus, each port + of the bridge is represented by a single bit within the + value of this object. If that bit has a value of '1' + then that port is included in the set of ports; the port + is not included if its bit has a value of '0'." + SYNTAX OCTET STRING + +VlanIndex ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "A value used to index per-VLAN tables: values of 0 and + 4095 are not permitted; if the value is between 1 and + 4094 inclusive, it represents an IEEE 802.1Q VLAN-ID with + global scope within a given bridged domain (see VlanId + textual convention). If the value is greater than 4095 + then it represents a VLAN with scope local to the + particular agent, i.e. one without a global VLAN-ID + assigned to it. Such VLANs are outside the scope of + IEEE 802.1Q but it is convenient to be able to manage them + in the same way using this MIB." + SYNTAX Unsigned32 + +VlanId ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "A 12-bit VLAN ID used in the VLAN Tag header." + SYNTAX INTEGER (1..4094) + +-- ------------------------------------------------------------- +-- groups in the Q-BRIDGE MIB +-- ------------------------------------------------------------- + +dot1qBase OBJECT IDENTIFIER ::= { qBridgeMIBObjects 1 } +dot1qTp OBJECT IDENTIFIER ::= { qBridgeMIBObjects 2 } +dot1qStatic OBJECT IDENTIFIER ::= { qBridgeMIBObjects 3 } +dot1qVlan OBJECT IDENTIFIER ::= { qBridgeMIBObjects 4 } + +-- ------------------------------------------------------------- + +-- ------------------------------------------------------------- +-- dot1qBase group +-- ------------------------------------------------------------- + +dot1qVlanVersionNumber OBJECT-TYPE + SYNTAX INTEGER { + version1(1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The version number of IEEE 802.1Q that this device + supports." + REFERENCE + "IEEE 802.1Q/D11 Section 12.10.1.1" + ::= { dot1qBase 1 } + +dot1qMaxVlanId OBJECT-TYPE + SYNTAX VlanId + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The maximum IEEE 802.1Q VLAN ID that this device + supports." + REFERENCE + "IEEE 802.1Q/D11 Section 9.3.2.3" + ::= { dot1qBase 2 } + +dot1qMaxSupportedVlans OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The maximum number of IEEE 802.1Q VLANs that this + device supports." + REFERENCE + "IEEE 802.1Q/D11 Section 12.10.1.1" + ::= { dot1qBase 3 } + +dot1qNumVlans OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current number of IEEE 802.1Q VLANs that are + configured in this device." + REFERENCE + "IEEE 802.1Q/D11 Section 12.7.1.1" + ::= { dot1qBase 4 } + +dot1qGvrpStatus OBJECT-TYPE + SYNTAX EnabledStatus + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative status requested by management for + GVRP. The value enabled(1) indicates that GVRP should + be enabled on this device, on all ports for which it has + not been specifically disabled. When disabled(2), GVRP + is disabled on all ports and all GVRP packets will be + forwarded transparently. This object affects all GVRP + Applicant and Registrar state machines. A transition + from disabled(2) to enabled(1) will cause a reset of all + GVRP state machines on all ports." --- IPI Comments: Not Supported + DEFVAL { enabled } + ::= { dot1qBase 5 } + +-- ------------------------------------------------------------- +-- the dot1qTp group +-- ------------------------------------------------------------- + +-- ------------------------------------------------------------- +-- the current Filtering Database Table +-- ------------------------------------------------------------- +dot1qFdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qFdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains configuration and control + information for each Filtering Database currently + operating on this device. Entries in this table appear + automatically when VLANs are assigned FDB IDs in the + dot1qVlanCurrentTable." + ::= { dot1qTp 1 } + +dot1qFdbEntry OBJECT-TYPE + SYNTAX Dot1qFdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a specific Filtering Database." + INDEX { dot1qFdbId } ----IPI Comments: Not Supported + ::= { dot1qFdbTable 1 } + +Dot1qFdbEntry ::= + SEQUENCE { + dot1qFdbId + Unsigned32, + dot1qFdbDynamicCount + Counter32 + } + +dot1qFdbId OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The identity of this Filtering Database." + ::= { dot1qFdbEntry 1 } + +dot1qFdbDynamicCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current number of dynamic entries in this + Filtering Database." + REFERENCE + "IEEE 802.1Q/D11 Section 12.7.1.1.3" + ::= { dot1qFdbEntry 2 } + +-- ------------------------------------------------------------- +-- Multiple Forwarding Databases for 802.1Q Transparent devices +-- This table is an alternative to the dot1dTpFdbTable, +-- previously defined for 802.1D devices which only support a +-- single Forwarding Database. +-- ------------------------------------------------------------- + +dot1qTpFdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qTpFdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains information about unicast entries + for which the device has forwarding and/or filtering + information. This information is used by the + transparent bridging function in determining how to + propagate a received frame." + REFERENCE + "IEEE 802.1Q/D11 Section 12.7.7" + ::= { dot1qTp 2 } + +dot1qTpFdbEntry OBJECT-TYPE + SYNTAX Dot1qTpFdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a specific unicast MAC address for + which the device has some forwarding and/or filtering + information." + INDEX { dot1qFdbId, dot1qTpFdbAddress } -- IPI Comments: Not Supported + ::= { dot1qTpFdbTable 1 } + +Dot1qTpFdbEntry ::= + SEQUENCE { + dot1qTpFdbAddress + MacAddress, + dot1qTpFdbPort + INTEGER, + dot1qTpFdbStatus + INTEGER + } + +dot1qTpFdbAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A unicast MAC address for which the device has + forwarding and/or filtering information." + ::= { dot1qTpFdbEntry 1 } + +dot1qTpFdbPort OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Either the value '0', or the port number of the port on + which a frame having a source address equal to the value + of the corresponding instance of dot1qTpFdbAddress has + been seen. A value of '0' indicates that the port + number has not been learned but that the device does + have some forwarding/filtering information about this + address (e.g. in the dot1qStaticUnicastTable). + Implementors are encouraged to assign the port value to + this object whenever it is learned even for addresses + for which the corresponding value of dot1qTpFdbStatus is + not learned(3)." + ::= { dot1qTpFdbEntry 2 } + +dot1qTpFdbStatus OBJECT-TYPE + SYNTAX INTEGER { + other(1), + invalid(2), + learned(3), + self(4), + mgmt(5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The status of this entry. The meanings of the values + are: + other(1) - none of the following. This may include + the case where some other MIB object (not the + corresponding instance of dot1qTpFdbPort, nor an + entry in the dot1qStaticUnicastTable) is being + used to determine if and how frames addressed to + the value of the corresponding instance of + dot1qTpFdbAddress are being forwarded. + invalid(2) - this entry is no longer valid (e.g., it + was learned but has since aged out), but has not + yet been flushed from the table. + learned(3) - the value of the corresponding instance + of dot1qTpFdbPort was learned and is being used. + + self(4) - the value of the corresponding instance of + dot1qTpFdbAddress represents one of the device's + addresses. The corresponding instance of + dot1qTpFdbPort indicates which of the device's + ports has this address. + mgmt(5) - the value of the corresponding instance of + dot1qTpFdbAddress is also the value of an + existing instance of dot1qStaticAddress." + ::= { dot1qTpFdbEntry 3 } + +-- ------------------------------------------------------------- +-- Dynamic Group Registration Table +-- ------------------------------------------------------------- + +dot1qTpGroupTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qTpGroupEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing filtering information for VLANs + configured into the bridge by (local or network) + management, or learnt dynamically, specifying the set of + ports to which frames received on a VLAN for this FDB + and containing a specific Group destination address are + allowed to be forwarded." + ::= { dot1qTp 3 } + +dot1qTpGroupEntry OBJECT-TYPE + SYNTAX Dot1qTpGroupEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Filtering information configured into the bridge by + management, or learnt dynamically, specifying the set of + ports to which frames received on a VLAN and containing + a specific Group destination address, are allowed to be + forwarded. The subset of these ports learnt dynamically + is also provided." + INDEX { dot1qVlanIndex, dot1qTpGroupAddress } --- IPI Comments: Not Supported + ::= { dot1qTpGroupTable 1 } + +Dot1qTpGroupEntry ::= + SEQUENCE { + dot1qTpGroupAddress + MacAddress, + dot1qTpGroupEgressPorts + PortList, + dot1qTpGroupLearnt + PortList + } + +dot1qTpGroupAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The destination Group MAC address in a frame to which + this entry's filtering information applies." + ::= { dot1qTpGroupEntry 1 } + +dot1qTpGroupEgressPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The complete set of ports, in this VLAN, to which + frames destined for this Group MAC address are currently + being explicitly forwarded. This does not include ports + for which this address is only implicitly forwarded, in + the dot1qForwardAllPorts list." --- IPI Comments: Not Supported + ::= { dot1qTpGroupEntry 2 } + +dot1qTpGroupLearnt OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The subset of ports in dot1qTpGroupEgressPorts which + were learnt by GMRP or some other dynamic mechanism, in + this Filtering database." --- IPI Comments: Not Supported + ::= { dot1qTpGroupEntry 3 } + +-- ------------------------------------------------------------- +-- Service Requirements Group +-- ------------------------------------------------------------- + +dot1qForwardAllTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qForwardAllEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing forwarding information for each + VLAN, specifying the set of ports to which forwarding of + all multicasts applies, configured statically by + management or dynamically by GMRP. An entry appears in + this table for all VLANs that are currently + instantiated." + REFERENCE + "IEEE 802.1Q/D11 Section 12.7.2, 12.7.7" + ::= { dot1qTp 4 } + +dot1qForwardAllEntry OBJECT-TYPE + SYNTAX Dot1qForwardAllEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Forwarding information for a VLAN, specifying the set + of ports to which all multicasts should be forwarded, + configured statically by management or dynamically by + GMRP." + INDEX { dot1qVlanIndex } + ::= { dot1qForwardAllTable 1 } + +Dot1qForwardAllEntry ::= + SEQUENCE { + dot1qForwardAllPorts + PortList, + dot1qForwardAllStaticPorts + PortList, + dot1qForwardAllForbiddenPorts + PortList + } + +dot1qForwardAllPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The complete set of ports in this VLAN to which all + multicast group-addressed frames are to be forwarded. + This includes ports for which this need has been + determined dynamically by GMRP, or configured statically + by management." + ::= { dot1qForwardAllEntry 1 } + +dot1qForwardAllStaticPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The set of ports configured by management in this VLAN + to which all multicast group-addressed frames are to be + forwarded. Ports entered in this list will also appear + in the complete set shown by dot1qForwardAllPorts. This + value will be restored after the device is reset. This + only applies to ports that are members of the VLAN, + defined by dot1qVlanCurrentEgressPorts. A port may not + be added in this set if it is already a member of the + set of ports in dot1qForwardAllForbiddenPorts. The + default value is a string of ones of appropriate length, + to indicate standard non-EFS behaviour, i.e. forward + all multicasts to all ports." -- IPI Comments: Not Supported + ::= { dot1qForwardAllEntry 2 } + +dot1qForwardAllForbiddenPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The set of ports configured by management in this VLAN + for which the Service Requirement attribute Forward All + Multicast Groups may not be dynamically registered by + GMRP. This value will be restored after the device is + reset. A port may not be added in this set if it is + already a member of the set of ports in + dot1qForwardAllStaticPorts. The default value is a + string of zeros of appropriate length." --- IPI Comments: Not Supported + ::= { dot1qForwardAllEntry 3 } + +dot1qForwardUnregisteredTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qForwardUnregisteredEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing forwarding information for each + VLAN, specifying the set of ports to which forwarding of + multicast group-addressed frames for which there is no + more specific forwarding information applies. This is + configured statically by management and determined + dynamically by GMRP. An entry appears in this table for + all VLANs that are currently instantiated." + REFERENCE + "IEEE 802.1Q/D11 Section 12.7.2, 12.7.7" + ::= { dot1qTp 5 } + +dot1qForwardUnregisteredEntry OBJECT-TYPE + SYNTAX Dot1qForwardUnregisteredEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Forwarding information for a VLAN, specifying the set + of ports to which all multicasts for which there is no + more specific forwarding information shall be forwarded. + This is configured statically by management or + dynamically by GMRP." + INDEX { dot1qVlanIndex } + ::= { dot1qForwardUnregisteredTable 1 } + +Dot1qForwardUnregisteredEntry ::= + SEQUENCE { + dot1qForwardUnregisteredPorts + PortList, + dot1qForwardUnregisteredStaticPorts + PortList, + dot1qForwardUnregisteredForbiddenPorts + PortList + } + +dot1qForwardUnregisteredPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The complete set of ports in this VLAN to which + multicast group-addressed frames for which there is no + more specific forwarding information will be forwarded. + This includes ports for which this need has been + determined dynamically by GMRP, or configured statically + by management." IPI Comments: Not Supported + ::= { dot1qForwardUnregisteredEntry 1 } + +dot1qForwardUnregisteredStaticPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The set of ports configured by management, in this + VLAN, to which multicast group-addressed frames for + which there is no more specific forwarding information + are to be forwarded. Ports entered in this list will + also appear in the complete set shown by + dot1qForwardUnregisteredPorts. This value will be + restored after the device is reset. A port may not be + added in this set if it is already a member of the set + of ports in dot1qForwardUnregisteredForbiddenPorts. The + default value is a string of zeros of appropriate + length, although this has no effect with the default + value of dot1qForwardAllStaticPorts." --- IPI Comments: Not Supported + ::= { dot1qForwardUnregisteredEntry 2 } + +dot1qForwardUnregisteredForbiddenPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The set of ports configured by management in this VLAN + for which the Service Requirement attribute Forward + Unregistered Multicast Groups may not be dynamically + registered by GMRP. This value will be restored after + the device is reset. A port may not be added in this + set if it is already a member of the set of ports in + dot1qForwardUnregisteredStaticPorts. The default value + is a string of zeros of appropriate length." --- IPI Comments: Not Supported + ::= { dot1qForwardUnregisteredEntry 3 } + +-- ------------------------------------------------------------- +-- The Static (Destination-Address Filtering) Database +-- ------------------------------------------------------------- + +dot1qStaticUnicastTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qStaticUnicastEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing filtering information for Unicast + MAC addresses for each Filtering Database, configured + into the device by (local or network) management + specifying the set of ports to which frames received + from specific ports and containing specific unicast + destination addresses are allowed to be forwarded. A + value of zero in this table as the port number from + which frames with a specific destination address are + received, is used to specify all ports for which there + is no specific entry in this table for that particular + destination address. Entries are valid for unicast + addresses only." + REFERENCE + "IEEE 802.1Q/D11 Section 12.7.7, + ISO/IEC 15802-3 Section 7.9.1" + ::= { dot1qStatic 1 } + +dot1qStaticUnicastEntry OBJECT-TYPE + SYNTAX Dot1qStaticUnicastEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Filtering information configured into the device by + (local or network) management specifying the set of + ports to which frames received from a specific port and + containing a specific unicast destination address are + allowed to be forwarded." + INDEX { + dot1qFdbId, + dot1qStaticUnicastAddress, + dot1qStaticUnicastReceivePort + } + ::= { dot1qStaticUnicastTable 1 } + +Dot1qStaticUnicastEntry ::= + SEQUENCE { + dot1qStaticUnicastAddress + MacAddress, + dot1qStaticUnicastReceivePort + INTEGER, + dot1qStaticUnicastAllowedToGoTo + PortList, + dot1qStaticUnicastStatus + INTEGER + } + +dot1qStaticUnicastAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The destination MAC address in a frame to which this + entry's filtering information applies. This object must + take the value of a unicast address." --- IPI Comments: Not Supported + ::= { dot1qStaticUnicastEntry 1 } + +dot1qStaticUnicastReceivePort OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Either the value '0', or the port number of the port + from which a frame must be received in order for this + entry's filtering information to apply. A value of zero + indicates that this entry applies on all ports of the + device for which there is no other applicable entry." --- IPI Comments: Not Supported + ::= { dot1qStaticUnicastEntry 2 } + +dot1qStaticUnicastAllowedToGoTo OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The set of ports for which a frame with a specific + unicast address will be flooded in the event that it + has not been learned. It also specifies the set of + ports a specific unicast address may be dynamically + learnt on. The dot1qTpFdbTable will have an equivalent + entry with a dot1qTpFdbPort value of '0' until this + address has been learnt, when it will be updated with + the port the address has been seen on. This only + applies to ports that are members of the VLAN, defined + by dot1qVlanCurrentEgressPorts. The default value of + this object is a string of ones of appropriate length." --- IPI Comments: Not Supported + REFERENCE + "IEEE 802.1Q/D11 Table 8-5, ISO/IEC 15802-3 Table 7-5" + ::= { dot1qStaticUnicastEntry 3 } + +dot1qStaticUnicastStatus OBJECT-TYPE + SYNTAX INTEGER { + other(1), + invalid(2), + permanent(3), + deleteOnReset(4), + deleteOnTimeout(5) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object indicates the status of this entry. + other(1) - this entry is currently in use but + the conditions under which it will remain + so differ from the following values. + invalid(2) - writing this value to the object + removes the corresponding entry. + permanent(3) - this entry is currently in use + and will remain so after the next reset of + the bridge. + deleteOnReset(4) - this entry is currently in + use and will remain so until the next + reset of the bridge. + + deleteOnTimeout(5) - this entry is currently in + use and will remain so until it is aged out." --- IPI Comments: Not Supported + DEFVAL { permanent } + ::= { dot1qStaticUnicastEntry 4 } + +dot1qStaticMulticastTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qStaticMulticastEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing filtering information for Multicast + and Broadcast MAC addresses for each VLAN, configured + into the device by (local or network) management + specifying the set of ports to which frames received + from specific ports and containing specific Multicast + and Broadcast destination addresses are allowed to be + forwarded. A value of zero in this table as the port + number from which frames with a specific destination + address are received, is used to specify all ports for + which there is no specific entry in this table for that + particular destination address. Entries are valid for + Multicast and Broadcast addresses only." + REFERENCE + "IEEE 802.1Q/D11 Section 12.7.7, + ISO/IEC 15802-3 Section 7.9.1" + ::= { dot1qStatic 2 } + +dot1qStaticMulticastEntry OBJECT-TYPE + SYNTAX Dot1qStaticMulticastEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Filtering information configured into the device by + (local or network) management specifying the set of + ports to which frames received from this specific port + for this VLAN and containing this Multicast or Broadcast + destination address are allowed to be forwarded." + INDEX { + dot1qVlanIndex, + dot1qStaticMulticastAddress, + dot1qStaticMulticastReceivePort + } + ::= { dot1qStaticMulticastTable 1 } + +Dot1qStaticMulticastEntry ::= + SEQUENCE { + dot1qStaticMulticastAddress + MacAddress, + dot1qStaticMulticastReceivePort + INTEGER, + dot1qStaticMulticastStaticEgressPorts + PortList, + dot1qStaticMulticastForbiddenEgressPorts + PortList, + dot1qStaticMulticastStatus + INTEGER + } + +dot1qStaticMulticastAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The destination MAC address in a frame to which this + entry's filtering information applies. This object must + take the value of a Multicast or Broadcast address." --- IPI Comments: Not Supported + ::= { dot1qStaticMulticastEntry 1 } + +dot1qStaticMulticastReceivePort OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Either the value '0', or the port number of the port + from which a frame must be received in order for this + entry's filtering information to apply. A value of zero + indicates that this entry applies on all ports of the + device for which there is no other applicable entry." --- IPI Comments: Not Supported + ::= { dot1qStaticMulticastEntry 2 } + +dot1qStaticMulticastStaticEgressPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The set of ports to which frames received from a + specific port and destined for a specific Multicast or + Broadcast MAC address must be forwarded, regardless of + any dynamic information e.g. from GMRP. A port may not + be added in this set if it is already a member of the + set of ports in dot1qStaticMulticastForbiddenEgressPorts. + The default value of this object is a string of ones of + appropriate length." --- IPI Comments: Not Supported + ::= { dot1qStaticMulticastEntry 3 } + +dot1qStaticMulticastForbiddenEgressPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The set of ports to which frames received from a + specific port and destined for a specific Multicast or + Broadcast MAC address must not be forwarded, regardless + of any dynamic information e.g. from GMRP. A port may + not be added in this set if it is already a member of the + set of ports in dot1qStaticMulticastStaticEgressPorts. + The default value of this object is a string of zeros of + appropriate length." --- IPI Comments: Not Supported + ::= { dot1qStaticMulticastEntry 4 } + +dot1qStaticMulticastStatus OBJECT-TYPE + SYNTAX INTEGER { + other(1), + invalid(2), + permanent(3), + deleteOnReset(4), + deleteOnTimeout(5) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object indicates the status of this entry. + other(1) - this entry is currently in use but + the conditions under which it will remain + so differ from the following values. + invalid(2) - writing this value to the object + removes the corresponding entry. + permanent(3) - this entry is currently in use + and will remain so after the next reset of + the bridge. + + deleteOnReset(4) - this entry is currently in + use and will remain so until the next + reset of the bridge. + deleteOnTimeout(5) - this entry is currently in + use and will remain so until it is aged out." --- IPI Comments: Not Supported + DEFVAL { permanent } + ::= { dot1qStaticMulticastEntry 5 } + +-- ------------------------------------------------------------- +-- The Current VLAN Database +-- ------------------------------------------------------------- + +dot1qVlanNumDeletes OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times a VLAN entry has been deleted from + the dot1qVlanCurrentTable (for any reason). If an entry + is deleted, then inserted, and then deleted, this + counter will be incremented by 2." + ::= { dot1qVlan 1 } + +dot1qVlanCurrentTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qVlanCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing current configuration information + for each VLAN currently configured into the device by + (local or network) management, or dynamically created + as a result of GVRP requests received." + ::= { dot1qVlan 2 } + +dot1qVlanCurrentEntry OBJECT-TYPE + SYNTAX Dot1qVlanCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information for a VLAN configured into the device by + (local or network) management, or dynamically created + as a result of GVRP requests received." + INDEX { dot1qVlanTimeMark, dot1qVlanIndex } + ::= { dot1qVlanCurrentTable 1 } + +Dot1qVlanCurrentEntry ::= + SEQUENCE { + dot1qVlanTimeMark + TimeFilter, + dot1qVlanIndex + VlanIndex, + dot1qVlanFdbId + Unsigned32, + dot1qVlanCurrentEgressPorts + PortList, + dot1qVlanCurrentUntaggedPorts + PortList, + dot1qVlanStatus + INTEGER, + dot1qVlanCreationTime + TimeTicks + } + +dot1qVlanTimeMark OBJECT-TYPE + SYNTAX TimeFilter + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A TimeFilter for this entry. See the TimeFilter + textual convention to see how this works." --- IPI Comments: Not Supported + ::= { dot1qVlanCurrentEntry 1 } + +dot1qVlanIndex OBJECT-TYPE + SYNTAX VlanIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The VLAN-ID or other identifier refering to this VLAN." --- IPI Comments: Not Supported + ::= { dot1qVlanCurrentEntry 2 } + +dot1qVlanFdbId OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Filtering Database used by this VLAN. This is one + of the dot1qFdbId values in the dot1qFdbTable. This + value is allocated automatically by the device whenever + the VLAN is created: either dynamically by GVRP, or by + management, in dot1qVlanStaticTable. Allocation of this + value follows the learning constraints defined for this + VLAN in dot1qLearningConstraintsTable." + ::= { dot1qVlanCurrentEntry 3 } + +dot1qVlanCurrentEgressPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The set of ports which are transmitting traffic for + this VLAN as either tagged or untagged frames." + REFERENCE + "IEEE 802.1Q/D11 Section 12.10.2.1" + ::= { dot1qVlanCurrentEntry 4 } + +dot1qVlanCurrentUntaggedPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The set of ports which are transmitting traffic for + this VLAN as untagged frames." + REFERENCE + "IEEE 802.1Q/D11 Section 12.10.2.1" + ::= { dot1qVlanCurrentEntry 5 } + +dot1qVlanStatus OBJECT-TYPE + SYNTAX INTEGER { + other(1), + permanent(2), + dynamicGvrp(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object indicates the status of this entry. + other(1) - this entry is currently in use but the + conditions under which it will remain so differ + from the following values. + permanent(2) - this entry, corresponding to an entry + in dot1qVlanStaticTable, is currently in use and + will remain so after the next reset of the + device. The port lists for this entry include + ports from the equivalent dot1qVlanStaticTable + entry and ports learnt dynamically. + dynamicGvrp(3) - this entry is currently in use + and will remain so until removed by GVRP. There + is no static entry for this VLAN and it will be + removed when the last port leaves the VLAN." + ::= { dot1qVlanCurrentEntry 6 } + +dot1qVlanCreationTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime when this VLAN was created." + ::= { dot1qVlanCurrentEntry 7 } + +-- ------------------------------------------------------------- +-- The Static VLAN Database +-- ------------------------------------------------------------- + +dot1qVlanStaticTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qVlanStaticEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing static configuration information for + each VLAN configured into the device by (local or + network) management. All entries are permanent and will + be restored after the device is reset." + ::= { dot1qVlan 3 } + +dot1qVlanStaticEntry OBJECT-TYPE + SYNTAX Dot1qVlanStaticEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Static information for a VLAN configured into the + device by (local or network) management." + INDEX { dot1qVlanIndex } + ::= { dot1qVlanStaticTable 1 } + +Dot1qVlanStaticEntry ::= + SEQUENCE { + dot1qVlanStaticName + SnmpAdminString, + dot1qVlanStaticEgressPorts + PortList, + dot1qVlanForbiddenEgressPorts + PortList, + + dot1qVlanStaticUntaggedPorts + PortList, + dot1qVlanStaticRowStatus + RowStatus + } + +dot1qVlanStaticName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "An administratively assigned string, which may be used + to identify the VLAN." + REFERENCE + "IEEE 802.1Q/D11 Section 12.10.2.1" + ::= { dot1qVlanStaticEntry 1 } + +dot1qVlanStaticEgressPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The set of ports which are permanently assigned to the + egress list for this VLAN by management. Changes to a + bit in this object affect the per-port per-VLAN + Registrar control for Registration Fixed for the + relevant GVRP state machine on each port. A port may + not be added in this set if it is already a member of + the set of ports in dot1qVlanForbiddenEgressPorts. The + default value of this object is a string of zeros of + appropriate length, indicating not fixed." + REFERENCE + "IEEE 802.1Q/D11 Section 12.7.7.3, 11.2.3.2.3" + ::= { dot1qVlanStaticEntry 2 } + +dot1qVlanForbiddenEgressPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The set of ports which are prohibited by management + from being included in the egress list for this VLAN. + Changes to this object that cause a port to be included + or excluded affect the per-port per-VLAN Registrar + control for Registration Forbidden for the relevant GVRP + state machine on each port. A port may not be added in + this set if it is already a member of the set of ports + in dot1qVlanStaticEgressPorts. The default value of + this object is a string of zeros of appropriate length, + excluding all ports from the forbidden set." + REFERENCE + "IEEE 802.1Q/D11 Section 12.7.7.3, 11.2.3.2.3" + ::= { dot1qVlanStaticEntry 3 } + +dot1qVlanStaticUntaggedPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The set of ports which should transmit egress packets + for this VLAN as untagged. The default value of this + object for the default VLAN (dot1qVlanIndex = 1) is a string + of appropriate length including all ports. There is no + specified default for other VLANs. If a device agent cannot + support the set of ports being set then it will reject the + set operation with an error. An example might be if a + manager attempts to set more than one VLAN to be untagged + on egress where the device does not support this IEEE 802.1Q + option." + REFERENCE + "IEEE 802.1Q/D11 Section 12.10.2.1" + ::= { dot1qVlanStaticEntry 4 } + +dot1qVlanStaticRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the status of this entry." + ::= { dot1qVlanStaticEntry 5 } + +dot1qNextFreeLocalVlanIndex OBJECT-TYPE + SYNTAX INTEGER (0|4096..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The next available value for dot1qVlanIndex of a local + VLAN entry in dot1qVlanStaticTable. This will report + values >=4096 if a new Local VLAN may be created or else + the value 0 if this is not possible. + A row creation operation in this table for an entry with a local + VlanIndex value may fail if the current value of this object + is not used as the index. Even if the value read is used, + there is no guarantee that it will still be the valid index + when the create operation is attempted - another manager may + have already got in during the intervening time interval. + In this case, dot1qNextFreeLocalVlanIndex should be re-read + and the creation re-tried with the new value. + + This value will automatically change when the current value is + used to create a new row." + ::= { dot1qVlan 4 } + +-- ------------------------------------------------------------- +-- The VLAN Port Configuration Table +-- ------------------------------------------------------------- + +dot1qPortVlanTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qPortVlanEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing per port control and status + information for VLAN configuration in the device." + ::= { dot1qVlan 5 } + +dot1qPortVlanEntry OBJECT-TYPE + SYNTAX Dot1qPortVlanEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information controlling VLAN configuration for a port + on the device. This is indexed by dot1dBasePort." + AUGMENTS { dot1dBasePortEntry } + ::= { dot1qPortVlanTable 1 } + +Dot1qPortVlanEntry ::= + SEQUENCE { + dot1qPvid + VlanIndex, + dot1qPortAcceptableFrameTypes + INTEGER, + dot1qPortIngressFiltering + TruthValue, + dot1qPortGvrpStatus + EnabledStatus, + + dot1qPortGvrpFailedRegistrations + Counter32, + dot1qPortGvrpLastPduOrigin + MacAddress + } + +dot1qPvid OBJECT-TYPE + SYNTAX VlanIndex + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The PVID, the VLAN ID assigned to untagged frames or + Priority-Tagged frames received on this port." + REFERENCE + "IEEE 802.1Q/D11 Section 12.10.1.1" + DEFVAL { 1 } + ::= { dot1qPortVlanEntry 1 } + +dot1qPortAcceptableFrameTypes OBJECT-TYPE + SYNTAX INTEGER { + admitAll(1), + admitOnlyVlanTagged(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "When this is admitOnlyVlanTagged(2) the device will + discard untagged frames or Priority-Tagged frames + received on this port. When admitAll(1), untagged + frames or Priority-Tagged frames received on this port + will be accepted and assigned to the PVID for this port. + + This control does not affect VLAN independent BPDU + frames, such as GVRP and STP. It does affect VLAN + dependent BPDU frames, such as GMRP." + REFERENCE + "IEEE 802.1Q/D11 Section 12.10.1.3" + DEFVAL { admitAll } + ::= { dot1qPortVlanEntry 2 } + +dot1qPortIngressFiltering OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "When this is true(1) the device will discard incoming + frames for VLANs which do not include this Port in its + Member set. When false(2), the port will accept all + incoming frames. + + This control does not affect VLAN independent BPDU + frames, such as GVRP and STP. It does affect VLAN + dependent BPDU frames, such as GMRP." + REFERENCE + "IEEE 802.1Q/D11 Section 12.10.1.4" + DEFVAL { false } + ::= { dot1qPortVlanEntry 3 } + +dot1qPortGvrpStatus OBJECT-TYPE + SYNTAX EnabledStatus + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The state of GVRP operation on this port. The value + enabled(1) indicates that GVRP is enabled on this port, + as long as dot1qGvrpStatus is also enabled for this + device. When disabled(2) but dot1qGvrpStatus is still + enabled for the device, GVRP is disabled on this port: + any GVRP packets received will be silently discarded and + no GVRP registrations will be propagated from other + ports. This object affects all GVRP Applicant and + Registrar state machines on this port. A transition + from disabled(2) to enabled(1) will cause a reset of all + GVRP state machines on this port." --- IPI Comments: Not Supported + DEFVAL { enabled } + ::= { dot1qPortVlanEntry 4 } + +dot1qPortGvrpFailedRegistrations OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of failed GVRP registrations, for any + reason, on this port." --- IPI Comments: Not Supported + ::= { dot1qPortVlanEntry 5 } + +dot1qPortGvrpLastPduOrigin OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Source MAC Address of the last GVRP message + received on this port." --- IPI Comments: Not Supported + ::= { dot1qPortVlanEntry 6 } + +-- ------------------------------------------------------------- +-- Per port VLAN Statistics Table +-- ------------------------------------------------------------- + +dot1qPortVlanStatisticsTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qPortVlanStatisticsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing per-port, per-VLAN statistics for + traffic received. Separate objects are provided for both the + most-significant and least-significant bits of statistics + counters for ports that are associated with this transparent + bridge. The most-significant bit objects are only required on + high capacity interfaces, as defined in the conformance clauses + for these objects. This mechanism is provided as a way to read + 64-bit counters for agents which support only SNMPv1. + + Note that the reporting of most-significant and least- + significant counter bits separately runs the risk of missing + an overflow of the lower bits in the interval between sampling. + The manager must be aware of this possibility, even within the + same varbindlist, when interpreting the results of a request or + asynchronous notification." + ::= { dot1qVlan 6 } + +dot1qPortVlanStatisticsEntry OBJECT-TYPE + SYNTAX Dot1qPortVlanStatisticsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Traffic statistics for a VLAN on an interface." + INDEX { dot1dBasePort, dot1qVlanIndex } + ::= { dot1qPortVlanStatisticsTable 1 } + +Dot1qPortVlanStatisticsEntry ::= + SEQUENCE { + dot1qTpVlanPortInFrames + Counter32, + dot1qTpVlanPortOutFrames + Counter32, + dot1qTpVlanPortInDiscards + Counter32, + dot1qTpVlanPortInOverflowFrames + Counter32, + dot1qTpVlanPortOutOverflowFrames + Counter32, + dot1qTpVlanPortInOverflowDiscards + Counter32 + } + +dot1qTpVlanPortInFrames OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of valid frames received by this port from + its segment which were classified as belonging to this + VLAN. Note that a frame received on this port is + counted by this object if and only if it is for a + protocol being processed by the local forwarding process + for this VLAN. This object includes received bridge + management frames classified as belonging to this VLAN + (e.g. GMRP, but not GVRP or STP)." + REFERENCE + "IEEE 802.1Q/D11 Section 12.6.1.1.3(a)" + ::= { dot1qPortVlanStatisticsEntry 1 } + +dot1qTpVlanPortOutFrames OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of valid frames transmitted by this port to + its segment from the local forwarding process for this + VLAN. This includes bridge management frames originated + by this device which are classified as belonging to this + VLAN (e.g. GMRP, but not GVRP or STP)." + REFERENCE + "IEEE 802.1Q/D11 Section 12.6.1.1.3(d)" + ::= { dot1qPortVlanStatisticsEntry 2 } + +dot1qTpVlanPortInDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of valid frames received by this port from + its segment which were classified as belonging to this + VLAN which were discarded due to VLAN related reasons. + Specifically, the IEEE 802.1Q counters for Discard + Inbound and Discard on Ingress Filtering." + REFERENCE + "IEEE 802.1Q/D11 Section 12.6.1.1.3" + ::= { dot1qPortVlanStatisticsEntry 3 } + +dot1qTpVlanPortInOverflowFrames OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times the associated + dot1qTpVlanPortInFrames counter has overflowed." + REFERENCE + "ISO/IEC 15802-3 Section 14.6.1.1.3" + ::= { dot1qPortVlanStatisticsEntry 4 } + +dot1qTpVlanPortOutOverflowFrames OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times the associated + dot1qTpVlanPortOutFrames counter has overflowed." + REFERENCE + "ISO/IEC 15802-3 Section 14.6.1.1.3" + ::= { dot1qPortVlanStatisticsEntry 5 } + +dot1qTpVlanPortInOverflowDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times the associated + dot1qTpVlanPortInDiscards counter has overflowed." + REFERENCE + "ISO/IEC 15802-3 Section 14.6.1.1.3" + ::= { dot1qPortVlanStatisticsEntry 6 } + +dot1qPortVlanHCStatisticsTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qPortVlanHCStatisticsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing per port, per VLAN statistics for + traffic on high capacity interfaces." + ::= { dot1qVlan 7 } + +dot1qPortVlanHCStatisticsEntry OBJECT-TYPE + SYNTAX Dot1qPortVlanHCStatisticsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Traffic statistics for a VLAN on a high capacity + interface." + INDEX { dot1dBasePort, dot1qVlanIndex } + ::= { dot1qPortVlanHCStatisticsTable 1 } + +Dot1qPortVlanHCStatisticsEntry ::= + SEQUENCE { + dot1qTpVlanPortHCInFrames + Counter64, + dot1qTpVlanPortHCOutFrames + Counter64, + dot1qTpVlanPortHCInDiscards + Counter64 + } + +dot1qTpVlanPortHCInFrames OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of valid frames received by this port from + its segment which were classified as belonging to this + VLAN. Note that a frame received on this port is + counted by this object if and only if it is for a + protocol being processed by the local forwarding process + for this VLAN. This object includes received bridge + management frames classified as belonging to this VLAN + (e.g. GMRP, but not GVRP or STP)." + REFERENCE + "IEEE 802.1Q/D11 Section 12.6.1.1.3(a)" + ::= { dot1qPortVlanHCStatisticsEntry 1 } + +dot1qTpVlanPortHCOutFrames OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of valid frames transmitted by this port to + its segment from the local forwarding process for this + VLAN. This includes bridge management frames originated + by this device which are classified as belonging to this + VLAN (e.g. GMRP, but not GVRP or STP)." + REFERENCE + "IEEE 802.1Q/D11 Section 12.6.1.1.3(d)" + ::= { dot1qPortVlanHCStatisticsEntry 2 } + +dot1qTpVlanPortHCInDiscards OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of valid frames received by this port from + its segment which were classified as belonging to this + VLAN which were discarded due to VLAN related reasons. + Specifically, the IEEE 802.1Q counters for Discard + Inbound and Discard on Ingress Filtering." + REFERENCE + "IEEE 802.1Q/D11 Section 12.6.1.1.3" + ::= { dot1qPortVlanHCStatisticsEntry 3 } + +-- ------------------------------------------------------------- +-- The VLAN Learning Constraints Table +-- ------------------------------------------------------------- + +dot1qLearningConstraintsTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1qLearningConstraintsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing learning constraints for sets of + Shared and Independendent VLANs." + REFERENCE + "IEEE 802.1Q/D11 Section 12.10.3.1" + ::= { dot1qVlan 8 } + +dot1qLearningConstraintsEntry OBJECT-TYPE + SYNTAX Dot1qLearningConstraintsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A learning constraint defined for a VLAN." + INDEX { dot1qConstraintVlan, dot1qConstraintSet } + ::= { dot1qLearningConstraintsTable 1 } + +Dot1qLearningConstraintsEntry ::= + SEQUENCE { + dot1qConstraintVlan + VlanIndex, + dot1qConstraintSet + INTEGER, + dot1qConstraintType + INTEGER, + dot1qConstraintStatus + RowStatus + } + +dot1qConstraintVlan OBJECT-TYPE + SYNTAX VlanIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index of the row in dot1qVlanCurrentTable for the + VLAN constrained by this entry." + ::= { dot1qLearningConstraintsEntry 1 } + +dot1qConstraintSet OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The identity of the constraint set to which + dot1qConstraintVlan belongs. These values may be chosen + by the management station." + ::= { dot1qLearningConstraintsEntry 2 } + +dot1qConstraintType OBJECT-TYPE + SYNTAX INTEGER { + independent(1), + shared(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of constraint this entry defines. + independent(1) - the VLAN, dot1qConstraintVlan, + uses an independent filtering database from all + other VLANs in the same set, defined by + dot1qConstraintSet. + shared(2) - the VLAN, dot1qConstraintVlan, shares + the same filtering database as all other VLANs + in the same set, defined by dot1qConstraintSet." --- IPI Comments: Not Supported + ::= { dot1qLearningConstraintsEntry 3 } + +dot1qConstraintStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this entry." + ::= { dot1qLearningConstraintsEntry 4 } + +dot1qConstraintSetDefault OBJECT-TYPE + SYNTAX INTEGER (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The identity of the constraint set to which a VLAN + belongs, if there is not an explicit entry for that VLAN + in dot1qLearningConstraintsTable." --- IPI Comments: Not Supported + ::= { dot1qVlan 9 } + +dot1qConstraintTypeDefault OBJECT-TYPE + SYNTAX INTEGER { + independent(1), + shared(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The type of constraint set to which a VLAN belongs, if + there is not an explicit entry for that VLAN in + dot1qLearningConstraintsTable. The types are as defined + for dot1qConstraintType." + ::= { dot1qVlan 10 } + +-- ------------------------------------------------------------- +-- IEEE 802.1Q MIB - Conformance Information +-- ------------------------------------------------------------- + +qBridgeConformance OBJECT IDENTIFIER ::= { qBridgeMIB 2 } + +qBridgeGroups OBJECT IDENTIFIER ::= { qBridgeConformance 1 } + +qBridgeCompliances OBJECT IDENTIFIER + ::= { qBridgeConformance 2 } + +-- ------------------------------------------------------------- +-- units of conformance +-- ------------------------------------------------------------- + +qBridgeBaseGroup OBJECT-GROUP + OBJECTS { + dot1qVlanVersionNumber, + dot1qMaxVlanId, + dot1qMaxSupportedVlans, + dot1qNumVlans, + dot1qGvrpStatus + } + STATUS current + DESCRIPTION + "A collection of objects providing device level control + and status information for the Virtual LAN bridge + services." + ::= { qBridgeGroups 1 } + +qBridgeFdbUnicastGroup OBJECT-GROUP + OBJECTS { + dot1qFdbDynamicCount, + dot1qTpFdbPort, + dot1qTpFdbStatus + } + STATUS current + DESCRIPTION + "A collection of objects providing information about all + unicast addresses, learnt dynamically or statically + configured by management, in each Filtering Database." + ::= { qBridgeGroups 2 } + +qBridgeFdbMulticastGroup OBJECT-GROUP + OBJECTS { + dot1qTpGroupEgressPorts, + dot1qTpGroupLearnt + } + STATUS current + DESCRIPTION + "A collection of objects providing information about all + multicast addresses, learnt dynamically or statically + configured by management, in each Filtering Database." + ::= { qBridgeGroups 3 } + +qBridgeServiceRequirementsGroup OBJECT-GROUP + OBJECTS { + dot1qForwardAllPorts, + dot1qForwardAllStaticPorts, + dot1qForwardAllForbiddenPorts, + dot1qForwardUnregisteredPorts, + dot1qForwardUnregisteredStaticPorts, + dot1qForwardUnregisteredForbiddenPorts + } + STATUS current + DESCRIPTION + "A collection of objects providing information about + service requirements, learnt dynamically or statically + configured by management, in each Filtering Database." + ::= { qBridgeGroups 4 } + +qBridgeFdbStaticGroup OBJECT-GROUP + OBJECTS { + dot1qStaticUnicastAllowedToGoTo, + dot1qStaticUnicastStatus, + dot1qStaticMulticastStaticEgressPorts, + dot1qStaticMulticastForbiddenEgressPorts, + dot1qStaticMulticastStatus + } + STATUS current + DESCRIPTION + "A collection of objects providing information about + unicast and multicast addresses statically configured by + management, in each Filtering Database or VLAN." + ::= { qBridgeGroups 5 } + +qBridgeVlanGroup OBJECT-GROUP + OBJECTS { + dot1qVlanNumDeletes, + dot1qVlanFdbId, + dot1qVlanCurrentEgressPorts, + dot1qVlanCurrentUntaggedPorts, + dot1qVlanStatus, + dot1qVlanCreationTime + } + STATUS current + DESCRIPTION + "A collection of objects providing information about + all VLANs currently configured on this device." + ::= { qBridgeGroups 6 } + +qBridgeVlanStaticGroup OBJECT-GROUP + OBJECTS { + dot1qVlanStaticName, + dot1qVlanStaticEgressPorts, + dot1qVlanForbiddenEgressPorts, + dot1qVlanStaticUntaggedPorts, + dot1qVlanStaticRowStatus, + dot1qNextFreeLocalVlanIndex + } + STATUS current + DESCRIPTION + "A collection of objects providing information about + VLANs statically configured by management." + ::= { qBridgeGroups 7 } + +qBridgePortGroup OBJECT-GROUP + OBJECTS { + dot1qPvid, + dot1qPortAcceptableFrameTypes, + dot1qPortIngressFiltering, + dot1qPortGvrpStatus, + dot1qPortGvrpFailedRegistrations, + dot1qPortGvrpLastPduOrigin + } + STATUS current + DESCRIPTION + "A collection of objects providing port level VLAN + control and status information for all ports." + ::= { qBridgeGroups 8 } + +qBridgeVlanStatisticsGroup OBJECT-GROUP + OBJECTS { + dot1qTpVlanPortInFrames, + dot1qTpVlanPortOutFrames, + dot1qTpVlanPortInDiscards + } + STATUS current + DESCRIPTION + "A collection of objects providing per-port packet + statistics for all VLANs currently configured on this + device." + ::= { qBridgeGroups 9 } + +qBridgeVlanStatisticsOverflowGroup OBJECT-GROUP + OBJECTS { + dot1qTpVlanPortInOverflowFrames, + dot1qTpVlanPortOutOverflowFrames, + dot1qTpVlanPortInOverflowDiscards + } + STATUS current + DESCRIPTION + "A collection of objects providing overflow counters for + per-port packet statistics for all VLANs currently configured + on this device for high capacity interfaces, defined as those + that have the value of the corresponding instance of + ifSpeed greater than 650,000,000 bits/second." + ::= { qBridgeGroups 10 } + +qBridgeVlanHCStatisticsGroup OBJECT-GROUP + OBJECTS { + dot1qTpVlanPortHCInFrames, + dot1qTpVlanPortHCOutFrames, + dot1qTpVlanPortHCInDiscards + } + STATUS current + DESCRIPTION + "A collection of objects providing per-port packet + statistics for all VLANs currently configured on this + device for high capacity interfaces, defined as those + that have the value of the corresponding instance of + ifSpeed greater than 650,000,000 bits/second." + ::= { qBridgeGroups 11 } + +qBridgeLearningConstraintsGroup OBJECT-GROUP + OBJECTS { + dot1qConstraintType, + dot1qConstraintStatus + } + STATUS current + DESCRIPTION + "A collection of objects defining the Filtering Database + constraints all VLANs have with each other." + ::= { qBridgeGroups 12 } + +qBridgeLearningConstraintDefaultGroup OBJECT-GROUP + OBJECTS { + dot1qConstraintSetDefault, + dot1qConstraintTypeDefault + } + STATUS current + DESCRIPTION + "A collection of objects defining the default Filtering + Database constraints for VLANs which have no specific + constraints defined." + ::= { qBridgeGroups 13 } + +-- ------------------------------------------------------------- +-- compliance statements +-- ------------------------------------------------------------- + +qBridgeCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for device support of Virtual + LAN Bridge services." + + MODULE + MANDATORY-GROUPS { + qBridgeBaseGroup, + qBridgeVlanGroup, + qBridgeVlanStaticGroup, + qBridgePortGroup + } + + GROUP qBridgeFdbUnicastGroup + DESCRIPTION + "This group is mandatory for bridges that implement + 802.1Q transparent bridging." + + GROUP qBridgeFdbMulticastGroup + DESCRIPTION + "This group is mandatory for bridges that implement + 802.1Q transparent bridging." + + GROUP qBridgeServiceRequirementsGroup + DESCRIPTION + "This group is mandatory for bridges that implement + extended filtering services. All objects must be + read-write if extended-filtering services are + enabled." + + GROUP qBridgeFdbStaticGroup + DESCRIPTION + "This group is optional." + + GROUP qBridgeVlanStatisticsGroup + DESCRIPTION + "This group is optional as there may be significant + implementation cost associated with its support." + + GROUP qBridgeVlanStatisticsOverflowGroup + DESCRIPTION + "This group is optional as there may be significant + implementation cost associated with its support. It is most + relevant for high capacity interfaces where the SNMP agent + supports only SNMPv1." + + GROUP qBridgeVlanHCStatisticsGroup + DESCRIPTION + "This group is optional as there may be significant + implementation cost associated with its support. It is most + relevant for high capacity interfaces." + + GROUP qBridgeLearningConstraintsGroup + DESCRIPTION + "This group is mandatory for devices implementing + both Independent VLAN Learning (IVL) and Shared + VLAN Learning (SVL) modes of operation of the + filtering database, as defined by IEEE 802.1Q." + + GROUP qBridgeLearningConstraintDefaultGroup + DESCRIPTION + "This group is mandatory for devices implementing + both Independent VLAN Learning (IVL) and Shared + VLAN Learning (SVL) modes of operation of the + filtering database, as defined by IEEE 802.1Q." + + OBJECT dot1qPortAcceptableFrameTypes + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required as this is an optional + capability in IEEE 802.1Q." + + OBJECT dot1qPortIngressFiltering + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required as this is an optional + capability in IEEE 802.1Q." + + OBJECT dot1qConstraintSetDefault + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required as this is an optional + capability in IEEE 802.1Q." + + OBJECT dot1qConstraintTypeDefault + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required as this is an optional + capability in IEEE 802.1Q." + + ::= { qBridgeCompliances 1 } + +END + +-- +-- Copyright (C) The Internet Society (1999). All Rights Reserved. +-- +-- This document and translations of it may be copied and furnished to +-- others, and derivative works that comment on or otherwise explain it +-- or assist in its implementation may be prepared, copied, published +-- and distributed, in whole or in part, without restriction of any +-- kind, provided that the above copyright notice and this paragraph are +-- included on all such copies and derivative works. However, this +-- document itself may not be modified in any way, such as by removing +-- the copyright notice or references to the Internet Society or other +-- Internet organizations, except as needed for the purpose of +-- developing Internet standards in which case the procedures for +-- copyrights defined in the Internet Standards process must be +-- followed, or as required to translate it into languages other than +-- English. +-- +-- The limited permissions granted above are perpetual and will not be +-- revoked by the Internet Society or its successors or assigns. +-- +-- This document and the information contained herein is provided on an +-- "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING +-- TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING +-- BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION +-- HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF +-- MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. +-- + diff --git a/mibs/RSTP-MIB.txt b/mibs/RSTP-MIB.txt new file mode 100644 index 00000000..715a17d5 --- /dev/null +++ b/mibs/RSTP-MIB.txt @@ -0,0 +1,327 @@ +RSTP-MIB DEFINITIONS ::= BEGIN + +-- ------------------------------------------------------------- +-- MIB for IEEE 802.1w Rapid Spanning Tree Protocol +-- ------------------------------------------------------------- + +IMPORTS + + + + MODULE-IDENTITY, OBJECT-TYPE, Integer32, mib-2 + FROM SNMPv2-SMI + TruthValue + FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF + dot1dStp, dot1dStpPortEntry + FROM BRIDGE-MIB; + +rstpMIB MODULE-IDENTITY + LAST-UPDATED "200512070000Z" + ORGANIZATION "IETF Bridge MIB Working Group" + CONTACT-INFO + "Email: Bridge-mib@ietf.org" + DESCRIPTION + "The Bridge MIB Extension module for managing devices + that support the Rapid Spanning Tree Protocol defined + by IEEE 802.1w. + + Copyright (C) The Internet Society (2005). This version of + this MIB module is part of RFC 4318; See the RFC itself for + full legal notices." + + REVISION "200512070000Z" + DESCRIPTION + "The initial version of this MIB module as published in + RFC 4318." + ::= { mib-2 134 } + +-- ---------------------------------------------------------- -- +-- subtrees in the RSTP-MIB +-- ---------------------------------------------------------- -- + +rstpNotifications OBJECT IDENTIFIER ::= { rstpMIB 0 } +rstpObjects OBJECT IDENTIFIER ::= { rstpMIB 1 } +rstpConformance OBJECT IDENTIFIER ::= { rstpMIB 2 } + +-- ------------------------------------------------------------- +-- Addition to the dot1dStp group +-- ------------------------------------------------------------- + +dot1dStpVersion OBJECT-TYPE + SYNTAX INTEGER { + stpCompatible(0), + rstp(2) + } + MAX-ACCESS read-write + STATUS current + + + + DESCRIPTION + "The version of Spanning Tree Protocol the bridge is + currently running. The value 'stpCompatible(0)' + indicates the Spanning Tree Protocol specified in + IEEE 802.1D-1998 and 'rstp(2)' indicates the Rapid + Spanning Tree Protocol specified in IEEE 802.1w and + clause 17 of 802.1D-2004. The values are directly from + the IEEE standard. New values may be defined as future + versions of the protocol become available. + + The value of this object MUST be retained across + reinitializations of the management system." + REFERENCE + "IEEE 802.1w clause 14.8.1, 17.12, 17.16.1" + DEFVAL { rstp } + ::= { dot1dStp 16 } + +dot1dStpTxHoldCount OBJECT-TYPE + SYNTAX Integer32 (1..10) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value used by the Port Transmit state machine to limit + the maximum transmission rate. + + The value of this object MUST be retained across + reinitializations of the management system." + + REFERENCE + "IEEE 802.1w clause 17.16.6" + DEFVAL { 3 } + ::= { dot1dStp 17 } + +-- +-- { dot1dStp 18 } was used to represent dot1dStpPathCostDefault +-- in an earlier version of this MIB. It has since been +-- obsoleted, and should not be used. +-- + +dot1dStpExtPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF Dot1dStpExtPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that contains port-specific Rapid Spanning Tree + information." + ::= { dot1dStp 19 } + + + + +dot1dStpExtPortEntry OBJECT-TYPE + SYNTAX Dot1dStpExtPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of Rapid Spanning Tree information maintained by + each port." + AUGMENTS { dot1dStpPortEntry } + ::= { dot1dStpExtPortTable 1 } + +Dot1dStpExtPortEntry ::= + SEQUENCE { + dot1dStpPortProtocolMigration + TruthValue, + dot1dStpPortAdminEdgePort + TruthValue, + dot1dStpPortOperEdgePort + TruthValue, + dot1dStpPortAdminPointToPoint + INTEGER, + dot1dStpPortOperPointToPoint + TruthValue, + dot1dStpPortAdminPathCost + Integer32 + } + +dot1dStpPortProtocolMigration OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "When operating in RSTP (version 2) mode, writing true(1) + to this object forces this port to transmit RSTP BPDUs. + Any other operation on this object has no effect and + it always returns false(2) when read." + REFERENCE + "IEEE 802.1w clause 14.8.2.4, 17.18.10, 17.26" + ::= { dot1dStpExtPortEntry 1 } + +dot1dStpPortAdminEdgePort OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative value of the Edge Port parameter. A + value of true(1) indicates that this port should be + assumed as an edge-port, and a value of false(2) indicates + that this port should be assumed as a non-edge-port. + + + + Setting this object will also cause the corresponding + instance of dot1dStpPortOperEdgePort to change to the + same value. Note that even when this object's value + is true, the value of the corresponding instance of + dot1dStpPortOperEdgePort can be false if a BPDU has + been received. + + The value of this object MUST be retained across + reinitializations of the management system." + + REFERENCE + "IEEE 802.1t clause 14.8.2, 18.3.3" + ::= { dot1dStpExtPortEntry 2 } + +dot1dStpPortOperEdgePort OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The operational value of the Edge Port parameter. The + object is initialized to the value of the corresponding + instance of dot1dStpPortAdminEdgePort. When the + corresponding instance of dot1dStpPortAdminEdgePort is + set, this object will be changed as well. This object + will also be changed to false on reception of a BPDU." + + REFERENCE + "IEEE 802.1t clause 14.8.2, 18.3.4" + ::= { dot1dStpExtPortEntry 3 } + +dot1dStpPortAdminPointToPoint OBJECT-TYPE + SYNTAX INTEGER { + forceTrue(0), + forceFalse(1), + auto(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative point-to-point status of the LAN segment + attached to this port, using the enumeration values of the + IEEE 802.1w clause. A value of forceTrue(0) indicates + that this port should always be treated as if it is + connected to a point-to-point link. A value of + forceFalse(1) indicates that this port should be treated as + having a shared media connection. A value of auto(2) + indicates that this port is considered to have a + point-to-point link if it is an Aggregator and all of its + + + + members are aggregatable, or if the MAC entity + is configured for full duplex operation, either through + auto-negotiation or by management means. Manipulating this + object changes the underlying adminPortToPortMAC. + + The value of this object MUST be retained across + reinitializations of the management system." + + REFERENCE + "IEEE 802.1w clause 6.4.3, 6.5, 14.8.2" + ::= { dot1dStpExtPortEntry 4 } + +dot1dStpPortOperPointToPoint OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The operational point-to-point status of the LAN segment + attached to this port. It indicates whether a port is + considered to have a point-to-point connection. + If adminPointToPointMAC is set to auto(2), then the value + of operPointToPointMAC is determined in accordance with the + specific procedures defined for the MAC entity concerned, + as defined in IEEE 802.1w, clause 6.5. The value is + determined dynamically; that is, it is re-evaluated whenever + the value of adminPointToPointMAC changes, and whenever + the specific procedures defined for the MAC entity evaluate + a change in its point-to-point status." + REFERENCE + "IEEE 802.1w clause 6.4.3, 6.5, 14.8.2" + ::= { dot1dStpExtPortEntry 5 } + +dot1dStpPortAdminPathCost OBJECT-TYPE + SYNTAX Integer32 (0..200000000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administratively assigned value for the contribution + of this port to the path cost of paths toward the spanning + tree root. + + Writing a value of '0' assigns the automatically calculated + default Path Cost value to the port. If the default Path + Cost is being used, this object returns '0' when read. + + This complements the object dot1dStpPortPathCost or + dot1dStpPortPathCost32, which returns the operational value + of the path cost. + + + + The value of this object MUST be retained across + reinitializations of the management system." + REFERENCE + "IEEE 802.1D-1998: Section 8.5.5.3" + ::= { dot1dStpExtPortEntry 6 } + +-- ------------------------------------------------------------- +-- rstpMIB - Conformance Information +-- ------------------------------------------------------------- + +rstpGroups OBJECT IDENTIFIER ::= { rstpConformance 1 } + +rstpCompliances OBJECT IDENTIFIER ::= { rstpConformance 2 } + +-- ------------------------------------------------------------- +-- Units of conformance +-- ------------------------------------------------------------- + +rstpBridgeGroup OBJECT-GROUP + OBJECTS { + dot1dStpVersion, + dot1dStpTxHoldCount + } + STATUS current + DESCRIPTION + "Rapid Spanning Tree information for the bridge.--IPI Comments: Not Supported" + ::= { rstpGroups 1 } + +rstpPortGroup OBJECT-GROUP + OBJECTS { + dot1dStpPortProtocolMigration, + dot1dStpPortAdminEdgePort, + dot1dStpPortOperEdgePort, + dot1dStpPortAdminPointToPoint, + dot1dStpPortOperPointToPoint, + dot1dStpPortAdminPathCost + } + STATUS current + DESCRIPTION + "Rapid Spanning Tree information for individual ports.--IPI Comments: Not Supported" + ::= { rstpGroups 2 } + +-- ------------------------------------------------------------- +-- Compliance statements +-- ------------------------------------------------------------- + +rstpCompliance MODULE-COMPLIANCE + STATUS current + + + + DESCRIPTION + "The compliance statement for device support of Rapid + Spanning Tree Protocol (RSTP) bridging services.--IPI Comments: Not Supported" + MODULE + MANDATORY-GROUPS { + rstpBridgeGroup, + rstpPortGroup + } + ::= { rstpCompliances 1 } + +END \ No newline at end of file From 65f1464e963df11b636c98d341fd2f99ed2baef8 Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Tue, 5 Jul 2016 09:18:48 +0530 Subject: [PATCH 02/12] OcNOS Ansible Modules/Playbooks --- ansible/ansible.cfg | 230 +++++++++++++++++++++++++ ansible/ebgp-clos.yml | 10 ++ ansible/hosts | 1 + ansible/roles/dhcp/tasks/main.yml | 5 + ansible/roles/dhcp/templates/dhcp.j2 | 19 ++ ansible/roles/dhcp/vars/main.yml | 45 +++++ ansible/roles/leaf/tasks/main.yml | 5 + ansible/roles/leaf/templates/leaf.j2 | 31 ++++ ansible/roles/leaf/vars/main.yml | 102 +++++++++++ ansible/roles/spine/tasks/main.yml | 6 + ansible/roles/spine/templates/spine.j2 | 29 ++++ ansible/roles/spine/vars/main.yml | 102 +++++++++++ 12 files changed, 585 insertions(+) create mode 100644 ansible/ansible.cfg create mode 100644 ansible/ebgp-clos.yml create mode 100644 ansible/hosts create mode 100644 ansible/roles/dhcp/tasks/main.yml create mode 100644 ansible/roles/dhcp/templates/dhcp.j2 create mode 100644 ansible/roles/dhcp/vars/main.yml create mode 100644 ansible/roles/leaf/tasks/main.yml create mode 100644 ansible/roles/leaf/templates/leaf.j2 create mode 100644 ansible/roles/leaf/vars/main.yml create mode 100644 ansible/roles/spine/tasks/main.yml create mode 100644 ansible/roles/spine/templates/spine.j2 create mode 100644 ansible/roles/spine/vars/main.yml diff --git a/ansible/ansible.cfg b/ansible/ansible.cfg new file mode 100644 index 00000000..85eada17 --- /dev/null +++ b/ansible/ansible.cfg @@ -0,0 +1,230 @@ +# config file for ansible -- http://ansible.com/ +# ============================================== + +# nearly all parameters can be overridden in ansible-playbook +# or with command line flags. ansible will read ANSIBLE_CONFIG, +# ansible.cfg in the current working directory, .ansible.cfg in +# the home directory or /etc/ansible/ansible.cfg, whichever it +# finds first + +[defaults] + +# some basic default values... + +inventory = /etc/ansible/hosts +#library = /usr/share/my_modules/ +remote_tmp = $HOME/.ansible/tmp +pattern = * +forks = 5 +poll_interval = 15 +sudo_user = root +#ask_sudo_pass = True +#ask_pass = True +transport = smart +#remote_port = 22 +module_lang = C + +# plays will gather facts by default, which contain information about +# the remote system. +# +# smart - gather by default, but don't regather if already gathered +# implicit - gather by default, turn off with gather_facts: False +# explicit - do not gather by default, must say gather_facts: True +gathering = implicit + +# additional paths to search for roles in, colon separated +#roles_path = /etc/ansible/roles + +# uncomment this to disable SSH key host checking +#host_key_checking = False + +# change this for alternative sudo implementations +sudo_exe = sudo + +# what flags to pass to sudo +#sudo_flags = -H + +# SSH timeout +timeout = 10 + +# default user to use for playbooks if user is not specified +# (/usr/bin/ansible will use current user as default) +#remote_user = root + +# logging is off by default unless this path is defined +# if so defined, consider logrotate +#log_path = /var/log/ansible.log + +# default module name for /usr/bin/ansible +#module_name = command + +# use this shell for commands executed under sudo +# you may need to change this to bin/bash in rare instances +# if sudo is constrained +#executable = /bin/sh + +# if inventory variables overlap, does the higher precedence one win +# or are hash values merged together? The default is 'replace' but +# this can also be set to 'merge'. +#hash_behaviour = replace + +# list any Jinja2 extensions to enable here: +#jinja2_extensions = jinja2.ext.do,jinja2.ext.i18n + +# if set, always use this private key file for authentication, same as +# if passing --private-key to ansible or ansible-playbook +#private_key_file = /path/to/file + +# format of string {{ ansible_managed }} available within Jinja2 +# templates indicates to users editing templates files will be replaced. +# replacing {file}, {host} and {uid} and strftime codes with proper values. +ansible_managed = Ansible managed: {file} modified on %Y-%m-%d %H:%M:%S by {uid} on {host} + +# by default, ansible-playbook will display "Skipping [host]" if it determines a task +# should not be run on a host. Set this to "False" if you don't want to see these "Skipping" +# messages. NOTE: the task header will still be shown regardless of whether or not the +# task is skipped. +#display_skipped_hosts = True + +# by default (as of 1.3), Ansible will raise errors when attempting to dereference +# Jinja2 variables that are not set in templates or action lines. Uncomment this line +# to revert the behavior to pre-1.3. +#error_on_undefined_vars = False + +# by default (as of 1.6), Ansible may display warnings based on the configuration of the +# system running ansible itself. This may include warnings about 3rd party packages or +# other conditions that should be resolved if possible. +# to disable these warnings, set the following value to False: +#system_warnings = True + +# by default (as of 1.4), Ansible may display deprecation warnings for language +# features that should no longer be used and will be removed in future versions. +# to disable these warnings, set the following value to False: +#deprecation_warnings = True + +# (as of 1.8), Ansible can optionally warn when usage of the shell and +# command module appear to be simplified by using a default Ansible module +# instead. These warnings can be silenced by adjusting the following +# setting or adding warn=yes or warn=no to the end of the command line +# parameter string. This will for example suggest using the git module +# instead of shelling out to the git command. +# command_warnings = False + + +# set plugin path directories here, separate with colons +action_plugins = /usr/share/ansible_plugins/action_plugins +callback_plugins = /usr/share/ansible_plugins/callback_plugins +connection_plugins = /usr/share/ansible_plugins/connection_plugins +lookup_plugins = /usr/share/ansible_plugins/lookup_plugins +vars_plugins = /usr/share/ansible_plugins/vars_plugins +filter_plugins = /usr/share/ansible_plugins/filter_plugins + +# by default callbacks are not loaded for /bin/ansible, enable this if you +# want, for example, a notification or logging callback to also apply to +# /bin/ansible runs +#bin_ansible_callbacks = False + + +# don't like cows? that's unfortunate. +# set to 1 if you don't want cowsay support or export ANSIBLE_NOCOWS=1 +#nocows = 1 + +# don't like colors either? +# set to 1 if you don't want colors, or export ANSIBLE_NOCOLOR=1 +#nocolor = 1 + +# the CA certificate path used for validating SSL certs. This path +# should exist on the controlling node, not the target nodes +# common locations: +# RHEL/CentOS: /etc/pki/tls/certs/ca-bundle.crt +# Fedora : /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem +# Ubuntu : /usr/share/ca-certificates/cacert.org/cacert.org.crt +#ca_file_path = + +# the http user-agent string to use when fetching urls. Some web server +# operators block the default urllib user agent as it is frequently used +# by malicious attacks/scripts, so we set it to something unique to +# avoid issues. +#http_user_agent = ansible-agent + +# if set to a persistent type (not 'memory', for example 'redis') fact values +# from previous runs in Ansible will be stored. This may be useful when +# wanting to use, for example, IP information from one group of servers +# without having to talk to them in the same playbook run to get their +# current IP information. +fact_caching = memory + + +# retry files +#retry_files_enabled = False +#retry_files_save_path = ~/.ansible-retry + +[privilege_escalation] +#become=True +#become_method='sudo' +#become_user='root' +#become_ask_pass=False + +[paramiko_connection] + +# uncomment this line to cause the paramiko connection plugin to not record new host +# keys encountered. Increases performance on new host additions. Setting works independently of the +# host key checking setting above. +#record_host_keys=False + +# by default, Ansible requests a pseudo-terminal for commands executed under sudo. Uncomment this +# line to disable this behaviour. +#pty=False + +[ssh_connection] + +# ssh arguments to use +# Leaving off ControlPersist will result in poor performance, so use +# paramiko on older platforms rather than removing it +#ssh_args = -o ControlMaster=auto -o ControlPersist=60s + +# The path to use for the ControlPath sockets. This defaults to +# "%(directory)s/ansible-ssh-%%h-%%p-%%r", however on some systems with +# very long hostnames or very long path names (caused by long user names or +# deeply nested home directories) this can exceed the character limit on +# file socket names (108 characters for most platforms). In that case, you +# may wish to shorten the string below. +# +# Example: +# control_path = %(directory)s/%%h-%%r +#control_path = %(directory)s/ansible-ssh-%%h-%%p-%%r + +# Enabling pipelining reduces the number of SSH operations required to +# execute a module on the remote server. This can result in a significant +# performance improvement when enabled, however when using "sudo:" you must +# first disable 'requiretty' in /etc/sudoers +# +# By default, this option is disabled to preserve compatibility with +# sudoers configurations that have requiretty (the default on many distros). +# +#pipelining = False + +# if True, make ansible use scp if the connection type is ssh +# (default is sftp) +#scp_if_ssh = True + +[accelerate] +accelerate_port = 5099 +accelerate_timeout = 30 +accelerate_connect_timeout = 5.0 + +# The daemon timeout is measured in minutes. This time is measured +# from the last activity to the accelerate daemon. +accelerate_daemon_timeout = 30 + +# If set to yes, accelerate_multi_key will allow multiple +# private keys to be uploaded to it, though each user must +# have access to the system via SSH to add a new key. The default +# is "no". +#accelerate_multi_key = yes + +[selinux] +# file systems that require special treatment when dealing with security context +# the default behaviour that copies the existing context or uses the user default +# needs to be changed to use the file system dependant context. +#special_context_filesystems=nfs,vboxsf,fuse diff --git a/ansible/ebgp-clos.yml b/ansible/ebgp-clos.yml new file mode 100644 index 00000000..398fef46 --- /dev/null +++ b/ansible/ebgp-clos.yml @@ -0,0 +1,10 @@ +--- +- name: Build EBGP CLOS IP Topology + gather_facts: no + hosts: localhost + + roles: + - dhcp + - leaf + - spine + diff --git a/ansible/hosts b/ansible/hosts new file mode 100644 index 00000000..2302edae --- /dev/null +++ b/ansible/hosts @@ -0,0 +1 @@ +localhost ansible_connection=local diff --git a/ansible/roles/dhcp/tasks/main.yml b/ansible/roles/dhcp/tasks/main.yml new file mode 100644 index 00000000..531731df --- /dev/null +++ b/ansible/roles/dhcp/tasks/main.yml @@ -0,0 +1,5 @@ +--- +- name: Generate DHCP Configuration files + template: src={{ item.profile }}.j2 dest=/tmp/dhcpd.conf + with_items: + dhcp_segment diff --git a/ansible/roles/dhcp/templates/dhcp.j2 b/ansible/roles/dhcp/templates/dhcp.j2 new file mode 100644 index 00000000..f4755cf4 --- /dev/null +++ b/ansible/roles/dhcp/templates/dhcp.j2 @@ -0,0 +1,19 @@ +default-lease-time 600; +max-lease-time 7200; +option subnet-mask 255.255.255.0; +option broadcast-address 10.10.100.255; +option routers 10.10.100.250; +option default-url "http://10.10.100.250/images/DELL_S6000_ON-OcNOS-1.2.0.199-DC_MPLS-S0-P0-installer"; + +subnet 10.10.100.0 netmask 255.255.255.0 { +range 10.10.100.1 10.10.100.200; +{% for items in item.devices %} + host {{items.hostname}} { + hardware ethernet {{ items.mac_address }}; + fixed-address {{ items.fixed_address }}; + option ocnos-license-url "{{items.license_url}}"; + option ocnos-provision-url "{{items.provision_url}}"; + } + +{% endfor %} +} diff --git a/ansible/roles/dhcp/vars/main.yml b/ansible/roles/dhcp/vars/main.yml new file mode 100644 index 00000000..8fd9c576 --- /dev/null +++ b/ansible/roles/dhcp/vars/main.yml @@ -0,0 +1,45 @@ +--- +dhcp_segment: + - topology: ebgp_ip_clos_topology + profile: dhcp + devices: + - hostname: Leaf_01_device + mac_address: ec:f4:bb:fd:5b:85 + fixed_address: 10.10.100.5 + license_url: http://10.10.100.250/licenses/leaf01_license.bin + provision_url: http://10.10.100.250/configs/leaf-01.conf + - hostname: Leaf_02_device + mac_address: ec:f4:bb:fd:5b:86 + fixed_address: 10.10.100.6 + license_url: http://10.10.100.250/licenses/leaf02_license.bin + provision_url: http://10.10.100.250/configs/leaf-02.conf + - hostname: Leaf_03_device + mac_address: ec:f4:bb:fd:5b:87 + fixed_address: 10.10.100.7 + license_url: http://10.10.100.250/licenses/leaf03_license.bin + provision_url: http://10.10.100.250/configs/leaf-03.conf + - hostname: Leaf_04_device + mac_address: ec:f4:bb:fd:5b:88 + fixed_address: 10.10.100.8 + license_url: http://10.10.100.250/licenses/leaf04_license.bin + provision_url: http://10.10.100.250/configs/leaf-04.conf + - hostname: Spine_01_device + mac_address: ec:f4:bb:fd:5b:81 + fixed_address: 10.10.100.1 + license_url: http://10.10.100.250/licenses/spine01_license.bin + provision_url: http://10.10.100.250/configs/spine-01.conf + - hostname: Spine_02_device + mac_address: ec:f4:bb:fd:5b:82 + fixed_address: 10.10.100.2 + license_url: http://10.10.100.250/licenses/spine02_license.bin + provision_url: http://10.10.100.250/configs/spine-02.conf + - hostname: Spine_03_device + mac_address: ec:f4:bb:fd:5b:83 + fixed_address: 10.10.100.3 + license_url: http://10.10.100.250/licenses/spine03_license.bin + provision_url: http://10.10.100.250/configs/spine-03.conf + - hostname: Spine_04_device + mac_address: ec:f4:bb:fd:5b:84 + fixed_address: 10.10.100.4 + license_url: http://10.10.100.250/licenses/spine04_license.bin + provision_url: http://10.10.100.250/configs/spine-04.conf diff --git a/ansible/roles/leaf/tasks/main.yml b/ansible/roles/leaf/tasks/main.yml new file mode 100644 index 00000000..3092a1be --- /dev/null +++ b/ansible/roles/leaf/tasks/main.yml @@ -0,0 +1,5 @@ +--- +- name: Generate Leaf configuration files + template: src={{ item.profile}}.j2 dest=/tmp/configs/{{item.hostname}}.conf + with_items: + switches diff --git a/ansible/roles/leaf/templates/leaf.j2 b/ansible/roles/leaf/templates/leaf.j2 new file mode 100644 index 00000000..74c2ce5f --- /dev/null +++ b/ansible/roles/leaf/templates/leaf.j2 @@ -0,0 +1,31 @@ +! +hostname {{item.hostname|upper}} +! +interface lo + ip address 127.0.0.1/8 + ip address {{item.loopback}} secondary + ipv6 address ::1/128 +! +{% for links in item.links %} +interface {{links.leaf_port}} + description uplink to Spine Switch {{links.spine_switch}} + ip address {{links.leaf_port_local_ip}}/31 +! +{% endfor %} +! +router bgp {{item.local_ASN}} + bgp bestpath as-path multipath-relax + max-paths ebgp 16 + network {{item.loopback}} mask 255.255.255.255 +{% for links in item.links %} + neighbor {{links.spine_port_remote_ip}} remote-as {{links.remote_ASN}} +{% endfor %}} +! +line con 0 + login +line vty 0 871 + exec-timeout 0 0 + login +! +end + diff --git a/ansible/roles/leaf/vars/main.yml b/ansible/roles/leaf/vars/main.yml new file mode 100644 index 00000000..f9bba506 --- /dev/null +++ b/ansible/roles/leaf/vars/main.yml @@ -0,0 +1,102 @@ +--- +switches: + - hostname: leaf-01 + profile: leaf + loopback: 5.5.5.5 + local_ASN: 65412 + links: + - leaf_port: xe1/1 + spine_switch: Spine-01 + leaf_port_local_ip: 192.168.15.1 + spine_port_remote_ip: 192.168.15.0 + remote_ASN: 65501 + - leaf_port: xe1/2 + spine_switch: Spine-02 + leaf_port_local_ip: 192.168.25.1 + spine_port_remote_ip: 192.168.25.0 + remote_ASN: 65502 + - leaf_port: xe1/3 + spine_switch: Spine-03 + leaf_port_local_ip: 192.168.35.1 + spine_port_remote_ip: 192.168.35.0 + remote_ASN: 65503 + - leaf_port: xe1/4 + spine_switch: Spine-04 + leaf_port_local_ip: 192.168.45.1 + spine_port_remote_ip: 192.168.45.0 + remote_ASN: 65504 + - hostname: leaf-02 + profile: leaf + loopback: 6.6.6.6 + local_ASN: 65413 + links: + - leaf_port: xe1/1 + spine_switch: Spine-01 + leaf_port_local_ip: 192.168.16.1 + spine_port_remote_ip: 192.168.16.0 + remote_ASN: 65501 + - leaf_port: xe1/2 + spine_switch: Spine-02 + leaf_port_local_ip: 192.168.26.1 + spine_port_remote_ip: 192.168.26.0 + remote_ASN: 65502 + - leaf_port: xe1/3 + spine_switch: Spine-03 + leaf_port_local_ip: 192.168.36.1 + spine_port_remote_ip: 192.168.36.0 + remote_ASN: 65503 + - leaf_port: xe1/4 + spine_switch: Spine-04 + leaf_port_local_ip: 192.168.46.1 + spine_port_remote_ip: 192.168.46.0 + remote_ASN: 65504 + - hostname: leaf-03 + profile: leaf + loopback: 7.7.7.7 + local_ASN: 65414 + links: + - leaf_port: xe1/1 + spine_switch: Spine-01 + leaf_port_local_ip: 192.168.17.1 + spine_port_remote_ip: 192.168.17.0 + remote_ASN: 65501 + - leaf_port: xe1/2 + spine_switch: Spine-02 + leaf_port_local_ip: 192.168.27.1 + spine_port_remote_ip: 192.168.27.0 + remote_ASN: 65502 + - leaf_port: xe1/3 + spine_switch: Spine-03 + leaf_port_local_ip: 192.168.37.1 + spine_port_remote_ip: 192.168.37.0 + remote_ASN: 65503 + - leaf_port: xe1/4 + spine_switch: Spine-04 + leaf_port_local_ip: 192.168.47.1 + spine_port_remote_ip: 192.168.47.0 + remote_ASN: 65504 + - hostname: leaf-04 + profile: leaf + loopback: 8.8.8.8 + local_ASN: 65415 + links: + - leaf_port: xe1/1 + spine_switch: Spine-01 + leaf_port_local_ip: 192.168.18.1 + spine_port_remote_ip: 192.168.18.0 + remote_ASN: 65501 + - leaf_port: xe1/2 + spine_switch: Spine-02 + leaf_port_local_ip: 192.168.28.1 + spine_port_remote_ip: 192.168.28.0 + remote_ASN: 65502 + - leaf_port: xe1/3 + spine_switch: Spine-03 + leaf_port_local_ip: 192.168.38.1 + spine_port_remote_ip: 192.168.38.0 + remote_ASN: 65503 + - leaf_port: xe1/4 + spine_switch: Spine-04 + leaf_port_local_ip: 192.168.48.1 + spine_port_remote_ip: 192.168.48.0 + remote_ASN: 65504 diff --git a/ansible/roles/spine/tasks/main.yml b/ansible/roles/spine/tasks/main.yml new file mode 100644 index 00000000..df2f27cd --- /dev/null +++ b/ansible/roles/spine/tasks/main.yml @@ -0,0 +1,6 @@ +--- +- name: Generate Spine Configuration files + template: src={{ item.profile }}.j2 dest=/tmp/configs/{{ item.hostname }}.conf + with_items: + switches + diff --git a/ansible/roles/spine/templates/spine.j2 b/ansible/roles/spine/templates/spine.j2 new file mode 100644 index 00000000..0a391fbe --- /dev/null +++ b/ansible/roles/spine/templates/spine.j2 @@ -0,0 +1,29 @@ +! +hostname {{item.hostname|upper}} +! +interface lo + ip address 127.0.0.1/8 + ip address {{item.loopback}} secondary + ipv6 address ::1/128 +! +{% for links in item.links %} +interface {{links.spine_port}} + description downlink to Leaf Switch {{links.leaf_switch}} + ip address {{links.spine_port_local_ip}}/31 +! +{% endfor %} +! +router bgp {{item.local_ASN}} + bgp bestpath as-path multipath-relax + max-paths ebgp 16 +{% for links in item.links %} + neighbor {{links.leaf_port_remote_ip}} remote-as {{links.remote_ASN}} +{% endfor %}} +! +line con 0 + login +line vty 0 871 + exec-timeout 0 0 + login +! +end diff --git a/ansible/roles/spine/vars/main.yml b/ansible/roles/spine/vars/main.yml new file mode 100644 index 00000000..583e20b7 --- /dev/null +++ b/ansible/roles/spine/vars/main.yml @@ -0,0 +1,102 @@ +--- +switches: + - hostname: Spine-01 + profile: spine + loopback: 1.1.1.1 + local_ASN: 65501 + links: + - spine_port: xe1/1 + leaf_switch: Leaf-01 + spine_port_local_ip: 192.168.15.0 + leaf_port_remote_ip: 192.168.15.1 + remote_ASN: 65412 + - spine_port: xe1/2 + leaf_switch: Leaf-02 + spine_port_local_ip: 192.168.16.0 + leaf_port_remote_ip: 192.168.16.1 + remote_ASN: 65413 + - spine_port: xe1/3 + leaf_switch: Leaf-03 + spine_port_local_ip: 192.168.17.0 + leaf_port_remote_ip: 192.168.17.1 + remote_ASN: 65414 + - spine_port: xe1/4 + leaf_switch: Leaf-04 + spine_port_local_ip: 192.168.18.0 + leaf_port_remote_ip: 192.168.18.1 + remote_ASN: 65415 + - hostname: Spine-02 + profile: spine + loopback: 2.2.2.2 + local_ASN: 65502 + links: + - spine_port: xe1/1 + leaf_switch: Leaf-01 + spine_port_local_ip: 192.168.25.0 + leaf_port_remote_ip: 192.168.25.1 + remote_ASN: 65412 + - spine_port: xe1/2 + leaf_switch: Leaf-02 + spine_port_local_ip: 192.168.26.0 + leaf_port_remote_ip: 192.168.26.1 + remote_ASN: 65413 + - spine_port: xe1/3 + leaf_switch: Leaf-03 + spine_port_local_ip: 192.168.27.0 + leaf_port_remote_ip: 192.168.27.1 + remote_ASN: 65414 + - spine_port: xe1/4 + leaf_switch: Leaf-04 + spine_port_local_ip: 192.168.28.0 + leaf_port_remote_ip: 192.168.28.1 + remote_ASN: 65415 + - hostname: Spine-03 + profile: spine + loopback: 3.3.3.3 + local_ASN: 65503 + links: + - spine_port: xe1/1 + leaf_switch: Leaf-01 + spine_port_local_ip: 192.168.35.0 + leaf_port_remote_ip: 192.168.35.1 + remote_ASN: 65412 + - spine_port: xe1/2 + leaf_switch: Leaf-02 + spine_port_local_ip: 192.168.36.0 + leaf_port_remote_ip: 192.168.36.1 + remote_ASN: 65413 + - spine_port: xe1/3 + leaf_switch: Leaf-03 + spine_port_local_ip: 192.168.37.0 + leaf_port_remote_ip: 192.168.37.1 + remote_ASN: 65414 + - spine_port: xe1/4 + leaf_switch: Leaf-04 + spine_port_local_ip: 192.168.38.0 + leaf_port_remote_ip: 192.168.38.1 + remote_ASN: 65415 + - hostname: Spine-04 + profile: spine + loopback: 4.4.4.4 + local_ASN: 65504 + links: + - spine_port: xe1/1 + leaf_switch: Leaf-01 + spine_port_local_ip: 192.168.45.0 + leaf_port_remote_ip: 192.168.45.1 + remote_ASN: 65412 + - spine_port: xe1/2 + leaf_switch: Leaf-02 + spine_port_local_ip: 192.168.46.0 + leaf_port_remote_ip: 192.168.46.1 + remote_ASN: 65413 + - spine_port: xe1/3 + leaf_switch: Leaf-03 + spine_port_local_ip: 192.168.47.0 + leaf_port_remote_ip: 192.168.47.1 + remote_ASN: 65414 + - spine_port: xe1/4 + leaf_switch: Leaf-04 + spine_port_local_ip: 192.168.48.0 + leaf_port_remote_ip: 192.168.48.1 + remote_ASN: 65415 From 4fb6ae925a6920f07ba5fc2fea32fef6a947967e Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Wed, 6 Jul 2016 08:54:57 +0530 Subject: [PATCH 03/12] Updated SNMP MIBs --- mibs/{BRIDGE.txt => BRIDGE-MIB.txt} | 0 mibs/CMM-CHASSIS-MIB.txt | 1987 ++++++++++++ mibs/IPMCAST-MIB.txt | 2519 +++++++++++++++ mibs/ISIS-MIB.txt | 4581 +++++++++++++++++++++++++++ mibs/LLDP-MIB.txt | 2032 ++++++++++++ mibs/MGMD-STD-MIB.txt | 1656 ++++++++++ mibs/MPLS-FTN-STD-MIB.txt | 1086 +++++++ mibs/MPLS-LDP-STD-MIB.txt | 2547 +++++++++++++++ mibs/MPLS-LSR-STD-MIB.txt | 2232 +++++++++++++ mibs/MPLS-TE-STD-MIB.txt | 2631 +++++++++++++++ mibs/OSPF-MIB.txt | 4398 +++++++++++++++++++++++++ mibs/OSPFV3-MIB.txt | 4075 ++++++++++++++++++++++++ mibs/PIM-STD-MIB.txt | 3967 +++++++++++++++++++++++ mibs/PW-ENET-STD-MIB.txt | 504 +++ mibs/PW-MPLS-STD-MIB.txt | 951 ++++++ mibs/PW-STD-MIB.txt | 2511 +++++++++++++++ mibs/RIPv2-MIB.txt | 530 ++++ mibs/VRRPV3-MIB.txt | 976 ++++++ 18 files changed, 39183 insertions(+) rename mibs/{BRIDGE.txt => BRIDGE-MIB.txt} (100%) create mode 100644 mibs/CMM-CHASSIS-MIB.txt create mode 100644 mibs/IPMCAST-MIB.txt create mode 100644 mibs/ISIS-MIB.txt create mode 100644 mibs/LLDP-MIB.txt create mode 100644 mibs/MGMD-STD-MIB.txt create mode 100644 mibs/MPLS-FTN-STD-MIB.txt create mode 100644 mibs/MPLS-LDP-STD-MIB.txt create mode 100644 mibs/MPLS-LSR-STD-MIB.txt create mode 100644 mibs/MPLS-TE-STD-MIB.txt create mode 100644 mibs/OSPF-MIB.txt create mode 100644 mibs/OSPFV3-MIB.txt create mode 100644 mibs/PIM-STD-MIB.txt create mode 100644 mibs/PW-ENET-STD-MIB.txt create mode 100644 mibs/PW-MPLS-STD-MIB.txt create mode 100644 mibs/PW-STD-MIB.txt create mode 100644 mibs/RIPv2-MIB.txt create mode 100644 mibs/VRRPV3-MIB.txt diff --git a/mibs/BRIDGE.txt b/mibs/BRIDGE-MIB.txt similarity index 100% rename from mibs/BRIDGE.txt rename to mibs/BRIDGE-MIB.txt diff --git a/mibs/CMM-CHASSIS-MIB.txt b/mibs/CMM-CHASSIS-MIB.txt new file mode 100644 index 00000000..016ec1e5 --- /dev/null +++ b/mibs/CMM-CHASSIS-MIB.txt @@ -0,0 +1,1987 @@ + CMM-CHASSIS-MIB DEFINITIONS ::= BEGIN + + -- This module provides authoritative definitions for cmm modules + -- + -- This module will be extended, as needed. + -- + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, + Gauge32, Counter32, INTEGER, Unsigned32, + TimeTicks, NOTIFICATION-TYPE + FROM SNMPv2-SMI + DateAndTime, DisplayString, + MacAddress, RowStatus, TEXTUAL-CONVENTION + FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF + MODULE-IDENTITY,enterprises, + OBJECT-IDENTITY + FROM SNMPv2-SMI; + + + ipi MODULE-IDENTITY + LAST-UPDATED "201603301200Z" -- Mar 30, 2016 12:00:00 GMT + ORGANIZATION + "IPI." + CONTACT-INFO + "ipinfusion.com" + + DESCRIPTION + "The Structure of CMM Management Information for + the IPI enterprise." + + ::= { enterprises 36673 } -- assigned by IANA + + CmmChassisMib MODULE-IDENTITY + LAST-UPDATED "201603301130Z" -- Mar 30, 2016 11:30:00 GMT + ORGANIZATION "IP Infusion" + CONTACT-INFO "www.ipinfusion.com" + DESCRIPTION + "IPI CMM Chassis MIB. " + ::= { ipi 100 } + + + -- ### Groups ### + + CmmChassisObject OBJECT IDENTIFIER ::={ CmmChassisMib 1 } + cmmObjects OBJECT IDENTIFIER ::={ CmmChassisObject 1 } + cmmSysObjects OBJECT IDENTIFIER ::={ CmmChassisObject 2 } + cmmAlarmObjects OBJECT IDENTIFIER ::={ CmmChassisObject 3 } + + -- ### Textual Convention + + CodeType ::= TEXTUAL-CONVENTION + DISPLAY-HINT "x" + STATUS current + DESCRIPTION + "The code type value for a given unit, + displayed in hexadecimal." + SYNTAX Unsigned32 + + UnitType ::= TEXTUAL-CONVENTION + DISPLAY-HINT "x" + STATUS current + DESCRIPTION + "The unit type value for a given unit, + displayed in hexadecimal." + SYNTAX Unsigned32 + + -- ### Chassis Information + + cmmhNumStackUnits OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of stack units configured + on the chassis." + ::= { cmmObjects 1 } + + + + -- ### Chassis System ### + + + -- ## StackUnit Table + + -- The Cmm chassis is a single virtual system to + -- have the stackable units as virtual slots. + -- In the chassis, there can be multiple physical units + -- stacked together. + + -- The StackUnit table contains the management information + -- of each stacked unit in the chassis. + + cmmStackUnitTable OBJECT-TYPE + SYNTAX SEQUENCE OF CmmStackUnitEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of stack units configured in the chassis. + The StackUnit table contains the management + information of each stacked unit in the chassis. + " + ::= { cmmSysObjects 1 } + + cmmStackUnitEntry OBJECT-TYPE + SYNTAX CmmStackUnitEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of units entries containing information + for each stacked unit." + INDEX { cmmStackUnitIndex } + ::= { cmmStackUnitTable 1 } + CmmStackUnitEntry ::= + SEQUENCE { + cmmStackUnitIndex INTEGER, + cmmStackUnitModelName DisplayString, + cmmStackUnitSerialNumber DisplayString, + cmmStackUnitUpTime DisplayString, + cmmStackUnitMfgDate DisplayString, + cmmStackUnitMacAddress MacAddress, + cmmStackUnitPartNum DisplayString, + cmmStackLabelRevision DisplayString, + cmmStackUnitCountryCode OCTET STRING, + cmmStackUnitNum10GigEtherPorts INTEGER, + cmmStackUnitNumGigEtherPorts INTEGER, + cmmStackUnitNumFastEtherPorts INTEGER, + cmmStackUnitNumFanTrays INTEGER, + cmmStackUnitNumPowerSupplies INTEGER, + cmmStackUnitNumPluggableModules INTEGER, + cmmStackUnitNum40GigEtherPorts INTEGER, + cmmStackUnitServiceTag DisplayString, + cmmStackPlatformName DisplayString, + cmmStackOnieVersion DisplayString, + cmmStackMfg DisplayString, + cmmStackVendorName DisplayString, + cmmStackDiagVersion DisplayString, + cmmStackCrc32 DisplayString + + } + + cmmStackUnitIndex OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The unique index for this entry. + Refer to the object cmmStackUnitIndexNext." + ::= { cmmStackUnitEntry 1 } + + cmmStackUnitModelName OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The plugged-in model ID for this unit." + ::= { cmmStackUnitEntry 2 } + + cmmStackUnitSerialNumber OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unit's serial number." + ::= { cmmStackUnitEntry 3 } + + cmmStackUnitUpTime OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The system up time of the unit." + ::= { cmmStackUnitEntry 4 } + + cmmStackUnitMfgDate OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (8 | 11)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The date the unit is manufactured." + ::= { cmmStackUnitEntry 5 } + + cmmStackUnitMacAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A 6-octet MAC Address assigned + to this unit." + ::= { cmmStackUnitEntry 6 } + + cmmStackUnitPartNum OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unit part number" + ::= { cmmStackUnitEntry 7 } + + cmmStackLabelRevision OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unit's label Revesion" + ::= { cmmStackUnitEntry 8 } + + + cmmStackUnitCountryCode OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (2)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unit manufacturer's country + code" + ::= { cmmStackUnitEntry 9 } + + cmmStackUnitNum10GigEtherPorts OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of 10G Ethernet/802.3 interfaces + in this unit." + ::= { cmmStackUnitEntry 10 } + + cmmStackUnitNumGigEtherPorts OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of 1G Ethernet/802.3 interfaces + in this unit." + ::= { cmmStackUnitEntry 11 } + + cmmStackUnitNumFastEtherPorts OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of 10/100 Ethernet/802.3 interfaces + in this unit." + ::= { cmmStackUnitEntry 12 } + + cmmStackUnitNumFanTrays OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of fan trays + on the unit." + ::= { cmmStackUnitEntry 13 } + + cmmStackUnitNumPowerSupplies OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of power supplies available + to the unit." + ::= { cmmStackUnitEntry 14 } + + cmmStackUnitNumPluggableModules OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of pluggable modules + in the stack." + ::= { cmmStackUnitEntry 15 } + + cmmStackUnitNum40GigEtherPorts OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of 40G Ethernet/802.3 interfaces + in this unit." + ::= { cmmStackUnitEntry 16 } + + cmmStackUnitServiceTag OBJECT-TYPE + SYNTAX DisplayString (SIZE (0..7)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unit's service tag." + ::= { cmmStackUnitEntry 17 } + + cmmStackPlatformName OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unit's Platform Name." + ::= { cmmStackUnitEntry 18 } + + cmmStackOnieVersion OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unit's ONIE Version." + ::= { cmmStackUnitEntry 19 } + + cmmStackMfg OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unit's Manufacturer Name." + ::= { cmmStackUnitEntry 20 } + + cmmStackVendorName OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unit's Vendor Name." + ::= { cmmStackUnitEntry 21 } + + cmmStackDiagVersion OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unit's Diagnostic Version." + ::= { cmmStackUnitEntry 22 } + + cmmStackCrc32 OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unit's Cyclic Redundancy Check 32 Bit value." + ::= { cmmStackUnitEntry 23 } + + + + -- ## Port Entry + cmmSysPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF CmmSysPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of power supply resident + in the chassis." + ::= { cmmSysObjects 2 } + + cmmSysPortEntry OBJECT-TYPE + SYNTAX CmmSysPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A port entry containing objects for a + particular port." + INDEX { cmmStackUnitIndex, + cmmSysPortIndex } + ::= { cmmSysPortTable 1 } + + CmmSysPortEntry ::= + SEQUENCE { + cmmSysPortIndex INTEGER, + cmmSysPortType DisplayString, + cmmSysidentifier DisplayString, + cmmSysextendedidentifier DisplayString, + cmmSysconnectortype DisplayString, + cmmSystransceivercode DisplayString, + cmmSysencoding DisplayString, + cmmSysnominalbitrate INTEGER, + cmmSyslengthkmtrs INTEGER, + cmmSyslengthmtrs INTEGER, + cmmSyslengthom1 INTEGER, + cmmSyslengthom2 INTEGER, + cmmSyslengthom3 INTEGER, + cmmSysvendorname DisplayString, + cmmSysvendoroui DisplayString, + cmmSysvendorpartnumber DisplayString, + cmmSysvendorrevision DisplayString, + cmmSyscheckcode DisplayString, + cmmSysbitratemax INTEGER, + cmmSysbitratemin INTEGER, + cmmSysvendorserialnumber DisplayString, + cmmSysdatecode DisplayString, + cmmSysddmtype DisplayString, + cmmSyscheckcodeextended DisplayString, + cmmSysrxpower0 INTEGER, + cmmSysrxpower1 INTEGER, + cmmSysrxpower2 INTEGER, + cmmSysrxpower3 INTEGER, + cmmSysrxpower4 INTEGER, + cmmSyslaserbiasslope INTEGER, + cmmSyslaserbiasoffset INTEGER, + cmmSystxpowerslope INTEGER, + cmmSystxpoweroffset INTEGER, + cmmSystempslope INTEGER, + cmmSystempoffset INTEGER, + cmmSysvoltageslope INTEGER, + cmmSysvoltageoffset INTEGER, + cmmSysTemperature DisplayString, + cmmSysVoltage DisplayString, + cmmSysLaserBiasCurrent DisplayString, + cmmSysTxOutputPower DisplayString, + cmmSysRxInputPower DisplayString, + } + + cmmSysPortIndex OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A unique index for each slot within the unit. + " + ::= { cmmSysPortEntry 1 } + + cmmSysPortType OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of port in the unit." + ::= { cmmSysPortEntry 2 } + + cmmSysidentifier OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Type of transceiver + " + + ::= { cmmSysPortEntry 3 } + + cmmSysextendedidentifier OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Extended identifier of type of transceiver + " + + ::= { cmmSysPortEntry 4 } + + + cmmSysconnectortype OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Code for connector type + " + + ::= { cmmSysPortEntry 5 } + + cmmSystransceivercode OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Code for electronic or optical compatibility + " + + ::= { cmmSysPortEntry 6 } + + cmmSysencoding OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Code for high speed serial encoding algorithm + " + + ::= { cmmSysPortEntry 7 } + + cmmSysnominalbitrate OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Nominal signalling rate, units of 100MBd. + " + + ::= { cmmSysPortEntry 8 } + + + cmmSyslengthkmtrs OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Link length supported for single mode fiber, units of km + " + + ::= { cmmSysPortEntry 9 } + + cmmSyslengthmtrs OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Link length supported for single mode fiber, units of 100 m + " + + ::= { cmmSysPortEntry 10 } + + cmmSyslengthom1 OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Link length supported for 62.5 um OM1 fiber, units of 10 m + " + + ::= { cmmSysPortEntry 11 } + + cmmSyslengthom2 OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Link length supported for 50 um OM2 fiber, units of 10 m + " + + ::= { cmmSysPortEntry 12 } + + + cmmSyslengthom3 OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Link length supported for 50 um OM3 fiber, units of 10 m + " + + ::= { cmmSysPortEntry 13 } + + + cmmSysvendorname OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + SFP vendor name + " + + ::= { cmmSysPortEntry 14 } + + + cmmSysvendoroui OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + SFP vendor IEEE company ID + " + + ::= { cmmSysPortEntry 15 } + + + cmmSysvendorpartnumber OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Part number provided by SFP vendor + " + + ::= { cmmSysPortEntry 16 } + + cmmSysvendorrevision OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Revision level for part number provided by vendor + " + + ::= { cmmSysPortEntry 17 } + + + cmmSyscheckcode OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Check code for Base ID Fields + " + + ::= { cmmSysPortEntry 18 } + + + + cmmSysbitratemax OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Upper bit rate margin, units of % + " + + ::= { cmmSysPortEntry 19 } + + cmmSysbitratemin OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Lower bit rate margin, units of % + " + + ::= { cmmSysPortEntry 20 } + + cmmSysvendorserialnumber OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Serial number provided by vendor + " + + ::= { cmmSysPortEntry 21 } + + cmmSysdatecode OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Vendor's manufacturing date code + " + + ::= { cmmSysPortEntry 22 } + + + cmmSysddmtype OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Indicates which type of diagnostic monitoring is implemented + " + + ::= { cmmSysPortEntry 23 } + + + + cmmSyscheckcodeextended OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Check code for the Extended ID Fields + " + + ::= { cmmSysPortEntry 24 } + + + cmmSysrxpower0 OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Single precision floating point calibration data, Rx optical power. Bit 7 of + byte 72 is MSB, bit 0 of byte 75 is LSB. RxPWR(0) should be set to zero + for internally calibrated devices. + " + + ::= { cmmSysPortEntry 25 } + + + cmmSysrxpower1 OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Single precision floating point calibration data, Rx optical power. Bit 7 of + byte 68 is MSB, bit 0 of byte 71 is LSB. RxPWR(1) should be set to 1 for + internally calibrated devices. + " + + ::= { cmmSysPortEntry 26 } + + cmmSysrxpower2 OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Single precision floating point calibration data, Rx optical power. + Bit 7 of byte 64 is MSB, bit 0 of byte 67 is LSB. RxPWR(2) should be set + to zero for internally calibrated devices. + " + + ::= { cmmSysPortEntry 27 } + + cmmSysrxpower3 OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Single precision floating point calibration data - Rx optical power. + Bit 7 of byte 60 is MSB. Bit 0 of byte 63 is LSB. RxPWR(3) should be set + to zero for internally calibrated devices. + " + + ::= { cmmSysPortEntry 28 } + + cmmSysrxpower4 OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Single precision floating point calibration data - Rx optical power. Bit 7 of + byte 56 is MSB. Bit 0 of byte 59 is LSB. RxPWR(4) should be set to zero + for internally calibrated devices. + " + + ::= { cmmSysPortEntry 29 } + + cmmSyslaserbiasslope OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Fixed decimal (unsigned) calibration data, laser bias current. Bit 7 of byte + 76 is MSB, bit 0 of byte 77 is LSB. TxI(Slope) should be set to 1 for + internally calibrated devices. + " + + ::= {cmmSysPortEntry 30 } + + cmmSyslaserbiasoffset OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Fixed decimal (signed two's complement) calibration data, laser bias + current. Bit 7 of byte 78 is MSB, bit 0 of byte 79 is LSB. TxI(Offset) should + be set to zero for internally calibrated devices. + " + + ::= { cmmSysPortEntry 31 } + + + cmmSystxpowerslope OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Fixed decimal (unsigned) calibration data, transmitter coupled output + power. Bit 7 of byte 80 is MSB, bit 0 of byte 81 is LSB. TxPWR(Slope) + should be set to 1 for internally calibrated devices. + " + + ::= { cmmSysPortEntry 32 } + + cmmSystxpoweroffset OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Fixed decimal (signed two's complement) calibration data, transmitter + coupled output power. Bit 7 of byte 82 is MSB, bit 0 of byte 83 is LSB. + TxPWR(Offset) should be set to zero for internally calibrated devices. + " + + ::= { cmmSysPortEntry 33 } + + cmmSystempslope OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Fixed decimal (unsigned) calibration data, internal module temperature. Bit + 7 of byte 84 is MSB, bit 0 of byte 85 is LSB. T(Slope) should be set to 1 for + internally calibrated devices. + " + + ::= { cmmSysPortEntry 34 } + + cmmSystempoffset OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Fixed decimal (signed two's complement) calibration data, internal module + temperature. Bit 7 of byte 86 is MSB, bit 0 of byte 87 is LSB. T(Offset) + should be set to zero for internally calibrated devices + " + + ::= { cmmSysPortEntry 35 } + + cmmSysvoltageslope OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Fixed decimal (unsigned) calibration data, internal module supply voltage. + Bit 7 of byte 88 is MSB, bit 0 of byte 89 is LSB. V(Slope) should be set to 1 + for internally calibrated devices + " + + ::= { cmmSysPortEntry 36 } + + cmmSysvoltageoffset OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Fixed decimal (signed two's complement) calibration data, internal module + supply voltage. Bit 7 of byte 90 is MSB. Bit 0 of byte 91 is LSB. V(Offset) + should be set to zero for internally calibrated devices. + " + + ::= { cmmSysPortEntry 37 } + + cmmSysTemperature OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Temperature value of the system + " + + ::= { cmmSysPortEntry 38 } + + cmmSysVoltage OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Internally measured supply voltage in transceiver + " + + ::= { cmmSysPortEntry 39 } + + cmmSysLaserBiasCurrent OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Internally measured TX Bias Current. + " + + ::= { cmmSysPortEntry 40 } + + cmmSysTxOutputPower OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Measured TX output power. + " + + ::= { cmmSysPortEntry 41 } + + cmmSysRxInputPower OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " + Measured RX input power. + " + + ::= { cmmSysPortEntry 42 } + + cmmSysRamTable OBJECT-TYPE + SYNTAX SEQUENCE OF CmmSysRamEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of Ram Entries." + ::= { cmmSysObjects 3 } + + cmmSysRamEntry OBJECT-TYPE + SYNTAX CmmSysRamEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Ram entries" + INDEX { cmmStackUnitIndex } + ::= { cmmSysRamTable 1 } + + CmmSysRamEntry ::= + SEQUENCE { + cmmSysRamFreeMem INTEGER, + cmmSysRamAvailableMem INTEGER, + cmmSysRamThreshold INTEGER + } + cmmSysRamFreeMem OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "CPU RAM's total free memory available for utilisation in KBytes." + ::= { cmmSysRamEntry 1 } + + cmmSysRamAvailableMem OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "CPU RAM's total memory in Kbytes." + ::= { cmmSysRamEntry 2 } + + cmmSysRamThreshold OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The CPU Free Memory threshold in kilobytes. + A zero threshold value indicates the CPU Free Memory Notification feature is disabled. + Notifications are triggered when the CPU Free Memory falls below the configured threshold + and when it rises to 10% above the configured threshold.CPU utilization in percentage for last 1 minute." + ::= { cmmSysRamEntry 3 } + + + + cmmStackUnitUtilTable OBJECT-TYPE + SYNTAX SEQUENCE OF CmmStackUnitUtilEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of Stack Unit Util Entries." + ::= { cmmSysObjects 4 } + + cmmStackUnitUtilEntry OBJECT-TYPE + SYNTAX CmmStackUnitUtilEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Unit Til Entries" + INDEX { cmmStackUnitIndex } + ::= { cmmStackUnitUtilTable 1 } + + CmmStackUnitUtilEntry ::= + SEQUENCE { + cmmStackUnitCpuType DisplayString, + cmmStackUnitCpuUtil1Min DisplayString, + cmmStackUnitCpuUtil5Min DisplayString, + cmmStackUnitCpuUtil15Min DisplayString, + cmmSysCpuThresholdInterval INTEGER, + cmmSysCpuThreshold INTEGER, + cmmStackUnitCpuUtilization DisplayString, + } + + cmmStackUnitCpuType OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of module running on the Processor" + ::= { cmmStackUnitUtilEntry 1 } + + cmmStackUnitCpuUtil1Min OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "CPU utilization in percentage for last 5 seconds" + ::= { cmmStackUnitUtilEntry 2 } + + cmmStackUnitCpuUtil5Min OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "CPU utilization in percentage for last 1 minute" + ::= { cmmStackUnitUtilEntry 3 } + + cmmStackUnitCpuUtil15Min OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "CPU utilization in percentage for last 5 minutes." + ::= { cmmStackUnitUtilEntry 4 } + + cmmSysCpuThresholdInterval OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The CPU Rising threshold interval in seconds. The time interval is configured in multiples of 5 seconds. + A zero Rising interval indicates CPU Utilization Notification feature is disabled.." + ::= { cmmStackUnitUtilEntry 5 } + + + cmmSysCpuThreshold OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The CPU MAX Threshold" + ::= { cmmStackUnitUtilEntry 6 } + + + + cmmStackUnitCpuUtilization OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Total memory usage in percentage" + ::= {cmmStackUnitUtilEntry 7 } + + -- ### Power Supply Table + + cmmSysPowerSupplyTable OBJECT-TYPE + SYNTAX SEQUENCE OF CmmSysPowerSupplyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of power supply resident + in the chassis." + ::= { cmmSysObjects 5 } + + cmmSysPowerSupplyEntry OBJECT-TYPE + SYNTAX CmmSysPowerSupplyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A power supply entry containing objects for a + particular power supply." + INDEX { cmmStackUnitIndex, + cmmSysPowerSupplyIndex } + ::= { cmmSysPowerSupplyTable 1 } + + CmmSysPowerSupplyEntry ::= + SEQUENCE { + cmmSysPowerSupplyIndex INTEGER, + cmmSysPOWERVDDR DisplayString, + cmmSysPOWERCORE DisplayString, + cmmSysV1P1POWERRAIL DisplayString, + cmmSysMAINBOARDPOWERRAIL DisplayString, + cmmSysVCC5V DisplayString, + cmmSysVCC33V DisplayString, + cmmSysVCCMAC1V DisplayString, + cmmSysVCCMACAVS1V DisplayString, + cmmSysVCCV1P05 DisplayString, + cmmSysVCCV1P5 DisplayString, + cmmSysVCCV1P8 DisplayString, + cmmSysV1P05POWERRAIL DisplayString, + cmmSysV1P5POWERRAIL DisplayString, + cmmSysVCCPOWERRAIL DisplayString, + cmmSysSBV1P5POWERRAIL DisplayString, + cmmSysV1P0POWERRAIL DisplayString, + cmmSysV3P3POWERRAIL DisplayString, + cmmSysV1P8POWERRAIL DisplayString, + cmmSysV1P35POWERRAIL DisplayString, + cmmSysDDRVTT DisplayString, + cmmSysPowerSupplyOperStatus DisplayString, + cmmSysPowerSupplyType DisplayString, + cmmSysHotSwapStat DisplayString, + cmmSysPSConsumption DisplayString + + } + + cmmSysPowerSupplyIndex OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unique index of the power supply." + ::= { cmmSysPowerSupplyEntry 1 } + + cmmSysPOWERVDDR OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power statistics for VCC 3.3v on Main board" + ::= { cmmSysPowerSupplyEntry 2 } + + cmmSysPOWERCORE OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power statistics for Mac 1v on Main board" + ::= { cmmSysPowerSupplyEntry 3 } + + cmmSysV1P1POWERRAIL OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power statistics for Mac AVS 1v on Main board" + ::= { cmmSysPowerSupplyEntry 4 } + + cmmSysMAINBOARDPOWERRAIL OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status for Main Board" + ::= { cmmSysPowerSupplyEntry 5 } + + cmmSysVCC5V OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status of VCC 5V" + ::= { cmmSysPowerSupplyEntry 6 } + + cmmSysVCC33V OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status of VCC 33 V" + ::= { cmmSysPowerSupplyEntry 7 } + + cmmSysVCCMAC1V OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status of VCCMAC1V" + ::= { cmmSysPowerSupplyEntry 8 } + + cmmSysVCCMACAVS1V OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status of VCCMACAVS1V" + ::= { cmmSysPowerSupplyEntry 9 } + + cmmSysVCCV1P05 OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power Status of VCCV1P05" + ::= { cmmSysPowerSupplyEntry 10 } + + cmmSysVCCV1P5 OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power Status of VCCV1P5" + ::= { cmmSysPowerSupplyEntry 11 } + + cmmSysVCCV1P8 OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status of VCCV1P8" + ::= { cmmSysPowerSupplyEntry 12 } + + + cmmSysV1P05POWERRAIL OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status of V1P05POWERRAIL" + ::= { cmmSysPowerSupplyEntry 13 } + + cmmSysV1P5POWERRAIL OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status of V1P5POWERRAIL" + ::= { cmmSysPowerSupplyEntry 14 } + + cmmSysVCCPOWERRAIL OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status of VCCPOWERRAIL" + ::= { cmmSysPowerSupplyEntry 15 } + + cmmSysSBV1P5POWERRAIL OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status of SBV1P5POWERRAIL" + ::= { cmmSysPowerSupplyEntry 16 } + + cmmSysV1P0POWERRAIL OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power rail 1.0V Status" + ::= { cmmSysPowerSupplyEntry 17 } + + cmmSysV3P3POWERRAIL OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power rail 3.3V Status" + ::= { cmmSysPowerSupplyEntry 18 } + + cmmSysV1P8POWERRAIL OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power rail 1.8V Status" + ::= { cmmSysPowerSupplyEntry 19 } + + cmmSysV1P35POWERRAIL OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power Rail 1.35 Status" + ::= { cmmSysPowerSupplyEntry 20 } + + cmmSysDDRVTT OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power statistics for VCC 5v on Main board." + ::= { cmmSysPowerSupplyEntry 21 } + + cmmSysPowerSupplyOperStatus OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The status of the power supply." + ::= { cmmSysPowerSupplyEntry 22 } + + cmmSysPowerSupplyType OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of the power supply." + ::= { cmmSysPowerSupplyEntry 23 } + + + cmmSysHotSwapStat OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status for HOT SWAP" + ::= { cmmSysPowerSupplyEntry 24 } + + cmmSysPSConsumption OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Output Power of Power supply" + ::= { cmmSysPowerSupplyEntry 25 } + + -- ## Fan Tray Table + + cmmSysFanTable OBJECT-TYPE + SYNTAX SEQUENCE OF CmmSysFanEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of fan tray resident in the M-series chassis." + ::= { cmmSysObjects 6 } + + cmmSysFanEntry OBJECT-TYPE + SYNTAX CmmSysFanEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A fan entry containing objects for a + particular fan tray." + INDEX { cmmStackUnitIndex, + cmmSysFanIndex } + ::= { cmmSysFanTable 1 } + + CmmSysFanEntry ::= + SEQUENCE { + cmmSysFanIndex INTEGER, + cmmSysFanControllerNum INTEGER, + cmmSysFanTrayNumber INTEGER, + cmmSysFanRpm INTEGER, + cmmSysFanLowRpm INTEGER, + cmmSysFanMidRpm INTEGER, + cmmSysFanHighRpm INTEGER, + cmmSysFanTrayOperStatus DisplayString, + cmmSysFanTrayLed DisplayString + } + + cmmSysFanIndex OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The unique index of the fan." + ::= { cmmSysFanEntry 1 } + + + cmmSysFanControllerNum OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents the fan controller number." + ::= { cmmSysFanEntry 2 } + + cmmSysFanTrayNumber OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents the fan tray Number." + ::= { cmmSysFanEntry 3 } + + + cmmSysFanRpm OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents the fan rpm ." + ::= { cmmSysFanEntry 4 } + + cmmSysFanLowRpm OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents the low RPM of fan." + ::= { cmmSysFanEntry 5 } + + cmmSysFanMidRpm OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents the mid RPM of fan." + ::= { cmmSysFanEntry 6 } + + + cmmSysFanHighRpm OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents the high RPM of fan." + ::= { cmmSysFanEntry 7 } + + + cmmSysFanTrayOperStatus OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The status of the fan tray." + ::= { cmmSysFanEntry 8 } + + cmmSysFanTrayLed OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents the fan led status." + ::= { cmmSysFanEntry 9 } + + +-- ## Stack Temperature Table + cmmSysTemperatureTable OBJECT-TYPE + SYNTAX SEQUENCE OF CmmSysTemperatureEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of Temperature Entities on board" + ::= { cmmSysObjects 7 } + + cmmSysTemperatureEntry OBJECT-TYPE + SYNTAX CmmSysTemperatureEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A temperature entry containing objects related to particular temperature sensor" + INDEX { cmmStackUnitIndex, + cmmSysTemperatureSensorIndex } + ::= { cmmSysTemperatureTable 1 } + + CmmSysTemperatureEntry ::= + SEQUENCE { + cmmSysTemperatureSensorIndex INTEGER, + cmmSysTemperatureValue DisplayString, + cmmSysTempLowThreshold DisplayString, + cmmSysTempHighThreshold DisplayString + } + + cmmSysTemperatureSensorIndex OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents Temperature Sensor Index" + ::= { cmmSysTemperatureEntry 1 } + + cmmSysTemperatureValue OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents Temperature Sensor value" + ::= { cmmSysTemperatureEntry 2 } + + cmmSysTempLowThreshold OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents Temperature Sensor lower threshold" + ::= { cmmSysTemperatureEntry 3 } + + cmmSysTempHighThreshold OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents Temperature Sensor high threshold" + ::= { cmmSysTemperatureEntry 4 } + + +-- ## Stack LED Table + cmmSysLedTable OBJECT-TYPE + SYNTAX SEQUENCE OF CmmSysLedEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Sequence of cmmSysLedEntry" + ::= { cmmSysObjects 8 } + + cmmSysLedEntry OBJECT-TYPE + SYNTAX CmmSysLedEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "OBJECT to hold elements related to LED information" + INDEX { cmmStackUnitIndex } + ::= { cmmSysLedTable 1 } + + CmmSysLedEntry ::= + SEQUENCE { + cmmSysPowerLed DisplayString, + cmmSysLocatorLed DisplayString, + cmmSysMasterLed DisplayString, + cmmSysSystemLed DisplayString, + cmmSysFrontFanLed DisplayString + + } + + cmmSysPowerLed OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of Power led " + ::= { cmmSysLedEntry 1 } + + cmmSysLocatorLed OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of Power led " + ::= { cmmSysLedEntry 2 } + + cmmSysMasterLed OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of Locator led " + ::= { cmmSysLedEntry 3 } + + cmmSysSystemLed OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of System led " + ::= { cmmSysLedEntry 4 } + + cmmSysFrontFanLed OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of FrontFan led " + ::= { cmmSysLedEntry 5 } + + + + + -- ## Software Module Table + + cmmSysSwModuleTable OBJECT-TYPE + SYNTAX SEQUENCE OF CmmSysSwModuleEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of software version information in + a processor." + ::= { cmmSysObjects 9 } + + cmmSysSwModuleEntry OBJECT-TYPE + SYNTAX CmmSysSwModuleEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A software module entry containing version + number information for a particular processor." + INDEX { cmmStackUnitIndex } + ::= { cmmSysSwModuleTable 1 } + + CmmSysSwModuleEntry ::= + SEQUENCE { + cmmSysSwRuntimeImgVersion DisplayString, + cmmSysSwRuntimeImgDate OCTET STRING, + } + + cmmSysSwRuntimeImgVersion OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This variable indicates the software + module version that is currently + running on the processor. + The software release version is in + the format as follow: + ........ + '1.2' indicate major version of 1 and + minor release of 2." + ::= { cmmSysSwModuleEntry 1 } + + cmmSysSwRuntimeImgDate OBJECT-TYPE + SYNTAX OCTET STRING + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The release date of this software + module." + ::= { cmmSysSwModuleEntry 2 } + + -- + -- ## Notifications + -- + + cmmAlarmVariable OBJECT IDENTIFIER ::= { cmmAlarmObjects 0 } + cmmAlarmMibNotifications OBJECT IDENTIFIER ::= { cmmAlarmObjects 1 } + + cmmAlarmVarInteger OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "An generic integer value in the TRAP object" + ::= { cmmAlarmVariable 1 } + + cmmAlarmVarString OBJECT-TYPE + SYNTAX OCTET STRING + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "An generic string value in the TRAP object" + ::= { cmmAlarmVariable 2 } + -- + -- TRAPS + -- + + + cmmAlarmCpuRisingThreshold NOTIFICATION-TYPE + OBJECTS {cmmSysCpuThresholdInterval, + cmmSysCpuThreshold, + cmmStackUnitCpuUtilization + } + STATUS current + DESCRIPTION + "Trap to send information for Rising threshold, threshold interval and + CPU Utilisation + " + ::= { cmmAlarmMibNotifications 1 } + + cmmAlarmFreeMemBlwThreshold NOTIFICATION-TYPE + OBJECTS {cmmSysRamFreeMem, + cmmSysRamThreshold + } + STATUS current + DESCRIPTION + "Trap to send information for Free Memory and Free Memory Threshold + " + ::= { cmmAlarmMibNotifications 2 } + + cmmAlarmTempHigh NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysTemperature, + cmmAlarmVarInteger + } + STATUS current + DESCRIPTION + "Set when internal temperature exceeds high alarm level. + " + ::= { cmmAlarmMibNotifications 3 } + + cmmAlarmTempLow NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysTemperature, + cmmAlarmVarInteger + } + STATUS current + DESCRIPTION + "Set when internal temperature is below low alarm level. + " + ::= { cmmAlarmMibNotifications 4 } + + cmmWarningTempHigh NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysTemperature, + cmmAlarmVarInteger + } + + STATUS current + DESCRIPTION + "Set when internal temperature exceeds high warning level. + " + ::= { cmmAlarmMibNotifications 5 } + + cmmWarningTempLow NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysTemperature, + cmmAlarmVarInteger + } + STATUS current + DESCRIPTION + "Set when internal temperature is below low warning level + " + ::= { cmmAlarmMibNotifications 6 } + + cmmAlarmVoltageHigh NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysVoltage, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when internal supply voltage exceeds high alarm level. + " + ::= { cmmAlarmMibNotifications 7 } + + cmmAlarmVoltageLow NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysVoltage, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when internal supply voltage is below low alarm level. + " + ::= { cmmAlarmMibNotifications 8 } + + cmmWarningVoltageHigh NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysVoltage, + cmmAlarmVarString + } + + STATUS current + DESCRIPTION + "Set when internal supply voltage exceeds high warning level. + " + ::= { cmmAlarmMibNotifications 9 } + + cmmWarningVoltageLow NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysVoltage, + cmmAlarmVarString + } + + STATUS current + DESCRIPTION + "Set when internal supply voltage is below low warning level + " + ::= { cmmAlarmMibNotifications 10 } + + cmmAlarmBiasHigh NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysLaserBiasCurrent, + cmmAlarmVarString + } + + STATUS current + DESCRIPTION + "Set when TX Bias current exceeds high alarm level. + " + ::= { cmmAlarmMibNotifications 11 } + + cmmAlarmBiasLow NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysLaserBiasCurrent, + cmmAlarmVarString + } + + STATUS current + DESCRIPTION + "Set when TX Bias current is below low alarm level. + " + ::= { cmmAlarmMibNotifications 12 } + + cmmWarningBiashigh NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysLaserBiasCurrent, + cmmAlarmVarString + } + + STATUS current + DESCRIPTION + "Set when TX Bias current exceeds high warning level. + " + ::= { cmmAlarmMibNotifications 13 } + + cmmWarningBiasLow NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysLaserBiasCurrent, + cmmAlarmVarString + } + + STATUS current + DESCRIPTION + "Set when TX Bias current is below low warning level. + " + ::= { cmmAlarmMibNotifications 14 } + + + cmmAlarmRxPowerHigh NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysRxInputPower, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Received Power exceeds high alarm level. + " + ::= { cmmAlarmMibNotifications 15 } + + cmmAlarmRxPowerLow NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysRxInputPower, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Received Power is below low alarm level. + " + ::= { cmmAlarmMibNotifications 16 } + + cmmWarningRxPowerHigh NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysRxInputPower, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Received Power exceeds high warning level. + " + ::= { cmmAlarmMibNotifications 17 } + + cmmWarningRxPowerLow NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysRxInputPower, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Received Power is below low warning level. + " + ::= { cmmAlarmMibNotifications 18 } + + cmmAlarmTemperatureTooHigh NOTIFICATION-TYPE + OBJECTS {cmmSysTemperatureSensorIndex, + cmmAlarmVarInteger, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Temperature will be above threshold for sensor" + ::= { cmmAlarmMibNotifications 19 } + + cmmWarningPsuInserted NOTIFICATION-TYPE + OBJECTS { + cmmSysPowerSupplyIndex, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Power supply unit is inserted" + ::= { cmmAlarmMibNotifications 20 } + + cmmWarningPsuRemoved NOTIFICATION-TYPE + OBJECTS { + cmmSysPowerSupplyIndex, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Power supply unit is Removed" + ::= { cmmAlarmMibNotifications 21 } + + cmmWarningPsuFaulty NOTIFICATION-TYPE + OBJECTS { + cmmSysPowerSupplyIndex, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Power supply unit is Faulty" + ::= { cmmAlarmMibNotifications 22 } + + cmmWarningFanTrayInserted NOTIFICATION-TYPE + OBJECTS { + cmmSysFanTrayNumber, + cmmSysFanRpm, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when fan tray is inserted" + ::= { cmmAlarmMibNotifications 23 } + + cmmWarningFanTrayRemoved NOTIFICATION-TYPE + OBJECTS { + cmmSysFanTrayNumber, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when fan tray is Removed" + ::= { cmmAlarmMibNotifications 24 } + + + cmmAlarmPowerExceed NOTIFICATION-TYPE + OBJECTS { + cmmSysPSConsumption, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Power will be above threshold" + ::= { cmmAlarmMibNotifications 25 } + + + cmmAlarmTxPowerHigh NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysTxOutputPower, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Transferred Power exceeds high alarm level. + " + ::= { cmmAlarmMibNotifications 26 } + + cmmAlarmTxPowerLow NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysTxOutputPower, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Transferred Power is below low alarm level. + " + ::= { cmmAlarmMibNotifications 27 } + + cmmWarningTxPowerHigh NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysTxOutputPower, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Transferred Power exceeds high warning level. + " + ::= { cmmAlarmMibNotifications 28 } + + cmmWarningTxPowerLow NOTIFICATION-TYPE + OBJECTS {cmmSysPortIndex, + cmmSysPortType, + cmmSysTxOutputPower, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Transferred Power is below low warning level. + " + ::= { cmmAlarmMibNotifications 29 } + + cmmWarningFanTrayFaulty NOTIFICATION-TYPE + OBJECTS {cmmSysFanTrayNumber, + cmmSysFanIndex, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Given Fan Tray Faulty. + " + ::= { cmmAlarmMibNotifications 30 } + + cmmWarningFanTrayRecovered NOTIFICATION-TYPE + OBJECTS {cmmSysFanTrayNumber, + cmmSysFanIndex, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Given Fan Tray is recovered. + " + ::= { cmmAlarmMibNotifications 31 } + + END + diff --git a/mibs/IPMCAST-MIB.txt b/mibs/IPMCAST-MIB.txt new file mode 100644 index 00000000..1c14ca2b --- /dev/null +++ b/mibs/IPMCAST-MIB.txt @@ -0,0 +1,2519 @@ +IPMCAST-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, + mib-2, Unsigned32, Counter64, + Gauge32, TimeTicks FROM SNMPv2-SMI -- [RFC2578] + RowStatus, TruthValue, + StorageType, TimeStamp FROM SNMPv2-TC -- [RFC2579] + MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF -- [RFC2580] + CounterBasedGauge64 FROM HCNUM-TC -- [RFC2856] + InterfaceIndexOrZero, + InterfaceIndex FROM IF-MIB -- [RFC2863] + IANAipRouteProtocol, + IANAipMRouteProtocol FROM IANA-RTPROTO-MIB + SnmpAdminString FROM SNMP-FRAMEWORK-MIB -- [RFC3411] + InetAddress, InetAddressType, + InetAddressPrefixLength, + InetZoneIndex, InetVersion FROM INET-ADDRESS-MIB -- [RFC4001] + LangTag FROM LANGTAG-TC-MIB; -- [RFC5131] + +ipMcastMIB MODULE-IDENTITY + LAST-UPDATED "200711090000Z" -- 9 November 2007 + ORGANIZATION "IETF MBONE Deployment (MBONED) Working Group" + CONTACT-INFO "David McWalter + Data Connection Limited + + + + 100 Church Street + Enfield, EN2 6BQ + UK + + Phone: +44 208 366 1177 + EMail: dmcw@dataconnection.com + + Dave Thaler + Microsoft Corporation + One Microsoft Way + Redmond, WA 98052-6399 + US + + Phone: +1 425 703 8835 + EMail: dthaler@dthaler.microsoft.com + + Andrew Kessler + Cisco Systems + 425 E. Tasman Drive + San Jose, CA 95134 + US + + Phone: +1 408 526 5139 + EMail: kessler@cisco.com" + DESCRIPTION + "The MIB module for management of IP Multicast, including + multicast routing, data forwarding, and data reception. + + Copyright (C) The IETF Trust (2007). This version of this + MIB module is part of RFC 5132; see the RFC itself for full + legal notices." + REVISION "200711090000Z" -- 9 November 2007 + DESCRIPTION "Initial version, published as RFC 5132. + + This MIB module obsoletes IPMROUTE-STD-MIB defined by + [RFC2932]. Changes include the following: + + o This MIB module includes support for IPv6 addressing + and the IPv6 scoped address architecture. [RFC2932] + supported only IPv4. + + o This MIB module allows several multicast protocols + to perform routing on a single interface, where + [RFC2932] assumed each interface supported at most + one multicast routing protocol. Multicast routing + protocols are now per-route, see + ipMcastRouteProtocol. + + + + + o This MIB module includes objects that are not + specific to multicast routing. It allows management + of multicast function on systems that do not perform + routing, whereas [RFC2932] was restricted to + multicast routing. + + o This MIB module includes a table of Source-Specific + Multicast (SSM) address ranges to which SSM + semantics [RFC3569] should be applied. + + o This MIB module includes a table of local + applications that are receiving multicast data. + + o This MIB module includes a table of multicast scope + zones." + ::= { mib-2 168 } + +-- +-- Top-level structure of the MIB +-- + +ipMcast OBJECT IDENTIFIER ::= { ipMcastMIB 1 } + +ipMcastEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The enabled status of IP Multicast function on this + system. + + The storage type of this object is determined by + ipMcastDeviceConfigStorageType." + ::= { ipMcast 1 } + +ipMcastRouteEntryCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of rows in the ipMcastRouteTable. This can be + used to check for multicast routing activity, and to monitor + the multicast routing table size." + ::= { ipMcast 2 } + +ipMcastDeviceConfigStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-write + + + + STATUS current + DESCRIPTION + "The storage type used for the global IP multicast + configuration of this device, comprised of the objects + listed below. If this storage type takes the value + 'permanent', write-access to the listed objects need not be + allowed. + + The objects described by this storage type are: + ipMcastEnabled." + DEFVAL { nonVolatile } + ::= { ipMcast 11 } + +-- +-- The Multicast Interface Table +-- + +ipMcastInterfaceTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table used to manage the multicast + protocol active on an interface." + ::= { ipMcast 3 } + +ipMcastInterfaceEntry OBJECT-TYPE + SYNTAX IpMcastInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) containing the multicast protocol + information for a particular interface. + + Per-interface multicast forwarding statistics are also + available in ipIfStatsTable." + REFERENCE "RFC 4293 ipIfStatsTable" + INDEX { ipMcastInterfaceIPVersion, + ipMcastInterfaceIfIndex } + ::= { ipMcastInterfaceTable 1 } + +IpMcastInterfaceEntry ::= SEQUENCE { + ipMcastInterfaceIPVersion InetVersion, + ipMcastInterfaceIfIndex InterfaceIndex, + ipMcastInterfaceTtl Unsigned32, + ipMcastInterfaceRateLimit Unsigned32, + ipMcastInterfaceStorageType StorageType +} + + + +ipMcastInterfaceIPVersion OBJECT-TYPE + SYNTAX InetVersion + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP version of this row." + ::= { ipMcastInterfaceEntry 1 } + +ipMcastInterfaceIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index value that uniquely identifies the interface to + which this entry is applicable. The interface identified by + a particular value of this index is the same interface as + identified by the same value of the IF-MIB's ifIndex." + ::= { ipMcastInterfaceEntry 2 } + +ipMcastInterfaceTtl OBJECT-TYPE + SYNTAX Unsigned32 (0..256) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The datagram Time to Live (TTL) threshold for the + interface. Any IP multicast datagrams with a TTL (IPv4) or + Hop Limit (IPv6) less than this threshold will not be + forwarded out the interface. The default value of 0 means + all multicast packets are forwarded out the interface. A + value of 256 means that no multicast packets are forwarded + out the interface." + DEFVAL { 0 } + ::= { ipMcastInterfaceEntry 3 } + +ipMcastInterfaceRateLimit OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The rate-limit, in kilobits per second, of forwarded + multicast traffic on the interface. A rate-limit of 0 + indicates that no rate limiting is done." + DEFVAL { 0 } + ::= { ipMcastInterfaceEntry 4 } + +ipMcastInterfaceStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-write + + + + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row." + DEFVAL { nonVolatile } + ::= { ipMcastInterfaceEntry 5 } + +-- +-- The SSM Range Table +-- + +ipMcastSsmRangeTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastSsmRangeEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is used to create and manage the range(s) of + group addresses to which SSM semantics should be applied." + REFERENCE "RFC 3569" + ::= { ipMcast 4 } + +ipMcastSsmRangeEntry OBJECT-TYPE + SYNTAX IpMcastSsmRangeEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) containing a range of group + addresses to which SSM semantics should be applied. + + Object Identifiers (OIDs) are limited to 128 + sub-identifiers, but this limit is not enforced by the + syntax of this entry. In practice, this does not present + a problem, because IP address types allowed by conformance + statements do not exceed this limit." + REFERENCE "RFC 3569" + INDEX { ipMcastSsmRangeAddressType, + ipMcastSsmRangeAddress, + ipMcastSsmRangePrefixLength } + ::= { ipMcastSsmRangeTable 1 } + +IpMcastSsmRangeEntry ::= SEQUENCE { + ipMcastSsmRangeAddressType InetAddressType, + ipMcastSsmRangeAddress InetAddress, + ipMcastSsmRangePrefixLength InetAddressPrefixLength, + ipMcastSsmRangeRowStatus RowStatus, + ipMcastSsmRangeStorageType StorageType +} + + + +ipMcastSsmRangeAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the multicast group prefix." + ::= { ipMcastSsmRangeEntry 1 } + +ipMcastSsmRangeAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group address which, when combined with + ipMcastSsmRangePrefixLength, gives the group prefix for this + SSM range. The InetAddressType is given by + ipMcastSsmRangeAddressType. + + This address object is only significant up to + ipMcastSsmRangePrefixLength bits. The remaining address + bits are set to zero. This is especially important for this + index field, which is part of the index of this entry. Any + non-zero bits would signify an entirely different entry. + + For IPv6 SSM address ranges, only ranges prefixed by + FF3x::/16 are permitted, where 'x' is a valid IPv6 RFC 4291 + multicast address scope. The syntax of the address range is + given by RFC 3306, Sections 4 and 7. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + SSM range entry applies only within the given zone. Zone + index zero is not valid in this table. + + If non-global scope SSM range entries are present, then + consistent ipMcastBoundaryTable entries are required on + routers at the zone boundary." + REFERENCE "RFC 2365, RFC 4291 Section 2.7, RFC 3306 Sections 4, 6, + and 7" + ::= { ipMcastSsmRangeEntry 2 } + +ipMcastSsmRangePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + + + + ipMcastSsmRangeAddress, gives the group prefix for this SSM + range. + + The InetAddressType is given by ipMcastSsmRangeAddressType. + For values 'ipv4' and 'ipv4z', this object must be in the + range 4..32. For values 'ipv6' and 'ipv6z', this object + must be in the range 8..128." + REFERENCE "RFC 2365, RFC 4291 Section 2.7, RFC 3306 Sections 4, 6, + and 7" + ::= { ipMcastSsmRangeEntry 3 } + +ipMcastSsmRangeRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this row, by which rows in this table can + be created and destroyed. + + This status object can be set to active(1) without setting + any other columnar objects in this entry. + + All writeable objects in this entry can be modified when the + status of this entry is active(1)." + ::= { ipMcastSsmRangeEntry 4 } + +ipMcastSsmRangeStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row." + DEFVAL { nonVolatile } + ::= { ipMcastSsmRangeEntry 5 } + +-- +-- The IP Multicast Routing Table +-- + +ipMcastRouteTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastRouteEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table containing multicast routing + information for IP datagrams sent by particular sources + + + + to the IP multicast groups known to this router." + ::= { ipMcast 5 } + +ipMcastRouteEntry OBJECT-TYPE + SYNTAX IpMcastRouteEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) containing the multicast routing + information for IP datagrams from a particular source and + addressed to a particular IP multicast group address. + + OIDs are limited to 128 sub-identifiers, but this limit + is not enforced by the syntax of this entry. In practice, + this does not present a problem, because IP address types + allowed by conformance statements do not exceed this limit." + INDEX { ipMcastRouteGroupAddressType, + ipMcastRouteGroup, + ipMcastRouteGroupPrefixLength, + ipMcastRouteSourceAddressType, + ipMcastRouteSource, + ipMcastRouteSourcePrefixLength } + ::= { ipMcastRouteTable 1 } + +IpMcastRouteEntry ::= SEQUENCE { + ipMcastRouteGroupAddressType InetAddressType, + ipMcastRouteGroup InetAddress, + ipMcastRouteGroupPrefixLength InetAddressPrefixLength, + ipMcastRouteSourceAddressType InetAddressType, + ipMcastRouteSource InetAddress, + ipMcastRouteSourcePrefixLength InetAddressPrefixLength, + ipMcastRouteUpstreamNeighborType InetAddressType, + ipMcastRouteUpstreamNeighbor InetAddress, + ipMcastRouteInIfIndex InterfaceIndexOrZero, + ipMcastRouteTimeStamp TimeStamp, + ipMcastRouteExpiryTime TimeTicks, + ipMcastRouteProtocol IANAipMRouteProtocol, + ipMcastRouteRtProtocol IANAipRouteProtocol, + ipMcastRouteRtAddressType InetAddressType, + ipMcastRouteRtAddress InetAddress, + ipMcastRouteRtPrefixLength InetAddressPrefixLength, + ipMcastRouteRtType INTEGER, + ipMcastRouteOctets Counter64, + ipMcastRoutePkts Counter64, + ipMcastRouteTtlDropOctets Counter64, + ipMcastRouteTtlDropPackets Counter64, + ipMcastRouteDifferentInIfOctets Counter64, + ipMcastRouteDifferentInIfPackets Counter64, + + + + ipMcastRouteBps CounterBasedGauge64 +} + +ipMcastRouteGroupAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteGroup. Legal values correspond to + the subset of address families for which multicast + forwarding is supported." + ::= { ipMcastRouteEntry 1 } + +ipMcastRouteGroup OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address which, when combined with + the corresponding value specified in + ipMcastRouteGroupPrefixLength, identifies the groups for + which this entry contains multicast routing information. + + This address object is only significant up to + ipMcastRouteGroupPrefixLength bits. The remaining address + bits are set to zero. This is especially important for this + index field, which is part of the index of this entry. Any + non-zero bits would signify an entirely different entry. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + forwarding state applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastRouteEntry 2 } + +ipMcastRouteGroupPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + the corresponding value of ipMcastRouteGroup, identifies the + groups for which this entry contains multicast routing + information. + + The InetAddressType is given by + + + + ipMcastRouteGroupAddressType. For values 'ipv4' and + 'ipv4z', this object must be in the range 4..32. For values + 'ipv6' and 'ipv6z', this object must be in the range + 8..128." + ::= { ipMcastRouteEntry 3 } + +ipMcastRouteSourceAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteSource. + + A value of unknown(0) indicates a non-source-specific entry, + corresponding to all sources in the group. Otherwise, the + value MUST be the same as the value of + ipMcastRouteGroupType." + ::= { ipMcastRouteEntry 4 } + +ipMcastRouteSource OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The network address which, when combined with the + corresponding value of ipMcastRouteSourcePrefixLength, + identifies the sources for which this entry contains + multicast routing information. + + This address object is only significant up to + ipMcastRouteSourcePrefixLength bits. The remaining address + bits are set to zero. This is especially important for this + index field, which is part of the index of this entry. Any + non-zero bits would signify an entirely different entry. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + source address applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastRouteEntry 5 } + +ipMcastRouteSourcePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + + + "The length in bits of the mask which, when combined with + the corresponding value of ipMcastRouteSource, identifies + the sources for which this entry contains multicast routing + information. + + The InetAddressType is given by + ipMcastRouteSourceAddressType. For the value 'unknown', + this object must be zero. For values 'ipv4' and 'ipv4z', + this object must be in the range 4..32. For values 'ipv6' + and 'ipv6z', this object must be in the range 8..128." + ::= { ipMcastRouteEntry 6 } + +ipMcastRouteUpstreamNeighborType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteUpstreamNeighbor. + + An address type of unknown(0) indicates that the upstream + neighbor is unknown, for example in BIDIR-PIM." + REFERENCE "RFC 5015" + ::= { ipMcastRouteEntry 7 } + +ipMcastRouteUpstreamNeighbor OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the upstream neighbor (for example, RPF + neighbor) from which IP datagrams from these sources to + this multicast address are received." + ::= { ipMcastRouteEntry 8 } + +ipMcastRouteInIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of ifIndex for the interface on which IP + datagrams sent by these sources to this multicast address + are received. A value of 0 indicates that datagrams are not + subject to an incoming interface check, but may be accepted + on multiple interfaces (for example, in BIDIR-PIM)." + REFERENCE "RFC 5015" + ::= { ipMcastRouteEntry 9 } + + + + +ipMcastRouteTimeStamp OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at which the multicast routing + information represented by this entry was learned by the + router. + + If this information was present at the most recent re- + initialization of the local management subsystem, then this + object contains a zero value." + ::= { ipMcastRouteEntry 10 } + +ipMcastRouteExpiryTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum amount of time remaining before this entry will + be aged out. The value 0 indicates that the entry is not + subject to aging. If ipMcastRouteNextHopState is pruned(1), + this object represents the remaining time until the prune + expires. If this timer expires, state reverts to + forwarding(2). Otherwise, this object represents the time + until this entry is removed from the table." + ::= { ipMcastRouteEntry 11 } + +ipMcastRouteProtocol OBJECT-TYPE + SYNTAX IANAipMRouteProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The multicast routing protocol via which this multicast + forwarding entry was learned." + ::= { ipMcastRouteEntry 12 } + +ipMcastRouteRtProtocol OBJECT-TYPE + SYNTAX IANAipRouteProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing mechanism via which the route used to find the + upstream or parent interface for this multicast forwarding + entry was learned." + ::= { ipMcastRouteEntry 13 } + +ipMcastRouteRtAddressType OBJECT-TYPE + + + + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteRtAddress." + ::= { ipMcastRouteEntry 14 } + +ipMcastRouteRtAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address portion of the route used to find the upstream + or parent interface for this multicast forwarding entry. + + This address object is only significant up to + ipMcastRouteRtPrefixLength bits. The remaining address bits + are set to zero. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + forwarding state applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastRouteEntry 15 } + +ipMcastRouteRtPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The length in bits of the mask associated with the route + used to find the upstream or parent interface for this + multicast forwarding entry. + + The InetAddressType is given by ipMcastRouteRtAddressType. + For values 'ipv4' and 'ipv4z', this object must be in the + range 4..32. For values 'ipv6' and 'ipv6z', this object + must be in the range 8..128." + ::= { ipMcastRouteEntry 16 } + +ipMcastRouteRtType OBJECT-TYPE + SYNTAX INTEGER { + unicast (1), -- Unicast route used in multicast RIB + multicast (2) -- Multicast route + } + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "The reason the given route was placed in the (logical) + multicast Routing Information Base (RIB). A value of + unicast means that the route would normally be placed only + in the unicast RIB, but was placed in the multicast RIB + due (instead or in addition) to local configuration, such as + when running PIM over RIP. A value of multicast means that + the route was explicitly added to the multicast RIB by the + routing protocol, such as the Distance Vector Multicast + Routing Protocol (DVMRP) or Multiprotocol BGP." + ::= { ipMcastRouteEntry 17 } + +ipMcastRouteOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of octets contained in IP datagrams that were + received from these sources and addressed to this multicast + group address, and which were forwarded by this router. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp." + ::= { ipMcastRouteEntry 18 } + +ipMcastRoutePkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets routed using this multicast route + entry. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp." + ::= { ipMcastRouteEntry 19 } + +ipMcastRouteTtlDropOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "The number of octets contained in IP datagrams that this + router has received from these sources and addressed to this + multicast group address, which were dropped because the TTL + (IPv4) or Hop Limit (IPv6) was decremented to zero, or to a + value less than ipMcastInterfaceTtl for all next hops. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp." + ::= { ipMcastRouteEntry 20 } + +ipMcastRouteTtlDropPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets that this router has received from + these sources and addressed to this multicast group address, + which were dropped because the TTL (IPv4) or Hop Limit + (IPv6) was decremented to zero, or to a value less than + ipMcastInterfaceTtl for all next hops. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp." + ::= { ipMcastRouteEntry 21 } + +ipMcastRouteDifferentInIfOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of octets contained in IP datagrams that this + router has received from these sources and addressed to this + multicast group address, which were dropped because they + were received on an unexpected interface. + + For RPF checking protocols (such as PIM-SM), these packets + arrived on interfaces other than ipMcastRouteInIfIndex, and + were dropped because of this failed RPF check. (RPF paths + are 'Reverse Path Forwarding' paths; the unicast routes to + the expected origin of multicast data flows). + + + + + Other protocols may drop packets on an incoming interface + check for different reasons (for example, BIDIR-PIM performs + a DF check on receipt of packets). All packets dropped as a + result of an incoming interface check are counted here. + + If this counter increases rapidly, this indicates a problem. + A significant quantity of multicast data is arriving at this + router on unexpected interfaces, and is not being forwarded. + + For guidance, if the rate of increase of this counter + exceeds 1% of the rate of increase of ipMcastRouteOctets, + then there are multicast routing problems that require + investigation. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp." + REFERENCE "RFC 4601 and RFC 5015" + ::= { ipMcastRouteEntry 22 } + +ipMcastRouteDifferentInIfPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets which this router has received from + these sources and addressed to this multicast group address, + which were dropped because they were received on an + unexpected interface. + + For RPF checking protocols (such as PIM-SM), these packets + arrived on interfaces other than ipMcastRouteInIfIndex, and + were dropped because of this failed RPF check. (RPF paths + are 'Reverse Path Forwarding' path; the unicast routes to + the expected origin of multicast data flows). + + Other protocols may drop packets on an incoming interface + check for different reasons (for example, BIDIR-PIM performs + a DF check on receipt of packets). All packets dropped as a + result of an incoming interface check are counted here. + + If this counter increases rapidly, this indicates a problem. + A significant quantity of multicast data is arriving at this + router on unexpected interfaces, and is not being forwarded. + + For guidance, if the rate of increase of this counter + + + + exceeds 1% of the rate of increase of ipMcastRoutePkts, then + there are multicast routing problems that require + investigation. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp." + REFERENCE "RFC 4601 and RFC 5015" + ::= { ipMcastRouteEntry 23 } + +ipMcastRouteBps OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "bits per second" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Bits per second forwarded by this router using this + multicast routing entry. + + This value is a sample; it is the number of bits forwarded + during the last whole 1 second sampling period. The value + during the current 1 second sampling period is not made + available until the period is completed. + + The quantity being sampled is the same as that measured by + ipMcastRouteOctets. The units and the sampling method are + different." + ::= { ipMcastRouteEntry 24 } +-- +-- The IP Multicast Routing Next Hop Table +-- + +ipMcastRouteNextHopTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastRouteNextHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table containing information on the + next-hops on outgoing interfaces for routing IP multicast + datagrams. Each entry is one of a list of next-hops on + outgoing interfaces for particular sources sending to a + particular multicast group address." + ::= { ipMcast 6 } + +ipMcastRouteNextHopEntry OBJECT-TYPE + SYNTAX IpMcastRouteNextHopEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the list of next-hops on + outgoing interfaces to which IP multicast datagrams from + particular sources to an IP multicast group address are + routed. + + OIDs are limited to 128 sub-identifiers, but this limit + is not enforced by the syntax of this entry. In practice, + this does not present a problem, because IP address types + allowed by conformance statements do not exceed this limit." + INDEX { ipMcastRouteNextHopGroupAddressType, + ipMcastRouteNextHopGroup, + ipMcastRouteNextHopGroupPrefixLength, + ipMcastRouteNextHopSourceAddressType, + ipMcastRouteNextHopSource, + ipMcastRouteNextHopSourcePrefixLength, + ipMcastRouteNextHopIfIndex, + ipMcastRouteNextHopAddressType, + ipMcastRouteNextHopAddress } + ::= { ipMcastRouteNextHopTable 1 } + +IpMcastRouteNextHopEntry ::= SEQUENCE { + ipMcastRouteNextHopGroupAddressType InetAddressType, + ipMcastRouteNextHopGroup InetAddress, + ipMcastRouteNextHopGroupPrefixLength InetAddressPrefixLength, + ipMcastRouteNextHopSourceAddressType InetAddressType, + ipMcastRouteNextHopSource InetAddress, + ipMcastRouteNextHopSourcePrefixLength InetAddressPrefixLength, + ipMcastRouteNextHopIfIndex InterfaceIndex, + ipMcastRouteNextHopAddressType InetAddressType, + ipMcastRouteNextHopAddress InetAddress, + ipMcastRouteNextHopState INTEGER, + ipMcastRouteNextHopTimeStamp TimeStamp, + ipMcastRouteNextHopExpiryTime TimeTicks, + ipMcastRouteNextHopClosestMemberHops Unsigned32, + ipMcastRouteNextHopProtocol IANAipMRouteProtocol, + ipMcastRouteNextHopOctets Counter64, + ipMcastRouteNextHopPkts Counter64 +} + +ipMcastRouteNextHopGroupAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + + + + contained in ipMcastRouteNextHopGroup. Legal values + correspond to the subset of address families for which + multicast forwarding is supported." + ::= { ipMcastRouteNextHopEntry 1 } + +ipMcastRouteNextHopGroup OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address which, when combined with + the corresponding value specified in + ipMcastRouteNextHopGroupPrefixLength, identifies the groups + for which this entry contains multicast forwarding + information. + + This address object is only significant up to + ipMcastRouteNextHopGroupPrefixLength bits. The remaining + address bits are set to zero. This is especially important + for this index field, which is part of the index of this + entry. Any non-zero bits would signify an entirely + different entry. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + forwarding state applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastRouteNextHopEntry 2 } + +ipMcastRouteNextHopGroupPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + the corresponding value of ipMcastRouteGroup, identifies the + groups for which this entry contains multicast routing + information. + + The InetAddressType is given by + ipMcastRouteNextHopGroupAddressType. For values 'ipv4' and + 'ipv4z', this object must be in the range 4..32. For values + 'ipv6' and 'ipv6z', this object must be in the range + 8..128." + ::= { ipMcastRouteNextHopEntry 3 } + +ipMcastRouteNextHopSourceAddressType OBJECT-TYPE + + + + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteNextHopSource. + + A value of unknown(0) indicates a non-source-specific entry, + corresponding to all sources in the group. Otherwise, the + value MUST be the same as the value of + ipMcastRouteNextHopGroupType." + ::= { ipMcastRouteNextHopEntry 4 } + +ipMcastRouteNextHopSource OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The network address which, when combined with the + corresponding value of the mask specified in + ipMcastRouteNextHopSourcePrefixLength, identifies the + sources for which this entry specifies a next-hop on an + outgoing interface. + + This address object is only significant up to + ipMcastRouteNextHopSourcePrefixLength bits. The remaining + address bits are set to zero. This is especially important + for this index field, which is part of the index of this + entry. Any non-zero bits would signify an entirely + different entry. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + source address applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastRouteNextHopEntry 5 } + +ipMcastRouteNextHopSourcePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + the corresponding value specified in + ipMcastRouteNextHopSource, identifies the sources for which + this entry specifies a next-hop on an outgoing interface. + + + + + The InetAddressType is given by + ipMcastRouteNextHopSourceAddressType. For the value + 'unknown', this object must be zero. For values 'ipv4' and + 'ipv4z', this object must be in the range 4..32. For values + 'ipv6' and 'ipv6z', this object must be in the range + 8..128." + ::= { ipMcastRouteNextHopEntry 6 } + +ipMcastRouteNextHopIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex value of the interface for the outgoing + interface for this next-hop." + ::= { ipMcastRouteNextHopEntry 7 } + +ipMcastRouteNextHopAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteNextHopAddress." + ::= { ipMcastRouteNextHopEntry 8 } + +ipMcastRouteNextHopAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address of the next-hop specific to this entry. For + most interfaces, this is identical to + ipMcastRouteNextHopGroup. Non-Broadcast Multi-Access + (NBMA) interfaces, however, may + have multiple next-hop addresses out a single outgoing + interface." + ::= { ipMcastRouteNextHopEntry 9 } + +ipMcastRouteNextHopState OBJECT-TYPE + SYNTAX INTEGER { pruned(1), forwarding(2) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An indication of whether the outgoing interface and next- + hop represented by this entry is currently being used to + forward IP datagrams. The value 'forwarding' indicates it + is currently being used; the value 'pruned' indicates it is + + + + not." + ::= { ipMcastRouteNextHopEntry 10 } + +ipMcastRouteNextHopTimeStamp OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at which the multicast routing + information represented by this entry was learned by the + router. + + If this information was present at the most recent re- + initialization of the local management subsystem, then this + object contains a zero value." + ::= { ipMcastRouteNextHopEntry 11 } + +ipMcastRouteNextHopExpiryTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum amount of time remaining before this entry will + be aged out. If ipMcastRouteNextHopState is pruned(1), the + remaining time until the prune expires and the state reverts + to forwarding(2). Otherwise, the remaining time until this + entry is removed from the table. The time remaining may be + copied from ipMcastRouteExpiryTime if the protocol in use + for this entry does not specify next-hop timers. The value + 0 indicates that the entry is not subject to aging." + ::= { ipMcastRouteNextHopEntry 12 } + +ipMcastRouteNextHopClosestMemberHops OBJECT-TYPE + SYNTAX Unsigned32 (0..256) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum number of hops between this router and any + member of this IP multicast group reached via this next-hop + on this outgoing interface. Any IP multicast datagrams for + the group that have a TTL (IPv4) or Hop Count (IPv6) less + than this number of hops will not be forwarded to this + next-hop. + + A value of 0 means all multicast datagrams are forwarded out + the interface. A value of 256 means that no multicast + datagrams are forwarded out the interface. + + + + + This is an optimization applied by multicast routing + protocols that explicitly track hop counts to downstream + listeners. Multicast protocols that are not aware of hop + counts to downstream listeners set this object to 0." + ::= { ipMcastRouteNextHopEntry 13 } + +ipMcastRouteNextHopProtocol OBJECT-TYPE + SYNTAX IANAipMRouteProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing mechanism via which this next-hop was learned." + ::= { ipMcastRouteNextHopEntry 14 } + +ipMcastRouteNextHopOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of octets of multicast packets that have been + forwarded using this route. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteNextHopTimeStamp." + ::= { ipMcastRouteNextHopEntry 15 } + +ipMcastRouteNextHopPkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets which have been forwarded using this + route. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteNextHopTimeStamp." + ::= { ipMcastRouteNextHopEntry 16 } + +-- +-- The IP Multicast Scope Boundary Table +-- + + + + +ipMcastBoundaryTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastBoundaryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the system's multicast scope + zone boundaries." + REFERENCE "RFC 4007 Section 5" + ::= { ipMcast 7 } + +ipMcastBoundaryEntry OBJECT-TYPE + SYNTAX IpMcastBoundaryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) describing one of this device's + multicast scope zone boundaries. + + OIDs are limited to 128 sub-identifiers, but this limit + is not enforced by the syntax of this entry. In practice, + this does not present a problem, because IP address types + allowed by conformance statements do not exceed this limit." + REFERENCE "RFC 2365 Section 5, RFC 4007 Section 5" + INDEX { ipMcastBoundaryIfIndex, + ipMcastBoundaryAddressType, + ipMcastBoundaryAddress, + ipMcastBoundaryAddressPrefixLength } + ::= { ipMcastBoundaryTable 1 } + +IpMcastBoundaryEntry ::= SEQUENCE { + ipMcastBoundaryIfIndex InterfaceIndex, + ipMcastBoundaryAddressType InetAddressType, + ipMcastBoundaryAddress InetAddress, + ipMcastBoundaryAddressPrefixLength InetAddressPrefixLength, + ipMcastBoundaryTimeStamp TimeStamp, + ipMcastBoundaryDroppedMcastOctets Counter64, + ipMcastBoundaryDroppedMcastPkts Counter64, + ipMcastBoundaryStatus RowStatus, + ipMcastBoundaryStorageType StorageType +} + +ipMcastBoundaryIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IfIndex value for the interface to which this boundary + applies. Packets with a destination address in the + + + + associated address/mask range will not be forwarded over + this interface. + + For IPv4, zone boundaries cut through links. Therefore, + this is an external interface. This may be either a + physical or virtual interface (tunnel, encapsulation, and + so forth.) + + For IPv6, zone boundaries cut through nodes. Therefore, + this is a virtual interface within the node. This is not + an external interface, either real or virtual. Packets + crossing this interface neither arrive at nor leave the + node, but only move between zones within the node." + REFERENCE "RFC 2365 Section 5, RFC 4007 Section 5" + ::= { ipMcastBoundaryEntry 1 } + +ipMcastBoundaryAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastBoundaryAddress. Legal values + correspond to the subset of address families for which + multicast forwarding is supported." + ::= { ipMcastBoundaryEntry 2 } + +ipMcastBoundaryAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The group address which, when combined with the + corresponding value of ipMcastBoundaryAddressPrefixLength, + identifies the group range for which the scoped boundary + exists. Scoped IPv4 multicast address ranges must be + prefixed by 239.0.0.0/8. Scoped IPv6 multicast address + ranges are FF0x::/16, where x is a valid RFC 4291 multicast + scope. + + An IPv6 address prefixed by FF1x::/16 is a non-permanently- + assigned address. An IPv6 address prefixed by FF3x::/16 is + a unicast-prefix-based multicast addresses. A zone boundary + for FF0x::/16 implies an identical boundary for these other + prefixes. No separate FF1x::/16 or FF3x::/16 entries exist + in this table. + + This address object is only significant up to + + + + ipMcastBoundaryAddressPrefixLength bits. The remaining + address bits are set to zero. This is especially important + for this index field, which is part of the index of this + entry. Any non-zero bits would signify an entirely + different entry." + ::= { ipMcastBoundaryEntry 3 } + +ipMcastBoundaryAddressPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which when, combined with + the corresponding value of ipMcastBoundaryAddress, + identifies the group range for which the scoped boundary + exists. + + The InetAddressType is given by ipMcastBoundaryAddressType. + For values 'ipv4' and 'ipv4z', this object must be in the + range 4..32. For values 'ipv6' and 'ipv6z', this object + must be set to 16." + ::= { ipMcastBoundaryEntry 4 } + +ipMcastBoundaryTimeStamp OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at which the multicast boundary + information represented by this entry was learned by the + router. + + If this information was present at the most recent re- + initialization of the local management subsystem, then this + object contains a zero value." + ::= { ipMcastBoundaryEntry 5 } + +ipMcastBoundaryDroppedMcastOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of octets of multicast packets that have been + dropped as a result of this zone boundary configuration. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of boundary + + + + configuration being removed and replaced, which can be + detected by observing the value of + ipMcastBoundaryTimeStamp." + ::= { ipMcastBoundaryEntry 6 } + +ipMcastBoundaryDroppedMcastPkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of multicast packets that have been dropped as a + result of this zone boundary configuration. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of boundary + configuration being removed and replaced, which can be + detected by observing the value of + ipMcastBoundaryTimeStamp." + ::= { ipMcastBoundaryEntry 7 } + +ipMcastBoundaryStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this row, by which rows in this table can + be created and destroyed. + + This status object can be set to active(1) without setting + any other columnar objects in this entry. + + All writeable objects in this entry can be modified when the + status of this entry is active(1)." + ::= { ipMcastBoundaryEntry 8 } + +ipMcastBoundaryStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row." + DEFVAL { nonVolatile } + ::= { ipMcastBoundaryEntry 9 } + +-- + + + +-- The IP Multicast Scope Name Table +-- + +ipMcastScopeNameTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastScopeNameEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing multicast scope names." + REFERENCE "RFC 4007 Section 4" + ::= { ipMcast 8 } + +ipMcastScopeNameEntry OBJECT-TYPE + SYNTAX IpMcastScopeNameEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) that names a multicast address + scope. + + OIDs are limited to 128 sub-identifiers, but this limit + is not enforced by the syntax of this entry. In practice, + this does not present a problem, because IP address types + allowed by conformance statements do not exceed this limit." + REFERENCE "RFC 4007 Section 4" + INDEX { ipMcastScopeNameAddressType, + ipMcastScopeNameAddress, + ipMcastScopeNameAddressPrefixLength, + ipMcastScopeNameLanguage } + ::= { ipMcastScopeNameTable 1 } + +IpMcastScopeNameEntry ::= SEQUENCE { + ipMcastScopeNameAddressType InetAddressType, + ipMcastScopeNameAddress InetAddress, + ipMcastScopeNameAddressPrefixLength InetAddressPrefixLength, + ipMcastScopeNameLanguage LangTag, + ipMcastScopeNameString SnmpAdminString, + ipMcastScopeNameDefault TruthValue, + ipMcastScopeNameStatus RowStatus, + ipMcastScopeNameStorageType StorageType +} + +ipMcastScopeNameAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + + + + contained in ipMcastScopeNameAddress. Legal values + correspond to the subset of address families for which + multicast forwarding is supported." + ::= { ipMcastScopeNameEntry 1 } + +ipMcastScopeNameAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The group address which, when combined with the + corresponding value of ipMcastScopeNameAddressPrefixLength, + identifies the group range associated with the multicast + scope. Scoped IPv4 multicast address ranges must be + prefixed by 239.0.0.0/8. Scoped IPv6 multicast address + ranges are FF0x::/16, where x is a valid RFC 4291 multicast + scope. + + An IPv6 address prefixed by FF1x::/16 is a non-permanently- + assigned address. An IPv6 address prefixed by FF3x::/16 is + a unicast-prefix-based multicast addresses. A scope + FF0x::/16 implies an identical scope name for these other + prefixes. No separate FF1x::/16 or FF3x::/16 entries exist + in this table. + + This address object is only significant up to + ipMcastScopeNameAddressPrefixLength bits. The remaining + address bits are set to zero. This is especially important + for this index field, which is part of the index of this + entry. Any non-zero bits would signify an entirely + different entry." + ::= { ipMcastScopeNameEntry 2 } + +ipMcastScopeNameAddressPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + the corresponding value of ipMcastScopeNameAddress, + identifies the group range associated with the multicast + scope. + + The InetAddressType is given by ipMcastScopeNameAddressType. + For values 'ipv4' and 'ipv4z', this object must be in the + range 4..32. For values 'ipv6' and 'ipv6z', this object + must be set to 16." + ::= { ipMcastScopeNameEntry 3 } + + + +ipMcastScopeNameLanguage OBJECT-TYPE + SYNTAX LangTag + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Language tag associated with the scope name." + REFERENCE "RFC 4646" + ::= { ipMcastScopeNameEntry 4 } + +ipMcastScopeNameString OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The textual name associated with the multicast scope. The + value of this object should be suitable for displaying to + end-users, such as when allocating a multicast address in + this scope. + + When no name is specified, the default value of this object + for IPv4 should be the string 239.x.x.x/y with x and y + replaced with decimal values to describe the address and + mask length associated with the scope. + + When no name is specified, the default value of this object + for IPv6 should be the string FF0x::/16, with x replaced by + the hexadecimal value for the RFC 4291 multicast scope. + + An IPv6 address prefixed by FF1x::/16 is a non-permanently- + assigned address. An IPv6 address prefixed by FF3x::/16 is + a unicast-prefix-based multicast addresses. A scope + FF0x::/16 implies an identical scope name for these other + prefixes. No separate FF1x::/16 or FF3x::/16 entries exist + in this table." + REFERENCE "RFC 2365, RFC 3306 Section 4, RFC 4291 Section 2.7" + ::= { ipMcastScopeNameEntry 5 } + +ipMcastScopeNameDefault OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If true, indicates a preference that the name in the + following language should be used by applications if no name + is available in a desired language." + DEFVAL { false } + ::= { ipMcastScopeNameEntry 6 } + + + + +ipMcastScopeNameStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this row, by which rows in this table can + be created and destroyed. Before the row can be activated, + the object ipMcastScopeNameString must be set to a valid + value. All writeable objects in this entry can be modified + when the status is active(1)." + ::= { ipMcastScopeNameEntry 7 } + +ipMcastScopeNameStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row." + DEFVAL { nonVolatile } + ::= { ipMcastScopeNameEntry 8 } + +-- +-- The Multicast Listeners Table +-- + +ipMcastLocalListenerTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastLocalListenerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing local applications or + services that have joined multicast groups as listeners. + + Entries exist for all addresses in the multicast range for + all applications and services as they are classified on this + device." + ::= { ipMcast 9 } + +ipMcastLocalListenerEntry OBJECT-TYPE + SYNTAX IpMcastLocalListenerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) identifying a local application + or service that has joined a multicast group as a listener. + + + + + OIDs are limited to 128 sub-identifiers, but this limit + is not enforced by the syntax of this entry. In practice, + this does not present a problem, because IP address types + allowed by conformance statements do not exceed this limit." + INDEX { ipMcastLocalListenerGroupAddressType, + ipMcastLocalListenerGroupAddress, + ipMcastLocalListenerSourceAddressType, + ipMcastLocalListenerSourceAddress, + ipMcastLocalListenerSourcePrefixLength, + ipMcastLocalListenerIfIndex, + ipMcastLocalListenerRunIndex } + ::= { ipMcastLocalListenerTable 1 } + +IpMcastLocalListenerEntry ::= SEQUENCE { + ipMcastLocalListenerGroupAddressType InetAddressType, + ipMcastLocalListenerGroupAddress InetAddress, + ipMcastLocalListenerSourceAddressType InetAddressType, + ipMcastLocalListenerSourceAddress InetAddress, + ipMcastLocalListenerSourcePrefixLength InetAddressPrefixLength, + ipMcastLocalListenerIfIndex InterfaceIndex, + ipMcastLocalListenerRunIndex Unsigned32 +} + +ipMcastLocalListenerGroupAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastLocalListenerGroupAddress. Legal values + correspond to the subset of address families for which + multicast is supported." + ::= { ipMcastLocalListenerEntry 1 } + +ipMcastLocalListenerGroupAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group for which this entry specifies + locally joined applications or services." + ::= { ipMcastLocalListenerEntry 2 } + +ipMcastLocalListenerSourceAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + + + "A value indicating the address family of the address + contained in ipMcastLocalListenerSource. + + A value of unknown(0) indicates a non-source-specific entry, + corresponding to all sources in the group. Otherwise, the + value MUST be the same as the value of + ipMcastLocalListenerGroupAddressType." + ::= { ipMcastLocalListenerEntry 3 } + +ipMcastLocalListenerSourceAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The network address which, when combined with the + corresponding value of the mask specified in + ipMcastLocalListenerSourcePrefixLength, identifies the + sources for which this entry specifies a local listener. + + This address object is only significant up to + ipMcastLocalListenerSourcePrefixLength bits. The remaining + address bits are set to zero. This is especially important + for this index field, which is part of the index of this + entry. Any non-zero bits would signify an entirely + different entry. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + listener address applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastLocalListenerEntry 4 } + +ipMcastLocalListenerSourcePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + the corresponding value specified in + ipMcastLocalListenerSource, identifies the sources for which + this entry specifies a local listener. + + The InetAddressType is given by + ipMcastLocalListenerSourceAddressType. For the value + 'unknown', this object must be zero. For values 'ipv4' and + 'ipv4z', this object must be in the range 4..32. For values + 'ipv6' and 'ipv6z', this object must be in the range + + + + 8..128." + ::= { ipMcastLocalListenerEntry 5 } + +ipMcastLocalListenerIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IfIndex value of the interface for which this entry + specifies a local listener." + ::= { ipMcastLocalListenerEntry 6 } + +ipMcastLocalListenerRunIndex OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A unique value corresponding to a piece of software running + on this router or host system. Where possible, this should + be the system's native, unique identification number. + + This identifier is platform-specific. It may correspond to + a process ID or application instance number. + + A value of zero indicates that the application instance(s) + cannot be identified. A value of zero indicates that one or + more unidentified applications have joined the specified + multicast groups (for the specified sources) as listeners." + REFERENCE "RFC 2287 sysApplRunIndex" + ::= { ipMcastLocalListenerEntry 7 } + +-- +-- The Multicast Zone Table +-- + +ipMcastZoneTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastZoneEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing scope zones on this device." + REFERENCE "RFC 4007 Section 5" + ::= { ipMcast 10 } + +ipMcastZoneEntry OBJECT-TYPE + SYNTAX IpMcastZoneEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "An entry (conceptual row) describing a scope zone on this + device." + REFERENCE "RFC 4007 Section 5" + INDEX { ipMcastZoneIndex } + ::= { ipMcastZoneTable 1 } + +IpMcastZoneEntry ::= SEQUENCE { + ipMcastZoneIndex InetZoneIndex, + ipMcastZoneScopeDefaultZoneIndex InetZoneIndex, + ipMcastZoneScopeAddressType InetAddressType, + ipMcastZoneScopeAddress InetAddress, + ipMcastZoneScopeAddressPrefixLength InetAddressPrefixLength +} + +ipMcastZoneIndex OBJECT-TYPE + SYNTAX InetZoneIndex (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This zone index uniquely identifies a zone on a device. + + Each zone is for a given scope. Scope-level information in + this table is for the unique scope that corresponds to this + zone. + + Zero is a special value used to request the default zone for + a given scope. Zero is not a valid value for this object. + + To test whether ipMcastZoneIndex is the default zone for + this scope, test whether ipMcastZoneIndex is equal to + ipMcastZoneScopeDefaultZoneIndex." + ::= { ipMcastZoneEntry 1 } + +ipMcastZoneScopeDefaultZoneIndex OBJECT-TYPE + SYNTAX InetZoneIndex (1..4294967295) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The default zone index for this scope. This is the zone + that this device will use if the default (zero) zone is + requested for this scope. + + Zero is not a valid value for this object." + ::= { ipMcastZoneEntry 2 } + +ipMcastZoneScopeAddressType OBJECT-TYPE + SYNTAX InetAddressType + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address type for which this scope zone exists." + ::= { ipMcastZoneEntry 3 } + +ipMcastZoneScopeAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The multicast group address which, when combined with + ipMcastZoneScopeAddressPrefixLength, gives the multicast + address range for this scope. The InetAddressType is given + by ipMcastZoneScopeAddressType. + + Scoped IPv4 multicast address ranges are prefixed by + 239.0.0.0/8. Scoped IPv6 multicast address ranges are + FF0x::/16, where x is a valid RFC 4291 multicast scope. + + An IPv6 address prefixed by FF1x::/16 is a non-permanently- + assigned address. An IPv6 address prefixed by FF3x::/16 is + a unicast-prefix-based multicast addresses. A scope + FF0x::/16 implies an identical scope for these other + prefixes. No separate FF1x::/16 or FF3x::/16 entries exist + in this table. + + This address object is only significant up to + ipMcastZoneScopeAddressPrefixLength bits. The remaining + address bits are set to zero." + REFERENCE "RFC 2365, RFC 3306 Section 4, RFC 4291 Section 2.7" + ::= { ipMcastZoneEntry 4 } + +ipMcastZoneScopeAddressPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined + with ipMcastZoneScopeAddress, gives the multicast address + prefix for this scope. + + The InetAddressType is given by ipMcastZoneScopeAddressType. + For values 'ipv4' and 'ipv4z', this object must be in the + range 4..32. For values 'ipv6' and 'ipv6z', this object + must be set to 16." + ::= { ipMcastZoneEntry 5 } + + + + +-- +-- Conformance information +-- + +ipMcastMIBConformance + OBJECT IDENTIFIER ::= { ipMcastMIB 2 } +ipMcastMIBCompliances + OBJECT IDENTIFIER ::= { ipMcastMIBConformance 1 } +ipMcastMIBGroups OBJECT IDENTIFIER ::= { ipMcastMIBConformance 2 } + +-- +-- Compliance statements +-- + +ipMcastMIBComplianceHost MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for hosts supporting IPMCAST-MIB. + + Support for either InetAddressType ipv4 or ipv6 is + mandatory; support for both InetAddressTypes ipv4 and ipv6 + is optional. Support for types ipv4z and ipv6z is + optional. + + -- OBJECT ipMcastLocalListenerGroupAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastLocalListenerGroupAddress + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastLocalListenerSourceAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastLocalListenerSourceAddress + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6." + + MODULE -- this module + MANDATORY-GROUPS { ipMcastMIBLocalListenerGroup, + + + + ipMcastMIBBasicGroup } + + OBJECT ipMcastEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastDeviceConfigStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP ipMcastMIBSsmGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteDiagnosticsGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBBoundaryIfGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBScopeNameGroup + DESCRIPTION + "This group is optional." + + ::= { ipMcastMIBCompliances 1 } + +ipMcastMIBComplianceRouter MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for routers supporting + IPMCAST-MIB. + + Support for either InetAddressType ipv4 or ipv6 is + mandatory; support for both InetAddressTypes ipv4 and ipv6 + is optional. Support for types ipv4z and ipv6z is + optional. + + -- OBJECT ipMcastSsmRangeAddressType + -- SYNTAX InetAddressType {ipv4(1), ipv6(2), ipv4z(3), + -- ipv6z(4)} + + + + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastSsmRangeAddress + -- SYNTAX InetAddress (SIZE (4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteGroupAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteGroup + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteSourceAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteSource + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopGroupAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopGroup + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopSourceAddressType + + + + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopSource + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopAddress + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6." + + MODULE -- this module + MANDATORY-GROUPS { ipMcastMIBRouteProtoGroup, + ipMcastMIBBasicGroup, + ipMcastMIBSsmGroup, + ipMcastMIBRouteGroup } + + OBJECT ipMcastEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastDeviceConfigStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceTtl + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceRateLimit + MIN-ACCESS read-only + + + + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastRouteUpstreamNeighborType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2), + ipv4z(3), ipv6z(4) } + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + or ipv6." + + OBJECT ipMcastRouteUpstreamNeighbor + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + or ipv6." + + OBJECT ipMcastRouteRtAddressType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2), + ipv4z(3), ipv6z(4) } + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + or ipv6." + + OBJECT ipMcastRouteRtAddress + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + or ipv6." + + OBJECT ipMcastSsmRangeRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastSsmRangeStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP ipMcastMIBRouteDiagnosticsGroup + DESCRIPTION + "This group is not mandatory, but SHOULD be supported where + hardware permits." + + + + GROUP ipMcastMIBPktsOutGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBHopCountGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteOctetsGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteBpsGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBLocalListenerGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBBoundaryIfGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBScopeNameGroup + DESCRIPTION + "This group is optional." + + ::= { ipMcastMIBCompliances 2 } + +ipMcastMIBComplianceBorderRouter MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for routers on scope + boundaries supporting IPMCAST-MIB. + + Support for either InetAddressType ipv4z or ipv6z is + mandatory; support for both InetAddressTypes ipv4z and + ipv6z is optional. + + -- OBJECT ipMcastSsmRangeAddressType + -- SYNTAX InetAddressType {ipv4(1), ipv6(2), ipv4z(3), + -- ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastSsmRangeAddress + -- SYNTAX InetAddress (SIZE (4|8|16|20)) + + + + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteGroupAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteGroup + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteSourceAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteSource + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteNextHopGroupAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteNextHopGroup + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteNextHopSourceAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + + + + -- + -- OBJECT ipMcastRouteNextHopSource + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteNextHopAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteNextHopAddress + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastBoundaryAddressType + -- SYNTAX InetAddressType {ipv4(1), ipv6(2)} + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastBoundaryAddress + -- SYNTAX InetAddress (SIZE (4|16) + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastScopeNameAddressType + -- SYNTAX InetAddressType {ipv4(1), ipv6(2)} + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastScopeNameAddress + -- SYNTAX InetAddress (SIZE (4|16) + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6." + + MODULE -- this module + MANDATORY-GROUPS { ipMcastMIBRouteProtoGroup, + ipMcastMIBBasicGroup, + ipMcastMIBSsmGroup, + ipMcastMIBRouteGroup, + ipMcastMIBBoundaryIfGroup, + ipMcastMIBScopeNameGroup } + + + + + OBJECT ipMcastEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastDeviceConfigStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceTtl + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceRateLimit + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastRouteUpstreamNeighborType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2), + ipv4z(3), ipv6z(4) } + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + and ipv4z, or ipv6 and ipv6z." + + OBJECT ipMcastRouteUpstreamNeighbor + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + and ipv4z, or ipv6 and ipv6z." + + OBJECT ipMcastRouteRtAddressType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2), + ipv4z(3), ipv6z(4) } + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + and ipv4z, or ipv6 and ipv6z." + + OBJECT ipMcastRouteRtAddress + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + DESCRIPTION + + + + "This compliance requires support for unknown and either ipv4 + and ipv4z, or ipv6 and ipv6z." + + OBJECT ipMcastSsmRangeRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastSsmRangeStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP ipMcastMIBRouteDiagnosticsGroup + DESCRIPTION + "This group is not mandatory, but SHOULD be supported where + hardware permits." + + GROUP ipMcastMIBPktsOutGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBHopCountGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteOctetsGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteBpsGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBLocalListenerGroup + DESCRIPTION + "This group is optional." + + OBJECT ipMcastZoneScopeAddressType + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + DESCRIPTION + "This compliance requires support for ipv4 or ipv6." + + OBJECT ipMcastZoneScopeAddress + SYNTAX InetAddress (SIZE (4|16)) + DESCRIPTION + "This compliance requires support for ipv4 or ipv6." + + + + + ::= { ipMcastMIBCompliances 3 } + +-- +-- Units of conformance +-- +ipMcastMIBBasicGroup OBJECT-GROUP + OBJECTS { ipMcastEnabled, + ipMcastRouteEntryCount, + ipMcastDeviceConfigStorageType + } + STATUS current + DESCRIPTION + "A collection of objects to support basic management of IP + Multicast protocols." + ::= { ipMcastMIBGroups 1 } + +ipMcastMIBSsmGroup OBJECT-GROUP + OBJECTS { ipMcastSsmRangeRowStatus, + ipMcastSsmRangeStorageType } + STATUS current + DESCRIPTION + "A collection of objects to support management of Source- + Specific Multicast routing." + ::= { ipMcastMIBGroups 2 } + +ipMcastMIBRouteGroup OBJECT-GROUP + OBJECTS { ipMcastInterfaceTtl, + ipMcastInterfaceRateLimit, + ipMcastInterfaceStorageType, + ipMcastRouteUpstreamNeighborType, + ipMcastRouteUpstreamNeighbor, + ipMcastRouteInIfIndex, + ipMcastRouteTimeStamp, + ipMcastRouteExpiryTime, + ipMcastRouteNextHopState, + ipMcastRouteNextHopTimeStamp, + ipMcastRouteNextHopExpiryTime + } + STATUS current + DESCRIPTION + "A collection of objects to support basic management of IP + Multicast routing." + ::= { ipMcastMIBGroups 3 } + +ipMcastMIBRouteDiagnosticsGroup OBJECT-GROUP + OBJECTS { ipMcastRoutePkts, + ipMcastRouteTtlDropPackets, + ipMcastRouteDifferentInIfPackets + + + + } + STATUS current + DESCRIPTION + "A collection of routing diagnostic packet counters." + ::= { ipMcastMIBGroups 4 } + +ipMcastMIBPktsOutGroup OBJECT-GROUP + OBJECTS { ipMcastRouteNextHopTimeStamp, + ipMcastRouteNextHopPkts } + STATUS current + DESCRIPTION + "A collection of objects to support management of packet + counters for each outgoing interface entry of a route." + ::= { ipMcastMIBGroups 5 } + +ipMcastMIBHopCountGroup OBJECT-GROUP + OBJECTS { ipMcastRouteNextHopClosestMemberHops } + STATUS current + DESCRIPTION + "A collection of objects to support management of the use of + hop counts in IP Multicast routing." + ::= { ipMcastMIBGroups 6 } + +ipMcastMIBRouteOctetsGroup OBJECT-GROUP + OBJECTS { ipMcastRouteTimeStamp, + ipMcastRouteOctets, + ipMcastRouteTtlDropOctets, + ipMcastRouteDifferentInIfOctets, + ipMcastRouteNextHopTimeStamp, + ipMcastRouteNextHopOctets } + STATUS current + DESCRIPTION + "A collection of objects to support management of octet + counters for each forwarding entry." + ::= { ipMcastMIBGroups 7 } + +ipMcastMIBRouteBpsGroup OBJECT-GROUP + OBJECTS { ipMcastRouteBps } + STATUS current + DESCRIPTION + "A collection of objects to support sampling of data rate + in bits per second for each forwarding entry." + ::= { ipMcastMIBGroups 8 } + +ipMcastMIBRouteProtoGroup OBJECT-GROUP + OBJECTS { ipMcastRouteProtocol, ipMcastRouteRtProtocol, + ipMcastRouteRtAddressType, ipMcastRouteRtAddress, + ipMcastRouteRtPrefixLength, ipMcastRouteRtType, + + + + ipMcastRouteNextHopProtocol } + STATUS current + DESCRIPTION + "A collection of objects providing information on the + relationship between multicast routing information and the + IP Forwarding Table." + ::= { ipMcastMIBGroups 9 } + +ipMcastMIBLocalListenerGroup OBJECT-GROUP + OBJECTS { ipMcastLocalListenerRunIndex } + STATUS current + DESCRIPTION + "A collection of objects to support management of local + listeners on hosts or routers." + ::= { ipMcastMIBGroups 10 } + +ipMcastMIBBoundaryIfGroup OBJECT-GROUP + OBJECTS { ipMcastBoundaryTimeStamp, + ipMcastBoundaryDroppedMcastOctets, + ipMcastBoundaryDroppedMcastPkts, + ipMcastBoundaryStatus, + ipMcastBoundaryStorageType, + ipMcastZoneScopeDefaultZoneIndex, + ipMcastZoneScopeAddressType, + ipMcastZoneScopeAddress, + ipMcastZoneScopeAddressPrefixLength + } + STATUS current + DESCRIPTION + "A collection of objects to support management of multicast + scope zone boundaries." + ::= { ipMcastMIBGroups 11 } + +ipMcastMIBScopeNameGroup OBJECT-GROUP + OBJECTS { ipMcastScopeNameString, ipMcastScopeNameDefault, + ipMcastScopeNameStatus, ipMcastScopeNameStorageType } + STATUS current + DESCRIPTION + "A collection of objects to support management of multicast + address scope names." + ::= { ipMcastMIBGroups 12 } + +END \ No newline at end of file diff --git a/mibs/ISIS-MIB.txt b/mibs/ISIS-MIB.txt new file mode 100644 index 00000000..ba847242 --- /dev/null +++ b/mibs/ISIS-MIB.txt @@ -0,0 +1,4581 @@ +ISIS-MIB DEFINITIONS ::= BEGIN + IMPORTS + TEXTUAL-CONVENTION, RowStatus, TruthValue, TimeStamp + FROM SNMPv2-TC -- RFC2579 + MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, + Unsigned32, Counter32, mib-2 + FROM SNMPv2-SMI -- RFC2578 + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF -- RFC2580 + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB -- RFC2571 + IndexInteger, IndexIntegerNextFree + FROM DIFFSERV-MIB -- RFC3289 + InterfaceIndex + FROM IF-MIB -- RFC2863 + InetAddressType, InetAddress, InetAddressPrefixLength + FROM INET-ADDRESS-MIB; -- RFC3291 + + isisMIB MODULE-IDENTITY + LAST-UPDATED "200604040000Z" -- April 4, 2006, midnight + ORGANIZATION "IETF IS-IS for IP Internets Working Group" + CONTACT-INFO + "IS-IS for IP Internets working Group + http://www.ietf.org/html.charters/isis-charter.html + isis-wg@ietf.org + + Jeff Parker + Department of Computer Science + Middlebury College, + Middlebury, Vermont 05753 + jeffp at middlbury dot edu" + + DESCRIPTION + "This document describes a management information base for + the IS-IS Routing protocol, as described in ISO 10589, + when it is used to construct routing tables for IP + networks, as described in RFC 1195. + + This document is based on a 1994 IETF document by Chris + Gunner. This version has been modified to include + current syntax, to exclude portions of the protocol that + are not relevant to IP, and to add management support for + current practice. + + + + + + + Copyright (C) The Internet Society (2006). This version + of this MIB module is part of RFC 4444; see the RFC + itself for full legal notices." + + REVISION "200604040000Z" -- April 4, 2006, midnight + + DESCRIPTION + "Initial version, published as RFC 4444." + ::= { mib-2 138 } + +-- Top-level structure of the MIB + +isisNotifications OBJECT IDENTIFIER ::= { isisMIB 0 } +isisObjects OBJECT IDENTIFIER ::= { isisMIB 1 } +isisConformance OBJECT IDENTIFIER ::= { isisMIB 2 } + +-- OBJECT IDENTIFIER definitions + +-- System wide attributes. +isisSystem OBJECT IDENTIFIER ::= { isisObjects 1 } + +-- Attributes associated with the domain or with the area. +isisSysLevel OBJECT IDENTIFIER ::= { isisObjects 2 } + +-- Attributes associated with one Circuit +isisCirc OBJECT IDENTIFIER ::= { isisObjects 3 } + +-- Attributes associated with area or domain relevant within a Circuit. +isisCircLevelValues OBJECT IDENTIFIER ::= { isisObjects 4 } + +-- System and circuit counters. +isisCounters OBJECT IDENTIFIER ::= { isisObjects 5 } + +-- Attributes associated with an adjacent Protocol Peer. +isisISAdj OBJECT IDENTIFIER ::= { isisObjects 6 } + +-- Attributes associated with a configured address. +isisReachAddr OBJECT IDENTIFIER ::= { isisObjects 7 } + +-- Attributes associated with IP routes learned by +-- configuration or through another protocol. +isisIPReachAddr OBJECT IDENTIFIER ::= { isisObjects 8 } + +-- The collection of Link State PDUs known to the Intermediate System +isisLSPDataBase OBJECT IDENTIFIER ::= { isisObjects 9 } + +-- Objects included in Notifications. +isisNotification OBJECT IDENTIFIER ::= { isisObjects 10 } + + + +-- Type definitions + + IsisOSINSAddress ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "OSI Network Service Address, e.g., NSAP, SNPA, or Network + Entity Title" + SYNTAX OCTET STRING (SIZE(0..20)) + + IsisSystemID ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The ID for an Intermediate System. This should + be unique within a network, and is included + in all PDUs originated by an Intermediate System. + The protocol does not place any meanings upon + the bits, other than using ordering to break + ties in electing a Designated IS on a LAN." + REFERENCE "{ISIS.aoi systemId (119)}" + SYNTAX OCTET STRING (SIZE(6)) + + IsisLinkStatePDUID ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The 8-byte Link State PDU (LSP) ID, + consisting of the 6-byte SystemID of the + originating IS; a one-byte PseudoNode ID, + which is 0 unless the LSP represents the + topology of a LAN; and a one-byte LSP + fragment number that is issued in sequence, + starting with 0. Non-zero PseudoNode IDs + need to be unique to the IS but need not + match the IfIndex." + REFERENCE "{See section 9.8 of ISO 10589}" + SYNTAX OCTET STRING (SIZE(8)) + + IsisAdminState ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Type used in enabling and disabling a row." + SYNTAX INTEGER + { + on(1), + off(2) + } + + IsisLSPBuffSize ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + + + + STATUS current + DESCRIPTION + "Integer sub-range for maximum LSP size." + SYNTAX Unsigned32 (512..16000) + + IsisLevelState ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "States of the IS-IS protocol." + SYNTAX INTEGER + { + off (1), + on (2), + waiting (3), + overloaded(4) + } + + IsisSupportedProtocol ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Types of network protocol supported by Integrated IS-IS. + The values for ISO8473 and IP are those registered for + these protocols in ISO TR9577." + REFERENCE "{See section 5.3.1 of RFC 1195}" + SYNTAX INTEGER + { + iso8473(129), + ipV6(142), + ip(204) + } + + IsisDefaultMetric ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "Integer sub-range for default metric for single hop. + ISO 10589 provides for 4 types of metric. Only the + 'default' metric is used in practice." + REFERENCE "{See section 7.2.2 of ISO 10589}" + SYNTAX Unsigned32 (0..63) + + IsisWideMetric ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "Wide metric for IS Neighbors. ISO 10589 provides a + 6-bit metric. Traffic Engineering extensions provide + 24-bit metrics." + + + + REFERENCE "{See section 3 of RFC 3784}" + SYNTAX Unsigned32 (0..16777215) + + IsisFullMetric ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "Full metric for IP Routes. Traffic Engineering extensions + provide 32-bit metrics." + REFERENCE "{See section 4 of RFC 3784}" + SYNTAX Unsigned32 + + IsisMetricType ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Is this an Internal or External Metric?" + REFERENCE "{See section 7.2.2 of ISO 10589}" + SYNTAX INTEGER + { + internal(1), + external(2) + } + + IsisMetricStyle ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Do we use RFC 1195 style metrics or wide metrics?" + REFERENCE "{See section 5 of RFC 3787}" + SYNTAX INTEGER + { + narrow(1), + wide(2), + both(3) + } + + IsisISLevel ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Identifies a level." + REFERENCE "{See definitions 3.6.1 and 3.6.11 of ISO 10589}" + SYNTAX INTEGER + { + area(1), -- L1 + domain(2) -- L2 + } + + IsisLevel ::= TEXTUAL-CONVENTION + STATUS current + + + + DESCRIPTION + "Identifies one or more levels." + REFERENCE "{See definitions 3.6.1 and 3.6.11 of ISO 10589}" + SYNTAX INTEGER + { + level1(1), + level2(2), + level1and2(3) + } + + IsisPDUHeader ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "A block to contain the header from a PDU." + SYNTAX OCTET STRING (SIZE(0..64)) + + IsisCircuitID ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "ID for a circuit." + REFERENCE "{See section 7.2.7 of ISO 10589}" + SYNTAX OCTET STRING (SIZE(0|7)) + + IsisISPriority ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "Integer sub-range for IS-IS priority." + REFERENCE "{See section 9.5 of ISO 10589}" + SYNTAX Unsigned32 (0..127) + + IsisUnsigned16TC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "An Unsigned32 further restricted to 16 bits. Note that + the ASN.1 BER encoding may still require 24 bits for + some values." + SYNTAX Unsigned32 (0..65535) + + IsisUnsigned8TC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "An Unsigned32 further restricted to 8 bits. Note that + the ASN.1 BER encoding may still require 16 bits for + some values." + SYNTAX Unsigned32 (0..255) + + + +-- Behavior Definitions + +-- ResettingTimer behavior definition +-- + +-- "This behavior applies to objects that specify the interval +-- between events in the operation of the protocol state machine. +-- If the value of such an object is set to a new value while +-- the protocol state machine is in operation, the implementation +-- shall take the necessary steps to ensure that for any time +-- interval that was in progress when the value of the +-- corresponding object was changed, the next expiration of that +-- interval takes place the specified time after the original +-- start of that interval, or immediately, whichever is later. +-- The precision with which this time shall be implemented shall +-- be the same as that associated with the basic operation of +-- the timer object." + +-- ReplaceOnlyWhileDisabled behavior definition +-- "This behavior applies to objects that may not be modified +-- while the corresponding table row's variable of type +-- IsisAdminState is in state on." + +-- ManualOrAutomatic behavior definition +-- "This behavior applies to objects that are read-write +-- if the object was created manually. Objects that were +-- created automatically that have this behavior are +-- read-only. + + isisSysObject OBJECT IDENTIFIER ::= { isisSystem 1 } + + isisSysVersion OBJECT-TYPE + SYNTAX INTEGER + { + unknown(0), + one(1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The version number of the IS-IS protocol that + is implemented." + REFERENCE "{ISIS.aoi version (1)}" + DEFVAL { one } + ::= { isisSysObject 1 } + + isisSysLevelType OBJECT-TYPE + SYNTAX IsisLevel + + + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "At which levels is the Intermediate System + running? This object may not be modified when + the isisSysAdminState variable is in state 'on' + for this Intermediate System. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi iSType (2)}" + DEFVAL { level1and2 } + ::= { isisSysObject 2 } + + isisSysID OBJECT-TYPE + SYNTAX IsisSystemID + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The ID for this Intermediate System. + This value is appended to each of the + area addresses to form the Network Entity Titles. + The derivation of a value for this object is + implementation specific. Some implementations may + automatically assign values and not permit an + SNMP write, while others may require the value + to be set manually. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi systemId (119)}" + ::= { isisSysObject 3 } + + isisSysMaxPathSplits OBJECT-TYPE + SYNTAX Unsigned32 (1..32) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Maximum number of paths with equal routing metric value + which it is permitted to split between. This object + may not be modified when the isisSysAdminState variable + is in state 'on' for this Intermediate System. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi maximumPathSplits (3)}" + DEFVAL { 2 } + ::= { isisSysObject 4 } + + isisSysMaxLSPGenInt OBJECT-TYPE + SYNTAX Unsigned32 (1..65235) + + + + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Maximum interval, in seconds, between generated LSPs + by this Intermediate System. This object follows + the ResettingTimer behavior. The value must be + greater than any value configured for + isisSysLevelMinLSPGenInt, and should be at least 300 + seconds less than isisSysMaxAge. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi maximumLSPGenerationInterval (6)}" + DEFVAL { 900 } + ::= { isisSysObject 5 } + + isisSysPollESHelloRate OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value, in seconds, to be used for the suggested ES + configuration timer in ISH PDUs when soliciting the ES + configuration. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi pollESHelloRate (13)}" + DEFVAL { 50 } + ::= { isisSysObject 6 } + + isisSysWaitTime OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Number of seconds to delay in state 'waiting' before + entering the state 'on'. This object follows the + ResettingTimer behavior. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi waitingTime (15)}" + DEFVAL { 60 } + ::= { isisSysObject 7 } + + isisSysAdminState OBJECT-TYPE + SYNTAX IsisAdminState + + + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative state of this Intermediate + System. Setting this object to the value 'on' + when its current value is 'off' enables + the Intermediate System. + + Configured values MUST survive an agent reboot." + DEFVAL { off } + ::= { isisSysObject 8 } + + isisSysL2toL1Leaking OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If true, allow the router to leak L2 routes into L1. + + Configured values MUST survive an agent reboot." + DEFVAL { false } + ::= { isisSysObject 9 } + + isisSysMaxAge OBJECT-TYPE + SYNTAX IsisUnsigned16TC (350..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Value to place in RemainingLifeTime field of + the LSPs we generate. + This should be at least 300 seconds greater than + isisSysMaxLSPGenInt. + + Configured values MUST survive an agent reboot." + DEFVAL { 1200 } + ::= { isisSysObject 10 } + + isisSysReceiveLSPBufferSize OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1492..16000) + UNITS "bytes" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Size of the largest buffer we are designed or + configured to store. This should be at least + as big as the maximum isisSysLevelOrigLSPBuffSize + supported by the system. + + + + If resources allow, we will store and flood LSPs + larger than isisSysReceiveLSPBufferSize, as this + can help avoid problems in networks with different + values for isisSysLevelOrigLSPBuffSize. + + Configured values MUST survive an agent reboot." + DEFVAL { 1492 } + ::= { isisSysObject 11 } + + isisSysProtSupported OBJECT-TYPE + SYNTAX BITS { + iso8473 (0), + ipv4 (1), + ipv6 (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This attribute contains the set of protocols + supported by this Intermediate System." + ::= { isisSysObject 12 } + + isisSysNotificationEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If this object is set to true(1), then it enables + the emission of IS-IS Notifications. If it is + set to false(2), these notifications are not sent. + + Configured values MUST survive an agent reboot." + DEFVAL { true } + ::= { isisSysObject 13 } + +-- The Level 1 Manual Area Address Table + + isisManAreaAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisManAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The set of manual area addresses configured on this + Intermediate System. + + At least one row in which the value of + isisManAreaAddrExistState is active must be present. + The maximum number of rows in this table for + + + + which the object isisManAreaAddrExistState has the + value active is 3. + + An attempt to create more than 3 rows of + isisManAreaAddrEntry with state 'active' in one + instance of the IS-IS protocol should + return inconsistentValue." + REFERENCE "{ISIS.aoi manualAreaAddresses (10)}" + ::= { isisSystem 2 } + + isisManAreaAddrEntry OBJECT-TYPE + SYNTAX IsisManAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one area address manually configured + on this system. + + Dynamically created rows MUST survive an agent reboot." + INDEX { isisManAreaAddr } + ::= { isisManAreaAddrTable 1 } + + IsisManAreaAddrEntry ::= + SEQUENCE { + isisManAreaAddr + IsisOSINSAddress, + isisManAreaAddrExistState + RowStatus + } + + isisManAreaAddr OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A manually configured area address for this system. + + Note: An index for the entry {1, {49.0001} active} in + this table would be the ordered pair + (1, (0x03 0x49 0x00 0x01)), as the length of an octet + string is part of the OID." + ::= { isisManAreaAddrEntry 1 } + + isisManAreaAddrExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "The state of the isisManAreaAddrEntry. If the + isisSysAdminState for this Intermediate System is 'on' and + an attempt is made to set this object to the value + 'destroy' or 'notInService' when this is the only + isisManAreaAddrEntry in state 'active' for this + Intermediate System should return inconsistentValue. + + A row entry cannot be modified when the value of this + object is 'active'." + ::= { isisManAreaAddrEntry 2 } + +-- The Level 1 Area Address Table + +-- The Level 1 Area Address Table contains the +-- union of the sets of relevant area addresses configured +-- or learned from Level 1 LSPs received by this Intermediate System. + + isisAreaAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The union of the sets of area addresses reported in all + Level 1 LSPs with fragment number zero generated by this + Intermediate System, or received from other Intermediate + Systems that are reachable via Level 1 routing." + REFERENCE "{ISIS.aoi areaAddresses (18)}" + ::= { isisSystem 3 } + + isisAreaAddrEntry OBJECT-TYPE + SYNTAX IsisAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one area address reported in a + Level 1 LSP generated or received by this Intermediate + System. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisAreaAddr } + ::= { isisAreaAddrTable 1 } + + IsisAreaAddrEntry ::= + SEQUENCE { + isisAreaAddr + IsisOSINSAddress + } + + + + + isisAreaAddr OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An area address reported in a Level 1 LSP." + ::= { isisAreaAddrEntry 1 } + +-- The Summary Address Table + +-- The Summary Address Table contains the set of summary +-- addresses manually configured for the Intermediate System. +-- +-- This is used to control leaking L1 routes into L2. + + isisSummAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisSummAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The set of IP summary addresses to use in forming + summary TLVs originated by this Intermediate System. + + An administrator may use a summary address to combine + and modify IP Reachability announcements. If the + Intermediate system can reach any subset of the summary + address, the summary address MUST be announced instead, + at the configured metric." + ::= { isisSystem 4 } + + isisSummAddrEntry OBJECT-TYPE + SYNTAX IsisSummAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one IP summary address. + + Dynamically created rows MUST survive an agent reboot. + + Implementers need to be aware that if the total number + of elements (octets or sub-identifiers) in + isisSummAddress and isisSummAddrPrefixLen is too great, + then OIDs of column instances in this table will have + more than 128 subidentifiers and cannot be accessed + using SNMPv1, SNMPv2c, or SNMPv3." + INDEX { isisSummAddressType, + isisSummAddress, + isisSummAddrPrefixLen } + + + + ::= { isisSummAddrTable 1 } + + IsisSummAddrEntry ::= + SEQUENCE { + isisSummAddressType + InetAddressType, + isisSummAddress + InetAddress, + isisSummAddrPrefixLen + InetAddressPrefixLength, + isisSummAddrExistState + RowStatus, + isisSummAddrMetric + IsisDefaultMetric, + isisSummAddrFullMetric + IsisFullMetric + } + + isisSummAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Type of IP address for this summary address." + ::= { isisSummAddrEntry 1 } + + isisSummAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP Address value for this summary address. + The address must not contain any set host bits + (bits set after the address prefix determined by + isisSummAddrPrefixLen). + + The type of this address is determined by the value of + the isisSummAddressType object." + ::= { isisSummAddrEntry 2 } + + isisSummAddrPrefixLen OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Length of the IP NetMask for this summary address. + + The values for the index objects isisSummAddress and + + + + isisSummAddrPrefixLen must be consistent. When the value + of isisSummAddress (excluding the zone index, if one + is present) is x, then the bitwise logical-AND + of x with the value of the mask formed from the + corresponding index object isisSummAddrPrefixLen MUST be + equal to x. If not, then the index pair is not + consistent, and an inconsistentName error must be + returned on SET or CREATE requests." + ::= { isisSummAddrEntry 3 } + + isisSummAddrExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The existence state of this summary address. Support + for 'createAndWait' and 'notInService' is not required. + + A row entry cannot be modified when the value of this + object is 'active'." + ::= { isisSummAddrEntry 4 } + + isisSummAddrMetric OBJECT-TYPE + SYNTAX IsisDefaultMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric value to announce this summary + address within LSPs generated by this system." + DEFVAL { 20 } + ::= { isisSummAddrEntry 5 } + + isisSummAddrFullMetric OBJECT-TYPE + SYNTAX IsisFullMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The wide metric value to announce this summary + address within LSPs generated by this system." + DEFVAL { 20 } + ::= { isisSummAddrEntry 6 } + +-- The Redistribution table defines addresses that should be +-- leaked from L2 to L1 if isisSysL2toL1Leaking is enabled. + + isisRedistributeAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisRedistributeAddrEntry + MAX-ACCESS not-accessible + + + + STATUS current + DESCRIPTION + "This table provides criteria to decide if a route should + be leaked from L2 to L1 when Domain Wide Prefix leaking is + enabled. + + Addresses that match the summary mask in the table MUST + be announced at L1 by routers when isisSysL2toL1Leaking + is enabled. Routes that fall into the ranges specified + are announced as is, without being summarized. Routes + that do not match a summary mask are not announced." + ::= { isisSystem 5 } + + isisRedistributeAddrEntry OBJECT-TYPE + SYNTAX IsisRedistributeAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one configured IP summary + address to manage leaking L2 addresses into L1. + + Dynamically created rows MUST survive an agent reboot. + + Implementers need to be aware that if the total number + of elements (octets or sub-identifiers) in + isisRedistributeAddrAddress and + isisRedistributeAddrPrefixLen is too great, then OIDs + of column instances in this table will have more than + 128 subidentifiers and cannot be accessed using SNMPv1, + SNMPv2c, or SNMPv3." + INDEX { isisRedistributeAddrType, + isisRedistributeAddrAddress, + isisRedistributeAddrPrefixLen } + ::= { isisRedistributeAddrTable 1 } + + IsisRedistributeAddrEntry ::= + SEQUENCE { + isisRedistributeAddrType + InetAddressType, + isisRedistributeAddrAddress + InetAddress, + isisRedistributeAddrPrefixLen + InetAddressPrefixLength, + isisRedistributeAddrExistState + RowStatus + } + + isisRedistributeAddrType OBJECT-TYPE + + + + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Type of IP address for this summary address." + ::= { isisRedistributeAddrEntry 1 } + + isisRedistributeAddrAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP Address value for this summary address. + The type of this address is determined by the + value of the isisRedistributeAddrType object. + The address must not contain any set host bits - + bits set after the address prefix determined by + isisRedistributeAddrPrefixLen." + + ::= { isisRedistributeAddrEntry 2 } + + isisRedistributeAddrPrefixLen OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Length of the IP NetMask for this summary address. + + The values for the index objects + isisRedistributeAddrAddress and + isisRedistributeAddrPrefixLen must be consistent. + When the value of isisRedistributeAddrAddress + (excluding the zone index, if one is present) is x, + then the bitwise logical-AND of x with the value of + the mask formed from the corresponding index object + isisRedistributeAddrPrefixLen MUST be equal to x. + If not, then the index pair is not consistent, and an + inconsistentName error must be returned on SET or + CREATE requests." + + ::= { isisRedistributeAddrEntry 3 } + + isisRedistributeAddrExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The existence state of this summary address. Support + + + + for createAndWait and notInService is not required. + + A row entry cannot be modified when the value of this + object is 'active'." + ::= { isisRedistributeAddrEntry 4 } + +-- The Router Table keeps track of hostnames and router IDs +-- associated with Intermediate Systems in the area and domain. + + isisRouterTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisRouterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The set of hostnames and router ID." + ::= { isisSystem 6 } + + isisRouterEntry OBJECT-TYPE + SYNTAX IsisRouterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry tracks information about one Intermediate + System at one level. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisRouterSysID, + isisRouterLevel } + ::= { isisRouterTable 1 } + + IsisRouterEntry ::= + SEQUENCE { + isisRouterSysID + IsisSystemID, + isisRouterLevel + IsisISLevel, + isisRouterHostName + SnmpAdminString, + isisRouterID + Unsigned32 + } + + isisRouterSysID OBJECT-TYPE + SYNTAX IsisSystemID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The System ID of the Intermediate System." + + + + ::= { isisRouterEntry 1 } + + isisRouterLevel OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The level at which the information about this + Intermediate System was received." + ::= { isisRouterEntry 2 } + + isisRouterHostName OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The hostname listed in the LSP, or a zero-length + string if none." + ::= { isisRouterEntry 3 } + + isisRouterID OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Router ID found in the LSP, or zero if none." + ::= { isisRouterEntry 4 } + +-- The System Level Table +-- This table captures level-specific information about the system + + isisSysLevelTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisSysLevelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Level specific information about the System." + ::= { isisSysLevel 1 } + + isisSysLevelEntry OBJECT-TYPE + SYNTAX IsisSysLevelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each row describes variables configured for Area or Domain. + + Configured values MUST survive an agent reboot." + INDEX { isisSysLevelIndex } + + + + ::= { isisSysLevelTable 1 } + + IsisSysLevelEntry ::= + SEQUENCE { + isisSysLevelIndex + IsisISLevel, + isisSysLevelOrigLSPBuffSize + IsisLSPBuffSize, + isisSysLevelMinLSPGenInt + IsisUnsigned16TC, + isisSysLevelState + IsisLevelState, + isisSysLevelSetOverload + TruthValue, + isisSysLevelSetOverloadUntil + Unsigned32, + isisSysLevelMetricStyle + IsisMetricStyle, + isisSysLevelSPFConsiders + IsisMetricStyle, + isisSysLevelTEEnabled + TruthValue + } + + isisSysLevelIndex OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The level that this entry describes." + ::= { isisSysLevelEntry 1 } + + isisSysLevelOrigLSPBuffSize OBJECT-TYPE + SYNTAX IsisLSPBuffSize + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The maximum size of LSPs and SNPs originated by + this Intermediate System at this level. This + object may not be modified when the isisSysAdminState + variable is in state 'on' for this Intermediate System." + REFERENCE "{ISIS.aoi originatingL1LSPBufferSize (9)}" + DEFVAL { 1492 } + ::= { isisSysLevelEntry 2 } + + isisSysLevelMinLSPGenInt OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1..65535) + UNITS "seconds" + + + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Minimum interval, in seconds, between successive + generation of LSPs with the same LSPID at this level + by this Intermediate System." + REFERENCE "{ISIS.aoi minimumLSPGenerationInterval (11)}" + DEFVAL { 30 } + ::= { isisSysLevelEntry 3 } + + isisSysLevelState OBJECT-TYPE + SYNTAX IsisLevelState + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the database at this level. + The value 'off' indicates that IS-IS is not active at + this level. + The value 'on' indicates that IS-IS is active at this + level and is not overloaded. + The value 'waiting' indicates a database that is low on + an essential resource, such as memory. + The administrator may force the state to 'overloaded' + by setting the object isisSysLevelSetOverload. + If the state is 'waiting' or 'overloaded', we + originate LSPs with the overload bit set." + REFERENCE "{ISIS.aoi l1State (17)}" + ::= { isisSysLevelEntry 4 } + + isisSysLevelSetOverload OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Administratively set the overload bit for the level. + The overload bit MUST continue to be set if the + implementation runs out of memory, independent of + this variable. It may also be set manually independent + of this variable, using the isisSysLevelSetOverloadUntil + object." + DEFVAL { false } + ::= { isisSysLevelEntry 5 } + + isisSysLevelSetOverloadUntil OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "Seconds until clearing manually set Overload Bit" + MAX-ACCESS read-write + STATUS current + + + + DESCRIPTION + "If this object is non-zero, the overload bit is set at + this level when the isisSysAdminState variable goes to + state 'on' for this Intermediate System. The overload bit + remains set for isisSysLevelSetOverloadUntil seconds. + When isisSysLevelSetOverloadUntil seconds have elapsed, + the overload flag remains set if the implementation has + run out of memory, or if it is set manually using the + isisSysLevelSetOverload object. + + If isisSysLevelSetOverload is false, the system clears + the overload bit when isisSysLevelSetOverloadUntil seconds + have elapsed, if the system has not run out of memory." + ::= { isisSysLevelEntry 6 } + + isisSysLevelMetricStyle OBJECT-TYPE + SYNTAX IsisMetricStyle + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Which style of metric do we generate in our LSPs + at this level?" + DEFVAL { narrow } + ::= { isisSysLevelEntry 7 } + + isisSysLevelSPFConsiders OBJECT-TYPE + SYNTAX IsisMetricStyle + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Which style of metric do we consider in our + SPF computation at this level?" + DEFVAL { narrow } + ::= { isisSysLevelEntry 8 } + + isisSysLevelTEEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Do we do Traffic Engineering at this level?" + DEFVAL { false } + ::= { isisSysLevelEntry 9 } + +-- Static to provide next CircIndex + + isisNextCircIndex OBJECT-TYPE + SYNTAX IndexIntegerNextFree + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object is used to assist a management + application in creating new rows in the + isisCircTable. If it is possible to create + a new instance of isisCircEntry, then this + object will contain a non-zero value that + is not in use as the index of any row in the + isisCircTable. The network manager reads the + value of this object and then (if the + value read is non-zero) attempts to create + the corresponding instance of isisCircEntry. + If the set request fails with the code + 'inconsistentValue', then the process must be + repeated; if the set request succeeds, then + the agent will change the value of this object + according to an implementation-specific + algorithm." + ::= { isisCirc 1 } + +-- The Circuit Table +-- Each broadcast or point-to-point interface on the system +-- corresponds to one entry in the Circuit table. However, there +-- may be multiple X.25 DA circuit entries in the Circuit table +-- for a given X.25 interface. + + isisCircTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisCircEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table of circuits used by this + Intermediate System." + ::= { isisCirc 2 } + + isisCircEntry OBJECT-TYPE + SYNTAX IsisCircEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An isisCircEntry exists for each circuit configured + for Integrated IS-IS on this system. + + Dynamically created rows MUST survive an agent reboot." + INDEX { isisCircIndex } + ::= { isisCircTable 1 } + + + + + IsisCircEntry ::= + SEQUENCE { + isisCircIndex + IndexInteger, + isisCircIfIndex + InterfaceIndex, + isisCircAdminState + IsisAdminState, + isisCircExistState + RowStatus, + isisCircType + INTEGER, + isisCircExtDomain + TruthValue, + isisCircLevelType + IsisLevel, + isisCircPassiveCircuit + TruthValue, + isisCircMeshGroupEnabled + INTEGER, + isisCircMeshGroup + Unsigned32, + isisCircSmallHellos + TruthValue, + isisCircLastUpTime + TimeStamp, + isisCirc3WayEnabled + TruthValue, + isisCircExtendedCircID + Unsigned32 + } + + isisCircIndex OBJECT-TYPE + SYNTAX IndexInteger + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An index used to uniquely identify this circuit. + When creating a row in this table, the + isisNextCircIndex object should be retrieved, + and its value should be specified as the value + of this index using a SET operation. A retrieved + value of zero(0) indicates that no rows can be + created at this time." + ::= { isisCircEntry 1 } + + isisCircIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + + + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value of ifIndex for the interface to which this + circuit corresponds. This object cannot be modified + after creation." + ::= { isisCircEntry 2 } + + isisCircAdminState OBJECT-TYPE + SYNTAX IsisAdminState + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The administrative state of the circuit." + DEFVAL { off } + ::= { isisCircEntry 3 } + + isisCircExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The existence state of this circuit. Setting the state + to 'notInService' halts the generation and processing of + IS-IS protocol PDUs on this circuit. Setting the state + to destroy will also erase any configuration associated + with the circuit. Support for 'createAndWait' and + 'notInService' is not required. + + A row entry cannot be modified when the value of this + object is 'active'." + ::= { isisCircEntry 4 } + + isisCircType OBJECT-TYPE + SYNTAX INTEGER + { + broadcast(1), + ptToPt(2), + staticIn(3), + staticOut(4), + dA(5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of the circuit. This object follows the + ReplaceOnlyWhileDisabled behavior. The type specified + must be compatible with the type of the interface defined + + + + by the value of isisCircIfIndex." + REFERENCE "{ISIS.aoi type (33)}" + ::= { isisCircEntry 5 } + + isisCircExtDomain OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If true, suppress normal transmission of and + interpretation of Intra-domain IS-IS PDUs on this + circuit." + REFERENCE "{ISIS.aoi externalDomain (46)}" + DEFVAL { false } + ::= { isisCircEntry 6 } + + isisCircLevelType OBJECT-TYPE + SYNTAX IsisLevel + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates which type of packets will be sent and + accepted on this circuit. The values set will be + saved, but the values used will be modified by + the settings of isisSysLevelType. Thus, if the + isisSysTpe is level2 and the isisCircLevelType + for a circuit is level1, the circuit will not send + or receive IS-IS packets. This object follows the + ReplaceOnlyWhileDisabled behavior." + DEFVAL { level1and2 } + ::= { isisCircEntry 7 } + + isisCircPassiveCircuit OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Should we include this interface in LSPs, even if + it is not running the IS-IS Protocol?" + DEFVAL { false } + ::= { isisCircEntry 8 } + + isisCircMeshGroupEnabled OBJECT-TYPE + SYNTAX INTEGER + { + inactive(1), + blocked(2), + set(3) + + + + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Is this port a member of a mesh group, or is it + blocked? Circuits in the same mesh group act as a + virtual multiaccess network. LSPs seen on one circuit + in a mesh group will not be flooded to another circuit + in the same mesh group." + REFERENCE "{ RFC 2973 }" + DEFVAL { inactive } + ::= { isisCircEntry 9 } + + isisCircMeshGroup OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Circuits in the same mesh group act as a virtual + multiaccess network. LSPs seen on one circuit in + a mesh group will not be flooded to another circuit + in the same mesh group. If isisCircMeshGroupEnabled + is inactive or blocked, this value is ignored." + REFERENCE "{ RFC 2973 }" + ::= { isisCircEntry 10 } + + isisCircSmallHellos OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Can we send unpadded hellos on LAN circuits? False + means the LAN Hellos must be padded. + Implementations should allow the administrator to read + this value. An implementation need not be able to + support unpadded hellos to be conformant." + DEFVAL { false } + ::= { isisCircEntry 11 } + + isisCircLastUpTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "How long the circuit has been enabled, measured in + hundredths of seconds since the last re-initialization + of the network management subsystem; 0 if the + circuit has never been 'on'." + + + + ::= { isisCircEntry 12 } + + isisCirc3WayEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Is this circuit enabled to run 3Way handshake?" + DEFVAL { true } + ::= { isisCircEntry 13 } + + isisCircExtendedCircID OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value to be used as the extended circuit ID in + 3Way handshake. This value is only used if + isisCirc3WayEnabled is true, and it must be unique + across all circuits on this IS." + ::= { isisCircEntry 14 } + +-- The Circuit Level Table +-- This table captures level-specific information about a circuit + + isisCircLevelTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisCircLevelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Level specific information about circuits used by IS-IS." + ::= { isisCircLevelValues 1 } + + isisCircLevelEntry OBJECT-TYPE + SYNTAX IsisCircLevelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An isisCircLevelEntry exists for each level on + each circuit configured for Integrated IS-IS on + this system. + + Configured values MUST survive an agent reboot." + INDEX { isisCircIndex, + isisCircLevelIndex } + ::= { isisCircLevelTable 1 } + + IsisCircLevelEntry ::= + + + + SEQUENCE { + isisCircLevelIndex + IsisISLevel, + isisCircLevelMetric + IsisDefaultMetric, + isisCircLevelWideMetric + IsisWideMetric, + isisCircLevelISPriority + IsisISPriority, + isisCircLevelIDOctet + Unsigned32, + isisCircLevelID + IsisCircuitID, + isisCircLevelDesIS + IsisCircuitID, + isisCircLevelHelloMultiplier + Unsigned32, + isisCircLevelHelloTimer + Unsigned32, + isisCircLevelDRHelloTimer + Unsigned32, + isisCircLevelLSPThrottle + IsisUnsigned16TC, + isisCircLevelMinLSPRetransInt + Unsigned32, + isisCircLevelCSNPInterval + Unsigned32, + isisCircLevelPartSNPInterval + Unsigned32 + } + + isisCircLevelIndex OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The level that this entry describes." + ::= { isisCircLevelEntry 1 } + + isisCircLevelMetric OBJECT-TYPE + SYNTAX IsisDefaultMetric + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The metric value of this circuit for this level." + REFERENCE "{ISIS.aoi l1DefaultMetric (35)}" + DEFVAL { 10 } + ::= { isisCircLevelEntry 2 } + + + + isisCircLevelWideMetric OBJECT-TYPE + SYNTAX IsisWideMetric + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The wide metric value of this circuit for this level." + DEFVAL { 10 } + ::= { isisCircLevelEntry 3 } + + isisCircLevelISPriority OBJECT-TYPE + SYNTAX IsisISPriority + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The priority for becoming the LAN-Designated + Intermediate System at this level." + REFERENCE "{ISIS.aoi l2IntermediateSystemPriority (73)}" + DEFVAL { 64 } + ::= { isisCircLevelEntry 4 } + + isisCircLevelIDOctet OBJECT-TYPE + SYNTAX Unsigned32(0..255) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A one-byte identifier for the circuit selected by the + Intermediate System. + + On point-to-point circuits, the value is used as the Local + Circuit ID in point-to-point IIH PDUs transmitted on this + circuit. In this case, values of isisCircLevelIDOctet do + not need to be unique. + + For broadcast circuits, the value is used to generate the + LAN ID that will be used if this Intermediate System is + elected as the Designated IS on this circuit. The value + is required to differ on LANs where the Intermediate System + is the Designated Intermediate System." + ::= { isisCircLevelEntry 5 } + + isisCircLevelID OBJECT-TYPE + SYNTAX IsisCircuitID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "On a point-to-point circuit with a fully initialized + adjacency to a peer IS, the value of this object is + the circuit ID negotiated during adjacency initialization. + + + + On a point to point circuit without such an adjacency, + the value is the concatenation of the local system ID + and the one-byte isisCircLevelIDOctet for this circuit, + i.e., the value that would be proposed for the circuit ID. + On other circuit types, the value returned is the zero- + length OCTET STRING." + REFERENCE "{ISIS.aoi ptPtCircuitID (51)}" + ::= { isisCircLevelEntry 6 } + + isisCircLevelDesIS OBJECT-TYPE + SYNTAX IsisCircuitID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The ID of the LAN-Designated Intermediate System + on this circuit at this level. If, for any reason, + this system is not partaking in the relevant + Designated Intermediate System election process, + then the value returned is the zero-length OCTET STRING." + REFERENCE "{ISIS.aoi l2DesignatedIntermediateSystem (75)}" + ::= { isisCircLevelEntry 7 } + + isisCircLevelHelloMultiplier OBJECT-TYPE + SYNTAX Unsigned32 (2..100) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This value is multiplied by the corresponding HelloTimer, + and the result in seconds (rounded up) is used as the + holding time in transmitted hellos, to be used by + receivers of hello packets from this IS." + REFERENCE "{ISIS.aoi iSISHelloTimer (45)}" + DEFVAL { 10 } + ::= { isisCircLevelEntry 8 } + + isisCircLevelHelloTimer OBJECT-TYPE + SYNTAX Unsigned32 (10..600000) + UNITS "milliseconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Maximum period, in milliseconds, between IIH PDUs + on multiaccess networks at this level for LANs. + The value at L1 is used as the period between + Hellos on L1L2 point-to-point circuits. Setting + this value at level 2 on an L1L2 point-to-point + circuit will result in an error of InconsistentValue. + + + + + This object follows the ResettingTimer behavior." + REFERENCE "{ISIS.aoi iSISHelloTimer (45)}" + DEFVAL { 3000 } + ::= { isisCircLevelEntry 9 } + + isisCircLevelDRHelloTimer OBJECT-TYPE + SYNTAX Unsigned32 (10..120000) + UNITS "milliseconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Period, in milliseconds, between Hello PDUs on + multiaccess networks when this IS is the Designated + Intermediate System. This object follows the + ResettingTimer behavior." + REFERENCE "{ISIS.aoi iSISHelloTimer (45)}" + DEFVAL { 1000 } + ::= { isisCircLevelEntry 10 } + + isisCircLevelLSPThrottle OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1..65535) + UNITS "milliseconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Minimal interval of time, in milliseconds, between + transmissions of LSPs on an interface at this level." + REFERENCE + "{ISIS.aoi minimumBroadcastLSPTransmissionInterval (5)}" + DEFVAL { 30 } + ::= { isisCircLevelEntry 11 } + + isisCircLevelMinLSPRetransInt OBJECT-TYPE + SYNTAX Unsigned32 (1..300) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Minimum interval, in seconds, between re-transmission of + an LSP at this level. This object follows the + ResettingTimer behavior. + + Note that isisCircLevelLSPThrottle controls + how fast we send back-to-back LSPs. This variable + controls how fast we re-send the same LSP." + REFERENCE "{ISIS.aoi minimumLSPTransmissionInterval (5)}" + DEFVAL { 5 } + ::= { isisCircLevelEntry 12 } + + + + isisCircLevelCSNPInterval OBJECT-TYPE + SYNTAX Unsigned32 (1..600) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Interval of time, in seconds, between periodic + transmission of a complete set of CSNPs on + multiaccess networks if this router is the + designated router at this level. + This object follows the ResettingTimer behavior." + REFERENCE "{ISIS.aoi completeSNPInterval (8)}" + DEFVAL { 10 } + ::= { isisCircLevelEntry 13 } + + isisCircLevelPartSNPInterval OBJECT-TYPE + SYNTAX Unsigned32 (1..120) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Minimum interval, in seconds, between sending Partial + Sequence Number PDUs at this level. This object + follows the ResettingTimer behavior." + REFERENCE "{ISIS.aoi partialSNPInterval (14)}" + DEFVAL { 2 } + ::= { isisCircLevelEntry 14 } + +-- isisSystemCounterTable keeps track of system-wide events. + + isisSystemCounterTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisSystemCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "System-wide counters for this Intermediate System." + ::= { isisCounters 1 } + + isisSystemCounterEntry OBJECT-TYPE + SYNTAX IsisSystemCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "System-wide IS-IS counters." + INDEX { isisSysStatLevel } + ::= { isisSystemCounterTable 1 } + + IsisSystemCounterEntry ::= + + + + SEQUENCE { + isisSysStatLevel + IsisISLevel, + isisSysStatCorrLSPs + Counter32, + isisSysStatAuthTypeFails + Counter32, + isisSysStatAuthFails + Counter32, + isisSysStatLSPDbaseOloads + Counter32, + isisSysStatManAddrDropFromAreas + Counter32, + isisSysStatAttmptToExMaxSeqNums + Counter32, + isisSysStatSeqNumSkips + Counter32, + isisSysStatOwnLSPPurges + Counter32, + isisSysStatIDFieldLenMismatches + Counter32, + isisSysStatPartChanges + Counter32, + isisSysStatSPFRuns + Counter32, + isisSysStatLSPErrors + Counter32 + } + + isisSysStatLevel OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The level that this entry describes." + ::= { isisSystemCounterEntry 1 } + + isisSysStatCorrLSPs OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of corrupted in-memory frames" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of corrupted in-memory LSPs detected. + + LSPs received from the wire with a bad checksum + are silently dropped and are not counted. + + + + + LSPs received from the wire with parse errors + are counted by isisSysStatLSPErrors." + REFERENCE "{ISIS.aoi corruptedLSPsDetected (19)}" + ::= { isisSystemCounterEntry 2 } + + isisSysStatAuthTypeFails OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of frames with authentication type mismatches" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of authentication type mismatches recognized + by this Intermediate System." + ::= { isisSystemCounterEntry 3 } + + isisSysStatAuthFails OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of frames with authentication key failures" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of authentication key failures recognized + by this Intermediate System." + ::= { isisSystemCounterEntry 4 } + + isisSysStatLSPDbaseOloads OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times the LSP database has become + overloaded." + REFERENCE "{ISIS.aoi lSPL1DatabaseOverloads (20)}" + ::= { isisSystemCounterEntry 5 } + + isisSysStatManAddrDropFromAreas OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times a manual address has been dropped from + the area." + REFERENCE "{ISIS.aoi manualAddressesDroppedFromArea (21)}" + ::= { isisSystemCounterEntry 6 } + + isisSysStatAttmptToExMaxSeqNums OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "Number of times the IS has attempted to exceed the + maximum sequence number." + REFERENCE + "{ISIS.aoi attemptsToExceedmaximumSequenceNumber (22)}" + ::= { isisSystemCounterEntry 7 } + + isisSysStatSeqNumSkips OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times a sequence number skip has occurred." + REFERENCE "{ISIS.aoi sequenceNumberSkips (23)}" + ::= { isisSystemCounterEntry 8 } + + isisSysStatOwnLSPPurges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times a zero-aged copy of the system's own LSP + is received from some other node." + REFERENCE "{ISIS.aoi ownLSPPurges (24)}" + ::= { isisSystemCounterEntry 9 } + + isisSysStatIDFieldLenMismatches OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of frames with ID length mismatches" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times a PDU is received with a different value + for ID field length from that of the receiving system." + REFERENCE "{ISIS.aoi iDFieldLengthMismatches (25)}" + ::= { isisSystemCounterEntry 10 } + + isisSysStatPartChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Partition changes." + ::= { isisSystemCounterEntry 11 } + + isisSysStatSPFRuns OBJECT-TYPE + SYNTAX Counter32 + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times we ran SPF at this level." + ::= { isisSystemCounterEntry 12 } + + isisSysStatLSPErrors OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of frames with errors that we have received" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of LSPs with errors we have received." + ::= { isisSystemCounterEntry 13 } + +-- isisCircuitCounterTable keeps track of events +-- specific to a circuit and a level + + isisCircuitCounterTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisCircuitCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Circuit specific counters for this + Intermediate System." + ::= { isisCounters 2 } + + isisCircuitCounterEntry OBJECT-TYPE + SYNTAX IsisCircuitCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An isisCircuitCounterEntry exists for each circuit + used by Integrated IS-IS on this system." + INDEX { isisCircIndex, + isisCircuitType } + ::= { isisCircuitCounterTable 1 } + + IsisCircuitCounterEntry ::= SEQUENCE { + isisCircuitType + INTEGER, + isisCircAdjChanges + Counter32, + isisCircNumAdj + Unsigned32, + isisCircInitFails + Counter32, + isisCircRejAdjs + + + + Counter32, + isisCircIDFieldLenMismatches + Counter32, + isisCircMaxAreaAddrMismatches + Counter32, + isisCircAuthTypeFails + Counter32, + isisCircAuthFails + Counter32, + isisCircLANDesISChanges + Counter32 + } + + isisCircuitType OBJECT-TYPE + SYNTAX INTEGER + { + lanlevel1(1), + lanlevel2(2), + p2pcircuit(3) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "What type of circuit saw these counts? + + The point-to-point Hello PDU includes + both L1 and L2, and ISs form a single + adjacency on point-to-point links. + Thus, we combine counts on + point-to-point links into one group." + ::= { isisCircuitCounterEntry 1 } + + isisCircAdjChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an adjacency state change has + occurred on this circuit." + REFERENCE "{ISIS.aoi changesInAdjacencyState (40)}" + ::= { isisCircuitCounterEntry 2 } + + isisCircNumAdj OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of adjacencies on this circuit." + + + + REFERENCE "{ISIS.aoi changesInAdjacencyState (40)}" + ::= { isisCircuitCounterEntry 3 } + + isisCircInitFails OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times initialization of this circuit has + failed. This counts events such as PPP NCP failures. + Failures to form an adjacency are counted by + isisCircRejAdjs." + ::= { isisCircuitCounterEntry 4 } + + isisCircRejAdjs OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an adjacency has been rejected on + this circuit." + REFERENCE "{ISIS.aoi rejectedAdjacencies (42)}" + ::= { isisCircuitCounterEntry 5 } + + isisCircIDFieldLenMismatches OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of frames with ID field length mismatch" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an IS-IS control PDU with an ID + field length different from that for this system has been + received." + REFERENCE "{ISIS.aoi iDFieldLengthMismatches (25)}" + ::= { isisCircuitCounterEntry 6 } + + isisCircMaxAreaAddrMismatches OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an IS-IS control PDU with a + max area address field different from that for this + system has been received." + REFERENCE "{ISIS.aoi iDFieldLengthMismatches (25)}" + ::= { isisCircuitCounterEntry 7 } + + isisCircAuthTypeFails OBJECT-TYPE + + + + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an IS-IS control PDU with + an auth type field different from that for this + system has been received." + ::= { isisCircuitCounterEntry 8 } + + isisCircAuthFails OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an IS-IS control PDU with + the correct auth type has failed to pass authentication + validation." + ::= { isisCircuitCounterEntry 9 } + + isisCircLANDesISChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times the Designated IS has changed + on this circuit at this level. If the circuit is + point to point, this count is zero." + ::= { isisCircuitCounterEntry 10 } + +-- isisPacketCounterTable keeps track of the number of IS-IS +-- control packets sent and received at each level + + isisPacketCounterTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisPacketCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about IS-IS protocol traffic at one level, + on one circuit, in one direction." + ::= { isisCounters 3 } + + isisPacketCounterEntry OBJECT-TYPE + SYNTAX IsisPacketCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about IS-IS protocol traffic at one level, + on one circuit, in one direction." + + + + INDEX { isisCircIndex, + isisPacketCountLevel, + isisPacketCountDirection } + ::= { isisPacketCounterTable 1 } + + IsisPacketCounterEntry ::= + SEQUENCE { + isisPacketCountLevel + IsisISLevel, + isisPacketCountDirection + INTEGER, + isisPacketCountIIHello + Counter32, + isisPacketCountISHello + Counter32, + isisPacketCountESHello + Counter32, + isisPacketCountLSP + Counter32, + isisPacketCountCSNP + Counter32, + isisPacketCountPSNP + Counter32, + isisPacketCountUnknown + Counter32 + } + + isisPacketCountLevel OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The level at which these PDU counts have been collected." + ::= { isisPacketCounterEntry 1 } + + isisPacketCountDirection OBJECT-TYPE + SYNTAX INTEGER + { + sending(1), + receiving(2) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Were we sending or receiving these PDUs?" + ::= { isisPacketCounterEntry 2 } + + isisPacketCountIIHello OBJECT-TYPE + + + + SYNTAX Counter32 + UNITS "Number of IS-IS Hellos frames seen in this direction + at this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of IS-IS Hello PDUs seen in this + direction at this level. + + Point-to-Point IIH PDUs are counted at + the lowest enabled level: at L1 on L1 or L1L2 circuits, + and at L2 otherwise." + REFERENCE "{ISIS.aoi iSISControlPDUsSent (43)}" + ::= { isisPacketCounterEntry 3 } + + isisPacketCountISHello OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of ES-IS frames seen in this direction at + this level." + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of ES-IS Hello PDUs seen in this + direction. ISH PDUs are counted at the + lowest enabled level: at L1 on L1 or L1L2 + circuits, and at L2 otherwise." + ::= { isisPacketCounterEntry 4 } + + isisPacketCountESHello OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of ES Hello frames seen in this direction at + this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of ES Hello PDUs seen in this + direction. ESH PDUs are counted at the + lowest enabled level: at L1 on L1 or L1L2 + circuits, and at L2 otherwise." + ::= { isisPacketCounterEntry 5 } + + isisPacketCountLSP OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of IS-IS LSP frames seen in this direction at + this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "The number of IS-IS LSPs seen in this + direction at this level." + REFERENCE "{ISIS.aoi iSISControlPDUsSent (43)}" + ::= { isisPacketCounterEntry 6 } + + isisPacketCountCSNP OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of IS-IS CSNP frames seen in this direction at + this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of IS-IS CSNPs seen in this + direction at this level." + REFERENCE "{ISIS.aoi iSISControlPDUsSent (43)}" + ::= { isisPacketCounterEntry 7 } + + isisPacketCountPSNP OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of IS-IS PSNP frames seen in this direction at + this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of IS-IS PSNPs seen in this + direction at this level." + REFERENCE "{ISIS.aoi iSISControlPDUsSent (43)}" + ::= { isisPacketCounterEntry 8 } + + isisPacketCountUnknown OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of unknown IS-IS frames seen at this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of unknown IS-IS PDUs seen + at this level." + REFERENCE "{ISIS.aoi iSISControlPDUsSent (43)}" + ::= { isisPacketCounterEntry 9 } + +-- The IS Adjacency Table +-- +-- Each adjacency to an IS corresponds to one entry in this +-- table. + + isisISAdjTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisISAdjEntry + MAX-ACCESS not-accessible + + + + STATUS current + DESCRIPTION + "The table of adjacencies to Intermediate Systems." + ::= { isisISAdj 1 } + + isisISAdjEntry OBJECT-TYPE + SYNTAX IsisISAdjEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry corresponds to one adjacency to an + Intermediate System on this system. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisCircIndex, + isisISAdjIndex } + ::= { isisISAdjTable 1 } + + IsisISAdjEntry ::= + SEQUENCE { + isisISAdjIndex + Unsigned32, + isisISAdjState + INTEGER, + isisISAdj3WayState + INTEGER, + isisISAdjNeighSNPAAddress + IsisOSINSAddress, + isisISAdjNeighSysType + INTEGER, + isisISAdjNeighSysID + IsisSystemID, + isisISAdjNbrExtendedCircID + Unsigned32, + isisISAdjUsage + IsisLevel, + isisISAdjHoldTimer + IsisUnsigned16TC, + isisISAdjNeighPriority + IsisISPriority, + isisISAdjLastUpTime + TimeStamp + } + + isisISAdjIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "A unique value identifying the IS adjacency from all + other such adjacencies on this circuit. This value is + automatically assigned by the system when the adjacency + is created." + ::= { isisISAdjEntry 1 } + + isisISAdjState OBJECT-TYPE + SYNTAX INTEGER + { + down (1), + initializing (2), + up (3), + failed(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the adjacency." + REFERENCE "{ISIS.aoi adjacencyState (78)}" + ::= { isisISAdjEntry 2 } + + isisISAdj3WayState OBJECT-TYPE + SYNTAX INTEGER + { + up (0), + initializing (1), + down (2), + failed (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 3Way state of the adjacency. These are picked + to match the historical on-the-wire representation + of the 3Way state and are not intended to match + isisISAdjState." + REFERENCE "{ RFC 3373 }" + ::= { isisISAdjEntry 3 } + + isisISAdjNeighSNPAAddress OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The SNPA address of the neighboring system." + REFERENCE "{ISIS.aoi neighbourSNPAAddress (79)}" + ::= { isisISAdjEntry 4 } + + + + isisISAdjNeighSysType OBJECT-TYPE + SYNTAX INTEGER + { + l1IntermediateSystem(1), + l2IntermediateSystem(2), + l1L2IntermediateSystem(3), + unknown(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of the neighboring system." + REFERENCE "{ISIS.aoi neighbourSystemType (80)}" + ::= { isisISAdjEntry 5 } + + isisISAdjNeighSysID OBJECT-TYPE + SYNTAX IsisSystemID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The system ID of the neighboring Intermediate + System." + REFERENCE "{ISIS.aoi neighbourSystemIds (83)}" + ::= { isisISAdjEntry 6 } + + isisISAdjNbrExtendedCircID OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 4-byte Extended Circuit ID learned from the + Neighbor during 3-way handshake, or 0." + ::= { isisISAdjEntry 7 } + + isisISAdjUsage OBJECT-TYPE + SYNTAX IsisLevel + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "How is the adjacency used? On a point-to-point link, + this might be level1and2, but on a LAN, the usage will + be level1 on the adjacency between peers at L1, + and level2 for the adjacency between peers at L2." + REFERENCE "{ISIS.aoi adjacencyUsage (82)}" + ::= { isisISAdjEntry 8 } + + isisISAdjHoldTimer OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1..65535) + + + + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The holding time, in seconds, for this adjacency. + This value is based on received IIH PDUs and + the elapsed time since receipt." + REFERENCE "{ISIS.aoi holdingTimer (85)}" + ::= { isisISAdjEntry 9 } + + isisISAdjNeighPriority OBJECT-TYPE + SYNTAX IsisISPriority + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Priority of the neighboring Intermediate System for + becoming the Designated Intermediate System." + REFERENCE "{ISIS.aoi lANPriority (86)}" + ::= { isisISAdjEntry 10 } + + isisISAdjLastUpTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "When the adjacency most recently entered the state 'up', + measured in hundredths of a second since the last + re-initialization of the network management subsystem. + Holds 0 if the adjacency has never been in state 'up'." + ::= { isisISAdjEntry 11 } + +-- The IS Adjacency Area Address Table + +-- The IS Adjacency Area Address Table contains the set of +-- Area Addresses of neighboring +-- Intermediate Systems as reported in IIH PDUs. + + isisISAdjAreaAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisISAdjAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains the set of Area Addresses of + neighboring Intermediate Systems as reported in received + IIH PDUs." + REFERENCE "{ISIS.aoi areaAddressesOfNeighbour (84)}" + ::= { isisISAdj 2 } + + + + + isisISAdjAreaAddrEntry OBJECT-TYPE + SYNTAX IsisISAdjAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one Area Address reported by a + neighboring Intermediate System in its IIH PDUs. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisCircIndex, + isisISAdjIndex, + isisISAdjAreaAddrIndex } + ::= { isisISAdjAreaAddrTable 1 } + + IsisISAdjAreaAddrEntry ::= + SEQUENCE { + isisISAdjAreaAddrIndex + Unsigned32, + isisISAdjAreaAddress + IsisOSINSAddress + } + + isisISAdjAreaAddrIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An index for the areas associated with one neighbor. + This provides a simple way to walk the table." + ::= { isisISAdjAreaAddrEntry 1 } + + isisISAdjAreaAddress OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "One Area Address as reported in IIH PDUs received from + the neighbor." + ::= { isisISAdjAreaAddrEntry 2 } + +-- The IS Adjacency IP Address Table + +-- The IS Adjacency IP Address Table contains the +-- set of IP Addresses of neighboring Intermediate Systems +-- as reported in received IIH PDUs. + + isisISAdjIPAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisISAdjIPAddrEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains the set of IP Addresses of + neighboring Intermediate Systems as reported in received + IIH PDUs." + ::= { isisISAdj 3 } + + isisISAdjIPAddrEntry OBJECT-TYPE + SYNTAX IsisISAdjIPAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one IP Address reported by a + neighboring Intermediate System in its IIH PDUs. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisCircIndex, + isisISAdjIndex, + isisISAdjIPAddrIndex + } + ::= { isisISAdjIPAddrTable 1 } + + IsisISAdjIPAddrEntry ::= + SEQUENCE { + isisISAdjIPAddrIndex + Unsigned32, + isisISAdjIPAddrType + InetAddressType, + isisISAdjIPAddrAddress + InetAddress + } + + isisISAdjIPAddrIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An index to this table that identifies the IP addresses + to which this entry belongs." + ::= { isisISAdjIPAddrEntry 1 } + + isisISAdjIPAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of one IP Address as reported in IIH PDUs + + + + received from the neighbor." + ::= { isisISAdjIPAddrEntry 2 } + + isisISAdjIPAddrAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "One IP Address as reported in IIH PDUs received from the + neighbor. + + The type of this address is determined by the value of + the isisISAdjIPAddrType object." + ::= { isisISAdjIPAddrEntry 3 } + +-- The IS Adjacency Protocol Supported Table +-- +-- The IS Adjacency Protocol Supported Table contains the set of +-- protocols supported by neighboring +-- Intermediate Systems as reported in received IIH PDUs. + + isisISAdjProtSuppTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisISAdjProtSuppEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains the set of protocols supported by + neighboring Intermediate Systems as reported in received + IIH PDUs." + ::= { isisISAdj 4 } + + isisISAdjProtSuppEntry OBJECT-TYPE + SYNTAX IsisISAdjProtSuppEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one protocol supported by a + neighboring Intermediate System as reported in its IIH + PDUs. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisCircIndex, + isisISAdjIndex, + isisISAdjProtSuppProtocol } + ::= { isisISAdjProtSuppTable 1 } + + IsisISAdjProtSuppEntry ::= + SEQUENCE { + + + + isisISAdjProtSuppProtocol + IsisSupportedProtocol + } + + isisISAdjProtSuppProtocol OBJECT-TYPE + SYNTAX IsisSupportedProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "One supported protocol as reported in IIH PDUs received + from the neighbor." + ::= { isisISAdjProtSuppEntry 1 } + +-- The Reachable Address Group +-- +-- The Reachable Address Table +-- Each entry records information about a reachable address +-- (NSAP or address prefix) manually configured on the system +-- or learned through another protocol. + + isisRATable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisRAEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table of Reachable Addresses to NSAPs or Address + Prefixes." + ::= { isisReachAddr 1 } + + isisRAEntry OBJECT-TYPE + SYNTAX IsisRAEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry defines a configured Reachable Address + to an NSAP or Address Prefix. + + Dynamically created rows MUST survive an agent reboot." + INDEX { isisCircIndex, + isisRAIndex } + ::= { isisRATable 1 } + + IsisRAEntry ::= + SEQUENCE { + isisRAIndex + Unsigned32, + isisRAExistState + RowStatus, + + + + isisRAAdminState + IsisAdminState, + isisRAAddrPrefix + IsisOSINSAddress, + isisRAMapType + INTEGER, + isisRAMetric + IsisDefaultMetric, + isisRAMetricType + IsisMetricType, + isisRASNPAAddress + IsisOSINSAddress, + isisRASNPAMask + IsisOSINSAddress, + isisRASNPAPrefix + IsisOSINSAddress, + isisRAType + INTEGER + } + + isisRAIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The identifier for this isisRAEntry. This value must be + unique amongst all Reachable Addresses on the same parent + Circuit." + ::= { isisRAEntry 1 } + + isisRAExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The existence state of this Reachable Address. This + object follows the ManualOrAutomatic behaviors. Support + for 'createAndWait' and 'notInService' is not required. + + A row entry cannot be modified when the value of this + object is 'active'." + ::= { isisRAEntry 2 } + + isisRAAdminState OBJECT-TYPE + SYNTAX IsisAdminState + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "The administrative state of the Reachable Address. This + object follows the ManualOrAutomatic behaviors." + DEFVAL { off } + ::= { isisRAEntry 3 } + + isisRAAddrPrefix OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The destination of this Reachable Address. This is an + Address Prefix. This object follows the + ReplaceOnlyWhileDisabled and ManualOrAutomatic + behaviors." + REFERENCE "{ISIS.aoi addressPrefix (98)}" + ::= { isisRAEntry 4 } + + isisRAMapType OBJECT-TYPE + SYNTAX INTEGER + { + none (1), + explicit (2), + extractIDI (3), + extractDSP (4) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of mapping to be employed to ascertain the SNPA + Address that should be used in forwarding PDUs for this + Reachable Address prefix. This object follows the + ManualOrAutomatic behavior. The following values of + mapping type are defined: + + none: The mapping is null because the neighbor SNPA is + implicit by nature of the subnetwork (e.g., a + point-to-point linkage). + + explicit: The subnetwork addresses in the object + isisRASNPAAddress are to be used. + + extractIDI: The SNPA is embedded in the IDI of + the destination NSAP Address. The mapping + algorithm extracts the SNPA to be used + according to the format and encoding rules of + ISO8473/Add2. This SNPA extraction algorithm can + be used in conjunction with Reachable Address + prefixes from the X.121, F.69, E.163, and E.164 + + + + addressing subdomains. + + extractDSP: All, or a suffix, of the SNPA is embedded + in the DSP of the destination address. This SNPA + extraction algorithm extracts the embedded + subnetwork addressing information by performing a + logical AND of the isisRASNPAMask object value + with the destination address. The part of the + SNPA extracted from the destination NSAP is + appended to the isisRASNPAPrefix object value to + form the next hop subnetwork addressing + information." + + REFERENCE "{ISO10589-ISIS.aoi mappingType (107)}" + ::= { isisRAEntry 5 } + + isisRAMetric OBJECT-TYPE + SYNTAX IsisDefaultMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric value for reaching the specified + prefix over this circuit. This object follows the + ManualOrAutomatic behavior." + REFERENCE "{ISIS.aoi DefaultMetric (99)}" + DEFVAL { 20 } + ::= { isisRAEntry 6 } + + isisRAMetricType OBJECT-TYPE + SYNTAX IsisMetricType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether the metric is internal or + external. This object follows the ManualOrAutomatic + behavior." + REFERENCE "{ISIS.aoi DefaultMetricType (103)}" + DEFVAL { internal } + ::= { isisRAEntry 7 } + + isisRASNPAAddress OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The SNPA Address to which a PDU may be forwarded in + order to reach a destination that matches the address + prefix of the Reachable Address. This object follows the + + + + ManualOrAutomatic behavior." + REFERENCE "{ISIS.aoi sNPAAddresses (109)}" +-- Note only one address may be specified per Reachable Address +-- in the MIB + DEFVAL { ''H } + ::= { isisRAEntry 8 } + + isisRASNPAMask OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A bit mask with 1 bit indicating the positions in the + effective destination address from which embedded SNPA + information is to be extracted. For the extraction, the + first octet of the isisRASNPAMask object value is aligned + with the first octet (AFI) of the NSAP Address. If the + isisRASNPAMask object value and NSAP Address are of + different lengths, the shorter of the two is logically + padded with zeros before performing the extraction. This + object follows the ManualOrAutomatic behavior." + REFERENCE "{ISIS.aoi sNPAMask (122)}" + DEFVAL { '00'H } + ::= { isisRAEntry 9 } + + isisRASNPAPrefix OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A fixed SNPA prefix for use when the isisRAMapType is + extractDSP. The SNPA Address to use is formed by + concatenating the fixed SNPA prefix with a variable SNPA + part that is extracted from the effective destination + address. For Reachable Address prefixes in which the + entire SNPA is embedded in the DSP, the SNPA Prefix shall + be null. This object follows the ManualOrAutomatic + behavior." + REFERENCE "{ISIS.aoi sNPAPrefix (123)}" + DEFVAL { '00'H } + ::= { isisRAEntry 10 } + + isisRAType OBJECT-TYPE + SYNTAX INTEGER + { + manual (1), + automatic (2) + } + + + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of Reachable address. Those of type + manual are created by the network manager. Those + of type automatic are created through propagation + of routing information from another routing + protocol (e.g., IDRP). " + DEFVAL {manual} + ::= {isisRAEntry 11 } + + +-- The IP Reachable Address Table + +-- Each entry records information about one IP reachable +-- address manually configured on this system or learned from +-- another protocol. + + isisIPRATable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisIPRAEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table of IP Reachable Addresses to networks, + subnetworks, or hosts either manually configured or + learned from another protocol." + ::= { isisIPReachAddr 1 } + + isisIPRAEntry OBJECT-TYPE + SYNTAX IsisIPRAEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry defines an IP Reachable Address to a network, + subnetwork, or host. + + Each IP Reachable Address may have multiple entries in the + table, one for each equal cost path to the reachable + address. + + Dynamically created rows MUST survive an agent reboot. + + Implementers need to be aware that if the total number + of elements (octets or sub-identifiers) in + isisIPRADestr, isisIPRADestPrefixLen, and + isisIPRANextHopIndex is too great, then OIDs of column + instances in this table will have more than 128 + subidentifiers and cannot be accessed using SNMPv1, + + + + SNMPv2c, or SNMPv3." + INDEX { isisSysLevelIndex, + isisIPRADestType, + isisIPRADest, + isisIPRADestPrefixLen, + isisIPRANextHopIndex } + ::= { isisIPRATable 1 } + + IsisIPRAEntry ::= + SEQUENCE { + isisIPRADestType + InetAddressType, + isisIPRADest + InetAddress, + isisIPRADestPrefixLen + InetAddressPrefixLength, + isisIPRANextHopIndex + Unsigned32, + isisIPRANextHopType + InetAddressType, + isisIPRANextHop + InetAddress, + isisIPRAType + INTEGER, + isisIPRAExistState + RowStatus, + isisIPRAAdminState + IsisAdminState, + isisIPRAMetric + IsisDefaultMetric, + isisIPRAMetricType + IsisMetricType, + isisIPRAFullMetric + IsisFullMetric, + isisIPRASNPAAddress + IsisOSINSAddress, + isisIPRASourceType + INTEGER + } + + isisIPRADestType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of this IP Reachable Address." + ::= { isisIPRAEntry 1 } + + + + + isisIPRADest OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The destination of this IP Reachable Address. This is + a network address, subnetwork address, or host + address. + + The type of this address is determined by the value of + the isisIPRADestType object." + + ::= { isisIPRAEntry 2 } + + isisIPRADestPrefixLen OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length of the IP Netmask for Reachability Address. + + The values for the index objects isisIPRADest and + isisIPRADestPrefixLen must be consistent. When the value + of isisIPRADest (excluding the zone index, if one + is present) is x, then the bitwise logical-AND + of x with the value of the mask formed from the + corresponding index object isisIPRADestPrefixLen MUST be + equal to x. If not, then the index pair is not + consistent, and an inconsistentName error must be + returned on SET or CREATE requests." + ::= { isisIPRAEntry 3 } + + isisIPRANextHopIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Index of next hop. Used when there are multiple Equal + Cost Multipath alternatives for the same destination." + ::= { isisIPRAEntry 4 } + + isisIPRANextHopType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of the IP next hop address." + ::= { isisIPRAEntry 5 } + + + + isisIPRANextHop OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The IP next hop to this destination. + + The type of this address is determined by the value of + the isisIPRANextHopType object." + ::= { isisIPRAEntry 6 } + + isisIPRAType OBJECT-TYPE + SYNTAX INTEGER + { + manual (1), + automatic (2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of this IP Reachable Address. Those of type + manual are created by the network manager. Those of type + automatic are created through propagation of routing + information from another routing protocol. This object + follows the ManualOrAutomatic behavior." + ::= { isisIPRAEntry 7 } + + isisIPRAExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The state of this IP Reachable Address. This object + follows the ExistenceState and ManualOrAutomatic + behaviors. Support for 'createAndWait' and + 'notInService' is not required. + + A row entry cannot be modified when the value of this + object is 'active'." + ::= { isisIPRAEntry 8 } + + isisIPRAAdminState OBJECT-TYPE + SYNTAX IsisAdminState + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The administrative state of the IP Reachable Address. This + object follows the IsisAdminState and ManualOrAutomatic + + + + behaviors." + DEFVAL { off } + ::= { isisIPRAEntry 9 } + + isisIPRAMetric OBJECT-TYPE + SYNTAX IsisDefaultMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric value for reaching the specified + destination over this circuit. This object follows the + ManualOrAutomatic behavior." + DEFVAL { 10 } + ::= { isisIPRAEntry 10 } + + isisIPRAMetricType OBJECT-TYPE + SYNTAX IsisMetricType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether the metric is internal or + external. This object follows the ManualOrAutomatic + behavior." + DEFVAL { internal } + ::= { isisIPRAEntry 11 } + + isisIPRAFullMetric OBJECT-TYPE + SYNTAX IsisFullMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The wide metric value for reaching the specified + destination over this circuit. This object follows the + ManualOrAutomatic behavior." + DEFVAL { 10 } + ::= { isisIPRAEntry 12 } + + isisIPRASNPAAddress OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The SNPA Address to which a PDU may be forwarded in + order to reach a destination that matches this IP + Reachable Address. This object follows the + ManualOrAutomatic behavior." + DEFVAL { ''H } + ::= { isisIPRAEntry 13 } + + + + isisIPRASourceType OBJECT-TYPE + SYNTAX INTEGER + { + static (1), + direct (2), + ospfv2 (3), + ospfv3 (4), + isis (5), + rip (6), + igrp (7), + eigrp (8), + bgp (9), + other (10) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The origin of this route." + ::= { isisIPRAEntry 14 } + +-- The LSP Database Table +-- +-- The first table provides Summary Information about LSPs +-- The next table provides a complete record + + isisLSPSummaryTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisLSPSummaryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table of LSP Headers." + ::= { isisLSPDataBase 1 } + + isisLSPSummaryEntry OBJECT-TYPE + SYNTAX IsisLSPSummaryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry provides a summary describing an + LSP currently stored in the system. + + Dynamically learned rows will not survive an + agent reboot." + INDEX { isisLSPLevel, + isisLSPID } + ::= { isisLSPSummaryTable 1 } + + IsisLSPSummaryEntry ::= + + + + SEQUENCE { + isisLSPLevel + IsisISLevel, + isisLSPID + IsisLinkStatePDUID, + isisLSPSeq + Unsigned32, + isisLSPZeroLife + TruthValue, + isisLSPChecksum + IsisUnsigned16TC, + isisLSPLifetimeRemain + IsisUnsigned16TC, + isisLSPPDULength + IsisUnsigned16TC, + isisLSPAttributes + IsisUnsigned8TC + } + + isisLSPLevel OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "At which level does this LSP appear?" + ::= { isisLSPSummaryEntry 1 } + + isisLSPID OBJECT-TYPE + SYNTAX IsisLinkStatePDUID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 8-byte LSP ID for this Link State PDU." + ::= { isisLSPSummaryEntry 2 } + + isisLSPSeq OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number for this LSP." + ::= { isisLSPSummaryEntry 3 } + + isisLSPZeroLife OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "Is this LSP being purged by this system?" + ::= { isisLSPSummaryEntry 4 } + + isisLSPChecksum OBJECT-TYPE + SYNTAX IsisUnsigned16TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 16-bit Fletcher Checksum for this LSP." + ::= { isisLSPSummaryEntry 5 } + + isisLSPLifetimeRemain OBJECT-TYPE + SYNTAX IsisUnsigned16TC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The remaining lifetime, in seconds, for this LSP." + ::= { isisLSPSummaryEntry 6 } + + isisLSPPDULength OBJECT-TYPE + SYNTAX IsisUnsigned16TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The length of this LSP." + ::= { isisLSPSummaryEntry 7 } + + isisLSPAttributes OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Flags carried by the LSP." + ::= { isisLSPSummaryEntry 8 } + +-- LSP Table +-- +-- The full LSP as a sequence of {Type, Len, Value} tuples +-- Since the underlying LSP may have changed while downloading +-- TLVs, we provide the Sequence number and Checksum for each +-- LSP TLV, so the network manager may verify that they are +-- still working on the same version of the LSP. + + isisLSPTLVTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisLSPTLVEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "The table of LSPs in the database." + ::= { isisLSPDataBase 2 } + + isisLSPTLVEntry OBJECT-TYPE + SYNTAX IsisLSPTLVEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry describes a TLV within + an LSP currently stored in the system. + + Dynamically learned rows will not survive an + agent reboot." + INDEX { isisLSPLevel, + isisLSPID, + isisLSPTLVIndex } + ::= { isisLSPTLVTable 1 } + + IsisLSPTLVEntry ::= + SEQUENCE { + isisLSPTLVIndex + Unsigned32, + isisLSPTLVSeq + Unsigned32, + isisLSPTLVChecksum + IsisUnsigned16TC, + isisLSPTLVType + IsisUnsigned8TC, + isisLSPTLVLen + IsisUnsigned8TC, + isisLSPTLVValue + OCTET STRING + } + + isisLSPTLVIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index of this TLV in the LSP. The first TLV has + index 1, and the Nth TLV has an index of N." + ::= { isisLSPTLVEntry 1 } + + isisLSPTLVSeq OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "The sequence number for this LSP." + ::= { isisLSPTLVEntry 2 } + + isisLSPTLVChecksum OBJECT-TYPE + SYNTAX IsisUnsigned16TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 16-bit Fletcher Checksum for this LSP." + ::= { isisLSPTLVEntry 3 } + + isisLSPTLVType OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of this TLV." + ::= { isisLSPTLVEntry 4 } + + isisLSPTLVLen OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The length of this TLV." + ::= { isisLSPTLVEntry 5 } + + isisLSPTLVValue OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of this TLV." + ::= { isisLSPTLVEntry 6 } + + +-- The IS-IS Notification Table + +-- The IS-IS Notification Table records fields that are +-- required for notifications + + isisNotificationEntry OBJECT IDENTIFIER + ::= { isisNotification 1 } + + isisNotificationSysLevelIndex OBJECT-TYPE + SYNTAX IsisLevel + MAX-ACCESS accessible-for-notify + + + + STATUS current + DESCRIPTION + "The system level for this notification." + ::= { isisNotificationEntry 1 } + + isisNotificationCircIfIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..2147483647) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "The identifier of this circuit relevant to + this notification." + ::= { isisNotificationEntry 2 } + + isisPduLspId OBJECT-TYPE + SYNTAX IsisLinkStatePDUID + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "An Octet String that uniquely identifies + a Link State PDU." + ::= { isisNotificationEntry 3 } + + isisPduFragment OBJECT-TYPE + SYNTAX IsisPDUHeader + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds up to 64 initial bytes of a PDU that + triggered the notification." + ::= { isisNotificationEntry 4 } + + isisPduFieldLen OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the System ID length reported in PDU we received." + ::= { isisNotificationEntry 5 } + + isisPduMaxAreaAddress OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the Max Area Addresses reported in a PDU + we received." + ::= { isisNotificationEntry 6 } + + + + isisPduProtocolVersion OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the Protocol version reported in PDU we received." + ::= { isisNotificationEntry 7 } + + isisPduLspSize OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the size of LSP we received that is too + big to forward." + ::= { isisNotificationEntry 8 } + + isisPduOriginatingBufferSize OBJECT-TYPE + SYNTAX IsisUnsigned16TC (0..16000) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the size of isisSysLevelOrigLSPBuffSize advertised + by the peer in the originatingLSPBufferSize TLV. + If the peer does not advertise this TLV, this + value is set to 0." + ::= { isisNotificationEntry 9 } + + isisPduBufferSize OBJECT-TYPE + SYNTAX IsisUnsigned16TC (0..16000) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the size of LSP received from peer." + ::= { isisNotificationEntry 10 } + + isisPduProtocolsSupported OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..255)) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "The list of protocols supported by an + adjacent system. This may be empty." + ::= { isisNotificationEntry 11 } + + isisAdjState OBJECT-TYPE + SYNTAX INTEGER + { + + + + down (1), + initializing (2), + up (3), + failed(4) + } + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "The current state of an adjacency." + ::= { isisNotificationEntry 12 } + + isisErrorOffset OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "An offset to a problem in a PDU. If the problem + is a malformed TLV, this points to the beginning + of the TLV. If the problem is in the header, this + points to the byte that is suspicious." + ::= { isisNotificationEntry 13 } + + isisErrorTLVType OBJECT-TYPE + SYNTAX Unsigned32 (0..255) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "The type for a malformed TLV." + ::= { isisNotificationEntry 14 } + + isisNotificationAreaAddress OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "An Area Address." + ::= { isisNotificationEntry 15 } + +-- Notification definitions +-- +-- Note that notifications can be disabled by setting +-- isisSysNotificationEnable false + + isisDatabaseOverload NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisSysLevelState + } + + + + STATUS current + DESCRIPTION + "This notification is generated when the system + enters or leaves the Overload state. The number + of times this has been generated and cleared is kept + track of by isisSysStatLSPDbaseOloads." + ::= { isisNotifications 1 } + + isisManualAddressDrops NOTIFICATION-TYPE + OBJECTS { + isisNotificationAreaAddress + } + STATUS current + DESCRIPTION + "This notification is generated when one of the + manual areaAddresses assigned to this system is + ignored when computing routes. The object + isisNotificationAreaAddress describes the area that + has been dropped. + + The number of times this event has been generated + is counted by isisSysStatManAddrDropFromAreas. + + The agent must throttle the generation of + consecutive isisManualAddressDrops notifications + so that there is at least a 5-second gap between + notifications of this type. When notifications + are throttled, they are dropped, not queued for + sending at a future time." + ::= { isisNotifications 2 } + + isisCorruptedLSPDetected NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisPduLspId + } + STATUS current + DESCRIPTION + "This notification is generated when we find that + an LSP that was stored in memory has become + corrupted. The number of times this has been + generated is counted by isisSysCorrLSPs. + + We forward an LSP ID. We may have independent + knowledge of the ID, but in some implementations + there is a chance that the ID itself will be + corrupted." + + + + + ::= { isisNotifications 3 } + + isisAttemptToExceedMaxSequence NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisPduLspId + } + STATUS current + DESCRIPTION + "When the sequence number on an LSP we generate + wraps the 32-bit sequence counter, we purge and + wait to re-announce this information. This + notification describes that event. Since these + should not be generated rapidly, we generate + an event each time this happens. + + While the first 6 bytes of the LSPID are ours, + the other two contain useful information." + + ::= { isisNotifications 4 } + + isisIDLenMismatch NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisPduFieldLen, + isisNotificationCircIfIndex, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a PDU + with a different value for the System ID Length. + This notification includes an index to identify + the circuit where we saw the PDU and the header of + the PDU, which may help a network manager identify + the source of the confusion. + + The agent must throttle the generation of + consecutive isisIDLenMismatch notifications + so that there is at least a 5-second gap between + notifications of this type. When notifications + are throttled, they are dropped, not queued for + sending at a future time." + + ::= { isisNotifications 5 } + + isisMaxAreaAddressesMismatch NOTIFICATION-TYPE + OBJECTS { + + + + isisNotificationSysLevelIndex, + isisPduMaxAreaAddress, + isisNotificationCircIfIndex, + isisPduFragment + } + + STATUS current + DESCRIPTION + "A notification sent when we receive a PDU + with a different value for the Maximum Area + Addresses. This notification includes the + header of the packet, which may help a + network manager identify the source of the + confusion. + + The agent must throttle the generation of + consecutive isisMaxAreaAddressesMismatch + notifications so that there is at least a 5-second + gap between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 6 } + + isisOwnLSPPurge NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspId + } + STATUS current + DESCRIPTION + "A notification sent when we receive a PDU + with our systemID and zero age. This + notification includes the circuit Index + and router ID from the LSP, if available, + which may help a network manager + identify the source of the confusion." + + ::= { isisNotifications 7 } + + isisSequenceNumberSkip NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspId + } + STATUS current + + + + DESCRIPTION + "When we receive an LSP with our System ID + and different contents, we may need to reissue + the LSP with a higher sequence number. + + We send this notification if we need to increase + the sequence number by more than one. If two + Intermediate Systems are configured with the same + System ID, this notification will fire." + + ::= { isisNotifications 8 } + + isisAuthenticationTypeFailure NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a PDU + with the wrong authentication type field. + This notification includes the header of the + packet, which may help a network manager + identify the source of the confusion. + + The agent must throttle the generation of + consecutive isisAuthenticationTypeFailure + notifications so that there is at least a 5-second + gap between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 9 } + + isisAuthenticationFailure NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a PDU + with an incorrect authentication information + field. This notification includes the header + of the packet, which may help a network manager + identify the source of the confusion. + + + + The agent must throttle the generation of + consecutive isisAuthenticationFailure + notifications so that there is at least a 5-second + gap between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 10 } + + isisVersionSkew NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduProtocolVersion, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a Hello + PDU from an IS running a different version + of the protocol. This notification includes + the header of the packet, which may help a + network manager identify the source of the + confusion. + + The agent must throttle the generation of + consecutive isisVersionSkew notifications + so that there is at least a 5-second gap + between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 11 } + + isisAreaMismatch NOTIFICATION-TYPE + OBJECTS { + isisNotificationCircIfIndex, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a Hello + PDU from an IS that does not share any + area address. This notification includes + the header of the packet, which may help a + network manager identify the source of the + confusion. + + + + + The agent must throttle the generation of + consecutive isisAreaMismatch notifications + so that there is at least a 5-second gap + between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 12 } + + isisRejectedAdjacency NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a Hello + PDU from an IS but do not establish an + adjacency for some reason. + + The agent must throttle the generation of + consecutive isisRejectedAdjacency notifications + so that there is at least a 5-second gap + between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 13 } + + isisLSPTooLargeToPropagate NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspSize, + isisPduLspId + } + STATUS current + DESCRIPTION + "A notification sent when we attempt to propagate + an LSP that is larger than the dataLinkBlockSize + for the circuit. + + The agent must throttle the generation of + consecutive isisLSPTooLargeToPropagate notifications + so that there is at least a 5-second gap + between notifications of this type. When + notifications are throttled, they are dropped, not + + + + queued for sending at a future time." + + ::= { isisNotifications 14 } + + isisOrigLSPBuffSizeMismatch NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspId, + isisPduOriginatingBufferSize, + isisPduBufferSize + } + STATUS current + DESCRIPTION + "A notification sent when a Level 1 LSP or Level + 2 LSP is received that is larger than the local + value for isisSysLevelOrigLSPBuffSize, or when an + LSP is received that contains the supported Buffer Size + option and the value in the PDU option field does + not match the local value for isisSysLevelOrigLSPBuffSize. + We pass up the size from the option field and the + size of the LSP when one of them exceeds our configuration. + + The agent must throttle the generation of + consecutive isisOrigLSPBuffSizeMismatch notifications + so that there is at least a 5-second gap + between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 15 } + + isisProtocolsSupportedMismatch NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduProtocolsSupported, + isisPduLspId, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when a non-pseudonode + segment 0 LSP is received that has no matching + protocols supported. This may be because the system + does not generate the field, or because there are no + common elements. The list of protocols supported + should be included in the notification: it may be + + + + empty if the TLV is not supported, or if the + TLV is empty. + + The agent must throttle the generation of + consecutive isisProtocolsSupportedMismatch + notifications so that there is at least a 5-second + gap between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 16 } + + isisAdjacencyChange NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspId, + isisAdjState + } + STATUS current + DESCRIPTION + "A notification sent when an adjacency changes + state, entering or leaving state up. + The first 6 bytes of the isisPduLspId are the + SystemID of the adjacent IS. + The isisAdjState is the new state of the adjacency." + + ::= { isisNotifications 17 } + + isisLSPErrorDetected NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisPduLspId, + isisNotificationCircIfIndex, + isisPduFragment, + isisErrorOffset, + isisErrorTLVType + } + STATUS current + DESCRIPTION + "This notification is generated when we receive + an LSP with a parse error. The isisCircIfIndex + holds an index of the circuit on which the PDU + arrived. The isisPduFragment holds the start of the + LSP, and the isisErrorOffset points to the problem. + + If the problem is a malformed TLV, isisErrorOffset + points to the start of the TLV, and isisErrorTLVType + + + + holds the value of the type. + + If the problem is with the LSP header, isisErrorOffset + points to the suspicious byte. + + The number of such LSPs is accumulated in + isisSysStatLSPErrors." + + ::= { isisNotifications 18 } + +-- Agent Conformance Definitions +-- We define the objects a conformant agent must define + +isisCompliances OBJECT IDENTIFIER ::= { isisConformance 1 } +isisGroups OBJECT IDENTIFIER ::= { isisConformance 2 } + +-- compliance statements + + isisCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that support + the IS-IS MIB. + + There are a number of INDEX objects that cannot be + represented in the form of OBJECT clauses in SMIv2, + but for which there are compliance requirements. + Those requirements and similar requirements for + related objects are expressed below, in + pseudo-OBJECT clause form, in this description: + + -- OBJECT isisSummAddressType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 Summary + -- Addresses and anticipates the support of + -- IPv6 addresses. + -- + -- + -- OBJECT isisRedistributeAddrType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 + -- Redistribution Addresses and anticipates + -- the support of IPv6 addresses." + -- + + + + -- + -- OBJECT isisISAdjIPAddrType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 + -- Adjacency Addresses and anticipates the + -- support of IPv6 addresses. + MODULE -- this module + MANDATORY-GROUPS { + isisSystemGroup, + isisCircuitGroup, + isisISAdjGroup, + isisNotificationObjectGroup, + isisNotificationGroup + } + ::= { isisCompliances 1 } + + -- List of all groups, mandatory and optional + isisAdvancedCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that fully + support the IS-IS MIB. + + There are a number of INDEX objects that cannot be + represented in the form of OBJECT clauses in SMIv2, + but for which there are compliance requirements. + Those requirements and similar requirements for + related objects are expressed below, in + pseudo-OBJECT clause form, in this description: + + -- OBJECT isisSummAddressType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 Summary + -- Addresses and anticipates the support of + -- IPv6 addresses. + -- + -- + -- OBJECT isisRedistributeAddrType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 + -- Redistribution Addresses and anticipates + -- the support of IPv6 addresses." + + + + -- + -- + -- OBJECT isisISAdjIPAddrType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 + -- Adjacency Addresses and anticipates the + -- support of IPv6 addresses. + -- + -- + -- OBJECT isisIPRADestType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 RA + -- Addresses and anticipates the support of + -- IPv6 addresses. + -- + -- + -- OBJECT isisIPRANextHopType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 NextHop + -- Addresses and anticipates the support of + -- IPv6 addresses. + MODULE -- this module + MANDATORY-GROUPS { + isisSystemGroup, + isisCircuitGroup, + isisISAdjGroup, + isisNotificationObjectGroup, + isisNotificationGroup, + isisISPDUCounterGroup, + isisRATableGroup, + isisISIPRADestGroup, + isisLSPGroup + } + ::= { isisCompliances 2 } + + isisReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "When this MIB is implemented without support for + read-create (i.e., in read-only mode), the + implementation can claim read-only compliance. Such + a device can then be monitored but cannot be + + + + configured with this MIB." + MODULE -- this module + MANDATORY-GROUPS { + isisSystemGroup, + isisCircuitGroup, + isisISAdjGroup + } + + OBJECT isisSysLevelType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysID + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysMaxPathSplits + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysMaxLSPGenInt + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysPollESHelloRate + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysWaitTime + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysAdminState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysL2toL1Leaking + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + OBJECT isisSysMaxAge + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisManAreaAddrExistState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelOrigLSPBuffSize + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelMinLSPGenInt + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelSetOverload + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelSetOverloadUntil + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelMetricStyle + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelSPFConsiders + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelTEEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysReceiveLSPBufferSize + MIN-ACCESS read-only + DESCRIPTION + + + + "Write access is not required." + + OBJECT isisSummAddrExistState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSummAddrMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSummAddrFullMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisRedistributeAddrExistState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircAdminState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircExistState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircExtDomain + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircPassiveCircuit + + + + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircMeshGroupEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircMeshGroup + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircSmallHellos + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircExtendedCircID + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircIfIndex + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCirc3WayEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelWideMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelISPriority + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + OBJECT isisCircLevelHelloMultiplier + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelHelloTimer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelDRHelloTimer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelLSPThrottle + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelMinLSPRetransInt + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelCSNPInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelPartSNPInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + ::= { isisCompliances 3 } + +-- MIB Grouping + + isisSystemGroup OBJECT-GROUP + OBJECTS { + isisSysVersion, + isisSysLevelType, + isisSysID, + isisSysMaxPathSplits, + isisSysMaxLSPGenInt, + isisSysPollESHelloRate, + isisSysWaitTime, + + + + isisSysAdminState, + isisSysL2toL1Leaking, + isisSysMaxAge, + isisSysProtSupported, + isisSysNotificationEnable, + isisManAreaAddrExistState, + isisSysLevelOrigLSPBuffSize, + isisSysLevelMinLSPGenInt, + isisSysLevelState, + isisSysLevelSetOverload, + isisSysLevelSetOverloadUntil, + isisSysLevelMetricStyle, + isisSysLevelSPFConsiders, + isisSysLevelTEEnabled, + isisSysReceiveLSPBufferSize, + isisSummAddrExistState, + isisSummAddrMetric, + isisAreaAddr, + isisSummAddrFullMetric, + isisRedistributeAddrExistState, + isisRouterHostName, + isisRouterID, + isisSysStatCorrLSPs, + isisSysStatLSPDbaseOloads, + isisSysStatManAddrDropFromAreas, + isisSysStatAttmptToExMaxSeqNums, + isisSysStatSeqNumSkips, + isisSysStatOwnLSPPurges, + isisSysStatIDFieldLenMismatches, + isisSysStatPartChanges, + isisSysStatSPFRuns, + isisSysStatAuthTypeFails, + isisSysStatAuthFails, + isisSysStatLSPErrors + } + STATUS current + DESCRIPTION + "The collections of objects used to manage an + IS-IS router." + ::= { isisGroups 1 } + + isisCircuitGroup OBJECT-GROUP + OBJECTS { + isisNextCircIndex, + isisCircAdminState, + isisCircExistState, + isisCircType, + isisCircExtDomain, + + + + isisCircLevelType, + isisCircAdjChanges, + isisCircNumAdj, + isisCircInitFails, + isisCircRejAdjs, + isisCircIDFieldLenMismatches, + isisCircMaxAreaAddrMismatches, + isisCircAuthTypeFails, + isisCircAuthFails, + isisCircLANDesISChanges, + isisCircPassiveCircuit, + isisCircMeshGroupEnabled, + isisCircMeshGroup, + isisCircSmallHellos, + isisCircLastUpTime, + isisCirc3WayEnabled, + isisCircExtendedCircID, + isisCircIfIndex, + isisCircLevelMetric, + isisCircLevelWideMetric, + isisCircLevelISPriority, + isisCircLevelIDOctet, + isisCircLevelID, + isisCircLevelDesIS, + isisCircLevelHelloMultiplier, + isisCircLevelHelloTimer, + isisCircLevelDRHelloTimer, + isisCircLevelLSPThrottle, + isisCircLevelMinLSPRetransInt, + isisCircLevelCSNPInterval, + isisCircLevelPartSNPInterval + } + STATUS current + DESCRIPTION + "The collections of objects used to describe an + IS-IS Circuit." + ::= { isisGroups 2 } + + isisISAdjGroup OBJECT-GROUP + OBJECTS { + isisISAdjState, + isisISAdj3WayState, + isisISAdjNeighSNPAAddress, + isisISAdjNeighSysType, + isisISAdjNeighSysID, + isisISAdjNbrExtendedCircID, + isisISAdjUsage, + isisISAdjHoldTimer, + + + + isisISAdjNeighPriority, + isisISAdjLastUpTime, + isisISAdjAreaAddress, + isisISAdjIPAddrType, + isisISAdjIPAddrAddress, + isisISAdjProtSuppProtocol + } + STATUS current + DESCRIPTION + "The collections of objects used to manage an + IS-IS Adjacency." + ::= { isisGroups 3 } + + isisNotificationObjectGroup OBJECT-GROUP + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspId, + isisPduFragment, + isisPduFieldLen, + isisPduMaxAreaAddress, + isisPduProtocolVersion, + isisPduLspSize, + isisPduOriginatingBufferSize, + isisPduBufferSize, + isisPduProtocolsSupported, + isisAdjState, + isisErrorOffset, + isisErrorTLVType, + isisNotificationAreaAddress + } + STATUS current + DESCRIPTION + "The objects used to record notification parameters." + ::= { isisGroups 4 } + + + isisNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + isisDatabaseOverload, + isisManualAddressDrops, + isisCorruptedLSPDetected, + isisAttemptToExceedMaxSequence, + isisIDLenMismatch, + isisMaxAreaAddressesMismatch, + isisOwnLSPPurge, + isisSequenceNumberSkip, + isisAuthenticationTypeFailure, + + + + isisAuthenticationFailure, + isisVersionSkew, + isisAreaMismatch, + isisRejectedAdjacency, + isisLSPTooLargeToPropagate, + isisOrigLSPBuffSizeMismatch, + isisProtocolsSupportedMismatch, + isisAdjacencyChange, + isisLSPErrorDetected + } + STATUS current + DESCRIPTION + "The collections of notifications sent by an IS." + ::= { isisGroups 5 } + + + isisISPDUCounterGroup OBJECT-GROUP + OBJECTS { + isisPacketCountIIHello, + isisPacketCountISHello, + isisPacketCountESHello, + isisPacketCountLSP, + isisPacketCountCSNP, + isisPacketCountPSNP, + isisPacketCountUnknown + } + STATUS current + DESCRIPTION + "The collections of objects used to count protocol PDUs." + ::= { isisGroups 6 } + + + isisRATableGroup OBJECT-GROUP + OBJECTS { + isisRAExistState, + isisRAAdminState, + isisRAAddrPrefix, + isisRAMapType, + isisRAMetric, + isisRAMetricType, + isisRASNPAAddress, + isisRASNPAMask, + isisRASNPAPrefix, + isisRAType + } + STATUS current + DESCRIPTION + "The collections of objects used to manage the + + + + reachable NSAP prefixes." + ::= { isisGroups 7 } + + + isisISIPRADestGroup OBJECT-GROUP + OBJECTS { + isisIPRANextHopType, + isisIPRANextHop, + isisIPRAType, + isisIPRAExistState, + isisIPRAAdminState, + isisIPRAMetric, + isisIPRAFullMetric, + isisIPRAMetricType, + isisIPRASNPAAddress, + isisIPRASourceType + } + STATUS current + DESCRIPTION + "The collections of objects used to manage configured + IP addresses." + ::= { isisGroups 8 } + + isisLSPGroup OBJECT-GROUP + OBJECTS { + isisLSPSeq, + isisLSPZeroLife, + isisLSPChecksum, + isisLSPLifetimeRemain, + isisLSPPDULength, + isisLSPAttributes, + isisLSPTLVSeq, + isisLSPTLVChecksum, + isisLSPTLVType, + isisLSPTLVLen, + isisLSPTLVValue + } + STATUS current + DESCRIPTION + "The collections of objects used to observe the LSP + Database." + ::= { isisGroups 9 } + +END \ No newline at end of file diff --git a/mibs/LLDP-MIB.txt b/mibs/LLDP-MIB.txt new file mode 100644 index 00000000..106cee4b --- /dev/null +++ b/mibs/LLDP-MIB.txt @@ -0,0 +1,2032 @@ +LLDP-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter32, NOTIFICATION-TYPE + FROM SNMPv2-SMI + TEXTUAL-CONVENTION, TimeStamp, TruthValue + FROM SNMPv2-TC + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF + TimeFilter, ZeroBasedCounter32 + FROM RMON2-MIB + AddressFamilyNumbers + FROM IANA-ADDRESS-FAMILY-NUMBERS-MIB; + +lldpMIB MODULE-IDENTITY + LAST-UPDATED "200505060000Z" -- May 06, 2005 + ORGANIZATION "IEEE 802.1 Working Group" + CONTACT-INFO + " WG-URL: http://grouper.ieee.org/groups/802/1/index.html + WG-EMail: stds-802-1@ieee.org + + Contact: Paul Congdon + Postal: Hewlett-Packard Company + 8000 Foothills Blvd. + Roseville, CA 95747 + USA + Tel: +1-916-785-5753 + E-mail: paul_congdon@hp.com" + DESCRIPTION + "Management Information Base module for LLDP configuration, + statistics, local system data and remote systems data + components. + + Copyright (C) IEEE (2005). This version of this MIB module + is published as subclause 12.1 of IEEE Std 802.1AB-2005; + see the standard itself for full legal notices." + REVISION "200505060000Z" -- May 06, 2005 + DESCRIPTION + "Published as part of IEEE Std 802.1AB-2005 initial version." + ::= { iso std(0) iso8802(8802) ieee802dot1(1) ieee802dot1mibs(1) 2 } + +lldpNotifications OBJECT IDENTIFIER ::= { lldpMIB 0 } +lldpObjects OBJECT IDENTIFIER ::= { lldpMIB 1 } +lldpConformance OBJECT IDENTIFIER ::= { lldpMIB 2 } + +-- +-- LLDP MIB Objects +-- + +lldpConfiguration OBJECT IDENTIFIER ::= { lldpObjects 1 } +lldpStatistics OBJECT IDENTIFIER ::= { lldpObjects 2 } +lldpLocalSystemData OBJECT IDENTIFIER ::= { lldpObjects 3 } +lldpRemoteSystemsData OBJECT IDENTIFIER ::= { lldpObjects 4 } +lldpExtensions OBJECT IDENTIFIER ::= { lldpObjects 5 } + +-- +-- *********************************************************** +-- +-- Textual Conventions +-- +-- *********************************************************** + +LldpChassisIdSubtype ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "This TC describes the source of a chassis identifier. + + The enumeration 'chassisComponent(1)' represents a chassis + identifier based on the value of entPhysicalAlias object + (defined in IETF RFC 2737) for a chassis component (i.e., + an entPhysicalClass value of 'chassis(3)'). + + The enumeration 'interfaceAlias(2)' represents a chassis + identifier based on the value of ifAlias object (defined in + IETF RFC 2863) for an interface on the containing chassis. + + The enumeration 'portComponent(3)' represents a chassis + identifier based on the value of entPhysicalAlias object + (defined in IETF RFC 2737) for a port or backplane + component (i.e., entPhysicalClass value of 'port(10)' or + 'backplane(4)'), within the containing chassis. + + The enumeration 'macAddress(4)' represents a chassis + identifier based on the value of a unicast source address + (encoded in network byte order and IEEE 802.3 canonical bit + order), of a port on the containing chassis as defined in + IEEE Std 802-2001. + + The enumeration 'networkAddress(5)' represents a chassis + identifier based on a network address, associated with + a particular chassis. The encoded address is actually + composed of two fields. The first field is a single octet, + representing the IANA AddressFamilyNumbers value for the + specific address type, and the second field is the network + address value. + + The enumeration 'interfaceName(6)' represents a chassis + identifier based on the value of ifName object (defined in + IETF RFC 2863) for an interface on the containing chassis. + + The enumeration 'local(7)' represents a chassis identifier + based on a locally defined value." + SYNTAX INTEGER { + chassisComponent(1), + interfaceAlias(2), + portComponent(3), + macAddress(4), + networkAddress(5), + interfaceName(6), + local(7) + } + +LldpChassisId ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "This TC describes the format of a chassis identifier string. + Objects of this type are always used with an associated + LldpChassisIdSubtype object, which identifies the format of + the particular LldpChassisId object instance. + + If the associated LldpChassisIdSubtype object has a value of + 'chassisComponent(1)', then the octet string identifies + a particular instance of the entPhysicalAlias object + (defined in IETF RFC 2737) for a chassis component (i.e., + an entPhysicalClass value of 'chassis(3)'). + + If the associated LldpChassisIdSubtype object has a value + of 'interfaceAlias(2)', then the octet string identifies + a particular instance of the ifAlias object (defined in + IETF RFC 2863) for an interface on the containing chassis. + If the particular ifAlias object does not contain any values, + another chassis identifier type should be used. + + If the associated LldpChassisIdSubtype object has a value + of 'portComponent(3)', then the octet string identifies a + particular instance of the entPhysicalAlias object (defined + in IETF RFC 2737) for a port or backplane component within + the containing chassis. + + If the associated LldpChassisIdSubtype object has a value of + 'macAddress(4)', then this string identifies a particular + unicast source address (encoded in network byte order and + IEEE 802.3 canonical bit order), of a port on the containing + chassis as defined in IEEE Std 802-2001. + + If the associated LldpChassisIdSubtype object has a value of + 'networkAddress(5)', then this string identifies a particular + network address, encoded in network byte order, associated + with one or more ports on the containing chassis. The first + octet contains the IANA Address Family Numbers enumeration + value for the specific address type, and octets 2 through + N contain the network address value in network byte order. + + If the associated LldpChassisIdSubtype object has a value + of 'interfaceName(6)', then the octet string identifies + a particular instance of the ifName object (defined in + IETF RFC 2863) for an interface on the containing chassis. + If the particular ifName object does not contain any values, + another chassis identifier type should be used. + + If the associated LldpChassisIdSubtype object has a value of + 'local(7)', then this string identifies a locally assigned + Chassis ID." + SYNTAX OCTET STRING (SIZE (1..255)) + +LldpPortIdSubtype ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "This TC describes the source of a particular type of port + identifier used in the LLDP MIB. + + The enumeration 'interfaceAlias(1)' represents a port + identifier based on the ifAlias MIB object, defined in IETF + RFC 2863. + + The enumeration 'portComponent(2)' represents a port + identifier based on the value of entPhysicalAlias (defined in + IETF RFC 2737) for a port component (i.e., entPhysicalClass + value of 'port(10)'), within the containing chassis. + + The enumeration 'macAddress(3)' represents a port identifier + based on a unicast source address (encoded in network + byte order and IEEE 802.3 canonical bit order), which has + been detected by the agent and associated with a particular + port (IEEE Std 802-2001). + + The enumeration 'networkAddress(4)' represents a port + identifier based on a network address, detected by the agent + and associated with a particular port. + + The enumeration 'interfaceName(5)' represents a port + identifier based on the ifName MIB object, defined in IETF + RFC 2863. + + The enumeration 'agentCircuitId(6)' represents a port + identifier based on the agent-local identifier of the circuit + (defined in RFC 3046), detected by the agent and associated + with a particular port. + + The enumeration 'local(7)' represents a port identifier + based on a value locally assigned." + + SYNTAX INTEGER { + interfaceAlias(1), + portComponent(2), + macAddress(3), + networkAddress(4), + interfaceName(5), + agentCircuitId(6), + local(7) + } + +LldpPortId ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "This TC describes the format of a port identifier string. + Objects of this type are always used with an associated + LldpPortIdSubtype object, which identifies the format of the + particular LldpPortId object instance. + + If the associated LldpPortIdSubtype object has a value of + 'interfaceAlias(1)', then the octet string identifies a + particular instance of the ifAlias object (defined in IETF + RFC 2863). If the particular ifAlias object does not contain + any values, another port identifier type should be used. + + If the associated LldpPortIdSubtype object has a value of + 'portComponent(2)', then the octet string identifies a + particular instance of the entPhysicalAlias object (defined + in IETF RFC 2737) for a port or backplane component. + + If the associated LldpPortIdSubtype object has a value of + 'macAddress(3)', then this string identifies a particular + unicast source address (encoded in network byte order + and IEEE 802.3 canonical bit order) associated with the port + (IEEE Std 802-2001). + + If the associated LldpPortIdSubtype object has a value of + 'networkAddress(4)', then this string identifies a network + address associated with the port. The first octet contains + the IANA AddressFamilyNumbers enumeration value for the + specific address type, and octets 2 through N contain the + networkAddress address value in network byte order. + + If the associated LldpPortIdSubtype object has a value of + 'interfaceName(5)', then the octet string identifies a + particular instance of the ifName object (defined in IETF + RFC 2863). If the particular ifName object does not contain + any values, another port identifier type should be used. + + If the associated LldpPortIdSubtype object has a value of + 'agentCircuitId(6)', then this string identifies a agent-local + identifier of the circuit (defined in RFC 3046). + + If the associated LldpPortIdSubtype object has a value of + 'local(7)', then this string identifies a locally + assigned port ID." + SYNTAX OCTET STRING (SIZE (1..255)) + +LldpManAddrIfSubtype ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "This TC describes the basis of a particular type of + interface associated with the management address. + + The enumeration 'unknown(1)' represents the case where the + interface is not known. + + The enumeration 'ifIndex(2)' represents interface identifier + based on the ifIndex MIB object. + + The enumeration 'systemPortNumber(3)' represents interface + identifier based on the system port numbering convention." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.5" + + SYNTAX INTEGER { + unknown(1), + ifIndex(2), + systemPortNumber(3) + } + +LldpManAddress ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The value of a management address associated with the LLDP + agent that may be used to reach higher layer entities to + assist discovery by network management. + + It should be noted that appropriate security credentials, + such as SNMP engineId, may be required to access the LLDP + agent using a management address. These necessary credentials + should be known by the network management and the objects + associated with the credentials are not included in the + LLDP agent." + SYNTAX OCTET STRING (SIZE (1..31)) + +LldpSystemCapabilitiesMap ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "This TC describes the system capabilities. + + The bit 'other(0)' indicates that the system has capabilities + other than those listed below. + + The bit 'repeater(1)' indicates that the system has repeater + capability. + + The bit 'bridge(2)' indicates that the system has bridge + capability. + + The bit 'wlanAccessPoint(3)' indicates that the system has + WLAN access point capability. + + The bit 'router(4)' indicates that the system has router + capability. + + The bit 'telephone(5)' indicates that the system has telephone + capability. + + The bit 'docsisCableDevice(6)' indicates that the system has + DOCSIS Cable Device capability (IETF RFC 2669 & 2670). + + The bit 'stationOnly(7)' indicates that the system has only + station capability and nothing else." + SYNTAX BITS { + other(0), + repeater(1), + bridge(2), + wlanAccessPoint(3), + router(4), + telephone(5), + docsisCableDevice(6), + stationOnly(7) + } + +LldpPortNumber ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "Each port contained in the chassis (that is known to the + LLDP agent) is uniquely identified by a port number. + + A port number has no mandatory relationship to an + InterfaceIndex object (of the interfaces MIB, IETF RFC 2863). + If the LLDP agent is a IEEE 802.1D, IEEE 802.1Q bridge, the + LldpPortNumber will have the same value as the dot1dBasePort + object (defined in IETF RFC 1493) associated corresponding + bridge port. If the system hosting LLDP agent is not an + IEEE 802.1D or an IEEE 802.1Q bridge, the LldpPortNumber + will have the same value as the corresponding interface's + InterfaceIndex object. + + Port numbers should be in the range of 1 and 4096 since a + particular port is also represented by the corresponding + port number bit in LldpPortList." + SYNTAX Integer32(1..4096) + +LldpPortList ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Each octet within this value specifies a set of eight ports, + with the first octet specifying ports 1 through 8, the second + octet specifying ports 9 through 16, etc. Within each octet, + the most significant bit represents the lowest numbered port, + and the least significant bit represents the highest numbered + port. Thus, each port of the system is represented by a + single bit within the value of this object. If that bit has + a value of '1' then that port is included in the set of ports; + the port is not included if its bit has a value of '0'." + REFERENCE + "IETF RFC 2674 section 5" + SYNTAX OCTET STRING(SIZE(0..512)) + +-- +-- *********************************************************** +-- +-- L L D P C O N F I G +-- +-- *********************************************************** +-- + +lldpMessageTxInterval OBJECT-TYPE + SYNTAX Integer32(5..32768) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The interval at which LLDP frames are transmitted on + behalf of this LLDP agent. + + The default value for lldpMessageTxInterval object is + 30 seconds. + + The value of this object must be restored from non-volatile + storage after a re-initialization of the management system." + REFERENCE + "IEEE 802.1AB-2005 10.5.3.3" + DEFVAL { 30 } + ::= { lldpConfiguration 1 } + +lldpMessageTxHoldMultiplier OBJECT-TYPE + SYNTAX Integer32(2..10) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The time-to-live value expressed as a multiple of the + lldpMessageTxInterval object. The actual time-to-live value + used in LLDP frames, transmitted on behalf of this LLDP agent, + can be expressed by the following formula: TTL = min(65535, + (lldpMessageTxInterval * lldpMessageTxHoldMultiplier)) For + example, if the value of lldpMessageTxInterval is '30', and + the value of lldpMessageTxHoldMultiplier is '4', then the + value '120' is encoded in the TTL field in the LLDP header. + + The default value for lldpMessageTxHoldMultiplier object is 4. + + The value of this object must be restored from non-volatile + storage after a re-initialization of the management system." + REFERENCE + "IEEE 802.1AB-2005 10.5.3.3" + DEFVAL { 4 } + ::= { lldpConfiguration 2 } + +lldpReinitDelay OBJECT-TYPE + SYNTAX Integer32(1..10) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The lldpReinitDelay indicates the delay (in units of + seconds) from when lldpPortConfigAdminStatus object of a + particular port becomes 'disabled' until re-initialization + will be attempted. + + The default value for lldpReintDelay object is two seconds. + + The value of this object must be restored from non-volatile + storage after a re-initialization of the management system." + REFERENCE + "IEEE 802.1AB-2005 10.5.3.3" + DEFVAL { 2 } + ::= { lldpConfiguration 3 } + +lldpTxDelay OBJECT-TYPE + SYNTAX Integer32(1..8192) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The lldpTxDelay indicates the delay (in units + of seconds) between successive LLDP frame transmissions + initiated by value/status changes in the LLDP local systems + MIB. The recommended value for the lldpTxDelay is set by the + following formula: + + 1 <= lldpTxDelay <= (0.25 * lldpMessageTxInterval) + + The default value for lldpTxDelay object is two seconds. + + The value of this object must be restored from non-volatile + storage after a re-initialization of the management system." + REFERENCE + "IEEE 802.1AB-2005 10.5.3.3" + DEFVAL { 2 } + ::= { lldpConfiguration 4 } + +lldpNotificationInterval OBJECT-TYPE + SYNTAX Integer32(5..3600) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object controls the transmission of LLDP notifications. + + the agent must not generate more than one lldpRemTablesChange + notification-event in the indicated period, where a + 'notification-event' is the transmission of a single + notification PDU type to a list of notification destinations. + If additional changes in lldpRemoteSystemsData object + groups occur within the indicated throttling period, + then these trap- events must be suppressed by the + agent. An NMS should periodically check the value of + lldpStatsRemTableLastChangeTime to detect any missed + lldpRemTablesChange notification-events, e.g. due to + throttling or transmission loss. + + If notification transmission is enabled for particular ports, + the suggested default throttling period is 5 seconds. + + The value of this object must be restored from non-volatile + storage after a re-initialization of the management system." + DEFVAL { 5 } + ::= { lldpConfiguration 5 } + +-- +-- lldpPortConfigTable: LLDP configuration on a per port basis +-- + +lldpPortConfigTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpPortConfigEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table that controls LLDP frame transmission on individual + ports." + ::= { lldpConfiguration 6 } + +lldpPortConfigEntry OBJECT-TYPE + SYNTAX LldpPortConfigEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "LLDP configuration information for a particular port. + This configuration parameter controls the transmission and + the reception of LLDP frames on those ports whose rows are + created in this table." + INDEX { lldpPortConfigPortNum } + ::= { lldpPortConfigTable 1 } + +LldpPortConfigEntry ::= SEQUENCE { + lldpPortConfigPortNum LldpPortNumber, + lldpPortConfigAdminStatus INTEGER, + lldpPortConfigNotificationEnable TruthValue, + lldpPortConfigTLVsTxEnable BITS } + +lldpPortConfigPortNum OBJECT-TYPE + SYNTAX LldpPortNumber + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index value used to identify the port component + (contained in the local chassis with the LLDP agent) + associated with this entry. + + The value of this object is used as a port index to the + lldpPortConfigTable." + ::= { lldpPortConfigEntry 1 } + +lldpPortConfigAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + txOnly(1), + rxOnly(2), + txAndRx(3), + disabled(4) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administratively desired status of the local LLDP agent. + + If the associated lldpPortConfigAdminStatus object has a + value of 'txOnly(1)', then LLDP agent will transmit LLDP + frames on this port and it will not store any information + about the remote systems connected. + + If the associated lldpPortConfigAdminStatus object has a + value of 'rxOnly(2)', then the LLDP agent will receive, + but it will not transmit LLDP frames on this port. + + If the associated lldpPortConfigAdminStatus object has a + value of 'txAndRx(3)', then the LLDP agent will transmit + and receive LLDP frames on this port. + + If the associated lldpPortConfigAdminStatus object has a + value of 'disabled(4)', then LLDP agent will not transmit or + receive LLDP frames on this port. If there is remote systems + information which is received on this port and stored in + other tables, before the port's lldpPortConfigAdminStatus + becomes disabled, then the information will naturally age out." + REFERENCE + "IEEE 802.1AB-2005 10.5.1" + DEFVAL { txAndRx } + ::= { lldpPortConfigEntry 2 } + +lldpPortConfigNotificationEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The lldpPortConfigNotificationEnable controls, on a per + port basis, whether or not notifications from the agent + are enabled. The value true(1) means that notifications are + enabled; the value false(2) means that they are not." + DEFVAL { false } + ::= { lldpPortConfigEntry 3 } + +lldpPortConfigTLVsTxEnable OBJECT-TYPE + SYNTAX BITS { + portDesc(0), + sysName(1), + sysDesc(2), + sysCap(3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The lldpPortConfigTLVsTxEnable, defined as a bitmap, + includes the basic set of LLDP TLVs whose transmission is + allowed on the local LLDP agent by the network management. + Each bit in the bitmap corresponds to a TLV type associated + with a specific optional TLV. + + It should be noted that the organizationally-specific TLVs + are excluded from the lldpTLVsTxEnable bitmap. + + LLDP Organization Specific Information Extension MIBs should + have similar configuration object to control transmission + of their organizationally defined TLVs. + + The bit 'portDesc(0)' indicates that LLDP agent should + transmit 'Port Description TLV'. + + The bit 'sysName(1)' indicates that LLDP agent should transmit + 'System Name TLV'. + + The bit 'sysDesc(2)' indicates that LLDP agent should transmit + 'System Description TLV'. + + The bit 'sysCap(3)' indicates that LLDP agent should transmit + 'System Capabilities TLV'. + + There is no bit reserved for the management address TLV type + since transmission of management address TLVs are controlled + by another object, lldpConfigManAddrTable. + + The default value for lldpPortConfigTLVsTxEnable object is + empty set, which means no enumerated values are set. + + The value of this object must be restored from non-volatile + storage after a re-initialization of the management system." + REFERENCE + "IEEE 802.1AB-2005 10.2.1.1" + DEFVAL { { } } + ::= { lldpPortConfigEntry 4 } + + +-- +-- lldpManAddrConfigTxPortsTable : selection of management addresses +-- to be transmitted on a specified set +-- of ports. +-- + +lldpConfigManAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpConfigManAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table that controls selection of LLDP management address + TLV instances to be transmitted on individual ports." + ::= { lldpConfiguration 7 } + +lldpConfigManAddrEntry OBJECT-TYPE + SYNTAX LldpConfigManAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "LLDP configuration information that specifies the set + of ports (represented as a PortList) on which the local + system management address instance will be transmitted. + + This configuration object augments the lldpLocManAddrEntry, + therefore it is only present along with the management + address instance contained in the associated + lldpLocManAddrEntry entry. + + Each active lldpConfigManAddrEntry must be restored from + non-volatile and re-created (along with the corresponding + lldpLocManAddrEntry) after a re-initialization of the + management system." + AUGMENTS { lldpLocManAddrEntry } + ::= { lldpConfigManAddrTable 1 } + +LldpConfigManAddrEntry ::= SEQUENCE { + lldpConfigManAddrPortsTxEnable LldpPortList +} + +lldpConfigManAddrPortsTxEnable OBJECT-TYPE + SYNTAX LldpPortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A set of ports that are identified by a PortList, in which + each port is represented as a bit. The corresponding local + system management address instance will be transmitted on the + member ports of the lldpManAddrPortsTxEnable. + + The default value for lldpConfigManAddrPortsTxEnable object + is empty binary string, which means no ports are specified + for advertising indicated management address instance." + REFERENCE + "IEEE 802.1AB-2005 10.2.1.1" + DEFVAL { ''H } -- empty binary string + ::= { lldpConfigManAddrEntry 1 } + + +-- +-- *********************************************************** +-- +-- L L D P S T A T S +-- +-- *********************************************************** +-- +-- LLDP Stats Group + +lldpStatsRemTablesLastChangeTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime object (defined in IETF RFC 3418) + at the time an entry is created, modified, or deleted in the + in tables associated with the lldpRemoteSystemsData objects + and all LLDP extension objects associated with remote systems. + + An NMS can use this object to reduce polling of the + lldpRemoteSystemsData objects." + ::= { lldpStatistics 1 } + +lldpStatsRemTablesInserts OBJECT-TYPE + SYNTAX ZeroBasedCounter32 + UNITS "table entries" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times the complete set of information + advertised by a particular MSAP has been inserted into tables + contained in lldpRemoteSystemsData and lldpExtensions objects. + + The complete set of information received from a particular + MSAP should be inserted into related tables. If partial + information cannot be inserted for a reason such as lack + of resources, all of the complete set of information should + be removed. + + This counter should be incremented only once after the + complete set of information is successfully recorded + in all related tables. Any failures during inserting + information set which result in deletion of previously + inserted information should not trigger any changes in + lldpStatsRemTablesInserts since the insert is not completed + yet or or in lldpStatsRemTablesDeletes, since the deletion + would only be a partial deletion. If the failure was the + result of lack of resources, the lldpStatsRemTablesDrops + counter should be incremented once." + ::= { lldpStatistics 2 } + +lldpStatsRemTablesDeletes OBJECT-TYPE + SYNTAX ZeroBasedCounter32 + UNITS "table entries" + MAX-ACCESS read-only + STATUS current + + DESCRIPTION + "The number of times the complete set of information + advertised by a particular MSAP has been deleted from + tables contained in lldpRemoteSystemsData and lldpExtensions + objects. + + This counter should be incremented only once when the + complete set of information is completely deleted from all + related tables. Partial deletions, such as deletion of + rows associated with a particular MSAP from some tables, + but not from all tables are not allowed, thus should not + change the value of this counter." + ::= { lldpStatistics 3 } + +lldpStatsRemTablesDrops OBJECT-TYPE + SYNTAX ZeroBasedCounter32 + UNITS "table entries" + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "The number of times the complete set of information + advertised by a particular MSAP could not be entered into + tables contained in lldpRemoteSystemsData and lldpExtensions + objects because of insufficient resources." + ::= { lldpStatistics 4 } + +lldpStatsRemTablesAgeouts OBJECT-TYPE + SYNTAX ZeroBasedCounter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times the complete set of information + advertised by a particular MSAP has been deleted from tables + contained in lldpRemoteSystemsData and lldpExtensions objects + because the information timeliness interval has expired. + + This counter should be incremented only once when the complete + set of information is completely invalidated (aged out) + from all related tables. Partial aging, similar to deletion + case, is not allowed, and thus, should not change the value + of this counter." + ::= { lldpStatistics 5 } + +-- +-- TX statistics +-- + +lldpStatsTxPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpStatsTxPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing LLDP transmission statistics for + individual ports. Entries are not required to exist in + this table while the lldpPortConfigEntry object is equal to + 'disabled(4)'." + ::= { lldpStatistics 6 } + +lldpStatsTxPortEntry OBJECT-TYPE + SYNTAX LldpStatsTxPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "LLDP frame transmission statistics for a particular port. + The port must be contained in the same chassis as the + LLDP agent. + + All counter values in a particular entry shall be + maintained on a continuing basis and shall not be deleted + upon expiration of rxInfoTTL timing counters in the LLDP + remote systems MIB of the receipt of a shutdown frame from + a remote LLDP agent. + + All statistical counters associated with a particular + port on the local LLDP agent become frozen whenever the + adminStatus is disabled for the same port." + INDEX { lldpStatsTxPortNum } + ::= { lldpStatsTxPortTable 1 } + +LldpStatsTxPortEntry ::= SEQUENCE { + lldpStatsTxPortNum LldpPortNumber, + lldpStatsTxPortFramesTotal Counter32 +} + +lldpStatsTxPortNum OBJECT-TYPE + SYNTAX LldpPortNumber + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index value used to identify the port component + (contained in the local chassis with the LLDP agent) + associated with this entry. + + The value of this object is used as a port index to the + lldpStatsTable." + ::= { lldpStatsTxPortEntry 1 } + +lldpStatsTxPortFramesTotal OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of LLDP frames transmitted by this LLDP agent + on the indicated port." + REFERENCE + "IEEE 802.1AB-2005 10.5.2.1" + ::= { lldpStatsTxPortEntry 2 } + +-- +-- RX statistics +-- + +lldpStatsRxPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpRxStatsPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table containing LLDP reception statistics for individual + ports. Entries are not required to exist in this table while + the lldpPortConfigEntry object is equal to 'disabled(4)'." + ::= { lldpStatistics 7 } + +lldpStatsRxPortEntry OBJECT-TYPE + SYNTAX LldpRxStatsPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "LLDP frame reception statistics for a particular port. + The port must be contained in the same chassis as the + LLDP agent. + + All counter values in a particular entry shall be + maintained on a continuing basis and shall not be deleted + upon expiration of rxInfoTTL timing counters in the LLDP + remote systems MIB of the receipt of a shutdown frame from + a remote LLDP agent. + + All statistical counters associated with a particular + port on the local LLDP agent become frozen whenever the + adminStatus is disabled for the same port." + INDEX { lldpStatsRxPortNum } + ::= { lldpStatsRxPortTable 1 } + +LldpRxStatsPortEntry ::= SEQUENCE { + lldpStatsRxPortNum LldpPortNumber, + lldpStatsRxPortFramesDiscardedTotal Counter32, + lldpStatsRxPortFramesErrors Counter32, + lldpStatsRxPortFramesTotal Counter32, + lldpStatsRxPortTLVsDiscardedTotal Counter32, + lldpStatsRxPortTLVsUnrecognizedTotal Counter32, + lldpStatsRxPortAgeoutsTotal ZeroBasedCounter32 +} + +lldpStatsRxPortNum OBJECT-TYPE + SYNTAX LldpPortNumber + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index value used to identify the port component + (contained in the local chassis with the LLDP agent) + associated with this entry. + + The value of this object is used as a port index to the + lldpStatsTable." + ::= { lldpStatsRxPortEntry 1 } + +lldpStatsRxPortFramesDiscardedTotal OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of LLDP frames received by this LLDP agent on + the indicated port, and then discarded for any reason. + This counter can provide an indication that LLDP header + formating problems may exist with the local LLDP agent in + the sending system or that LLDPDU validation problems may + exist with the local LLDP agent in the receiving system." + REFERENCE + "IEEE 802.1AB-2005 10.5.2.2" + ::= { lldpStatsRxPortEntry 2 } + +lldpStatsRxPortFramesErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of invalid LLDP frames received by this LLDP + agent on the indicated port, while this LLDP agent is enabled." + REFERENCE + "IEEE 802.1AB-2005 10.5.2.2" + ::= { lldpStatsRxPortEntry 3 } + +lldpStatsRxPortFramesTotal OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of valid LLDP frames received by this LLDP agent + on the indicated port, while this LLDP agent is enabled." + REFERENCE + "IEEE 802.1AB-2005 10.5.2.2" + ::= { lldpStatsRxPortEntry 4 } + +lldpStatsRxPortTLVsDiscardedTotal OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of LLDP TLVs discarded for any reason by this LLDP + agent on the indicated port." + REFERENCE + "IEEE 802.1AB-2005 10.5.2.2" + ::= { lldpStatsRxPortEntry 5 } + +lldpStatsRxPortTLVsUnrecognizedTotal OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of LLDP TLVs received on the given port that + are not recognized by this LLDP agent on the indicated port. + + An unrecognized TLV is referred to as the TLV whose type value + is in the range of reserved TLV types (000 1001 - 111 1110) + in Table 9.1 of IEEE Std 802.1AB-2005. An unrecognized + TLV may be a basic management TLV from a later LLDP version." + REFERENCE + "IEEE 802.1AB-2005 10.5.2.2" + ::= { lldpStatsRxPortEntry 6 } + +lldpStatsRxPortAgeoutsTotal OBJECT-TYPE + SYNTAX ZeroBasedCounter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The counter that represents the number of age-outs that + occurred on a given port. An age-out is the number of + times the complete set of information advertised by a + particular MSAP has been deleted from tables contained in + lldpRemoteSystemsData and lldpExtensions objects because + the information timeliness interval has expired. + + This counter is similar to lldpStatsRemTablesAgeouts, except + that the counter is on a per port basis. This enables NMS to + poll tables associated with the lldpRemoteSystemsData objects + and all LLDP extension objects associated with remote systems + on the indicated port only. + + This counter should be set to zero during agent initialization + and its value should not be saved in non-volatile storage. + When a port's admin status changes from 'disabled' to + 'rxOnly', 'txOnly' or 'txAndRx', the counter associated with + the same port should reset to 0. The agent should also flush + all remote system information associated with the same port. + + This counter should be incremented only once when the + complete set of information is invalidated (aged out) from + all related tables on a particular port. Partial aging + is not allowed, and thus, should not change the value of + this counter." + REFERENCE + "IEEE 802.1AB-2005 10.5.2.2" + ::= { lldpStatsRxPortEntry 7 } + +-- *********************************************************** +-- +-- L O C A L S Y S T E M D A T A +-- +-- *********************************************************** + +lldpLocChassisIdSubtype OBJECT-TYPE + SYNTAX LldpChassisIdSubtype + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of encoding used to identify the chassis + associated with the local system." + REFERENCE + "IEEE 802.1AB-2005 9.5.2.2" + ::= { lldpLocalSystemData 1 } + +lldpLocChassisId OBJECT-TYPE + SYNTAX LldpChassisId + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The string value used to identify the chassis component + associated with the local system." + REFERENCE + "IEEE 802.1AB-2005 9.5.2.3" + ::= { lldpLocalSystemData 2 } + +lldpLocSysName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE(0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The string value used to identify the system name of the + local system. If the local agent supports IETF RFC 3418, + lldpLocSysName object should have the same value of sysName + object." + REFERENCE + "IEEE 802.1AB-2005 9.5.6.2" + ::= { lldpLocalSystemData 3 } + +lldpLocSysDesc OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE(0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The string value used to identify the system description + of the local system. If the local agent supports IETF RFC 3418, + lldpLocSysDesc object should have the same value of sysDesc + object." + REFERENCE + "IEEE 802.1AB-2005 9.5.7.2" + ::= { lldpLocalSystemData 4 } + +lldpLocSysCapSupported OBJECT-TYPE + SYNTAX LldpSystemCapabilitiesMap + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The bitmap value used to identify which system capabilities + are supported on the local system." + REFERENCE + "IEEE 802.1AB-2005 9.5.8.1" + ::= { lldpLocalSystemData 5 } + +lldpLocSysCapEnabled OBJECT-TYPE + SYNTAX LldpSystemCapabilitiesMap + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The bitmap value used to identify which system capabilities + are enabled on the local system." + REFERENCE + "IEEE 802.1AB-2005 9.5.8.2" + ::= { lldpLocalSystemData 6 } + + +-- +-- lldpLocPortTable : Port specific Local system data +-- + +lldpLocPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpLocPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains one or more rows per port information + associated with the local system known to this agent." + ::= { lldpLocalSystemData 7 } + +lldpLocPortEntry OBJECT-TYPE + SYNTAX LldpLocPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a particular port component. + + Entries may be created and deleted in this table by the + agent." + INDEX { lldpLocPortNum } + ::= { lldpLocPortTable 1 } + +LldpLocPortEntry ::= SEQUENCE { + lldpLocPortNum LldpPortNumber, + lldpLocPortIdSubtype LldpPortIdSubtype, + lldpLocPortId LldpPortId, + lldpLocPortDesc SnmpAdminString +} + +lldpLocPortNum OBJECT-TYPE + SYNTAX LldpPortNumber + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index value used to identify the port component + (contained in the local chassis with the LLDP agent) + associated with this entry. + + The value of this object is used as a port index to the + lldpLocPortTable." + ::= { lldpLocPortEntry 1 } + +lldpLocPortIdSubtype OBJECT-TYPE + SYNTAX LldpPortIdSubtype + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of port identifier encoding used in the associated + 'lldpLocPortId' object." + REFERENCE + "IEEE 802.1AB-2005 9.5.3.2" + ::= { lldpLocPortEntry 2 } + +lldpLocPortId OBJECT-TYPE + SYNTAX LldpPortId + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The string value used to identify the port component + associated with a given port in the local system." + REFERENCE + "IEEE 802.1AB-2005 9.5.3.3" + ::= { lldpLocPortEntry 3 } + +lldpLocPortDesc OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE(0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The string value used to identify the 802 LAN station's port + description associated with the local system. If the local + agent supports IETF RFC 2863, lldpLocPortDesc object should + have the same value of ifDescr object." + REFERENCE + "IEEE 802.1AB-2005 9.5.5.2" + ::= { lldpLocPortEntry 4 } + +-- +-- lldpLocManAddrTable : Management addresses of the local system +-- + +lldpLocManAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpLocManAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains management address information on the + local system known to this agent." + ::= { lldpLocalSystemData 8 } + +lldpLocManAddrEntry OBJECT-TYPE + SYNTAX LldpLocManAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Management address information about a particular chassis + component. There may be multiple management addresses + configured on the system identified by a particular + lldpLocChassisId. Each management address should have + distinct 'management address type' (lldpLocManAddrSubtype) and + 'management address' (lldpLocManAddr.) + + Entries may be created and deleted in this table by the + agent." + INDEX { lldpLocManAddrSubtype, + lldpLocManAddr } + ::= { lldpLocManAddrTable 1 } + +LldpLocManAddrEntry ::= SEQUENCE { + lldpLocManAddrSubtype AddressFamilyNumbers, + lldpLocManAddr LldpManAddress, + lldpLocManAddrLen Integer32, + lldpLocManAddrIfSubtype LldpManAddrIfSubtype, + lldpLocManAddrIfId Integer32, + lldpLocManAddrOID OBJECT IDENTIFIER +} + +lldpLocManAddrSubtype OBJECT-TYPE + SYNTAX AddressFamilyNumbers + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of management address identifier encoding used in + the associated 'lldpLocManagmentAddr' object." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.3" + ::= { lldpLocManAddrEntry 1 } + +lldpLocManAddr OBJECT-TYPE + SYNTAX LldpManAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The string value used to identify the management address + component associated with the local system. The purpose of + this address is to contact the management entity." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.4" + ::= { lldpLocManAddrEntry 2 } + +lldpLocManAddrLen OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total length of the management address subtype and the + management address fields in LLDPDUs transmitted by the + local LLDP agent. + + The management address length field is needed so that the + receiving systems that do not implement SNMP will not be + required to implement an iana family numbers/address length + equivalency table in order to decode the management adress." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.2" + ::= { lldpLocManAddrEntry 3 } + + +lldpLocManAddrIfSubtype OBJECT-TYPE + SYNTAX LldpManAddrIfSubtype + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The enumeration value that identifies the interface numbering + method used for defining the interface number, associated + with the local system." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.5" + ::= { lldpLocManAddrEntry 4 } + +lldpLocManAddrIfId OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The integer value used to identify the interface number + regarding the management address component associated with + the local system." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.6" + ::= { lldpLocManAddrEntry 5 } + +lldpLocManAddrOID OBJECT-TYPE + SYNTAX OBJECT IDENTIFIER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The OID value used to identify the type of hardware component + or protocol entity associated with the management address + advertised by the local system agent." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.8" + ::= { lldpLocManAddrEntry 6 } + + +-- *********************************************************** +-- +-- R E M O T E S Y S T E M S D A T A +-- +-- *********************************************************** + +lldpRemTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpRemEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains one or more rows per physical network + connection known to this agent. The agent may wish to ensure + that only one lldpRemEntry is present for each local port, + or it may choose to maintain multiple lldpRemEntries for + the same local port. + + The following procedure may be used to retrieve remote + systems information updates from an LLDP agent: + + 1. NMS polls all tables associated with remote systems + and keeps a local copy of the information retrieved. + NMS polls periodically the values of the following + objects: + a. lldpStatsRemTablesInserts + b. lldpStatsRemTablesDeletes + c. lldpStatsRemTablesDrops + d. lldpStatsRemTablesAgeouts + e. lldpStatsRxPortAgeoutsTotal for all ports. + + 2. LLDP agent updates remote systems MIB objects, and + sends out notifications to a list of notification + destinations. + + 3. NMS receives the notifications and compares the new + values of objects listed in step 1. + + Periodically, NMS should poll the object + lldpStatsRemTablesLastChangeTime to find out if anything + has changed since the last poll. if something has + changed, NMS will poll the objects listed in step 1 to + figure out what kind of changes occurred in the tables. + + if value of lldpStatsRemTablesInserts has changed, + then NMS will walk all tables by employing TimeFilter + with the last-polled time value. This request will + return new objects or objects whose values are updated + since the last poll. + + if value of lldpStatsRemTablesAgeouts has changed, + then NMS will walk the lldpStatsRxPortAgeoutsTotal and + compare the new values with previously recorded ones. + For ports whose lldpStatsRxPortAgeoutsTotal value is + greater than the recorded value, NMS will have to + retrieve objects associated with those ports from + table(s) without employing a TimeFilter (which is + performed by specifying 0 for the TimeFilter.) + + lldpStatsRemTablesDeletes and lldpStatsRemTablesDrops + objects are provided for informational purposes." + ::= { lldpRemoteSystemsData 1 } + +lldpRemEntry OBJECT-TYPE + SYNTAX LldpRemEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a particular physical network connection. + Entries may be created and deleted in this table by the agent, + if a physical topology discovery process is active." + INDEX { + lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex + } + ::= { lldpRemTable 1 } + +LldpRemEntry ::= SEQUENCE { + lldpRemTimeMark TimeFilter, + lldpRemLocalPortNum LldpPortNumber, + lldpRemIndex Integer32, + lldpRemChassisIdSubtype LldpChassisIdSubtype, + lldpRemChassisId LldpChassisId, + lldpRemPortIdSubtype LldpPortIdSubtype, + lldpRemPortId LldpPortId, + lldpRemPortDesc SnmpAdminString, + lldpRemSysName SnmpAdminString, + lldpRemSysDesc SnmpAdminString, + lldpRemSysCapSupported LldpSystemCapabilitiesMap, + lldpRemSysCapEnabled LldpSystemCapabilitiesMap +} + +lldpRemTimeMark OBJECT-TYPE + SYNTAX TimeFilter + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A TimeFilter for this entry. See the TimeFilter textual + convention in IETF RFC 2021 and + http://www.ietf.org/IESG/Implementations/RFC2021-Implementation.txt + to see how TimeFilter works." + REFERENCE + "IETF RFC 2021 section 6" + ::= { lldpRemEntry 1 } + +lldpRemLocalPortNum OBJECT-TYPE + SYNTAX LldpPortNumber + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index value used to identify the port component + (contained in the local chassis with the LLDP agent) + associated with this entry. The lldpRemLocalPortNum + identifies the port on which the remote system information + is received. + + The value of this object is used as a port index to the + lldpRemTable." + ::= { lldpRemEntry 2 } + +lldpRemIndex OBJECT-TYPE + SYNTAX Integer32(1..2147483647) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object represents an arbitrary local integer value used + by this agent to identify a particular connection instance, + unique only for the indicated remote system. + + An agent is encouraged to assign monotonically increasing + index values to new entries, starting with one, after each + reboot. It is considered unlikely that the lldpRemIndex + will wrap between reboots." + ::= { lldpRemEntry 3 } + +lldpRemChassisIdSubtype OBJECT-TYPE + SYNTAX LldpChassisIdSubtype + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of encoding used to identify the chassis associated + with the remote system." + REFERENCE + "IEEE 802.1AB-2005 9.5.2.2" + ::= { lldpRemEntry 4 } + +lldpRemChassisId OBJECT-TYPE + SYNTAX LldpChassisId + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The string value used to identify the chassis component + associated with the remote system." + REFERENCE + "IEEE 802.1AB-2005 9.5.2.3" + ::= { lldpRemEntry 5 } + +lldpRemPortIdSubtype OBJECT-TYPE + SYNTAX LldpPortIdSubtype + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of port identifier encoding used in the associated + 'lldpRemPortId' object." + REFERENCE + "IEEE 802.1AB-2005 9.5.3.2" + ::= { lldpRemEntry 6 } + +lldpRemPortId OBJECT-TYPE + SYNTAX LldpPortId + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The string value used to identify the port component + associated with the remote system." + REFERENCE + "IEEE 802.1AB-2005 9.5.3.3" + ::= { lldpRemEntry 7 } + +lldpRemPortDesc OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE(0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The string value used to identify the description of + the given port associated with the remote system." + REFERENCE + "IEEE 802.1AB-2005 9.5.5.2" + ::= { lldpRemEntry 8 } + +lldpRemSysName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE(0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The string value used to identify the system name of the + remote system." + REFERENCE + "IEEE 802.1AB-2005 9.5.6.2" + ::= { lldpRemEntry 9 } + +lldpRemSysDesc OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE(0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The string value used to identify the system description + of the remote system." + REFERENCE + "IEEE 802.1AB-2005 9.5.7.2" + ::= { lldpRemEntry 10 } + +lldpRemSysCapSupported OBJECT-TYPE + SYNTAX LldpSystemCapabilitiesMap + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The bitmap value used to identify which system capabilities + are supported on the remote system." + REFERENCE + "IEEE 802.1AB-2005 9.5.8.1" + ::= { lldpRemEntry 11 } + +lldpRemSysCapEnabled OBJECT-TYPE + SYNTAX LldpSystemCapabilitiesMap + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The bitmap value used to identify which system capabilities + are enabled on the remote system." + REFERENCE + "IEEE 802.1AB-2005 9.5.8.2" + ::= { lldpRemEntry 12 } + +-- +-- lldpRemManAddrTable : Management addresses of the remote system +-- + +lldpRemManAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpRemManAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains one or more rows per management address + information on the remote system learned on a particular port + contained in the local chassis known to this agent." + ::= { lldpRemoteSystemsData 2 } + +lldpRemManAddrEntry OBJECT-TYPE + SYNTAX LldpRemManAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Management address information about a particular chassis + component. There may be multiple management addresses + configured on the remote system identified by a particular + lldpRemIndex whose information is received on + lldpRemLocalPortNum of the local system. Each management + address should have distinct 'management address + type' (lldpRemManAddrSubtype) and 'management address' + (lldpRemManAddr.) + + Entries may be created and deleted in this table by the + agent." + INDEX { lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex, + lldpRemManAddrSubtype, + lldpRemManAddr + } + ::= { lldpRemManAddrTable 1 } + +LldpRemManAddrEntry ::= SEQUENCE { + lldpRemManAddrSubtype AddressFamilyNumbers, + lldpRemManAddr LldpManAddress, + lldpRemManAddrIfSubtype LldpManAddrIfSubtype, + lldpRemManAddrIfId Integer32, + lldpRemManAddrOID OBJECT IDENTIFIER +} + +lldpRemManAddrSubtype OBJECT-TYPE + SYNTAX AddressFamilyNumbers + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of management address identifier encoding used in + the associated 'lldpRemManagmentAddr' object." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.3" + ::= { lldpRemManAddrEntry 1 } + +lldpRemManAddr OBJECT-TYPE + SYNTAX LldpManAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The string value used to identify the management address + component associated with the remote system. The purpose + of this address is to contact the management entity." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.4" + ::= { lldpRemManAddrEntry 2 } + +lldpRemManAddrIfSubtype OBJECT-TYPE + SYNTAX LldpManAddrIfSubtype + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The enumeration value that identifies the interface numbering + method used for defining the interface number, associated + with the remote system." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.5" + ::= { lldpRemManAddrEntry 3 } + +lldpRemManAddrIfId OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The integer value used to identify the interface number + regarding the management address component associated with + the remote system." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.6" + ::= { lldpRemManAddrEntry 4 } + +lldpRemManAddrOID OBJECT-TYPE + SYNTAX OBJECT IDENTIFIER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The OID value used to identify the type of hardware component + or protocol entity associated with the management address + advertised by the remote system agent." + REFERENCE + "IEEE 802.1AB-2005 9.5.9.8" + ::= { lldpRemManAddrEntry 5 } + +-- +-- lldpRemUnknownTLVTable : Unrecognized TLV information +-- +lldpRemUnknownTLVTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpRemUnknownTLVEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains information about an incoming TLV which + is not recognized by the receiving LLDP agent. The TLV may + be from a later version of the basic management set. + + This table should only contain TLVs that are found in + a single LLDP frame. Entries in this table, associated + with an MAC service access point (MSAP, the access point + for MAC services provided to the LCC sublayer, defined + in IEEE 100, which is also identified with a particular + lldpRemLocalPortNum, lldpRemIndex pair) are overwritten with + most recently received unrecognized TLV from the same MSAP, + or they will naturally age out when the rxInfoTTL timer + (associated with the MSAP) expires." + REFERENCE + "IEEE 802.1AB-2005 10.3.2" + ::= { lldpRemoteSystemsData 3 } + +lldpRemUnknownTLVEntry OBJECT-TYPE + SYNTAX LldpRemUnknownTLVEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about an unrecognized TLV received from a + physical network connection. Entries may be created and + deleted in this table by the agent, if a physical topology + discovery process is active." + INDEX { + lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex, + lldpRemUnknownTLVType + } + ::= { lldpRemUnknownTLVTable 1 } + +LldpRemUnknownTLVEntry ::= SEQUENCE { + lldpRemUnknownTLVType Integer32, + lldpRemUnknownTLVInfo OCTET STRING +} + +lldpRemUnknownTLVType OBJECT-TYPE + SYNTAX Integer32(9..126) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object represents the value extracted from the type + field of the TLV." + REFERENCE + "IEEE 802.1AB-2005 10.3.5" + ::= { lldpRemUnknownTLVEntry 1 } + +lldpRemUnknownTLVInfo OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..511)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the value extracted from the value + field of the TLV." + REFERENCE + "IEEE 802.1AB-2005 10.3.5" + ::= { lldpRemUnknownTLVEntry 2 } + +------------------------------------------------------------------------------ +-- Remote Systems Extension Table - Organizationally-Defined Information +------------------------------------------------------------------------------ +lldpRemOrgDefInfoTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpRemOrgDefInfoEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains one or more rows per physical network + connection which advertises the organizationally defined + information. + + Note that this table contains one or more rows of + organizationally defined information that is not recognized + by the local agent. + + If the local system is capable of recognizing any + organizationally defined information, appropriate extension + MIBs from the organization should be used for information + retrieval." + ::= { lldpRemoteSystemsData 4 } + +lldpRemOrgDefInfoEntry OBJECT-TYPE + SYNTAX LldpRemOrgDefInfoEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about the unrecognized organizationally + defined information advertised by the remote system. + The lldpRemTimeMark, lldpRemLocalPortNum, lldpRemIndex, + lldpRemOrgDefInfoOUI, lldpRemOrgDefInfoSubtype, and + lldpRemOrgDefInfoIndex are indexes to this table. If there is + an lldpRemOrgDefInfoEntry associated with a particular remote + system identified by the lldpRemLocalPortNum and lldpRemIndex, + there must be an lldpRemEntry associated with the same + instance (i.e, using same indexes.) When the lldpRemEntry + for the same index is removed from the lldpRemTable, the + associated lldpRemOrgDefInfoEntry should be removed from + the lldpRemOrgDefInfoTable. + + Entries may be created and deleted in this table by the + agent." + INDEX { lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex, + lldpRemOrgDefInfoOUI, + lldpRemOrgDefInfoSubtype, + lldpRemOrgDefInfoIndex } + ::= { lldpRemOrgDefInfoTable 1 } + +LldpRemOrgDefInfoEntry ::= SEQUENCE { + lldpRemOrgDefInfoOUI OCTET STRING, + lldpRemOrgDefInfoSubtype Integer32, + lldpRemOrgDefInfoIndex Integer32, + lldpRemOrgDefInfo OCTET STRING +} + +lldpRemOrgDefInfoOUI OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(3)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Organizationally Unique Identifier (OUI), as defined + in IEEE std 802-2001, is a 24 bit (three octets) globally + unique assigned number referenced by various standards, + of the information received from the remote system." + REFERENCE + "IEEE 802.1AB-2005 9.5.1.3" + ::= { lldpRemOrgDefInfoEntry 1 } + +lldpRemOrgDefInfoSubtype OBJECT-TYPE + SYNTAX Integer32(1..255) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The integer value used to identify the subtype of the + organizationally defined information received from the + remote system. + + The subtype value is required to identify different instances + of organizationally defined information that could not be + retrieved without a unique identifier that indicates the + particular type of information contained in the information + string." + REFERENCE + "IEEE 802.1AB-2005 9.5.1.4" + ::= { lldpRemOrgDefInfoEntry 2 } + +lldpRemOrgDefInfoIndex OBJECT-TYPE + SYNTAX Integer32(1..2147483647) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object represents an arbitrary local integer value + used by this agent to identify a particular unrecognized + organizationally defined information instance, unique only + for the lldpRemOrgDefInfoOUI and lldpRemOrgDefInfoSubtype + from the same remote system. + + An agent is encouraged to assign monotonically increasing + index values to new entries, starting with one, after each + reboot. It is considered unlikely that the + lldpRemOrgDefInfoIndex will wrap between reboots." + ::= { lldpRemOrgDefInfoEntry 3 } + +lldpRemOrgDefInfo OBJECT-TYPE + SYNTAX OCTET STRING(SIZE(0..507)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The string value used to identify the organizationally + defined information of the remote system. The encoding for + this object should be as defined for SnmpAdminString TC." + REFERENCE + "IEEE 802.1AB-2005 9.5.1.5" + ::= { lldpRemOrgDefInfoEntry 4 } + + +-- +-- *********************************************************** +-- +-- L L D P M I B N O T I F I C A T I O N S +-- +-- *********************************************************** +-- + +lldpNotificationPrefix OBJECT IDENTIFIER ::= { lldpNotifications 0 } + +lldpRemTablesChange NOTIFICATION-TYPE + OBJECTS { + lldpStatsRemTablesInserts, + lldpStatsRemTablesDeletes, + lldpStatsRemTablesDrops, + lldpStatsRemTablesAgeouts + } + STATUS current + DESCRIPTION + "A lldpRemTablesChange notification is sent when the value + of lldpStatsRemTableLastChangeTime changes. It can be + utilized by an NMS to trigger LLDP remote systems table + maintenance polls. + + Note that transmission of lldpRemTablesChange + notifications are throttled by the agent, as specified by the + 'lldpNotificationInterval' object." + ::= { lldpNotificationPrefix 1 } + + +-- +-- *********************************************************** +-- +-- L L D P M I B C O N F O R M A N C E +-- +-- *********************************************************** +-- + +lldpCompliances OBJECT IDENTIFIER ::= { lldpConformance 1 } +lldpGroups OBJECT IDENTIFIER ::= { lldpConformance 2 } + +-- compliance statements + +lldpCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for SNMP entities which implement + the LLDP MIB." + MODULE -- this module + MANDATORY-GROUPS { lldpConfigGroup, + lldpConfigRxGroup, + lldpConfigTxGroup, + lldpStatsRxGroup, + lldpStatsTxGroup, + lldpLocSysGroup, + lldpRemSysGroup, + lldpNotificationsGroup + } + ::= { lldpCompliances 1 } + +-- MIB groupings + +lldpConfigGroup OBJECT-GROUP + OBJECTS { + lldpPortConfigAdminStatus + } + STATUS current + DESCRIPTION + "The collection of objects which are used to configure the + LLDP implementation behavior. + + This group is mandatory for agents which implement the LLDP." + ::= { lldpGroups 1 } + +lldpConfigRxGroup OBJECT-GROUP + OBJECTS { + lldpNotificationInterval, + lldpPortConfigNotificationEnable + } + STATUS current + DESCRIPTION + "The collection of objects which are used to configure the + LLDP implementation behavior. + + This group is mandatory for agents which implement the LLDP + and have the capability of receiving LLDP frames." + ::= { lldpGroups 2 } + +lldpConfigTxGroup OBJECT-GROUP + OBJECTS { + lldpMessageTxInterval, + lldpMessageTxHoldMultiplier, + lldpReinitDelay, + lldpTxDelay, + lldpPortConfigTLVsTxEnable, + lldpConfigManAddrPortsTxEnable + } + STATUS current + DESCRIPTION + "The collection of objects which are used to configure the + LLDP implementation behavior. + + This group is mandatory for agents which implement the LLDP + and have the capability of transmitting LLDP frames." + ::= { lldpGroups 3 } + +lldpStatsRxGroup OBJECT-GROUP + OBJECTS { + lldpStatsRemTablesLastChangeTime, + lldpStatsRemTablesInserts, + lldpStatsRemTablesDeletes, + lldpStatsRemTablesDrops, + lldpStatsRemTablesAgeouts, + lldpStatsRxPortFramesDiscardedTotal, + lldpStatsRxPortFramesErrors, + lldpStatsRxPortFramesTotal, + lldpStatsRxPortTLVsDiscardedTotal, + lldpStatsRxPortTLVsUnrecognizedTotal, + lldpStatsRxPortAgeoutsTotal + } + STATUS current + DESCRIPTION + "The collection of objects which are used to represent LLDP + reception statistics. + + This group is mandatory for agents which implement the LLDP + and have the capability of receiving LLDP frames." + ::= { lldpGroups 4 } + +lldpStatsTxGroup OBJECT-GROUP + OBJECTS { + lldpStatsTxPortFramesTotal + } + STATUS current + DESCRIPTION + "The collection of objects which are used to represent LLDP + transmission statistics. + + This group is mandatory for agents which implement the LLDP + and have the capability of transmitting LLDP frames." + ::= { lldpGroups 5 } + +lldpLocSysGroup OBJECT-GROUP + OBJECTS { + lldpLocChassisIdSubtype, + lldpLocChassisId, + lldpLocPortIdSubtype, + lldpLocPortId, + lldpLocPortDesc, + lldpLocSysDesc, + lldpLocSysName, + lldpLocSysCapSupported, + lldpLocSysCapEnabled, + lldpLocManAddrLen, + lldpLocManAddrIfSubtype, + lldpLocManAddrIfId, + lldpLocManAddrOID + } + STATUS current + DESCRIPTION + "The collection of objects which are used to represent LLDP + Local System Information. + + This group is mandatory for agents which implement the LLDP + and have the capability of transmitting LLDP frames." + ::= { lldpGroups 6 } + +lldpRemSysGroup OBJECT-GROUP + OBJECTS { + lldpRemChassisIdSubtype, + lldpRemChassisId, + lldpRemPortIdSubtype, + lldpRemPortId, + lldpRemPortDesc, + lldpRemSysName, + lldpRemSysDesc, + lldpRemSysCapSupported, + lldpRemSysCapEnabled, + lldpRemManAddrIfSubtype, + lldpRemManAddrIfId, + lldpRemManAddrOID, + lldpRemUnknownTLVInfo, + lldpRemOrgDefInfo + } + STATUS current + DESCRIPTION + "The collection of objects which are used to represent + LLDP Remote Systems Information. The objects represent the + information associated with the basic TLV set. Please note + that even the agent doesn't implement some of the optional + TLVs, it shall recognize all the optional TLV information + that the remote system may advertise. + + This group is mandatory for agents which implement the LLDP + and have the capability of receiving LLDP frames." + ::= { lldpGroups 7 } + +lldpNotificationsGroup NOTIFICATION-GROUP + NOTIFICATIONS { + lldpRemTablesChange + } + STATUS current + DESCRIPTION + "The collection of notifications used to indicate LLDP MIB + data consistency and general status information. + + This group is mandatory for agents which implement the LLDP + and have the capability of receiving LLDP frames." + ::= { lldpGroups 8 } + +END \ No newline at end of file diff --git a/mibs/MGMD-STD-MIB.txt b/mibs/MGMD-STD-MIB.txt new file mode 100644 index 00000000..8c131998 --- /dev/null +++ b/mibs/MGMD-STD-MIB.txt @@ -0,0 +1,1656 @@ +MGMD-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, mib-2, Counter32, Gauge32, + Unsigned32, TimeTicks FROM SNMPv2-SMI + InetAddress, InetAddressType FROM INET-ADDRESS-MIB + RowStatus FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF + InterfaceIndexOrZero, + InterfaceIndex FROM IF-MIB; + +mgmdStdMIB MODULE-IDENTITY + LAST-UPDATED "200903300000Z" -- March 30, 2009 + ORGANIZATION "INTERNET ENGINEERING TASK FORCE MULTICAST and + ANYCAST GROUP MEMBERSHIP Working + Group. + www: http://www.ietf.org/html.charters/magma-charter.html + EMail: magma@ietf.org" + CONTACT-INFO + "Julian Chesterfield + University of Cambridge, + Computer Laboratory, + 15 JJ Thompson Avenue, + Cambridge, + CB3 0FD + UK + + EMail: julian.chesterfield@cl.cam.ac.uk" + + DESCRIPTION + "The MIB module for MGMD management. + A new version of MGMD combining RFC 2933 and RFC 3019. + Includes IGMPv3 and MLDv2 source filtering changes. + + Copyright (c) 2009 IETF Trust and the persons + identified as authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the + following conditions are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + + - Neither the name of Internet Society, IETF or IETF Trust, + nor the names of specific contributors, may be used to endorse + or promote products derived from this software without + specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + This version of this MIB module is part of RFC 5519; + see the RFC itself for full legal notices." + + REVISION "200903300000Z" -- March 30, 2009 + DESCRIPTION + "This MIB obsoletes both RFC 2933 and RFC 3019." + + ::= { mib-2 185 } + + +mgmdMIBObjects OBJECT IDENTIFIER ::= { mgmdStdMIB 1 } + +-- +-- The MGMD Host Interface Table +-- + +mgmdHostInterfaceTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdHostInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interfaces on which + IGMP or MLD is enabled." + + ::= { mgmdMIBObjects 1 } + +mgmdHostInterfaceEntry OBJECT-TYPE + SYNTAX MgmdHostInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) representing an interface on + which IGMP or MLD is enabled." + INDEX { mgmdHostInterfaceIfIndex, + mgmdHostInterfaceQuerierType } + + ::= { mgmdHostInterfaceTable 1 } + +MgmdHostInterfaceEntry ::= SEQUENCE { + mgmdHostInterfaceIfIndex InterfaceIndex, + mgmdHostInterfaceQuerierType InetAddressType, + mgmdHostInterfaceQuerier InetAddress, + mgmdHostInterfaceStatus RowStatus, + mgmdHostInterfaceVersion Unsigned32, + mgmdHostInterfaceVersion1QuerierTimer TimeTicks, + mgmdHostInterfaceVersion2QuerierTimer TimeTicks, + mgmdHostInterfaceVersion3Robustness Unsigned32 +} + +mgmdHostInterfaceIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex value of the interface for which IGMP or MLD is + enabled. The table is indexed by the ifIndex value and the + InetAddressType to allow for interfaces that may be + configured in both IPv4 and IPv6 modes." + + ::= { mgmdHostInterfaceEntry 1 } + +mgmdHostInterfaceQuerierType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this interface. This entry along with + the ifIndex value acts as an index to the mgmdHostInterface + table. A physical interface may be configured in multiple + modes concurrently, e.g., in IPv4 and IPv6 modes connected + to the same interface; however, the traffic is considered + to be logically separate." + + ::= { mgmdHostInterfaceEntry 2 } + +mgmdHostInterfaceQuerier OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the IGMP or MLD Querier on the IP subnet to + which this interface is attached. The InetAddressType, + e.g., IPv4 or IPv6, is identified by the + mgmdHostInterfaceQuerierType variable in the + mgmdHostInterface table." + + ::= { mgmdHostInterfaceEntry 3 } + +mgmdHostInterfaceStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The activation of a row enables the host side of IGMP or + MLD on the interface. The destruction of a row disables + the host side of IGMP or MLD on the interface." + + ::= { mgmdHostInterfaceEntry 4 } + +mgmdHostInterfaceVersion OBJECT-TYPE + SYNTAX Unsigned32 (1..3) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The maximum version of MGMD that the host can run on + this interface. A value of 1 is only applicable for IPv4, + and indicates that the host only supports IGMPv1 on the + + interface. A value of 2 indicates that the host also + supports IGMPv2 (for IPv4) or MLDv1 (for IPv6). A value of + 3 indicates that the host also supports IGMPv3 (for IPv4) + or MLDv2 (for IPv6)." + DEFVAL { 3 } + + ::= { mgmdHostInterfaceEntry 5 } + +mgmdHostInterfaceVersion1QuerierTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining until the host assumes that there are + no IGMPv1 routers present on the interface. While this is + non-zero, the host will reply to all queries with version 1 + membership reports. This variable applies to IGMPv2 or 3 + hosts that are forced to run in v1 for compatibility with + v1 routers present on the interface. This object may only + be present when the corresponding value of + mgmdHostInterfaceQuerierType is ipv4." + REFERENCE "RFC 2236, Section 4 and RFC 3376, Section 7.2.1" + DEFVAL { 0 } + + ::= { mgmdHostInterfaceEntry 6 } + +mgmdHostInterfaceVersion2QuerierTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining until the host assumes that there are + no MGMDv2 routers present on the interface. While this is + non-zero, the host will reply to all queries with version 1 + or 2 membership reports. This variable applies to MGMDv3 + hosts that are forced to run in v2 for compatibility with + v2 hosts or routers present on the interface." + REFERENCE "RFC 3376, Section 7.2.1 and RFC 3810, Section 8.2.1" + DEFVAL { 0 } + + ::= { mgmdHostInterfaceEntry 7 } + +mgmdHostInterfaceVersion3Robustness OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "The robustness variable utilised by an MGMDv3 host in + sending state-change reports for multicast routers. To + ensure the state-change report is not missed, the host + retransmits the state-change report + [mgmdHostInterfaceVersion3Robustness - 1] times. The + variable must be a non-zero value." + REFERENCE "RFC 3376, Section 8.1 and RFC 3810, Section 9.14.1" + DEFVAL { 2 } + + ::= { mgmdHostInterfaceEntry 8 } + +-- +-- The MGMD Router Interface Table +-- + +mgmdRouterInterfaceTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdRouterInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interfaces on which + IGMP or MLD is enabled." + + ::= { mgmdMIBObjects 2 } + +mgmdRouterInterfaceEntry OBJECT-TYPE + SYNTAX MgmdRouterInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) representing an interface on + which IGMP or MLD is enabled." + INDEX { mgmdRouterInterfaceIfIndex, + mgmdRouterInterfaceQuerierType } + + ::= { mgmdRouterInterfaceTable 1 } + +MgmdRouterInterfaceEntry ::= SEQUENCE { + mgmdRouterInterfaceIfIndex InterfaceIndex, + mgmdRouterInterfaceQuerierType InetAddressType, + mgmdRouterInterfaceQuerier InetAddress, + mgmdRouterInterfaceQueryInterval Unsigned32, + mgmdRouterInterfaceStatus RowStatus, + mgmdRouterInterfaceVersion Unsigned32, + mgmdRouterInterfaceQueryMaxResponseTime Unsigned32, + mgmdRouterInterfaceQuerierUpTime TimeTicks, + mgmdRouterInterfaceQuerierExpiryTime TimeTicks, + + mgmdRouterInterfaceWrongVersionQueries Counter32, + mgmdRouterInterfaceJoins Counter32, + mgmdRouterInterfaceProxyIfIndex InterfaceIndexOrZero, + mgmdRouterInterfaceGroups Gauge32, + mgmdRouterInterfaceRobustness Unsigned32, + mgmdRouterInterfaceLastMemberQueryInterval Unsigned32, + mgmdRouterInterfaceLastMemberQueryCount Unsigned32, + mgmdRouterInterfaceStartupQueryCount Unsigned32, + mgmdRouterInterfaceStartupQueryInterval Unsigned32 +} + +mgmdRouterInterfaceIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex value of the interface for which IGMP or MLD + is enabled. The table is indexed by the ifIndex value and + the InetAddressType to allow for interfaces that may be + configured in both IPv4 and IPv6 modes." + + ::= { mgmdRouterInterfaceEntry 1 } + +mgmdRouterInterfaceQuerierType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this interface. This entry along with + the ifIndex value acts as the index to the + mgmdRouterInterface table. A physical interface may be + configured in multiple modes concurrently, e.g., in IPv4 + and IPv6 modes connected to the same interface; however, + the traffic is considered to be logically separate." + + ::= { mgmdRouterInterfaceEntry 2 } + +mgmdRouterInterfaceQuerier OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the IGMP or MLD Querier on the IP subnet to + which this interface is attached. The InetAddressType, + e.g., IPv4 or IPv6, is identified by the + mgmdRouterInterfaceQuerierType variable in the + mgmdRouterInterface table." + + + ::= { mgmdRouterInterfaceEntry 3 } + +mgmdRouterInterfaceQueryInterval OBJECT-TYPE + SYNTAX Unsigned32 (1..31744) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The frequency at which IGMP or MLD Host-Query packets are + transmitted on this interface." + DEFVAL { 125 } + + ::= { mgmdRouterInterfaceEntry 4 } + +mgmdRouterInterfaceStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The activation of a row enables the router side of IGMP or + MLD on the interface. The destruction of a row disables + the router side of IGMP or MLD on the interface." + + ::= { mgmdRouterInterfaceEntry 5 } + +mgmdRouterInterfaceVersion OBJECT-TYPE + SYNTAX Unsigned32 (1..3) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The version of MGMD that is running on this interface. + Value 1 applies to IGMPv1 routers only. Value 2 applies + to IGMPv2 and MLDv1 routers, and value 3 applies to IGMPv3 + and MLDv2 routers. + + This object can be used to configure a router capable of + running either version. For IGMP and MLD to function + correctly, all routers on a LAN must be configured to run + the same version on that LAN." + DEFVAL { 3 } + + ::= { mgmdRouterInterfaceEntry 6 } + +mgmdRouterInterfaceQueryMaxResponseTime OBJECT-TYPE + SYNTAX Unsigned32 (0..31744) + UNITS "tenths of seconds" + MAX-ACCESS read-create + STATUS current + + DESCRIPTION + "The maximum query response interval advertised in MGMDv2 + or IGMPv3 queries on this interface." + REFERENCE "RFC 3810, Section 9.3" + DEFVAL { 100 } + + ::= { mgmdRouterInterfaceEntry 7 } + +mgmdRouterInterfaceQuerierUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since mgmdRouterInterfaceQuerier was last + changed." + + ::= { mgmdRouterInterfaceEntry 8 } + +mgmdRouterInterfaceQuerierExpiryTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The amount of time remaining before the Other Querier + Present Timer expires. If the local system is the querier, + the value of this object is zero." + + ::= { mgmdRouterInterfaceEntry 9 } + +mgmdRouterInterfaceWrongVersionQueries OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of general queries received whose IGMP or MLD + version does not match the equivalent + mgmdRouterInterfaceVersion, over the lifetime of the row + entry. Both IGMP and MLD require that all routers on a LAN + be configured to run the same version. Thus, if any general + queries are received with the wrong version, this indicates + a configuration error." + + ::= { mgmdRouterInterfaceEntry 10 } + +mgmdRouterInterfaceJoins OBJECT-TYPE + SYNTAX Counter32 + + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "The number of times a group membership has been added on + this interface, that is, the number of times an entry for + this interface has been added to the Cache Table. This + object can give an indication of the amount of activity + between samples over time." + + ::= { mgmdRouterInterfaceEntry 11 } + +mgmdRouterInterfaceProxyIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Some devices implement a form of IGMP or MLD proxying + whereby memberships learned on the interface represented by + this row cause Host Membership Reports to be sent on the + interface whose ifIndex value is given by this object. + Such a device would implement the mgmdV2RouterBaseMIBGroup + only on its router interfaces (those interfaces with + non-zero mgmdRouterInterfaceProxyIfIndex). Typically, the + value of this object is 0, indicating that no proxying is + being done." + DEFVAL { 0 } + + ::= { mgmdRouterInterfaceEntry 12 } + +mgmdRouterInterfaceGroups OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current number of entries for this interface in the + mgmdRouterCacheTable." + + ::= { mgmdRouterInterfaceEntry 13 } + +mgmdRouterInterfaceRobustness OBJECT-TYPE + SYNTAX Unsigned32 (1..255) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Robustness Variable allows tuning for the expected + packet loss on a subnet. If a subnet is expected to be + lossy, the Robustness Variable may be increased. IGMP and + MLD are robust to (Robustness Variable-1) packet losses." + DEFVAL { 2 } + + ::= { mgmdRouterInterfaceEntry 14 } + +mgmdRouterInterfaceLastMemberQueryInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..31744) + UNITS "tenths of seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Last Member Query Interval is the Max Query Response + Interval inserted into group-specific queries sent in + response to leave group messages, and is also the amount + of time between group-specific query messages. This value + may be tuned to modify the leave latency of the network. A + reduced value results in reduced time to detect the loss of + the last member of a group. The value of this object is + irrelevant if mgmdRouterInterfaceVersion is 1." + DEFVAL { 10 } + + ::= { mgmdRouterInterfaceEntry 15 } + +mgmdRouterInterfaceLastMemberQueryCount OBJECT-TYPE + SYNTAX Unsigned32 (1..255) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Represents the number of group-specific and group-and- + source-specific queries sent by the router before it assumes + there are no local members." + + ::= { mgmdRouterInterfaceEntry 16 } + +mgmdRouterInterfaceStartupQueryCount OBJECT-TYPE + SYNTAX Unsigned32 (1..255) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Represents the number of Queries sent out on startup, + separated by the Startup Query Interval." + + ::= { mgmdRouterInterfaceEntry 17 } + +mgmdRouterInterfaceStartupQueryInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..31744) + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "This variable represents the interval between General + Queries sent by a Querier on startup." + + ::= { mgmdRouterInterfaceEntry 18 } + +-- +-- The MGMD Host Cache Table +-- + +mgmdHostCacheTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdHostCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the IP multicast groups for + which the host is a member on a particular interface." + + ::= { mgmdMIBObjects 3 } + +mgmdHostCacheEntry OBJECT-TYPE + SYNTAX MgmdHostCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the mgmdHostCacheTable." + INDEX { mgmdHostCacheAddressType, mgmdHostCacheAddress, + mgmdHostCacheIfIndex } + + ::= { mgmdHostCacheTable 1 } + +MgmdHostCacheEntry ::= SEQUENCE { + mgmdHostCacheAddressType InetAddressType, + mgmdHostCacheAddress InetAddress , + mgmdHostCacheIfIndex InterfaceIndex, + mgmdHostCacheUpTime TimeTicks, + mgmdHostCacheLastReporter InetAddress, + mgmdHostCacheSourceFilterMode INTEGER +} + +mgmdHostCacheAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the mgmdHostCacheTable entry. This + value applies to both the mgmdHostCacheAddress and the + mgmdHostCacheLastReporter entries." + + ::= { mgmdHostCacheEntry 1 } + +mgmdHostCacheAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information. The InetAddressType, e.g., IPv4 or + IPv6, is identified by the mgmdHostCacheAddressType variable + in the mgmdHostCache table." + + ::= { mgmdHostCacheEntry 2 } + +mgmdHostCacheIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information + for an IP multicast group address." + + ::= { mgmdHostCacheEntry 3 } + +mgmdHostCacheUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time elapsed since this entry was created." + + ::= { mgmdHostCacheEntry 4 } + +mgmdHostCacheLastReporter OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the source of the last membership report + received for this IP multicast group address on this + interface. If no membership report has been received, this + object has a value of 0. The InetAddressType, e.g., IPv4 or + IPv6, is identified by the mgmdHostCacheAddressType variable + in the mgmdHostCache table." + + ::= { mgmdHostCacheEntry 5 } + +mgmdHostCacheSourceFilterMode OBJECT-TYPE + + SYNTAX INTEGER {include (1), + exclude (2) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state in which the interface is currently set. The + value indicates the relevance of the corresponding source + list entries in the mgmdHostSecListTable for MGMDv3 + interfaces." + + ::= { mgmdHostCacheEntry 6 } + +-- +-- The MGMD Router Cache Table +-- + +mgmdRouterCacheTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdRouterCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the IP multicast groups for + which there are members on a particular router interface." + + ::= { mgmdMIBObjects 4 } + +mgmdRouterCacheEntry OBJECT-TYPE + SYNTAX MgmdRouterCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the mgmdRouterCacheTable." + + INDEX { mgmdRouterCacheAddressType, mgmdRouterCacheAddress, + mgmdRouterCacheIfIndex } + + ::= { mgmdRouterCacheTable 1 } + +MgmdRouterCacheEntry ::= SEQUENCE { + mgmdRouterCacheAddressType InetAddressType, + mgmdRouterCacheAddress InetAddress, + mgmdRouterCacheIfIndex InterfaceIndex, + mgmdRouterCacheLastReporter InetAddress, + mgmdRouterCacheUpTime TimeTicks, + mgmdRouterCacheExpiryTime TimeTicks, + mgmdRouterCacheExcludeModeExpiryTimer + TimeTicks, + mgmdRouterCacheVersion1HostTimer TimeTicks, + + mgmdRouterCacheVersion2HostTimer TimeTicks, + mgmdRouterCacheSourceFilterMode INTEGER +} + +mgmdRouterCacheAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the mgmdRouterCacheTable entry. This + value applies to both the mgmdRouterCacheAddress and the + mgmdRouterCacheLastReporter entries." + + ::= { mgmdRouterCacheEntry 1 } + +mgmdRouterCacheAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information. The InetAddressType, e.g., IPv4 or + IPv6, is identified by the mgmdRouterCacheAddressType + variable in the mgmdRouterCache table." + + ::= { mgmdRouterCacheEntry 2 } + +mgmdRouterCacheIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information + for an IP multicast group address." + + ::= { mgmdRouterCacheEntry 3 } + +mgmdRouterCacheLastReporter OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the source of the last membership report + received for this IP multicast group address on this + interface. If no membership report has been received, this + object has the value 0. The InetAddressType, e.g., IPv4 or + IPv6, is identified by the mgmdRouterCacheAddressType + variable in the mgmdRouterCache table." + + ::= { mgmdRouterCacheEntry 4 } + +mgmdRouterCacheUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time elapsed since this entry was created." + + ::= { mgmdRouterCacheEntry 5 } + +mgmdRouterCacheExpiryTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the time remaining before the Group + Membership Interval state expires. The value must always be + greater than or equal to 1." + + ::= { mgmdRouterCacheEntry 6 } + +mgmdRouterCacheExcludeModeExpiryTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value is applicable only to MGMDv3-compatible nodes + and represents the time remaining before the interface + EXCLUDE state expires and the interface state transitions + to INCLUDE mode. This value can never be greater than + mgmdRouterCacheExpiryTime." + + ::= { mgmdRouterCacheEntry 7 } + +mgmdRouterCacheVersion1HostTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining until the local router will assume that + there are no longer any MGMD version 1 members on the IP + subnet attached to this interface. This entry only applies + to IGMPv1 hosts, and is not implemented for MLD. Upon + hearing any MGMDv1 Membership Report (IGMPv1 only), this + value is reset to the group membership timer. While this + + + + time remaining is non-zero, the local router ignores any + MGMDv2 Leave messages (IGMPv2 only) for this group that it + receives on this interface." + + ::= { mgmdRouterCacheEntry 8 } + +mgmdRouterCacheVersion2HostTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining until the local router will assume that + there are no longer any MGMD version 2 members on the IP + subnet attached to this interface. This entry applies to + both IGMP and MLD hosts. Upon hearing any MGMDv2 Membership + Report, this value is reset to the group membership timer. + Assuming no MGMDv1 hosts have been detected, the local + router does not ignore any MGMDv2 Leave messages for this + group that it receives on this interface." + + ::= { mgmdRouterCacheEntry 9 } + +mgmdRouterCacheSourceFilterMode OBJECT-TYPE + SYNTAX INTEGER {include (1), + exclude (2) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current cache state, applicable to MGMDv3-compatible + nodes. The value indicates whether the state is INCLUDE or + EXCLUDE." + + ::= { mgmdRouterCacheEntry 10 } + +-- +-- The MGMD Inverse Host interface/cache lookup Table +-- + +mgmdInverseHostCacheTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdInverseHostCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interfaces that are + members of a particular group. This is an inverse lookup + table for entries in the mgmdHostCacheTable." + + ::= { mgmdMIBObjects 5 } + +mgmdInverseHostCacheEntry OBJECT-TYPE + SYNTAX MgmdInverseHostCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the + mgmdInverseHostCacheTable." + INDEX { mgmdInverseHostCacheIfIndex, + mgmdInverseHostCacheAddressType, + mgmdInverseHostCacheAddress} + + ::= { mgmdInverseHostCacheTable 1 } + +MgmdInverseHostCacheEntry ::= SEQUENCE { + mgmdInverseHostCacheIfIndex InterfaceIndex, + mgmdInverseHostCacheAddressType InetAddressType, + mgmdInverseHostCacheAddress InetAddress +} + +mgmdInverseHostCacheIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information." + + ::= { mgmdInverseHostCacheEntry 1 } + +mgmdInverseHostCacheAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the mgmdInverseHostCacheTable entry." + + ::= { mgmdInverseHostCacheEntry 2 } + +mgmdInverseHostCacheAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information about an interface. The + InetAddressType, e.g., IPv4 or IPv6, is identified by the + mgmdInverseHostCacheAddressType variable in the + mgmdInverseHostCache table." + + + ::= { mgmdInverseHostCacheEntry 3 } + +-- +-- The MGMD Inverse Router interface/cache lookup Table +-- + +mgmdInverseRouterCacheTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdInverseRouterCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interfaces that + are members of a particular group. This is an inverse + lookup table for entries in the mgmdRouterCacheTable." + + ::= { mgmdMIBObjects 6 } + +mgmdInverseRouterCacheEntry OBJECT-TYPE + SYNTAX MgmdInverseRouterCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the + mgmdInverseRouterCacheTable." + INDEX { mgmdInverseRouterCacheIfIndex, + mgmdInverseRouterCacheAddressType, + mgmdInverseRouterCacheAddress } + + ::= { mgmdInverseRouterCacheTable 1 } + +MgmdInverseRouterCacheEntry ::= SEQUENCE { + mgmdInverseRouterCacheIfIndex InterfaceIndex, + mgmdInverseRouterCacheAddressType InetAddressType, + mgmdInverseRouterCacheAddress InetAddress +} + +mgmdInverseRouterCacheIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information + for an IP multicast group address." + + ::= { mgmdInverseRouterCacheEntry 1 } + +mgmdInverseRouterCacheAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the mgmdInverseRouterCacheTable entry." + + ::= { mgmdInverseRouterCacheEntry 2 } + +mgmdInverseRouterCacheAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information. The InetAddressType, e.g., IPv4 or + IPv6, is identified by the mgmdInverseRouterCacheAddressType + variable in the mgmdInverseRouterCache table." + + ::= { mgmdInverseRouterCacheEntry 3 } + +-- +-- The MGMD Host Source list Table +-- + +mgmdHostSrcListTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdHostSrcListEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the Source List entries + corresponding to each interface and multicast group pair + on a host." + + ::= { mgmdMIBObjects 7 } + +mgmdHostSrcListEntry OBJECT-TYPE + SYNTAX MgmdHostSrcListEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the mgmdHostSrcListTable." + INDEX { mgmdHostSrcListAddressType, mgmdHostSrcListAddress, + mgmdHostSrcListIfIndex, mgmdHostSrcListHostAddress } + + ::= { mgmdHostSrcListTable 1 } + +MgmdHostSrcListEntry ::= SEQUENCE { + mgmdHostSrcListAddressType InetAddressType, + mgmdHostSrcListAddress InetAddress, + + mgmdHostSrcListIfIndex InterfaceIndex, + mgmdHostSrcListHostAddress InetAddress, + mgmdHostSrcListExpire TimeTicks +} + +mgmdHostSrcListAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the InetAddress variables in this + table. This value applies to the mgmdHostSrcListHostAddress + and mgmdHostSrcListAddress entries." + + ::= { mgmdHostSrcListEntry 1 } + +mgmdHostSrcListAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information." + + ::= { mgmdHostSrcListEntry 2 } + +mgmdHostSrcListIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information + for an IP multicast group address." + + ::= { mgmdHostSrcListEntry 3 } + +mgmdHostSrcListHostAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The host address to which this entry corresponds. The + mgmdHostCacheSourceFilterMode value for this group address + and interface indicates whether this host address is + included or excluded." + + ::= { mgmdHostSrcListEntry 4 } + + +mgmdHostSrcListExpire OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value indicates the relevance of the SrcList entry, + whereby a non-zero value indicates this is an INCLUDE state + value, and a zero value indicates this to be an EXCLUDE + state value." + + ::= { mgmdHostSrcListEntry 5 } + +-- +-- The MGMD Router Source list Table +-- + +mgmdRouterSrcListTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdRouterSrcListEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the Source List entries + corresponding to each interface and multicast group pair on + a Router." + + ::= { mgmdMIBObjects 8 } + +mgmdRouterSrcListEntry OBJECT-TYPE + SYNTAX MgmdRouterSrcListEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the mgmdRouterSrcListTable." + INDEX { mgmdRouterSrcListAddressType, + mgmdRouterSrcListAddress, + mgmdRouterSrcListIfIndex, + mgmdRouterSrcListHostAddress } + + ::= { mgmdRouterSrcListTable 1 } + +MgmdRouterSrcListEntry ::= SEQUENCE { + mgmdRouterSrcListAddressType InetAddressType, + mgmdRouterSrcListAddress InetAddress, + mgmdRouterSrcListIfIndex InterfaceIndex, + mgmdRouterSrcListHostAddress InetAddress, + mgmdRouterSrcListExpire TimeTicks +} + + +mgmdRouterSrcListAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the InetAddress variables in this + table. This value applies to the + mgmdRouterSrcListHostAddress and mgmdRouterSrcListAddress + entries." + + ::= { mgmdRouterSrcListEntry 1 } + +mgmdRouterSrcListAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information." + + ::= { mgmdRouterSrcListEntry 2 } + +mgmdRouterSrcListIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information + for an IP multicast group address." + + ::= { mgmdRouterSrcListEntry 3 } + +mgmdRouterSrcListHostAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The host address to which this entry corresponds. The + mgmdRouterCacheSourceFilterMode value for this group address + and interface indicates whether this host address is + included or excluded." + + ::= { mgmdRouterSrcListEntry 4 } + +mgmdRouterSrcListExpire OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + + DESCRIPTION + "This value indicates the relevance of the SrcList entry, + whereby a non-zero value indicates this is an INCLUDE state + value, and a zero value indicates this to be an EXCLUDE + state value." + + ::= { mgmdRouterSrcListEntry 5 } + +-- conformance information + +mgmdMIBConformance OBJECT IDENTIFIER ::= { mgmdStdMIB 2 } +mgmdMIBCompliance OBJECT IDENTIFIER ::= { mgmdMIBConformance 1 } +mgmdMIBGroups OBJECT IDENTIFIER ::= { mgmdMIBConformance 2 } + +-- Protocol Version Conformance + +-- Read Compliance statement for IGMPv1 Hosts +-- IGMPv1 only supports the IPv4 Address Family + +mgmdIgmpV1HostReadMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-only compliance statement for hosts running IGMPv1 + [RFC1112] and implementing the MGMD MIB. IGMPv1 hosts must + support the IPv4 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdHostBaseMIBGroup } + + OBJECT mgmdHostInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + OBJECT mgmdHostInterfaceVersion + SYNTAX Unsigned32 (1) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. Only version 1 needs to be + supported." + + GROUP mgmdHostExtendedMIBGroup + DESCRIPTION + "Supporting this group can be especially useful in + an environment with a router that does not support the + MGMD MIB." + + + ::= { mgmdMIBCompliance 1 } + +-- Read Compliance statement for IGMPv1 Routers +-- IGMPv1 only supports the IPv4 Address Family + +mgmdIgmpV1RouterReadMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-only compliance statement for routers running + IGMPv1 [RFC1112] and implementing the MGMD MIB. IGMPv1 + routers only support the IPv4 address type. + + Non-accessible index objects that only need IPv4 + support are: + + OBJECT mgmdRouterCacheAddressType + SYNTAX InetAddressType { ipv4(1) } + + OBJECT mgmdRouterCacheAddress + SYNTAX InetAddress (SIZE(4)) + + OBJECT mgmdRouterInterfaceQuerierType + SYNTAX InetAddressType { ipv4(1) } + + OBJECT mgmdInverseRouterCacheAddressType + SYNTAX InetAddressType { ipv4(1) } + " + + MODULE -- this module + MANDATORY-GROUPS { mgmdRouterBaseMIBGroup } + + OBJECT mgmdRouterCacheLastReporter + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "IGMPv1 routers only support IPv4 addresses." + + OBJECT mgmdRouterInterfaceQuerier + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "IGMPv1 routers only support IPv4 addresses." + + OBJECT mgmdInverseRouterCacheAddress + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "IGMPv1 routers only support IPv4 addresses." + + OBJECT mgmdRouterInterfaceVersion + SYNTAX Unsigned32 (1) + + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. Only version 1 needs to + be supported." + + OBJECT mgmdRouterInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + OBJECT mgmdRouterInterfaceQueryInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + ::= { mgmdMIBCompliance 2 } + +-- Write Compliance statement for IGMPv1 Routers +-- IGMPv1 only supports the IPv4 Address Family + +mgmdIgmpV1RouterWriteMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-create compliance statement for routers running + IGMPv1 [RFC1112] and implementing the MGMD MIB. IGMPv1 + routers only support the IPv4 address type. + + Non-accessible index objects that only need IPv4 + support are: + + OBJECT mgmdRouterCacheAddressType + SYNTAX InetAddressType { ipv4(1) } + + OBJECT mgmdRouterCacheAddress + SYNTAX InetAddress (SIZE(4)) + + OBJECT mgmdRouterInterfaceQuerierType + SYNTAX InetAddressType { ipv4(1) } + + OBJECT mgmdInverseRouterCacheAddressType + SYNTAX InetAddressType { ipv4(1) } + " + MODULE -- this module + MANDATORY-GROUPS { mgmdRouterBaseMIBGroup } + + + + OBJECT mgmdRouterCacheLastReporter + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "Only IPv4 addresses needed for IGMPv1 router support." + + OBJECT mgmdRouterInterfaceQuerier + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "Only IPv4 addresses needed for IGMPv1 router support." + + OBJECT mgmdInverseRouterCacheAddress + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "Only IPv4 addresses needed for IGMPv1 router support." + + OBJECT mgmdRouterInterfaceVersion + SYNTAX Unsigned32 (1) + DESCRIPTION + "Write access is not required. Only version 1 needs to + be supported." + + ::= { mgmdMIBCompliance 3 } + +-- Read Compliance statement for IGMPv2 and MLDv1 Hosts +-- IGMPv2 only supports the IPv4 Address Family +-- MLDv1 only supports the IPv6 Address Family + +mgmdIgmpV2MldV1HostReadMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-only compliance statement for hosts running IGMPv2 + [RFC2236] or MLDv1 [RFC2710] and implementing the MGMD + MIB. IGMPv2 hosts only support the IPv4 address type and + MLDv1 hosts only support the IPv6 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdHostBaseMIBGroup, + mgmdV2HostMIBGroup + } + + OBJECT mgmdHostInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + OBJECT mgmdHostInterfaceVersion + SYNTAX Unsigned32 (1..2) + + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. Only versions 1 and 2 need + to be supported." + + GROUP mgmdHostExtendedMIBGroup + DESCRIPTION + "Supporting this group can be especially useful in an + environment with a router that does not support the + MGMD MIB." + + ::= { mgmdMIBCompliance 4 } + +-- Write Compliance statement for IGMPv2 and MLDv1 Hosts +-- IGMPv2 only supports the IPv4 Address Family +-- MLDv1 only supports the IPv6 Address Family + +mgmdIgmpV2MldV1HostWriteMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-create compliance statement for hosts running + IGMPv2 [RFC2236] or MLDv1 [RFC2710] and implementing + the MGMD MIB. IGMPv2 hosts only support the IPv4 address + type and MLDv1 hosts only support the IPv6 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdHostBaseMIBGroup, + mgmdV2HostMIBGroup } + OBJECT mgmdHostInterfaceVersion + SYNTAX Unsigned32 (1..2) + DESCRIPTION + "Only versions 1 and 2 need to be supported." + + ::= { mgmdMIBCompliance 5 } + +-- Read Compliance statement for IGMPv2 and MLDv1 Routers +-- IGMPv2 only supports the IPv4 Address Family +-- MLDv1 only supports the IPv6 Address Family + +mgmdIgmpV2MldV1RouterReadMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-only compliance statement for routers running + IGMPv2 [RFC2236] or MLDv1 [RFC2710] and implementing + the MGMD MIB. IGMPv2 routers only support the IPv4 + address type and MLDv1 routers only support the IPv6 + address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdRouterBaseMIBGroup, + + mgmdV2RouterBaseMIBGroup + } + + OBJECT mgmdRouterInterfaceLastMemberQueryInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceRobustness + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceQueryMaxResponseTime + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceVersion + SYNTAX Unsigned32 (1..2) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. Only versions 1 and 2 + need to be supported." + + OBJECT mgmdRouterInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + OBJECT mgmdRouterInterfaceQueryInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP mgmdV2ProxyMIBGroup + DESCRIPTION + "Write access is not required." + + ::= { mgmdMIBCompliance 6 } + +-- Write Compliance statement for IGMPv2, IGMPv3, MLDv1, and MLDv2 +-- Routers +-- IGMPv2 and IGMPv3 only support the IPv4 Address Family +-- MLDv1 and MLDv2 only support the IPv6 Address Family + + +mgmdIgmpV2V3MldV1V2RouterWriteMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-create compliance statement for routers running + IGMPv2 [RFC2236], IGMPv3 [RFC3376], MLDv1 [RFC2710], or + MLDv2 [RFC3810] and implementing the MGMD MIB. IGMPv2 and + IGMPv3 routers only support the IPv4 address type, while + MLDv1 and MLDv2 routers only support the IPv6 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdRouterBaseMIBGroup, + mgmdV2RouterBaseMIBGroup + } + + GROUP mgmdV2ProxyMIBGroup + DESCRIPTION + "Read-create access is required." + + ::= { mgmdMIBCompliance 7 } + +-- Read Compliance statement for IGMPv2, IGMPv3, MLDv1, and MLDv2 Hosts +-- IGMPv2 and IGMPv3 only support the IPv4 Address Family +-- MLDv1 and MLDv2 only support the IPv6 Address Family + +mgmdIgmpV3MldV2HostReadMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for hosts running IGMPv3 + [RFC3376] or MLDv2 [RFC3810] and implementing the + MGMD MIB. IGMPv3 hosts only support the IPv4 address + type and MLDv2 hosts only support the IPv6 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdHostBaseMIBGroup, + mgmdV2HostMIBGroup, + mgmdV3HostMIBGroup + } + + OBJECT mgmdHostInterfaceVersion + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdHostInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + + OBJECT mgmdHostInterfaceVersion3Robustness + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP mgmdHostExtendedMIBGroup + DESCRIPTION + "Supporting this group can be especially useful in + an environment with a router that does not support the + MGMD MIB." + + ::= { mgmdMIBCompliance 8 } + +-- Write Compliance statement for IGMPv2, IGMPv3, MLDv1, and MLDv2 Hosts +-- IGMPv2 and IGMPv3 only support the IPv4 Address Family +-- MLDv1 and MLDv2 only support the IPv6 Address Family + +mgmdIgmpV3MldV2HostWriteMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for hosts running IGMPv3 + [RFC3376] or MLDv2 [RFC3810] and implementing the + MGMD MIB. IGMPv3 hosts only support the IPv4 address + type and MLDv2 hosts only support the IPv6 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdHostBaseMIBGroup, + mgmdV2HostMIBGroup, + + mgmdV3HostMIBGroup + } + + GROUP mgmdHostExtendedMIBGroup + DESCRIPTION + "Supporting this group can be especially useful in + an environment with a router that does not support the + MGMD MIB." + + ::= { mgmdMIBCompliance 9 } + +-- Read Compliance statement for IGMPv2, IGMPv3, MLDv1, and MLDv2 +-- Routers +-- IGMPv2 and IGMPv3 only support the IPv4 Address Family +-- MLDv1 and MLDv2 only support the IPv6 Address Family + +mgmdIgmpV3MldV2RouterReadMIBCompliance MODULE-COMPLIANCE + STATUS current + + + + DESCRIPTION + "A read-only compliance statement for routers running + IGMPv3 [RFC3376] or MLDv2 [RFC3810] and implementing + the MGMD MIB. IGMPv3 routers only support the IPv4 + address type and MLDv2 routers only support the IPv6 + address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdRouterBaseMIBGroup, + mgmdV2RouterBaseMIBGroup, + mgmdV3RouterMIBGroup + } + + OBJECT mgmdRouterInterfaceLastMemberQueryInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceRobustness + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceQueryMaxResponseTime + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceVersion + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + OBJECT mgmdRouterInterfaceQueryInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP mgmdV2ProxyMIBGroup + DESCRIPTION + "Write access is not required." + + + ::= { mgmdMIBCompliance 10 } + +-- units of conformance + +mgmdHostBaseMIBGroup OBJECT-GROUP + OBJECTS { mgmdHostInterfaceStatus, + mgmdHostInterfaceVersion + } + STATUS current + DESCRIPTION + "The basic collection of objects providing management of + MGMD version 1, 2, or 3 for hosts." + + ::= { mgmdMIBGroups 1 } + +mgmdRouterBaseMIBGroup OBJECT-GROUP + OBJECTS { mgmdRouterInterfaceStatus, + mgmdRouterInterfaceQueryInterval, + mgmdRouterCacheUpTime, mgmdRouterCacheExpiryTime, + mgmdRouterInterfaceVersion, + mgmdRouterInterfaceJoins, mgmdRouterInterfaceGroups, + mgmdRouterCacheLastReporter, + mgmdRouterInterfaceQuerierUpTime, + mgmdRouterInterfaceQuerierExpiryTime, + mgmdRouterInterfaceQuerier, + mgmdInverseRouterCacheAddress + } + STATUS current + DESCRIPTION + "The basic collection of objects providing management of + MGMD version 1, 2, or 3 for routers." + + ::= { mgmdMIBGroups 2 } + +mgmdV2HostMIBGroup OBJECT-GROUP + OBJECTS { mgmdHostInterfaceVersion1QuerierTimer + } + STATUS current + DESCRIPTION + "A collection of additional read-only objects for management + of IGMP version 2 in hosts for MGMD version 2 compliance." + + ::= { mgmdMIBGroups 3 } + +mgmdHostExtendedMIBGroup OBJECT-GROUP + OBJECTS { mgmdHostCacheLastReporter, mgmdHostCacheUpTime, + mgmdHostInterfaceQuerier, mgmdInverseHostCacheAddress } + STATUS current + + DESCRIPTION + "A collection of optional objects for MGMD hosts." + + ::= { mgmdMIBGroups 4 } + +mgmdV2RouterBaseMIBGroup OBJECT-GROUP + OBJECTS { mgmdRouterInterfaceWrongVersionQueries, + mgmdRouterInterfaceLastMemberQueryCount, + mgmdRouterInterfaceStartupQueryCount, + mgmdRouterInterfaceStartupQueryInterval, + mgmdRouterCacheVersion1HostTimer, + mgmdRouterInterfaceQueryMaxResponseTime, + mgmdRouterInterfaceRobustness, + mgmdRouterInterfaceLastMemberQueryInterval + } + STATUS current + DESCRIPTION + "A collection of additional read-only objects for + management of MGMD version 2 in routers." + + ::= { mgmdMIBGroups 5 } + +mgmdV2ProxyMIBGroup OBJECT-GROUP + OBJECTS { mgmdRouterInterfaceProxyIfIndex } + STATUS current + DESCRIPTION + "A collection of additional read-create objects for + management of MGMD proxy devices." + + ::= { mgmdMIBGroups 6 } + +mgmdV3HostMIBGroup OBJECT-GROUP + OBJECTS { mgmdHostInterfaceVersion2QuerierTimer, + mgmdHostCacheSourceFilterMode, + mgmdHostInterfaceVersion3Robustness, + mgmdHostSrcListExpire + } + STATUS current + DESCRIPTION + "A collection of additional objects for + management of MGMD version 3 in hosts." + + ::= { mgmdMIBGroups 7 } + +mgmdV3RouterMIBGroup OBJECT-GROUP + OBJECTS { mgmdRouterCacheSourceFilterMode, + mgmdRouterCacheVersion2HostTimer, + mgmdRouterCacheExcludeModeExpiryTimer, + + mgmdRouterSrcListExpire + } + STATUS current + DESCRIPTION + "A collection of additional read-only objects for + management of MGMD version 3 in routers." + + ::= { mgmdMIBGroups 8 } + +END \ No newline at end of file diff --git a/mibs/MPLS-FTN-STD-MIB.txt b/mibs/MPLS-FTN-STD-MIB.txt new file mode 100644 index 00000000..8626f463 --- /dev/null +++ b/mibs/MPLS-FTN-STD-MIB.txt @@ -0,0 +1,1086 @@ +MPLS-FTN-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, Counter64, Integer32 + FROM SNMPv2-SMI -- [RFC2578] + RowStatus, StorageType, RowPointer, + TEXTUAL-CONVENTION, TimeStamp + FROM SNMPv2-TC -- [RFC2579] + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF -- [RFC2580] + InterfaceIndexOrZero, + ifGeneralInformationGroup, ifCounterDiscontinuityGroup + FROM IF-MIB -- [RFC2863] + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB -- [RFC3411] + Dscp + FROM DIFFSERV-DSCP-TC -- [RFC3289] + InetAddressType, InetAddress, InetPortNumber + FROM INET-ADDRESS-MIB -- [RFC3291] + mplsStdMIB + FROM MPLS-TC-STD-MIB -- [RFC3811] + + + + ; + +mplsFTNStdMIB MODULE-IDENTITY + LAST-UPDATED "200406030000Z" -- June 6, 2004 + ORGANIZATION "Multiprotocol Label Switching (MPLS) Working Group" + CONTACT-INFO + " + Thomas D. Nadeau + Postal: Cisco Systems, Inc. + 250 Apollo Drive + Chelmsford, MA 01824 + Tel: +1-978-244-3051 + Email: tnadeau@cisco.com + + Cheenu Srinivasan + Postal: Bloomberg L.P. + 499 Park Avenue + New York, NY 10022 + Tel: +1-212-893-3682 + Email: cheenu@bloomberg.net + + Arun Viswanathan + Postal: Force10 Networks, Inc. + 1440 McCarthy Blvd + Milpitas, CA 95035 + Tel: +1-408-571-3516 + Email: arunv@force10networks.com + + IETF MPLS Working Group email: mpls@uu.net" + + DESCRIPTION + "Copyright (C) The Internet Society (2004). The + initial version of this MIB module was published + in RFC 3814. For full legal notices see the RFC + itself or see: + http://www.ietf.org/copyrights/ianamib.html + + This MIB module contains managed object definitions for + specifying FEC to NHLFE (FTN) mappings and corresponding + performance for MPLS." + + -- Revision history. + + REVISION + "200406030000Z" -- June 3, 2004 + + DESCRIPTION + "Initial version issued as part of RFC 3814." + + + + ::= { mplsStdMIB 8 } + +-- TEXTUAL-CONVENTIONs used in this MIB. +MplsFTNEntryIndex ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Index for an entry in mplsFTNTable." + SYNTAX Unsigned32 (1..4294967295) + +MplsFTNEntryIndexOrZero ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Index for an entry in mplsFTNTable or the special value + zero. The value zero is object-specific and must + therefore be defined as part of the description of any + object which uses this syntax. Examples of the usage + of zero might include situations when none or all + entries in mplsFTNTable need to be referenced." + SYNTAX Unsigned32 (0..4294967295) + +-- Top-Level Components of this MIB. + +mplsFTNNotifications OBJECT IDENTIFIER ::= { mplsFTNStdMIB 0 } +mplsFTNObjects OBJECT IDENTIFIER ::= { mplsFTNStdMIB 1 } +mplsFTNConformance OBJECT IDENTIFIER ::= { mplsFTNStdMIB 2 } + +-- Next free index in mplsFTNTable. +mplsFTNIndexNext OBJECT-TYPE + SYNTAX MplsFTNEntryIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the next available valid value to + be used for mplsFTNIndex when creating entries in the + mplsFTNTable. + + When creating a new conceptual row (configuration + entry) in mplsFTNTable with an SNMP SET operation the + command generator (Network Management Application) must + first issue a management protocol retrieval operation + to obtain the current value of this object. + + If the command responder (agent) does not wish to allow + creation of more entries in mplsFTNTable, possibly + because of resource exhaustion, this object MUST return + a value of 0. + + If a non-zero value is returned the Network Management + + + + Application must determine whether the value is indeed + still unused since two Network Management Applications + may attempt to create a row simultaneously and use the + same value. + + If it is currently unused and the SET succeeds, the + agent MUST change the value of this object to a + currently unused non-zero value (according to an + implementation specific algorithm) or zero (if no + further row creation will be permitted). + + If the value is in use, however, the SET fails and the + Network Management Application must then reread this + object to obtain a new usable value." + ::= { mplsFTNObjects 1 } + +-- Last time an object in mplsFTNTable changed. +mplsFTNTableLastChanged OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the last time an entry was added, deleted or + modified in mplsFTNTable. Management stations should + consult this object to determine if mplsFTNTable + requires their attention. This object is particularly + useful for applications performing a retrieval on + mplsFTNTable to ensure that the table is not modified + during the retrieval operation." + ::= { mplsFTNObjects 2 } + +-- Table of FTN entries. +mplsFTNTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsFTNEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains the currently defined FTN entries. + This table allows FEC to NHLFE mappings to be + specified. Each entry in this table defines a rule to + be applied to incoming packets (on interfaces that the + FTN entry is activated on using mplsFTNMapTable) and an + action to be taken on matching packets + (mplsFTNActionPointer). + + This table supports 6-tuple matching rules based on one + or more of source address range, destination address + range, source port range, destination port range, IPv4 + + + + Protocol field or IPv6 next-header field and the + DiffServ Code Point (DSCP) to be specified. + + The action pointer points either to instance of + mplsXCEntry in MPLS-LSR-STD-MIB when the NHLFE is a non- + TE LSP, or to an instance of mplsTunnelEntry in the + MPLS-TE-STD-MIB when the NHLFE is an originating TE + tunnel." + REFERENCE + "J. Postel, Internet Protocol, RFC 791, STD 5, September + 1981 + + Deering, S., and R. Hinden, Internet Protocol, Version + 6 (IPv6) Specification, RFC 2460, December 1998 + + Nichols, K, Blake, S., Baker, F. and D. Black, + Definition of the Differentiated Services Field (DS + Field) in the IPv4 and IPv6 Headers, RFC 2474, December + 1998 + + Srinivasan, C., A. Viswanathan, and T. Nadeau, MPLS + Label Switch Router Management Information Base, + RFC 3813 + + Srinivasan, C., A. Viswanathan, and T. Nadeau, MPLS + Traffic Engineering Management Information Base, + RFC 3812" + ::= { mplsFTNObjects 3 } + +mplsFTNEntry OBJECT-TYPE + SYNTAX MplsFTNEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry represents one FTN entry which defines a + rule to compare incoming packets with and an action to + be taken on matching packets." + INDEX { mplsFTNIndex } + ::= { mplsFTNTable 1 } + +MplsFTNEntry ::= SEQUENCE { + mplsFTNIndex MplsFTNEntryIndex, + mplsFTNRowStatus RowStatus, + mplsFTNDescr SnmpAdminString, + mplsFTNMask BITS, + mplsFTNAddrType InetAddressType, + mplsFTNSourceAddrMin InetAddress, + mplsFTNSourceAddrMax InetAddress, + + + + mplsFTNDestAddrMin InetAddress, + mplsFTNDestAddrMax InetAddress, + mplsFTNSourcePortMin InetPortNumber, + mplsFTNSourcePortMax InetPortNumber, + mplsFTNDestPortMin InetPortNumber, + mplsFTNDestPortMax InetPortNumber, + mplsFTNProtocol Integer32, + mplsFTNDscp Dscp, + mplsFTNActionType INTEGER, + mplsFTNActionPointer RowPointer, + mplsFTNStorageType StorageType + } + +mplsFTNIndex OBJECT-TYPE + SYNTAX MplsFTNEntryIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This is the unique index for a conceptual row in + mplsFTNTable. + + To create a new conceptual row in mplsFTNTable a + Network Management Application SHOULD retrieve the + current value of mplsFTNIndexNext to determine the next + valid available value of mplsFTNIndex." + ::= { mplsFTNEntry 1 } + +mplsFTNRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Used for controlling the creation and deletion of this + row. All writeable objects in this row may be modified + at any time. If a Network Management Application + attempts to delete a conceptual row by setting this + object to 'destroy' and there are one or more entries + in mplsFTNMapTable pointing to the row (i.e., when + mplsFTNIndex of the conceptual row being deleted is + equal to mplsFTNMapCurrIndex for one or more entries in + mplsFTNMapTable), the agent MUST also destroy the + corresponding entries in mplsFTNMapTable." + ::= { mplsFTNEntry 2 } + +mplsFTNDescr OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "The description of this FTN entry. Since the index for + this table has no particular significance or meaning, + this object should contain some meaningful text that an + operator could use to further distinguish entries in + this table." + ::= { mplsFTNEntry 3 } + +mplsFTNMask OBJECT-TYPE + SYNTAX BITS { + sourceAddr(0), + destAddr(1), + sourcePort(2), + destPort(3), + protocol(4), + dscp(5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This bit map indicates which of the fields described + next, namely source address range, destination address + range, source port range, destination port range, IPv4 + Protocol field or IPv6 next-header field and + Differentiated Services Code Point (DSCP) is active for + this FTN entry. If a particular bit is set to zero then + the corresponding field in the packet MUST be ignored + for comparison purposes." + ::= { mplsFTNEntry 4 } + +mplsFTNAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object determines the type of address contained in + the source and destination address objects + (mplsFTNSourceAddrMin, mplsFTNSourceAddrMax, + mplsFTNDestAddrMin and mplsFTNDestAddrMax) of a + conceptual row. + + This object MUST NOT be set to unknown(0) when + mplsFTNMask has bit positions sourceAddr(0) or + destAddr(1) set to one. + + When both these bit positions of mplsFTNMask are set to + zero the value of mplsFTNAddrType SHOULD be set to + unknown(0) and the corresponding source and destination + + + + address objects SHOULD be set to zero-length strings." + ::= { mplsFTNEntry 5 } + +mplsFTNSourceAddrMin OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The lower end of the source address range. The type of + this object is determined by the corresponding + mplsFTNAddrType object." + ::= { mplsFTNEntry 6 } + +mplsFTNSourceAddrMax OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The upper end of the source address range. The type of + this object is determined by the corresponding + mplsFTNAddrType object." + ::= { mplsFTNEntry 7 } + +mplsFTNDestAddrMin OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The lower end of the destination address range. The + type of this object is determined by the corresponding + mplsFTNAddrType object." + ::= { mplsFTNEntry 8 } + +mplsFTNDestAddrMax OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The higher end of the destination address range. The + type of this object is determined by the corresponding + mplsFTNAddrType object." + ::= { mplsFTNEntry 9 } + +mplsFTNSourcePortMin OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "The lower end of the source port range." + DEFVAL { 0 } + ::= { mplsFTNEntry 10 } + +mplsFTNSourcePortMax OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The higher end of the source port range " + DEFVAL { 65535 } + ::= { mplsFTNEntry 11 } + +mplsFTNDestPortMin OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The lower end of the destination port range." + DEFVAL { 0 } + ::= { mplsFTNEntry 12 } + +mplsFTNDestPortMax OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The higher end of the destination port range." + DEFVAL { 65535 } + ::= { mplsFTNEntry 13 } + +mplsFTNProtocol OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The IP protocol to match against the IPv4 protocol + number or IPv6 Next-Header number in the packet. A + value of 255 means match all. Note that the protocol + number of 255 is reserved by IANA, and Next-Header + number of 0 is used in IPv6." + DEFVAL { 255 } + ::= { mplsFTNEntry 14 } + +mplsFTNDscp OBJECT-TYPE + SYNTAX Dscp + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "The contents of the DSCP field." + REFERENCE + "Nichols, K., Blake, S., Baker, F. and D. Black, + Definition of the Differentiated Services Field (DS + Field) in the IPv4 and IPv6 Headers, RFC 2474, December + 1998." + ::= { mplsFTNEntry 15 } + +mplsFTNActionType OBJECT-TYPE + SYNTAX INTEGER { + redirectLsp(1), -- redirect into LSP + redirectTunnel(2) -- redirect into tunnel + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of action to be taken on packets matching this + FTN entry." + ::= { mplsFTNEntry 16 } + +mplsFTNActionPointer OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If mplsFTNActionType is redirectLsp(1), then this + object MUST contain zeroDotZero or point to a instance + of mplsXCEntry indicating the LSP to redirect matching + packets to. + + If mplsFTNActionType is redirectTunnel(2), then this + object MUST contain zeroDotZero or point to a instance + of mplsTunnelEntry indicating the MPLS TE tunnel to + redirect matching packets to. + + If this object points to a conceptual row instance in a + table consistent with mplsFTNActionType but this + instance does not currently exist then no action will + be taken on packets matching such an FTN entry till + this instance comes into existence. + + If this object contains zeroDotZero then no action will + be taken on packets matching such an FTN entry till it + is populated with a valid pointer consistent with the + value of mplsFTNActionType as explained above." + ::= { mplsFTNEntry 17 } + + + + +mplsFTNStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this FTN entry. Conceptual rows + having the value 'permanent' need not allow write- + access to any columnar objects in the row." + DEFVAL { nonVolatile } + ::= { mplsFTNEntry 18 } + +-- End of mplsFTNTable. + +-- Last time an object in mplsFTNMapTable changed. + +mplsFTNMapTableLastChanged OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the last time an entry was added, deleted or + modified in mplsFTNMapTable. Management stations should + consult this object to determine if the table requires + their attention. This object is particularly useful + for applications performing a retrieval on + mplsFTNMapTable to ensure that the table is not + modified during the retrieval operation." + ::= { mplsFTNObjects 4 } + +-- FTN to interface mapping table. + +mplsFTNMapTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsFTNMapEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains objects which provide the + capability to apply or map FTN rules as defined by + entries in mplsFTNTable to specific interfaces in the + system. FTN rules are compared with incoming packets + in the order in which they are applied on an interface. + + The indexing structure of mplsFTNMapTable is as + follows. + + - mplsFTNMapIndex indicates the interface to which the + rule is being applied. A value of 0 represents the + application of the rule to all interfaces. + + + + + - mplsFTNMapPrevIndex specifies the rule on the + interface prior to the one being applied. A value of + 0 specifies that the rule is being inserted at the + head of the list of rules currently applied to the + interface. + + - mplsFTNMapCurrIndex is the index in mplsFTNTable + corresponding to the rule being applied. + + This indexing structure makes the entries in the table + behave like items in a linked-list. The object + mplsFTNMapPrevIndex in each conceptual row is a pointer + to the previous entry that is applied to a particular + interface. This allows a new entry to be 'inserted' at + an arbitrary position in a list of entries currently + applied to an interface. This object is self- + adjusting, i.e., its value is automatically adjusted by + the agent, if necessary, after an insertion or deletion + operation. + + Using this linked-list structure, one can retrieve FTN + entries in the order of application on a per-interface + basis as follows: + + - To determine the first FTN entry on an interface + with index ifIndex perform a GETNEXT retrieval + operation on mplsFTNMapRowStatus.ifIndex.0.0; the + returned object, if one exists, is (say) + mplsFTNMapRowStatus.ifIndex.0.n (mplsFTNMapRowStatus + is the first accessible columnar object in the + conceptual row). Then the index of the first FTN + entry applied on this interface is n. + + - To determine the FTN entry applied to an interface + after the one indexed by n perform a GETNEXT + retrieval operation on + mplsFTNMapRowStatus.ifIndex.n.0. If such an entry + exists the returned object would be of the form + mplsFTNMapRowStatus.ifIndex.n.m. Then the index of + the next FTN entry applied on this interface is m. + + - If the FTN entry indexed by n is the last entry + applied to the interface with index ifIndex then the + object returned would either be: + + 1.mplsFTNMapRowStatus.ifIndexNext.0.k, where + ifIndexNext is the index of the next interface in + + + + ifTable to which an FTN entry has been applied, in + which case k is the index of the first FTN entry + applied to the interface with index ifIndexNext; + + or: + + 2.mplsFTNMapStorageType.firstIfIndex.0.p, if there + are no more entries in mplsFTNMapTable, where + firstIfIndex is the first entry in ifTable to + which an FTN entry has been mapped. + + Use the above steps to retrieve all the applied FTN + entries on a per-interface basis in application order. + Note that the number of retrieval operations is the + same as the number of applied FTN entries (i.e., the + minimum number of GETNEXT operations needed using any + indexing scheme). + + Agents MUST NOT allow the same FTN entry as specified + by mplsFTNMapCurrIndex to be applied multiple times to + the same interface. + + Agents MUST NOT allow the creation of rows in this + table until the corresponding rows are created in the + mplsFTNTable. + + If a row in mplsFTNTable is destroyed, the agent MUST + destroy the corresponding entries (i.e., ones with a + matching value of mplsFTNCurrIndex) in this table as + well." + ::= { mplsFTNObjects 5 } + +mplsFTNMapEntry OBJECT-TYPE + SYNTAX MplsFTNMapEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each conceptual row represents the application of an + FTN rule at a specific position in the list of FTN + rules applied on an interface. " + INDEX { + mplsFTNMapIndex, + mplsFTNMapPrevIndex, + mplsFTNMapCurrIndex + } + ::= { mplsFTNMapTable 1 } + +MplsFTNMapEntry ::= SEQUENCE { + + + + mplsFTNMapIndex InterfaceIndexOrZero, + mplsFTNMapPrevIndex MplsFTNEntryIndexOrZero, + mplsFTNMapCurrIndex MplsFTNEntryIndex, + mplsFTNMapRowStatus RowStatus, + mplsFTNMapStorageType StorageType + } + +mplsFTNMapIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface index that this FTN entry is being + applied to. A value of zero indicates an entry that is + applied all interfaces. + + Entries mapped to an interface by specifying its (non- + zero) interface index in mplsFTNMapIndex are applied + ahead of entries with mplsFTNMapIndex equal to zero." + ::= { mplsFTNMapEntry 1 } + +mplsFTNMapPrevIndex OBJECT-TYPE + SYNTAX MplsFTNEntryIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index of the previous FTN entry that was applied to + this interface. The special value zero indicates that + this should be the first FTN entry in the list." + ::= { mplsFTNMapEntry 2 } + +mplsFTNMapCurrIndex OBJECT-TYPE + SYNTAX MplsFTNEntryIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Index of the current FTN entry that is being applied to + this interface." + ::= { mplsFTNMapEntry 3 } + +mplsFTNMapRowStatus OBJECT-TYPE + SYNTAX RowStatus { + active(1), + createAndGo(4), + destroy(6) + } + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "Used for controlling the creation and deletion of this + row. + + All writable objects in this row may be modified at any + time. + + If a conceptual row in mplsFTNMapTable points to a + conceptual row in mplsFTNTable which is subsequently + deleted, the corresponding conceptual row in + mplsFTNMapTable MUST also be deleted by the agent." + ::= { mplsFTNMapEntry 4 } + +mplsFTNMapStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this entry. Conceptual rows + having the value 'permanent' need not allow write- + access to any columnar objects in this row." + DEFVAL { nonVolatile } + ::= { mplsFTNMapEntry 5 } + +-- End of mplsFTNMapTable + +-- FTN entry performance table + +mplsFTNPerfTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsFTNPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains performance statistics on FTN + entries on a per-interface basis." + ::= { mplsFTNObjects 6 } + +mplsFTNPerfEntry OBJECT-TYPE + SYNTAX MplsFTNPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains performance information for the + specified interface and an FTN entry mapped to this + interface." + INDEX { mplsFTNPerfIndex, mplsFTNPerfCurrIndex } + ::= { mplsFTNPerfTable 1 } + + + + +MplsFTNPerfEntry ::= SEQUENCE { + mplsFTNPerfIndex InterfaceIndexOrZero, + mplsFTNPerfCurrIndex MplsFTNEntryIndex, + mplsFTNPerfMatchedPackets Counter64, + mplsFTNPerfMatchedOctets Counter64, + mplsFTNPerfDiscontinuityTime TimeStamp + } + +mplsFTNPerfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface index of an interface that an FTN entry + has been applied/mapped to. Each instance of this + object corresponds to an instance of mplsFTNMapIndex." + ::= { mplsFTNPerfEntry 1 } + +mplsFTNPerfCurrIndex OBJECT-TYPE + SYNTAX MplsFTNEntryIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Index of an FTN entry that has been applied/mapped to + the specified interface. Each instance of this object + corresponds to an instance of mplsFTNMapCurrIndex." + ::= { mplsFTNPerfEntry 2 } + +mplsFTNPerfMatchedPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of packets that matched the specified FTN entry + if it is applied/mapped to the specified interface. + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsFTNDiscontinuityTime." + ::= { mplsFTNPerfEntry 3 } + +mplsFTNPerfMatchedOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of octets that matched the specified FTN entry + if it is applied/mapped to the specified interface. + + + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsFTNDiscontinuityTime." + ::= { mplsFTNPerfEntry 4 } + +mplsFTNPerfDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion at + which any one or more of this entry's counters suffered + a discontinuity. If no such discontinuities have + occurred since the last re-initialization of the local + management subsystem, then this object contains a zero + value." + ::= { mplsFTNPerfEntry 5 } + +-- End of mplsFTNPerfTable + +-- Module compliance. + +-- Top level object IDs. + +mplsFTNGroups + OBJECT IDENTIFIER ::= { mplsFTNConformance 1 } +mplsFTNCompliances + OBJECT IDENTIFIER ::= { mplsFTNConformance 2 } + +-- Compliance requirement for fully compliant implementations. +mplsFTNModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "Compliance statement for agents that provide full + support for MPLS-FTN-STD-MIB." + + MODULE IF-MIB -- The Interfaces Group MIB, RFC 2863. + MANDATORY-GROUPS { + ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + } + + MODULE -- This module. + MANDATORY-GROUPS { + mplsFTNRuleGroup, + mplsFTNMapGroup, + mplsFTNPerfGroup + + + + } + + OBJECT mplsFTNAddrType + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + DESCRIPTION + "An implementation is only required to support IPv4 + and/or IPv6 addresses. An implementation is only + required to support the address types that are actually + supported on the LSR." + + OBJECT mplsFTNSourceAddrMin + SYNTAX InetAddress (SIZE (4 | 20)) + DESCRIPTION + "An implementation is only required to support IPv4 + and/or IPv6 addresses. An implementation is only + required to support the address types that are actually + supported on the LSR." + + OBJECT mplsFTNSourceAddrMax + SYNTAX InetAddress (SIZE (4 | 20)) + DESCRIPTION + "An implementation is only required to support IPv4 + and/or IPv6 addresses. An implementation is only + required to support the address types that are actually + supported on the LSR." + + OBJECT mplsFTNDestAddrMin + SYNTAX InetAddress (SIZE (4 | 20)) + DESCRIPTION + "An implementation is only required to support IPv4 + and/or IPv6 addresses. An implementation is only + required to support the address types that are actually + supported on the LSR." + + OBJECT mplsFTNDestAddrMax + SYNTAX InetAddress (SIZE (4 | 20)) + DESCRIPTION + "An implementation is only required to support IPv4 + and/or IPv6 addresses. An implementation is only + required to support the address types that are actually + supported on the LSR." + ::= { mplsFTNCompliances 1 } + +-- Compliance requirement for read-only implementations. +mplsFTNModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "Compliance requirement for implementations that only + + + + provide read-only support for MPLS-FTN-STD-MIB. Such + devices can then be monitored but cannot be configured + using this MIB module." + + MODULE IF-MIB -- The interfaces Group MIB, RFC 2863 + MANDATORY-GROUPS { + ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + } + + MODULE -- This module + MANDATORY-GROUPS { + mplsFTNRuleGroup, + mplsFTNMapGroup, + mplsFTNPerfGroup + } + + OBJECT mplsFTNIndexNext + MIN-ACCESS not-accessible + DESCRIPTION + "This object is not needed when mplsFTNTable is + implemented as read-only." + + OBJECT mplsFTNRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and active is the only + status that needs to be supported." + + OBJECT mplsFTNDescr + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNMask + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNAddrType + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. An implementation is only + required to support IPv4 and IPv6 addresses." + + OBJECT mplsFTNSourceAddrMin + + + + SYNTAX InetAddress (SIZE (4 | 20)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. An implementation is only + required to support IPv4 and IPv6 addresses." + + OBJECT mplsFTNSourceAddrMax + SYNTAX InetAddress (SIZE (4 | 20)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. An implementation is only + required to support IPv4 and IPv6 addresses." + + OBJECT mplsFTNDestAddrMin + SYNTAX InetAddress (SIZE (4 | 20)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. An implementation is only + required to support IPv4 and IPv6 addresses." + + OBJECT mplsFTNDestAddrMax + SYNTAX InetAddress (SIZE (4 | 20)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. An implementation is only + required to support IPv4 and IPv6 addresses." + + OBJECT mplsFTNSourcePortMin + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNSourcePortMax + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNDestPortMin + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNDestPortMax + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNProtocol + + + + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNActionType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNActionPointer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNDscp + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNMapRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and active(1) is the only + status that needs to be supported." + + OBJECT mplsFTNMapStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + ::= { mplsFTNCompliances 2 } + +-- Units of conformance. +mplsFTNRuleGroup OBJECT-GROUP + OBJECTS { + mplsFTNIndexNext, + mplsFTNTableLastChanged, + mplsFTNRowStatus, + mplsFTNDescr, + mplsFTNMask, + mplsFTNAddrType, + mplsFTNSourceAddrMin, + mplsFTNSourceAddrMax, + + + + mplsFTNDestAddrMin, + mplsFTNDestAddrMax, + mplsFTNSourcePortMin, + mplsFTNSourcePortMax, + mplsFTNDestPortMin, + mplsFTNDestPortMax, + mplsFTNProtocol, + mplsFTNActionType, + mplsFTNActionPointer, + mplsFTNDscp, + mplsFTNStorageType + } + STATUS current + DESCRIPTION + "Collection of objects that implement MPLS FTN rules." + ::= { mplsFTNGroups 1 } + +mplsFTNMapGroup OBJECT-GROUP + OBJECTS { + mplsFTNMapTableLastChanged, + mplsFTNMapRowStatus, + mplsFTNMapStorageType + } + STATUS current + DESCRIPTION + "Collection of objects that implement activation of MPLS + FTN entries on interfaces." + ::= { mplsFTNGroups 2 } + +mplsFTNPerfGroup OBJECT-GROUP + OBJECTS { + mplsFTNPerfMatchedPackets, + mplsFTNPerfMatchedOctets, + mplsFTNPerfDiscontinuityTime + } + STATUS current + DESCRIPTION + "Collection of objects providing MPLS FTN performance + information." + ::= { mplsFTNGroups 3 } + +END \ No newline at end of file diff --git a/mibs/MPLS-LDP-STD-MIB.txt b/mibs/MPLS-LDP-STD-MIB.txt new file mode 100644 index 00000000..344d6400 --- /dev/null +++ b/mibs/MPLS-LDP-STD-MIB.txt @@ -0,0 +1,2547 @@ +MPLS-LDP-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE, + Integer32, Counter32, Unsigned32 + FROM SNMPv2-SMI -- [RFC2578] + + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF -- [RFC2580] + + RowStatus, TimeInterval, TruthValue, + TimeStamp, StorageType + + + + FROM SNMPv2-TC -- [RFC2579] + + InetAddressPrefixLength, + InetAddressType, + InetAddress, + InetPortNumber + FROM INET-ADDRESS-MIB -- [RFC3291] + + IndexInteger, + IndexIntegerNextFree + FROM DIFFSERV-MIB -- [RFC3289] + + mplsStdMIB, + MplsLabelDistributionMethod, + MplsLdpIdentifier, + MplsLdpLabelType, + MplsLspType, + MplsLsrIdentifier, + MplsRetentionMode + FROM MPLS-TC-STD-MIB -- [RFC3811] + + MplsIndexType + FROM MPLS-LSR-STD-MIB; -- [RFC3813] + +mplsLdpStdMIB MODULE-IDENTITY + LAST-UPDATED "200406030000Z" -- June 3, 2004 + ORGANIZATION "Multiprotocol Label Switching (mpls) + Working Group" + CONTACT-INFO + + "Joan Cucchiara (jcucchiara@mindspring.com) + Marconi Communications, Inc. + + Hans Sjostrand (hans@ipunplugged.com) + ipUnplugged + + James V. Luciani (james_luciani@mindspring.com) + Marconi Communications, Inc. + + Working Group Chairs: + George Swallow, email: swallow@cisco.com + Loa Andersson, email: loa@pi.se + + MPLS Working Group, email: mpls@uu.net" + + DESCRIPTION + "Copyright (C) The Internet Society (2004). The + initial version of this MIB module was published + + + + in RFC 3815. For full legal notices see the RFC + itself or see: + http://www.ietf.org/copyrights/ianamib.html + + This MIB contains managed object definitions for the + 'Multiprotocol Label Switching, Label Distribution + Protocol, LDP' document." + + REVISION "200406030000Z" -- June 3, 2004 + DESCRIPTION + "Initial version published as part of RFC 3815." + + ::= { mplsStdMIB 4 } + +--**************************************************************** + +mplsLdpNotifications OBJECT IDENTIFIER ::= { mplsLdpStdMIB 0 } +mplsLdpObjects OBJECT IDENTIFIER ::= { mplsLdpStdMIB 1 } +mplsLdpConformance OBJECT IDENTIFIER ::= { mplsLdpStdMIB 2 } + +--**************************************************************** +-- MPLS LDP Objects +--**************************************************************** + +mplsLdpLsrObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 1 } + +mplsLdpEntityObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 2 } + +-- +-- The MPLS Label Distribution Protocol's +-- Label Switching Router Objects +-- + +mplsLdpLsrId OBJECT-TYPE + SYNTAX MplsLsrIdentifier + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Label Switching Router's Identifier." + ::= { mplsLdpLsrObjects 1 } + +mplsLdpLsrLoopDetectionCapable OBJECT-TYPE + SYNTAX INTEGER { + none(1), + other(2), + hopCount(3), + pathVector(4), + hopCountAndPathVector(5) + + + + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A indication of whether this + Label Switching Router supports + loop detection. + + none(1) -- Loop Detection is not supported + on this LSR. + + other(2) -- Loop Detection is supported but + by a method other than those + listed below. + + hopCount(3) -- Loop Detection is supported by + Hop Count only. + + pathVector(4) -- Loop Detection is supported by + Path Vector only. + + hopCountAndPathVector(5) -- Loop Detection is + supported by both Hop Count + And Path Vector. + + Since Loop Detection is determined during + Session Initialization, an individual session + may not be running with loop detection. This + object simply gives an indication of whether or not the + LSR has the ability to support Loop Detection and + which types." + + ::= { mplsLdpLsrObjects 2 } + +-- +-- The MPLS Label Distribution Protocol Entity Objects +-- + +mplsLdpEntityLastChange OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time of the most + recent addition or deletion of an entry + to/from the mplsLdpEntityTable/mplsLdpEntityStatsTable, or + the most recent change in value of any objects in the + mplsLdpEntityTable. + + + + If no such changes have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." + ::= { mplsLdpEntityObjects 1 } + +mplsLdpEntityIndexNext OBJECT-TYPE + SYNTAX IndexIntegerNextFree + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains an appropriate value to + be used for mplsLdpEntityIndex when creating + entries in the mplsLdpEntityTable. The value + 0 indicates that no unassigned entries are + available." + ::= { mplsLdpEntityObjects 2 } + + +mplsLdpEntityTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpEntityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains information about the + MPLS Label Distribution Protocol Entities which + exist on this Label Switching Router (LSR) + or Label Edge Router (LER)." + ::= { mplsLdpEntityObjects 3 } + + mplsLdpEntityEntry OBJECT-TYPE + SYNTAX MplsLdpEntityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents an LDP entity. + An entry can be created by a network administrator + or by an SNMP agent as instructed by LDP." + INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex } + ::= { mplsLdpEntityTable 1 } + + MplsLdpEntityEntry ::= SEQUENCE { + mplsLdpEntityLdpId MplsLdpIdentifier, + mplsLdpEntityIndex IndexInteger, + mplsLdpEntityProtocolVersion Unsigned32, + mplsLdpEntityAdminStatus INTEGER, + mplsLdpEntityOperStatus INTEGER, + mplsLdpEntityTcpPort InetPortNumber, + mplsLdpEntityUdpDscPort InetPortNumber, + + + + mplsLdpEntityMaxPduLength Unsigned32, + mplsLdpEntityKeepAliveHoldTimer Unsigned32, + mplsLdpEntityHelloHoldTimer Unsigned32, + mplsLdpEntityInitSessionThreshold Integer32, + mplsLdpEntityLabelDistMethod MplsLabelDistributionMethod, + mplsLdpEntityLabelRetentionMode MplsRetentionMode, + mplsLdpEntityPathVectorLimit Integer32, + mplsLdpEntityHopCountLimit Integer32, + mplsLdpEntityTransportAddrKind INTEGER, + mplsLdpEntityTargetPeer TruthValue, + mplsLdpEntityTargetPeerAddrType InetAddressType, + mplsLdpEntityTargetPeerAddr InetAddress, + mplsLdpEntityLabelType MplsLdpLabelType, + mplsLdpEntityDiscontinuityTime TimeStamp, + mplsLdpEntityStorageType StorageType, + mplsLdpEntityRowStatus RowStatus + } + + mplsLdpEntityLdpId OBJECT-TYPE + SYNTAX MplsLdpIdentifier + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The LDP identifier." + REFERENCE + "RFC3036, LDP Specification, Section on LDP Identifiers." + ::= { mplsLdpEntityEntry 1 } + +mplsLdpEntityIndex OBJECT-TYPE + SYNTAX IndexInteger + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This index is used as a secondary index to uniquely + identify this row. Before creating a row in this table, + the 'mplsLdpEntityIndexNext' object should be retrieved. + That value should be used for the value of this index + when creating a row in this table. NOTE: if a value + of zero (0) is retrieved, that indicates that no rows + can be created in this table at this time. + + A secondary index (this object) is meaningful to some + but not all, LDP implementations. For example + an LDP implementation which uses PPP would + use this index to differentiate PPP sub-links. + + Another way to use this index is to give this the + value of ifIndex. However, this is dependant + + + + on the implementation." + ::= { mplsLdpEntityEntry 2 } + +mplsLdpEntityProtocolVersion OBJECT-TYPE + SYNTAX Unsigned32(1..65535) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The version number of the LDP protocol which will be + used in the session initialization message. + + Section 3.5.3 in the LDP Specification specifies + that the version of the LDP protocol is negotiated during + session establishment. The value of this object + represents the value that is sent in the initialization + message." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3 Initialization + Message." + DEFVAL { 1 } + ::= { mplsLdpEntityEntry 3 } + +mplsLdpEntityAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + enable(1), + disable(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The administrative status of this LDP Entity. + If this object is changed from 'enable' to 'disable' + and this entity has already attempted to establish + contact with a Peer, then all contact with that + Peer is lost and all information from that Peer + needs to be removed from the MIB. (This implies + that the network management subsystem should clean + up any related entry in the mplsLdpPeerTable. This + further implies that a 'tear-down' for that session + is issued and the session and all information related + to that session cease to exist). + + At this point the operator is able to change values + which are related to this entity. + + When the admin status is set back to 'enable', then + this Entity will attempt to establish a new session + with the Peer." + + + + DEFVAL { enable } + ::= { mplsLdpEntityEntry 4 } + +mplsLdpEntityOperStatus OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + enabled(2), + disabled(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The operational status of this LDP Entity. + + The value of unknown(1) indicates that the + operational status cannot be determined at + this time. The value of unknown should be + a transient condition before changing + to enabled(2) or disabled(3)." + ::= { mplsLdpEntityEntry 5 } + +mplsLdpEntityTcpPort OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The TCP Port for + LDP. The default value is the well-known + value of this port." + REFERENCE + "RFC3036, LDP Specification, Section 3.10, Well-known + Numbers, and Section 3.10.1. UDP and TCP Ports." + DEFVAL { 646 } + ::= { mplsLdpEntityEntry 6 } + +mplsLdpEntityUdpDscPort OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The UDP Discovery Port for + LDP. The default value is the + well-known value for this port." + REFERENCE + "RFC3036, LDP Specification, Section 2.4.1, + Basic Discovery Mechanism, Section 2.4.2, + Extended Discovery Mechanism, Section + 3.10, Well-known Numbers, and Section 3.10.1. + + + + UDP and TCP Ports." + DEFVAL { 646 } + ::= { mplsLdpEntityEntry 7 } + +mplsLdpEntityMaxPduLength OBJECT-TYPE + SYNTAX Unsigned32 (256..65535) + UNITS "octets" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The maximum PDU Length that is sent in + the Common Session Parameters of an Initialization + Message. According to the LDP Specification [RFC3036] + a value of 255 or less specifies the + default maximum length of 4096 octets, this is why + the value of this object starts at 256. The operator + should explicitly choose the default value (i.e., 4096), + or some other value. + + The receiving LSR MUST calculate the maximum PDU + length for the session by using the smaller of its and + its peer's proposals for Max PDU Length." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3. + Initialization Message." + DEFVAL { 4096 } + ::= { mplsLdpEntityEntry 8 } + +mplsLdpEntityKeepAliveHoldTimer OBJECT-TYPE + SYNTAX Unsigned32 (1..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The 16-bit integer value which is the proposed keep + alive hold timer for this LDP Entity." + DEFVAL { 40 } + ::= { mplsLdpEntityEntry 9 } + +mplsLdpEntityHelloHoldTimer OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The 16-bit integer value which is the proposed Hello + hold timer for this LDP Entity. The Hello Hold time + in seconds. + + + + An LSR maintains a record of Hellos received + from potential peers. This object represents + the Hold Time in the Common Hello Parameters TLV of + the Hello Message. + + A value of 0 is a default value and should be + interpretted in conjunction with the + mplsLdpEntityTargetPeer object. + + If the value of this object is 0: if the value of the + mplsLdpEntityTargetPeer object is false(2), then this + specifies that the Hold Time's actual default value is + 15 seconds (i.e., the default Hold time for Link Hellos + is 15 seconds). Otherwise if the value of the + mplsLdpEntityTargetPeer object is true(1), then this + specifies that the Hold Time's actual default value is + 45 seconds (i.e., the default Hold time for Targeted + Hellos is 45 seconds). + + A value of 65535 means infinite (i.e., wait forever). + + All other values represent the amount of time in + seconds to wait for a Hello Message. Setting the + hold time to a value smaller than 15 is not + recommended, although not forbidden according + to RFC3036." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.2., + Hello Message." + DEFVAL { 0 } + ::= { mplsLdpEntityEntry 10 } + +mplsLdpEntityInitSessionThreshold OBJECT-TYPE + SYNTAX Integer32(0..100) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "When attempting to establish a session with + a given Peer, the given LDP Entity should + send out the SNMP notification, + 'mplsLdpInitSessionThresholdExceeded', when + the number of Session Initialization messages + sent exceeds this threshold. + + The notification is used to notify an + operator when this Entity and its Peer are + possibly engaged in an endless sequence + of messages as each NAKs the other's + + + + Initialization messages with Error Notification + messages. Setting this threshold which triggers + the notification is one way to notify the + operator. The notification should be generated + each time this threshold is exceeded and + for every subsequent Initialization message + which is NAK'd with an Error Notification + message after this threshold is exceeded. + + A value of 0 (zero) for this object + indicates that the threshold is infinity, thus + the SNMP notification will never be generated." + REFERENCE + "RFC3036, LDP Specification, + Section 2.5.3 Session Initialization." + DEFVAL { 8 } + ::= { mplsLdpEntityEntry 11 } + +mplsLdpEntityLabelDistMethod OBJECT-TYPE + SYNTAX MplsLabelDistributionMethod + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "For any given LDP session, the method of + label distribution must be specified." + ::= { mplsLdpEntityEntry 12 } + +mplsLdpEntityLabelRetentionMode OBJECT-TYPE + SYNTAX MplsRetentionMode + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The LDP Entity can be configured to use either + conservative or liberal label retention mode. + + If the value of this object is conservative(1) + then advertized label mappings are retained + only if they will be used to forward packets, + i.e., if label came from a valid next hop. + + If the value of this object is liberal(2) + then all advertized label mappings are retained + whether they are from a valid next hop or not." + ::= { mplsLdpEntityEntry 13 } + +mplsLdpEntityPathVectorLimit OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-create + + + + STATUS current + DESCRIPTION + "If the value of this object is 0 (zero) then + Loop Detection for Path Vectors is disabled. + + Otherwise, if this object has a value greater than + zero, then Loop Dection for Path Vectors is enabled, + and the Path Vector Limit is this value. + Also, the value of the object, + 'mplsLdpLsrLoopDetectionCapable', must be set to + either 'pathVector(4)' or 'hopCountAndPathVector(5)', + if this object has a value greater than 0 (zero), + otherwise it is ignored." + REFERENCE + "RFC3036, LDP Specification, Section 2.8 Loop Dection, + Section 3.4.5 Path Vector TLV." + ::= { mplsLdpEntityEntry 14 } + +mplsLdpEntityHopCountLimit OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the value of this object is 0 (zero), + then Loop Detection using Hop Counters is + disabled. + + If the value of this object is greater than + 0 (zero) then Loop Detection using Hop + Counters is enabled, and this object + specifies this Entity's maximum allowable + value for the Hop Count. + Also, the value of the object + mplsLdpLsrLoopDetectionCapable must be set + to either 'hopCount(3)' or + 'hopCountAndPathVector(5)' if this object + has a value greater than 0 (zero), otherwise + it is ignored." + DEFVAL { 0 } + ::= { mplsLdpEntityEntry 15 } + +mplsLdpEntityTransportAddrKind OBJECT-TYPE + SYNTAX INTEGER { + interface(1), + loopback(2) + } + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "This specifies whether the loopback or interface + address is to be used as the transport address + in the transport address TLV of the + hello message. + + If the value is interface(1), then the IP + address of the interface from which hello + messages are sent is used as the transport + address in the hello message. + + Otherwise, if the value is loopback(2), then the IP + address of the loopback interface is used as the + transport address in the hello message." + DEFVAL { loopback } + ::= { mplsLdpEntityEntry 16 } + +mplsLdpEntityTargetPeer OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If this LDP entity uses targeted peer then set + this to true." + DEFVAL { false } + ::= { mplsLdpEntityEntry 17 } + +mplsLdpEntityTargetPeerAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of the internetwork layer address used for + the Extended Discovery. This object indicates how + the value of mplsLdpEntityTargetPeerAddr is to + be interpreted." + ::= { mplsLdpEntityEntry 18 } + +mplsLdpEntityTargetPeerAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value of the internetwork layer address + used for the Extended Discovery. The value of + mplsLdpEntityTargetPeerAddrType specifies how + this address is to be interpreted." + ::= { mplsLdpEntityEntry 19 } + + + +mplsLdpEntityLabelType OBJECT-TYPE + SYNTAX MplsLdpLabelType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Specifies the optional parameters for the LDP + Initialization Message. + + If the value is generic(1) then no + optional parameters will be sent in + the LDP Initialization message associated + with this Entity. + + If the value is atmParameters(2) then + a row must be created in the + mplsLdpEntityAtmTable, which + corresponds to this entry. + + If the value is frameRelayParameters(3) then + a row must be created in the + mplsLdpEntityFrameRelayTable, which + corresponds to this entry." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3., + Initialization Message." + ::= { mplsLdpEntityEntry 20 } + +mplsLdpEntityDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one or more of this entity's counters + suffered a discontinuity. The relevant counters + are the specific instances associated with this + entity of any Counter32 object contained + in the 'mplsLdpEntityStatsTable'. If no such + discontinuities have occurred since the last + re-initialization of the local management + subsystem, then this object contains a zero + value." + ::= { mplsLdpEntityEntry 21 } + +mplsLdpEntityStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "The storage type for this conceptual row. + Conceptual rows having the value 'permanent(4)' + need not allow write-access to any columnar + objects in the row." + DEFVAL{ nonVolatile } + ::= { mplsLdpEntityEntry 22 } + +mplsLdpEntityRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this conceptual row. All writable + objects in this row may be modified at any + time, however, as described in detail in + the section entitled, 'Changing Values After + Session Establishment', and again described + in the DESCRIPTION clause of the + mplsLdpEntityAdminStatus object, if a session + has been initiated with a Peer, changing objects + in this table will wreak havoc with the session + and interrupt traffic. To repeat again: + the recommended procedure is to + set the mplsLdpEntityAdminStatus to down, thereby + explicitly causing a session to be torn down. Then, + change objects in this entry, then set + the mplsLdpEntityAdminStatus to enable, + which enables a new session to be initiated." + ::= { mplsLdpEntityEntry 23 } + +-- +-- The MPLS LDP Entity Statistics Table +-- + +mplsLdpEntityStatsTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpEntityStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is a read-only table which augments + the mplsLdpEntityTable. The purpose of this + table is to keep statistical information about + the LDP Entities on the LSR." + ::= { mplsLdpEntityObjects 4 } + +mplsLdpEntityStatsEntry OBJECT-TYPE + SYNTAX MplsLdpEntityStatsEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table contains statistical information + about an LDP Entity. Some counters contained in a + row are for fatal errors received during a former + LDP Session associated with this entry. For example, + an LDP PDU received on a TCP connection during an + LDP Session contains a fatal error. That + error is counted here, because the + session is terminated. + + If the error is NOT fatal (i.e., the Session + remains), then the error is counted in the + mplsLdpSessionStatsEntry." + AUGMENTS { mplsLdpEntityEntry } + ::= { mplsLdpEntityStatsTable 1 } + +MplsLdpEntityStatsEntry ::= SEQUENCE { + mplsLdpEntityStatsSessionAttempts Counter32, + mplsLdpEntityStatsSessionRejectedNoHelloErrors Counter32, + mplsLdpEntityStatsSessionRejectedAdErrors Counter32, + mplsLdpEntityStatsSessionRejectedMaxPduErrors Counter32, + mplsLdpEntityStatsSessionRejectedLRErrors Counter32, + mplsLdpEntityStatsBadLdpIdentifierErrors Counter32, + mplsLdpEntityStatsBadPduLengthErrors Counter32, + mplsLdpEntityStatsBadMessageLengthErrors Counter32, + mplsLdpEntityStatsBadTlvLengthErrors Counter32, + mplsLdpEntityStatsMalformedTlvValueErrors Counter32, + mplsLdpEntityStatsKeepAliveTimerExpErrors Counter32, + mplsLdpEntityStatsShutdownReceivedNotifications Counter32, + mplsLdpEntityStatsShutdownSentNotifications Counter32 +} + +mplsLdpEntityStatsSessionAttempts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A count of the Session Initialization messages + which were sent or received by this LDP Entity and + were NAK'd. In other words, this counter counts + the number of session initializations that failed. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + + + + ::= { mplsLdpEntityStatsEntry 1 } + +mplsLdpEntityStatsSessionRejectedNoHelloErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A count of the Session Rejected/No Hello Error + Notification Messages sent or received by + this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + ::= { mplsLdpEntityStatsEntry 2 } + +mplsLdpEntityStatsSessionRejectedAdErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A count of the Session Rejected/Parameters + Advertisement Mode Error Notification Messages sent + or received by this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + ::= { mplsLdpEntityStatsEntry 3 } + +mplsLdpEntityStatsSessionRejectedMaxPduErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A count of the Session Rejected/Parameters + + Max Pdu Length Error Notification Messages sent + or received by this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + ::= { mplsLdpEntityStatsEntry 4 } + + + + +mplsLdpEntityStatsSessionRejectedLRErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A count of the Session Rejected/Parameters + Label Range Notification Messages sent + or received by this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + ::= { mplsLdpEntityStatsEntry 5 } + +mplsLdpEntityStatsBadLdpIdentifierErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Bad LDP Identifier + Fatal Errors detected by the session(s) + (past and present) associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 6 } + +mplsLdpEntityStatsBadPduLengthErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Bad PDU Length + Fatal Errors detected by the session(s) + (past and present) associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 7 } + + + +mplsLdpEntityStatsBadMessageLengthErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Bad Message + Length Fatal Errors detected by the session(s) + (past and present) associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 8 } + +mplsLdpEntityStatsBadTlvLengthErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Bad TLV + Length Fatal Errors detected by the session(s) + (past and present) associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 9 } + +mplsLdpEntityStatsMalformedTlvValueErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Malformed TLV + Value Fatal Errors detected by the session(s) + (past and present) associated with this + LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + + + + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 10 } + +mplsLdpEntityStatsKeepAliveTimerExpErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Session Keep Alive + Timer Expired Errors detected by the session(s) + (past and present) associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 11 } + +mplsLdpEntityStatsShutdownReceivedNotifications OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Shutdown Notifications + received related to session(s) (past and present) + associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." + ::= { mplsLdpEntityStatsEntry 12 } + +mplsLdpEntityStatsShutdownSentNotifications OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Shutdown Notfications + sent related to session(s) (past and present) associated + with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + + + + mplsLdpEntityDiscontinuityTime." + ::= { mplsLdpEntityStatsEntry 13 } + +-- +-- The MPLS LDP Peer Table +-- + +mplsLdpSessionObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 3 } + +mplsLdpPeerLastChange OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time of the most + recent addition or deletion to/from the + mplsLdpPeerTable/mplsLdpSessionTable." + ::= { mplsLdpSessionObjects 1 } + +mplsLdpPeerTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpPeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about LDP peers known by Entities in + the mplsLdpEntityTable. The information in this table + is based on information from the Entity-Peer interaction + during session initialization but is not appropriate + for the mplsLdpSessionTable, because objects in this + table may or may not be used in session establishment." + ::= { mplsLdpSessionObjects 2 } + +mplsLdpPeerEntry OBJECT-TYPE + SYNTAX MplsLdpPeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a single Peer which is related + to a Session. This table is augmented by + the mplsLdpSessionTable." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId } + ::= { mplsLdpPeerTable 1 } + +MplsLdpPeerEntry ::= SEQUENCE { + mplsLdpPeerLdpId MplsLdpIdentifier, + mplsLdpPeerLabelDistMethod MplsLabelDistributionMethod, + + + + mplsLdpPeerPathVectorLimit Integer32, + mplsLdpPeerTransportAddrType InetAddressType, + mplsLdpPeerTransportAddr InetAddress +} + +mplsLdpPeerLdpId OBJECT-TYPE + SYNTAX MplsLdpIdentifier + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The LDP identifier of this LDP Peer." + ::= { mplsLdpPeerEntry 1 } + +mplsLdpPeerLabelDistMethod OBJECT-TYPE + SYNTAX MplsLabelDistributionMethod + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "For any given LDP session, the method of + label distribution must be specified." + ::= { mplsLdpPeerEntry 2 } + +mplsLdpPeerPathVectorLimit OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If the value of this object is 0 (zero) then + Loop Dection for Path Vectors for this Peer + is disabled. + + Otherwise, if this object has a value greater than + zero, then Loop Dection for Path Vectors for this + Peer is enabled and the Path Vector Limit is this value." + REFERENCE + "RFC3036, LDP Specification, Section 2.8 Loop Dection, + Section 3.4.5 Path Vector TLV." + ::= { mplsLdpPeerEntry 3 } + +mplsLdpPeerTransportAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of the Internet address for the + mplsLdpPeerTransportAddr object. The LDP + specification describes this as being either + an IPv4 Transport Address or IPv6 Transport + + + + Address which is used in opening the LDP session's + TCP connection, or if the optional TLV is not + present, then this is the IPv4/IPv6 source + address for the UPD packet carrying the Hellos. + + This object specifies how the value of the + mplsLdpPeerTransportAddr object should be + interpreted." + REFERENCE + "RFC3036, LDP Specification, Section 2.5.2 + Transport Connection Establishment and + Section 3.5.2.1 Hello Message Procedures." + ::= { mplsLdpPeerEntry 4 } + +mplsLdpPeerTransportAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Internet address advertised by the peer + in the Hello Message or the Hello source address. + + The type of this address is specified by the + value of the mplsLdpPeerTransportAddrType + object." + REFERENCE + "RFC3036, LDP Specification, Section 2.5.2 + Transport Connection Establishment and + Section 3.5.2.1 Hello Message Procedures." + ::= { mplsLdpPeerEntry 5 } + +-- +-- The MPLS LDP Sessions Table +-- + +mplsLdpSessionTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpSessionEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of Sessions between the LDP Entities + and LDP Peers. This table AUGMENTS the + mplsLdpPeerTable. Each row in this table + represents a single session." + ::= { mplsLdpSessionObjects 3 } + +mplsLdpSessionEntry OBJECT-TYPE + SYNTAX MplsLdpSessionEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents information on a + single session between an LDP Entity and LDP Peer. + The information contained in a row is read-only. + + Please note: the Path Vector Limit for the + Session is the value which is configured in + the corresponding mplsLdpEntityEntry. The + Peer's Path Vector Limit is in the + mplsLdpPeerPathVectorLimit object in the + mplsLdpPeerTable. + + Values which may differ from those configured are + noted in the objects of this table, the + mplsLdpAtmSessionTable and the + mplsLdpFrameRelaySessionTable. A value will + differ if it was negotiated between the + Entity and the Peer. Values may or may not + be negotiated. For example, if the values + are the same then no negotiation takes place. + If they are negotiated, then they may differ." + AUGMENTS { mplsLdpPeerEntry } + ::= { mplsLdpSessionTable 1 } + +MplsLdpSessionEntry ::= SEQUENCE { + mplsLdpSessionStateLastChange TimeStamp, + mplsLdpSessionState INTEGER, + mplsLdpSessionRole INTEGER, + mplsLdpSessionProtocolVersion Unsigned32, + mplsLdpSessionKeepAliveHoldTimeRem TimeInterval, + mplsLdpSessionKeepAliveTime Unsigned32, + mplsLdpSessionMaxPduLength Unsigned32, + mplsLdpSessionDiscontinuityTime TimeStamp +} + +mplsLdpSessionStateLastChange OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time this + Session entered its current state as + denoted by the mplsLdpSessionState + object." + ::= { mplsLdpSessionEntry 1 } + + + + +mplsLdpSessionState OBJECT-TYPE + SYNTAX INTEGER { + nonexistent(1), + initialized(2), + openrec(3), + opensent(4), + operational(5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current state of the session, all of the + states 1 to 5 are based on the state machine + for session negotiation behavior." + REFERENCE + "RFC3036, LDP Specification, Section 2.5.4, + Initialization State Machine." + ::= { mplsLdpSessionEntry 2 } + +mplsLdpSessionRole OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + active(2), + passive(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "During session establishment the LSR/LER takes either + the active role or the passive role based on address + comparisons. This object indicates whether this LSR/LER + was behaving in an active role or passive role during + this session's establishment. + + The value of unknown(1), indicates that the role is not + able to be determined at the present time." + REFERENCE + "RFC3036, LDP Specification, Section 2.5.3., + Session Initialization" + ::= { mplsLdpSessionEntry 3 } + +mplsLdpSessionProtocolVersion OBJECT-TYPE + SYNTAX Unsigned32(1..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The version of the LDP Protocol which + this session is using. This is the version of + + + + the LDP protocol which has been negotiated + during session initialization." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3, + Initialization Message." + ::= { mplsLdpSessionEntry 4 } + +mplsLdpSessionKeepAliveHoldTimeRem OBJECT-TYPE + SYNTAX TimeInterval + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The keep alive hold time remaining for + this session." + ::= { mplsLdpSessionEntry 5 } + + mplsLdpSessionKeepAliveTime OBJECT-TYPE + SYNTAX Unsigned32 (1..65535) + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The negotiated KeepAlive Time which + represents the amount of seconds between + keep alive messages. The + mplsLdpEntityKeepAliveHoldTimer + related to this Session is the + value that was proposed as the + KeepAlive Time for this session. + + This value is negotiated during + session initialization between + the entity's proposed value + (i.e., the value configured in + mplsLdpEntityKeepAliveHoldTimer) + and the peer's proposed + KeepAlive Hold Timer value. + This value is the smaller + of the two proposed values." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3, + Initialization Message." + ::= { mplsLdpSessionEntry 6 } + + mplsLdpSessionMaxPduLength OBJECT-TYPE + SYNTAX Unsigned32 (1..65535) + UNITS "octets" + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "The value of maximum allowable length for LDP PDUs for + this session. This value may have been negotiated + during the Session Initialization. This object is + related to the mplsLdpEntityMaxPduLength object. The + mplsLdpEntityMaxPduLength object specifies the requested + LDP PDU length, and this object reflects the negotiated + LDP PDU length between the Entity and + the Peer." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3, + Initialization Message." + ::= { mplsLdpSessionEntry 7 } + +mplsLdpSessionDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one or more of this session's counters + suffered a discontinuity. The relevant counters are + the specific instances associated with this session + of any Counter32 object contained in the + mplsLdpSessionStatsTable. + + The initial value of this object is the value of + sysUpTime when the entry was created in this table. + + Also, a command generator can distinguish when a session + between a given Entity and Peer goes away and a new + session is established. This value would change and + thus indicate to the command generator that this is a + different session." + ::= { mplsLdpSessionEntry 8 } + +-- +-- The MPLS LDP Session Statistics Table +-- + +mplsLdpSessionStatsTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpSessionStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of statistics for Sessions between + LDP Entities and LDP Peers. This table AUGMENTS + + + + the mplsLdpPeerTable." + ::= { mplsLdpSessionObjects 4 } + +mplsLdpSessionStatsEntry OBJECT-TYPE + SYNTAX MplsLdpSessionStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents statistical + information on a single session between an LDP + Entity and LDP Peer." + + AUGMENTS { mplsLdpPeerEntry } + ::= { mplsLdpSessionStatsTable 1 } + +MplsLdpSessionStatsEntry ::= SEQUENCE { + mplsLdpSessionStatsUnknownMesTypeErrors Counter32, + mplsLdpSessionStatsUnknownTlvErrors Counter32 +} + +mplsLdpSessionStatsUnknownMesTypeErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Unknown Message Type + Errors detected by this LSR/LER during this session. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpSessionDiscontinuityTime." + ::= { mplsLdpSessionStatsEntry 1 } + +mplsLdpSessionStatsUnknownTlvErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Unknown TLV Errors + detected by this LSR/LER during this session. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpSessionDiscontinuityTime." + ::= { mplsLdpSessionStatsEntry 2 } + + + + +-- +-- The MPLS LDP Hello Adjacency Table +-- + +mplsLdpHelloAdjacencyObjects OBJECT IDENTIFIER ::= + { mplsLdpSessionObjects 5 } + +mplsLdpHelloAdjacencyTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpHelloAdjacencyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of Hello Adjacencies for Sessions." + ::= { mplsLdpHelloAdjacencyObjects 1 } + +mplsLdpHelloAdjacencyEntry OBJECT-TYPE + SYNTAX MplsLdpHelloAdjacencyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each row represents a single LDP Hello Adjacency. + An LDP Session can have one or more Hello + Adjacencies." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId, + mplsLdpHelloAdjacencyIndex } + ::= { mplsLdpHelloAdjacencyTable 1 } + +MplsLdpHelloAdjacencyEntry ::= SEQUENCE { + mplsLdpHelloAdjacencyIndex Unsigned32, + mplsLdpHelloAdjacencyHoldTimeRem TimeInterval, + mplsLdpHelloAdjacencyHoldTime Unsigned32, + mplsLdpHelloAdjacencyType INTEGER +} + +mplsLdpHelloAdjacencyIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An identifier for this specific adjacency." + ::= { mplsLdpHelloAdjacencyEntry 1 } + +mplsLdpHelloAdjacencyHoldTimeRem OBJECT-TYPE + SYNTAX TimeInterval + UNITS "seconds" + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "If the value of this object is 65535, + this means that the hold time is infinite + (i.e., wait forever). + + Otherwise, the time remaining for + this Hello Adjacency to receive its + next Hello Message. + + This interval will change when the 'next' + Hello Message which corresponds to this + Hello Adjacency is received unless it + is infinite." + ::= { mplsLdpHelloAdjacencyEntry 2 } + +mplsLdpHelloAdjacencyHoldTime OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Hello hold time which is negotiated between + the Entity and the Peer. The entity associated + with this Hello Adjacency issues a proposed + Hello Hold Time value in the + mplsLdpEntityHelloHoldTimer object. The peer + also proposes a value and this object represents + the negotiated value. + + A value of 0 means the default, + which is 15 seconds for Link Hellos + and 45 seconds for Targeted Hellos. + A value of 65535 indicates an + infinite hold time." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.2 Hello Message" + ::= { mplsLdpHelloAdjacencyEntry 3 } + +mplsLdpHelloAdjacencyType OBJECT-TYPE + SYNTAX INTEGER { + link(1), + targeted(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This adjacency is the result of a 'link' + hello if the value of this object is link(1). + + + + Otherwise, it is a result of a 'targeted' + hello, targeted(2)." + ::= { mplsLdpHelloAdjacencyEntry 4 } + +-- +-- Session Label (LSP) Mapping to LSR MIB's +-- In Segment LIB Information. +-- +-- +-- NOTE: the next 2 tables map to the +-- MPLS-LSR-STD-MIB's MplsInSegmentTable +-- and MplsOutSegmentTable. The +-- cross-connect (XC) information is not +-- represented here as it can be gleaned +-- from the MPLS-LSR-STD-MIB. +-- + +mplsInSegmentLdpLspTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsInSegmentLdpLspEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of LDP LSP's which + map to the mplsInSegmentTable in the + MPLS-LSR-STD-MIB module." + ::= { mplsLdpSessionObjects 6 } + +mplsInSegmentLdpLspEntry OBJECT-TYPE + SYNTAX MplsInSegmentLdpLspEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents information + on a single LDP LSP which is represented by + a session's index triple (mplsLdpEntityLdpId, + mplsLdpEntityIndex, mplsLdpPeerLdpId) AND the + index for the mplsInSegmentTable + (mplsInSegmentLdpLspLabelIndex) from the + MPLS-LSR-STD-MIB. + + The information contained in a row is read-only." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId, + mplsInSegmentLdpLspIndex + } + ::= { mplsInSegmentLdpLspTable 1 } + + + + +MplsInSegmentLdpLspEntry ::= SEQUENCE { + mplsInSegmentLdpLspIndex MplsIndexType, + mplsInSegmentLdpLspLabelType MplsLdpLabelType, + mplsInSegmentLdpLspType MplsLspType +} + +mplsInSegmentLdpLspIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This contains the same value as the + mplsInSegmentIndex in the + MPLS-LSR-STD-MIB's mplsInSegmentTable." + ::= { mplsInSegmentLdpLspEntry 1 } + +mplsInSegmentLdpLspLabelType OBJECT-TYPE + SYNTAX MplsLdpLabelType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Layer 2 Label Type." + ::= { mplsInSegmentLdpLspEntry 2 } + +mplsInSegmentLdpLspType OBJECT-TYPE + SYNTAX MplsLspType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of LSP connection." + ::= { mplsInSegmentLdpLspEntry 3 } + +-- +-- Session Label (LSP) Mapping to LSR MIB's +-- Out Segment LIB Information. +-- + +mplsOutSegmentLdpLspTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsOutSegmentLdpLspEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of LDP LSP's which + map to the mplsOutSegmentTable in the + MPLS-LSR-STD-MIB." + ::= { mplsLdpSessionObjects 7 } + +mplsOutSegmentLdpLspEntry OBJECT-TYPE + + + + SYNTAX MplsOutSegmentLdpLspEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents information + on a single LDP LSP which is represented by + a session's index triple (mplsLdpEntityLdpId, + mplsLdpEntityIndex, mplsLdpPeerLdpId) AND the + index (mplsOutSegmentLdpLspIndex) + for the mplsOutSegmentTable. + + The information contained in a row is read-only." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId, + mplsOutSegmentLdpLspIndex + } + ::= { mplsOutSegmentLdpLspTable 1 } + +MplsOutSegmentLdpLspEntry ::= SEQUENCE { + mplsOutSegmentLdpLspIndex MplsIndexType, + mplsOutSegmentLdpLspLabelType MplsLdpLabelType, + mplsOutSegmentLdpLspType MplsLspType +} + +mplsOutSegmentLdpLspIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This contains the same value as the + mplsOutSegmentIndex in the + MPLS-LSR-STD-MIB's mplsOutSegmentTable." + ::= { mplsOutSegmentLdpLspEntry 1 } + +mplsOutSegmentLdpLspLabelType OBJECT-TYPE + SYNTAX MplsLdpLabelType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Layer 2 Label Type." + ::= { mplsOutSegmentLdpLspEntry 2 } + +mplsOutSegmentLdpLspType OBJECT-TYPE + SYNTAX MplsLspType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "The type of LSP connection." + ::= { mplsOutSegmentLdpLspEntry 3 } + +-- +-- Mpls FEC Table +-- + +mplsFecObjects OBJECT IDENTIFIER ::= + { mplsLdpSessionObjects 8 } + +mplsFecLastChange OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time of the most + recent addition/deletion of an entry + to/from the mplsLdpFectTable or + the most recent change in values to any objects + in the mplsLdpFecTable. + + If no such changes have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." + ::= { mplsFecObjects 1 } + +mplsFecIndexNext OBJECT-TYPE + SYNTAX IndexIntegerNextFree + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains an appropriate value to + be used for mplsFecIndex when creating + entries in the mplsFecTable. The value + 0 indicates that no unassigned entries are + available." + ::= { mplsFecObjects 2 } + +mplsFecTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsFecEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table represents the FEC + (Forwarding Equivalence Class) + Information associated with an LSP." + ::= { mplsFecObjects 3 } + + + + +mplsFecEntry OBJECT-TYPE + SYNTAX MplsFecEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each row represents a single FEC Element." + INDEX { mplsFecIndex } + ::= { mplsFecTable 1 } + +MplsFecEntry ::= SEQUENCE { + mplsFecIndex IndexInteger, + mplsFecType INTEGER, + mplsFecAddrType InetAddressType, + mplsFecAddr InetAddress, + mplsFecAddrPrefixLength InetAddressPrefixLength, + mplsFecStorageType StorageType, + mplsFecRowStatus RowStatus +} + +mplsFecIndex OBJECT-TYPE + SYNTAX IndexInteger + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index which uniquely identifies this entry." + ::= { mplsFecEntry 1 } + +mplsFecType OBJECT-TYPE + SYNTAX INTEGER { + prefix(1), + hostAddress(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of the FEC. If the value of this object + is 'prefix(1)' then the FEC type described by this + row is an address prefix. + + If the value of this object is 'hostAddress(2)' then + the FEC type described by this row is a host address." + REFERENCE + "RFC3036, Section 3.4.1. FEC TLV." + ::= { mplsFecEntry 2 } + +mplsFecAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + + + + STATUS current + DESCRIPTION + "The value of this object is the type of the + Internet address. The value of this object, + decides how the value of the mplsFecAddr object + is interpreted." + REFERENCE + "RFC3036, Section 3.4.1. FEC TLV." + ::= { mplsFecEntry 4 } + +mplsFecAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value of this object is interpreted based + on the value of the 'mplsFecAddrType' object. + + This address is then further interpretted as + an being used with the address prefix, + or as the host address. This further interpretation + is indicated by the 'mplsFecType' object. + In other words, the FEC element is populated + according to the Prefix FEC Element value encoding, or + the Host Address FEC Element encoding." + REFERENCE + "RFC3036, Section 3.4.1 FEC TLV." + ::= { mplsFecEntry 5 } + +mplsFecAddrPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the value of the 'mplsFecType' is 'hostAddress(2)' + then this object is undefined. + + If the value of 'mplsFecType' is 'prefix(1)' + then the value of this object is the length in + bits of the address prefix represented by + 'mplsFecAddr', or zero. If the value of this + object is zero, this indicates that the + prefix matches all addresses. In this case the + address prefix MUST also be zero (i.e., 'mplsFecAddr' + should have the value of zero.)" + REFERENCE + "RFC3036, Section 3.4.1. FEC TLV." + DEFVAL { 0 } + + + + ::= { mplsFecEntry 3 } + +mplsFecStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this conceptual row. + Conceptual rows having the value 'permanent(4)' + need not allow write-access to any columnar + objects in the row." + DEFVAL { nonVolatile } + ::= { mplsFecEntry 6 } + +mplsFecRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this conceptual row. If the value of this + object is 'active(1)', then none of the writable objects + of this entry can be modified, except to set this object + to 'destroy(6)'. + + NOTE: if this row is being referenced by any entry in + the mplsLdpLspFecTable, then a request to destroy + this row, will result in an inconsistentValue error." + ::= { mplsFecEntry 7 } + +-- +-- LDP LSP FEC Table +-- + +mplsLdpLspFecLastChange OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time of the most + recent addition/deletion of an entry + to/from the mplsLdpLspFecTable or + the most recent change in values to any objects in the + mplsLdpLspFecTable. + + If no such changes have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." + ::= { mplsLdpSessionObjects 9 } + + + +mplsLdpLspFecTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpLspFecEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table which shows the relationship between + LDP LSPs and FECs. Each row represents + a single LDP LSP to FEC association." + ::= { mplsLdpSessionObjects 10 } + +mplsLdpLspFecEntry OBJECT-TYPE + SYNTAX MplsLdpLspFecEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry represents a LDP LSP + to FEC association." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId, + mplsLdpLspFecSegment, + mplsLdpLspFecSegmentIndex, + mplsLdpLspFecIndex + } + ::= { mplsLdpLspFecTable 1 } + +MplsLdpLspFecEntry ::= SEQUENCE { + mplsLdpLspFecSegment INTEGER, + mplsLdpLspFecSegmentIndex MplsIndexType, + mplsLdpLspFecIndex IndexInteger, + mplsLdpLspFecStorageType StorageType, + mplsLdpLspFecRowStatus RowStatus +} + +mplsLdpLspFecSegment OBJECT-TYPE + SYNTAX INTEGER { + inSegment(1), + outSegment(2) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "If the value is inSegment(1), then this + indicates that the following index, + mplsLdpLspFecSegmentIndex, contains the same + value as the mplsInSegmentLdpLspIndex. + + Otherwise, if the value of this object is + + + + outSegment(2), then this + indicates that following index, + mplsLdpLspFecSegmentIndex, contains the same + value as the mplsOutSegmentLdpLspIndex." + ::= { mplsLdpLspFecEntry 1 } + +mplsLdpLspFecSegmentIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This index is interpretted by using the value + of the mplsLdpLspFecSegment. + + If the mplsLdpLspFecSegment is inSegment(1), + then this index has the same value as + mplsInSegmentLdpLspIndex. + + If the mplsLdpLspFecSegment is outSegment(2), + then this index has the same value as + mplsOutSegmentLdpLspIndex." + ::= { mplsLdpLspFecEntry 2 } + +mplsLdpLspFecIndex OBJECT-TYPE + SYNTAX IndexInteger + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This index identifies the FEC entry in the + mplsFecTable associated with this session. + In other words, the value of this index + is the same as the value of the mplsFecIndex + that denotes the FEC associated with this + Session." + ::= { mplsLdpLspFecEntry 3 } + +mplsLdpLspFecStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this conceptual row. + Conceptual rows having the value 'permanent(4)' + need not allow write-access to any columnar + objects in the row." + DEFVAL { nonVolatile } + ::= { mplsLdpLspFecEntry 4 } + + + + +mplsLdpLspFecRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this conceptual row. If the + value of this object is 'active(1)', then + none of the writable objects of this entry + can be modified. + + The Agent should delete this row when + the session ceases to exist. If an + operator wants to associate the session with + a different FEC, the recommended + procedure is (as described in detail in the section + entitled, 'Changing Values After Session + Establishment', and again described in the + DESCRIPTION clause of the + mplsLdpEntityAdminStatus object) + is to set the mplsLdpEntityAdminStatus to + down, thereby explicitly causing a session + to be torn down. This will also + cause this entry to be deleted. + + Then, set the mplsLdpEntityAdminStatus + to enable which enables a new session to be initiated. + Once the session is initiated, an entry may be + added to this table to associate the new session + with a FEC." + ::= { mplsLdpLspFecEntry 5 } + +-- +-- Address Message/Address Withdraw Message Information +-- +-- This information is associated with a specific Session +-- because Label Address Messages are sent after session +-- initialization has taken place. +-- + +mplsLdpSessionPeerAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpSessionPeerAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table 'extends' the mplsLdpSessionTable. + This table is used to store Label Address Information + from Label Address Messages received by this LSR from + Peers. This table is read-only and should be updated + + + + when Label Withdraw Address Messages are received, i.e., + Rows should be deleted as appropriate. + + NOTE: since more than one address may be contained + in a Label Address Message, this table 'sparse augments', + the mplsLdpSessionTable's information." + ::= { mplsLdpSessionObjects 11 } + +mplsLdpSessionPeerAddrEntry OBJECT-TYPE + SYNTAX MplsLdpSessionPeerAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents information on + a session's single next hop address which was + advertised in an Address Message from the LDP peer. + The information contained in a row is read-only." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId, + mplsLdpSessionPeerAddrIndex + } + ::= { mplsLdpSessionPeerAddrTable 1 } + +MplsLdpSessionPeerAddrEntry ::= SEQUENCE { + mplsLdpSessionPeerAddrIndex Unsigned32, + mplsLdpSessionPeerNextHopAddrType InetAddressType, + mplsLdpSessionPeerNextHopAddr InetAddress +} + +mplsLdpSessionPeerAddrIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An index which uniquely identifies this entry within + a given session." + ::= { mplsLdpSessionPeerAddrEntry 1 } + +mplsLdpSessionPeerNextHopAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The internetwork layer address type of this Next Hop + Address as specified in the Label Address Message + associated with this Session. The value of this + object indicates how to interpret the value of + + + + mplsLdpSessionPeerNextHopAddr." + ::= { mplsLdpSessionPeerAddrEntry 2 } + +mplsLdpSessionPeerNextHopAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The next hop address. The type of this address + is specified by the value of the + mplsLdpSessionPeerNextHopAddrType." + REFERENCE + "RFC3036, Section 2.7. LDP Identifiers + and Next Hop Addresses" + ::= { mplsLdpSessionPeerAddrEntry 3 } + +--- +--- Notifications +--- + +mplsLdpInitSessionThresholdExceeded NOTIFICATION-TYPE + OBJECTS { + mplsLdpEntityInitSessionThreshold + } + STATUS current + DESCRIPTION + "This notification is generated when the value of + the 'mplsLdpEntityInitSessionThreshold' object + is not zero, and the number of Session + Initialization messages exceeds the value + of the 'mplsLdpEntityInitSessionThreshold' object." + ::= { mplsLdpNotifications 1 } + +mplsLdpPathVectorLimitMismatch NOTIFICATION-TYPE + OBJECTS { + mplsLdpEntityPathVectorLimit, + mplsLdpPeerPathVectorLimit + } + STATUS current + DESCRIPTION + "This notification is sent when the + 'mplsLdpEntityPathVectorLimit' does NOT match + the value of the 'mplsLdpPeerPathVectorLimit' for + a specific Entity." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3." + ::= { mplsLdpNotifications 2 } + + + + +mplsLdpSessionUp NOTIFICATION-TYPE + OBJECTS { + mplsLdpSessionState, + mplsLdpSessionDiscontinuityTime, + mplsLdpSessionStatsUnknownMesTypeErrors, + mplsLdpSessionStatsUnknownTlvErrors + } + STATUS current + DESCRIPTION + "If this notification is sent when the + value of 'mplsLdpSessionState' enters + the 'operational(5)' state." + ::= { mplsLdpNotifications 3 } + +mplsLdpSessionDown NOTIFICATION-TYPE + OBJECTS { + mplsLdpSessionState, + mplsLdpSessionDiscontinuityTime, + mplsLdpSessionStatsUnknownMesTypeErrors, + mplsLdpSessionStatsUnknownTlvErrors + + } + STATUS current + DESCRIPTION + "This notification is sent when the + value of 'mplsLdpSessionState' leaves + the 'operational(5)' state." + ::= { mplsLdpNotifications 4 } + +--**************************************************************** +-- Module Conformance Statement +--**************************************************************** + +mplsLdpGroups + OBJECT IDENTIFIER ::= { mplsLdpConformance 1 } + +mplsLdpCompliances + OBJECT IDENTIFIER ::= { mplsLdpConformance 2 } + +-- +-- Full Compliance +-- + +mplsLdpModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The Module is implemented with support + for read-create and read-write. In other + + + + words, both monitoring and configuration + are available when using this MODULE-COMPLIANCE." + + MODULE -- this module + MANDATORY-GROUPS { mplsLdpGeneralGroup, + mplsLdpNotificationsGroup + } + GROUP mplsLdpLspGroup + DESCRIPTION + "This group must be supported if the LSR MIB is + implemented, specifically the mplsInSegmentTable, + the mplsOutSegmentTable or the mplsXCTable." + + OBJECT mplsLdpEntityTargetPeerAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + DESCRIPTION + "An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + OBJECT mplsLdpEntityTargetPeerAddr + SYNTAX InetAddress (SIZE(0|4|16)) + DESCRIPTION + "An implementation is only required to support IPv4 and + globally unique IPv6 addresses." + + OBJECT mplsLdpEntityRowStatus + SYNTAX RowStatus { active(1) } + WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } + DESCRIPTION + "Support for createAndWait and notInService is not + required." + + OBJECT mplsFecAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + DESCRIPTION + "An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + OBJECT mplsFecAddr + SYNTAX InetAddress (SIZE(0|4|16)) + DESCRIPTION + "An implementation is only required to support IPv4 and + globally unique IPv6 addresses." + + OBJECT mplsFecRowStatus + SYNTAX RowStatus { active(1) } + WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } + DESCRIPTION + + + + "Support for createAndWait and notInService is not + required." + + OBJECT mplsLdpLspFecRowStatus + SYNTAX RowStatus { active(1) } + WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } + DESCRIPTION + "Support for createAndWait and notInService is not + required." + + OBJECT mplsLdpSessionPeerNextHopAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + DESCRIPTION + "An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + OBJECT mplsLdpSessionPeerNextHopAddr + SYNTAX InetAddress (SIZE(0|4|16)) + DESCRIPTION + "An implementation is only required to support IPv4 + and globally unique IPv6 addresses." + + ::= { mplsLdpCompliances 1 } + +-- +-- Read-Only Compliance +-- + +mplsLdpModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The Module is implemented with support + for read-only. In other words, only monitoring + is available by implementing this MODULE-COMPLIANCE." + + MODULE -- this module + MANDATORY-GROUPS { mplsLdpGeneralGroup, + mplsLdpNotificationsGroup + } + + GROUP mplsLdpLspGroup + DESCRIPTION + "This group must be supported if the LSR MIB is + implemented, specifically the mplsInSegmentTable, + the mplsOutSegmentTable or the mplsXCTable." + + OBJECT mplsLdpEntityProtocolVersion + MIN-ACCESS read-only + + + + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityAdminStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityTcpPort + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityUdpDscPort + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityMaxPduLength + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityKeepAliveHoldTimer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityHelloHoldTimer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityInitSessionThreshold + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityLabelDistMethod + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityLabelRetentionMode + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + OBJECT mplsLdpEntityPathVectorLimit + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityHopCountLimit + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityTransportAddrKind + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityTargetPeer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityTargetPeerAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. + An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + OBJECT mplsLdpEntityTargetPeerAddr + SYNTAX InetAddress (SIZE(0|4|16)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. + An implementation is only required to support IPv4 and + globally unique IPv6 addresses." + + OBJECT mplsLdpEntityLabelType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityRowStatus + SYNTAX RowStatus { active(1) } + + + + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and active is the + only status that needs to be supported." + + OBJECT mplsFecType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFecAddrPrefixLength + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFecAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. + An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + OBJECT mplsFecAddr + SYNTAX InetAddress (SIZE(0|4|16)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. + An implementation is only required to support IPv4 and + globally unique IPv6 addresses." + + OBJECT mplsFecStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFecRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and active is the + only status that needs to be supported." + + OBJECT mplsLdpLspFecStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + OBJECT mplsLdpLspFecRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and active is the + only status that needs to be supported." + + OBJECT mplsLdpSessionPeerNextHopAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + DESCRIPTION + "An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + + OBJECT mplsLdpSessionPeerNextHopAddr + SYNTAX InetAddress (SIZE(0|4|16)) + DESCRIPTION + "An implementation is only required to support IPv4 + and globally unique IPv6 addresses." + + ::= { mplsLdpCompliances 2 } + +-- units of conformance + +mplsLdpGeneralGroup OBJECT-GROUP + OBJECTS { + mplsLdpLsrId, + mplsLdpLsrLoopDetectionCapable, + mplsLdpEntityLastChange, + mplsLdpEntityIndexNext, + mplsLdpEntityProtocolVersion, + mplsLdpEntityAdminStatus, + mplsLdpEntityOperStatus, + mplsLdpEntityTcpPort, + mplsLdpEntityUdpDscPort, + mplsLdpEntityMaxPduLength, + mplsLdpEntityKeepAliveHoldTimer, + mplsLdpEntityHelloHoldTimer, + mplsLdpEntityInitSessionThreshold, + mplsLdpEntityLabelDistMethod, + mplsLdpEntityLabelRetentionMode, + mplsLdpEntityPathVectorLimit, + mplsLdpEntityHopCountLimit, + mplsLdpEntityTransportAddrKind, + mplsLdpEntityTargetPeer, + mplsLdpEntityTargetPeerAddrType, + mplsLdpEntityTargetPeerAddr, + mplsLdpEntityLabelType, + + + + mplsLdpEntityDiscontinuityTime, + mplsLdpEntityStorageType, + mplsLdpEntityRowStatus, + mplsLdpEntityStatsSessionAttempts, + mplsLdpEntityStatsSessionRejectedNoHelloErrors, + mplsLdpEntityStatsSessionRejectedAdErrors, + mplsLdpEntityStatsSessionRejectedMaxPduErrors, + mplsLdpEntityStatsSessionRejectedLRErrors, + mplsLdpEntityStatsBadLdpIdentifierErrors, + mplsLdpEntityStatsBadPduLengthErrors, + mplsLdpEntityStatsBadMessageLengthErrors, + mplsLdpEntityStatsBadTlvLengthErrors, + mplsLdpEntityStatsMalformedTlvValueErrors, + mplsLdpEntityStatsKeepAliveTimerExpErrors, + mplsLdpEntityStatsShutdownReceivedNotifications, + mplsLdpEntityStatsShutdownSentNotifications, + mplsLdpPeerLastChange, + mplsLdpPeerLabelDistMethod, + mplsLdpPeerPathVectorLimit, + mplsLdpPeerTransportAddrType, + mplsLdpPeerTransportAddr, + mplsLdpHelloAdjacencyHoldTimeRem, + mplsLdpHelloAdjacencyHoldTime, + mplsLdpHelloAdjacencyType, + mplsLdpSessionStateLastChange, + mplsLdpSessionState, + mplsLdpSessionRole, + mplsLdpSessionProtocolVersion, + mplsLdpSessionKeepAliveHoldTimeRem, + mplsLdpSessionKeepAliveTime, + mplsLdpSessionMaxPduLength, + mplsLdpSessionDiscontinuityTime, + mplsLdpSessionStatsUnknownMesTypeErrors, + mplsLdpSessionStatsUnknownTlvErrors, + mplsLdpSessionPeerNextHopAddrType, + mplsLdpSessionPeerNextHopAddr, + mplsFecLastChange, + mplsFecIndexNext, + mplsFecType, + mplsFecAddrType, + mplsFecAddr, + mplsFecAddrPrefixLength, + mplsFecStorageType, + mplsFecRowStatus + } + STATUS current + DESCRIPTION + "Objects that apply to all MPLS LDP implementations." + + + + ::= { mplsLdpGroups 1 } + +mplsLdpLspGroup OBJECT-GROUP + OBJECTS { + mplsInSegmentLdpLspLabelType, + mplsInSegmentLdpLspType, + mplsOutSegmentLdpLspLabelType, + mplsOutSegmentLdpLspType, + mplsLdpLspFecLastChange, + mplsLdpLspFecStorageType, + mplsLdpLspFecRowStatus + } + STATUS current + DESCRIPTION + "These objects are for LDP implementations + which interface to the Label Information Base (LIB) + in the MPLS-LSR-STD-MIB. The LIB is + represented in the mplsInSegmentTable, + mplsOutSegmentTable and mplsXCTable." + ::= { mplsLdpGroups 2 } + +mplsLdpNotificationsGroup NOTIFICATION-GROUP + NOTIFICATIONS { mplsLdpInitSessionThresholdExceeded, + mplsLdpPathVectorLimitMismatch, + mplsLdpSessionUp, + mplsLdpSessionDown + } + STATUS current + DESCRIPTION + "The notification for an MPLS LDP implementation." + ::= { mplsLdpGroups 3 } + +END \ No newline at end of file diff --git a/mibs/MPLS-LSR-STD-MIB.txt b/mibs/MPLS-LSR-STD-MIB.txt new file mode 100644 index 00000000..c0c8d2de --- /dev/null +++ b/mibs/MPLS-LSR-STD-MIB.txt @@ -0,0 +1,2232 @@ +MPLS-LSR-STD-MIB DEFINITIONS ::= BEGIN +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, + Integer32, Counter32, Unsigned32, Counter64, Gauge32, + zeroDotZero + FROM SNMPv2-SMI -- [RFC2578] + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF -- [RFC2580] + TruthValue, RowStatus, StorageType, RowPointer, + TimeStamp, TEXTUAL-CONVENTION + FROM SNMPv2-TC -- [RFC2579] + InterfaceIndexOrZero, ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + FROM IF-MIB -- [RFC2863] + mplsStdMIB, MplsLSPID, MplsLabel, MplsBitRate, + MplsOwner + FROM MPLS-TC-STD-MIB -- [RFC3811] + AddressFamilyNumbers + FROM IANA-ADDRESS-FAMILY-NUMBERS-MIB -- [IANAFamily] + InetAddress, InetAddressType + FROM INET-ADDRESS-MIB -- [RFC3291] + ; + +mplsLsrStdMIB MODULE-IDENTITY + LAST-UPDATED "200406030000Z" -- June 3, 2004 + ORGANIZATION "Multiprotocol Label Switching (MPLS) Working Group" + CONTACT-INFO + " Cheenu Srinivasan + Bloomberg L.P. + Email: cheenu@bloomberg.net + + Arun Viswanathan + Force10 Networks, Inc. + Email: arunv@force10networks.com + + Thomas D. Nadeau + Cisco Systems, Inc. + Email: tnadeau@cisco.com + + Comments about this document should be emailed + directly to the MPLS working group mailing list at + mpls@uu.net." + + DESCRIPTION + "This MIB module contains managed object definitions for + the Multiprotocol Label Switching (MPLS) Router as + + + + defined in: Rosen, E., Viswanathan, A., and R. + Callon, Multiprotocol Label Switching Architecture, + RFC 3031, January 2001. + + Copyright (C) The Internet Society (2004). The + initial version of this MIB module was published + in RFC 3812. For full legal notices see the RFC + itself or see: + http://www.ietf.org/copyrights/ianamib.html" + + -- Revision history. + REVISION + "200406030000Z" -- June 3, 2004 + DESCRIPTION + "Initial revision, published as part of RFC 3813." + + ::= { mplsStdMIB 2 } + +-- TEXTUAL-CONVENTIONs + +MplsIndexType ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "This is an octet string that can be used as a table + index in cases where a large addressable space is + required such as on an LSR where many applications + may be provisioning labels. + + Note that the string containing the single octet with + the value 0x00 is a reserved value used to represent + special cases. When this TEXTUAL-CONVENTION is used + as the SYNTAX of an object, the DESCRIPTION clause + MUST specify if this special value is valid and if so + what the special meaning is. + + In systems that provide write access to the MPLS-LSR-STD + MIB, mplsIndexType SHOULD be used as a simple multi-digit + integer encoded as an octet string. + No further overloading of the meaning of an index SHOULD + be made. + + In systems that do not offer write access to the MPLS-LSR-STD + MIB, the mplsIndexType may contain implicit formatting that is + specific to the implementation to convey additional + information such as interface index, physical card or + device, or application id. The interpretation of this + additional formatting is implementation dependent and + not covered in this document. Such formatting MUST + + + + NOT impact the basic functionality of read-only access + to the MPLS-LSR-STD MIB by management applications that are + not aware of the formatting rules." + SYNTAX OCTET STRING (SIZE(1..24)) + +MplsIndexNextType ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "When a MIB module is used for configuration, an object with + this SYNTAX always contains a legal value (a non-zero-length + string) for an index that is not currently used in the relevant + table. The Command Generator (Network Management Application) + reads this variable and uses the (non-zero-length string) + value read when creating a new row with an SNMP SET. + + When the SET is performed, the Command Responder (agent) must + determine whether the value is indeed still unused; Two Network + Management Applications may attempt to create a row + (configuration entry) simultaneously and use the same value. If + it is currently unused, the SET succeeds and the Command + Responder (agent) changes the value of this object, according + to an implementation-specific algorithm. If the value is in + use, however, the SET fails. The Network Management + Application must then re-read this variable to obtain a new + usable value. + + Note that the string containing the single octet with + the value 0x00 is a reserved value used to represent + the special case where no additional indexes can be + provisioned, or in systems that do not offer + write access, objects defined using this TEXTUAL-CONVENTION + MUST return the string containing the single + octet with the value 0x00." + SYNTAX OCTET STRING (SIZE(1..24)) + +-- Top level components of this MIB module. + +-- Notifications +mplsLsrNotifications OBJECT IDENTIFIER ::= { mplsLsrStdMIB 0 } + +-- Tables, Scalars +mplsLsrObjects OBJECT IDENTIFIER ::= { mplsLsrStdMIB 1 } + +-- Conformance +mplsLsrConformance OBJECT IDENTIFIER ::= { mplsLsrStdMIB 2 } + +-- MPLS Interface Table. +mplsInterfaceTable OBJECT-TYPE + + + + SYNTAX SEQUENCE OF MplsInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table specifies per-interface MPLS capability + and associated information." + ::= { mplsLsrObjects 1 } + +mplsInterfaceEntry OBJECT-TYPE + SYNTAX MplsInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A conceptual row in this table is created + automatically by an LSR for every interface capable + of supporting MPLS and which is configured to do so. + A conceptual row in this table will exist if and only if + a corresponding entry in ifTable exists with ifType = + mpls(166). If this associated entry in ifTable is + operationally disabled (thus removing MPLS + capabilities on that interface), the corresponding + entry in this table MUST be deleted shortly thereafter. + An conceptual row with index 0 is created if the LSR + supports per-platform labels. This conceptual row + represents the per-platform label space and contains + parameters that apply to all interfaces that participate + in the per-platform label space. Other conceptual rows + in this table represent MPLS interfaces that may + participate in either the per-platform or per- + interface label spaces, or both. Implementations + that either only support per-platform labels, + or have only them configured, may choose to return + just the mplsInterfaceEntry of 0 and not return + the other rows. This will greatly reduce the number + of objects returned. Further information about label + space participation of an interface is provided in + the DESCRIPTION clause of + mplsInterfaceLabelParticipationType." + INDEX { mplsInterfaceIndex } + ::= { mplsInterfaceTable 1 } + +MplsInterfaceEntry ::= SEQUENCE { + mplsInterfaceIndex InterfaceIndexOrZero, + mplsInterfaceLabelMinIn MplsLabel, + mplsInterfaceLabelMaxIn MplsLabel, + mplsInterfaceLabelMinOut MplsLabel, + mplsInterfaceLabelMaxOut MplsLabel, + mplsInterfaceTotalBandwidth MplsBitRate, + + + + mplsInterfaceAvailableBandwidth MplsBitRate, + mplsInterfaceLabelParticipationType BITS +} + +mplsInterfaceIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This is a unique index for an entry in the + MplsInterfaceTable. A non-zero index for an + entry indicates the ifIndex for the corresponding + interface entry of the MPLS-layer in the ifTable. + The entry with index 0 represents the per-platform + label space and contains parameters that apply to all + interfaces that participate in the per-platform label + space. Other entries defined in this table represent + additional MPLS interfaces that may participate in either + the per-platform or per-interface label spaces, or both." + REFERENCE + "RFC 2863 - The Interfaces Group MIB, McCloghrie, K., + and F. Kastenholtz, June 2000" + ::= { mplsInterfaceEntry 1 } + +mplsInterfaceLabelMinIn OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This is the minimum value of an MPLS label that this + LSR is willing to receive on this interface." + ::= { mplsInterfaceEntry 2 } + +mplsInterfaceLabelMaxIn OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This is the maximum value of an MPLS label that this + LSR is willing to receive on this interface." + ::= { mplsInterfaceEntry 3 } + +mplsInterfaceLabelMinOut OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This is the minimum value of an MPLS label that this + + + + LSR is willing to send on this interface." + ::= { mplsInterfaceEntry 4 } + +mplsInterfaceLabelMaxOut OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This is the maximum value of an MPLS label that this + LSR is willing to send on this interface." + ::= { mplsInterfaceEntry 5 } + +mplsInterfaceTotalBandwidth OBJECT-TYPE + SYNTAX MplsBitRate + UNITS "kilobits per second" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value indicates the total amount of usable + bandwidth on this interface and is specified in + kilobits per second (Kbps). This variable is not + applicable when applied to the interface with index + 0. When this value cannot be measured, this value + should contain the nominal bandwidth." +::= { mplsInterfaceEntry 6 } + +mplsInterfaceAvailableBandwidth OBJECT-TYPE + SYNTAX MplsBitRate + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value indicates the total amount of available + bandwidth available on this interface and is + specified in kilobits per second (Kbps). This value + is calculated as the difference between the amount + of bandwidth currently in use and that specified in + mplsInterfaceTotalBandwidth. This variable is not + applicable when applied to the interface with index + 0. When this value cannot be measured, this value + should contain the nominal bandwidth." +::= { mplsInterfaceEntry 7 } + +mplsInterfaceLabelParticipationType OBJECT-TYPE + SYNTAX BITS { + perPlatform (0), + perInterface (1) + } + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "If the value of the mplsInterfaceIndex for this + entry is zero, then this entry corresponds to the + per-platform label space for all interfaces configured + to use that label space. In this case the perPlatform(0) + bit MUST be set; the perInterface(1) bit is meaningless + and MUST be ignored. + + The remainder of this description applies to entries + with a non-zero value of mplsInterfaceIndex. + + If the perInterface(1) bit is set then the value of + mplsInterfaceLabelMinIn, mplsInterfaceLabelMaxIn, + mplsInterfaceLabelMinOut, and + mplsInterfaceLabelMaxOut for this entry reflect the + label ranges for this interface. + + If only the perPlatform(0) bit is set, then the value of + mplsInterfaceLabelMinIn, mplsInterfaceLabelMaxIn, + mplsInterfaceLabelMinOut, and + mplsInterfaceLabelMaxOut for this entry MUST be + identical to the instance of these objects with + index 0. These objects may only vary from the entry + with index 0 if both the perPlatform(0) and perInterface(1) + bits are set. + + In all cases, at a minimum one of the perPlatform(0) or + perInterface(1) bits MUST be set to indicate that + at least one label space is in use by this interface. In + all cases, agents MUST ensure that label ranges are + specified consistently and MUST return an + inconsistentValue error when they do not." + REFERENCE + "Rosen, E., Viswanathan, A., and R. Callon, + Multiprotocol Label Switching Architecture, RFC + 3031, January 2001." +::= { mplsInterfaceEntry 8 } + +-- End of mplsInterfaceTable + + +-- MPLS Interface Performance Table. + +mplsInterfacePerfTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsInterfacePerfEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "This table provides MPLS performance information on + a per-interface basis." + ::= { mplsLsrObjects 2 } + +mplsInterfacePerfEntry OBJECT-TYPE + SYNTAX MplsInterfacePerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the LSR for + every interface capable of supporting MPLS. Its is + an extension to the mplsInterfaceEntry table. + Note that the discontinuity behavior of entries in + this table MUST be based on the corresponding + ifEntry's ifDiscontinuityTime." + AUGMENTS { mplsInterfaceEntry } + ::= { mplsInterfacePerfTable 1 } + +MplsInterfacePerfEntry ::= SEQUENCE { + -- incoming direction + mplsInterfacePerfInLabelsInUse Gauge32, + mplsInterfacePerfInLabelLookupFailures Counter32, + + -- outgoing direction + mplsInterfacePerfOutLabelsInUse Gauge32, + mplsInterfacePerfOutFragmentedPkts Counter32 + } + +mplsInterfacePerfInLabelsInUse OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of labels that are in + use at this point in time on this interface in the + incoming direction. If the interface participates in + only the per-platform label space, then the value of + the instance of this object MUST be identical to + the value of the instance with index 0. If the + interface participates in the per-interface label + space, then the instance of this object MUST + represent the number of per-interface labels that + are in use on this interface." + ::= { mplsInterfacePerfEntry 1 } + +mplsInterfacePerfInLabelLookupFailures OBJECT-TYPE + SYNTAX Counter32 + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of labeled packets + that have been received on this interface and which + were discarded because there was no matching cross- + connect entry. This object MUST count on a per- + interface basis regardless of which label space the + interface participates in." + ::= { mplsInterfacePerfEntry 2 } + +mplsInterfacePerfOutLabelsInUse OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of top-most labels in + the outgoing label stacks that are in use at this + point in time on this interface. This object MUST + count on a per-interface basis regardless of which + label space the interface participates in." + ::= { mplsInterfacePerfEntry 3 } + +mplsInterfacePerfOutFragmentedPkts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of outgoing MPLS + packets that required fragmentation before + transmission on this interface. This object MUST + count on a per-interface basis regardless of which + label space the interface participates in." +::= { mplsInterfacePerfEntry 4 } + +-- mplsInterfacePerf Table end. + +mplsInSegmentIndexNext OBJECT-TYPE + SYNTAX MplsIndexNextType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the next available value to + be used for mplsInSegmentIndex when creating entries + in the mplsInSegmentTable. The special value of a + string containing the single octet 0x00 indicates + that no new entries can be created in this table. + Agents not allowing managers to create entries + + + + in this table MUST set this object to this special + value." + ::= { mplsLsrObjects 3 } + +-- in-segment table. +mplsInSegmentTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsInSegmentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains a description of the incoming MPLS + segments (labels) to an LSR and their associated parameters. + The index for this table is mplsInSegmentIndex. + The index structure of this table is specifically designed + to handle many different MPLS implementations that manage + their labels both in a distributed and centralized manner. + The table is also designed to handle existing MPLS labels + as defined in RFC3031 as well as longer ones that may + be necessary in the future. + + In cases where the label cannot fit into the + mplsInSegmentLabel object, the mplsInSegmentLabelPtr + will indicate this by being set to the first accessible + column in the appropriate extension table's row. + In this case an additional table MUST + be provided and MUST be indexed by at least the indexes + used by this table. In all other cases when the label is + represented within the mplsInSegmentLabel object, the + mplsInSegmentLabelPtr MUST be set to 0.0. Due to the + fact that MPLS labels may not exceed 24 bits, the + mplsInSegmentLabelPtr object is only a provision for + future-proofing the MIB module. Thus, the definition + of any extension tables is beyond the scope of this + MIB module." + ::= { mplsLsrObjects 4 } + +mplsInSegmentEntry OBJECT-TYPE + SYNTAX MplsInSegmentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents one incoming + segment as is represented in an LSR's LFIB. + An entry can be created by a network + administrator or an SNMP agent, or an MPLS signaling + protocol. The creator of the entry is denoted by + mplsInSegmentOwner. + + + + + The value of mplsInSegmentRowStatus cannot be active(1) + unless the ifTable entry corresponding to + mplsInSegmentInterface exists. An entry in this table + must match any incoming packets, and indicates an + instance of mplsXCEntry based on which forwarding + and/or switching actions are taken." + INDEX { mplsInSegmentIndex } + ::= { mplsInSegmentTable 1 } + +MplsInSegmentEntry ::= SEQUENCE { + mplsInSegmentIndex MplsIndexType, + mplsInSegmentInterface InterfaceIndexOrZero, + mplsInSegmentLabel MplsLabel, + mplsInSegmentLabelPtr RowPointer, + mplsInSegmentNPop Integer32, + mplsInSegmentAddrFamily AddressFamilyNumbers, + mplsInSegmentXCIndex MplsIndexType, + mplsInSegmentOwner MplsOwner , + mplsInSegmentTrafficParamPtr RowPointer, + mplsInSegmentRowStatus RowStatus, + mplsInSegmentStorageType StorageType +} + +mplsInSegmentIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index for this in-segment. The + string containing the single octet 0x00 + MUST not be used as an index." + ::= { mplsInSegmentEntry 1 } + +mplsInSegmentInterface OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object represents the + interface index for the incoming MPLS interface. A + value of zero represents all interfaces participating in + the per-platform label space. This may only be used + in cases where the incoming interface and label + are associated with the same mplsXCEntry. Specifically, + given a label and any incoming interface pair from the + per-platform label space, the outgoing label/interface + mapping remains the same. If this is not the case, + then individual entries MUST exist that + + + + can then be mapped to unique mplsXCEntries." + ::= { mplsInSegmentEntry 2 } + +mplsInSegmentLabel OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the corresponding instance of mplsInSegmentLabelPtr is + zeroDotZero then this object MUST contain the incoming label + associated with this in-segment. If not this object SHOULD + be zero and MUST be ignored." + ::= { mplsInSegmentEntry 3 } + +mplsInSegmentLabelPtr OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the label for this segment cannot be represented + fully within the mplsInSegmentLabel object, + this object MUST point to the first accessible + column of a conceptual row in an external table containing + the label. In this case, the mplsInSegmentTopLabel + object SHOULD be set to 0 and ignored. This object MUST + be set to zeroDotZero otherwise." + DEFVAL { zeroDotZero } + ::= { mplsInSegmentEntry 4 } + +mplsInSegmentNPop OBJECT-TYPE + SYNTAX Integer32 (1..2147483647) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of labels to pop from the incoming + packet. Normally only the top label is popped from + the packet and used for all switching decisions for + that packet. This is indicated by setting this + object to the default value of 1. If an LSR supports + popping of more than one label, this object MUST + be set to that number. This object cannot be modified + if mplsInSegmentRowStatus is active(1)." + DEFVAL { 1 } + ::= { mplsInSegmentEntry 5 } + +mplsInSegmentAddrFamily OBJECT-TYPE + SYNTAX AddressFamilyNumbers + MAX-ACCESS read-create + + + + STATUS current + DESCRIPTION + "The IANA address family [IANAFamily] of packets + received on this segment, which is used at an egress + LSR to deliver them to the appropriate layer 3 entity. + A value of other(0) indicates that the family type is + either unknown or undefined; this SHOULD NOT be used + at an egress LSR. This object cannot be + modified if mplsInSegmentRowStatus is active(1)." + REFERENCE + "Internet Assigned Numbers Authority (IANA), ADDRESS + FAMILY NUMBERS, (http://www.iana.org/assignments/ + address-family-numbers), for MIB see: + http://www.iana.org/assignments/ + ianaaddressfamilynumbers-mib +" + DEFVAL { other } + ::= { mplsInSegmentEntry 6 } + +mplsInSegmentXCIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Index into mplsXCTable which identifies which cross- + connect entry this segment is part of. The string + containing the single octet 0x00 indicates that this + entry is not referred to by any cross-connect entry. + When a cross-connect entry is created which this + in-segment is a part of, this object is automatically + updated to reflect the value of mplsXCIndex of that + cross-connect entry." + ::= { mplsInSegmentEntry 7 } + +mplsInSegmentOwner OBJECT-TYPE + SYNTAX MplsOwner + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Denotes the entity that created and is responsible + for managing this segment." + ::= { mplsInSegmentEntry 8 } + +mplsInSegmentTrafficParamPtr OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "This variable represents a pointer to the traffic + parameter specification for this in-segment. This + value may point at an entry in the + mplsTunnelResourceTable in the MPLS-TE-STD-MIB (RFC3812) + to indicate which traffic parameter settings for this + segment if it represents an LSP used for a TE tunnel. + + This value may optionally point at an + externally defined traffic parameter specification + table. A value of zeroDotZero indicates best-effort + treatment. By having the same value of this object, + two or more segments can indicate resource sharing + of such things as LSP queue space, etc. + + This object cannot be modified if mplsInSegmentRowStatus + is active(1). For entries in this table that + are preserved after a re-boot, the agent MUST ensure + that their integrity be preserved, or this object should + be set to 0.0 if it cannot." + DEFVAL { zeroDotZero } + ::= { mplsInSegmentEntry 9 } + +mplsInSegmentRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable is used to create, modify, and/or + delete a row in this table. When a row in this + table has a row in the active(1) state, no + objects in this row can be modified except the + mplsInSegmentRowStatus and mplsInSegmentStorageType." + ::= { mplsInSegmentEntry 10 } + +mplsInSegmentStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the storage type for this + object. The agent MUST ensure that this object's + value remains consistent with the associated + mplsXCEntry. Conceptual rows having the value + 'permanent' need not allow write-access to any + columnar objects in the row." + REFERENCE + "See RFC2579." + DEFVAL { volatile } + + + + ::= { mplsInSegmentEntry 11 } + +-- End of mplsInSegmentTable + +-- in-segment performance table. + +mplsInSegmentPerfTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsInSegmentPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains statistical information for + incoming MPLS segments to an LSR." + ::= { mplsLsrObjects 5 } + +mplsInSegmentPerfEntry OBJECT-TYPE + SYNTAX MplsInSegmentPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table contains statistical + information about one incoming segment which is + configured in the mplsInSegmentTable. The counters + in this entry should behave in a manner similar to + that of the interface. + mplsInSegmentPerfDiscontinuityTime indicates the + time of the last discontinuity in all of these + objects." + AUGMENTS { mplsInSegmentEntry } + ::= { mplsInSegmentPerfTable 1 } + +MplsInSegmentPerfEntry ::= SEQUENCE { + mplsInSegmentPerfOctets Counter32, + mplsInSegmentPerfPackets Counter32, + mplsInSegmentPerfErrors Counter32, + mplsInSegmentPerfDiscards Counter32, + + -- high capacity counter + mplsInSegmentPerfHCOctets Counter64, + + mplsInSegmentPerfDiscontinuityTime TimeStamp + } + +mplsInSegmentPerfOctets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "This value represents the total number of octets + received by this segment. It MUST be equal to the + least significant 32 bits of + mplsInSegmentPerfHCOctets + if mplsInSegmentPerfHCOctets is supported according to + the rules spelled out in RFC2863." + ::= { mplsInSegmentPerfEntry 1 } + +mplsInSegmentPerfPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Total number of packets received by this segment." + ::= { mplsInSegmentPerfEntry 2 } + +mplsInSegmentPerfErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of errored packets received on this + segment." + ::= { mplsInSegmentPerfEntry 3 } + +mplsInSegmentPerfDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of labeled packets received on this in- + segment, which were chosen to be discarded even + though no errors had been detected to prevent their + being transmitted. One possible reason for + discarding such a labeled packet could be to free up + buffer space." + ::= { mplsInSegmentPerfEntry 4 } + +mplsInSegmentPerfHCOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of octets received. This is the 64 + bit version of mplsInSegmentPerfOctets, + if mplsInSegmentPerfHCOctets is supported according to + the rules spelled out in RFC2863." + ::= { mplsInSegmentPerfEntry 5 } + + + + +mplsInSegmentPerfDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one or more of this segment's Counter32 + or Counter64 suffered a discontinuity. If no such + discontinuities have occurred since the last re- + initialization of the local management subsystem, + then this object contains a zero value." + ::= { mplsInSegmentPerfEntry 6 } + +-- End of mplsInSegmentPerfTable. + +-- out-segment table. + +mplsOutSegmentIndexNext OBJECT-TYPE + SYNTAX MplsIndexNextType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the next available value to + be used for mplsOutSegmentIndex when creating entries + in the mplsOutSegmentTable. The special value of a + string containing the single octet 0x00 + indicates that no new entries can be created in this + table. Agents not allowing managers to create entries + in this table MUST set this object to this special + value." + ::= { mplsLsrObjects 6 } + +mplsOutSegmentTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsOutSegmentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains a representation of the outgoing + segments from an LSR." + ::= { mplsLsrObjects 7 } + +mplsOutSegmentEntry OBJECT-TYPE + SYNTAX MplsOutSegmentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents one outgoing + + + + segment. An entry can be created by a network + administrator, an SNMP agent, or an MPLS signaling + protocol. The object mplsOutSegmentOwner indicates + the creator of this entry. The value of + mplsOutSegmentRowStatus cannot be active(1) unless + the ifTable entry corresponding to + mplsOutSegmentInterface exists. + + Note that the indexing of this table uses a single, + arbitrary index (mplsOutSegmentIndex) to indicate + which out-segment (i.e.: label) is being switched to + from which in-segment (i.e: label) or in-segments. + This is necessary because it is possible to have an + equal-cost multi-path situation where two identical + out-going labels are assigned to the same + cross-connect (i.e.: they go to two different neighboring + LSRs); thus, requiring two out-segments. In order to + preserve the uniqueness of the references + by the mplsXCEntry, an arbitrary integer must be used as + the index for this table." + INDEX { mplsOutSegmentIndex } + ::= { mplsOutSegmentTable 1 } + +MplsOutSegmentEntry ::= SEQUENCE { + mplsOutSegmentIndex MplsIndexType, + mplsOutSegmentInterface InterfaceIndexOrZero, + mplsOutSegmentPushTopLabel TruthValue, + mplsOutSegmentTopLabel MplsLabel, + mplsOutSegmentTopLabelPtr RowPointer, + mplsOutSegmentNextHopAddrType InetAddressType, + mplsOutSegmentNextHopAddr InetAddress, + mplsOutSegmentXCIndex MplsIndexType, + mplsOutSegmentOwner MplsOwner, + mplsOutSegmentTrafficParamPtr RowPointer, + mplsOutSegmentRowStatus RowStatus, + mplsOutSegmentStorageType StorageType +} + +mplsOutSegmentIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This value contains a unique index for this row. + While a value of a string containing the single + octet 0x00 is not valid as an index for entries + in this table, it can be supplied as a valid value + to index the mplsXCTable to represent entries for + + + + which no out-segment has been configured or + exists." + ::= { mplsOutSegmentEntry 1 } + +mplsOutSegmentInterface OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value must contain the interface index of the + outgoing interface. This object cannot be modified + if mplsOutSegmentRowStatus is active(1). The + mplsOutSegmentRowStatus cannot be set to active(1) + until this object is set to a value corresponding to + a valid ifEntry." + ::= { mplsOutSegmentEntry 2 } + +mplsOutSegmentPushTopLabel OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value indicates whether or not a top label + should be pushed onto the outgoing packet's label + stack. The value of this variable MUST be set to + true(1) if the outgoing interface does not support + pop-and-go (and no label stack remains). For example, + on ATM interface, or if the segment represents a + tunnel origination. Note that it is considered + an error in the case that mplsOutSegmentPushTopLabel + is set to false, but the cross-connect entry which + refers to this out-segment has a non-zero + mplsLabelStackIndex. The LSR MUST ensure that this + situation does not happen. This object cannot be + modified if mplsOutSegmentRowStatus is active(1)." + DEFVAL { true } + ::= { mplsOutSegmentEntry 3 } + +mplsOutSegmentTopLabel OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If mplsOutSegmentPushTopLabel is true then this + represents the label that should be pushed onto the + top of the outgoing packet's label stack. Otherwise + this value SHOULD be set to 0 by the management + station and MUST be ignored by the agent. This + + + + object cannot be modified if mplsOutSegmentRowStatus + is active(1)." + DEFVAL { 0 } + ::= { mplsOutSegmentEntry 4 } + +mplsOutSegmentTopLabelPtr OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the label for this segment cannot be represented + fully within the mplsOutSegmentLabel object, + this object MUST point to the first accessible + column of a conceptual row in an external table containing + the label. In this case, the mplsOutSegmentTopLabel + object SHOULD be set to 0 and ignored. This object + MUST be set to zeroDotZero otherwise." + DEFVAL { zeroDotZero } + ::= { mplsOutSegmentEntry 5 } + +mplsOutSegmentNextHopAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates the next hop Internet address type. + Only values unknown(0), ipv4(1) or ipv6(2) + have to be supported. + + A value of unknown(0) is allowed only when + the outgoing interface is of type point-to-point. + If any other unsupported values are attempted in a set + operation, the agent MUST return an inconsistentValue + error." + REFERENCE + "See RFC3291." + ::= { mplsOutSegmentEntry 6 } + +mplsOutSegmentNextHopAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The internet address of the next hop. The type of + this address is determined by the value of the + mplslOutSegmentNextHopAddrType object. + + This object cannot be modified if + + + + mplsOutSegmentRowStatus is active(1)." + ::= { mplsOutSegmentEntry 7 } + +mplsOutSegmentXCIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Index into mplsXCTable which identifies which cross- + connect entry this segment is part of. A value of + the string containing the single octet 0x00 + indicates that this entry is not referred + to by any cross-connect entry. When a cross-connect + entry is created which this out-segment is a part of, + this object MUST be updated by the agent to reflect + the value of mplsXCIndex of that cross-connect + entry." + ::= { mplsOutSegmentEntry 8 } + +mplsOutSegmentOwner OBJECT-TYPE + SYNTAX MplsOwner + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Denotes the entity which created and is responsible + for managing this segment." + ::= { mplsOutSegmentEntry 9 } + +mplsOutSegmentTrafficParamPtr OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable represents a pointer to the traffic + parameter specification for this out-segment. This + value may point at an entry in the + MplsTunnelResourceEntry in the MPLS-TE-STD-MIB (RFC3812) + + RFC Editor: Please fill in RFC number. + + to indicate which traffic parameter settings for this + segment if it represents an LSP used for a TE tunnel. + + This value may optionally point at an + externally defined traffic parameter specification + table. A value of zeroDotZero indicates best-effort + treatment. By having the same value of this object, + two or more segments can indicate resource sharing + + + + of such things as LSP queue space, etc. + + This object cannot be modified if + mplsOutSegmentRowStatus is active(1). + For entries in this table that + are preserved after a re-boot, the agent MUST ensure + that their integrity be preserved, or this object should + be set to 0.0 if it cannot." + DEFVAL { zeroDotZero } + ::= { mplsOutSegmentEntry 10 } + +mplsOutSegmentRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "For creating, modifying, and deleting this row. + When a row in this table has a row in the active(1) + state, no objects in this row can be modified + except the mplsOutSegmentRowStatus or + mplsOutSegmentStorageType." + ::= { mplsOutSegmentEntry 11 } + +mplsOutSegmentStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the storage type for this + object. The agent MUST ensure that this object's value + remains consistent with the associated mplsXCEntry. + Conceptual rows having the value 'permanent' + need not allow write-access to any columnar + objects in the row." + DEFVAL { volatile } + ::= { mplsOutSegmentEntry 12 } + +-- End of mplsOutSegmentTable + + +-- out-segment performance table. + +mplsOutSegmentPerfTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsOutSegmentPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains statistical information about + + + + outgoing segments from an LSR. The counters in this + entry should behave in a manner similar to that of + the interface." + ::= { mplsLsrObjects 8 } + +mplsOutSegmentPerfEntry OBJECT-TYPE + SYNTAX MplsOutSegmentPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table contains statistical + information about one outgoing segment configured in + mplsOutSegmentTable. The object + mplsOutSegmentPerfDiscontinuityTime indicates the + time of the last discontinuity in these objects. " + AUGMENTS { mplsOutSegmentEntry } + ::= { mplsOutSegmentPerfTable 1 } + +MplsOutSegmentPerfEntry ::= SEQUENCE { + mplsOutSegmentPerfOctets Counter32, + mplsOutSegmentPerfPackets Counter32, + mplsOutSegmentPerfErrors Counter32, + mplsOutSegmentPerfDiscards Counter32, + + -- HC counter + mplsOutSegmentPerfHCOctets Counter64, + + mplsOutSegmentPerfDiscontinuityTime TimeStamp + } + +mplsOutSegmentPerfOctets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value contains the total number of octets sent + on this segment. It MUST be equal to the least + significant 32 bits of mplsOutSegmentPerfHCOctets + if mplsOutSegmentPerfHCOctets is supported according to + the rules spelled out in RFC2863." + ::= { mplsOutSegmentPerfEntry 1 } + +mplsOutSegmentPerfPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value contains the total number of packets sent + + + + on this segment." + ::= { mplsOutSegmentPerfEntry 2 } + +mplsOutSegmentPerfErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of packets that could not be sent due to + errors on this segment." + ::= { mplsOutSegmentPerfEntry 3 } + +mplsOutSegmentPerfDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of labeled packets attempted to be transmitted + on this out-segment, which were chosen to be discarded + even though no errors had been detected to prevent their + being transmitted. One possible reason for + discarding such a labeled packet could be to free up + buffer space." + ::= { mplsOutSegmentPerfEntry 4 } + +mplsOutSegmentPerfHCOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Total number of octets sent. This is the 64 bit + version of mplsOutSegmentPerfOctets, + if mplsOutSegmentPerfHCOctets is supported according to + the rules spelled out in RFC2863." + ::= { mplsOutSegmentPerfEntry 5 } + +mplsOutSegmentPerfDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one or more of this segment's Counter32 + or Counter64 suffered a discontinuity. If no such + discontinuities have occurred since the last re- + initialization of the local management subsystem, + then this object contains a zero value." + ::= { mplsOutSegmentPerfEntry 6 } + + + + +-- End of mplsOutSegmentPerfTable. + + +-- Cross-connect table. + +mplsXCIndexNext OBJECT-TYPE + SYNTAX MplsIndexNextType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the next available value to + be used for mplsXCIndex when creating entries in + the mplsXCTable. A special value of the zero length + string indicates that no more new entries can be created + in the relevant table. Agents not allowing managers + to create entries in this table MUST set this value + to the zero length string." + ::= { mplsLsrObjects 9 } + +mplsXCTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsXCEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table specifies information for switching + between LSP segments. It supports point-to-point, + point-to-multipoint and multipoint-to-point + connections. mplsLabelStackTable specifies the + label stack information for a cross-connect LSR and + is referred to from mplsXCTable." + ::= { mplsLsrObjects 10 } + +mplsXCEntry OBJECT-TYPE + SYNTAX MplsXCEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table represents one cross-connect + entry. It is indexed by the following objects: + + - cross-connect index mplsXCIndex that uniquely + identifies a group of cross-connect entries + + - in-segment index, mplsXCInSegmentIndex + + - out-segment index, mplsXCOutSegmentIndex + + + + + LSPs originating at this LSR: + These are represented by using the special + of value of mplsXCInSegmentIndex set to the + string containing a single octet 0x00. In + this case the mplsXCOutSegmentIndex + MUST not be the string containing a single + octet 0x00. + + LSPs terminating at this LSR: + These are represented by using the special value + mplsXCOutSegmentIndex set to the string containing + a single octet 0x00. + + Special labels: + Entries indexed by the strings containing the + reserved MPLS label values as a single octet 0x00 + through 0x0f (inclusive) imply LSPs terminating at + this LSR. Note that situations where LSPs are + terminated with incoming label equal to the string + containing a single octet 0x00 can be distinguished + from LSPs originating at this LSR because the + mplsXCOutSegmentIndex equals the string containing the + single octet 0x00. + + An entry can be created by a network administrator + or by an SNMP agent as instructed by an MPLS + signaling protocol." + INDEX { mplsXCIndex, mplsXCInSegmentIndex, + mplsXCOutSegmentIndex } + ::= { mplsXCTable 1 } + +MplsXCEntry ::= SEQUENCE { + mplsXCIndex MplsIndexType, + mplsXCInSegmentIndex MplsIndexType, + mplsXCOutSegmentIndex MplsIndexType, + mplsXCLspId MplsLSPID, + mplsXCLabelStackIndex MplsIndexType, + mplsXCOwner MplsOwner , + mplsXCRowStatus RowStatus, + mplsXCStorageType StorageType, + mplsXCAdminStatus INTEGER, + mplsXCOperStatus INTEGER + } + +mplsXCIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "Primary index for the conceptual row identifying a + group of cross-connect segments. The string + containing a single octet 0x00 is an invalid index." + ::= { mplsXCEntry 1 } + +mplsXCInSegmentIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Incoming label index. + If this object is set to the string containing + a single octet 0x00, this indicates a special + case outlined in the table's description above. + In this case no corresponding mplsInSegmentEntry + shall exist." + ::= { mplsXCEntry 2 } + +mplsXCOutSegmentIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Index of out-segment for LSPs not terminating on + this LSR if not set to the string containing the + single octet 0x00. If the segment identified by this + entry is terminating, then this object MUST be set to + the string containing a single octet 0x00 to indicate + that no corresponding mplsOutSegmentEntry shall + exist." + ::= { mplsXCEntry 3 } + +mplsXCLspId OBJECT-TYPE + SYNTAX MplsLSPID + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value identifies the label switched path that + this cross-connect entry belongs to. This object + cannot be modified if mplsXCRowStatus is active(1) + except for this object." + ::= { mplsXCEntry 4 } + +mplsXCLabelStackIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "Primary index into mplsLabelStackTable identifying a + stack of labels to be pushed beneath the top label. + Note that the top label identified by the out- + segment ensures that all the components of a + multipoint-to-point connection have the same + outgoing label. A value of the string containing the + single octet 0x00 indicates that no labels are to + be stacked beneath the top label. + This object cannot be modified if mplsXCRowStatus is + active(1)." + ::= { mplsXCEntry 5 } + +mplsXCOwner OBJECT-TYPE + SYNTAX MplsOwner + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Denotes the entity that created and is responsible + for managing this cross-connect." + ::= { mplsXCEntry 6 } + +mplsXCRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "For creating, modifying, and deleting this row. + When a row in this table has a row in the active(1) + state, no objects in this row except this object + and the mplsXCStorageType can be modified. " + ::= { mplsXCEntry 7 } + +mplsXCStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the storage type for this + object. The agent MUST ensure that the associated in + and out segments also have the same StorageType value + and are restored consistently upon system restart. + This value SHOULD be set to permanent(4) if created + as a result of a static LSP configuration. + + Conceptual rows having the value 'permanent' + need not allow write-access to any columnar + objects in the row." + + + + DEFVAL { volatile } + ::= { mplsXCEntry 8 } + +mplsXCAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), -- ready to pass packets + down(2), + testing(3) -- in some test mode + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The desired operational status of this segment." + DEFVAL { up } + ::= { mplsXCEntry 9 } + +mplsXCOperStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), -- ready to pass packets + down(2), + testing(3), -- in some test mode + unknown(4), -- status cannot be determined + -- for some reason. + dormant(5), + notPresent(6), -- some component is missing + lowerLayerDown(7) -- down due to the state of + -- lower layer interfaces + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The actual operational status of this cross- + connect." + ::= { mplsXCEntry 10 } + +-- End of mplsXCTable + + +-- Label stack table. + +mplsMaxLabelStackDepth OBJECT-TYPE + SYNTAX Unsigned32 (1..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The maximum stack depth supported by this LSR." +::= { mplsLsrObjects 11 } + + + + +mplsLabelStackIndexNext OBJECT-TYPE + SYNTAX MplsIndexNextType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the next available value to + be used for mplsLabelStackIndex when creating entries + in the mplsLabelStackTable. The special string + containing the single octet 0x00 + indicates that no more new entries can be created + in the relevant table. Agents not allowing managers + to create entries in this table MUST set this value + to the string containing the single octet 0x00." +::= { mplsLsrObjects 12 } + +mplsLabelStackTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLabelStackEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table specifies the label stack to be pushed + onto a packet, beneath the top label. Entries into + this table are referred to from mplsXCTable." + ::= { mplsLsrObjects 13 } + +mplsLabelStackEntry OBJECT-TYPE + SYNTAX MplsLabelStackEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents one label which is + to be pushed onto an outgoing packet, beneath the + top label. An entry can be created by a network + administrator or by an SNMP agent as instructed by + an MPLS signaling protocol." + INDEX { mplsLabelStackIndex, mplsLabelStackLabelIndex } + ::= { mplsLabelStackTable 1 } + +MplsLabelStackEntry ::= SEQUENCE { + mplsLabelStackIndex MplsIndexType, + mplsLabelStackLabelIndex Unsigned32, + mplsLabelStackLabel MplsLabel, + mplsLabelStackLabelPtr RowPointer, + mplsLabelStackRowStatus RowStatus, + mplsLabelStackStorageType StorageType + } + +mplsLabelStackIndex OBJECT-TYPE + + + + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Primary index for this row identifying a stack of + labels to be pushed on an outgoing packet, beneath + the top label. An index containing the string with + a single octet 0x00 MUST not be used." + ::= { mplsLabelStackEntry 1 } + +mplsLabelStackLabelIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..2147483647) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Secondary index for this row identifying one label + of the stack. Note that an entry with a smaller + mplsLabelStackLabelIndex would refer to a label + higher up the label stack and would be popped at a + downstream LSR before a label represented by a + higher mplsLabelStackLabelIndex at a downstream + LSR." + ::= { mplsLabelStackEntry 2 } + +mplsLabelStackLabel OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The label to pushed." + ::= { mplsLabelStackEntry 3 } + +mplsLabelStackLabelPtr OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the label for this segment cannot be represented + fully within the mplsLabelStackLabel object, + this object MUST point to the first accessible + column of a conceptual row in an external table containing + the label. In this case, the mplsLabelStackLabel + object SHOULD be set to 0 and ignored. This object + MUST be set to zeroDotZero otherwise." + DEFVAL { zeroDotZero } + ::= { mplsLabelStackEntry 4 } + +mplsLabelStackRowStatus OBJECT-TYPE + + + + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "For creating, modifying, and deleting this row. + When a row in this table has a row in the active(1) + state, no objects in this row except this object + and the mplsLabelStackStorageType can be modified." + ::= { mplsLabelStackEntry 5 } + +mplsLabelStackStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the storage type for this + object. This object cannot be modified if + mplsLabelStackRowStatus is active(1). + No objects are required to be writable for + rows in this table with this object set to + permanent(4). + + The agent MUST ensure that all related entries + in this table retain the same value for this + object. Agents MUST ensure that the storage type + for all entries related to a particular mplsXCEntry + retain the same value for this object as the + mplsXCEntry's StorageType." + DEFVAL { volatile } + ::= { mplsLabelStackEntry 6 } + +-- End of mplsLabelStackTable + +-- Begin mplsInSegmentMapTable + +mplsInSegmentMapTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsInSegmentMapEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table specifies the mapping from the + mplsInSegmentIndex to the corresponding + mplsInSegmentInterface and mplsInSegmentLabel + objects. The purpose of this table is to + provide the manager with an alternative + means by which to locate in-segments." + ::= { mplsLsrObjects 14 } + + + + +mplsInSegmentMapEntry OBJECT-TYPE + SYNTAX MplsInSegmentMapEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents one interface + and incoming label pair. + + In cases where the label cannot fit into the + mplsInSegmentLabel object, the mplsInSegmentLabelPtr + will indicate this by being set to the first accessible + column in the appropriate extension table's row, + and the mplsInSegmentLabel SHOULD be set to 0. + In all other cases when the label is + represented within the mplsInSegmentLabel object, the + mplsInSegmentLabelPtr MUST be 0.0. + + Implementors need to be aware that if the value of + the mplsInSegmentMapLabelPtrIndex (an OID) has more + that 111 sub-identifiers, then OIDs of column + instances in this table will have more than 128 + sub-identifiers and cannot be accessed using SNMPv1, + SNMPv2c, or SNMPv3." + INDEX { mplsInSegmentMapInterface, + mplsInSegmentMapLabel, + mplsInSegmentMapLabelPtrIndex } + ::= { mplsInSegmentMapTable 1 } + +MplsInSegmentMapEntry ::= SEQUENCE { + mplsInSegmentMapInterface InterfaceIndexOrZero, + mplsInSegmentMapLabel MplsLabel, + mplsInSegmentMapLabelPtrIndex RowPointer, + mplsInSegmentMapIndex MplsIndexType + } + +mplsInSegmentMapInterface OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This index contains the same value as the + mplsInSegmentIndex in the mplsInSegmentTable." + ::= { mplsInSegmentMapEntry 1 } + +mplsInSegmentMapLabel OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "This index contains the same value as the + mplsInSegmentLabel in the mplsInSegmentTable." + ::= { mplsInSegmentMapEntry 2 } + +mplsInSegmentMapLabelPtrIndex OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This index contains the same value as the + mplsInSegmentLabelPtr. + + If the label for the InSegment cannot be represented + fully within the mplsInSegmentLabel object, + this index MUST point to the first accessible + column of a conceptual row in an external table containing + the label. In this case, the mplsInSegmentTopLabel + object SHOULD be set to 0 and ignored. This object MUST + be set to zeroDotZero otherwise." + ::= { mplsInSegmentMapEntry 3 } + +mplsInSegmentMapIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The mplsInSegmentIndex that corresponds + to the mplsInSegmentInterface and + mplsInSegmentLabel, or the mplsInSegmentInterface + and mplsInSegmentLabelPtr, if applicable. + The string containing the single octet 0x00 + MUST not be returned." + ::= { mplsInSegmentMapEntry 4 } + +-- End mplsInSegmentMapTable + + +-- Notification Configuration + +mplsXCNotificationsEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If this object is set to true(1), then it enables + the emission of mplsXCUp and mplsXCDown + notifications; otherwise these notifications are not + + + + emitted." + REFERENCE + "See also RFC3413 for explanation that + notifications are under the ultimate control of the + MIB module in this document." + DEFVAL { false } + ::= { mplsLsrObjects 15 } + +-- Cross-connect. + +mplsXCUp NOTIFICATION-TYPE + OBJECTS { mplsXCOperStatus, -- start of range + mplsXCOperStatus -- end of range + } + STATUS current + DESCRIPTION + "This notification is generated when the + mplsXCOperStatus object for one or more contiguous + entries in mplsXCTable are about to enter the up(1) + state from some other state. The included values of + mplsXCOperStatus MUST both be set equal to this + new state (i.e: up(1)). The two instances of + mplsXCOperStatus in this notification indicate the range + of indexes that are affected. Note that all the indexes + of the two ends of the range can be derived from the + instance identifiers of these two objects. For + cases where a contiguous range of cross-connects + have transitioned into the up(1) state at roughly + the same time, the device SHOULD issue a single + notification for each range of contiguous indexes in + an effort to minimize the emission of a large number + of notifications. If a notification has to be + issued for just a single cross-connect entry, then + the instance identifier (and values) of the two + mplsXCOperStatus objects MUST be the identical." + ::= { mplsLsrNotifications 1 } + +mplsXCDown NOTIFICATION-TYPE + OBJECTS { + mplsXCOperStatus, -- start of range + mplsXCOperStatus -- end of range + } + STATUS current + DESCRIPTION + "This notification is generated when the + mplsXCOperStatus object for one or more contiguous + entries in mplsXCTable are about to enter the + down(2) state from some other state. The included values + + + + of mplsXCOperStatus MUST both be set equal to this + down(2) state. The two instances of mplsXCOperStatus + in this notification indicate the range of indexes + that are affected. Note that all the indexes of the + two ends of the range can be derived from the + instance identifiers of these two objects. For + cases where a contiguous range of cross-connects + have transitioned into the down(2) state at roughly + the same time, the device SHOULD issue a single + notification for each range of contiguous indexes in + an effort to minimize the emission of a large number + of notifications. If a notification has to be + issued for just a single cross-connect entry, then + the instance identifier (and values) of the two + mplsXCOperStatus objects MUST be identical." + ::= { mplsLsrNotifications 2 } + +-- End of notifications. + + +-- Module compliance. + +mplsLsrGroups + OBJECT IDENTIFIER ::= { mplsLsrConformance 1 } + +mplsLsrCompliances + OBJECT IDENTIFIER ::= { mplsLsrConformance 2 } + +-- Compliance requirement for fully compliant implementations. + +mplsLsrModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION "Compliance statement for agents that provide full + support for MPLS-LSR-STD-MIB. Such devices can + then be monitored and also be configured using + this MIB module." + + MODULE IF-MIB -- The Interfaces Group MIB, RFC 2863. + MANDATORY-GROUPS { + ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + } + + MODULE -- This module. + MANDATORY-GROUPS { + mplsInterfaceGroup, + mplsInSegmentGroup, + mplsOutSegmentGroup, + + + + mplsXCGroup, + mplsPerfGroup + } + + GROUP mplsLabelStackGroup + DESCRIPTION "This group is only mandatory for LSRs that wish to + support the modification of LSP label stacks. + " + + GROUP mplsHCInSegmentPerfGroup + DESCRIPTION "This group is mandatory for those in-segment entries + for which the object mplsInSegmentOutOctets wraps + around too quickly based on the criteria specified in + RFC 2863 for high-capacity counters. + " + + GROUP mplsHCOutSegmentPerfGroup + DESCRIPTION "This group is mandatory for those out-segment entries + for which the object mplsOutSegmentPerfOctets wraps + around too quickly based on the criteria specified in + RFC 2863 for high-capacity counters. + " + + GROUP mplsLsrNotificationGroup + DESCRIPTION "This group is only mandatory for those implementations + which can efficiently implement the notifications + contained in this group." + + OBJECT mplsInSegmentRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is + not required." + + OBJECT mplsOutSegmentNextHopAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + DESCRIPTION "Only unknown(0), ipv4(1) and ipv6(2) support + is required." + + OBJECT mplsOutSegmentNextHopAddr + SYNTAX InetAddress (SIZE(0|4|16)) + DESCRIPTION "An implementation is only required to support + unknown(0), ipv4(1) and ipv6(2) sizes." + + OBJECT mplsOutSegmentRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + + + + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required." + + OBJECT mplsLabelStackRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required." + + OBJECT mplsXCRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required." + + ::= { mplsLsrCompliances 1 } + +-- Compliance requirement for read-only implementations. + +mplsLsrModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION "Compliance requirement for implementations that only + provide read-only support for MPLS-LSR-STD-MIB. Such + devices can then be monitored but cannot be configured + using this MIB module. + " + + MODULE IF-MIB -- The interfaces Group MIB, RFC 2863 + MANDATORY-GROUPS { + ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + } + + MODULE -- This module + MANDATORY-GROUPS { + mplsInterfaceGroup, + mplsInSegmentGroup, + mplsOutSegmentGroup, + mplsXCGroup, + mplsPerfGroup + } + + + + GROUP mplsLabelStackGroup + DESCRIPTION "This group is only mandatory for LSRs that wish to + support the modification of LSP label stacks. + " + + GROUP mplsHCInSegmentPerfGroup + DESCRIPTION "This group is mandatory for those in-segment entries + for which the object mplsInSegmentOutOctets wraps + around too quickly based on the criteria specified in + RFC 2863 for high-capacity counters. + " + + GROUP mplsHCOutSegmentPerfGroup + DESCRIPTION "This group is mandatory for those out-segment entries + for which the object mplsOutSegmentPerfOctets wraps + around too quickly based on the criteria specified in + RFC 2863 for high-capacity counters. + " + + GROUP mplsLsrNotificationGroup + DESCRIPTION "This group is only mandatory for those implementations + which can efficiently implement the notifications + contained in this group. + " + + -- mplsInSegmentTable + OBJECT mplsInSegmentLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsInSegmentLabelPtr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsInSegmentNPop + SYNTAX Integer32 (1..1) + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. This object + SHOULD be set to 1 if it is read-only. + " + + OBJECT mplsInSegmentAddrFamily + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. A value of other(0) + should be supported because there may be cases where + the agent may not know about or support any address + types. + " + + + + OBJECT mplsInSegmentRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsInSegmentStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + -- mplsOutSegmentTable + OBJECT mplsOutSegmentInterface + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsOutSegmentPushTopLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsOutSegmentTopLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsOutSegmentTopLabelPtr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsOutSegmentNextHopAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. Only unknown(0), + ipv4(1) and ipv6(2) support is required. + " + + OBJECT mplsOutSegmentNextHopAddr + SYNTAX InetAddress (SIZE(0|4|16)) + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. An implementation is + only required to support unknown(0), ipv4(1) and + ipv6(2) sizes." + + OBJECT mplsOutSegmentRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsOutSegmentStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + + + -- mplsXCTable + OBJECT mplsXCLabelStackIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsXCAdminStatus + MIN-ACCESS read-only + DESCRIPTION "Read only support is required." + + OBJECT mplsXCRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsXCStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsLabelStackLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsLabelStackLabelPtr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsLabelStackRowStatus + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsLabelStackStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { mplsLsrCompliances 2 } + +-- Units of conformance. + +mplsInterfaceGroup OBJECT-GROUP + OBJECTS { + mplsInterfaceLabelMinIn, + mplsInterfaceLabelMaxIn, + mplsInterfaceLabelMinOut, + mplsInterfaceLabelMaxOut, + mplsInterfaceTotalBandwidth, + mplsInterfaceAvailableBandwidth, + mplsInterfaceLabelParticipationType + } + + + + STATUS current + DESCRIPTION + "Collection of objects needed for MPLS interface + and interface performance information." + ::= { mplsLsrGroups 1 } + +mplsInSegmentGroup OBJECT-GROUP + OBJECTS { + mplsInSegmentIndexNext, + mplsInSegmentInterface, + mplsInSegmentLabel, + mplsInSegmentLabelPtr, + mplsInSegmentNPop, + mplsInSegmentAddrFamily, + mplsInSegmentXCIndex, + mplsInSegmentOwner, + mplsInSegmentRowStatus, + mplsInSegmentStorageType, + mplsInSegmentTrafficParamPtr, + mplsInSegmentMapIndex + } + STATUS current + DESCRIPTION + "Collection of objects needed to implement an in- + segment." + ::= { mplsLsrGroups 2 } + +mplsOutSegmentGroup OBJECT-GROUP + OBJECTS { + mplsOutSegmentIndexNext, + mplsOutSegmentInterface, + mplsOutSegmentPushTopLabel, + mplsOutSegmentTopLabel, + mplsOutSegmentTopLabelPtr, + mplsOutSegmentNextHopAddrType, + mplsOutSegmentNextHopAddr, + mplsOutSegmentXCIndex, + mplsOutSegmentOwner, + mplsOutSegmentPerfOctets, + mplsOutSegmentPerfDiscards, + mplsOutSegmentPerfErrors, + mplsOutSegmentRowStatus, + mplsOutSegmentStorageType, + mplsOutSegmentTrafficParamPtr + } + STATUS current + DESCRIPTION + "Collection of objects needed to implement an out- + + + + segment." + ::= { mplsLsrGroups 3 } + +mplsXCGroup OBJECT-GROUP + OBJECTS { + mplsXCIndexNext, + mplsXCLspId, + mplsXCLabelStackIndex, + mplsXCOwner, + mplsXCStorageType, + mplsXCAdminStatus, + mplsXCOperStatus, + mplsXCRowStatus, + mplsXCNotificationsEnable + } + STATUS current + DESCRIPTION + "Collection of objects needed to implement a + cross-connect entry." + ::= { mplsLsrGroups 4 } + +mplsPerfGroup OBJECT-GROUP + OBJECTS { + mplsInSegmentPerfOctets, + mplsInSegmentPerfPackets, + mplsInSegmentPerfErrors, + mplsInSegmentPerfDiscards, + mplsInSegmentPerfDiscontinuityTime, + mplsOutSegmentPerfOctets, + mplsOutSegmentPerfPackets, + mplsOutSegmentPerfDiscards, + mplsOutSegmentPerfDiscontinuityTime, + mplsInterfacePerfInLabelsInUse, + mplsInterfacePerfInLabelLookupFailures, + mplsInterfacePerfOutFragmentedPkts, + mplsInterfacePerfOutLabelsInUse + } + + STATUS current + DESCRIPTION + "Collection of objects providing performance + information + about an LSR." + ::= { mplsLsrGroups 5 } + +mplsHCInSegmentPerfGroup OBJECT-GROUP + OBJECTS { mplsInSegmentPerfHCOctets } + STATUS current + + + + DESCRIPTION + "Object(s) providing performance information + specific to out-segments for which the object + mplsInterfaceInOctets wraps around too quickly." + ::= { mplsLsrGroups 6 } + +mplsHCOutSegmentPerfGroup OBJECT-GROUP + OBJECTS { mplsOutSegmentPerfHCOctets } + STATUS current + DESCRIPTION + "Object(s) providing performance information + specific to out-segments for which the object + mplsInterfaceOutOctets wraps around too + quickly." + ::= { mplsLsrGroups 7 } + +mplsLabelStackGroup OBJECT-GROUP + OBJECTS { + mplsLabelStackLabel, + mplsLabelStackLabelPtr, + mplsLabelStackRowStatus, + mplsLabelStackStorageType, + mplsMaxLabelStackDepth, + mplsLabelStackIndexNext + } + STATUS current + DESCRIPTION + "Objects needed to support label stacking." + ::= { mplsLsrGroups 8 } + +mplsLsrNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + mplsXCUp, + mplsXCDown + } + STATUS current + DESCRIPTION + "Set of notifications implemented in this + module." + ::= { mplsLsrGroups 9 } +END \ No newline at end of file diff --git a/mibs/MPLS-TE-STD-MIB.txt b/mibs/MPLS-TE-STD-MIB.txt new file mode 100644 index 00000000..a55a331a --- /dev/null +++ b/mibs/MPLS-TE-STD-MIB.txt @@ -0,0 +1,2631 @@ +MPLS-TE-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, + Integer32, Unsigned32, Counter32, Counter64, TimeTicks, + zeroDotZero + FROM SNMPv2-SMI -- [RFC2578] + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF -- [RFC2580] + TruthValue, RowStatus, RowPointer, StorageType, + TimeStamp + FROM SNMPv2-TC -- [RFC2579] + InterfaceIndexOrZero, ifGeneralInformationGroup, + + + + ifCounterDiscontinuityGroup + FROM IF-MIB -- [RFC2863] + mplsStdMIB, MplsBitRate, MplsBurstSize, MplsLSPID, + MplsTunnelIndex, MplsTunnelInstanceIndex, + MplsTunnelAffinity, MplsExtendedTunnelId, MplsPathIndex, + MplsPathIndexOrZero, MplsOwner, TeHopAddressType, + TeHopAddress, TeHopAddressAS, TeHopAddressUnnum + FROM MPLS-TC-STD-MIB -- [RFC3811] + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB -- [RFC3411] + IndexIntegerNextFree + FROM DIFFSERV-MIB -- [RFC3289] + InetAddressPrefixLength + FROM INET-ADDRESS-MIB -- [RFC3291] + ; + +mplsTeStdMIB MODULE-IDENTITY + LAST-UPDATED + "200406030000Z" -- June 3, 2004 + ORGANIZATION + "Multiprotocol Label Switching (MPLS) Working Group" + CONTACT-INFO + " Cheenu Srinivasan + Bloomberg L.P. + Email: cheenu@bloomberg.net + + Arun Viswanathan + Force10 Networks, Inc. + Email: arunv@force10networks.com + + Thomas D. Nadeau + Cisco Systems, Inc. + Email: tnadeau@cisco.com + + Comments about this document should be emailed + directly to the MPLS working group mailing list at + mpls@uu.net." + DESCRIPTION + "Copyright (C) The Internet Society (2004). The + initial version of this MIB module was published + in RFC 3812. For full legal notices see the RFC + itself or see: http://www.ietf.org/copyrights/ianamib.html + + This MIB module contains managed object definitions + for MPLS Traffic Engineering (TE) as defined in: + 1. Extensions to RSVP for LSP Tunnels, Awduche et + al, RFC 3209, December 2001 + 2. Constraint-Based LSP Setup using LDP, Jamoussi + + + + (Editor), RFC 3212, January 2002 + 3. Requirements for Traffic Engineering Over MPLS, + Awduche, D., Malcolm, J., Agogbua, J., O'Dell, M., + and J. McManus, [RFC2702], September 1999" + + -- Revision history. + + REVISION + "200406030000Z" -- June 3, 2004 + DESCRIPTION + "Initial version issued as part of RFC 3812." + + ::= { mplsStdMIB 3 } + +-- Top level components of this MIB module. + +-- traps +mplsTeNotifications OBJECT IDENTIFIER ::= { mplsTeStdMIB 0 } +-- tables, scalars +mplsTeScalars OBJECT IDENTIFIER ::= { mplsTeStdMIB 1 } +mplsTeObjects OBJECT IDENTIFIER ::= { mplsTeStdMIB 2 } +-- conformance +mplsTeConformance OBJECT IDENTIFIER ::= { mplsTeStdMIB 3 } + + +-- MPLS Tunnel scalars. + +mplsTunnelConfigured OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of tunnels configured on this device. A + tunnel is considered configured if the + mplsTunnelRowStatus is active(1)." + ::= { mplsTeScalars 1 } + +mplsTunnelActive OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of tunnels active on this device. A + tunnel is considered active if the + mplsTunnelOperStatus is up(1)." + ::= { mplsTeScalars 2 } + +mplsTunnelTEDistProto OBJECT-TYPE + + + + SYNTAX BITS { + other (0), + ospf (1), + isis (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The traffic engineering distribution protocol(s) + used by this LSR. Note that an LSR may support more + than one distribution protocol simultaneously." + ::= { mplsTeScalars 3 } + +mplsTunnelMaxHops OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The maximum number of hops that can be specified for + a tunnel on this device." + ::= { mplsTeScalars 4 } + +mplsTunnelNotificationMaxRate OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This variable indicates the maximum number of + notifications issued per second. If events occur + more rapidly, the implementation may simply fail to + emit these notifications during that period, or may + queue them until an appropriate time. A value of 0 + means no throttling is applied and events may be + notified at the rate at which they occur." + DEFVAL { 0 } + ::= { mplsTeScalars 5 } + +-- End of MPLS Tunnel scalars. + + +-- MPLS tunnel table. + +mplsTunnelIndexNext OBJECT-TYPE + SYNTAX IndexIntegerNextFree (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains an unused value for + + + + mplsTunnelIndex, or a zero to indicate + that none exist. Negative values are not allowed, + as they do not correspond to valid values of + mplsTunnelIndex. + + Note that this object offers an unused value + for an mplsTunnelIndex value at the ingress + side of a tunnel. At other LSRs the value + of mplsTunnelIndex SHOULD be taken from the + value signaled by the MPLS signaling protocol. + " + ::= { mplsTeObjects 1 } + +mplsTunnelTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelTable allows new MPLS tunnels to be + created between an LSR and a remote endpoint, and + existing tunnels to be reconfigured or removed. + Note that only point-to-point tunnel segments are + supported, although multipoint-to-point and point- + to-multipoint connections are supported by an LSR + acting as a cross-connect. Each MPLS tunnel can + thus have one out-segment originating at this LSR + and/or one in-segment terminating at this LSR." + ::= { mplsTeObjects 2 } + +mplsTunnelEntry OBJECT-TYPE + SYNTAX MplsTunnelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents an MPLS tunnel. + An entry can be created by a network administrator + or by an SNMP agent as instructed by an MPLS + signalling protocol. Whenever a new entry is + created with mplsTunnelIsIf set to true(1), then a + corresponding entry is created in ifTable as well + (see RFC 2863). The ifType of this entry is + mplsTunnel(150). + + A tunnel entry needs to be uniquely identified across + a MPLS network. Indices mplsTunnelIndex and + mplsTunnelInstance uniquely identify a tunnel on + the LSR originating the tunnel. To uniquely + identify a tunnel across an MPLS network requires + + + + index mplsTunnelIngressLSRId. The last index + mplsTunnelEgressLSRId is useful in identifying all + instances of a tunnel that terminate on the same + egress LSR." + REFERENCE + "1. RFC 2863 - The Interfaces Group MIB, McCloghrie, + K., and F. Kastenholtz, June 2000 " + INDEX { mplsTunnelIndex, + mplsTunnelInstance, + mplsTunnelIngressLSRId, + mplsTunnelEgressLSRId + } + ::= { mplsTunnelTable 1 } + +MplsTunnelEntry ::= SEQUENCE { + mplsTunnelIndex MplsTunnelIndex, + mplsTunnelInstance MplsTunnelInstanceIndex, + mplsTunnelIngressLSRId MplsExtendedTunnelId, + mplsTunnelEgressLSRId MplsExtendedTunnelId, + mplsTunnelName SnmpAdminString, + mplsTunnelDescr SnmpAdminString, + mplsTunnelIsIf TruthValue, + mplsTunnelIfIndex InterfaceIndexOrZero, + mplsTunnelOwner MplsOwner, + mplsTunnelRole INTEGER, + mplsTunnelXCPointer RowPointer, + mplsTunnelSignallingProto INTEGER, + mplsTunnelSetupPrio Integer32, + mplsTunnelHoldingPrio Integer32, + mplsTunnelSessionAttributes BITS, + mplsTunnelLocalProtectInUse TruthValue, + mplsTunnelResourcePointer RowPointer, + mplsTunnelPrimaryInstance MplsTunnelInstanceIndex, + mplsTunnelInstancePriority Unsigned32, + mplsTunnelHopTableIndex MplsPathIndexOrZero, + mplsTunnelPathInUse MplsPathIndexOrZero, + mplsTunnelARHopTableIndex MplsPathIndexOrZero, + mplsTunnelCHopTableIndex MplsPathIndexOrZero, + mplsTunnelIncludeAnyAffinity MplsTunnelAffinity, + mplsTunnelIncludeAllAffinity MplsTunnelAffinity, + mplsTunnelExcludeAnyAffinity MplsTunnelAffinity, + mplsTunnelTotalUpTime TimeTicks, + mplsTunnelInstanceUpTime TimeTicks, + mplsTunnelPrimaryUpTime TimeTicks, + mplsTunnelPathChanges Counter32, + mplsTunnelLastPathChange TimeTicks, + mplsTunnelCreationTime TimeStamp, + mplsTunnelStateTransitions Counter32, + + + + mplsTunnelAdminStatus INTEGER, + mplsTunnelOperStatus INTEGER, + mplsTunnelRowStatus RowStatus, + mplsTunnelStorageType StorageType + } + +mplsTunnelIndex OBJECT-TYPE + SYNTAX MplsTunnelIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Uniquely identifies a set of tunnel instances + between a pair of ingress and egress LSRs. + Managers should obtain new values for row + creation in this table by reading + mplsTunnelIndexNext. When + the MPLS signalling protocol is rsvp(2) this value + SHOULD be equal to the value signaled in the + Tunnel Id of the Session object. When the MPLS + signalling protocol is crldp(3) this value + SHOULD be equal to the value signaled in the + LSP ID." + ::= { mplsTunnelEntry 1 } + +mplsTunnelInstance OBJECT-TYPE + SYNTAX MplsTunnelInstanceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Uniquely identifies a particular instance of a + tunnel between a pair of ingress and egress LSRs. + It is useful to identify multiple instances of + tunnels for the purposes of backup and parallel + tunnels. When the MPLS signaling protocol is + rsvp(2) this value SHOULD be equal to the LSP Id + of the Sender Template object. When the signaling + protocol is crldp(3) there is no equivalent + signaling object." + ::= { mplsTunnelEntry 2 } + +mplsTunnelIngressLSRId OBJECT-TYPE + SYNTAX MplsExtendedTunnelId + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Identity of the ingress LSR associated with this + tunnel instance. When the MPLS signalling protocol + is rsvp(2) this value SHOULD be equal to the Tunnel + + + + Sender Address in the Sender Template object and MAY + be equal to the Extended Tunnel Id field in the + SESSION object. When the MPLS signalling protocol is + crldp(3) this value SHOULD be equal to the Ingress + LSR Router ID field in the LSPID TLV object." + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001 + 2. Constraint-Based LSP Setup using LDP, Jamoussi + (Editor), RFC 3212, January 2002" + ::= { mplsTunnelEntry 3 } + +mplsTunnelEgressLSRId OBJECT-TYPE + SYNTAX MplsExtendedTunnelId + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Identity of the egress LSR associated with this + tunnel instance." + ::= { mplsTunnelEntry 4 } + +mplsTunnelName OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The canonical name assigned to the tunnel. This name + can be used to refer to the tunnel on the LSR's + console port. If mplsTunnelIsIf is set to true + then the ifName of the interface corresponding to + this tunnel should have a value equal to + mplsTunnelName. Also see the description of ifName + in RFC 2863." + REFERENCE + "RFC 2863 - The Interfaces Group MIB, McCloghrie, K., + and F. Kastenholtz, June 2000" + DEFVAL {""} + ::= { mplsTunnelEntry 5 } + +mplsTunnelDescr OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A textual string containing information about the + tunnel. If there is no description this object + contains a zero length string. This object is may + not be signaled by MPLS signaling protocols, + + + + consequentally the value of this object at transit + and egress LSRs MAY be automatically generated or + absent." + DEFVAL {""} + ::= { mplsTunnelEntry 6 } + +mplsTunnelIsIf OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Denotes whether or not this tunnel corresponds to an + interface represented in the interfaces group + table. Note that if this variable is set to true + then the ifName of the interface corresponding to + this tunnel should have a value equal to + mplsTunnelName. Also see the description of ifName + in RFC 2863. This object is meaningful only at the + ingress and egress LSRs." + REFERENCE + "RFC 2863 - The Interfaces Group MIB, McCloghrie, K., + and F. Kastenholtz, June 2000" + DEFVAL { false } + ::= { mplsTunnelEntry 7 } + +mplsTunnelIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelIsIf is set to true, then this value + contains the LSR-assigned ifIndex which corresponds + to an entry in the interfaces table. Otherwise + this variable should contain the value of zero + indicating that a valid ifIndex was not assigned to + this tunnel interface." + REFERENCE + "RFC 2863 - The Interfaces Group MIB, McCloghrie, K., + and F. Kastenholtz, June 2000" + DEFVAL { 0 } + ::= { mplsTunnelEntry 8 } + +mplsTunnelOwner OBJECT-TYPE + SYNTAX MplsOwner + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Denotes the entity that created and is responsible + + + + for managing this tunnel. This column is + automatically filled by the agent on creation of a + row." + ::= { mplsTunnelEntry 9 } + +mplsTunnelRole OBJECT-TYPE + SYNTAX INTEGER { head(1), + transit(2), + tail(3), + headTail(4) } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value signifies the role that this tunnel + entry/instance represents. This value MUST be set + to head(1) at the originating point of the tunnel. + This value MUST be set to transit(2) at transit + points along the tunnel, if transit points are + supported. This value MUST be set to tail(3) at the + terminating point of the tunnel if tunnel tails are + supported. + + The value headTail(4) is provided for tunnels that + begin and end on the same LSR." + DEFVAL { head } + ::= { mplsTunnelEntry 10 } + +mplsTunnelXCPointer OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable points to a row in the mplsXCTable. + This table identifies the segments that compose + this tunnel, their characteristics, and + relationships to each other. A value of zeroDotZero + indicates that no LSP has been associated with this + tunnel yet." + REFERENCE + "Srinivasan, C., Viswanathan, A., and T. Nadeau, + Multiprotocol Label Switching (MPLS) Label Switching + Router (LSR) Management Information Base (MIB), RFC 3813, + June 2004" + DEFVAL { zeroDotZero } + ::= { mplsTunnelEntry 11 } + +mplsTunnelSignallingProto OBJECT-TYPE + SYNTAX INTEGER { + + + + none(1), + rsvp(2), + crldp(3), + other(4) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The signalling protocol, if any, used to setup this + tunnel." + DEFVAL { none } + ::= { mplsTunnelEntry 12 } + +mplsTunnelSetupPrio OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates the setup priority of this tunnel." + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001 + 2. Constraint-Based LSP Setup using LDP, Jamoussi + (Editor), RFC 3212, January 2002" + DEFVAL { 0 } + ::= { mplsTunnelEntry 13 } + +mplsTunnelHoldingPrio OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates the holding priority for this tunnel." + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001 + + 2. Constraint-Based LSP Setup using LDP, Jamoussi + (Editor), RFC 3212, January 2002" + DEFVAL { 0 } + ::= { mplsTunnelEntry 14 } + +mplsTunnelSessionAttributes OBJECT-TYPE + SYNTAX BITS { + fastReroute (0), + mergingPermitted (1), + isPersistent (2), + isPinned (3), + + + + recordRoute(4) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This bit mask indicates optional session values for + this tunnel. The following describes these bit + fields: + + fastRerouteThis flag indicates that the any tunnel + hop may choose to reroute this tunnel without + tearing it down. This flag permits transit routers + to use a local repair mechanism which may result in + violation of the explicit routing of this tunnel. + When a fault is detected on an adjacent downstream + link or node, a transit router can re-route traffic + for fast service restoration. + + mergingPermitted This flag permits transit routers + to merge this session with other RSVP sessions for + the purpose of reducing resource overhead on + downstream transit routers, thereby providing + better network scaling. + + isPersistent Indicates whether this tunnel should + be restored automatically after a failure occurs. + + isPinned This flag indicates whether the loose- + routed hops of this tunnel are to be pinned. + + recordRouteThis flag indicates whether or not the + signalling protocol should remember the tunnel path + after it has been signaled." + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001." + ::= { mplsTunnelEntry 15 } + +mplsTunnelLocalProtectInUse OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates that the local repair mechanism is in use + to maintain this tunnel (usually in the face of an + outage of the link it was previously routed over)." + DEFVAL { false } + ::= { mplsTunnelEntry 16 } + + + +mplsTunnelResourcePointer OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable represents a pointer to the traffic + parameter specification for this tunnel. This + value may point at an entry in the + mplsTunnelResourceEntry to indicate which + mplsTunnelResourceEntry is to be assigned to this + LSP instance. This value may optionally point at + an externally defined traffic parameter + specification table. A value of zeroDotZero + indicates best-effort treatment. By having the + same value of this object, two or more LSPs can + indicate resource sharing." + DEFVAL { zeroDotZero } + ::= { mplsTunnelEntry 17 } + +mplsTunnelPrimaryInstance OBJECT-TYPE + SYNTAX MplsTunnelInstanceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the instance index of the primary instance + of this tunnel. More details of the definition of + tunnel instances and the primary tunnel instance + can be found in the description of the TEXTUAL-CONVENTION + MplsTunnelInstanceIndex." + DEFVAL { 0 } + ::= { mplsTunnelEntry 18 } + +mplsTunnelInstancePriority OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value indicates which priority, in descending + order, with 0 indicating the lowest priority, + within a group of tunnel instances. A group of + tunnel instances is defined as a set of LSPs with + the same mplsTunnelIndex in this table, but with a + different mplsTunnelInstance. Tunnel instance + priorities are used to denote the priority at which + a particular tunnel instance will supercede + another. Instances of tunnels containing the same + mplsTunnelInstancePriority will be used for load + sharing." + + + + DEFVAL { 0 } + ::= { mplsTunnelEntry 19 } + +mplsTunnelHopTableIndex OBJECT-TYPE + SYNTAX MplsPathIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Index into the mplsTunnelHopTable entry that + specifies the explicit route hops for this tunnel. + This object is meaningful only at the head-end of + the tunnel." + DEFVAL { 0 } + ::= { mplsTunnelEntry 20 } + +mplsTunnelPathInUse OBJECT-TYPE + SYNTAX MplsPathIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value denotes the configured path that was + chosen for this tunnel. This value reflects the + secondary index into mplsTunnelHopTable. This path + may not exactly match the one in + mplsTunnelARHopTable due to the fact that some CSPF + modification may have taken place. See + mplsTunnelARHopTable for the actual path being + taken by the tunnel. A value of zero denotes that + no path is currently in use or available." + DEFVAL { 0 } + ::= { mplsTunnelEntry 21 } + +mplsTunnelARHopTableIndex OBJECT-TYPE + SYNTAX MplsPathIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Index into the mplsTunnelARHopTable entry that + specifies the actual hops traversed by the tunnel. + This is automatically updated by the agent when the + actual hops becomes available." + DEFVAL { 0 } + ::= { mplsTunnelEntry 22 } + +mplsTunnelCHopTableIndex OBJECT-TYPE + SYNTAX MplsPathIndexOrZero + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "Index into the mplsTunnelCHopTable entry that + specifies the computed hops traversed by the + tunnel. This is automatically updated by the agent + when computed hops become available or when + computed hops get modified." + DEFVAL { 0 } + ::= { mplsTunnelEntry 23 } + +mplsTunnelIncludeAnyAffinity OBJECT-TYPE + SYNTAX MplsTunnelAffinity + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A link satisfies the include-any constraint if and + only if the constraint is zero, or the link and the + constraint have a resource class in common." + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001." + ::= { mplsTunnelEntry 24 } + +mplsTunnelIncludeAllAffinity OBJECT-TYPE + SYNTAX MplsTunnelAffinity + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A link satisfies the include-all constraint if and + only if the link contains all of the administrative + groups specified in the constraint." + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001." + ::= { mplsTunnelEntry 25 } + +mplsTunnelExcludeAnyAffinity OBJECT-TYPE + SYNTAX MplsTunnelAffinity + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A link satisfies the exclude-any constraint if and + only if the link contains none of the + administrative groups specified in the constraint." + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001." + DEFVAL { 0 } + ::= { mplsTunnelEntry 26 } + + + +mplsTunnelTotalUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the aggregate up time for all + instances of this tunnel, if available. If this + value is unavailable, it MUST return a value of 0." + ::= { mplsTunnelEntry 27 } + +mplsTunnelInstanceUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value identifies the total time that this + tunnel instance's operStatus has been Up(1)." + ::= { mplsTunnelEntry 28 } + +mplsTunnelPrimaryUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the total time the primary instance of + this tunnel has been active. The primary instance + of this tunnel is defined in + mplsTunnelPrimaryInstance." + ::= { mplsTunnelEntry 29 } + +mplsTunnelPathChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the number of times the actual path for + this tunnel instance has changed." + ::= { mplsTunnelEntry 30 } + +mplsTunnelLastPathChange OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the time since the last change to the + actual path for this tunnel instance." + ::= { mplsTunnelEntry 31 } + + + + +mplsTunnelCreationTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the value of SysUpTime when the first + instance of this tunnel came into existence. + That is, when the value of mplsTunnelOperStatus + was first set to up(1)." + ::= { mplsTunnelEntry 32 } + +mplsTunnelStateTransitions OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the number of times the state + (mplsTunnelOperStatus) of this tunnel instance has + changed." + ::= { mplsTunnelEntry 33 } + +mplsTunnelAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + -- ready to pass packets + up(1), + down(2), + -- in some test mode + testing(3) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates the desired operational status of this + tunnel." + ::= { mplsTunnelEntry 34 } + +mplsTunnelOperStatus OBJECT-TYPE + SYNTAX INTEGER { + -- ready to pass packets + up(1), + down(2), + -- in some test mode + testing(3), + -- status cannot be determined + unknown(4), + dormant(5), + -- some component is missing + notPresent(6), + + + + -- down due to the state of + -- lower layer interfaces + lowerLayerDown(7) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the actual operational status of this + tunnel, which is typically but not limited to, a + function of the state of individual segments of + this tunnel." + ::= { mplsTunnelEntry 35 } + +mplsTunnelRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable is used to create, modify, and/or + delete a row in this table. When a row in this + table is in active(1) state, no objects in that row + can be modified by the agent except + mplsTunnelAdminStatus, mplsTunnelRowStatus and + mplsTunnelStorageType." + ::= { mplsTunnelEntry 36 } + +mplsTunnelStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The storage type for this tunnel entry. + Conceptual rows having the value 'permanent' + need not allow write-access to any columnar + objects in the row." + DEFVAL { volatile } + ::= { mplsTunnelEntry 37 } + +-- End of mplsTunnelTable + +mplsTunnelHopListIndexNext OBJECT-TYPE + SYNTAX MplsPathIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains an appropriate value to be used + for mplsTunnelHopListIndex when creating entries in + the mplsTunnelHopTable. If the number of + unassigned entries is exhausted, a retrieval + + + + operation will return a value of 0. This object + may also return a value of 0 when the LSR is unable + to accept conceptual row creation, for example, if + the mplsTunnelHopTable is implemented as read-only. + To obtain the value of mplsTunnelHopListIndex for a + new entry in the mplsTunnelHopTable, the manager + issues a management protocol retrieval operation to + obtain the current value of mplsTunnelHopIndex. + + When the SET is performed to create a row in the + mplsTunnelHopTable, the Command Responder (agent) + must determine whether the value is indeed still + unused; Two Network Management Applications may + attempt to create a row (configuration entry) + simultaneously and use the same value. If it is + currently unused, the SET succeeds and the Command + Responder (agent) changes the value of this object, + according to an implementation-specific algorithm. + If the value is in use, however, the SET fails. The + Network Management Application must then re-read + this variable to obtain a new usable value." + ::= { mplsTeObjects 3 } + +mplsTunnelHopTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelHopTable is used to indicate the hops, + strict or loose, for an instance of an MPLS tunnel + defined in mplsTunnelTable, when it is established + via signalling, for the outgoing direction of the + tunnel. Thus at a transit LSR, this table contains + the desired path of the tunnel from this LSR + onwards. Each row in this table is indexed by + mplsTunnelHopListIndex which corresponds to a group + of hop lists or path options. Each row also has a + secondary index mplsTunnelHopIndex, which indicates + a group of hops (also known as a path option). + Finally, the third index, mplsTunnelHopIndex + indicates the specific hop information for a path + option. In case we want to specify a particular + interface on the originating LSR of an outgoing + tunnel by which we want packets to exit the LSR, + we specify this as the first hop for this tunnel in + mplsTunnelHopTable." + ::= { mplsTeObjects 4 } + + + + +mplsTunnelHopEntry OBJECT-TYPE + SYNTAX MplsTunnelHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents a tunnel hop. An + entry is created by a network administrator for + signaled ERLSP set up by an MPLS signalling + protocol." + INDEX { + mplsTunnelHopListIndex, + mplsTunnelHopPathOptionIndex, + mplsTunnelHopIndex + } + ::= { mplsTunnelHopTable 1 } + +MplsTunnelHopEntry ::= SEQUENCE { + mplsTunnelHopListIndex MplsPathIndex, + mplsTunnelHopPathOptionIndex MplsPathIndex, + mplsTunnelHopIndex MplsPathIndex, + mplsTunnelHopAddrType TeHopAddressType, + mplsTunnelHopIpAddr TeHopAddress, + mplsTunnelHopIpPrefixLen InetAddressPrefixLength, + mplsTunnelHopAsNumber TeHopAddressAS, + mplsTunnelHopAddrUnnum TeHopAddressUnnum, + mplsTunnelHopLspId MplsLSPID, + mplsTunnelHopType INTEGER, + mplsTunnelHopInclude TruthValue, + mplsTunnelHopPathOptionName SnmpAdminString, + mplsTunnelHopEntryPathComp INTEGER, + mplsTunnelHopRowStatus RowStatus, + mplsTunnelHopStorageType StorageType + } + +mplsTunnelHopListIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Primary index into this table identifying a + particular explicit route object." + ::= { mplsTunnelHopEntry 1 } + +mplsTunnelHopPathOptionIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + + + "Secondary index into this table identifying a + particular group of hops representing a particular + configured path. This is otherwise known as a path + option." + ::= { mplsTunnelHopEntry 2 } + +mplsTunnelHopIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Tertiary index into this table identifying a + particular hop." + ::= { mplsTunnelHopEntry 3 } + +mplsTunnelHopAddrType OBJECT-TYPE + SYNTAX TeHopAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The Hop Address Type of this tunnel hop. + + The value of this object cannot be changed + if the value of the corresponding + mplsTunnelHopRowStatus object is 'active'. + + Note that lspid(5) is a valid option only + for tunnels signaled via CRLDP. + " + DEFVAL { ipv4 } + ::= { mplsTunnelHopEntry 4 } + +mplsTunnelHopIpAddr OBJECT-TYPE + SYNTAX TeHopAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The Tunnel Hop Address for this tunnel hop. + + The type of this address is determined by the + value of the corresponding mplsTunnelHopAddrType. + + The value of this object cannot be changed + if the value of the corresponding + mplsTunnelHopRowStatus object is 'active'. + " + DEFVAL { '00000000'h } -- IPv4 address 0.0.0.0 + ::= { mplsTunnelHopEntry 5 } + + mplsTunnelHopIpPrefixLen OBJECT-TYPE + + + + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-create + STATUS current + DESCRIPTION "If mplsTunnelHopAddrType is set to ipv4(1) or + ipv6(2), then this value will contain an + appropriate prefix length for the IP address in + object mplsTunnelHopIpAddr. Otherwise this value + is irrelevant and should be ignored. + " + DEFVAL { 32 } + ::= { mplsTunnelHopEntry 6 } + +mplsTunnelHopAsNumber OBJECT-TYPE + SYNTAX TeHopAddressAS + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If mplsTunnelHopAddrType is set to asnumber(3), then + this value will contain the AS number of this hop. + Otherwise the agent should set this object to zero- + length string and the manager should ignore this." + ::= { mplsTunnelHopEntry 7 } + +mplsTunnelHopAddrUnnum OBJECT-TYPE + SYNTAX TeHopAddressUnnum + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If mplsTunnelHopAddrType is set to unnum(4), then + this value will contain the interface identifier of + the unnumbered interface for this hop. This object + should be used in conjunction with + mplsTunnelHopIpAddress which would contain the LSR + Router ID in this case. Otherwise the agent should + set this object to zero-length string and the + manager should ignore this." + ::= { mplsTunnelHopEntry 8 } + +mplsTunnelHopLspId OBJECT-TYPE + SYNTAX MplsLSPID + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If mplsTunnelHopAddrType is set to lspid(5), then + this value will contain the LSPID of a tunnel of + this hop. The present tunnel being configured is + tunneled through this hop (using label stacking). + This object is otherwise insignificant and should + + + + contain a value of 0 to indicate this fact." + ::= { mplsTunnelHopEntry 9 } + +mplsTunnelHopType OBJECT-TYPE + SYNTAX INTEGER { + strict(1), + loose(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Denotes whether this tunnel hop is routed in a + strict or loose fashion. The value of this object + has no meaning if the mplsTunnelHopInclude object + is set to 'false'." + ::= { mplsTunnelHopEntry 10 } + +mplsTunnelHopInclude OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If this value is set to true, then this indicates + that this hop must be included in the tunnel's + path. If this value is set to 'false', then this hop + must be avoided when calculating the path for this + tunnel. The default value of this object is 'true', + so that by default all indicated hops are included + in the CSPF path computation. If this object is set + to 'false' the value of mplsTunnelHopType should be + ignored." + DEFVAL { true } + ::= { mplsTunnelHopEntry 11 } + +mplsTunnelHopPathOptionName OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The description of this series of hops as they + relate to the specified path option. The + value of this object SHOULD be the same for + each hop in the series that comprises a + path option." + ::= { mplsTunnelHopEntry 12 } + +mplsTunnelHopEntryPathComp OBJECT-TYPE + SYNTAX INTEGER { + + + + dynamic(1), -- CSPF computed + explicit(2) -- strict hop + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If this value is set to dynamic, then the user + should only specify the source and destination of + the path and expect that the CSPF will calculate + the remainder of the path. If this value is set to + explicit, the user should specify the entire path + for the tunnel to take. This path may contain + strict or loose hops. Each hop along a specific + path SHOULD have this object set to the same value" + ::= { mplsTunnelHopEntry 13 } + +mplsTunnelHopRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable is used to create, modify, and/or + delete a row in this table. When a row in this + table is in active(1) state, no objects in that row + can be modified by the agent except + mplsTunnelHopRowStatus and + mplsTunnelHopStorageType." + ::= { mplsTunnelHopEntry 14 } + +mplsTunnelHopStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this Hop entry. Conceptual + rows having the value 'permanent' need not + allow write-access to any columnar objects + in the row." + DEFVAL { volatile } + ::= { mplsTunnelHopEntry 15 } + +-- End of mplsTunnelHopTable + +-- Begin of mplsTunnelResourceTable + +mplsTunnelResourceIndexNext OBJECT-TYPE + SYNTAX Unsigned32 (0.. 2147483647) + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "This object contains the next appropriate value to + be used for mplsTunnelResourceIndex when creating + entries in the mplsTunnelResourceTable. If the + number of unassigned entries is exhausted, a + retrieval operation will return a value of 0. This + object may also return a value of 0 when the LSR is + unable to accept conceptual row creation, for + example, if the mplsTunnelTable is implemented as + read-only. To obtain the mplsTunnelResourceIndex + value for a new entry, the manager must first issue + a management protocol retrieval operation to obtain + the current value of this object. + + When the SET is performed to create a row in the + mplsTunnelResourceTable, the Command Responder + (agent) must determine whether the value is indeed + still unused; Two Network Management Applications + may attempt to create a row (configuration entry) + simultaneously and use the same value. If it is + currently unused, the SET succeeds and the Command + Responder (agent) changes the value of this object, + according to an implementation-specific algorithm. + If the value is in use, however, the SET fails. The + Network Management Application must then re-read + this variable to obtain a new usable value." + ::= { mplsTeObjects 5 } + +mplsTunnelResourceTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelResourceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelResourceTable allows a manager to + specify which resources are desired for an MPLS + tunnel. This table also allows several tunnels to + point to a single entry in this table, implying + that these tunnels should share resources." + ::= { mplsTeObjects 6 } + +mplsTunnelResourceEntry OBJECT-TYPE + SYNTAX MplsTunnelResourceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents a set of resources + for an MPLS tunnel. An entry can be created by a + + + + network administrator or by an SNMP agent as + instructed by any MPLS signalling protocol. + An entry in this table referenced by a tunnel instance + with zero mplsTunnelInstance value indicates a + configured set of resource parameter. An entry + referenced by a tunnel instance with a non-zero + mplsTunnelInstance reflects the in-use resource + parameters for the tunnel instance which may have + been negotiated or modified by the MPLS signaling + protocols." + INDEX { mplsTunnelResourceIndex } + ::= { mplsTunnelResourceTable 1 } + +MplsTunnelResourceEntry ::= SEQUENCE { + mplsTunnelResourceIndex Unsigned32, + mplsTunnelResourceMaxRate MplsBitRate, + mplsTunnelResourceMeanRate MplsBitRate, + mplsTunnelResourceMaxBurstSize MplsBurstSize, + mplsTunnelResourceMeanBurstSize MplsBurstSize, + mplsTunnelResourceExBurstSize MplsBurstSize, + mplsTunnelResourceFrequency INTEGER, + mplsTunnelResourceWeight Unsigned32, + mplsTunnelResourceRowStatus RowStatus, + mplsTunnelResourceStorageType StorageType + } + +mplsTunnelResourceIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..2147483647) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Uniquely identifies this row." + ::= { mplsTunnelResourceEntry 1 } + +mplsTunnelResourceMaxRate OBJECT-TYPE + SYNTAX MplsBitRate + UNITS "kilobits per second" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The maximum rate in bits/second. Note that setting + mplsTunnelResourceMaxRate, + mplsTunnelResourceMeanRate, and + mplsTunnelResourceMaxBurstSize to 0 indicates best- + effort treatment." + ::= { mplsTunnelResourceEntry 2 } + +mplsTunnelResourceMeanRate OBJECT-TYPE + + + + SYNTAX MplsBitRate + UNITS "kilobits per second" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is copied into an instance of + mplsTrafficParamMeanRate in the + mplsTrafficParamTable. The OID of this table entry + is then copied into the corresponding + mplsInSegmentTrafficParamPtr." + ::= { mplsTunnelResourceEntry 3 } + +mplsTunnelResourceMaxBurstSize OBJECT-TYPE + SYNTAX MplsBurstSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The maximum burst size in bytes." + ::= { mplsTunnelResourceEntry 4 } + +mplsTunnelResourceMeanBurstSize OBJECT-TYPE + SYNTAX MplsBurstSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The mean burst size in bytes. The implementations + which do not implement this variable must return + a noSuchObject exception for this object and must + not allow a user to set this object." + ::= { mplsTunnelResourceEntry 5 } + +mplsTunnelResourceExBurstSize OBJECT-TYPE + SYNTAX MplsBurstSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Excess burst size in bytes. The implementations + which do not implement this variable must return + noSuchObject exception for this object and must + not allow a user to set this value." + REFERENCE + "CR-LDP Specification, Section 4.3." + ::= { mplsTunnelResourceEntry 6 } + +mplsTunnelResourceFrequency OBJECT-TYPE + + + + SYNTAX INTEGER { unspecified(1), + frequent(2), + veryFrequent(3) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The granularity of the availability of committed + rate. The implementations which do not implement + this variable must return unspecified(1) for this + value and must not allow a user to set this value." + REFERENCE + "CR-LDP Specification, Section 4.3." + ::= { mplsTunnelResourceEntry 7 } + +mplsTunnelResourceWeight OBJECT-TYPE + SYNTAX Unsigned32(0..255) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The relative weight for using excess bandwidth above + its committed rate. The value of 0 means that + weight is not applicable for the CR-LSP." + REFERENCE + "CR-LDP Specification, Section 4.3." + ::= { mplsTunnelResourceEntry 8 } + +mplsTunnelResourceRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable is used to create, modify, and/or + delete a row in this table. When a row in this + table is in active(1) state, no objects in that row + can be modified by the agent except + mplsTunnelResourceRowStatus and + mplsTunnelResourceStorageType." + ::= { mplsTunnelResourceEntry 9 } + +mplsTunnelResourceStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this Hop entry. Conceptual + rows having the value 'permanent' need not + allow write-access to any columnar objects + + + + in the row." + DEFVAL { volatile } + + ::= { mplsTunnelResourceEntry 10 } + + +-- End mplsTunnelResourceTable +-- Tunnel Actual Route Hop table. + +mplsTunnelARHopTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelARHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelARHopTable is used to indicate the + hops for an MPLS tunnel defined in mplsTunnelTable, + as reported by the MPLS signalling protocol. Thus at + a transit LSR, this table (if the table is supported + and if the signaling protocol is recording actual + route information) contains the actual route of the + whole tunnel. If the signaling protocol is not + recording the actual route, this table MAY report + the information from the mplsTunnelHopTable or the + mplsTunnelCHopTable. + + Each row in this table is indexed by + mplsTunnelARHopListIndex. Each row also has a + secondary index mplsTunnelARHopIndex, corresponding + to the next hop that this row corresponds to. + + Please note that since the information necessary to + build entries within this table is not provided by + some MPLS signalling protocols, implementation of + this table is optional. Furthermore, since the + information in this table is actually provided by + the MPLS signalling protocol after the path has + been set-up, the entries in this table are provided + only for observation, and hence, all variables in + this table are accessible exclusively as read- + only. + + Note also that the contents of this table may change + while it is being read because of re-routing + activities. A network administrator may verify that + the actual route read is consistent by reference to + the mplsTunnelLastPathChange object." + ::= { mplsTeObjects 7 } + + + + +mplsTunnelARHopEntry OBJECT-TYPE + SYNTAX MplsTunnelARHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents a tunnel hop. An + entry is created by the agent for signaled ERLSP + set up by an MPLS signalling protocol." + INDEX { mplsTunnelARHopListIndex, mplsTunnelARHopIndex } + ::= { mplsTunnelARHopTable 1 } + +MplsTunnelARHopEntry ::= SEQUENCE { + mplsTunnelARHopListIndex MplsPathIndex, + mplsTunnelARHopIndex MplsPathIndex, + mplsTunnelARHopAddrType TeHopAddressType, + mplsTunnelARHopIpAddr TeHopAddress, + mplsTunnelARHopAddrUnnum TeHopAddressUnnum, + mplsTunnelARHopLspId MplsLSPID + } + +mplsTunnelARHopListIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Primary index into this table identifying a + particular recorded hop list." + ::= { mplsTunnelARHopEntry 1 } + +mplsTunnelARHopIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Secondary index into this table identifying the + particular hop." + ::= { mplsTunnelARHopEntry 2 } + +mplsTunnelARHopAddrType OBJECT-TYPE + SYNTAX TeHopAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Hop Address Type of this tunnel hop. + + Note that lspid(5) is a valid option only + for tunnels signaled via CRLDP." + DEFVAL { ipv4 } + + + + ::= { mplsTunnelARHopEntry 3 } + +mplsTunnelARHopIpAddr OBJECT-TYPE + SYNTAX TeHopAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Tunnel Hop Address for this tunnel hop. + + The type of this address is determined by the + value of the corresponding mplsTunnelARHopAddrType. + If mplsTunnelARHopAddrType is set to unnum(4), + then this value contains the LSR Router ID of the + unnumbered interface. Otherwise the agent SHOULD + set this object to the zero-length string and the + manager should ignore this object." + DEFVAL { '00000000'h } -- IPv4 address 0.0.0.0 + ::= { mplsTunnelARHopEntry 4 } + +mplsTunnelARHopAddrUnnum OBJECT-TYPE + SYNTAX TeHopAddressUnnum + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelARHopAddrType is set to unnum(4), then + this value will contain the interface identifier of + the unnumbered interface for this hop. This object + should be used in conjunction with + mplsTunnelARHopIpAddr which would contain the LSR + Router ID in this case. Otherwise the agent should + set this object to zero-length string and the + manager should ignore this." + ::= { mplsTunnelARHopEntry 5 } + +mplsTunnelARHopLspId OBJECT-TYPE + SYNTAX MplsLSPID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelARHopAddrType is set to lspid(5), then + this value will contain the LSP ID of this hop. + This object is otherwise insignificant and should + contain a value of 0 to indicate this fact." + ::= { mplsTunnelARHopEntry 6 } + +-- End of mplsTunnelARHopTable + + + + + +-- Tunnel Computed Hop table. + +mplsTunnelCHopTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelCHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelCHopTable is used to indicate the + hops, strict or loose, for an MPLS tunnel defined + in mplsTunnelTable, as computed by a constraint- + based routing protocol, based on the + mplsTunnelHopTable for the outgoing direction of + the tunnel. Thus at a transit LSR, this table (if + the table is supported) MAY contain the path + computed by the CSPF engine on (or on behalf of) + this LSR. Each row in this table is indexed by + mplsTunnelCHopListIndex. Each row also has a + secondary index mplsTunnelCHopIndex, corresponding + to the next hop that this row corresponds to. In + case we want to specify a particular interface on + the originating LSR of an outgoing tunnel by which + we want packets to exit the LSR, we specify this as + the first hop for this tunnel in + mplsTunnelCHopTable. + + Please note that since the information necessary to + build entries within this table may not be + supported by some LSRs, implementation of this + table is optional. Furthermore, since the + information in this table describes the path + computed by the CSPF engine the entries in this + table are read-only." + ::= { mplsTeObjects 8 } + +mplsTunnelCHopEntry OBJECT-TYPE + SYNTAX MplsTunnelCHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents a tunnel hop. An + entry in this table is created by a path + computation engine using CSPF techniques applied to + the information collected by routing protocols and + the hops specified in the corresponding + mplsTunnelHopTable." + INDEX { mplsTunnelCHopListIndex, mplsTunnelCHopIndex } + ::= { mplsTunnelCHopTable 1 } + + + + +MplsTunnelCHopEntry ::= SEQUENCE { + mplsTunnelCHopListIndex MplsPathIndex, + mplsTunnelCHopIndex MplsPathIndex, + mplsTunnelCHopAddrType TeHopAddressType, + mplsTunnelCHopIpAddr TeHopAddress, + mplsTunnelCHopIpPrefixLen InetAddressPrefixLength, + mplsTunnelCHopAsNumber TeHopAddressAS, + mplsTunnelCHopAddrUnnum TeHopAddressUnnum, + mplsTunnelCHopLspId MplsLSPID, + mplsTunnelCHopType INTEGER + } + +mplsTunnelCHopListIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Primary index into this table identifying a + particular computed hop list." + ::= { mplsTunnelCHopEntry 1 } + +mplsTunnelCHopIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Secondary index into this table identifying the + particular hop." + ::= { mplsTunnelCHopEntry 2 } + +mplsTunnelCHopAddrType OBJECT-TYPE + SYNTAX TeHopAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Hop Address Type of this tunnel hop. + + Note that lspid(5) is a valid option only + for tunnels signaled via CRLDP." + DEFVAL { ipv4 } + ::= { mplsTunnelCHopEntry 3 } + +mplsTunnelCHopIpAddr OBJECT-TYPE + SYNTAX TeHopAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Tunnel Hop Address for this tunnel hop. + + + + + The type of this address is determined by the + value of the corresponding mplsTunnelCHopAddrType. + + If mplsTunnelCHopAddrType is set to unnum(4), then + this value will contain the LSR Router ID of the + unnumbered interface. Otherwise the agent should + set this object to the zero-length string and the + manager SHOULD ignore this object." + DEFVAL { '00000000'h } -- IPv4 address 0.0.0.0 + ::= { mplsTunnelCHopEntry 4 } + +mplsTunnelCHopIpPrefixLen OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelCHopAddrType is set to ipv4(1) or + ipv6(2), then this value will contain an + appropriate prefix length for the IP address in + object mplsTunnelCHopIpAddr. Otherwise this value + is irrelevant and should be ignored. + " + DEFVAL { 32 } + ::= { mplsTunnelCHopEntry 5 } + +mplsTunnelCHopAsNumber OBJECT-TYPE + SYNTAX TeHopAddressAS + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelCHopAddrType is set to asnumber(3), + then this value will contain the AS number of this + hop. Otherwise the agent should set this object to + zero-length string and the manager should ignore + this." + ::= { mplsTunnelCHopEntry 6 } + +mplsTunnelCHopAddrUnnum OBJECT-TYPE + SYNTAX TeHopAddressUnnum + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelCHopAddrType is set to unnum(4), then + this value will contain the unnumbered interface + identifier of this hop. This object should be used + in conjunction with mplsTunnelCHopIpAddr which + would contain the LSR Router ID in this case. + + + + Otherwise the agent should set this object to zero- + length string and the manager should ignore this." + ::= { mplsTunnelCHopEntry 7 } + +mplsTunnelCHopLspId OBJECT-TYPE + SYNTAX MplsLSPID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelCHopAddrType is set to lspid(5), then + this value will contain the LSP ID of this hop. + This object is otherwise insignificant and should + contain a value of 0 to indicate this fact." + ::= { mplsTunnelCHopEntry 8 } + +mplsTunnelCHopType OBJECT-TYPE + SYNTAX INTEGER { strict(1), + loose(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Denotes whether this is tunnel hop is routed in a + strict or loose fashion." + ::= { mplsTunnelCHopEntry 9 } + +-- End of mplsTunnelCHopTable + + +-- MPLS Tunnel Performance Table. + +mplsTunnelPerfTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table provides per-tunnel instance MPLS + performance information." + ::= { mplsTeObjects 9 } + +mplsTunnelPerfEntry OBJECT-TYPE + SYNTAX MplsTunnelPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the LSR for + every tunnel. Its is an extension to + mplsTunnelEntry." + + + + AUGMENTS { mplsTunnelEntry } + ::= { mplsTunnelPerfTable 1 } + +MplsTunnelPerfEntry ::= SEQUENCE { + mplsTunnelPerfPackets Counter32, + mplsTunnelPerfHCPackets Counter64, + mplsTunnelPerfErrors Counter32, + mplsTunnelPerfBytes Counter32, + mplsTunnelPerfHCBytes Counter64 + } + +mplsTunnelPerfPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of packets forwarded by the tunnel. + This object should represents the 32-bit + value of the least significant part of the + 64-bit value if both mplsTunnelPerfHCPackets + is returned." + ::= { mplsTunnelPerfEntry 1 } + +mplsTunnelPerfHCPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High capacity counter for number of packets + forwarded by the tunnel. " + ::= { mplsTunnelPerfEntry 2 } + +mplsTunnelPerfErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of packets dropped because of errors or for + other reasons." + ::= { mplsTunnelPerfEntry 3 } + +mplsTunnelPerfBytes OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of bytes forwarded by the tunnel. + This object should represents the 32-bit + + + + value of the least significant part of the + 64-bit value if both mplsTunnelPerfHCBytes + is returned." + ::= { mplsTunnelPerfEntry 4 } + +mplsTunnelPerfHCBytes OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High capacity counter for number of bytes forwarded + by the tunnel." + ::= { mplsTunnelPerfEntry 5 } + +-- End of mplsTunnelPerfTable + + +-- CR-LDP Tunnel Resource Table + +mplsTunnelCRLDPResTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelCRLDPResEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelCRLDPResTable allows a manager to + specify which CR-LDP-specific resources are desired + for an MPLS tunnel if that tunnel is signaled using + CR-LDP. Note that these attributes are in addition + to those specified in mplsTunnelResourceTable. This + table also allows several tunnels to point to a + single entry in this table, implying that these + tunnels should share resources." + ::= { mplsTeObjects 10 } + +mplsTunnelCRLDPResEntry OBJECT-TYPE + SYNTAX MplsTunnelCRLDPResEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents a set of resources + for an MPLS tunnel established using CRLDP + (mplsTunnelSignallingProto equal to crldp (3)). An + entry can be created by a network administrator or + by an SNMP agent as instructed by any MPLS + signalling protocol." + INDEX { mplsTunnelResourceIndex } + ::= { mplsTunnelCRLDPResTable 1 } + + + + +MplsTunnelCRLDPResEntry ::= SEQUENCE { + mplsTunnelCRLDPResMeanBurstSize MplsBurstSize, + mplsTunnelCRLDPResExBurstSize MplsBurstSize, + mplsTunnelCRLDPResFrequency INTEGER, + mplsTunnelCRLDPResWeight Unsigned32, + mplsTunnelCRLDPResFlags Unsigned32, + mplsTunnelCRLDPResRowStatus RowStatus, + mplsTunnelCRLDPResStorageType StorageType + } + +mplsTunnelCRLDPResMeanBurstSize OBJECT-TYPE + SYNTAX MplsBurstSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The mean burst size in bytes." + ::= { mplsTunnelCRLDPResEntry 1 } + +mplsTunnelCRLDPResExBurstSize OBJECT-TYPE + SYNTAX MplsBurstSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Excess burst size in bytes." + REFERENCE + "CR-LDP Specification, Section 4.3." + ::= { mplsTunnelCRLDPResEntry 2 } + +mplsTunnelCRLDPResFrequency OBJECT-TYPE + SYNTAX INTEGER { + unspecified(1), + frequent(2), + veryFrequent(3) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The granularity of the availability of committed + rate." + REFERENCE + "CR-LDP Specification, Section 4.3." + ::= { mplsTunnelCRLDPResEntry 3 } + +mplsTunnelCRLDPResWeight OBJECT-TYPE + SYNTAX Unsigned32(0..255) + MAX-ACCESS read-create + + + + STATUS current + DESCRIPTION + "The relative weight for using excess bandwidth above + its committed rate. The value of 0 means that + weight is not applicable for the CR-LSP." + REFERENCE + "CR-LDP Specification, Section 4.3." + DEFVAL { 0 } + ::= { mplsTunnelCRLDPResEntry 4 } + +mplsTunnelCRLDPResFlags OBJECT-TYPE + SYNTAX Unsigned32 (0..63) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value of the 1 byte Flags conveyed as part of + the traffic parameters during the establishment of + the CRLSP. The bits in this object are to be + interpreted as follows. + + +--+--+--+--+--+--+--+--+ + | Res |F6|F5|F4|F3|F2|F1| + +--+--+--+--+--+--+--+--+ + + Res - These bits are reserved. Zero on transmission. + Ignored on receipt. + F1 - Corresponds to the PDR. + F2 - Corresponds to the PBS. + F3 - Corresponds to the CDR. + F4 - Corresponds to the CBS. + F5 - Corresponds to the EBS. + F6 - Corresponds to the Weight. + + Each flag if is a Negotiable Flag corresponding to a + Traffic Parameter. The Negotiable Flag value zero + denotes Not Negotiable and value one denotes + Negotiable." + REFERENCE + "1. Section 4.3, Constraint-Based LSP Setup using + LDP, Jamoussi (Editor), RFC 3212, January 2002" + DEFVAL { 0 } + ::= { mplsTunnelCRLDPResEntry 5 } + +mplsTunnelCRLDPResRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "This variable is used to create, modify, and/or + delete a row in this table. When a row in this + table is in active(1) state, no objects in that row + can be modified by the agent except + mplsTunnelCRLDPResRowStatus and + mplsTunnelCRLDPResStorageType." + ::= { mplsTunnelCRLDPResEntry 6 } + +mplsTunnelCRLDPResStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this CR-LDP Resource entry. + Conceptual rows having the value 'permanent' + need not allow write-access to any columnar + objects in the row." + DEFVAL { volatile } + ::= { mplsTunnelCRLDPResEntry 7 } + + +-- Notifications. + +mplsTunnelNotificationEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If this object is true, then it enables the + generation of mplsTunnelUp and mplsTunnelDown + traps, otherwise these traps are not emitted." + DEFVAL { false } + ::= { mplsTeObjects 11 } + +mplsTunnelUp NOTIFICATION-TYPE + OBJECTS { + mplsTunnelAdminStatus, + mplsTunnelOperStatus + } + STATUS current + DESCRIPTION + "This notification is generated when a + mplsTunnelOperStatus object for one of the + configured tunnels is about to leave the down state + and transition into some other state (but not into + the notPresent state). This other state is + indicated by the included value of + mplsTunnelOperStatus." + + + + ::= { mplsTeNotifications 1 } + +mplsTunnelDown NOTIFICATION-TYPE + OBJECTS { + mplsTunnelAdminStatus, + mplsTunnelOperStatus + } + STATUS current + DESCRIPTION + "This notification is generated when a + mplsTunnelOperStatus object for one of the + configured tunnels is about to enter the down state + from some other state (but not from the notPresent + state). This other state is indicated by the + included value of mplsTunnelOperStatus." + ::= { mplsTeNotifications 2 } + +mplsTunnelRerouted NOTIFICATION-TYPE + OBJECTS { + mplsTunnelAdminStatus, + mplsTunnelOperStatus + } + STATUS current + DESCRIPTION + "This notification is generated when a tunnel is + rerouted. If the mplsTunnelARHopTable is used, then + this tunnel instance's entry in the + mplsTunnelARHopTable MAY contain the new path for + this tunnel some time after this trap is issued by + the agent." + ::= { mplsTeNotifications 3 } + +mplsTunnelReoptimized NOTIFICATION-TYPE + OBJECTS { + mplsTunnelAdminStatus, + mplsTunnelOperStatus + } + STATUS current + DESCRIPTION + "This notification is generated when a tunnel is + reoptimized. If the mplsTunnelARHopTable is used, + then this tunnel instance's entry in the + mplsTunnelARHopTable MAY contain the new path for + this tunnel some time after this trap is issued by + the agent." + ::= { mplsTeNotifications 4 } + +-- End of notifications. + + + +-- Module compliance. + +mplsTeGroups + OBJECT IDENTIFIER ::= { mplsTeConformance 1 } + +mplsTeCompliances + OBJECT IDENTIFIER ::= { mplsTeConformance 2 } + +-- Compliance requirement for fully compliant implementations. + +mplsTeModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "Compliance statement for agents that provide full + support the MPLS-TE-STD-MIB module." + + MODULE IF-MIB -- The Interfaces Group MIB, RFC 2863. + MANDATORY-GROUPS { + ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + } + + MODULE -- this module + + -- The mandatory group has to be implemented by all + -- LSRs that originate/terminate ESLSPs/tunnels. + -- In addition, depending on the type of tunnels + -- supported, other groups become mandatory as + -- explained below. + + MANDATORY-GROUPS { + mplsTunnelGroup, + mplsTunnelScalarGroup + } + + GROUP mplsTunnelManualGroup + DESCRIPTION + "This group is mandatory for devices which support + manual configuration of tunnels." + + GROUP mplsTunnelSignaledGroup + DESCRIPTION + "This group is mandatory for devices which support + signaled tunnel set up." + + GROUP mplsTunnelIsNotIntfcGroup + DESCRIPTION + "This group is mandatory for devices which support + + + + tunnels that are not interfaces." + + GROUP mplsTunnelIsIntfcGroup + DESCRIPTION + "This group is mandatory for devices which support + tunnels that are interfaces." + + GROUP mplsTunnelCRLDPResOptionalGroup + DESCRIPTION + "Objects in this group are required by + implementations supporting the CR-LDP protocol for + signalling of TE tunnels." + + GROUP mplsTeNotificationGroup + DESCRIPTION "This group is mandatory for those implementations + which can implement the notifications + contained in this group." + + OBJECT mplsTunnelRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required." + + OBJECT mplsTunnelHopRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required." + + OBJECT mplsTunnelCRLDPResRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is + not required." + + ::= { mplsTeCompliances 1 } + +-- Compliance requirement for read-only implementations. + +mplsTeModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + + + + DESCRIPTION + "Compliance requirement for implementations that only + provide read-only support for MPLS-TE-STD-MIB. + Such devices can then be monitored but cannot be + configured using this MIB modules." + + MODULE -- this module + + -- mplsTunnelTable + + MANDATORY-GROUPS { + mplsTunnelGroup, + mplsTunnelScalarGroup + } + + GROUP mplsTunnelManualGroup + DESCRIPTION + "This group is mandatory for devices which support + manual configuration of tunnels." + + GROUP mplsTunnelSignaledGroup + DESCRIPTION + "This group is mandatory for devices which support + signaled tunnel set up." + + GROUP mplsTunnelIsNotIntfcGroup + DESCRIPTION + "This group is mandatory for devices which support + tunnels that are not interfaces." + + GROUP mplsTunnelIsIntfcGroup + DESCRIPTION + "This group is mandatory for devices which support + tunnels that are interfaces." + + GROUP mplsTunnelCRLDPResOptionalGroup + DESCRIPTION + "Objects in this group are required by + implementations supporting the CR-LDP protocol for + signalling of TE tunnels." + + GROUP mplsTeNotificationGroup + DESCRIPTION "This group is mandatory for those implementations + which can implement the notifications + contained in this group." + + -- mplsTunnelTable + + + + + OBJECT mplsTunnelName + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelDescr + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelIsIf + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelIfIndex + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelXCPointer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelSignallingProto + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelSetupPrio + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHoldingPrio + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelSessionAttributes + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelLocalProtectInUse + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + OBJECT mplsTunnelResourcePointer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelInstancePriority + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHopTableIndex + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelIncludeAnyAffinity + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelIncludeAllAffinity + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelExcludeAnyAffinity + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelPathInUse + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelRole + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelAdminStatus + SYNTAX INTEGER { up (1), down (2) } + MIN-ACCESS read-only + DESCRIPTION + "Only up and down states must be supported. Write + access is not required." + + OBJECT mplsTunnelRowStatus + + + + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + -- mplsTunnelHopTable + + OBJECT mplsTunnelHopAddrType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelHopIpAddr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelHopIpPrefixLen + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHopAddrUnnum + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHopAsNumber + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHopLspId + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHopType + SYNTAX INTEGER { strict(1) } + MIN-ACCESS read-only + DESCRIPTION + "loose(2) need not be supported. Write access is + not required." + + OBJECT mplsTunnelHopInclude + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelHopPathOptionName + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + + + OBJECT mplsTunnelHopEntryPathComp + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelHopRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelHopStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + -- mplsTunnelResourceTable + + OBJECT mplsTunnelResourceMaxRate + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceMeanRate + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceMaxBurstSize + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceMeanBurstSize + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceExBurstSize + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelResourceFrequency + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceWeight + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + + + OBJECT mplsTunnelResourceStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + -- mplsTunnelCRLDPResTable + + OBJECT mplsTunnelCRLDPResMeanBurstSize + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResExBurstSize + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResFrequency + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResWeight + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResFlags + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { mplsTeCompliances 2 } + + +-- Units of conformance. + +mplsTunnelGroup OBJECT-GROUP + OBJECTS { + mplsTunnelIndexNext, + mplsTunnelName, + mplsTunnelDescr, + mplsTunnelOwner, + mplsTunnelXCPointer, + mplsTunnelIfIndex, + + + + mplsTunnelHopTableIndex, + mplsTunnelARHopTableIndex, + mplsTunnelCHopTableIndex, + mplsTunnelAdminStatus, + mplsTunnelOperStatus, + mplsTunnelRowStatus, + mplsTunnelNotificationEnable, + mplsTunnelStorageType, + mplsTunnelConfigured, + mplsTunnelActive, + mplsTunnelPrimaryInstance, + mplsTunnelPrimaryUpTime, + mplsTunnelPathChanges, + mplsTunnelLastPathChange, + mplsTunnelCreationTime, + mplsTunnelStateTransitions, + mplsTunnelIncludeAnyAffinity, + mplsTunnelIncludeAllAffinity, + mplsTunnelExcludeAnyAffinity, + mplsTunnelPerfPackets, + mplsTunnelPerfHCPackets, + mplsTunnelPerfErrors, + mplsTunnelPerfBytes, + mplsTunnelPerfHCBytes, + mplsTunnelResourcePointer, + mplsTunnelInstancePriority, + mplsTunnelPathInUse, + mplsTunnelRole, + mplsTunnelTotalUpTime, + mplsTunnelInstanceUpTime, + mplsTunnelResourceIndexNext, + mplsTunnelResourceMaxRate, + mplsTunnelResourceMeanRate, + mplsTunnelResourceMaxBurstSize, + mplsTunnelResourceMeanBurstSize, + mplsTunnelResourceExBurstSize, + mplsTunnelResourceFrequency, + mplsTunnelResourceWeight, + mplsTunnelResourceRowStatus, + mplsTunnelResourceStorageType, + mplsTunnelARHopAddrType, + mplsTunnelARHopIpAddr, + mplsTunnelARHopAddrUnnum, + mplsTunnelARHopLspId, + mplsTunnelCHopAddrType, + mplsTunnelCHopIpAddr, + mplsTunnelCHopIpPrefixLen, + mplsTunnelCHopAsNumber, + + + + mplsTunnelCHopAddrUnnum, + mplsTunnelCHopLspId, + mplsTunnelCHopType + } + STATUS current + DESCRIPTION + "Necessary, but not sufficient, set of objects to + implement tunnels. In addition, depending on the + type of the tunnels supported (for example, + manually configured or signaled, persistent or non- + persistent, etc.), the following other groups + defined below are mandatory: mplsTunnelManualGroup + and/or mplsTunnelSignaledGroup, + mplsTunnelIsNotIntfcGroup and/or + mplsTunnelIsIntfcGroup." + ::= { mplsTeGroups 1 } + +mplsTunnelManualGroup OBJECT-GROUP + OBJECTS { mplsTunnelSignallingProto } + STATUS current + DESCRIPTION + "Object(s) needed to implement manually configured + tunnels." + ::= { mplsTeGroups 2 } + +mplsTunnelSignaledGroup OBJECT-GROUP + OBJECTS { + mplsTunnelSetupPrio, + mplsTunnelHoldingPrio, + mplsTunnelSignallingProto, + mplsTunnelLocalProtectInUse, + mplsTunnelSessionAttributes, + mplsTunnelHopListIndexNext, + mplsTunnelHopAddrType, + mplsTunnelHopIpAddr, + mplsTunnelHopIpPrefixLen, + mplsTunnelHopAddrUnnum, + mplsTunnelHopAsNumber, + mplsTunnelHopLspId, + mplsTunnelHopType, + mplsTunnelHopInclude, + mplsTunnelHopPathOptionName, + mplsTunnelHopEntryPathComp, + mplsTunnelHopRowStatus, + mplsTunnelHopStorageType + } + STATUS current + DESCRIPTION + + + + "Objects needed to implement signaled tunnels." + ::= { mplsTeGroups 3 } + +mplsTunnelScalarGroup OBJECT-GROUP + OBJECTS { + mplsTunnelConfigured, + mplsTunnelActive, + mplsTunnelTEDistProto, + mplsTunnelMaxHops, + mplsTunnelNotificationMaxRate + } + STATUS current + DESCRIPTION + "Scalar object needed to implement MPLS tunnels." + ::= { mplsTeGroups 4 } + +mplsTunnelIsIntfcGroup OBJECT-GROUP + OBJECTS { mplsTunnelIsIf } + STATUS current + DESCRIPTION + "Objects needed to implement tunnels that are + interfaces." + ::= { mplsTeGroups 5 } + +mplsTunnelIsNotIntfcGroup OBJECT-GROUP + OBJECTS { mplsTunnelIsIf } + STATUS current + DESCRIPTION + "Objects needed to implement tunnels that are not + interfaces." + ::= { mplsTeGroups 6 } + +mplsTunnelCRLDPResOptionalGroup OBJECT-GROUP + OBJECTS { + mplsTunnelCRLDPResMeanBurstSize, + mplsTunnelCRLDPResExBurstSize, + mplsTunnelCRLDPResFrequency, + mplsTunnelCRLDPResWeight, + mplsTunnelCRLDPResFlags, + mplsTunnelCRLDPResRowStatus, + mplsTunnelCRLDPResStorageType + } + STATUS current + DESCRIPTION + "Set of objects implemented for resources applicable + for tunnels signaled using CR-LDP." + ::= { mplsTeGroups 7 } + + + + +mplsTeNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + mplsTunnelUp, + mplsTunnelDown, + mplsTunnelRerouted, + mplsTunnelReoptimized + } + STATUS current + DESCRIPTION + "Set of notifications implemented in this module. + None is mandatory." + ::= { mplsTeGroups 8 } + +END \ No newline at end of file diff --git a/mibs/OSPF-MIB.txt b/mibs/OSPF-MIB.txt new file mode 100644 index 00000000..b0c0314a --- /dev/null +++ b/mibs/OSPF-MIB.txt @@ -0,0 +1,4398 @@ +OSPF-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Counter32, Gauge32, + Integer32, Unsigned32, IpAddress, mib-2 + FROM SNMPv2-SMI + TEXTUAL-CONVENTION, TruthValue, RowStatus, TimeStamp + FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF + InterfaceIndexOrZero + FROM IF-MIB; + +ospf MODULE-IDENTITY + LAST-UPDATED "200611100000Z" -- November 10, 2006 00:00:00 EST + ORGANIZATION "IETF OSPF Working Group" + CONTACT-INFO + "WG E-Mail: ospf@ietf.org + + WG Chairs: acee@cisco.com + rohit@gmail.com + + Editors: Dan Joyal + Nortel + 600 Technology Park Drive + Billerica, MA 01821 + djoyal@nortel.com + + Piotr Galecki + Airvana + 19 Alpha Road + Chelmsford, MA 01824 + pgalecki@airvana.com + + Spencer Giacalone + CSFB + Eleven Madison Ave + New York, NY 10010-3629 + spencer.giacalone@gmail.com" + + DESCRIPTION + "The MIB module to describe the OSPF Version 2 + Protocol. Note that some objects in this MIB + module may pose a significant security risk. + Refer to the Security Considerations section + in RFC 4750 for more information. + + + + Copyright (C) The IETF Trust (2006). + This version of this MIB module is part of + RFC 4750; see the RFC itself for full legal + notices." + + REVISION "200611100000Z" -- November 10, 2006 09:00:00 EST + DESCRIPTION + "Updated for latest changes to OSPF Version 2: + - updated the General Group with the new + ospfRFC1583Compatibility, ospfReferenceBandwidth + and ospfDiscontinuityTime objects + - added graceful-restart-related objects + - added stub-router-related objects + - updated the Area Table with NSSA-related objects + - added ospfAreaAggregateExtRouteTag object + - added Opaque LSA-related objects + - updates to the Compliances and Security sections + - added area LSA counter table + - added section describing translation of notification + parameters between SNMP versions + - added ospfComplianceObsolete to contain obsolete + object groups + - deprecated ospfExtLsdbTable + See Appendix B of RFC 4750 for more details. + + This version published as part of RFC 4750" + + REVISION "199501201225Z" -- Fri Jan 20 12:25:50 PST 1995 + DESCRIPTION + "The initial SMIv2 revision of this MIB module, published + in RFC 1850." + ::= { mib-2 14 } + +AreaID ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "An OSPF Area Identifier. + Note that the Area ID, in OSPF, has the same format + as an IP address, but has the function of defining + a summarization point for link state advertisements." + SYNTAX IpAddress + +RouterID ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "A OSPF Router Identifier. + Note that the Router ID, in OSPF, has the same format + as an IP address, but identifies the router independent + + + + of its IP address." + SYNTAX IpAddress + +Metric ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "The OSPF internal metric. + Note that the OSPF metric is defined as an unsigned value + in the range." + SYNTAX Integer32 (0..'FFFF'h) + +BigMetric ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "The OSPF external metric." + SYNTAX Integer32 (0..'FFFFFF'h) + +Status ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "An indication of the operability of an OSPF + function or feature. For example, the status + of an interface: 'enabled' indicates that + it is willing to communicate with other OSPF routers, + and 'disabled' indicates that it is not." + SYNTAX INTEGER { enabled (1), disabled (2) } + +PositiveInteger ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "A positive integer. Values in excess are precluded as + unnecessary and prone to interoperability issues." + SYNTAX Integer32 (0..'7FFFFFFF'h) + +HelloRange ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "The range of intervals in seconds on which Hello messages + are exchanged." + SYNTAX Integer32 (1..'FFFF'h) + +UpToMaxAge ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + + + + DESCRIPTION + "The values in seconds that one might find or configure + for variables bounded by the maximum age of an LSA." + SYNTAX Integer32 (0..3600) + +DesignatedRouterPriority ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "The range of values defined for the priority of a system + for becoming the designated router." + SYNTAX Integer32 (0..'FF'h) + +TOSType ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "Type of Service (TOS) is defined as a mapping to the IP + Type of Service Flags as defined in the IP Forwarding + Table MIB + + +-----+-----+-----+-----+-----+-----+-----+-----+ + | | | | + | PRECEDENCE | TYPE OF SERVICE | 0 | + | | | | + +-----+-----+-----+-----+-----+-----+-----+-----+ + + IP TOS IP TOS + Field Policy Field Policy + + Contents Code Contents Code + 0 0 0 0 ==> 0 0 0 0 1 ==> 2 + 0 0 1 0 ==> 4 0 0 1 1 ==> 6 + 0 1 0 0 ==> 8 0 1 0 1 ==> 10 + 0 1 1 0 ==> 12 0 1 1 1 ==> 14 + 1 0 0 0 ==> 16 1 0 0 1 ==> 18 + 1 0 1 0 ==> 20 1 0 1 1 ==> 22 + 1 1 0 0 ==> 24 1 1 0 1 ==> 26 + 1 1 1 0 ==> 28 1 1 1 1 ==> 30 + + The remaining values are left for future definition." + SYNTAX Integer32 (0..30) + +OspfAuthenticationType ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The authentication type." + SYNTAX INTEGER { + + + + none (0), + simplePassword (1), + md5 (2) + -- reserved for specification by IANA (> 2) + } + +-- OSPF General Variables + +-- Note: These parameters apply globally to the Router's +-- OSPF Process. + +ospfGeneralGroup OBJECT IDENTIFIER ::= { ospf 1 } + + ospfRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying the + router in the Autonomous System. + By convention, to ensure uniqueness, this + should default to the value of one of the + router's IP interface addresses. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile storage." + REFERENCE + "OSPF Version 2, C.1 Global parameters" + ::= { ospfGeneralGroup 1 } + + ospfAdminStat OBJECT-TYPE + SYNTAX Status + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative status of OSPF in the + router. The value 'enabled' denotes that the + OSPF Process is active on at least one interface; + 'disabled' disables it on all interfaces. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile storage." + ::= { ospfGeneralGroup 2 } + + ospfVersionNumber OBJECT-TYPE + SYNTAX INTEGER { version2 (2) } + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "The current version number of the OSPF protocol is 2." + REFERENCE + "OSPF Version 2, Title" + ::= { ospfGeneralGroup 3 } + + ospfAreaBdrRtrStatus OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A flag to note whether this router is an Area + Border Router." + REFERENCE + "OSPF Version 2, Section 3 Splitting the AS into + Areas" + ::= { ospfGeneralGroup 4 } + + ospfASBdrRtrStatus OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A flag to note whether this router is configured as + an Autonomous System Border Router. + + This object is persistent and when written the + entity SHOULD save the change to non-volatile storage." + REFERENCE + "OSPF Version 2, Section 3.3 Classification of + routers" + ::= { ospfGeneralGroup 5 } + + ospfExternLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of external (LS type-5) link state + advertisements in the link state database." + REFERENCE + "OSPF Version 2, Appendix A.4.5 AS external link + advertisements" + ::= { ospfGeneralGroup 6 } + + ospfExternLsaCksumSum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "The 32-bit sum of the LS checksums of + the external link state advertisements + contained in the link state database. This sum + can be used to determine if there has been a + change in a router's link state database and + to compare the link state database of two + routers. The value should be treated as unsigned + when comparing two sums of checksums." + ::= { ospfGeneralGroup 7 } + + ospfTOSSupport OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The router's support for type-of-service routing. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix F.1.2 Optional TOS + support" + ::= { ospfGeneralGroup 8 } + + ospfOriginateNewLsas OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of new link state advertisements + that have been originated. This number is + incremented each time the router originates a new + LSA. + + Discontinuities in the value of this counter can + occur at re-initialization of the management system, + and at other times as indicated by the value of + ospfDiscontinuityTime." + ::= { ospfGeneralGroup 9 } + + ospfRxNewLsas OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "The number of link state advertisements received + that are determined to be new instantiations. + This number does not include newer instantiations + of self-originated link state advertisements. + + Discontinuities in the value of this counter can + occur at re-initialization of the management system, + and at other times as indicated by the value of + ospfDiscontinuityTime." + ::= { ospfGeneralGroup 10 } + + ospfExtLsdbLimit OBJECT-TYPE + SYNTAX Integer32 (-1..'7FFFFFFF'h) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The maximum number of non-default + AS-external LSAs entries that can be stored in the + link state database. If the value is -1, then + there is no limit. + + When the number of non-default AS-external LSAs + in a router's link state database reaches + ospfExtLsdbLimit, the router enters + overflow state. The router never holds more than + ospfExtLsdbLimit non-default AS-external LSAs + in its database. OspfExtLsdbLimit MUST be set + identically in all routers attached to the OSPF + backbone and/or any regular OSPF area (i.e., + OSPF stub areas and NSSAs are excluded). + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + DEFVAL { -1 } + ::= { ospfGeneralGroup 11 } + + ospfMulticastExtensions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A bit mask indicating whether the router is + forwarding IP multicast (Class D) datagrams + based on the algorithms defined in the + multicast extensions to OSPF. + + Bit 0, if set, indicates that the router can + + + + forward IP multicast datagrams in the router's + directly attached areas (called intra-area + multicast routing). + + Bit 1, if set, indicates that the router can + forward IP multicast datagrams between OSPF + areas (called inter-area multicast routing). + + Bit 2, if set, indicates that the router can + forward IP multicast datagrams between + Autonomous Systems (called inter-AS multicast + routing). + + Only certain combinations of bit settings are + allowed, namely: 0 (no multicast forwarding is + enabled), 1 (intra-area multicasting only), 3 + (intra-area and inter-area multicasting), 5 + (intra-area and inter-AS multicasting), and 7 + (multicasting everywhere). By default, no + multicast forwarding is enabled. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + DEFVAL { 0 } + ::= { ospfGeneralGroup 12 } + + ospfExitOverflowInterval OBJECT-TYPE + SYNTAX PositiveInteger + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The number of seconds that, after entering + OverflowState, a router will attempt to leave + OverflowState. This allows the router to again + originate non-default AS-external LSAs. When + set to 0, the router will not leave + overflow state until restarted. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + DEFVAL { 0 } + ::= { ospfGeneralGroup 13 } + + ospfDemandExtensions OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + + + + STATUS current + DESCRIPTION + "The router's support for demand routing. + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "Extending OSPF to Support Demand Circuits" + ::= { ospfGeneralGroup 14 } + + ospfRFC1583Compatibility OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates metrics used to choose among multiple + AS-external LSAs. When RFC1583Compatibility is set to + enabled, only cost will be used when choosing among + multiple AS-external LSAs advertising the same + destination. When RFC1583Compatibility is set to + disabled, preference will be driven first by type of + path using cost only to break ties. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Section 16.4.1 External path + preferences" + ::= { ospfGeneralGroup 15 } + + ospfOpaqueLsaSupport OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The router's support for Opaque LSA types." + REFERENCE + "The OSPF Opaque LSA Option" + ::= { ospfGeneralGroup 16 } + + ospfReferenceBandwidth OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "kilobits per second" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Reference bandwidth in kilobits/second for + + + + calculating default interface metrics. The + default value is 100,000 KBPS (100 MBPS). + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + ::= { ospfGeneralGroup 17 } + + ospfRestartSupport OBJECT-TYPE + SYNTAX INTEGER { none (1), + plannedOnly (2), + plannedAndUnplanned (3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The router's support for OSPF graceful restart. + Options include: no restart support, only planned + restarts, or both planned and unplanned restarts. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + ::= { ospfGeneralGroup 18 } + + ospfRestartInterval OBJECT-TYPE + SYNTAX Integer32 (1..1800) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Configured OSPF graceful restart timeout interval. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + ::= { ospfGeneralGroup 19 } + + ospfRestartStrictLsaChecking OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates if strict LSA checking is enabled for + graceful restart. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + + + + storage." + ::= { ospfGeneralGroup 20 } + + + ospfRestartStatus OBJECT-TYPE + SYNTAX INTEGER { notRestarting (1), + plannedRestart (2), + unplannedRestart (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Current status of OSPF graceful restart." + ::= { ospfGeneralGroup 21 } + + ospfRestartAge OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in current OSPF graceful restart + interval." + ::= { ospfGeneralGroup 22 } + + ospfRestartExitReason OBJECT-TYPE + SYNTAX INTEGER { none (1), -- none attempted + inProgress (2), -- restart in + -- progress + completed (3), -- successfully + -- completed + timedOut (4), -- timed out + topologyChanged (5) -- aborted due to + -- topology change. + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Describes the outcome of the last attempt at a + graceful restart. If the value is 'none', no restart + has yet been attempted. If the value is 'inProgress', + a restart attempt is currently underway." + ::= { ospfGeneralGroup 23 } + + ospfAsLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "The number of AS-scope link state + advertisements in the AS-scope link state database." + ::= { ospfGeneralGroup 24 } + + ospfAsLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the LS checksums of + the AS link state advertisements contained in the AS-scope + link state database. This sum can be used to determine + if there has been a change in a router's AS-scope link + state database, and to compare the AS-scope link state + database of two routers." + ::= { ospfGeneralGroup 25 } + + ospfStubRouterSupport OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The router's support for stub router functionality." + REFERENCE + "OSPF Stub Router Advertisement" + ::= { ospfGeneralGroup 26 } + + ospfStubRouterAdvertisement OBJECT-TYPE + SYNTAX INTEGER { + doNotAdvertise (1), + advertise(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object controls the advertisement of + stub router LSAs by the router. The value + doNotAdvertise will result in the advertisement + of a standard router LSA and is the default value. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + ::= { ospfGeneralGroup 27 } + + ospfDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one of this MIB's counters suffered + a discontinuity. + + If no such discontinuities have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." + ::= { ospfGeneralGroup 28 } + + +-- OSPF Area Table +-- The OSPF Area Table contains information +-- regarding the various areas. + + ospfAreaTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfAreaEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information describing the configured parameters and + cumulative statistics of the router's attached areas. + The interfaces and virtual links are configured + as part of these areas. Area 0.0.0.0, by definition, + is the backbone area." + REFERENCE + "OSPF Version 2, Section 6 The Area Data Structure" + ::= { ospf 2 } + + ospfAreaEntry OBJECT-TYPE + SYNTAX OspfAreaEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information describing the configured parameters and + cumulative statistics of one of the router's attached areas. + The interfaces and virtual links are configured as part of + these areas. Area 0.0.0.0, by definition, is the backbone + area. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + INDEX { ospfAreaId } + ::= { ospfAreaTable 1 } + + + + + OspfAreaEntry ::= + SEQUENCE { + ospfAreaId + AreaID, + ospfAuthType + OspfAuthenticationType, + ospfImportAsExtern + INTEGER, + ospfSpfRuns + Counter32, + ospfAreaBdrRtrCount + Gauge32, + ospfAsBdrRtrCount + Gauge32, + ospfAreaLsaCount + Gauge32, + ospfAreaLsaCksumSum + Integer32, + ospfAreaSummary + INTEGER, + ospfAreaStatus + RowStatus, + ospfAreaNssaTranslatorRole + INTEGER, + ospfAreaNssaTranslatorState + INTEGER, + ospfAreaNssaTranslatorStabilityInterval + PositiveInteger, + ospfAreaNssaTranslatorEvents + Counter32 + } + + ospfAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally + -- an SMIv1 index + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying an area. + Area ID 0.0.0.0 is used for the OSPF backbone." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaEntry 1 } + + ospfAuthType OBJECT-TYPE + SYNTAX OspfAuthenticationType + MAX-ACCESS read-create + STATUS obsolete + + + + DESCRIPTION + "The authentication type specified for an area." + REFERENCE + "OSPF Version 2, Appendix D Authentication" + DEFVAL { none } -- no authentication, by default + ::= { ospfAreaEntry 2 } + + ospfImportAsExtern OBJECT-TYPE + SYNTAX INTEGER { + importExternal (1), + importNoExternal (2), + importNssa (3) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates if an area is a stub area, NSSA, or standard + area. Type-5 AS-external LSAs and type-11 Opaque LSAs are + not imported into stub areas or NSSAs. NSSAs import + AS-external data as type-7 LSAs" + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + DEFVAL { importExternal } + ::= { ospfAreaEntry 3 } + + ospfSpfRuns OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times that the intra-area route + table has been calculated using this area's + link state database. This is typically done + using Dijkstra's algorithm. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfAreaEntry 4 } + + ospfAreaBdrRtrCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of Area Border Routers reachable + within this area. This is initially zero and is + calculated in each Shortest Path First (SPF) pass." + + + + ::= { ospfAreaEntry 5 } + + ospfAsBdrRtrCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of Autonomous System Border + Routers reachable within this area. This is + initially zero and is calculated in each SPF + pass." + ::= { ospfAreaEntry 6 } + + ospfAreaLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of link state advertisements + in this area's link state database, excluding + AS-external LSAs." + ::= { ospfAreaEntry 7 } + + ospfAreaLsaCksumSum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit sum of the link state + advertisements' LS checksums contained in this + area's link state database. This sum excludes + external (LS type-5) link state advertisements. + The sum can be used to determine if there has + been a change in a router's link state + database, and to compare the link state database of + two routers. The value should be treated as unsigned + when comparing two sums of checksums." + DEFVAL { 0 } + ::= { ospfAreaEntry 8 } + + ospfAreaSummary OBJECT-TYPE + SYNTAX INTEGER { + noAreaSummary (1), + sendAreaSummary (2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "The variable ospfAreaSummary controls the + import of summary LSAs into stub and NSSA areas. + It has no effect on other areas. + + If it is noAreaSummary, the router will not + originate summary LSAs into the stub or NSSA area. + It will rely entirely on its default route. + + If it is sendAreaSummary, the router will both + summarize and propagate summary LSAs." + DEFVAL { noAreaSummary } + ::= { ospfAreaEntry 9 } + + ospfAreaStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfAreaEntry 10 } + + ospfAreaNssaTranslatorRole OBJECT-TYPE + SYNTAX INTEGER { always (1), candidate (2) } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates an NSSA border router's ability to + perform NSSA translation of type-7 LSAs into + type-5 LSAs." + DEFVAL { candidate } + ::= { ospfAreaEntry 11 } + + ospfAreaNssaTranslatorState OBJECT-TYPE + SYNTAX INTEGER { enabled (1), + elected (2), + disabled (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates if and how an NSSA border router is + performing NSSA translation of type-7 LSAs into type-5 + + + + LSAs. When this object is set to enabled, the NSSA Border + router's OspfAreaNssaExtTranslatorRole has been set to + always. When this object is set to elected, a candidate + NSSA Border router is Translating type-7 LSAs into type-5. + When this object is set to disabled, a candidate NSSA + border router is NOT translating type-7 LSAs into type-5." + ::= { ospfAreaEntry 12 } + + ospfAreaNssaTranslatorStabilityInterval OBJECT-TYPE + SYNTAX PositiveInteger + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds after an elected translator + determines its services are no longer required, that + it should continue to perform its translation duties." + DEFVAL { 40 } + ::= { ospfAreaEntry 13 } + + ospfAreaNssaTranslatorEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the number of translator state changes + that have occurred since the last boot-up. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfAreaEntry 14 } + +-- OSPF Area Default Metric Table + + ospfStubAreaTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfStubAreaEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The set of metrics that will be advertised + by a default Area Border Router into a stub area." + REFERENCE + "OSPF Version 2, Appendix C.2, Area Parameters" + ::= { ospf 3 } + + ospfStubAreaEntry OBJECT-TYPE + SYNTAX OspfStubAreaEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The metric for a given Type of Service that + will be advertised by a default Area Border + Router into a stub area. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix C.2, Area Parameters" + INDEX { ospfStubAreaId, ospfStubTOS } + ::= { ospfStubAreaTable 1 } + + OspfStubAreaEntry ::= + SEQUENCE { + ospfStubAreaId + AreaID, + ospfStubTOS + TOSType, + ospfStubMetric + BigMetric, + ospfStubStatus + RowStatus, + ospfStubMetricType + INTEGER + } + + ospfStubAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The 32-bit identifier for the stub area. On + creation, this can be derived from the + instance." + ::= { ospfStubAreaEntry 1 } + + ospfStubTOS OBJECT-TYPE + SYNTAX TOSType + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The Type of Service associated with the + metric. On creation, this can be derived from + + + + the instance." + ::= { ospfStubAreaEntry 2 } + + ospfStubMetric OBJECT-TYPE + SYNTAX BigMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric value applied at the indicated Type + of Service. By default, this equals the least + metric at the Type of Service among the + interfaces to other areas." + ::= { ospfStubAreaEntry 3 } + + ospfStubStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfStubAreaEntry 4 } + + ospfStubMetricType OBJECT-TYPE + SYNTAX INTEGER { + ospfMetric (1), -- OSPF Metric + comparableCost (2), -- external type 1 + nonComparable (3) -- external type 2 + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable displays the type of metric + advertised as a default route." + DEFVAL { ospfMetric } + ::= { ospfStubAreaEntry 5 } + +-- OSPF Link State Database + + ospfLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfLsdbEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "The OSPF Process's link state database (LSDB). + The LSDB contains the link state advertisements + from throughout the areas that the device is attached to." + REFERENCE + "OSPF Version 2, Section 12 Link State Advertisements" + ::= { ospf 4 } + + ospfLsdbEntry OBJECT-TYPE + SYNTAX OspfLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single link state advertisement." + INDEX { ospfLsdbAreaId, ospfLsdbType, + ospfLsdbLsid, ospfLsdbRouterId } + ::= { ospfLsdbTable 1 } + + OspfLsdbEntry ::= + SEQUENCE { + ospfLsdbAreaId + AreaID, + ospfLsdbType + INTEGER, + ospfLsdbLsid + IpAddress, + ospfLsdbRouterId + RouterID, + ospfLsdbSequence + Integer32, + ospfLsdbAge + Integer32, + ospfLsdbChecksum + Integer32, + ospfLsdbAdvertisement + OCTET STRING + } + + ospfLsdbAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The 32-bit identifier of the area from which + the LSA was received." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + + + + ::= { ospfLsdbEntry 1 } + + ospfLsdbType OBJECT-TYPE + SYNTAX INTEGER { + routerLink (1), + networkLink (2), + summaryLink (3), + asSummaryLink (4), + asExternalLink (5), -- but see ospfAsLsdbTable + multicastLink (6), + nssaExternalLink (7), + areaOpaqueLink (10) + } + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate advertisement + format. + + Note: External link state advertisements are permitted + for backward compatibility, but should be displayed + in the ospfAsLsdbTable rather than here." + REFERENCE + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + ::= { ospfLsdbEntry 2 } + + ospfLsdbLsid OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The Link State ID is an LS Type Specific field + containing either a Router ID or an IP address; + it identifies the piece of the routing domain + that is being described by the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.4 Link State ID" + ::= { ospfLsdbEntry 3 } + + ospfLsdbRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + + + + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1 Global parameters" + ::= { ospfLsdbEntry 4 } + + ospfLsdbSequence OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It starts with the value '80000001'h, + or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + Thus, a typical sequence number will be very negative. + It is used to detect old and duplicate Link State + Advertisements. The space of sequence numbers is linearly + ordered. The larger the sequence number, the more recent + the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6 LS sequence + number" + ::= { ospfLsdbEntry 5 } + + ospfLsdbAge OBJECT-TYPE + SYNTAX Integer32 -- Should be 0..MaxAge, except when + -- doNotAge bit is set + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state advertisement + in seconds." + REFERENCE + "OSPF Version 2, Section 12.1.1 LS age" + ::= { ospfLsdbEntry 6 } + + ospfLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete contents of + the advertisement, excepting the age field. The age field + is excepted so that an advertisement's age can be + incremented without updating the checksum. The checksum + used is the same that is used for ISO connectionless + + + + datagrams; it is commonly referred to as the + Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7 LS checksum" + ::= { ospfLsdbEntry 7 } + + ospfLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header. + + Note that for variable length LSAs, SNMP agents + may not be able to return the largest string size." + REFERENCE + "OSPF Version 2, Section 12 Link State Advertisements" + ::= { ospfLsdbEntry 8 } + +-- Address Range Table + + ospfAreaRangeTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfAreaRangeEntry + MAX-ACCESS not-accessible + STATUS obsolete + DESCRIPTION + "The Address Range Table acts as an adjunct to the Area + Table. It describes those Address Range Summaries that + are configured to be propagated from an Area to reduce + the amount of information about it that is known beyond + its borders. It contains a set of IP address ranges + specified by an IP address/IP network mask pair. + For example, class B address range of X.X.X.X + with a network mask of 255.255.0.0 includes all IP + addresses from X.X.0.0 to X.X.255.255. + + Note that this table is obsoleted and is replaced + by the Area Aggregate Table." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospf 5 } + + ospfAreaRangeEntry OBJECT-TYPE + SYNTAX OspfAreaRangeEntry + MAX-ACCESS not-accessible + STATUS obsolete + DESCRIPTION + + + + "A single area address range. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + INDEX { ospfAreaRangeAreaId, ospfAreaRangeNet } + ::= { ospfAreaRangeTable 1 } + + OspfAreaRangeEntry ::= + SEQUENCE { + ospfAreaRangeAreaId + AreaID, + ospfAreaRangeNet + IpAddress, + ospfAreaRangeMask + IpAddress, + ospfAreaRangeStatus + RowStatus, + ospfAreaRangeEffect + INTEGER + } + + ospfAreaRangeAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS obsolete + DESCRIPTION + "The area that the address range is to be found + within." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaRangeEntry 1 } + + ospfAreaRangeNet OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS obsolete + DESCRIPTION + "The IP address of the net or subnet indicated + by the range." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaRangeEntry 2 } + + + + + ospfAreaRangeMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-create + STATUS obsolete + DESCRIPTION + "The subnet mask that pertains to the net or + subnet." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaRangeEntry 3 } + + ospfAreaRangeStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS obsolete + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfAreaRangeEntry 4 } + + ospfAreaRangeEffect OBJECT-TYPE + SYNTAX INTEGER { + advertiseMatching (1), + doNotAdvertiseMatching (2) + } + MAX-ACCESS read-create + STATUS obsolete + DESCRIPTION + "Subnets subsumed by ranges either trigger the + advertisement of the indicated summary + (advertiseMatching) or result in the subnet's not + being advertised at all outside the area." + DEFVAL { advertiseMatching } + ::= { ospfAreaRangeEntry 5 } + +-- OSPF Host Table + + ospfHostTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfHostEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Host/Metric Table indicates what hosts are directly + + + + attached to the router, what metrics and types + of service should be advertised for them, + and what areas they are found within." + REFERENCE + "OSPF Version 2, Appendix C.7 Host route + parameters" + ::= { ospf 6 } + + ospfHostEntry OBJECT-TYPE + SYNTAX OspfHostEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A metric to be advertised, for a given type of + service, when a given host is reachable. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + INDEX { ospfHostIpAddress, ospfHostTOS } + ::= { ospfHostTable 1 } + + OspfHostEntry ::= + SEQUENCE { + ospfHostIpAddress + IpAddress, + ospfHostTOS + TOSType, + ospfHostMetric + Metric, + ospfHostStatus + RowStatus, + ospfHostAreaID + AreaID, + ospfHostCfgAreaID + AreaID + } + + ospfHostIpAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The IP address of the host." + REFERENCE + "OSPF Version 2, Appendix C.7 Host route parameters" + ::= { ospfHostEntry 1 } + + + + ospfHostTOS OBJECT-TYPE + SYNTAX TOSType + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The Type of Service of the route being configured." + REFERENCE + "OSPF Version 2, Appendix C.7 Host route parameters" + ::= { ospfHostEntry 2 } + + ospfHostMetric OBJECT-TYPE + SYNTAX Metric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric to be advertised." + REFERENCE + "OSPF Version 2, Appendix C.7 Host route parameters" + ::= { ospfHostEntry 3 } + + ospfHostStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfHostEntry 4 } + + ospfHostAreaID OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "The OSPF area to which the host belongs. + Deprecated by ospfHostCfgAreaID." + REFERENCE + "OSPF Version 2, Appendix C.7 Host parameters" + ::= { ospfHostEntry 5 } + + ospfHostCfgAreaID OBJECT-TYPE + SYNTAX AreaID + + + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "To configure the OSPF area to which the host belongs." + REFERENCE + "OSPF Version 2, Appendix C.7 Host parameters" + ::= { ospfHostEntry 6 } + +-- OSPF Interface Table + + ospfIfTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPF Interface Table describes the interfaces + from the viewpoint of OSPF. + It augments the ipAddrTable with OSPF specific information." + REFERENCE + "OSPF Version 2, Appendix C.3 Router interface + parameters" + ::= { ospf 7 } + + ospfIfEntry OBJECT-TYPE + SYNTAX OspfIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPF interface entry describes one interface + from the viewpoint of OSPF. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + INDEX { ospfIfIpAddress, ospfAddressLessIf } + ::= { ospfIfTable 1 } + + OspfIfEntry ::= + SEQUENCE { + ospfIfIpAddress + IpAddress, + ospfAddressLessIf + InterfaceIndexOrZero, + ospfIfAreaId + AreaID, + ospfIfType + INTEGER, + ospfIfAdminStat + + + + Status, + ospfIfRtrPriority + DesignatedRouterPriority, + ospfIfTransitDelay + UpToMaxAge, + ospfIfRetransInterval + UpToMaxAge, + ospfIfHelloInterval + HelloRange, + ospfIfRtrDeadInterval + PositiveInteger, + ospfIfPollInterval + PositiveInteger, + ospfIfState + INTEGER, + ospfIfDesignatedRouter + IpAddress, + ospfIfBackupDesignatedRouter + IpAddress, + ospfIfEvents + Counter32, + ospfIfAuthKey + OCTET STRING, + ospfIfStatus + RowStatus, + ospfIfMulticastForwarding + INTEGER, + ospfIfDemand + TruthValue, + ospfIfAuthType + OspfAuthenticationType, + ospfIfLsaCount + Gauge32, + ospfIfLsaCksumSum + Unsigned32, + ospfIfDesignatedRouterId + RouterID, + ospfIfBackupDesignatedRouterId + RouterID + } + + ospfIfIpAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The IP address of this OSPF interface." + + + + ::= { ospfIfEntry 1 } + + ospfAddressLessIf OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "For the purpose of easing the instancing of + addressed and addressless interfaces; this + variable takes the value 0 on interfaces with + IP addresses and the corresponding value of + ifIndex for interfaces having no IP address." + ::= { ospfIfEntry 2 } + + ospfIfAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying the area + to which the interface connects. Area ID + 0.0.0.0 is used for the OSPF backbone." + DEFVAL { '00000000'H } -- 0.0.0.0 + ::= { ospfIfEntry 3 } + + ospfIfType OBJECT-TYPE + SYNTAX INTEGER { + broadcast (1), + nbma (2), + pointToPoint (3), + pointToMultipoint (5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The OSPF interface type. + By way of a default, this field may be intuited + from the corresponding value of ifType. + Broadcast LANs, such as Ethernet and IEEE 802.5, + take the value 'broadcast', X.25 and similar + technologies take the value 'nbma', and links + that are definitively point to point take the + value 'pointToPoint'." + ::= { ospfIfEntry 4 } + + ospfIfAdminStat OBJECT-TYPE + SYNTAX Status + + + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The OSPF interface's administrative status. + The value formed on the interface, and the interface + will be advertised as an internal route to some area. + The value 'disabled' denotes that the interface is + external to OSPF." + DEFVAL { enabled } + ::= { ospfIfEntry 5 } + + ospfIfRtrPriority OBJECT-TYPE + SYNTAX DesignatedRouterPriority + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The priority of this interface. Used in + multi-access networks, this field is used in + the designated router election algorithm. The + value 0 signifies that the router is not eligible + to become the designated router on this particular + network. In the event of a tie in this value, + routers will use their Router ID as a tie breaker." + DEFVAL { 1 } + ::= { ospfIfEntry 6 } + + ospfIfTransitDelay OBJECT-TYPE + SYNTAX UpToMaxAge + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The estimated number of seconds it takes to + transmit a link state update packet over this + interface. Note that the minimal value SHOULD be + 1 second." + DEFVAL { 1 } + ::= { ospfIfEntry 7 } + + ospfIfRetransInterval OBJECT-TYPE + SYNTAX UpToMaxAge + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds between link state advertisement + retransmissions, for adjacencies belonging to this + interface. This value is also used when retransmitting + + + + database description and Link State request packets. + Note that minimal value SHOULD be 1 second." + DEFVAL { 5 } + ::= { ospfIfEntry 8 } + + ospfIfHelloInterval OBJECT-TYPE + SYNTAX HelloRange + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The length of time, in seconds, between the Hello packets + that the router sends on the interface. This value must be + the same for all routers attached to a common network." + DEFVAL { 10 } + ::= { ospfIfEntry 9 } + + ospfIfRtrDeadInterval OBJECT-TYPE + SYNTAX PositiveInteger + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds that a router's Hello packets have + not been seen before its neighbors declare the router down. + This should be some multiple of the Hello interval. This + value must be the same for all routers attached to a common + network." + DEFVAL { 40 } + ::= { ospfIfEntry 10 } + + ospfIfPollInterval OBJECT-TYPE + SYNTAX PositiveInteger + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The larger time interval, in seconds, between the Hello + packets sent to an inactive non-broadcast multi-access + neighbor." + DEFVAL { 120 } + ::= { ospfIfEntry 11 } + + ospfIfState OBJECT-TYPE + SYNTAX INTEGER { + down (1), + loopback (2), + waiting (3), + + + + pointToPoint (4), + designatedRouter (5), + backupDesignatedRouter (6), + otherDesignatedRouter (7) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The OSPF Interface State." + DEFVAL { down } + ::= { ospfIfEntry 12 } + + ospfIfDesignatedRouter OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the designated router." + DEFVAL { '00000000'H } -- 0.0.0.0 + ::= { ospfIfEntry 13 } + + ospfIfBackupDesignatedRouter OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the backup designated + router." + DEFVAL { '00000000'H } -- 0.0.0.0 + ::= { ospfIfEntry 14 } + + ospfIfEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this OSPF interface has + changed its state or an error has occurred. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfIfEntry 15 } + + ospfIfAuthKey OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (0..256)) + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "The cleartext password used as an OSPF + authentication key when simplePassword security + is enabled. This object does not access any OSPF + cryptogaphic (e.g., MD5) authentication key under + any circumstance. + + If the key length is shorter than 8 octets, the + agent will left adjust and zero fill to 8 octets. + + Unauthenticated interfaces need no authentication + key, and simple password authentication cannot use + a key of more than 8 octets. + + Note that the use of simplePassword authentication + is NOT recommended when there is concern regarding + attack upon the OSPF system. SimplePassword + authentication is only sufficient to protect against + accidental misconfigurations because it re-uses + cleartext passwords [RFC1704]. + + When read, ospfIfAuthKey always returns an octet + string of length zero." + REFERENCE + "OSPF Version 2, Section 9 The Interface Data + Structure" + DEFVAL { '0000000000000000'H } -- 0.0.0.0.0.0.0.0 + ::= { ospfIfEntry 16 } + + ospfIfStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfIfEntry 17 } + + ospfIfMulticastForwarding OBJECT-TYPE + SYNTAX INTEGER { + blocked (1), -- no multicast forwarding + multicast (2), -- using multicast address + unicast (3) -- to each OSPF neighbor + + + + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The way multicasts should be forwarded on this + interface: not forwarded, forwarded as data + link multicasts, or forwarded as data link + unicasts. Data link multicasting is not + meaningful on point-to-point and NBMA interfaces, + and setting ospfMulticastForwarding to 0 effectively + disables all multicast forwarding." + DEFVAL { blocked } + ::= { ospfIfEntry 18 } + + ospfIfDemand OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether Demand OSPF procedures (hello + suppression to FULL neighbors and setting the + DoNotAge flag on propagated LSAs) should be + performed on this interface." + DEFVAL { false } + ::= { ospfIfEntry 19 } + + ospfIfAuthType OBJECT-TYPE + SYNTAX OspfAuthenticationType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The authentication type specified for an interface. + + Note that this object can be used to engage + in significant attacks against an OSPF router." + REFERENCE + "OSPF Version 2, Appendix D Authentication" + DEFVAL { none } -- no authentication, by default + ::= { ospfIfEntry 20 } + + ospfIfLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of link-local link state advertisements + in this interface's link-local link state database." + ::= { ospfIfEntry 21 } + + + + ospfIfLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the Link State + Advertisements' LS checksums contained in this + interface's link-local link state database. + The sum can be used to determine if there has + been a change in the interface's link state + database and to compare the interface link state + database of routers attached to the same subnet." + ::= { ospfIfEntry 22 } + + ospfIfDesignatedRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Router ID of the designated router." + ::= { ospfIfEntry 23 } + + ospfIfBackupDesignatedRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Router ID of the backup designated router." + ::= { ospfIfEntry 24 } + +-- OSPF Interface Metric Table + + ospfIfMetricTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfIfMetricEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Metric Table describes the metrics to be advertised + for a specified interface at the various types of service. + As such, this table is an adjunct of the OSPF Interface + Table. + + Types of service, as defined by RFC 791, have the ability + to request low delay, high bandwidth, or reliable linkage. + + For the purposes of this specification, the measure of + bandwidth: + + + + + Metric = referenceBandwidth / ifSpeed + + is the default value. + The default reference bandwidth is 10^8. + For multiple link interfaces, note that ifSpeed is the sum + of the individual link speeds. This yields a number having + the following typical values: + + Network Type/bit rate Metric + + >= 100 MBPS 1 + Ethernet/802.3 10 + E1 48 + T1 (ESF) 65 + 64 KBPS 1562 + 56 KBPS 1785 + 19.2 KBPS 5208 + 9.6 KBPS 10416 + + Routes that are not specified use the default + (TOS 0) metric. + + Note that the default reference bandwidth can be configured + using the general group object ospfReferenceBandwidth." + REFERENCE + "OSPF Version 2, Appendix C.3 Router interface + parameters" + ::= { ospf 8 } + + ospfIfMetricEntry OBJECT-TYPE + SYNTAX OspfIfMetricEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A particular TOS metric for a non-virtual interface + identified by the interface index. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix C.3 Router interface + parameters" + INDEX { ospfIfMetricIpAddress, + ospfIfMetricAddressLessIf, + ospfIfMetricTOS } + ::= { ospfIfMetricTable 1 } + + + + + OspfIfMetricEntry ::= + SEQUENCE { + ospfIfMetricIpAddress + IpAddress, + ospfIfMetricAddressLessIf + InterfaceIndexOrZero, + ospfIfMetricTOS + TOSType, + ospfIfMetricValue + Metric, + ospfIfMetricStatus + RowStatus + } + + ospfIfMetricIpAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The IP address of this OSPF interface. On row + creation, this can be derived from the instance." + ::= { ospfIfMetricEntry 1 } + + ospfIfMetricAddressLessIf OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "For the purpose of easing the instancing of + addressed and addressless interfaces; this + variable takes the value 0 on interfaces with + IP addresses and the value of ifIndex for + interfaces having no IP address. On row + creation, this can be derived from the instance." + ::= { ospfIfMetricEntry 2 } + + ospfIfMetricTOS OBJECT-TYPE + SYNTAX TOSType + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The Type of Service metric being referenced. + On row creation, this can be derived from the + instance." + ::= { ospfIfMetricEntry 3 } + + + + ospfIfMetricValue OBJECT-TYPE + SYNTAX Metric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric of using this Type of Service on + this interface. The default value of the TOS 0 + metric is 10^8 / ifSpeed." + ::= { ospfIfMetricEntry 4 } + + ospfIfMetricStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfIfMetricEntry 5 } + +-- OSPF Virtual Interface Table + + ospfVirtIfTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfVirtIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about this router's virtual interfaces + that the OSPF Process is configured to carry on." + REFERENCE + "OSPF Version 2, Appendix C.4 Virtual link + parameters" + ::= { ospf 9 } + + ospfVirtIfEntry OBJECT-TYPE + SYNTAX OspfVirtIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a single virtual interface. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + + + + INDEX { ospfVirtIfAreaId, ospfVirtIfNeighbor } + ::= { ospfVirtIfTable 1 } + + OspfVirtIfEntry ::= + SEQUENCE { + ospfVirtIfAreaId + AreaID, + ospfVirtIfNeighbor + RouterID, + ospfVirtIfTransitDelay + UpToMaxAge, + ospfVirtIfRetransInterval + UpToMaxAge, + ospfVirtIfHelloInterval + HelloRange, + ospfVirtIfRtrDeadInterval + PositiveInteger, + ospfVirtIfState + INTEGER, + ospfVirtIfEvents + Counter32, + ospfVirtIfAuthKey + OCTET STRING, + ospfVirtIfStatus + RowStatus, + ospfVirtIfAuthType + OspfAuthenticationType, + ospfVirtIfLsaCount + Gauge32, + ospfVirtIfLsaCksumSum + Unsigned32 + } + + ospfVirtIfAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The transit area that the virtual link + traverses. By definition, this is not 0.0.0.0." + ::= { ospfVirtIfEntry 1 } + + ospfVirtIfNeighbor OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + + + + DESCRIPTION + "The Router ID of the virtual neighbor." + ::= { ospfVirtIfEntry 2 } + + ospfVirtIfTransitDelay OBJECT-TYPE + SYNTAX UpToMaxAge + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The estimated number of seconds it takes to + transmit a Link State update packet over this + interface. Note that the minimal value SHOULD be + 1 second." + DEFVAL { 1 } + ::= { ospfVirtIfEntry 3 } + + ospfVirtIfRetransInterval OBJECT-TYPE + SYNTAX UpToMaxAge + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds between link state + avertisement retransmissions, for adjacencies + belonging to this interface. This value is + also used when retransmitting database + description and Link State request packets. This + value should be well over the expected + round-trip time. Note that the minimal value SHOULD be + 1 second." + DEFVAL { 5 } + ::= { ospfVirtIfEntry 4 } + + ospfVirtIfHelloInterval OBJECT-TYPE + SYNTAX HelloRange + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The length of time, in seconds, between the + Hello packets that the router sends on the + interface. This value must be the same for the + virtual neighbor." + DEFVAL { 10 } + ::= { ospfVirtIfEntry 5 } + + ospfVirtIfRtrDeadInterval OBJECT-TYPE + + + + SYNTAX PositiveInteger + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds that a router's Hello + packets have not been seen before its + neighbors declare the router down. This should be + some multiple of the Hello interval. This + value must be the same for the virtual neighbor." + DEFVAL { 60 } + ::= { ospfVirtIfEntry 6 } + + ospfVirtIfState OBJECT-TYPE + SYNTAX INTEGER { + down (1), -- these use the same encoding + pointToPoint (4) -- as the ospfIfTable + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "OSPF virtual interface states." + DEFVAL { down } + ::= { ospfVirtIfEntry 7 } + + ospfVirtIfEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of state changes or error events on + this virtual link. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfVirtIfEntry 8 } + + ospfVirtIfAuthKey OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..256)) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The cleartext password used as an OSPF + authentication key when simplePassword security + is enabled. This object does not access any OSPF + cryptogaphic (e.g., MD5) authentication key under + any circumstance. + + + + If the key length is shorter than 8 octets, the + agent will left adjust and zero fill to 8 octets. + + Unauthenticated interfaces need no authentication + key, and simple password authentication cannot use + a key of more than 8 octets. + + Note that the use of simplePassword authentication + is NOT recommended when there is concern regarding + attack upon the OSPF system. SimplePassword + authentication is only sufficient to protect against + accidental misconfigurations because it re-uses + cleartext passwords. [RFC1704] + + When read, ospfIfAuthKey always returns an octet + string of length zero." + REFERENCE + "OSPF Version 2, Section 9 The Interface Data + Structure" + DEFVAL { '0000000000000000'H } -- 0.0.0.0.0.0.0.0 + ::= { ospfVirtIfEntry 9 } + + ospfVirtIfStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfVirtIfEntry 10 } + + ospfVirtIfAuthType OBJECT-TYPE + SYNTAX OspfAuthenticationType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The authentication type specified for a virtual interface. + + Note that this object can be used to engage + in significant attacks against an OSPF router." + REFERENCE + "OSPF Version 2, Appendix E Authentication" + DEFVAL { none } -- no authentication, by default + + + + ::= { ospfVirtIfEntry 11 } + + ospfVirtIfLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of link-local link state advertisements + in this virtual interface's link-local link state database." + ::= { ospfVirtIfEntry 12 } + + ospfVirtIfLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the link state + advertisements' LS checksums contained in this + virtual interface's link-local link state database. + The sum can be used to determine if there has + been a change in the virtual interface's link state + database, and to compare the virtual interface + link state database of the virtual neighbors." + ::= { ospfVirtIfEntry 13 } + +-- OSPF Neighbor Table + + ospfNbrTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table describing all non-virtual neighbors + in the locality of the OSPF router." + REFERENCE + "OSPF Version 2, Section 10 The Neighbor Data + Structure" + ::= { ospf 10 } + + ospfNbrEntry OBJECT-TYPE + SYNTAX OspfNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The information regarding a single neighbor. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + + + + storage." + REFERENCE + "OSPF Version 2, Section 10 The Neighbor Data + Structure" + INDEX { ospfNbrIpAddr, ospfNbrAddressLessIndex } + ::= { ospfNbrTable 1 } + + OspfNbrEntry ::= + SEQUENCE { + ospfNbrIpAddr + IpAddress, + ospfNbrAddressLessIndex + InterfaceIndexOrZero, + ospfNbrRtrId + RouterID, + ospfNbrOptions + Integer32, + ospfNbrPriority + DesignatedRouterPriority, + ospfNbrState + INTEGER, + ospfNbrEvents + Counter32, + ospfNbrLsRetransQLen + Gauge32, + ospfNbmaNbrStatus + RowStatus, + ospfNbmaNbrPermanence + INTEGER, + ospfNbrHelloSuppressed + TruthValue, + ospfNbrRestartHelperStatus + INTEGER, + ospfNbrRestartHelperAge + Unsigned32, + ospfNbrRestartHelperExitReason + INTEGER + } + + ospfNbrIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The IP address this neighbor is using in its + IP source address. Note that, on addressless + links, this will not be 0.0.0.0 but the + + + + address of another of the neighbor's interfaces." + ::= { ospfNbrEntry 1 } + + ospfNbrAddressLessIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "On an interface having an IP address, zero. + On addressless interfaces, the corresponding + value of ifIndex in the Internet Standard MIB. + On row creation, this can be derived from the + instance." + ::= { ospfNbrEntry 2 } + + ospfNbrRtrId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A 32-bit integer (represented as a type + IpAddress) uniquely identifying the neighboring + router in the Autonomous System." + DEFVAL { '00000000'H } -- 0.0.0.0 + ::= { ospfNbrEntry 3 } + + ospfNbrOptions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A bit mask corresponding to the neighbor's + options field. + + Bit 0, if set, indicates that the system will + operate on Type of Service metrics other than + TOS 0. If zero, the neighbor will ignore all + metrics except the TOS 0 metric. + + Bit 1, if set, indicates that the associated + area accepts and operates on external + information; if zero, it is a stub area. + + Bit 2, if set, indicates that the system is + capable of routing IP multicast datagrams, that is + that it implements the multicast extensions to + OSPF. + + + + Bit 3, if set, indicates that the associated + area is an NSSA. These areas are capable of + carrying type-7 external advertisements, which + are translated into type-5 external advertisements + at NSSA borders." + REFERENCE + "OSPF Version 2, Section 12.1.2 Options" + DEFVAL { 0 } + ::= { ospfNbrEntry 4 } + + ospfNbrPriority OBJECT-TYPE + SYNTAX DesignatedRouterPriority + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The priority of this neighbor in the designated + router election algorithm. The value 0 signifies + that the neighbor is not eligible to become + the designated router on this particular network." + + DEFVAL { 1 } + ::= { ospfNbrEntry 5 } + + ospfNbrState OBJECT-TYPE + SYNTAX INTEGER { + down (1), + attempt (2), + init (3), + twoWay (4), + exchangeStart (5), + exchange (6), + loading (7), + full (8) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the relationship with this neighbor." + REFERENCE + "OSPF Version 2, Section 10.1 Neighbor States" + DEFVAL { down } + ::= { ospfNbrEntry 6 } + + ospfNbrEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "The number of times this neighbor relationship + has changed state or an error has occurred. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfNbrEntry 7 } + + ospfNbrLsRetransQLen OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current length of the retransmission + queue." + ::= { ospfNbrEntry 8 } + + ospfNbmaNbrStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfNbrEntry 9 } + + ospfNbmaNbrPermanence OBJECT-TYPE + SYNTAX INTEGER { + dynamic (1), -- learned through protocol + permanent (2) -- configured address + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This variable displays the status of the entry; + 'dynamic' and 'permanent' refer to how the neighbor + became known." + DEFVAL { permanent } + ::= { ospfNbrEntry 10 } + + ospfNbrHelloSuppressed OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "Indicates whether Hellos are being suppressed + to the neighbor." + ::= { ospfNbrEntry 11 } + + ospfNbrRestartHelperStatus OBJECT-TYPE + SYNTAX INTEGER { notHelping (1), + helping (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether the router is acting + as a graceful restart helper for the neighbor." + ::= { ospfNbrEntry 12 } + + ospfNbrRestartHelperAge OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in current OSPF graceful restart + interval, if the router is acting as a restart + helper for the neighbor." + ::= { ospfNbrEntry 13 } + + ospfNbrRestartHelperExitReason OBJECT-TYPE + SYNTAX INTEGER { none (1), -- not attempted + inProgress (2), -- restart in + -- progress + completed (3), -- successfully + -- completed + timedOut (4), -- timed out + topologyChanged (5) -- aborted due to + -- topology + -- change. + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Describes the outcome of the last attempt at acting + as a graceful restart helper for the neighbor." + ::= { ospfNbrEntry 14 } + +-- OSPF Virtual Neighbor Table + + + + + ospfVirtNbrTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfVirtNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table describes all virtual neighbors. + Since virtual links are configured + in the Virtual Interface Table, this table is read-only." + REFERENCE + "OSPF Version 2, Section 15 Virtual Links" + ::= { ospf 11 } + + ospfVirtNbrEntry OBJECT-TYPE + SYNTAX OspfVirtNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Virtual neighbor information." + INDEX { ospfVirtNbrArea, ospfVirtNbrRtrId } + ::= { ospfVirtNbrTable 1 } + + OspfVirtNbrEntry ::= + SEQUENCE { + ospfVirtNbrArea + AreaID, + ospfVirtNbrRtrId + RouterID, + ospfVirtNbrIpAddr + IpAddress, + ospfVirtNbrOptions + Integer32, + ospfVirtNbrState + INTEGER, + ospfVirtNbrEvents + Counter32, + ospfVirtNbrLsRetransQLen + Gauge32, + ospfVirtNbrHelloSuppressed + TruthValue, + ospfVirtNbrRestartHelperStatus + INTEGER, + ospfVirtNbrRestartHelperAge + Unsigned32, + ospfVirtNbrRestartHelperExitReason + INTEGER + } + + ospfVirtNbrArea OBJECT-TYPE + + + + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The Transit Area Identifier." + ::= { ospfVirtNbrEntry 1 } + + ospfVirtNbrRtrId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying the + neighboring router in the Autonomous System." + ::= { ospfVirtNbrEntry 2 } + + ospfVirtNbrIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address this virtual neighbor is using." + ::= { ospfVirtNbrEntry 3 } + + ospfVirtNbrOptions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A bit mask corresponding to the neighbor's + options field. + + Bit 1, if set, indicates that the system will + operate on Type of Service metrics other than + TOS 0. If zero, the neighbor will ignore all + metrics except the TOS 0 metric. + + Bit 2, if set, indicates that the system is + network multicast capable, i.e., that it + implements OSPF multicast routing." + ::= { ospfVirtNbrEntry 4 } + + ospfVirtNbrState OBJECT-TYPE + SYNTAX INTEGER { + down (1), + attempt (2), + + + + init (3), + twoWay (4), + exchangeStart (5), + exchange (6), + loading (7), + full (8) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the virtual neighbor relationship." + ::= { ospfVirtNbrEntry 5 } + + ospfVirtNbrEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this virtual link has + changed its state or an error has occurred. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfVirtNbrEntry 6 } + + ospfVirtNbrLsRetransQLen OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current length of the retransmission + queue." + ::= { ospfVirtNbrEntry 7 } + + ospfVirtNbrHelloSuppressed OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether Hellos are being suppressed + to the neighbor." + ::= { ospfVirtNbrEntry 8 } + + ospfVirtNbrRestartHelperStatus OBJECT-TYPE + SYNTAX INTEGER { notHelping (1), + helping (2) + } + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether the router is acting + as a graceful restart helper for the neighbor." + ::= { ospfVirtNbrEntry 9 } + + ospfVirtNbrRestartHelperAge OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in current OSPF graceful restart + interval, if the router is acting as a restart + helper for the neighbor." + ::= { ospfVirtNbrEntry 10 } + + ospfVirtNbrRestartHelperExitReason OBJECT-TYPE + SYNTAX INTEGER { none (1), -- not attempted + inProgress (2), -- restart in + -- progress + completed (3), -- successfully + -- completed + timedOut (4), -- timed out + topologyChanged (5) -- aborted due to + -- topology + -- change. + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Describes the outcome of the last attempt at acting + as a graceful restart helper for the neighbor." + ::= { ospfVirtNbrEntry 11 } + +-- OSPF Link State Database, External + + ospfExtLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfExtLsdbEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "The OSPF Process's external LSA link state database. + + This table is identical to the OSPF LSDB Table + in format, but contains only external link state + advertisements. The purpose is to allow external + + + + LSAs to be displayed once for the router rather + than once in each non-stub area. + + Note that external LSAs are also in the AS-scope link state + database." + REFERENCE + "OSPF Version 2, Section 12 Link State Advertisements" + ::= { ospf 12 } + + ospfExtLsdbEntry OBJECT-TYPE + SYNTAX OspfExtLsdbEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "A single link state advertisement." + INDEX { ospfExtLsdbType, ospfExtLsdbLsid, ospfExtLsdbRouterId } + ::= { ospfExtLsdbTable 1 } + + OspfExtLsdbEntry ::= + SEQUENCE { + ospfExtLsdbType + INTEGER, + ospfExtLsdbLsid + IpAddress, + ospfExtLsdbRouterId + RouterID, + ospfExtLsdbSequence + Integer32, + ospfExtLsdbAge + Integer32, + ospfExtLsdbChecksum + Integer32, + ospfExtLsdbAdvertisement + OCTET STRING + } + + ospfExtLsdbType OBJECT-TYPE + SYNTAX INTEGER { + asExternalLink (5) + } + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS deprecated + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate advertisement + format." + REFERENCE + + + + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + + ::= { ospfExtLsdbEntry 1 } + + ospfExtLsdbLsid OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS deprecated + DESCRIPTION + "The Link State ID is an LS Type Specific field + containing either a Router ID or an IP address; + it identifies the piece of the routing domain + that is being described by the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.4 Link State ID" + ::= { ospfExtLsdbEntry 2 } + + ospfExtLsdbRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS deprecated + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1 Global parameters" + ::= { ospfExtLsdbEntry 3 } + + ospfExtLsdbSequence OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It starts with the value '80000001'h, + or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + Thus, a typical sequence number will be very negative. + It is used to detect old and duplicate link state + advertisements. The space of sequence numbers is linearly + ordered. The larger the sequence number, the more recent + the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6 LS sequence + number" + ::= { ospfExtLsdbEntry 4 } + + + + ospfExtLsdbAge OBJECT-TYPE + SYNTAX Integer32 -- Should be 0..MaxAge, except when + -- doNotAge bit is set + UNITS "seconds" + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "This field is the age of the link state + advertisement in seconds." + REFERENCE + "OSPF Version 2, Section 12.1.1 LS age" + ::= { ospfExtLsdbEntry 5 } + + ospfExtLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly referred + to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7 LS checksum" + ::= { ospfExtLsdbEntry 6 } + + ospfExtLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(36)) + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "The entire link state advertisement, including + its header." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements" + ::= { ospfExtLsdbEntry 7 } + +-- OSPF Use of the CIDR Route Table + + ospfRouteGroup OBJECT IDENTIFIER ::= { ospf 13 } + +-- The IP Forwarding Table defines a number of objects for use by +-- the routing protocol to externalize its information. Most of + + + +-- the variables (ipForwardDest, ipForwardMask, ipForwardPolicy, +-- ipForwardNextHop, ipForwardIfIndex, ipForwardType, +-- ipForwardProto, ipForwardAge, and ipForwardNextHopAS) are +-- defined there. + +-- Those that leave some discretion are defined here. + +-- ipCidrRouteProto is, of course, ospf (13). + +-- ipCidrRouteAge is the time since the route was first +-- calculated, as opposed to the time since the last SPF run. +-- ipCidrRouteInfo is an OBJECT IDENTIFIER for use by the routing +-- protocol. The following values shall be found there depending +-- on the way the route was calculated. + + ospfIntraArea OBJECT IDENTIFIER ::= { ospfRouteGroup 1 } + ospfInterArea OBJECT IDENTIFIER ::= { ospfRouteGroup 2 } + ospfExternalType1 OBJECT IDENTIFIER ::= { ospfRouteGroup 3 } + ospfExternalType2 OBJECT IDENTIFIER ::= { ospfRouteGroup 4 } + +-- ipCidrRouteMetric1 is, by definition, the primary routing +-- metric. Therefore, it should be the metric that route +-- selection is based on. For intra-area and inter-area routes, +-- it is an OSPF metric. For External Type 1 (comparable value) +-- routes, it is an OSPF metric plus the External Metric. For +-- external Type 2 (non-comparable value) routes, it is the +-- external metric. + +-- ipCidrRouteMetric2 is, by definition, a secondary routing +-- metric. Therefore, it should be the metric that breaks a tie +-- among routes having equal metric1 values and the same +-- calculation rule. For intra-area, inter-area routes, and +-- External Type 1 (comparable value) routes, it is unused. For +-- External Type 2 (non-comparable value) routes, it is the metric +-- to the AS border router. + +-- ipCidrRouteMetric3, ipCidrRouteMetric4, and ipCidrRouteMetric5 +-- are unused. + +-- The OSPF Area Aggregate Table +-- +-- This table replaces the OSPF Area Summary Table, being an +-- extension of that for CIDR routers. + + ospfAreaAggregateTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfAreaAggregateEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "The Area Aggregate Table acts as an adjunct + to the Area Table. It describes those address aggregates + that are configured to be propagated from an area. + Its purpose is to reduce the amount of information + that is known beyond an Area's borders. + + It contains a set of IP address ranges + specified by an IP address/IP network mask pair. + For example, a class B address range of X.X.X.X + with a network mask of 255.255.0.0 includes all IP + addresses from X.X.0.0 to X.X.255.255. + + Note that if ranges are configured such that one range + subsumes another range (e.g., 10.0.0.0 mask 255.0.0.0 + and 10.1.0.0 mask 255.255.0.0), + the most specific match is the preferred one." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospf 14 } + + ospfAreaAggregateEntry OBJECT-TYPE + SYNTAX OspfAreaAggregateEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single area aggregate entry. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + INDEX { ospfAreaAggregateAreaID, ospfAreaAggregateLsdbType, + ospfAreaAggregateNet, ospfAreaAggregateMask } + ::= { ospfAreaAggregateTable 1 } + + OspfAreaAggregateEntry ::= + SEQUENCE { + ospfAreaAggregateAreaID + AreaID, + ospfAreaAggregateLsdbType + INTEGER, + ospfAreaAggregateNet + IpAddress, + ospfAreaAggregateMask + IpAddress, + ospfAreaAggregateStatus + + + + RowStatus, + ospfAreaAggregateEffect + INTEGER, + ospfAreaAggregateExtRouteTag + Unsigned32 + } + + ospfAreaAggregateAreaID OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The area within which the address aggregate is to be + found." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaAggregateEntry 1 } + + ospfAreaAggregateLsdbType OBJECT-TYPE + SYNTAX INTEGER { + summaryLink (3), + nssaExternalLink (7) + } + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The type of the address aggregate. This field + specifies the Lsdb type that this address + aggregate applies to." + REFERENCE + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + ::= { ospfAreaAggregateEntry 2 } + + ospfAreaAggregateNet OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The IP address of the net or subnet indicated + by the range." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaAggregateEntry 3 } + + + + + ospfAreaAggregateMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The subnet mask that pertains to the net or + subnet." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaAggregateEntry 4 } + + ospfAreaAggregateStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfAreaAggregateEntry 5 } + + ospfAreaAggregateEffect OBJECT-TYPE + SYNTAX INTEGER { + advertiseMatching (1), + doNotAdvertiseMatching (2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Subnets subsumed by ranges either trigger the + advertisement of the indicated aggregate + (advertiseMatching) or result in the subnet's not + being advertised at all outside the area." + DEFVAL { advertiseMatching } + ::= { ospfAreaAggregateEntry 6 } + + ospfAreaAggregateExtRouteTag OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "External route tag to be included in NSSA (type-7) + LSAs." + + + + DEFVAL { 0 } + ::= { ospfAreaAggregateEntry 7 } + +-- OSPF Link State Database, link-local for non-virtual links + + + ospfLocalLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfLocalLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPF Process's link-local link state database + for non-virtual links. + This table is identical to the OSPF LSDB Table + in format, but contains only link-local Link State + Advertisements for non-virtual links. The purpose is + to allow link-local LSAs to be displayed for each + non-virtual interface. This table is implemented to + support type-9 LSAs that are defined + in 'The OSPF Opaque LSA Option'." + REFERENCE + "OSPF Version 2, Section 12 Link State Advertisements + and The OSPF Opaque LSA Option" + ::= { ospf 17 } + + ospfLocalLsdbEntry OBJECT-TYPE + SYNTAX OspfLocalLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single link state advertisement." + INDEX { ospfLocalLsdbIpAddress, ospfLocalLsdbAddressLessIf, + ospfLocalLsdbType, ospfLocalLsdbLsid, ospfLocalLsdbRouterId + } + ::= { ospfLocalLsdbTable 1 } + + OspfLocalLsdbEntry ::= + SEQUENCE { + ospfLocalLsdbIpAddress + IpAddress, + ospfLocalLsdbAddressLessIf + InterfaceIndexOrZero, + ospfLocalLsdbType + INTEGER, + ospfLocalLsdbLsid + IpAddress, + ospfLocalLsdbRouterId + RouterID, + + + + ospfLocalLsdbSequence + Integer32, + ospfLocalLsdbAge + Integer32, + ospfLocalLsdbChecksum + Integer32, + ospfLocalLsdbAdvertisement + OCTET STRING + } + + ospfLocalLsdbIpAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP address of the interface from + which the LSA was received if the interface is + numbered." + REFERENCE + "OSPF Version 2, Appendix C.3 Interface parameters" + ::= { ospfLocalLsdbEntry 1 } + + ospfLocalLsdbAddressLessIf OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface index of the interface from + which the LSA was received if the interface is + unnumbered." + REFERENCE + "OSPF Version 2, Appendix C.3 Interface parameters" + ::= { ospfLocalLsdbEntry 2 } + + ospfLocalLsdbType OBJECT-TYPE + SYNTAX INTEGER { localOpaqueLink (9) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format." + REFERENCE + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + ::= { ospfLocalLsdbEntry 3 } + + ospfLocalLsdbLsid OBJECT-TYPE + + + + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS Type Specific field + containing a 32-bit identifier in IP address format; + it identifies the piece of the routing domain + that is being described by the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.4 Link State ID" + ::= { ospfLocalLsdbEntry 4 } + + ospfLocalLsdbRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1 Global parameters" + ::= { ospfLocalLsdbEntry 5 } + + ospfLocalLsdbSequence OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It starts with the value '80000001'h, + or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + Thus, a typical sequence number will be very negative. + It is used to detect old and duplicate link state + advertisements. The space of sequence numbers is linearly + ordered. The larger the sequence number, the more recent + the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6 LS sequence + number" + ::= { ospfLocalLsdbEntry 6 } + + ospfLocalLsdbAge OBJECT-TYPE + SYNTAX Integer32 -- Should be 0..MaxAge, except when + -- doNotAge bit is set + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "This field is the age of the link state + advertisement in seconds." + REFERENCE + "OSPF Version 2, Section 12.1.1 LS age" + ::= { ospfLocalLsdbEntry 7 } + + ospfLocalLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly referred + to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7 LS checksum" + ::= { ospfLocalLsdbEntry 8 } + + ospfLocalLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header. + + Note that for variable length LSAs, SNMP agents + may not be able to return the largest string size." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements" + ::= { ospfLocalLsdbEntry 9 } + +-- OSPF Link State Database, link-local for virtual Links + + ospfVirtLocalLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfVirtLocalLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPF Process's link-local link state database + for virtual links. + + + + + This table is identical to the OSPF LSDB Table + in format, but contains only link-local Link State + Advertisements for virtual links. The purpose is to + allow link-local LSAs to be displayed for each virtual + interface. This table is implemented to support type-9 LSAs + that are defined in 'The OSPF Opaque LSA Option'." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements and The OSPF Opaque LSA Option" + ::= { ospf 18 } + + ospfVirtLocalLsdbEntry OBJECT-TYPE + SYNTAX OspfVirtLocalLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single link state advertisement." + INDEX { ospfVirtLocalLsdbTransitArea, + ospfVirtLocalLsdbNeighbor, + ospfVirtLocalLsdbType, + ospfVirtLocalLsdbLsid, + ospfVirtLocalLsdbRouterId + } + ::= { ospfVirtLocalLsdbTable 1 } + + OspfVirtLocalLsdbEntry ::= + SEQUENCE { + ospfVirtLocalLsdbTransitArea + AreaID, + ospfVirtLocalLsdbNeighbor + RouterID, + ospfVirtLocalLsdbType + INTEGER, + ospfVirtLocalLsdbLsid + IpAddress, + ospfVirtLocalLsdbRouterId + RouterID, + ospfVirtLocalLsdbSequence + Integer32, + ospfVirtLocalLsdbAge + Integer32, + ospfVirtLocalLsdbChecksum + Integer32, + ospfVirtLocalLsdbAdvertisement + OCTET STRING + } + + ospfVirtLocalLsdbTransitArea OBJECT-TYPE + + + + SYNTAX AreaID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The transit area that the virtual link + traverses. By definition, this is not 0.0.0.0." + REFERENCE + "OSPF Version 2, Appendix C.3 Interface parameters" + ::= { ospfVirtLocalLsdbEntry 1 } + + ospfVirtLocalLsdbNeighbor OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Router ID of the virtual neighbor." + REFERENCE + "OSPF Version 2, Appendix C.3 Interface parameters" + ::= { ospfVirtLocalLsdbEntry 2 } + + ospfVirtLocalLsdbType OBJECT-TYPE + SYNTAX INTEGER { localOpaqueLink (9) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format." + REFERENCE + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + ::= { ospfVirtLocalLsdbEntry 3 } + + ospfVirtLocalLsdbLsid OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS Type Specific field + containing a 32-bit identifier in IP address format; + it identifies the piece of the routing domain + that is being described by the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.4 Link State ID" + ::= { ospfVirtLocalLsdbEntry 4 } + + ospfVirtLocalLsdbRouterId OBJECT-TYPE + SYNTAX RouterID + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1 Global parameters" + ::= { ospfVirtLocalLsdbEntry 5 } + + ospfVirtLocalLsdbSequence OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It starts with the value '80000001'h, + or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + Thus, a typical sequence number will be very negative. + It is used to detect old and duplicate link state + advertisements. The space of sequence numbers is linearly + ordered. The larger the sequence number, the more recent + the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6 LS sequence + number" + ::= { ospfVirtLocalLsdbEntry 6 } + + ospfVirtLocalLsdbAge OBJECT-TYPE + SYNTAX Integer32 -- Should be 0..MaxAge, except when + -- doNotAge bit is set + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds." + REFERENCE + "OSPF Version 2, Section 12.1.1 LS age" + ::= { ospfVirtLocalLsdbEntry 7 } + + ospfVirtLocalLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + + + + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly + referred to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7 LS checksum" + ::= { ospfVirtLocalLsdbEntry 8 } + + ospfVirtLocalLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements. + + Note that for variable length LSAs, SNMP agents + may not be able to return the largest string size." + ::= { ospfVirtLocalLsdbEntry 9 } + +-- OSPF Link State Database, AS-scope + + ospfAsLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfAsLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPF Process's AS-scope LSA link state database. + The database contains the AS-scope Link State + Advertisements from throughout the areas that + the device is attached to. + + This table is identical to the OSPF LSDB Table + in format, but contains only AS-scope Link State + Advertisements. The purpose is to allow AS-scope + LSAs to be displayed once for the router rather + than once in each non-stub area." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements" + ::= { ospf 19 } + + ospfAsLsdbEntry OBJECT-TYPE + SYNTAX OspfAsLsdbEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single link state advertisement." + INDEX { ospfAsLsdbType, ospfAsLsdbLsid, ospfAsLsdbRouterId } + ::= { ospfAsLsdbTable 1 } + + OspfAsLsdbEntry ::= + SEQUENCE { + ospfAsLsdbType + INTEGER, + ospfAsLsdbLsid + IpAddress, + ospfAsLsdbRouterId + RouterID, + ospfAsLsdbSequence + Integer32, + ospfAsLsdbAge + Integer32, + ospfAsLsdbChecksum + Integer32, + ospfAsLsdbAdvertisement + OCTET STRING + } + + ospfAsLsdbType OBJECT-TYPE + SYNTAX INTEGER { + asExternalLink (5), + asOpaqueLink (11) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format." + REFERENCE + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + ::= { ospfAsLsdbEntry 1 } + + ospfAsLsdbLsid OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS Type Specific field + containing either a Router ID or an IP address; + + + + it identifies the piece of the routing domain + that is being described by the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.4 Link State ID" + ::= { ospfAsLsdbEntry 2 } + + ospfAsLsdbRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1 Global parameters" + ::= { ospfAsLsdbEntry 3 } + + ospfAsLsdbSequence OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It starts with the value '80000001'h, + or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + Thus, a typical sequence number will be very negative. + It is used to detect old and duplicate link state + advertisements. The space of sequence numbers is linearly + ordered. The larger the sequence number, the more recent + the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6 LS sequence + number" + ::= { ospfAsLsdbEntry 4 } + + ospfAsLsdbAge OBJECT-TYPE + SYNTAX Integer32 -- Should be 0..MaxAge, except when + -- doNotAge bit is set + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds." + REFERENCE + "OSPF Version 2, Section 12.1.1 LS age" + ::= { ospfAsLsdbEntry 5 } + + + + + ospfAsLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly referred + to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7 LS checksum" + ::= { ospfAsLsdbEntry 6 } + + ospfAsLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements. + + Note that for variable length LSAs, SNMP agents + may not be able to return the largest string size." + ::= { ospfAsLsdbEntry 7 } + + -- OSPF Area LSA Counter Table + + ospfAreaLsaCountTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfAreaLsaCountEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table maintains per-area, per-LSA-type counters" + ::= { ospf 20 } + + ospfAreaLsaCountEntry OBJECT-TYPE + SYNTAX OspfAreaLsaCountEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry with a number of link advertisements + + + + of a given type for a given area." + INDEX { ospfAreaLsaCountAreaId, ospfAreaLsaCountLsaType } + ::= { ospfAreaLsaCountTable 1 } + + OspfAreaLsaCountEntry ::= + SEQUENCE { + ospfAreaLsaCountAreaId + AreaID, + ospfAreaLsaCountLsaType + INTEGER, + ospfAreaLsaCountNumber + Gauge32 + } + + ospfAreaLsaCountAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This entry Area ID." + ::= { ospfAreaLsaCountEntry 1 } + + ospfAreaLsaCountLsaType OBJECT-TYPE + SYNTAX INTEGER { + routerLink (1), + networkLink (2), + summaryLink (3), + asSummaryLink (4), + multicastLink (6), + nssaExternalLink (7), + areaOpaqueLink (10) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This entry LSA type." + ::= { ospfAreaLsaCountEntry 2 } + + ospfAreaLsaCountNumber OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of LSAs of a given type for a given area." + ::= { ospfAreaLsaCountEntry 3 } + +-- conformance information + + + + +ospfConformance OBJECT IDENTIFIER ::= { ospf 15 } + +ospfGroups OBJECT IDENTIFIER ::= { ospfConformance 1 } +ospfCompliances OBJECT IDENTIFIER ::= { ospfConformance 2 } + +-- compliance statements + + ospfCompliance MODULE-COMPLIANCE + STATUS deprecated + DESCRIPTION + "The compliance statement for OSPF systems + conforming to RFC 1850." + MODULE -- this module + MANDATORY-GROUPS { + ospfBasicGroup, + ospfAreaGroup, + ospfStubAreaGroup, + ospfIfGroup, + ospfIfMetricGroup, + ospfVirtIfGroup, + ospfNbrGroup, + ospfVirtNbrGroup, + ospfAreaAggregateGroup + } + GROUP ospfHostGroup + DESCRIPTION + "This group is mandatory for OSPF systems that support + attached hosts." + GROUP ospfLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their per-area link state database." + GROUP ospfExtLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their external link state database." + ::= { ospfCompliances 1 } + + ospfCompliance2 MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement." + MODULE -- this module + MANDATORY-GROUPS { + ospfBasicGroup2, + ospfAreaGroup2, + ospfStubAreaGroup, + ospfIfGroup2, + + + + ospfIfMetricGroup, + ospfVirtIfGroup2, + ospfNbrGroup2, + ospfVirtNbrGroup2, + ospfAreaAggregateGroup2 + } + GROUP ospfHostGroup2 + DESCRIPTION + "This group is mandatory for OSPF systems that support + attached hosts." + GROUP ospfLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their per-area link state database." + GROUP ospfAsLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their AS-scope link state database." + GROUP ospfLocalLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their per-link link state database for non-virtual + links." + GROUP ospfVirtLocalLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their per-link link state database for virtual links." + GROUP ospfAreaLsaCountGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + per-area, per-LSA-type counters." + ::= { ospfCompliances 2 } + + ospfComplianceObsolete MODULE-COMPLIANCE + STATUS obsolete + DESCRIPTION + "Contains obsolete object groups." + MODULE -- this module + GROUP ospfAreaRangeGroup + DESCRIPTION + "This group is obsolete, and it is mandatory only + for non-Classless Inter-Domain Routing (CIDR) OSPF + systems that support multiple areas." + GROUP ospfObsoleteGroup + DESCRIPTION + "This group contains obsolete objects, + which are no longer required for OSPF systems." + ::= { ospfCompliances 3 } + + + +-- units of conformance + + ospfBasicGroup OBJECT-GROUP + OBJECTS { + ospfRouterId, + ospfAdminStat, + ospfVersionNumber, + ospfAreaBdrRtrStatus, + ospfASBdrRtrStatus, + ospfExternLsaCount, + ospfExternLsaCksumSum, + ospfTOSSupport, + ospfOriginateNewLsas, + ospfRxNewLsas, + ospfExtLsdbLimit, + ospfMulticastExtensions, + ospfExitOverflowInterval, + ospfDemandExtensions + } + STATUS deprecated + DESCRIPTION + "These objects are used to monitor/manage + global OSPF parameters. This object group + conforms to RFC 1850." + ::= { ospfGroups 1 } + + ospfAreaGroup OBJECT-GROUP + OBJECTS { + ospfAreaId, + ospfImportAsExtern, + ospfSpfRuns, + ospfAreaBdrRtrCount, + ospfAsBdrRtrCount, + ospfAreaLsaCount, + ospfAreaLsaCksumSum, + ospfAreaSummary, + ospfAreaStatus + } + STATUS deprecated + DESCRIPTION + "These objects are used for OSPF systems + supporting areas per RFC 1850." + ::= { ospfGroups 2 } + + ospfStubAreaGroup OBJECT-GROUP + OBJECTS { + ospfStubAreaId, + ospfStubTOS, + + + + ospfStubMetric, + ospfStubStatus, + ospfStubMetricType + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + supporting stub areas." + ::= { ospfGroups 3 } + + ospfLsdbGroup OBJECT-GROUP + OBJECTS { + ospfLsdbAreaId, + ospfLsdbType, + ospfLsdbLsid, + ospfLsdbRouterId, + ospfLsdbSequence, + ospfLsdbAge, + ospfLsdbChecksum, + ospfLsdbAdvertisement + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + that display their link state database." + ::= { ospfGroups 4 } + + ospfAreaRangeGroup OBJECT-GROUP + OBJECTS { + ospfAreaRangeAreaId, + ospfAreaRangeNet, + ospfAreaRangeMask, + ospfAreaRangeStatus, + ospfAreaRangeEffect + } + STATUS obsolete + DESCRIPTION + "These objects are used for non-CIDR OSPF + systems that support multiple areas. This + object group is obsolete." + ::= { ospfGroups 5 } + + ospfHostGroup OBJECT-GROUP + OBJECTS { + ospfHostIpAddress, + ospfHostTOS, + ospfHostMetric, + ospfHostStatus, + + + + ospfHostAreaID + } + STATUS deprecated + DESCRIPTION + "These objects are used for OSPF systems + that support attached hosts." + ::= { ospfGroups 6 } + + ospfIfGroup OBJECT-GROUP + OBJECTS { + ospfIfIpAddress, + ospfAddressLessIf, + ospfIfAreaId, + ospfIfType, + ospfIfAdminStat, + ospfIfRtrPriority, + ospfIfTransitDelay, + ospfIfRetransInterval, + ospfIfHelloInterval, + ospfIfRtrDeadInterval, + ospfIfPollInterval, + ospfIfState, + ospfIfDesignatedRouter, + ospfIfBackupDesignatedRouter, + ospfIfEvents, + ospfIfAuthType, + ospfIfAuthKey, + ospfIfStatus, + ospfIfMulticastForwarding, + ospfIfDemand + } + STATUS deprecated + DESCRIPTION + "These objects are used to monitor/manage OSPF + interfaces. This object group conforms to RFC 1850." + ::= { ospfGroups 7 } + + ospfIfMetricGroup OBJECT-GROUP + OBJECTS { + ospfIfMetricIpAddress, + ospfIfMetricAddressLessIf, + ospfIfMetricTOS, + ospfIfMetricValue, + ospfIfMetricStatus + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems for supporting + + + + interface metrics." + ::= { ospfGroups 8 } + + ospfVirtIfGroup OBJECT-GROUP + OBJECTS { + ospfVirtIfAreaId, + ospfVirtIfNeighbor, + ospfVirtIfTransitDelay, + ospfVirtIfRetransInterval, + ospfVirtIfHelloInterval, + ospfVirtIfRtrDeadInterval, + ospfVirtIfState, + ospfVirtIfEvents, + ospfVirtIfAuthType, + ospfVirtIfAuthKey, + ospfVirtIfStatus + } + STATUS deprecated + DESCRIPTION + "These objects are used for OSPF systems for supporting + virtual interfaces. This object group conforms + to RFC 1850." + ::= { ospfGroups 9 } + + ospfNbrGroup OBJECT-GROUP + OBJECTS { + ospfNbrIpAddr, + ospfNbrAddressLessIndex, + ospfNbrRtrId, + ospfNbrOptions, + ospfNbrPriority, + ospfNbrState, + ospfNbrEvents, + ospfNbrLsRetransQLen, + ospfNbmaNbrStatus, + ospfNbmaNbrPermanence, + ospfNbrHelloSuppressed + } + STATUS deprecated + DESCRIPTION + "These objects are used to monitor/manage OSPF neighbors. + This object group conforms to RFC 1850." + ::= { ospfGroups 10 } + + ospfVirtNbrGroup OBJECT-GROUP + OBJECTS { + ospfVirtNbrArea, + ospfVirtNbrRtrId, + + + + ospfVirtNbrIpAddr, + ospfVirtNbrOptions, + ospfVirtNbrState, + ospfVirtNbrEvents, + ospfVirtNbrLsRetransQLen, + ospfVirtNbrHelloSuppressed + } + STATUS deprecated + DESCRIPTION + "These objects are used to monitor/manage OSPF virtual + neighbors. This object group conforms to RFC 1850." + + ::= { ospfGroups 11 } + + ospfExtLsdbGroup OBJECT-GROUP + OBJECTS { + ospfExtLsdbType, + ospfExtLsdbLsid, + ospfExtLsdbRouterId, + ospfExtLsdbSequence, + ospfExtLsdbAge, + ospfExtLsdbChecksum, + ospfExtLsdbAdvertisement + } + STATUS deprecated + DESCRIPTION + "These objects are used for OSPF systems that display + their link state database. This object group + conforms to RFC 1850. + + This object group is replaced by the ospfAsLsdbGroup + in order to support any AS-scope LSA type in a single + table." + ::= { ospfGroups 12 } + + ospfAreaAggregateGroup OBJECT-GROUP + OBJECTS { + ospfAreaAggregateAreaID, + ospfAreaAggregateLsdbType, + ospfAreaAggregateNet, + ospfAreaAggregateMask, + ospfAreaAggregateStatus, + ospfAreaAggregateEffect + } + STATUS deprecated + DESCRIPTION + "These objects are used for OSPF systems to support + network prefix aggregation across areas." + + + + ::= { ospfGroups 13 } + + ospfLocalLsdbGroup OBJECT-GROUP + OBJECTS { + ospfLocalLsdbSequence, + ospfLocalLsdbAge, + ospfLocalLsdbChecksum, + ospfLocalLsdbAdvertisement + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + that display their link-local link state databases + for non-virtual links." + ::= { ospfGroups 14 } + + ospfVirtLocalLsdbGroup OBJECT-GROUP + OBJECTS { + ospfVirtLocalLsdbSequence, + ospfVirtLocalLsdbAge, + ospfVirtLocalLsdbChecksum, + ospfVirtLocalLsdbAdvertisement + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + that display their link-local link state databases + for virtual links." + ::= { ospfGroups 15 } + + ospfAsLsdbGroup OBJECT-GROUP + OBJECTS { + ospfAsLsdbSequence, + ospfAsLsdbAge, + ospfAsLsdbChecksum, + ospfAsLsdbAdvertisement + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + that display their AS-scope link state database." + ::= { ospfGroups 16 } + + ospfBasicGroup2 OBJECT-GROUP + OBJECTS { + ospfRouterId, + ospfAdminStat, + ospfVersionNumber, + + + + ospfAreaBdrRtrStatus, + ospfASBdrRtrStatus, + ospfExternLsaCount, + ospfExternLsaCksumSum, + ospfTOSSupport, + ospfOriginateNewLsas, + ospfRxNewLsas, + ospfExtLsdbLimit, + ospfMulticastExtensions, + ospfExitOverflowInterval, + ospfDemandExtensions, + ospfRFC1583Compatibility, + ospfOpaqueLsaSupport, + ospfReferenceBandwidth, + ospfRestartSupport, + ospfRestartInterval, + ospfRestartStrictLsaChecking, + ospfRestartStatus, + ospfRestartAge, + ospfRestartExitReason, + ospfAsLsaCount, + ospfAsLsaCksumSum, + ospfStubRouterSupport, + ospfStubRouterAdvertisement, + ospfDiscontinuityTime + } + STATUS current + DESCRIPTION + "These objects are used to monitor/manage OSPF global + parameters." + ::= { ospfGroups 17 } + + ospfAreaGroup2 OBJECT-GROUP + OBJECTS { + ospfAreaId, + ospfImportAsExtern, + ospfSpfRuns, + ospfAreaBdrRtrCount, + ospfAsBdrRtrCount, + ospfAreaLsaCount, + ospfAreaLsaCksumSum, + ospfAreaSummary, + ospfAreaStatus, + ospfAreaNssaTranslatorRole, + ospfAreaNssaTranslatorState, + ospfAreaNssaTranslatorStabilityInterval, + ospfAreaNssaTranslatorEvents + } + + + + STATUS current + DESCRIPTION + "These objects are used by OSPF systems + to support areas." + ::= { ospfGroups 18 } + + ospfIfGroup2 OBJECT-GROUP + OBJECTS { + ospfIfIpAddress, + ospfAddressLessIf, + ospfIfAreaId, + ospfIfType, + ospfIfAdminStat, + ospfIfRtrPriority, + ospfIfTransitDelay, + ospfIfRetransInterval, + ospfIfHelloInterval, + ospfIfRtrDeadInterval, + ospfIfPollInterval, + ospfIfState, + ospfIfDesignatedRouter, + ospfIfBackupDesignatedRouter, + ospfIfEvents, + ospfIfAuthType, + ospfIfAuthKey, + ospfIfStatus, + ospfIfMulticastForwarding, + ospfIfDemand, + ospfIfLsaCount, + ospfIfLsaCksumSum + } + STATUS current + DESCRIPTION + "These objects are used to monitor/manage OSPF interfaces." + ::= { ospfGroups 19 } + + ospfVirtIfGroup2 OBJECT-GROUP + OBJECTS { + ospfVirtIfAreaId, + ospfVirtIfNeighbor, + ospfVirtIfTransitDelay, + ospfVirtIfRetransInterval, + ospfVirtIfHelloInterval, + ospfVirtIfRtrDeadInterval, + ospfVirtIfState, + ospfVirtIfEvents, + ospfVirtIfAuthType, + ospfVirtIfAuthKey, + + + + ospfVirtIfStatus, + ospfVirtIfLsaCount, + ospfVirtIfLsaCksumSum, + ospfIfDesignatedRouterId, + ospfIfBackupDesignatedRouterId + } + STATUS current + DESCRIPTION + "These objects are used to monitor/manage OSPF + virtual interfaces." + ::= { ospfGroups 20 } + + ospfNbrGroup2 OBJECT-GROUP + OBJECTS { + ospfNbrIpAddr, + ospfNbrAddressLessIndex, + ospfNbrRtrId, + ospfNbrOptions, + ospfNbrPriority, + ospfNbrState, + ospfNbrEvents, + ospfNbrLsRetransQLen, + ospfNbmaNbrStatus, + ospfNbmaNbrPermanence, + ospfNbrHelloSuppressed, + ospfNbrRestartHelperStatus, + ospfNbrRestartHelperAge, + ospfNbrRestartHelperExitReason + } + STATUS current + DESCRIPTION + "These objects are used to monitor/manage OSPF + neighbors." + ::= { ospfGroups 21 } + + ospfVirtNbrGroup2 OBJECT-GROUP + OBJECTS { + ospfVirtNbrArea, + ospfVirtNbrRtrId, + ospfVirtNbrIpAddr, + ospfVirtNbrOptions, + ospfVirtNbrState, + ospfVirtNbrEvents, + ospfVirtNbrLsRetransQLen, + ospfVirtNbrHelloSuppressed, + ospfVirtNbrRestartHelperStatus, + ospfVirtNbrRestartHelperAge, + ospfVirtNbrRestartHelperExitReason + + + + } + STATUS current + DESCRIPTION + "These objects are used to monitor/manage OSPF + virtual neighbors." + ::= { ospfGroups 22 } + + ospfAreaAggregateGroup2 OBJECT-GROUP + OBJECTS { + ospfAreaAggregateAreaID, + ospfAreaAggregateLsdbType, + ospfAreaAggregateNet, + ospfAreaAggregateMask, + ospfAreaAggregateStatus, + ospfAreaAggregateEffect, + ospfAreaAggregateExtRouteTag + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems to support + network prefix aggregation across areas." + ::= { ospfGroups 23 } + + ospfAreaLsaCountGroup OBJECT-GROUP + OBJECTS { + ospfAreaLsaCountNumber + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems that display + per-area, per-LSA-type counters." + ::= { ospfGroups 24 } + + ospfHostGroup2 OBJECT-GROUP + OBJECTS { + ospfHostIpAddress, + ospfHostTOS, + ospfHostMetric, + ospfHostStatus, + ospfHostCfgAreaID + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + that support attached hosts." + ::= { ospfGroups 25 } + +-- This object group is included for SMI conformance. It is not a + + + +-- mandatory group for compliance with this MIB + + ospfObsoleteGroup OBJECT-GROUP + OBJECTS { + ospfAuthType + } + STATUS obsolete + DESCRIPTION + "These objects are obsolete and are no longer required for + OSPF systems. They are placed into this group for SMI + conformance." + ::= { ospfGroups 26 } + +END \ No newline at end of file diff --git a/mibs/OSPFV3-MIB.txt b/mibs/OSPFV3-MIB.txt new file mode 100644 index 00000000..3a122724 --- /dev/null +++ b/mibs/OSPFV3-MIB.txt @@ -0,0 +1,4075 @@ + OSPFV3-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, mib-2, + Counter32, Gauge32, Integer32, Unsigned32 + FROM SNMPv2-SMI + TEXTUAL-CONVENTION, TruthValue, RowStatus, TimeStamp + FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF + InterfaceIndex + FROM IF-MIB + InetAddressType, InetAddress, InetAddressPrefixLength, + InetAddressIPv6 + FROM INET-ADDRESS-MIB + Metric, BigMetric, Status, + HelloRange, DesignatedRouterPriority + FROM OSPF-MIB; + + ospfv3MIB MODULE-IDENTITY + LAST-UPDATED "200908130000Z" + ORGANIZATION "IETF OSPF Working Group" + CONTACT-INFO + "WG E-Mail: ospf@ietf.org + WG Chairs: Acee Lindem + acee@redback.com + + Abhay Roy + akr@cisco.com + + Editors: Dan Joyal + Nortel + 600 Technology Park Drive + Billerica, MA 01821, USA + djoyal@nortel.com + + Vishwas Manral + IP Infusion + Almora, Uttarakhand + India + vishwas@ipinfusion.com" + + DESCRIPTION + "The MIB module for OSPF version 3. + + Copyright (c) 2009 IETF Trust and the persons + identified as authors of the code. All rights + reserved. + + Redistribution and use in source and binary forms, with + or without modification, are permitted provided that + the following conditions are met: + + - Redistributions of source code must retain the above + copyright notice, this list of conditions and the + following disclaimer. + + - Redistributions in binary form must reproduce the + above copyright notice, this list of conditions and + the following disclaimer in the documentation and/or + other materials provided with the distribution. + + - Neither the name of Internet Society, IETF or IETF + Trust, nor the names of specific contributors, may be + used to endorse or promote products derived from this + software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED + WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF + USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER + IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE + USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + + This version of this MIB module is part of RFC 5643; + see the RFC itself for full legal notices." + + REVISION "200908130000Z" + DESCRIPTION + "Initial version, published as RFC 5643" + ::= { mib-2 191 } + + -- Textual conventions + + Ospfv3UpToRefreshIntervalTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "The values one might be able to configure for + variables bounded by the Refresh Interval." + REFERENCE + "OSPF Version 2, Appendix B, Architectural Constants" + SYNTAX Unsigned32 (1..1800) + + Ospfv3DeadIntervalRangeTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "The range, in seconds, of dead interval value." + REFERENCE + "OSPF for IPv6, Appendix C.3, Router Interface + Parameters" + SYNTAX Unsigned32 (1..'FFFF'h) + + Ospfv3RouterIdTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "A 32-bit, unsigned integer uniquely identifying the + router in the Autonomous System. To ensure + uniqueness, this may default to the value of one of + the router's IPv4 host addresses if IPv4 is + configured on the router." + REFERENCE + "OSPF for IPv6, Appendix C.1, Global Parameters" + SYNTAX Unsigned32 (1..'FFFFFFFF'h) + + Ospfv3LsIdTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "A unique 32-bit identifier of the piece of the + routing domain that is being described by a link + state advertisement. In contrast to OSPFv2, the + Link State ID (LSID) has no addressing semantics." + REFERENCE + "OSPF Version 2, Section 12.1.4, Link State ID" + SYNTAX Unsigned32 (1..'FFFFFFFF'h) + + Ospfv3AreaIdTC ::= TEXTUAL-CONVENTION + + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "An OSPFv3 Area Identifier. A value of zero + identifies the backbone area." + REFERENCE + "OSPF for IPv6, Appendix C.3 Router Interface + Parameters" + SYNTAX Unsigned32 (0..'FFFFFFFF'h) + + Ospfv3IfInstIdTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "An OSPFv3 Interface Instance ID." + REFERENCE + "OSPF for IPv6, Appendix C.3, Router Interface + Parameters" + SYNTAX Unsigned32 (0..255) + + Ospfv3LsaSequenceTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It is used to detect old and duplicate + link state advertisements. The space of + sequence numbers is linearly ordered. The + larger the sequence number, the more recent the + advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6, LS sequence + number" + SYNTAX Integer32 + + Ospfv3LsaAgeTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "The age of the link state advertisement in + seconds. The high-order bit of the LS age + field is considered the DoNotAge bit for + support of on-demand circuits." + REFERENCE + "OSPF Version 2, Section 12.1.1, LS age; + Extending OSPF to Support Demand Circuits, + Section 2.2, The LS age field" + SYNTAX Unsigned32 (0..3600 | 32768..36368) + + + + -- Top-level structure of MIB + ospfv3Notifications OBJECT IDENTIFIER ::= { ospfv3MIB 0 } + ospfv3Objects OBJECT IDENTIFIER ::= { ospfv3MIB 1 } + ospfv3Conformance OBJECT IDENTIFIER ::= { ospfv3MIB 2 } + + -- OSPFv3 General Variables + + -- These parameters apply globally to the Router's + -- OSPFv3 Process. + + ospfv3GeneralGroup OBJECT IDENTIFIER ::= { ospfv3Objects 1 } + + ospfv3RouterId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A 32-bit unsigned integer uniquely identifying + the router in the Autonomous System. To ensure + uniqueness, this may default to the 32-bit + unsigned integer representation of one of + the router's IPv4 interface addresses (if IPv4 + is configured on the router). + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF for IPv6, Appendix C.1, Global Parameters" + ::= { ospfv3GeneralGroup 1 } + + ospfv3AdminStatus OBJECT-TYPE + SYNTAX Status + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative status of OSPFv3 in the + router. The value 'enabled' denotes that the + OSPFv3 Process is active on at least one + interface; 'disabled' disables it on all + interfaces. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + ::= { ospfv3GeneralGroup 2 } + + ospfv3VersionNumber OBJECT-TYPE + SYNTAX INTEGER { version3 (3) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The version number of OSPF for IPv6 is 3." + ::= { ospfv3GeneralGroup 3 } + + ospfv3AreaBdrRtrStatus OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A flag to denote whether this router is an area + border router. The value of this object is true (1) + when the router is an area border router." + REFERENCE + "OSPF Version 2, Section 3, Splitting the AS into + Areas" + ::= { ospfv3GeneralGroup 4 } + + ospfv3ASBdrRtrStatus OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A flag to note whether this router is + configured as an Autonomous System border router. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Section 3.3, Classification of + routers" + ::= { ospfv3GeneralGroup 5 } + + ospfv3AsScopeLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of AS-scope (e.g., AS-External) link state + advertisements in the link state database." + ::= { ospfv3GeneralGroup 6 } + + ospfv3AsScopeLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the LS checksums of + the AS-scoped link state advertisements + contained in the link state database. This sum + can be used to determine if there has been a + change in a router's link state database or + to compare the link state database of two + routers." + ::= { ospfv3GeneralGroup 7 } + + ospfv3OriginateNewLsas OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of new link state advertisements + that have been originated. This number is + incremented each time the router originates a new + LSA. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3GeneralGroup 8 } + + ospfv3RxNewLsas OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of link state advertisements + received that are determined to be new + instantiations. This number does not include + newer instantiations of self-originated link state + advertisements. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3GeneralGroup 9 } + + ospfv3ExtLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "The number of External (LS type 0x4005) in the + link state database." + ::= { ospfv3GeneralGroup 10 } + + ospfv3ExtAreaLsdbLimit OBJECT-TYPE + SYNTAX Integer32 (-1..'7FFFFFFF'h) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The maximum number of non-default + AS-external-LSA entries that can be stored in the + link state database. If the value is -1, then + there is no limit. + + When the number of non-default AS-external-LSAs + in a router's link state database reaches + ospfv3ExtAreaLsdbLimit, the router enters Overflow + state. The router never holds more than + ospfv3ExtAreaLsdbLimit non-default AS-external-LSAs + in its database. ospfv3ExtAreaLsdbLimit MUST be set + identically in all routers attached to the OSPFv3 + backbone and/or any regular OSPFv3 area (i.e., + OSPFv3 stub areas and not-so-stubby-areas (NSSAs) + are excluded). + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + ::= { ospfv3GeneralGroup 11 } + + ospfv3ExitOverflowInterval OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The number of seconds that, after entering + Overflow state, a router will attempt to leave + Overflow state. This allows the router to again + originate non-default, AS-External-LSAs. When + set to 0, the router will not leave Overflow + state until restarted. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + + ::= { ospfv3GeneralGroup 12 } + + ospfv3DemandExtensions OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The router's support for demand circuits. + The value of this object is true (1) when + demand circuits are supported. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2; Extending OSPF to Support Demand + Circuits" + ::= { ospfv3GeneralGroup 13 } + + ospfv3ReferenceBandwidth OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "kilobits per second" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Reference bandwidth in kilobits per second for + calculating default interface metrics. The + default value is 100,000 KBPS (100 MBPS). + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix C.3, Router interface + parameters" + DEFVAL { 100000 } + ::= { ospfv3GeneralGroup 14 } + + ospfv3RestartSupport OBJECT-TYPE + SYNTAX INTEGER { none(1), + plannedOnly(2), + plannedAndUnplanned(3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The router's support for OSPF graceful restart. + Options include no restart support, only planned + + restarts, or both planned and unplanned restarts. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE "Graceful OSPF Restart, Appendix B.1, Global + Parameters (Minimum subset)" + ::= { ospfv3GeneralGroup 15 } + + ospfv3RestartInterval OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Configured OSPF graceful restart timeout interval. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE "Graceful OSPF Restart, Appendix B.1, Global + Parameters (Minimum subset)" + DEFVAL { 120 } + ::= { ospfv3GeneralGroup 16 } + + ospfv3RestartStrictLsaChecking OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates if strict LSA checking is enabled for + graceful restart. A value of true (1) indicates that + strict LSA checking is enabled. + + This object is persistent, and when written, + the entity SHOULD save the change to non-volatile + storage." + REFERENCE "Graceful OSPF Restart, Appendix B.2, Global + Parameters (Optional)" + DEFVAL { true } + ::= { ospfv3GeneralGroup 17 } + + ospfv3RestartStatus OBJECT-TYPE + SYNTAX INTEGER { notRestarting(1), + plannedRestart(2), + unplannedRestart(3) + } + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "The current status of OSPF graceful restart capability." + ::= { ospfv3GeneralGroup 18 } + + ospfv3RestartAge OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in the current OSPF graceful restart + interval." + ::= { ospfv3GeneralGroup 19 } + + ospfv3RestartExitReason OBJECT-TYPE + SYNTAX INTEGER { none(1), + inProgress(2), + completed(3), + timedOut(4), + topologyChanged(5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Describes the outcome of the last attempt at a + graceful restart. + + none: no restart has yet been attempted. + inProgress: a restart attempt is currently underway. + completed: the last restart completed successfully. + timedOut: the last restart timed out. + topologyChanged: the last restart was aborted due to + a topology change." + ::= { ospfv3GeneralGroup 20 } + + ospfv3NotificationEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object provides a coarse level of control + over the generation of OSPFv3 notifications. + + If this object is set to true (1), then it enables + the generation of OSPFv3 notifications. If it is + set to false (2), these notifications are not + generated. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + ::= { ospfv3GeneralGroup 21 } + + ospfv3StubRouterSupport OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The router's support for stub router functionality. An + object value of true (1) indicates that stub router + functionality is supported." + REFERENCE + "OSPF Stub Router Advertisement" + ::= { ospfv3GeneralGroup 22 } + + ospfv3StubRouterAdvertisement OBJECT-TYPE + SYNTAX INTEGER { + doNotAdvertise(1), + advertise(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object controls the advertisement of + stub LSAs by the router. The value + doNotAdvertise (1) will result in the advertisement + of standard LSAs and is the default value. + + This object is persistent, and when written, + the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Stub Router Advertisement, Section 2, Proposed + Solution" + DEFVAL { doNotAdvertise } + ::= { ospfv3GeneralGroup 23 } + + ospfv3DiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one of this MIB's counters suffered + a discontinuity. + + + If no such discontinuities have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." + ::= { ospfv3GeneralGroup 24 } + + ospfv3RestartTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which the ospfv3RestartExitReason was updated." + ::= { ospfv3GeneralGroup 25 } + + -- The OSPFv3 Area Data Structure contains information + -- regarding the various areas. The interfaces and + -- virtual links are configured as part of these areas. + -- Area 0, by definition, is the backbone area. + + ospfv3AreaTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3AreaEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information describing the configured + parameters and cumulative statistics of the router's + attached areas. The interfaces and + virtual links are configured as part of these areas. + Area 0, by definition, is the backbone area." + REFERENCE + "OSPF Version 2, Section 6, The Area Data + Structure" + ::= { ospfv3Objects 2 } + + ospfv3AreaEntry OBJECT-TYPE + SYNTAX Ospfv3AreaEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information describing the configured + parameters and cumulative statistics of one of the + router's attached areas. + + The information in this table is persistent, + and when written, the entity SHOULD save the a + change to non-volatile storage." + INDEX { ospfv3AreaId } + ::= { ospfv3AreaTable 1 } + + Ospfv3AreaEntry ::= SEQUENCE { + ospfv3AreaId + Ospfv3AreaIdTC, + ospfv3AreaImportAsExtern + INTEGER, + ospfv3AreaSpfRuns + Counter32, + ospfv3AreaBdrRtrCount + Gauge32, + ospfv3AreaAsBdrRtrCount + Gauge32, + ospfv3AreaScopeLsaCount + Gauge32, + ospfv3AreaScopeLsaCksumSum + Unsigned32, + ospfv3AreaSummary + INTEGER, + ospfv3AreaRowStatus + RowStatus, + ospfv3AreaStubMetric + BigMetric, + ospfv3AreaNssaTranslatorRole + INTEGER, + ospfv3AreaNssaTranslatorState + INTEGER, + ospfv3AreaNssaTranslatorStabInterval + Unsigned32, + ospfv3AreaNssaTranslatorEvents + Counter32, + ospfv3AreaStubMetricType + INTEGER, + ospfv3AreaTEEnabled + TruthValue + } + + ospfv3AreaId OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A 32-bit unsigned integer uniquely identifying an area. + Area ID 0 is used for the OSPFv3 backbone." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + ::= { ospfv3AreaEntry 1 } + + + + + ospfv3AreaImportAsExtern OBJECT-TYPE + SYNTAX INTEGER { + importExternal(1), -- normal area + importNoExternal(2), -- stub area + importNssa(3) -- not-so-stubby-area + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether an area is a stub area, NSSA, or + standard area. AS-scope LSAs are not imported into stub + areas or NSSAs. NSSAs import AS-External data as NSSA + LSAs that have Area-scope." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + DEFVAL { importExternal } + ::= { ospfv3AreaEntry 2 } + + ospfv3AreaSpfRuns OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times that the intra-area route + table has been calculated using this area's + link state database. This is typically done + using Dijkstra's algorithm. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3AreaEntry 3 } + + ospfv3AreaBdrRtrCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of area border routers + reachable within this area. This is initially zero, + and is calculated in each Shortest Path First (SPF) + pass." + DEFVAL { 0 } + ::= { ospfv3AreaEntry 4 } + + + + + ospfv3AreaAsBdrRtrCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of Autonomous System border + routers reachable within this area. This is + initially zero, and is calculated in each SPF + pass." + DEFVAL { 0 } + ::= { ospfv3AreaEntry 5 } + + ospfv3AreaScopeLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of Area-scope link state + advertisements in this area's link state + database." + DEFVAL { 0 } + ::= { ospfv3AreaEntry 6 } + + ospfv3AreaScopeLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the Area-scope link state + advertisements' LS checksums contained in this + area's link state database. The sum can be used + to determine if there has been a change in a + router's link state database or to compare the + link state database of two routers." + ::= { ospfv3AreaEntry 7 } + + ospfv3AreaSummary OBJECT-TYPE + SYNTAX INTEGER { + noAreaSummary(1), + sendAreaSummary(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The variable ospfv3AreaSummary controls the + import of Inter-Area LSAs into stub and + NSSA areas. It has no effect on other areas. + + + If it is noAreaSummary, the router will neither + originate nor propagate Inter-Area LSAs into the + stub or NSSA area. It will only advertise a + default route. + + If it is sendAreaSummary, the router will both + summarize and propagate Inter-Area LSAs." + DEFVAL { sendAreaSummary } + ::= { ospfv3AreaEntry 8 } + + ospfv3AreaRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3AreaEntry 9 } + + ospfv3AreaStubMetric OBJECT-TYPE + SYNTAX BigMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric value advertised for the default route + into stub and NSSA areas. By default, this equals the + least metric among the interfaces to other areas." + ::= { ospfv3AreaEntry 10 } + + ospfv3AreaNssaTranslatorRole OBJECT-TYPE + SYNTAX INTEGER { always(1), candidate(2) } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates an NSSA border router's policy to + perform NSSA translation of NSSA-LSAs into + AS-External-LSAs." + DEFVAL { candidate } + ::= { ospfv3AreaEntry 11 } + + ospfv3AreaNssaTranslatorState OBJECT-TYPE + SYNTAX INTEGER { + enabled(1), + + elected(2), + disabled(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates if and how an NSSA border router is + performing NSSA translation of NSSA-LSAs into + AS-External-LSAs. When this object is set to + 'enabled', the NSSA border router's + ospfv3AreaNssaTranslatorRole has been set to 'always'. + When this object is set to 'elected', a candidate + NSSA border router is translating NSSA-LSAs into + AS-External-LSAs. When this object is set to + 'disabled', a candidate NSSA Border router is NOT + translating NSSA-LSAs into AS-External-LSAs." + ::= { ospfv3AreaEntry 12 } + + ospfv3AreaNssaTranslatorStabInterval OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The stability interval defined as the number of + seconds after an elected translator determines its + services are no longer required that it should + continue to perform its translation duties." + DEFVAL { 40 } + ::= { ospfv3AreaEntry 13 } + + ospfv3AreaNssaTranslatorEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the number of Translator state changes + that have occurred since the last start-up of the + OSPFv3 routing process. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3AreaEntry 14 } + + + + + ospfv3AreaStubMetricType OBJECT-TYPE + SYNTAX INTEGER { + ospfv3Metric(1), -- OSPF Metric + comparableCost(2), -- external type 1 + nonComparable(3) -- external type 2 + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable assigns the type of metric + advertised as a default route." + DEFVAL { ospfv3Metric } + ::= { ospfv3AreaEntry 15 } + + ospfv3AreaTEEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether or not traffic engineering + is enabled in the area. The object is set + to the value true (1) to enable traffic engineering. + Traffic engineering is disabled by default." + DEFVAL { false } + ::= { ospfv3AreaEntry 16 } + + -- OSPFv3 AS-Scope Link State Database + + ospfv3AsLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3AsLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Process's AS-scope link state database + (LSDB). The LSDB contains the AS-scope link state + advertisements from throughout the areas that the + device is attached to." + ::= { ospfv3Objects 3 } + + ospfv3AsLsdbEntry OBJECT-TYPE + SYNTAX Ospfv3AsLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single AS-scope link state advertisement." + INDEX { ospfv3AsLsdbType, + ospfv3AsLsdbRouterId, + ospfv3AsLsdbLsid } + + ::= { ospfv3AsLsdbTable 1 } + + Ospfv3AsLsdbEntry ::= SEQUENCE { + ospfv3AsLsdbType + Unsigned32, + ospfv3AsLsdbRouterId + Ospfv3RouterIdTC, + ospfv3AsLsdbLsid + Ospfv3LsIdTC, + ospfv3AsLsdbSequence + Ospfv3LsaSequenceTC, + ospfv3AsLsdbAge + Ospfv3LsaAgeTC, + ospfv3AsLsdbChecksum + Integer32, + ospfv3AsLsdbAdvertisement + OCTET STRING, + ospfv3AsLsdbTypeKnown + TruthValue + } + + ospfv3AsLsdbType OBJECT-TYPE + SYNTAX Unsigned32(0..'FFFFFFFF'h) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format. AS-scope LSAs not recognized + by the router may be stored in the database." + ::= { ospfv3AsLsdbEntry 1 } + + ospfv3AsLsdbRouterId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1, Global parameters" + ::= { ospfv3AsLsdbEntry 2 } + + ospfv3AsLsdbLsid OBJECT-TYPE + SYNTAX Ospfv3LsIdTC + MAX-ACCESS not-accessible + STATUS current + + + DESCRIPTION + "The Link State ID is an LS type-specific field + containing a unique identifier; + it identifies the piece of the routing domain + that is being described by the advertisement. + In contrast to OSPFv2, the LSID has no + addressing semantics." + ::= { ospfv3AsLsdbEntry 3 } + + -- Note that the OSPF sequence number is a 32-bit signed + -- integer. It starts with the value '80000001'h + -- or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + -- Thus, a typical sequence number will be very negative. + + ospfv3AsLsdbSequence OBJECT-TYPE + SYNTAX Ospfv3LsaSequenceTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It is used to detect old and duplicate + link state advertisements. The space of + sequence numbers is linearly ordered. The + larger the sequence number, the more recent the + advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6, LS sequence + number" + ::= { ospfv3AsLsdbEntry 4 } + + ospfv3AsLsdbAge OBJECT-TYPE + SYNTAX Ospfv3LsaAgeTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds. The high-order bit + of the LS age field is considered the DoNotAge + bit for support of on-demand circuits." + REFERENCE + "OSPF Version 2, Section 12.1.1, LS age; + Extending OSPF to Support Demand Circuits, + Section 2.2, The LS age field." + ::= { ospfv3AsLsdbEntry 5 } + + + + + ospfv3AsLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly + referred to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7, LS checksum" + ::= { ospfv3AsLsdbEntry 6 } + + ospfv3AsLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + ::= { ospfv3AsLsdbEntry 7 } + + ospfv3AsLsdbTypeKnown OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value true (1) indicates that the LSA type + is recognized by this router." + ::= { ospfv3AsLsdbEntry 8 } + + -- OSPFv3 Area-Scope Link State Database + + ospfv3AreaLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3AreaLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Process's Area-scope LSDB. + The LSDB contains the Area-scope link state + advertisements from throughout the area that the + device is attached to." + ::= { ospfv3Objects 4 } + + + ospfv3AreaLsdbEntry OBJECT-TYPE + SYNTAX Ospfv3AreaLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single Area-scope link state advertisement." + INDEX { ospfv3AreaLsdbAreaId, + ospfv3AreaLsdbType, + ospfv3AreaLsdbRouterId, + ospfv3AreaLsdbLsid } + ::= { ospfv3AreaLsdbTable 1 } + + Ospfv3AreaLsdbEntry ::= SEQUENCE { + ospfv3AreaLsdbAreaId + Ospfv3AreaIdTC, + ospfv3AreaLsdbType + Unsigned32, + ospfv3AreaLsdbRouterId + Ospfv3RouterIdTC, + ospfv3AreaLsdbLsid + Ospfv3LsIdTC, + ospfv3AreaLsdbSequence + Ospfv3LsaSequenceTC, + ospfv3AreaLsdbAge + Ospfv3LsaAgeTC, + ospfv3AreaLsdbChecksum + Integer32, + ospfv3AreaLsdbAdvertisement + OCTET STRING, + ospfv3AreaLsdbTypeKnown + TruthValue + } + + ospfv3AreaLsdbAreaId OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit identifier of the Area from which the + LSA was received." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + ::= { ospfv3AreaLsdbEntry 1 } + + ospfv3AreaLsdbType OBJECT-TYPE + SYNTAX Unsigned32(0..'FFFFFFFF'h) + MAX-ACCESS not-accessible + STATUS current + + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format. Area-scope LSAs unrecognized + by the router are also stored in this database." + ::= { ospfv3AreaLsdbEntry 2 } + + ospfv3AreaLsdbRouterId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1, Global parameters" + ::= { ospfv3AreaLsdbEntry 3 } + + ospfv3AreaLsdbLsid OBJECT-TYPE + SYNTAX Ospfv3LsIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS type-specific field + containing a unique identifier; + it identifies the piece of the routing domain + that is being described by the advertisement. + In contrast to OSPFv2, the LSID has no + addressing semantics." + ::= { ospfv3AreaLsdbEntry 4 } + + -- Note that the OSPF sequence number is a 32-bit signed + -- integer. It starts with the value '80000001'h + -- or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + -- Thus, a typical sequence number will be very negative. + + ospfv3AreaLsdbSequence OBJECT-TYPE + SYNTAX Ospfv3LsaSequenceTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It is used to detect old and + duplicate link state advertisements. The space + of sequence numbers is linearly ordered. The + larger the sequence number, the more recent the + advertisement." + + + REFERENCE + "OSPF Version 2, Section 12.1.6, LS sequence + number" + ::= { ospfv3AreaLsdbEntry 5 } + + ospfv3AreaLsdbAge OBJECT-TYPE + SYNTAX Ospfv3LsaAgeTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds. The high-order bit + of the LS age field is considered the DoNotAge + bit for support of on-demand circuits." + REFERENCE + "OSPF Version 2, Section 12.1.1, LS age; + Extending OSPF to Support Demand Circuits, + Section 2.2, The LS age field." + ::= { ospfv3AreaLsdbEntry 6 } + + ospfv3AreaLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly + referred to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7, LS checksum" + ::= { ospfv3AreaLsdbEntry 7 } + + ospfv3AreaLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + ::= { ospfv3AreaLsdbEntry 8 } + + + + ospfv3AreaLsdbTypeKnown OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value true (1) indicates that the LSA type is + recognized by this router." + ::= { ospfv3AreaLsdbEntry 9 } + + -- OSPFv3 Link-Scope Link State Database, for non-virtual interfaces + + ospfv3LinkLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3LinkLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Process's Link-scope LSDB for non-virtual + interfaces. The LSDB contains the Link-scope link + state advertisements from the interfaces that the + device is attached to." + ::= { ospfv3Objects 5 } + + ospfv3LinkLsdbEntry OBJECT-TYPE + SYNTAX Ospfv3LinkLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single Link-scope link state advertisement." + INDEX { ospfv3LinkLsdbIfIndex, + ospfv3LinkLsdbIfInstId, + ospfv3LinkLsdbType, + ospfv3LinkLsdbRouterId, + ospfv3LinkLsdbLsid } + ::= { ospfv3LinkLsdbTable 1 } + + Ospfv3LinkLsdbEntry ::= SEQUENCE { + ospfv3LinkLsdbIfIndex + InterfaceIndex, + ospfv3LinkLsdbIfInstId + Ospfv3IfInstIdTC, + ospfv3LinkLsdbType + Unsigned32, + ospfv3LinkLsdbRouterId + Ospfv3RouterIdTC, + ospfv3LinkLsdbLsid + Ospfv3LsIdTC, + ospfv3LinkLsdbSequence + Ospfv3LsaSequenceTC, + + ospfv3LinkLsdbAge + Ospfv3LsaAgeTC, + ospfv3LinkLsdbChecksum + Integer32, + ospfv3LinkLsdbAdvertisement + OCTET STRING, + ospfv3LinkLsdbTypeKnown + TruthValue + } + + ospfv3LinkLsdbIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The identifier of the link from which the LSA + was received." + ::= { ospfv3LinkLsdbEntry 1 } + + ospfv3LinkLsdbIfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The identifier of the interface instance from + which the LSA was received." + ::= { ospfv3LinkLsdbEntry 2 } + + ospfv3LinkLsdbType OBJECT-TYPE + SYNTAX Unsigned32(0..'FFFFFFFF'h) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format. Link-scope LSAs unrecognized + by the router are also stored in this database." + ::= { ospfv3LinkLsdbEntry 3 } + + ospfv3LinkLsdbRouterId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1, Global parameters" + + ::= { ospfv3LinkLsdbEntry 4 } + + ospfv3LinkLsdbLsid OBJECT-TYPE + SYNTAX Ospfv3LsIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS type-specific field + containing a unique identifier; + it identifies the piece of the routing domain + that is being described by the advertisement. + In contrast to OSPFv2, the LSID has no + addressing semantics. However, in OSPFv3 + the Link State ID always contains the flooding + scope of the LSA." + ::= { ospfv3LinkLsdbEntry 5 } + + -- Note that the OSPF sequence number is a 32-bit signed + -- integer. It starts with the value '80000001'h + -- or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + -- Thus, a typical sequence number will be very negative. + + ospfv3LinkLsdbSequence OBJECT-TYPE + SYNTAX Ospfv3LsaSequenceTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It is used to detect old and duplicate + link state advertisements. The space of + sequence numbers is linearly ordered. The + larger the sequence number, the more recent the + advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6, LS sequence + number" + ::= { ospfv3LinkLsdbEntry 6 } + + ospfv3LinkLsdbAge OBJECT-TYPE + SYNTAX Ospfv3LsaAgeTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds. The high-order bit + of the LS age field is considered the DoNotAge + bit for support of on-demand circuits." + + REFERENCE + "OSPF Version 2, Section 12.1.1, LS age; + Extending OSPF to Support Demand Circuits, + Section 2.2, The LS age field." + ::= { ospfv3LinkLsdbEntry 7 } + + ospfv3LinkLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly + referred to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7, LS checksum" + ::= { ospfv3LinkLsdbEntry 8 } + + ospfv3LinkLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + ::= { ospfv3LinkLsdbEntry 9 } + + ospfv3LinkLsdbTypeKnown OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value true (1) indicates that the LSA type is + recognized by this router." + ::= { ospfv3LinkLsdbEntry 10 } + + -- OSPF Host Table + + ospfv3HostTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3HostEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + "The Host/Metric Table indicates what hosts are + directly attached to the router and their + corresponding metrics." + REFERENCE + "OSPF Version 2, Appendix C.7, Host route + parameters" + ::= { ospfv3Objects 6 } + + ospfv3HostEntry OBJECT-TYPE + SYNTAX Ospfv3HostEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A metric to be advertised when a given host is + reachable. + + The information in this table is persistent, and + when written, the entity SHOULD save the change + to non-volatile storage." + INDEX { ospfv3HostAddressType, + ospfv3HostAddress } + ::= { ospfv3HostTable 1 } + + Ospfv3HostEntry ::= SEQUENCE { + ospfv3HostAddressType + InetAddressType, + ospfv3HostAddress + InetAddress, + ospfv3HostMetric + Metric, + ospfv3HostRowStatus + RowStatus, + ospfv3HostAreaID + Ospfv3AreaIdTC + } + + ospfv3HostAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of ospfv3HostAddress. Only IPv6 + global address type is expected." + REFERENCE + "OSPF Version 2, Appendix C.7, Host route + parameters" + ::= { ospfv3HostEntry 1 } + + + ospfv3HostAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IPv6 address of the host. Must be an + IPv6 global address." + REFERENCE + "OSPF Version 2, Appendix C.7, Host route + parameters" + ::= { ospfv3HostEntry 2 } + + ospfv3HostMetric OBJECT-TYPE + SYNTAX Metric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric to be advertised." + REFERENCE + "OSPF Version 2, Appendix C.7, Host route + parameters" + ::= { ospfv3HostEntry 3 } + + ospfv3HostRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3HostEntry 4 } + + ospfv3HostAreaID OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Area the host entry is to be found within. + By default, the area for the subsuming OSPFv3 + interface, or Area 0 if there is no subsuming + interface." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + + ::= { ospfv3HostEntry 5 } + + -- OSPFv3 Interface Table + + ospfv3IfTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3IfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Interface Table describes the + interfaces from the viewpoint of OSPFv3." + REFERENCE + "OSPF for IPv6, Appendix C.3, Router Interface + Parameters" + ::= { ospfv3Objects 7 } + + ospfv3IfEntry OBJECT-TYPE + SYNTAX Ospfv3IfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Interface Entry describes one + interface from the viewpoint of OSPFv3. + + The information in this table is persistent, + and when written, the entity SHOULD save the + change to non-volatile storage." + INDEX { ospfv3IfIndex, + ospfv3IfInstId } + ::= { ospfv3IfTable 1 } + + Ospfv3IfEntry ::= SEQUENCE { + ospfv3IfIndex + InterfaceIndex, + ospfv3IfInstId + Ospfv3IfInstIdTC, + ospfv3IfAreaId + Ospfv3AreaIdTC, + ospfv3IfType + INTEGER, + ospfv3IfAdminStatus + Status, + ospfv3IfRtrPriority + DesignatedRouterPriority, + ospfv3IfTransitDelay + Ospfv3UpToRefreshIntervalTC, + ospfv3IfRetransInterval + Ospfv3UpToRefreshIntervalTC, + + ospfv3IfHelloInterval + HelloRange, + ospfv3IfRtrDeadInterval + Ospfv3DeadIntervalRangeTC, + ospfv3IfPollInterval + Unsigned32, + ospfv3IfState + INTEGER, + ospfv3IfDesignatedRouter + Ospfv3RouterIdTC, + ospfv3IfBackupDesignatedRouter + Ospfv3RouterIdTC, + ospfv3IfEvents + Counter32, + ospfv3IfRowStatus + RowStatus, + ospfv3IfDemand + TruthValue, + ospfv3IfMetricValue + Metric, + ospfv3IfLinkScopeLsaCount + Gauge32, + ospfv3IfLinkLsaCksumSum + Unsigned32, + ospfv3IfDemandNbrProbe + TruthValue, + ospfv3IfDemandNbrProbeRetransLimit + Unsigned32, + ospfv3IfDemandNbrProbeInterval + Unsigned32, + ospfv3IfTEDisabled + TruthValue, + ospfv3IfLinkLSASuppression + TruthValue + } + + ospfv3IfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface index of this OSPFv3 interface. + It corresponds to the interface index of the + IPv6 interface on which OSPFv3 is configured." + ::= { ospfv3IfEntry 1 } + + + + + ospfv3IfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Enables multiple interface instances of OSPFv3 + to be run over a single link. Each interface + instance would be assigned a separate ID. This ID + has local link significance only." + ::= { ospfv3IfEntry 2 } + + ospfv3IfAreaId OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying the area + to which the interface connects. Area ID + 0 is used for the OSPFv3 backbone." + DEFVAL { 0 } + ::= { ospfv3IfEntry 3 } + + ospfv3IfType OBJECT-TYPE + SYNTAX INTEGER { + broadcast(1), + nbma(2), + pointToPoint(3), + pointToMultipoint(5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The OSPFv3 interface type." + ::= { ospfv3IfEntry 4 } + + ospfv3IfAdminStatus OBJECT-TYPE + SYNTAX Status + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The OSPFv3 interface's administrative status. + The value formed on the interface; the interface + will be advertised as an internal route to some + area. The value 'disabled' denotes that the + interface is external to OSPFv3. + + + + + Note that a value of 'disabled' for the object + ospfv3AdminStatus will override a value of + 'enabled' for the interface." + DEFVAL { enabled } + ::= { ospfv3IfEntry 5 } + + ospfv3IfRtrPriority OBJECT-TYPE + SYNTAX DesignatedRouterPriority + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The priority of this interface. Used in + multi-access networks, this field is used in + the designated-router election algorithm. The + value 0 signifies that the router is not + eligible to become the Designated Router on this + particular network. In the event of a tie in + this value, routers will use their Router ID as + a tie breaker." + DEFVAL { 1 } + ::= { ospfv3IfEntry 6 } + + ospfv3IfTransitDelay OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The estimated number of seconds it takes to transmit + a Link State Update packet over this interface. LSAs + contained in the update packet must have their age + incremented by this amount before transmission. This + value should take into account the transmission and + propagation delays of the interface." + REFERENCE + "OSPF for IPv6, Appendix C.3, Router Interface + Parameters." + DEFVAL { 1 } + ::= { ospfv3IfEntry 7 } + + ospfv3IfRetransInterval OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds between link state + advertisement retransmissions for adjacencies + + belonging to this interface. This value is + also used when retransmitting database + description and Link State Request packets." + DEFVAL { 5 } + ::= { ospfv3IfEntry 8 } + + ospfv3IfHelloInterval OBJECT-TYPE + SYNTAX HelloRange + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The length of time, in seconds, between the + Hello packets that the router sends on the + interface. This value must be the same for all + routers attached to a common network." + DEFVAL { 10 } + ::= { ospfv3IfEntry 9 } + + ospfv3IfRtrDeadInterval OBJECT-TYPE + SYNTAX Ospfv3DeadIntervalRangeTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds that a router's Hello + packets have not been seen before its + neighbors declare the router down on the interface. + This should be some multiple of the Hello interval. + This value must be the same for all routers attached + to a common network." + DEFVAL { 40 } + ::= { ospfv3IfEntry 10 } + + ospfv3IfPollInterval OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The larger time interval, in seconds, between + the Hello packets sent to an inactive, + non-broadcast multi-access neighbor." + DEFVAL { 120 } + ::= { ospfv3IfEntry 11 } + + + + + ospfv3IfState OBJECT-TYPE + SYNTAX INTEGER { + down(1), + loopback(2), + waiting(3), + pointToPoint(4), + designatedRouter(5), + backupDesignatedRouter(6), + otherDesignatedRouter(7), + standby(8) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The OSPFv3 interface state. An interface may be + in standby state if there are multiple interfaces + on the link and another interface is active. The + interface may be in Down state if the underlying + IPv6 interface is down or if the admin status is + 'disabled' either globally or for the interface." + ::= { ospfv3IfEntry 12 } + + ospfv3IfDesignatedRouter OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Router ID of the Designated Router." + ::= { ospfv3IfEntry 13 } + + ospfv3IfBackupDesignatedRouter OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Router ID of the Backup Designated + Router." + ::= { ospfv3IfEntry 14 } + + ospfv3IfEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this OSPFv3 interface has + changed its state or an error has occurred. + + + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3IfEntry 15 } + + ospfv3IfRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3IfEntry 16 } + + ospfv3IfDemand OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether Demand OSPFv3 procedures + (Hello suppression to FULL neighbors and + setting the DoNotAge flag on propagated LSAs) + should be performed on this interface." + DEFVAL { false } + ::= { ospfv3IfEntry 17 } + + ospfv3IfMetricValue OBJECT-TYPE + SYNTAX Metric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric assigned to this interface. + The default value of the metric is + 'Reference Bandwidth / ifSpeed'. The value + of the reference bandwidth can be set + in the ospfv3ReferenceBandwidth object." + ::= { ospfv3IfEntry 18 } + + ospfv3IfLinkScopeLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + + DESCRIPTION + "The total number of Link-scope link state + advertisements in this link's link state + database." + ::= { ospfv3IfEntry 19 } + + ospfv3IfLinkLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the Link-scope link state + advertisements' LS checksums contained in this + link's link state database. The sum can be used + to determine if there has been a change in a + router's link state database or to compare the + link state database of two routers." + ::= { ospfv3IfEntry 20 } + + ospfv3IfDemandNbrProbe OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether or not neighbor probing is + enabled to determine whether or not the neighbor + is inactive. Neighbor probing is disabled by + default." + DEFVAL { false } + ::= { ospfv3IfEntry 21 } + + ospfv3IfDemandNbrProbeRetransLimit OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of consecutive LSA retransmissions before + the neighbor is deemed inactive and the neighbor + adjacency is brought down." + DEFVAL { 10 } + ::= { ospfv3IfEntry 22} + + ospfv3IfDemandNbrProbeInterval OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + + + DESCRIPTION + "Defines how often the neighbor will be probed." + DEFVAL { 120 } + ::= { ospfv3IfEntry 23 } + + ospfv3IfTEDisabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether or not traffic engineering + is disabled on the interface when traffic + engineering is enabled in the area where the + interface is attached. The object is set + to the value true (1) to disable traffic engineering + on the interface. Traffic engineering is enabled + by default on the interface when traffic engineering + is enabled in the area where the interface is + attached." + DEFVAL { false } + ::= { ospfv3IfEntry 24 } + + ospfv3IfLinkLSASuppression OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Specifies whether or not link LSA origination is + suppressed for broadcast or NBMA interface types. + The object is set to value true (1) to suppress + the origination." + REFERENCE + "OSPF for IPv6, Appendix C.3, Router Interface + Parameters" + DEFVAL { false } + ::= { ospfv3IfEntry 25 } + + -- OSPFv3 Virtual Interface Table + + ospfv3VirtIfTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3VirtIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about this router's virtual + interfaces that the OSPFv3 Process is configured + to carry on." + + + REFERENCE + "OSPF for IPv6, Appendix C.4, Virtual Link + Parameters" + ::= { ospfv3Objects 8 } + + ospfv3VirtIfEntry OBJECT-TYPE + SYNTAX Ospfv3VirtIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a single virtual interface. + + The information in this table is persistent, + and when written, the entity SHOULD save the + change to non-volatile storage." + INDEX { ospfv3VirtIfAreaId, + ospfv3VirtIfNeighbor } + ::= { ospfv3VirtIfTable 1 } + + Ospfv3VirtIfEntry ::= SEQUENCE { + ospfv3VirtIfAreaId + Ospfv3AreaIdTC, + ospfv3VirtIfNeighbor + Ospfv3RouterIdTC, + ospfv3VirtIfIndex + InterfaceIndex, + ospfv3VirtIfInstId + Ospfv3IfInstIdTC, + ospfv3VirtIfTransitDelay + Ospfv3UpToRefreshIntervalTC, + ospfv3VirtIfRetransInterval + Ospfv3UpToRefreshIntervalTC, + ospfv3VirtIfHelloInterval + HelloRange, + ospfv3VirtIfRtrDeadInterval + Ospfv3DeadIntervalRangeTC, + ospfv3VirtIfState + INTEGER, + ospfv3VirtIfEvents + Counter32, + ospfv3VirtIfRowStatus + RowStatus, + ospfv3VirtIfLinkScopeLsaCount + Gauge32, + ospfv3VirtIfLinkLsaCksumSum + Unsigned32 + } + + + ospfv3VirtIfAreaId OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The transit area that the virtual link + traverses. By definition, this is not + Area 0." + ::= { ospfv3VirtIfEntry 1 } + + ospfv3VirtIfNeighbor OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Router ID of the virtual neighbor." + ::= { ospfv3VirtIfEntry 2 } + + ospfv3VirtIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local interface index assigned by the + OSPFv3 Process to this OSPFv3 virtual interface. + It is advertised in Hellos sent over the virtual + link and in the router's router-LSAs." + ::= { ospfv3VirtIfEntry 3 } + + ospfv3VirtIfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local Interface Instance ID assigned by the + OSPFv3 Process to this OSPFv3 virtual interface." + ::= { ospfv3VirtIfEntry 4 } + + ospfv3VirtIfTransitDelay OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The estimated number of seconds it takes to + transmit a Link State Update packet over this + interface." + DEFVAL { 1 } + + ::= { ospfv3VirtIfEntry 5 } + + ospfv3VirtIfRetransInterval OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds between link state + advertisement retransmissions for adjacencies + belonging to this interface. This value is + also used when retransmitting database + description and Link State Request packets. This + value should be well over the expected + round-trip time." + DEFVAL { 5 } + ::= { ospfv3VirtIfEntry 6 } + + ospfv3VirtIfHelloInterval OBJECT-TYPE + SYNTAX HelloRange + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The length of time, in seconds, between the + Hello packets that the router sends on the + interface. This value must be the same for the + virtual neighbor." + DEFVAL { 10 } + ::= { ospfv3VirtIfEntry 7 } + + ospfv3VirtIfRtrDeadInterval OBJECT-TYPE + SYNTAX Ospfv3DeadIntervalRangeTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds that a router's Hello + packets have not been seen before its + neighbors declare the router down. This should + be some multiple of the Hello interval. This + value must be the same for the virtual + neighbor." + DEFVAL { 60 } + ::= { ospfv3VirtIfEntry 8 } + + + + + ospfv3VirtIfState OBJECT-TYPE + SYNTAX INTEGER { + down(1), + pointToPoint(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "OSPF virtual interface states. The same encoding + as the ospfV3IfTable is used." + ::= { ospfv3VirtIfEntry 9 } + + ospfv3VirtIfEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of state changes or error events on + this virtual link. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3VirtIfEntry 10 } + + ospfv3VirtIfRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3VirtIfEntry 11 } + + ospfv3VirtIfLinkScopeLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of Link-scope link state + advertisements in this virtual link's link state + database." + + ::= { ospfv3VirtIfEntry 12 } + + ospfv3VirtIfLinkLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the Link-scope link state + advertisements' LS checksums contained in this + virtual link's link state database. The sum can be used + to determine if there has been a change in a + router's link state database or to compare the + link state database of two routers." + ::= { ospfv3VirtIfEntry 13 } + + -- OSPFv3 Neighbor Table + + ospfv3NbrTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3NbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table describing all neighbors in the + locality of the OSPFv3 router." + REFERENCE + "OSPF Version 2, Section 10, The Neighbor Data + Structure" + ::= { ospfv3Objects 9 } + + ospfv3NbrEntry OBJECT-TYPE + SYNTAX Ospfv3NbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The information regarding a single neighbor." + REFERENCE + "OSPF Version 2, Section 10, The Neighbor Data + Structure" + INDEX { ospfv3NbrIfIndex, + ospfv3NbrIfInstId, + ospfv3NbrRtrId } + ::= { ospfv3NbrTable 1 } + + Ospfv3NbrEntry ::= SEQUENCE { + ospfv3NbrIfIndex + InterfaceIndex, + ospfv3NbrIfInstId + Ospfv3IfInstIdTC, + + ospfv3NbrRtrId + Ospfv3RouterIdTC, + ospfv3NbrAddressType + InetAddressType, + ospfv3NbrAddress + InetAddress, + ospfv3NbrOptions + Integer32, + ospfv3NbrPriority + DesignatedRouterPriority, + ospfv3NbrState + INTEGER, + ospfv3NbrEvents + Counter32, + ospfv3NbrLsRetransQLen + Gauge32, + ospfv3NbrHelloSuppressed + TruthValue, + ospfv3NbrIfId + InterfaceIndex, + ospfv3NbrRestartHelperStatus + INTEGER, + ospfv3NbrRestartHelperAge + Ospfv3UpToRefreshIntervalTC, + ospfv3NbrRestartHelperExitReason + INTEGER + } + + ospfv3NbrIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Local Link ID of the link over which the + neighbor can be reached." + ::= { ospfv3NbrEntry 1 } + + ospfv3NbrIfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Interface instance over which the neighbor + can be reached. This ID has local link + significance only." + ::= { ospfv3NbrEntry 2 } + + + + ospfv3NbrRtrId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A 32-bit unsigned integer uniquely identifying the + neighboring router in the Autonomous System." + ::= { ospfv3NbrEntry 3 } + + ospfv3NbrAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of ospfv3NbrAddress. Only IPv6 + addresses without zone index are expected." + ::= { ospfv3NbrEntry 4 } + + ospfv3NbrAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IPv6 address of the neighbor associated with + the local link." + ::= { ospfv3NbrEntry 5 } + + ospfv3NbrOptions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A bit mask corresponding to the neighbor's + options field." + REFERENCE + "OSPF for IPv6, Appendix A.2, The Options Field" + ::= { ospfv3NbrEntry 6 } + + ospfv3NbrPriority OBJECT-TYPE + SYNTAX DesignatedRouterPriority + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The priority of this neighbor in the designated- + router election algorithm. The value 0 signifies + that the neighbor is not eligible to become the + Designated Router on this particular network." + ::= { ospfv3NbrEntry 7 } + + ospfv3NbrState OBJECT-TYPE + SYNTAX INTEGER { + down(1), + attempt(2), + init(3), + twoWay(4), + exchangeStart(5), + exchange(6), + loading(7), + full(8) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the relationship with this + neighbor." + REFERENCE + "OSPF Version 2, Section 10.1, Neighbor states" + ::= { ospfv3NbrEntry 8 } + + ospfv3NbrEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this neighbor relationship + has changed state or an error has occurred. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3NbrEntry 9 } + + ospfv3NbrLsRetransQLen OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current length of the retransmission + queue." + ::= { ospfv3NbrEntry 10 } + + ospfv3NbrHelloSuppressed OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + + + DESCRIPTION + "Indicates whether Hellos are being suppressed + to the neighbor." + ::= { ospfv3NbrEntry 11 } + + ospfv3NbrIfId OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Interface ID that the neighbor advertises + in its Hello packets on this link, that is, the + neighbor's local interface index." + ::= { ospfv3NbrEntry 12 } + + ospfv3NbrRestartHelperStatus OBJECT-TYPE + SYNTAX INTEGER { notHelping(1), + helping(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether the router is acting + as a graceful restart helper for the neighbor." + ::= { ospfv3NbrEntry 13 } + + ospfv3NbrRestartHelperAge OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in current OSPF graceful restart + interval, if the router is acting as a restart + helper for the neighbor." + ::= { ospfv3NbrEntry 14 } + + ospfv3NbrRestartHelperExitReason OBJECT-TYPE + SYNTAX INTEGER { none(1), + inProgress(2), + completed(3), + timedOut(4), + topologyChanged(5) + } + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "Describes the outcome of the last attempt at acting + as a graceful restart helper for the neighbor. + + none: no restart has yet been attempted. + inProgress: a restart attempt is currently underway. + completed: the last restart completed successfully. + timedOut: the last restart timed out. + topologyChanged: the last restart was aborted due to + a topology change." + ::= { ospfv3NbrEntry 15 } + + -- OSPFv3 Configured Neighbor Table + + ospfv3CfgNbrTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3CfgNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table describing all configured neighbors. + + The Configured Neighbors table just gives + OSPFv3 information for sending OSPFv3 packets + to potential neighbors and is typically used + on NBMA and Point-to-Multipoint networks. + Once a Hello is received from a neighbor in + the Configured Neighbor table, an entry for + that neighbor is created in the Neighbor table + and adjacency state is maintained there. + Neighbors on multi-access or Point-to-Point + networks can use multicast addressing, so only + Neighbor table entries are created for them." + REFERENCE + "OSPF Version 2, Section 10, The Neighbor Data + Structure" + ::= { ospfv3Objects 10 } + + ospfv3CfgNbrEntry OBJECT-TYPE + SYNTAX Ospfv3CfgNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The information regarding a single configured + neighbor. + + The information in this table is persistent, + and when written, the entity SHOULD save the + change to non-volatile storage." + + REFERENCE + "OSPF Version 2, Section 10, The Neighbor Data + Structure" + INDEX { ospfv3CfgNbrIfIndex, + ospfv3CfgNbrIfInstId, + ospfv3CfgNbrAddressType, + ospfv3CfgNbrAddress } + ::= { ospfv3CfgNbrTable 1 } + + Ospfv3CfgNbrEntry ::= SEQUENCE { + ospfv3CfgNbrIfIndex + InterfaceIndex, + ospfv3CfgNbrIfInstId + Ospfv3IfInstIdTC, + ospfv3CfgNbrAddressType + InetAddressType, + ospfv3CfgNbrAddress + InetAddress, + ospfv3CfgNbrPriority + DesignatedRouterPriority, + ospfv3CfgNbrRowStatus + RowStatus + } + + ospfv3CfgNbrIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Local Link ID of the link over which the + neighbor can be reached." + ::= { ospfv3CfgNbrEntry 1 } + + ospfv3CfgNbrIfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Interface instance over which the neighbor + can be reached. This ID has local link + significance only." + ::= { ospfv3CfgNbrEntry 2 } + + ospfv3CfgNbrAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + + + DESCRIPTION + "The address type of ospfv3NbrAddress. Only IPv6 + addresses without zone index are expected." + ::= { ospfv3CfgNbrEntry 3 } + + ospfv3CfgNbrAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IPv6 address of the neighbor associated with + the local link." + ::= { ospfv3CfgNbrEntry 4 } + + ospfv3CfgNbrPriority OBJECT-TYPE + SYNTAX DesignatedRouterPriority + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The priority of this neighbor in the designated- + router election algorithm. The value 0 signifies + that the neighbor is not eligible to become the + Designated Router on this particular network." + DEFVAL { 1 } + ::= { ospfv3CfgNbrEntry 5 } + + ospfv3CfgNbrRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3CfgNbrEntry 6 } + + -- OSPFv3 Virtual Neighbor Table + + ospfv3VirtNbrTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3VirtNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table describing all virtual neighbors." + + REFERENCE + "OSPF Version 2, Section 15, Virtual Links" + ::= { ospfv3Objects 11 } + + ospfv3VirtNbrEntry OBJECT-TYPE + SYNTAX Ospfv3VirtNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Virtual neighbor information." + INDEX { ospfv3VirtNbrArea, + ospfv3VirtNbrRtrId } + ::= { ospfv3VirtNbrTable 1 } + + Ospfv3VirtNbrEntry ::= SEQUENCE { + ospfv3VirtNbrArea + Ospfv3AreaIdTC, + ospfv3VirtNbrRtrId + Ospfv3RouterIdTC, + ospfv3VirtNbrIfIndex + InterfaceIndex, + ospfv3VirtNbrIfInstId + Ospfv3IfInstIdTC, + ospfv3VirtNbrAddressType + InetAddressType, + ospfv3VirtNbrAddress + InetAddress, + ospfv3VirtNbrOptions + Integer32, + ospfv3VirtNbrState + INTEGER, + ospfv3VirtNbrEvents + Counter32, + ospfv3VirtNbrLsRetransQLen + Gauge32, + ospfv3VirtNbrHelloSuppressed + TruthValue, + ospfv3VirtNbrIfId + InterfaceIndex, + ospfv3VirtNbrRestartHelperStatus + INTEGER, + ospfv3VirtNbrRestartHelperAge + Ospfv3UpToRefreshIntervalTC, + ospfv3VirtNbrRestartHelperExitReason + INTEGER + } + + + + ospfv3VirtNbrArea OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The transit area Identifier." + ::= { ospfv3VirtNbrEntry 1 } + + ospfv3VirtNbrRtrId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying the + neighboring router in the Autonomous System." + ::= { ospfv3VirtNbrEntry 2 } + + ospfv3VirtNbrIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local Interface ID for the virtual link over + which the neighbor can be reached." + ::= { ospfv3VirtNbrEntry 3 } + + ospfv3VirtNbrIfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The interface instance for the virtual link over + which the neighbor can be reached." + ::= { ospfv3VirtNbrEntry 4 } + + ospfv3VirtNbrAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of ospfv3VirtNbrAddress. Only IPv6 + addresses without zone index are expected." + ::= { ospfv3VirtNbrEntry 5 } + + ospfv3VirtNbrAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + + DESCRIPTION + "The IPv6 address advertised by this virtual neighbor. + It must be a global scope address." + ::= { ospfv3VirtNbrEntry 6 } + + ospfv3VirtNbrOptions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A bit mask corresponding to the neighbor's options + field." + REFERENCE + "OSPF for IPv6, Appendix A.2, The Options Field" + ::= { ospfv3VirtNbrEntry 7 } + + ospfv3VirtNbrState OBJECT-TYPE + SYNTAX INTEGER { + down(1), + attempt(2), + init(3), + twoWay(4), + exchangeStart(5), + exchange(6), + loading(7), + full(8) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the virtual neighbor relationship." + ::= { ospfv3VirtNbrEntry 8 } + + ospfv3VirtNbrEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this virtual link has + changed its state or an error has occurred. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3VirtNbrEntry 9 } + + + + ospfv3VirtNbrLsRetransQLen OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current length of the retransmission + queue." + ::= { ospfv3VirtNbrEntry 10 } + + ospfv3VirtNbrHelloSuppressed OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether Hellos are being suppressed + to the neighbor." + ::= { ospfv3VirtNbrEntry 11 } + + ospfv3VirtNbrIfId OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Interface ID that the neighbor advertises + in its Hello packets on this virtual link, that is, + the neighbor's local Interface ID." + ::= { ospfv3VirtNbrEntry 12 } + + ospfv3VirtNbrRestartHelperStatus OBJECT-TYPE + SYNTAX INTEGER { notHelping(1), + helping(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether the router is acting + as a graceful restart helper for the neighbor." + ::= { ospfv3VirtNbrEntry 13 } + + ospfv3VirtNbrRestartHelperAge OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in the current OSPF graceful restart + interval, if the router is acting as a restart + helper for the neighbor." + + ::= { ospfv3VirtNbrEntry 14 } + + ospfv3VirtNbrRestartHelperExitReason OBJECT-TYPE + SYNTAX INTEGER { none(1), + inProgress(2), + completed(3), + timedOut(4), + topologyChanged(5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Describes the outcome of the last attempt at acting + as a graceful restart helper for the neighbor. + + none: no restart has yet been attempted. + inProgress: a restart attempt is currently underway. + completed: the last restart completed successfully. + timedOut: the last restart timed out. + topologyChanged: the last restart was aborted due to + a topology change." + ::= { ospfv3VirtNbrEntry 15 } + + -- + -- The OSPFv3 Area Aggregate Table + -- + + ospfv3AreaAggregateTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3AreaAggregateEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Area Aggregate Table acts as an adjunct + to the Area Table. It describes those address + aggregates that are configured to be propagated + from an area. Its purpose is to reduce the amount + of information that is known beyond an area's + borders. + + A range of IPv6 prefixes specified by a + prefix / prefix length pair. Note that if + ranges are configured such that one range + subsumes another range, the most specific + match is the preferred one." + ::= { ospfv3Objects 12 } + + + + + ospfv3AreaAggregateEntry OBJECT-TYPE + SYNTAX Ospfv3AreaAggregateEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single area aggregate entry. + + Information in this table is persistent, and + when this object is written, the entity SHOULD + save the change to non-volatile storage." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + INDEX { ospfv3AreaAggregateAreaID, + ospfv3AreaAggregateAreaLsdbType, + ospfv3AreaAggregatePrefixType, + ospfv3AreaAggregatePrefix, + ospfv3AreaAggregatePrefixLength } + ::= { ospfv3AreaAggregateTable 1 } + + Ospfv3AreaAggregateEntry ::= SEQUENCE { + ospfv3AreaAggregateAreaID + Ospfv3AreaIdTC, + ospfv3AreaAggregateAreaLsdbType + INTEGER, + ospfv3AreaAggregatePrefixType + InetAddressType, + ospfv3AreaAggregatePrefix + InetAddress, + ospfv3AreaAggregatePrefixLength + InetAddressPrefixLength, + ospfv3AreaAggregateRowStatus + RowStatus, + ospfv3AreaAggregateEffect + INTEGER, + ospfv3AreaAggregateRouteTag + Unsigned32 + } + + ospfv3AreaAggregateAreaID OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The area the Address Aggregate is to be found + within." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + ::= { ospfv3AreaAggregateEntry 1 } + + ospfv3AreaAggregateAreaLsdbType OBJECT-TYPE + SYNTAX INTEGER { + interAreaPrefixLsa(8195), -- 0x2003 + nssaExternalLsa(8199) -- 0x2007 + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the Address Aggregate. This field + specifies the Area LSDB type that this Address + Aggregate applies to." + REFERENCE + "OSPF Version 2, Appendix A.4.1, The LSA header" + ::= { ospfv3AreaAggregateEntry 2 } + + ospfv3AreaAggregatePrefixType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The prefix type of ospfv3AreaAggregatePrefix. Only + IPv6 addresses are expected." + ::= { ospfv3AreaAggregateEntry 3 } + + ospfv3AreaAggregatePrefix OBJECT-TYPE + SYNTAX InetAddress (SIZE (0..16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IPv6 prefix." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + ::= { ospfv3AreaAggregateEntry 4 } + + ospfv3AreaAggregatePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength (3..128) + UNITS "bits" + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length of the prefix (in bits). A prefix can + not be shorter than 3 bits." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + ::= { ospfv3AreaAggregateEntry 5 } + + ospfv3AreaAggregateRowStatus OBJECT-TYPE + SYNTAX RowStatus + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3AreaAggregateEntry 6 } + + ospfv3AreaAggregateEffect OBJECT-TYPE + SYNTAX INTEGER { + advertiseMatching(1), + doNotAdvertiseMatching(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Prefixes subsumed by ranges will either trigger the + advertisement of the indicated aggregate + (advertiseMatching) or result in the prefix not + being advertised at all outside the area." + DEFVAL { advertiseMatching } + ::= { ospfv3AreaAggregateEntry 7 } + + ospfv3AreaAggregateRouteTag OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This tag is advertised only in the summarized + As-External LSA when summarizing from NSSA-LSAs to + AS-External-LSAs." + DEFVAL { 0 } + ::= { ospfv3AreaAggregateEntry 8 } + + -- OSPFv3 Link-Scope Link State Database, for virtual interfaces + + ospfv3VirtLinkLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3VirtLinkLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Process's Link-scope LSDB for virtual + interfaces. The LSDB contains the Link-scope link + state advertisements from virtual interfaces." + + ::= { ospfv3Objects 13 } + + ospfv3VirtLinkLsdbEntry OBJECT-TYPE + SYNTAX Ospfv3VirtLinkLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single Link-scope link state advertisement + for a virtual interface." + INDEX { ospfv3VirtLinkLsdbIfAreaId, + ospfv3VirtLinkLsdbIfNeighbor, + ospfv3VirtLinkLsdbType, + ospfv3VirtLinkLsdbRouterId, + ospfv3VirtLinkLsdbLsid } + ::= { ospfv3VirtLinkLsdbTable 1 } + + Ospfv3VirtLinkLsdbEntry ::= SEQUENCE { + ospfv3VirtLinkLsdbIfAreaId + Ospfv3AreaIdTC, + ospfv3VirtLinkLsdbIfNeighbor + Ospfv3RouterIdTC, + ospfv3VirtLinkLsdbType + Unsigned32, + ospfv3VirtLinkLsdbRouterId + Ospfv3RouterIdTC, + ospfv3VirtLinkLsdbLsid + Ospfv3LsIdTC, + ospfv3VirtLinkLsdbSequence + Ospfv3LsaSequenceTC, + ospfv3VirtLinkLsdbAge + Ospfv3LsaAgeTC, + ospfv3VirtLinkLsdbChecksum + Integer32, + ospfv3VirtLinkLsdbAdvertisement + OCTET STRING, + ospfv3VirtLinkLsdbTypeKnown + TruthValue + } + + ospfv3VirtLinkLsdbIfAreaId OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The transit area that the virtual link + traverses. By definition, this is not + Area 0." + ::= { ospfv3VirtLinkLsdbEntry 1 } + + ospfv3VirtLinkLsdbIfNeighbor OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Router ID of the virtual neighbor." + ::= { ospfv3VirtLinkLsdbEntry 2 } + + ospfv3VirtLinkLsdbType OBJECT-TYPE + SYNTAX Unsigned32(0..'FFFFFFFF'h) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format. Link-scope LSAs unrecognized + by the router are also stored in this database." + ::= { ospfv3VirtLinkLsdbEntry 3 } + + ospfv3VirtLinkLsdbRouterId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1, Global parameters" + ::= { ospfv3VirtLinkLsdbEntry 4 } + + ospfv3VirtLinkLsdbLsid OBJECT-TYPE + SYNTAX Ospfv3LsIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS type-specific field + containing a unique identifier; + it identifies the piece of the routing domain + that is being described by the advertisement. + In contrast to OSPFv2, the LSID has no + addressing semantics." + ::= { ospfv3VirtLinkLsdbEntry 5 } + + -- Note that the OSPF sequence number is a 32-bit signed + -- integer. It starts with the value '80000001'h + -- or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + -- Thus, a typical sequence number will be very negative. + + + ospfv3VirtLinkLsdbSequence OBJECT-TYPE + SYNTAX Ospfv3LsaSequenceTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It is used to detect old and duplicate + link state advertisements. The space of + sequence numbers is linearly ordered. The + larger the sequence number, the more recent the + advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6, LS sequence + number" + ::= { ospfv3VirtLinkLsdbEntry 6 } + + ospfv3VirtLinkLsdbAge OBJECT-TYPE + SYNTAX Ospfv3LsaAgeTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds. The high-order bit + of the LS age field is considered the DoNotAge + bit for support of on-demand circuits." + REFERENCE + "OSPF Version 2, Section 12.1.1, LS age; + Extending OSPF to Support Demand Circuits, + Section 2.2, The LS age field." + ::= { ospfv3VirtLinkLsdbEntry 7 } + + ospfv3VirtLinkLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly + referred to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7, LS checksum" + ::= { ospfv3VirtLinkLsdbEntry 8 } + + ospfv3VirtLinkLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + ::= { ospfv3VirtLinkLsdbEntry 9 } + + ospfv3VirtLinkLsdbTypeKnown OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value true (1) indicates that the LSA type is + recognized by this router." + ::= { ospfv3VirtLinkLsdbEntry 10 } + + -- The Ospfv3 Notification Table + + -- The Ospfv3 Notification Table records fields that are + -- required for notifications. + + ospfv3NotificationEntry OBJECT IDENTIFIER + ::= { ospfv3Objects 14 } + + ospfv3ConfigErrorType OBJECT-TYPE + SYNTAX INTEGER { + badVersion(1), + areaMismatch(2), + unknownNbmaNbr(3), -- Router is DR eligible + unknownVirtualNbr(4), + helloIntervalMismatch(5), + deadIntervalMismatch(6), + optionMismatch(7), + mtuMismatch(8), + duplicateRouterId(9), + noError(10) } + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Potential types of configuration conflicts. + Used by the ospfv3ConfigError and + ospfv3ConfigVirtError notifications." + ::= { ospfv3NotificationEntry 1 } + + + + + ospfv3PacketType OBJECT-TYPE + SYNTAX INTEGER { + hello(1), + dbDescript(2), + lsReq(3), + lsUpdate(4), + lsAck(5), + nullPacket(6) } + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "OSPFv3 packet types." + ::= { ospfv3NotificationEntry 2 } + + ospfv3PacketSrc OBJECT-TYPE + SYNTAX InetAddressIPv6 + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "The IPv6 address of an inbound packet that cannot + be identified by a neighbor instance. + + Only IPv6 addresses without zone index are expected." + ::= { ospfv3NotificationEntry 3 } + + -- Notification Definitions + + -- The notifications need to be throttled so as to not overwhelm the + -- management agent in case of rapid changes to the OSPFv3 module. + + ospfv3VirtIfStateChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3VirtIfState -- The new state + } + STATUS current + DESCRIPTION + "An ospfv3VirtIfStateChange notification signifies that + there has been a change in the state of an OSPFv3 virtual + interface. + + This notification should be generated when the interface + state regresses (e.g., goes from Point-to-Point to Down) + or progresses to a terminal state (i.e., Point-to-Point)." + ::= { ospfv3Notifications 1 } + + ospfv3NbrStateChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3NbrState -- The new state + + } + STATUS current + DESCRIPTION + "An ospfv3NbrStateChange notification signifies that + there has been a change in the state of a + non-virtual OSPFv3 neighbor. This notification should be + generated when the neighbor state regresses + (e.g., goes from Attempt or Full to 1-Way or + Down) or progresses to a terminal state (e.g., + 2-Way or Full). When a neighbor transitions + from or to Full on non-broadcast multi-access + and broadcast networks, the notification should be + generated by the Designated Router. A Designated + Router transitioning to Down will be noted by + ospfIfStateChange." + ::= { ospfv3Notifications 2 } + + ospfv3VirtNbrStateChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3VirtNbrState -- The new state + } + STATUS current + DESCRIPTION + "An ospfv3VirtNbrStateChange notification signifies + that there has been a change in the state of an OSPFv3 + virtual neighbor. This notification should be generated + when the neighbor state regresses (e.g., goes + from Attempt or Full to 1-Way or Down) or + progresses to a terminal state (e.g., Full)." + ::= { ospfv3Notifications 3 } + + ospfv3IfConfigError NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3IfState, -- State of the interface + ospfv3PacketSrc, -- IPv6 address of source + ospfv3ConfigErrorType, -- Type of error + ospfv3PacketType -- Type of packet + } + STATUS current + DESCRIPTION + "An ospfv3IfConfigError notification signifies that a + packet has been received on a non-virtual + interface from a router whose configuration + parameters conflict with this router's + configuration parameters. Note that the event + optionMismatch should cause a notification only if it + prevents an adjacency from forming." + ::= { ospfv3Notifications 4 } + + ospfv3VirtIfConfigError NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3VirtIfState, -- State of the interface + ospfv3ConfigErrorType, -- Type of error + ospfv3PacketType + } + STATUS current + DESCRIPTION + "An ospfv3VirtIfConfigError notification signifies that a + packet has been received on a virtual interface + from a router whose configuration parameters + conflict with this router's configuration + parameters. Note that the event optionMismatch + should cause a notification only if it prevents an + adjacency from forming." + ::= { ospfv3Notifications 5 } + + ospfv3IfRxBadPacket NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3IfState, -- State of the interface + ospfv3PacketSrc, -- The source IPv6 address + ospfv3PacketType -- Type of packet + } + STATUS current + DESCRIPTION + "An ospfv3IfRxBadPacket notification signifies that an + OSPFv3 packet that cannot be parsed has been received on a + non-virtual interface." + ::= { ospfv3Notifications 6 } + + ospfv3VirtIfRxBadPacket NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3VirtIfState, -- State of the interface + ospfv3PacketType -- Type of packet + } + STATUS current + DESCRIPTION + "An ospfv3VirtIfRxBadPacket notification signifies + that an OSPFv3 packet that cannot be parsed has been + received on a virtual interface." + ::= { ospfv3Notifications 7 } + + ospfv3LsdbOverflow NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3ExtAreaLsdbLimit -- Limit on External LSAs + } + STATUS current + + + DESCRIPTION + "An ospfv3LsdbOverflow notification signifies that the + number of LSAs in the router's link state + database has exceeded ospfv3ExtAreaLsdbLimit." + ::= { ospfv3Notifications 8 } + + ospfv3LsdbApproachingOverflow NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3ExtAreaLsdbLimit + } + STATUS current + DESCRIPTION + "An ospfv3LsdbApproachingOverflow notification signifies + that the number of LSAs in the router's + link state database has exceeded ninety percent of + ospfv3ExtAreaLsdbLimit." + ::= { ospfv3Notifications 9 } + + ospfv3IfStateChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3IfState -- The new state + } + STATUS current + DESCRIPTION + "An ospfv3IfStateChange notification signifies that there + has been a change in the state of a non-virtual + OSPFv3 interface. This notification should be generated + when the interface state regresses (e.g., goes + from DR to Down) or progresses to a terminal + state (i.e., Point-to-Point, DR Other, DR, or + Backup)." + ::= { ospfv3Notifications 10 } + + ospfv3NssaTranslatorStatusChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3AreaNssaTranslatorState -- new state + } + STATUS current + DESCRIPTION + "An ospfv3NssaTranslatorStatusChange notification + indicates that there has been a change in the router's + ability to translate OSPFv3 NSSA LSAs into OSPFv3 External + LSAs. This notification should be generated when the + Translator Status transitions from or to any defined + status on a per-area basis." + ::= { ospfv3Notifications 11 } + + + + ospfv3RestartStatusChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3RestartStatus, -- new status + ospfv3RestartInterval, + ospfv3RestartExitReason + } + STATUS current + DESCRIPTION + "An ospfv3RestartStatusChange notification signifies that + there has been a change in the graceful restart + state for the router. This notification should be + generated when the router restart status + changes." + ::= { ospfv3Notifications 12 } + + ospfv3NbrRestartHelperStatusChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3NbrRestartHelperStatus, -- new status + ospfv3NbrRestartHelperAge, + ospfv3NbrRestartHelperExitReason + } + STATUS current + DESCRIPTION + "An ospfv3NbrRestartHelperStatusChange notification + signifies that there has been a change in the + graceful restart helper state for the neighbor. + This notification should be generated when the + neighbor restart helper status transitions for a neighbor." + ::= { ospfv3Notifications 13 } + + ospfv3VirtNbrRestartHelperStatusChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3VirtNbrRestartHelperStatus, -- new status + ospfv3VirtNbrRestartHelperAge, + ospfv3VirtNbrRestartHelperExitReason + } + STATUS current + DESCRIPTION + "An ospfv3VirtNbrRestartHelperStatusChange + notification signifies that there has been a + change in the graceful restart helper state for + the virtual neighbor. This notification should be + generated when the virtual neighbor restart helper status + transitions for a virtual neighbor." + ::= { ospfv3Notifications 14 } + + -- Conformance Information + + + ospfv3Groups OBJECT IDENTIFIER ::= { ospfv3Conformance 1 } + ospfv3Compliances OBJECT IDENTIFIER ::= { ospfv3Conformance 2 } + + -- Compliance Statements + + ospfv3FullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION "The compliance statement" + MODULE -- this module + MANDATORY-GROUPS { + ospfv3BasicGroup, + ospfv3AreaGroup, + ospfv3IfGroup, + ospfv3VirtIfGroup, + ospfv3NbrGroup, + ospfv3CfgNbrGroup, + ospfv3VirtNbrGroup, + ospfv3AreaAggregateGroup + } + + GROUP ospfv3AsLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their AS-scope link state database." + + GROUP ospfv3AreaLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Area-scope link state database." + + GROUP ospfv3LinkLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Link-scope link state database + for non-virtual interfaces." + + GROUP ospfv3VirtLinkLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Link-scope link state database + for virtual interfaces." + + GROUP ospfv3HostGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support attached hosts." + + + + GROUP ospfv3NotificationObjectGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support OSPFv3 notifications." + + GROUP ospfv3NotificationGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support OSPFv3 notifications." + + OBJECT ospfv3NbrAddressType + SYNTAX InetAddressType { ipv6(2) } + DESCRIPTION + "An implementation is only required to support IPv6 + address without zone index." + + OBJECT ospfv3NbrAddress + SYNTAX InetAddress (SIZE (16)) + DESCRIPTION + "An implementation is only required to support IPv6 + address without zone index." + + OBJECT ospfv3VirtNbrAddressType + SYNTAX InetAddressType { ipv6(2) } + DESCRIPTION + "An implementation is only required to support IPv6 + address without zone index." + + OBJECT ospfv3VirtNbrAddress + SYNTAX InetAddress (SIZE (16)) + DESCRIPTION + "An implementation is only required to support IPv6 + address without zone index." + + ::= { ospfv3Compliances 1 } + + ospfv3ReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "When this MIB module is implemented without + support for read-create (i.e., in read-only + mode), the implementation can claim read-only + compliance. Such a device can then be monitored, + but cannot be configured with this MIB." + + MODULE -- this module + MANDATORY-GROUPS { + ospfv3BasicGroup, + + ospfv3AreaGroup, + ospfv3IfGroup, + ospfv3VirtIfGroup, + ospfv3NbrGroup, + ospfv3CfgNbrGroup, + ospfv3VirtNbrGroup, + ospfv3AreaAggregateGroup + } + + GROUP ospfv3AsLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their AS-scope link state database." + + GROUP ospfv3AreaLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Area-scope link state database." + + GROUP ospfv3LinkLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Link-scope link state database + for non-virtual interfaces." + + GROUP ospfv3VirtLinkLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Link-scope link state database + for virtual interfaces." + + GROUP ospfv3HostGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support attached hosts." + + GROUP ospfv3NotificationObjectGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support OSPFv3 notifications." + + GROUP ospfv3NotificationGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support OSPFv3 notifications." + + OBJECT ospfv3RouterId + MIN-ACCESS read-only + + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AdminStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3ExtAreaLsdbLimit + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3ExitOverflowInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3DemandExtensions + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3ReferenceBandwidth + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3RestartSupport + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3RestartInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3RestartStrictLsaChecking + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3NotificationEnable + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + OBJECT ospfv3StubRouterAdvertisement + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaImportAsExtern + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaSummary + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaStubMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaNssaTranslatorRole + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaNssaTranslatorStabInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaStubMetricType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaTEEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + + OBJECT ospfv3HostMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3HostRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3HostAreaID + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfAreaId + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfAdminStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfRtrPriority + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfTransitDelay + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfRetransInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + + OBJECT ospfv3IfHelloInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfRtrDeadInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfPollInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfDemand + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfMetricValue + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfDemandNbrProbe + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfDemandNbrProbeRetransLimit + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfDemandNbrProbeInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + + OBJECT ospfv3IfTEDisabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfLinkLSASuppression + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3VirtIfTransitDelay + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3VirtIfRetransInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3VirtIfHelloInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3VirtIfRtrDeadInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3VirtIfRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3CfgNbrPriority + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3CfgNbrRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + + OBJECT ospfv3AreaAggregateRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaAggregateEffect + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaAggregateRouteTag + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + ::= { ospfv3Compliances 2 } + + -- units of conformance + + ospfv3BasicGroup OBJECT-GROUP + OBJECTS { + ospfv3RouterId, + ospfv3AdminStatus, + ospfv3VersionNumber, + ospfv3AreaBdrRtrStatus, + ospfv3ASBdrRtrStatus, + ospfv3AsScopeLsaCount, + ospfv3AsScopeLsaCksumSum, + ospfv3OriginateNewLsas, + ospfv3RxNewLsas, + ospfv3ExtLsaCount, + ospfv3ExtAreaLsdbLimit, + ospfv3ExitOverflowInterval, + ospfv3DemandExtensions, + ospfv3ReferenceBandwidth, + ospfv3RestartSupport, + ospfv3RestartInterval, + ospfv3RestartStrictLsaChecking, + ospfv3RestartStatus, + ospfv3RestartAge, + ospfv3RestartExitReason, + ospfv3NotificationEnable, + ospfv3StubRouterSupport, + ospfv3StubRouterAdvertisement, + ospfv3DiscontinuityTime, + ospfv3RestartTime + } + STATUS current + + + DESCRIPTION + "These objects are used for managing/monitoring + OSPFv3 global parameters." + ::= { ospfv3Groups 1 } + + ospfv3AreaGroup OBJECT-GROUP + OBJECTS { + ospfv3AreaImportAsExtern, + ospfv3AreaSpfRuns, + ospfv3AreaBdrRtrCount, + ospfv3AreaAsBdrRtrCount, + ospfv3AreaScopeLsaCount, + ospfv3AreaScopeLsaCksumSum, + ospfv3AreaSummary, + ospfv3AreaRowStatus, + ospfv3AreaStubMetric, + ospfv3AreaNssaTranslatorRole, + ospfv3AreaNssaTranslatorState, + ospfv3AreaNssaTranslatorStabInterval, + ospfv3AreaNssaTranslatorEvents, + ospfv3AreaStubMetricType, + ospfv3AreaTEEnabled + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + supporting areas." + ::= { ospfv3Groups 2 } + + ospfv3AsLsdbGroup OBJECT-GROUP + OBJECTS { + ospfv3AsLsdbSequence, + ospfv3AsLsdbAge, + ospfv3AsLsdbChecksum, + ospfv3AsLsdbAdvertisement, + ospfv3AsLsdbTypeKnown + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + that display their AS-scope link state database." + ::= { ospfv3Groups 3 } + + ospfv3AreaLsdbGroup OBJECT-GROUP + OBJECTS { + ospfv3AreaLsdbSequence, + ospfv3AreaLsdbAge, + ospfv3AreaLsdbChecksum, + + ospfv3AreaLsdbAdvertisement, + ospfv3AreaLsdbTypeKnown + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + that display their Area-scope link state database." + ::= { ospfv3Groups 4 } + + ospfv3LinkLsdbGroup OBJECT-GROUP + OBJECTS { + ospfv3LinkLsdbSequence, + ospfv3LinkLsdbAge, + ospfv3LinkLsdbChecksum, + ospfv3LinkLsdbAdvertisement, + ospfv3LinkLsdbTypeKnown + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + that display their Link-scope link state database + for non-virtual interfaces." + ::= { ospfv3Groups 5 } + + ospfv3HostGroup OBJECT-GROUP + OBJECTS { + ospfv3HostMetric, + ospfv3HostRowStatus, + ospfv3HostAreaID + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + that support attached hosts." + ::= { ospfv3Groups 6 } + + ospfv3IfGroup OBJECT-GROUP + OBJECTS { + ospfv3IfAreaId, + ospfv3IfType, + ospfv3IfAdminStatus, + ospfv3IfRtrPriority, + ospfv3IfTransitDelay, + ospfv3IfRetransInterval, + ospfv3IfHelloInterval, + ospfv3IfRtrDeadInterval, + ospfv3IfPollInterval, + ospfv3IfState, + + ospfv3IfDesignatedRouter, + ospfv3IfBackupDesignatedRouter, + ospfv3IfEvents, + ospfv3IfRowStatus, + ospfv3IfDemand, + ospfv3IfMetricValue, + ospfv3IfLinkScopeLsaCount, + ospfv3IfLinkLsaCksumSum, + ospfv3IfDemandNbrProbe, + ospfv3IfDemandNbrProbeRetransLimit, + ospfv3IfDemandNbrProbeInterval, + ospfv3IfTEDisabled, + ospfv3IfLinkLSASuppression + } + STATUS current + DESCRIPTION + "These interface objects are used for + managing/monitoring OSPFv3 interfaces." + ::= { ospfv3Groups 7 } + + ospfv3VirtIfGroup OBJECT-GROUP + OBJECTS { + ospfv3VirtIfIndex, + ospfv3VirtIfInstId, + ospfv3VirtIfTransitDelay, + ospfv3VirtIfRetransInterval, + ospfv3VirtIfHelloInterval, + ospfv3VirtIfRtrDeadInterval, + ospfv3VirtIfState, + ospfv3VirtIfEvents, + ospfv3VirtIfRowStatus, + ospfv3VirtIfLinkScopeLsaCount, + ospfv3VirtIfLinkLsaCksumSum + } + STATUS current + DESCRIPTION + "These virtual interface objects are used for + managing/monitoring OSPFv3 virtual interfaces." + ::= { ospfv3Groups 8 } + + ospfv3NbrGroup OBJECT-GROUP + OBJECTS { + ospfv3NbrAddressType, + ospfv3NbrAddress, + ospfv3NbrOptions, + ospfv3NbrPriority, + ospfv3NbrState, + ospfv3NbrEvents, + + ospfv3NbrLsRetransQLen, + ospfv3NbrHelloSuppressed, + ospfv3NbrIfId, + ospfv3NbrRestartHelperStatus, + ospfv3NbrRestartHelperAge, + ospfv3NbrRestartHelperExitReason + } + STATUS current + DESCRIPTION + "These neighbor objects are used for + managing/monitoring OSPFv3 neighbors." + ::= { ospfv3Groups 9 } + + ospfv3CfgNbrGroup OBJECT-GROUP + OBJECTS { + ospfv3CfgNbrPriority, + ospfv3CfgNbrRowStatus + } + STATUS current + DESCRIPTION + "These configured neighbor objects are used for + managing/monitoring OSPFv3-configured neighbors." + ::= { ospfv3Groups 10 } + + ospfv3VirtNbrGroup OBJECT-GROUP + OBJECTS { + ospfv3VirtNbrIfIndex, + ospfv3VirtNbrIfInstId, + ospfv3VirtNbrAddressType, + ospfv3VirtNbrAddress, + ospfv3VirtNbrOptions, + ospfv3VirtNbrState, + ospfv3VirtNbrEvents, + ospfv3VirtNbrLsRetransQLen, + ospfv3VirtNbrHelloSuppressed, + ospfv3VirtNbrIfId, + ospfv3VirtNbrRestartHelperStatus, + ospfv3VirtNbrRestartHelperAge, + ospfv3VirtNbrRestartHelperExitReason + } + STATUS current + DESCRIPTION + "These virtual neighbor objects are used for + managing/monitoring OSPFv3 virtual neighbors." + ::= { ospfv3Groups 11 } + + + + + ospfv3AreaAggregateGroup OBJECT-GROUP + OBJECTS { + ospfv3AreaAggregateRowStatus, + ospfv3AreaAggregateEffect, + ospfv3AreaAggregateRouteTag + } + STATUS current + DESCRIPTION + "These area aggregate objects are required for + aggregating OSPFv3 prefixes for summarization + across areas." + ::= { ospfv3Groups 12 } + + ospfv3VirtLinkLsdbGroup OBJECT-GROUP + OBJECTS { + ospfv3VirtLinkLsdbSequence, + ospfv3VirtLinkLsdbAge, + ospfv3VirtLinkLsdbChecksum, + ospfv3VirtLinkLsdbAdvertisement, + ospfv3VirtLinkLsdbTypeKnown + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + that display their Link-scope link state database + for virtual interfaces." + ::= { ospfv3Groups 13 } + + ospfv3NotificationObjectGroup OBJECT-GROUP + OBJECTS { + ospfv3ConfigErrorType, + ospfv3PacketType, + ospfv3PacketSrc + } + STATUS current + DESCRIPTION + "These objects are used to record notification + parameters." + ::= { ospfv3Groups 14 } + + ospfv3NotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + ospfv3VirtIfStateChange, + ospfv3NbrStateChange, + ospfv3VirtNbrStateChange, + ospfv3IfConfigError, + ospfv3VirtIfConfigError, + ospfv3IfRxBadPacket, + + ospfv3VirtIfRxBadPacket, + ospfv3LsdbOverflow, + ospfv3LsdbApproachingOverflow, + ospfv3IfStateChange, + ospfv3NssaTranslatorStatusChange, + ospfv3RestartStatusChange, + ospfv3NbrRestartHelperStatusChange, + ospfv3VirtNbrRestartHelperStatusChange + } + STATUS current + DESCRIPTION + "This group is used for OSPFv3 notifications." + ::= { ospfv3Groups 15 } + + END \ No newline at end of file diff --git a/mibs/PIM-STD-MIB.txt b/mibs/PIM-STD-MIB.txt new file mode 100644 index 00000000..deacc68c --- /dev/null +++ b/mibs/PIM-STD-MIB.txt @@ -0,0 +1,3967 @@ +PIM-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, mib-2, + NOTIFICATION-TYPE, Unsigned32, + Counter32, Counter64, Gauge32, + TimeTicks FROM SNMPv2-SMI -- [RFC2578] + TEXTUAL-CONVENTION, + RowStatus, TruthValue, + StorageType FROM SNMPv2-TC -- [RFC2579] + MODULE-COMPLIANCE, OBJECT-GROUP, + NOTIFICATION-GROUP FROM SNMPv2-CONF -- [RFC2580] + InterfaceIndexOrZero, + InterfaceIndex FROM IF-MIB -- [RFC2863] + InetAddressType, + InetAddressPrefixLength, + InetAddress, InetVersion FROM INET-ADDRESS-MIB -- [RFC4001] + IANAipRouteProtocol FROM IANA-RTPROTO-MIB; -- [RTPROTO] + +pimStdMIB MODULE-IDENTITY + LAST-UPDATED "200711020000Z" -- 2 November 2007 + ORGANIZATION + "IETF Protocol Independent Multicast (PIM) Working Group" + CONTACT-INFO + "Email: pim@ietf.org + WG charter: + + + + + http://www.ietf.org/html.charters/pim-charter.html" + DESCRIPTION + "The MIB module for management of PIM routers. + + Copyright (C) The IETF Trust (2007). This version of this + MIB module is part of RFC 5060; see the RFC itself for full + legal notices." + REVISION "200711020000Z" -- 2 November 2007 + DESCRIPTION "Initial version, published as RFC 5060." + ::= { mib-2 157 } + +-- +-- Textual Conventions +-- + +PimMode ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The PIM mode in which a group is operating. + + none(1) The group is not using PIM, which may be the + case if, for example, it is a link-local or + unroutable group address. + + ssm(2) Source-Specific Multicast (SSM) with PIM Sparse + Mode. + + asm(3) Any Source Multicast (ASM) with PIM Sparse + Mode. + + bidir(4) Bidirectional PIM. + + dm(5) PIM Dense Mode. + + other(6) Any other PIM mode." + + SYNTAX INTEGER { + none(1), + ssm(2), + asm(3), + bidir(4), + dm(5), + other(6) + } + +PimGroupMappingOriginType ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + + + + "The mechanism by which a PIM group mapping was learned. + + fixed(1) Link-local or unroutable group mappings. + + configRp(2) Local static RP configuration. + + configSsm(3) Local SSM Group configuration. + + bsr(4) The PIM Bootstrap Router (BSR) mechanism. + + autoRP(5) Cisco's Auto-RP mechanism. + + embedded(6) The Embedded-RP mechanism where the RP address + is embedded in the multicast group address. + + other(7) Any other mechanism." + + REFERENCE "RFC 3569, RFC 3956, and RFC 5059" + SYNTAX INTEGER { + fixed(1), + configRp(2), + configSsm(3), + bsr(4), + autoRP(5), + embedded(6), + other(7) + } + +-- +-- Top-level structure +-- + +pimNotifications OBJECT IDENTIFIER ::= { pimStdMIB 0 } +pim OBJECT IDENTIFIER ::= { pimStdMIB 1 } + +pimKeepalivePeriod OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The duration of the Keepalive Timer. This is the period + during which the PIM router will maintain (S,G) state in the + absence of explicit (S,G) local membership or (S,G) join + messages received to maintain it. This timer period is + called the Keepalive_Period in the PIM-SM specification. It + is called the SourceLifetime in the PIM-DM specification. + + + + + The storage type of this object is determined by + pimDeviceConfigStorageType." + REFERENCE "RFC 4601 section 4.11" + DEFVAL { 210 } + ::= { pim 14 } + +pimRegisterSuppressionTime OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The duration of the Register Suppression Timer. This is + the period during which a PIM Designated Router (DR) stops + sending Register-encapsulated data to the Rendezvous Point + (RP) after receiving a Register-Stop message. This object + is used to run timers both at the DR and at the RP. This + timer period is called the Register_Suppression_Time in the + PIM-SM specification. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + REFERENCE "RFC 4601 section 4.11" + DEFVAL { 60 } + ::= { pim 15 } + +pimStarGEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimStarGTable." + ::= { pim 16 } + +pimStarGIEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimStarGITable." + ::= { pim 17 } + +pimSGEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimSGTable." + + + + ::= { pim 18 } + +pimSGIEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimSGITable." + ::= { pim 19 } + +pimSGRptEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimSGRptTable." + ::= { pim 20 } + +pimSGRptIEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimSGRptITable." + ::= { pim 21 } + +pimOutAsserts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of Asserts sent by this router. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.6" + ::= { pim 22 } + +pimInAsserts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of Asserts received by this router. Asserts + are multicast to all routers on a network. This counter is + incremented by all routers that receive an assert, not only + those routers that are contesting the assert. + + + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.6" + ::= { pim 23 } + +pimLastAssertInterface OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The interface on which this router most recently sent or + received an assert, or zero if this router has not sent or + received an assert." + REFERENCE "RFC 4601 section 4.6" + ::= { pim 24 } + +pimLastAssertGroupAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the multicast group address in the most + recently sent or received assert. If this router has not + sent or received an assert, then this object is set to + unknown(0)." + ::= { pim 25 } + +pimLastAssertGroupAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The multicast group address in the most recently sent or + received assert. The InetAddressType is given by the + pimLastAssertGroupAddressType object." + ::= { pim 26 } + +pimLastAssertSourceAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the source address in the most recently + sent or received assert. If the most recent assert was + (*,G), or if this router has not sent or received an assert, + then this object is set to unknown(0)." + ::= { pim 27 } + + + +pimLastAssertSourceAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The source address in the most recently sent or received + assert. The InetAddressType is given by the + pimLastAssertSourceAddressType object." + ::= { pim 28 } + +pimNeighborLossNotificationPeriod OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The minimum time that must elapse between pimNeighborLoss + notifications originated by this router. The maximum value + 65535 represents an 'infinite' time, in which case, no + pimNeighborLoss notifications are ever sent. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + DEFVAL { 0 } + ::= { pim 29 } + +pimNeighborLossCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of neighbor loss events that have occurred. + + This counter is incremented when the neighbor timer expires, + and the router has no other neighbors on the same interface + with the same IP version and a lower IP address than itself. + + This counter is incremented whenever a pimNeighborLoss + notification would be generated. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.3.2" + ::= { pim 30 } + +pimInvalidRegisterNotificationPeriod OBJECT-TYPE + SYNTAX Unsigned32 (10..65535) + + + + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The minimum time that must elapse between + pimInvalidRegister notifications originated by this router. + The default value of 65535 represents an 'infinite' time, in + which case, no pimInvalidRegister notifications are ever + sent. + + The non-zero minimum allowed value provides resilience + against propagation of denial-of-service attacks from the + data and control planes to the network management plane. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + DEFVAL { 65535 } + ::= { pim 31 } + +pimInvalidRegisterMsgsRcvd OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of invalid PIM Register messages that have been + received by this device. + + A PIM Register message is invalid if either + + o the destination address of the Register message does not + match the Group to RP mapping on this device, or + + o this device believes the group address to be within an + SSM address range, but this Register implies ASM usage. + + These conditions can occur transiently while RP mapping + changes propagate through the network. If this counter is + incremented repeatedly over several minutes, then there is a + persisting configuration error that requires correction. + + The active Group to RP mapping on this device is specified + by the object pimGroupMappingPimMode. If there is no such + mapping, then the object pimGroupMappingPimMode is absent. + The RP address contained in the invalid Register is + pimInvalidRegisterRp. + + Multicast data carried by invalid Register messages is + discarded. The discarded data is from a source directly + + + + connected to pimInvalidRegisterOrigin, and is addressed to + pimInvalidRegisterGroup. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.4.2, RFC 3569, and + 'IP Multicast MIB' (August 2007) ipMcastSsmRangeTable" + ::= { pim 32 } + +pimInvalidRegisterAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type stored in pimInvalidRegisterOrigin, + pimInvalidRegisterGroup, and pimInvalidRegisterRp. + + If no invalid Register messages have been received, then + this object is set to unknown(0)." + ::= { pim 33 } + +pimInvalidRegisterOrigin OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The source address of the last invalid Register message + received by this device." + ::= { pim 34 } + +pimInvalidRegisterGroup OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP multicast group address to which the last invalid + Register message received by this device was addressed." + ::= { pim 35 } + +pimInvalidRegisterRp OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The RP address to which the last invalid Register message + received by this device was delivered." + ::= { pim 36 } + + + +pimInvalidJoinPruneNotificationPeriod OBJECT-TYPE + SYNTAX Unsigned32 (10..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The minimum time that must elapse between + pimInvalidJoinPrune notifications originated by this router. + The default value of 65535 represents an 'infinite' time, in + which case, no pimInvalidJoinPrune notifications are ever + sent. + + The non-zero minimum allowed value provides resilience + against propagation of denial-of-service attacks from the + control plane to the network management plane. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + DEFVAL { 65535 } + ::= { pim 37 } + +pimInvalidJoinPruneMsgsRcvd OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of invalid PIM Join/Prune messages that have + been received by this device. + + A PIM Join/Prune message is invalid if either + + o the Group to RP mapping specified by this message does not + match the Group to RP mapping on this device, or + + o this device believes the group address to be within an + SSM address range, but this Join/Prune (*,G) or (S,G,rpt) + implies ASM usage. + + These conditions can occur transiently while RP mapping + changes propagate through the network. If this counter is + incremented repeatedly over several minutes, then there is a + persisting configuration error that requires correction. + + The active Group to RP mapping on this device is specified + by the object pimGroupMappingPimMode. If there is no such + mapping, then the object pimGroupMappingPimMode is absent. + The RP address contained in the invalid Join/Prune is + pimInvalidJoinPruneRp. + + + + Invalid Join/Prune messages are discarded. This may result + in loss of multicast data affecting listeners downstream of + pimInvalidJoinPruneOrigin, for multicast data addressed to + pimInvalidJoinPruneGroup. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.5.2, RFC 3569, and + 'IP Multicast MIB' (August 2007) ipMcastSsmRangeTable" + ::= { pim 38 } + +pimInvalidJoinPruneAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type stored in pimInvalidJoinPruneOrigin, + pimInvalidJoinPruneGroup, and pimInvalidJoinPruneRp. + + If no invalid Join/Prune messages have been received, this + object is set to unknown(0)." + ::= { pim 39 } + +pimInvalidJoinPruneOrigin OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The source address of the last invalid Join/Prune message + received by this device." + ::= { pim 40 } + +pimInvalidJoinPruneGroup OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP multicast group address carried in the last + invalid Join/Prune message received by this device." + ::= { pim 41 } + +pimInvalidJoinPruneRp OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The RP address carried in the last invalid Join/Prune + + + + message received by this device." + ::= { pim 42 } + +pimRPMappingNotificationPeriod OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The minimum time that must elapse between + pimRPMappingChange notifications originated by this router. + The default value of 65535 represents an 'infinite' time, in + which case, no pimRPMappingChange notifications are ever + sent. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + DEFVAL { 65535 } + ::= { pim 43 } + +pimRPMappingChangeCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of changes to active RP mappings on this device. + + Information about active RP mappings is available in + pimGroupMappingTable. Only changes to active mappings cause + this counter to be incremented. That is, changes that + modify the pimGroupMappingEntry with the highest precedence + for a group (lowest value of pimGroupMappingPrecedence). + + Such changes may result from manual configuration of this + device, or from automatic RP mapping discovery methods + including the PIM Bootstrap Router (BSR) mechanism. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 5059" + ::= { pim 44 } + +pimInterfaceElectionNotificationPeriod OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + + + + DESCRIPTION + "The minimum time that must elapse between + pimInterfaceElection notifications originated by this + router. The default value of 65535 represents an 'infinite' + time, in which case, no pimInterfaceElection notifications + are ever sent. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + DEFVAL { 65535 } + ::= { pim 45 } + +pimInterfaceElectionWinCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this device has been elected DR or DF + on any interface. + + Elections occur frequently on newly-active interfaces, as + triggered Hellos establish adjacencies. This counter is not + incremented for elections on an interface until the first + periodic Hello has been sent. If this router is the DR or + DF at the time of sending the first periodic Hello after + interface activation, then this counter is incremented + (once) at that time. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.3.2 and RFC 5015 section 3.5.2" + ::= { pim 46 } + +pimRefreshInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The interval between successive State Refresh messages sent + by an Originator. This timer period is called the + RefreshInterval in the PIM-DM specification. This object is + used only by PIM-DM. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + REFERENCE "RFC 3973 section 4.8" + + + + DEFVAL { 60 } + ::= { pim 47 } + +pimDeviceConfigStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The storage type used for the global PIM configuration of + this device, comprised of the objects listed below. If this + storage type takes the value 'permanent', write-access to + the listed objects need not be allowed. + + The objects described by this storage type are: + pimKeepalivePeriod, pimRegisterSuppressionTime, + pimNeighborLossNotificationPeriod, + pimInvalidRegisterNotificationPeriod, + pimInvalidJoinPruneNotificationPeriod, + pimRPMappingNotificationPeriod, + pimInterfaceElectionNotificationPeriod, and + pimRefreshInterval." + DEFVAL { nonVolatile } + ::= { pim 48 } + +-- +-- The PIM Interface Table +-- + +pimInterfaceTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the router's PIM interfaces. + PIM is enabled on all interfaces listed in this table." + ::= { pim 1 } + +pimInterfaceEntry OBJECT-TYPE + SYNTAX PimInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimInterfaceTable. This + entry is preserved on agent restart." + INDEX { pimInterfaceIfIndex, + pimInterfaceIPVersion } + ::= { pimInterfaceTable 1 } + + + + +PimInterfaceEntry ::= SEQUENCE { + pimInterfaceIfIndex InterfaceIndex, + pimInterfaceIPVersion InetVersion, + pimInterfaceAddressType InetAddressType, + pimInterfaceAddress InetAddress, + pimInterfaceGenerationIDValue Unsigned32, + pimInterfaceDR InetAddress, + pimInterfaceDRPriority Unsigned32, + pimInterfaceDRPriorityEnabled TruthValue, + pimInterfaceHelloInterval Unsigned32, + pimInterfaceTrigHelloInterval Unsigned32, + pimInterfaceHelloHoldtime Unsigned32, + pimInterfaceJoinPruneInterval Unsigned32, + pimInterfaceJoinPruneHoldtime Unsigned32, + pimInterfaceDFElectionRobustness Unsigned32, + pimInterfaceLanDelayEnabled TruthValue, + pimInterfacePropagationDelay Unsigned32, + pimInterfaceOverrideInterval Unsigned32, + pimInterfaceEffectPropagDelay Unsigned32, + pimInterfaceEffectOverrideIvl Unsigned32, + pimInterfaceSuppressionEnabled TruthValue, + pimInterfaceBidirCapable TruthValue, + pimInterfaceDomainBorder TruthValue, + pimInterfaceStubInterface TruthValue, + pimInterfacePruneLimitInterval Unsigned32, + pimInterfaceGraftRetryInterval Unsigned32, + pimInterfaceSRPriorityEnabled TruthValue, + pimInterfaceStatus RowStatus, + pimInterfaceStorageType StorageType +} + +pimInterfaceIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex value of this PIM interface." + ::= { pimInterfaceEntry 1 } + +pimInterfaceIPVersion OBJECT-TYPE + SYNTAX InetVersion + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP version of this PIM interface. A physical interface + may be configured in multiple modes concurrently, e.g., IPv4 + and IPv6; however, the traffic is considered to be logically + separate." + + + + ::= { pimInterfaceEntry 2 } + +pimInterfaceAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of this PIM interface." + ::= { pimInterfaceEntry 3 } + +pimInterfaceAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary IP address of this router on this PIM + interface. The InetAddressType is given by the + pimInterfaceAddressType object." + REFERENCE "RFC 4601 sections 4.1.6, 4.3.1-4.3.4, and 4.5.1" + ::= { pimInterfaceEntry 4 } + +pimInterfaceGenerationIDValue OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of the Generation ID this router inserted in the + last PIM Hello message it sent on this interface." + REFERENCE "RFC 4601 section 4.3.1" + ::= { pimInterfaceEntry 5 } + +pimInterfaceDR OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary IP address of the Designated Router on this PIM + interface. The InetAddressType is given by the + pimInterfaceAddressType object." + REFERENCE "RFC 4601 section 4.3" + ::= { pimInterfaceEntry 6 } + +pimInterfaceDRPriority OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Designated Router Priority value inserted into the DR + + + + Priority option in PIM Hello messages transmitted on this + interface. Numerically higher values for this object + indicate higher priorities." + REFERENCE "RFC 4601 section 4.3.2" + DEFVAL { 1 } + ::= { pimInterfaceEntry 7 } + +pimInterfaceDRPriorityEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if all routers on this interface are + using the DR Priority option." + REFERENCE "RFC 4601 section 4.3.2" + ::= { pimInterfaceEntry 8 } + +pimInterfaceHelloInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..18000) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The frequency at which PIM Hello messages are transmitted + on this interface. This object corresponds to the + 'Hello_Period' timer value defined in the PIM-SM + specification. A value of zero represents an 'infinite' + interval, and indicates that periodic PIM Hello messages + should not be sent on this interface." + REFERENCE "RFC 4601 section 9" + DEFVAL { 30 } + ::= { pimInterfaceEntry 9 } + +pimInterfaceTrigHelloInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..60) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The maximum time before this router sends a triggered PIM + Hello message on this interface. This object corresponds to + the 'Trigered_Hello_Delay' timer value defined in the PIM-SM + specification. A value of zero has no special meaning and + indicates that triggered PIM Hello messages should always be + sent immediately." + REFERENCE "RFC 4601 section 4.11" + DEFVAL { 5 } + ::= { pimInterfaceEntry 10 } + + + +pimInterfaceHelloHoldtime OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value set in the Holdtime field of PIM Hello messages + transmitted on this interface. A value of 65535 represents + an 'infinite' holdtime. Implementations are recommended + to use a holdtime that is 3.5 times the value of + pimInterfaceHelloInterval, or 65535 if + pimInterfaceHelloInterval is set to zero." + REFERENCE "RFC 4601 sections 4.3.2 and 4.9.2" + DEFVAL { 105 } + ::= { pimInterfaceEntry 11 } + +pimInterfaceJoinPruneInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..18000) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The frequency at which this router sends PIM Join/Prune + messages on this PIM interface. This object corresponds to + the 't_periodic' timer value defined in the PIM-SM + specification. A value of zero represents an 'infinite' + interval, and indicates that periodic PIM Join/Prune + messages should not be sent on this interface." + REFERENCE "RFC 4601 section 4.11" + DEFVAL { 60 } + ::= { pimInterfaceEntry 12 } + +pimInterfaceJoinPruneHoldtime OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value inserted into the Holdtime field of a PIM + Join/Prune message sent on this interface. A value of 65535 + represents an 'infinite' holdtime. Implementations are + recommended to use a holdtime that is 3.5 times the value of + pimInterfaceJoinPruneInterval, or 65535 if + pimInterfaceJoinPruneInterval is set to zero. PIM-DM + implementations are recommended to use the value of + pimInterfacePruneLimitInterval." + REFERENCE "RFC 4601 sections 4.5.3 and 4.9.5" + DEFVAL { 210 } + + + + ::= { pimInterfaceEntry 13 } + +pimInterfaceDFElectionRobustness OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The minimum number of PIM DF-Election messages that must be + lost in order for DF election on this interface to fail." + DEFVAL { 3 } + ::= { pimInterfaceEntry 14 } + +pimInterfaceLanDelayEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if all routers on this interface are + using the LAN Prune Delay option." + REFERENCE "RFC 4601 sections 4.3.3 and 4.9.2" + ::= { pimInterfaceEntry 15 } + +pimInterfacePropagationDelay OBJECT-TYPE + SYNTAX Unsigned32 (0..32767) + UNITS "milliseconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The expected propagation delay between PIM routers on this + network or link. + + This router inserts this value into the Propagation_Delay + field of the LAN Prune Delay option in the PIM Hello + messages sent on this interface. Implementations SHOULD + enforce a lower bound on the permitted values for this + object to allow for scheduling and processing delays within + the local router." + DEFVAL { 500 } + ::= { pimInterfaceEntry 16 } + +pimInterfaceOverrideInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "milliseconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value this router inserts into the Override_Interval + field of the LAN Prune Delay option in the PIM Hello + + + + messages it sends on this interface. + + When overriding a prune, PIM routers pick a random timer + duration up to the value of this object. The more PIM + routers that are active on a network, the more likely it is + that the prune will be overridden after a small proportion + of this time has elapsed. + + The more PIM routers are active on this network, the larger + this object should be to obtain an optimal spread of prune + override latencies." + REFERENCE "RFC 4601 section 4.3.3" + DEFVAL { 2500 } + ::= { pimInterfaceEntry 17 } + +pimInterfaceEffectPropagDelay OBJECT-TYPE + SYNTAX Unsigned32 (0..32767) + UNITS "milliseconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Effective Propagation Delay on this interface. This + object is always 500 if pimInterfaceLanDelayEnabled is + FALSE." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimInterfaceEntry 18 } + +pimInterfaceEffectOverrideIvl OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "milliseconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Effective Override Interval on this interface. This + object is always 2500 if pimInterfaceLanDelayEnabled is + FALSE." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimInterfaceEntry 19 } + +pimInterfaceSuppressionEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether join suppression is enabled on this interface. + This object is always TRUE if pimInterfaceLanDelayEnabled is + FALSE." + REFERENCE "RFC 4601 section 4.3.3" + + + + ::= { pimInterfaceEntry 20 } + +pimInterfaceBidirCapable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if all routers on this interface are + using the Bidirectional-PIM Capable option." + REFERENCE "RFC 5015 section 3.2 and 3.7.4" + ::= { pimInterfaceEntry 21 } + +pimInterfaceDomainBorder OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Whether or not this interface is a PIM domain border. This + includes acting as a border for PIM Bootstrap Router (BSR) + messages, if the BSR mechanism is in use." + DEFVAL { false } + ::= { pimInterfaceEntry 22 } + +pimInterfaceStubInterface OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Whether this interface is a 'stub interface'. If this + object is set to TRUE, then no PIM packets are sent out this + interface, and any received PIM packets are ignored. + + Setting this object to TRUE is a security measure for + interfaces towards untrusted hosts. This allows an + interface to be configured for use with IGMP (Internet Group + Management Protocol) or MLD (Multicast Listener Discovery) + only, which protects the PIM router from forged PIM messages + on the interface. + + To communicate with other PIM routers using this interface, + this object must remain set to FALSE. + + Changing the value of this object while the interface is + operational causes PIM to be disabled and then re-enabled on + this interface." + REFERENCE "RFC 3376, RFC 3810" + DEFVAL { false } + ::= { pimInterfaceEntry 23 } + + + +pimInterfacePruneLimitInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The minimum interval that must transpire between two + successive Prunes sent by a router. This object corresponds + to the 't_limit' timer value defined in the PIM-DM + specification. This object is used only by PIM-DM." + REFERENCE "RFC 3973 section 4.8" + DEFVAL { 60 } + ::= { pimInterfaceEntry 24 } + +pimInterfaceGraftRetryInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The minimum interval that must transpire between two + successive Grafts sent by a router. This object corresponds + to the 'Graft_Retry_Period' timer value defined in the + PIM-DM specification. This object is used only by PIM-DM." + REFERENCE "RFC 3973 section 4.8" + DEFVAL { 3 } + ::= { pimInterfaceEntry 25 } + +pimInterfaceSRPriorityEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if all routers on this interface are + using the State Refresh option. This object is used only by + PIM-DM." + ::= { pimInterfaceEntry 26 } + +pimInterfaceStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this entry. Creating the entry enables PIM + on the interface; destroying the entry disables PIM on the + interface. + + This status object can be set to active(1) without setting + + + + any other columnar objects in this entry. + + All writeable objects in this entry can be modified when the + status of this entry is active(1)." + ::= { pimInterfaceEntry 27 } + +pimInterfaceStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row." + DEFVAL { nonVolatile } + ::= { pimInterfaceEntry 28 } + +-- +-- The PIM Neighbor Table +-- + +pimNeighborTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimNeighborEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the router's PIM neighbors." + ::= { pim 2 } + +pimNeighborEntry OBJECT-TYPE + SYNTAX PimNeighborEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimNeighborTable." + INDEX { pimNeighborIfIndex, + pimNeighborAddressType, + pimNeighborAddress } + ::= { pimNeighborTable 1 } + +PimNeighborEntry ::= SEQUENCE { + pimNeighborIfIndex InterfaceIndex, + pimNeighborAddressType InetAddressType, + pimNeighborAddress InetAddress, + pimNeighborGenerationIDPresent TruthValue, + pimNeighborGenerationIDValue Unsigned32, + pimNeighborUpTime TimeTicks, + pimNeighborExpiryTime TimeTicks, + + + + pimNeighborDRPriorityPresent TruthValue, + pimNeighborDRPriority Unsigned32, + pimNeighborLanPruneDelayPresent TruthValue, + pimNeighborTBit TruthValue, + pimNeighborPropagationDelay Unsigned32, + pimNeighborOverrideInterval Unsigned32, + pimNeighborBidirCapable TruthValue, + pimNeighborSRCapable TruthValue +} + +pimNeighborIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The value of ifIndex for the interface used to reach this + PIM neighbor." + ::= { pimNeighborEntry 1 } + +pimNeighborAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this PIM neighbor." + ::= { pimNeighborEntry 2 } + +pimNeighborAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The primary IP address of this PIM neighbor. The + InetAddressType is given by the pimNeighborAddressType + object." + ::= { pimNeighborEntry 3 } + +pimNeighborGenerationIDPresent OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if this neighbor is using the Generation + ID option." + REFERENCE "RFC 4601 section 4.3.1" + ::= { pimNeighborEntry 4 } + +pimNeighborGenerationIDValue OBJECT-TYPE + + + + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of the Generation ID from the last PIM Hello + message received from this neighbor. This object is always + zero if pimNeighborGenerationIDPresent is FALSE." + REFERENCE "RFC 4601 section 4.3.1" + ::= { pimNeighborEntry 5 } + +pimNeighborUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this PIM neighbor (last) became a neighbor + of the local router." + ::= { pimNeighborEntry 6 } + +pimNeighborExpiryTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum time remaining before this PIM neighbor will + time out. The value zero indicates that this PIM neighbor + will never time out." + ::= { pimNeighborEntry 7 } + +pimNeighborDRPriorityPresent OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if this neighbor is using the DR Priority + option." + REFERENCE "RFC 4601 section 4.3.2" + ::= { pimNeighborEntry 8 } + +pimNeighborDRPriority OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of the Designated Router Priority from the last + PIM Hello message received from this neighbor. This object + is always zero if pimNeighborDRPriorityPresent is FALSE." + REFERENCE "RFC 4601 section 4.3.2" + + + + ::= { pimNeighborEntry 9 } + +pimNeighborLanPruneDelayPresent OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if this neighbor is using the LAN Prune + Delay option." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimNeighborEntry 10 } + +pimNeighborTBit OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the T bit was set in the LAN Prune Delay option + received from this neighbor. The T bit specifies the + ability of the neighbor to disable join suppression. This + object is always TRUE if pimNeighborLanPruneDelayPresent is + FALSE." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimNeighborEntry 11 } + +pimNeighborPropagationDelay OBJECT-TYPE + SYNTAX Unsigned32 (0..32767) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of the Propagation_Delay field of the LAN Prune + Delay option received from this neighbor. This object is + always zero if pimNeighborLanPruneDelayPresent is FALSE." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimNeighborEntry 12 } + +pimNeighborOverrideInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of the Override_Interval field of the LAN Prune + Delay option received from this neighbor. This object is + always zero if pimNeighborLanPruneDelayPresent is FALSE." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimNeighborEntry 13 } + +pimNeighborBidirCapable OBJECT-TYPE + + + + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if this neighbor is using the + Bidirectional-PIM Capable option." + REFERENCE "RFC 5015 section 3.2 and 3.7.4" + ::= { pimNeighborEntry 14 } + +pimNeighborSRCapable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if this neighbor is using the State + Refresh Capable option. This object is used only by + PIM-DM." + REFERENCE "RFC 3973 section 4.3.4" + ::= { pimNeighborEntry 15 } + +-- +-- The PIM Neighbor Secondary Address Table +-- + +pimNbrSecAddressTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimNbrSecAddressEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the secondary addresses + advertised by each PIM neighbor (on a subset of the rows of + the pimNeighborTable defined above)." + REFERENCE "RFC 4601 section 4.3.4" + ::= { pim 3 } + +pimNbrSecAddressEntry OBJECT-TYPE + SYNTAX PimNbrSecAddressEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimNbrSecAddressTable." + INDEX { pimNbrSecAddressIfIndex, + pimNbrSecAddressType, + pimNbrSecAddressPrimary, + pimNbrSecAddress } + ::= { pimNbrSecAddressTable 1 } + +PimNbrSecAddressEntry ::= SEQUENCE { + + + + pimNbrSecAddressIfIndex InterfaceIndex, + pimNbrSecAddressType InetAddressType, + pimNbrSecAddressPrimary InetAddress, + pimNbrSecAddress InetAddress +} + +pimNbrSecAddressIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The value of ifIndex for the interface used to reach this + PIM neighbor." + ::= { pimNbrSecAddressEntry 1 } + +pimNbrSecAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this PIM neighbor." + ::= { pimNbrSecAddressEntry 2 } + +pimNbrSecAddressPrimary OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The primary IP address of this PIM neighbor. The + InetAddressType is given by the pimNbrSecAddressType + object." + ::= { pimNbrSecAddressEntry 3 } + +pimNbrSecAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The secondary IP address of this PIM neighbor. The + InetAddressType is given by the pimNbrSecAddressType + object." + ::= { pimNbrSecAddressEntry 4 } + +-- +-- The PIM (*,G) State Table +-- + +pimStarGTable OBJECT-TYPE + + + + SYNTAX SEQUENCE OF PimStarGEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the non-interface specific + (*,G) state that PIM has." + REFERENCE "RFC 4601 section 4.1.3" + ::= { pim 4 } + +pimStarGEntry OBJECT-TYPE + SYNTAX PimStarGEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimStarGTable." + INDEX { pimStarGAddressType, + pimStarGGrpAddress } + ::= { pimStarGTable 1 } + +PimStarGEntry ::= SEQUENCE { + pimStarGAddressType InetAddressType, + pimStarGGrpAddress InetAddress, + pimStarGUpTime TimeTicks, + pimStarGPimMode PimMode, + pimStarGRPAddressType InetAddressType, + pimStarGRPAddress InetAddress, + pimStarGPimModeOrigin PimGroupMappingOriginType, + pimStarGRPIsLocal TruthValue, + pimStarGUpstreamJoinState INTEGER, + pimStarGUpstreamJoinTimer TimeTicks, + pimStarGUpstreamNeighborType InetAddressType, + pimStarGUpstreamNeighbor InetAddress, + pimStarGRPFIfIndex InterfaceIndexOrZero, + pimStarGRPFNextHopType InetAddressType, + pimStarGRPFNextHop InetAddress, + pimStarGRPFRouteProtocol IANAipRouteProtocol, + pimStarGRPFRouteAddress InetAddress, + pimStarGRPFRoutePrefixLength InetAddressPrefixLength, + pimStarGRPFRouteMetricPref Unsigned32, + pimStarGRPFRouteMetric Unsigned32 +} + +pimStarGAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this multicast group." + + + + ::= { pimStarGEntry 1 } + +pimStarGGrpAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group address. The InetAddressType is given + by the pimStarGAddressType object." + ::= { pimStarGEntry 2 } + +pimStarGUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimStarGEntry 3 } + +pimStarGPimMode OBJECT-TYPE + SYNTAX PimMode { asm(3), bidir(4) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether this entry represents an ASM (Any Source Multicast, + used with PIM-SM) or BIDIR-PIM group." + ::= { pimStarGEntry 4 } + +pimStarGRPAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the Rendezvous Point (RP), or + unknown(0) if the RP address is unknown." + ::= { pimStarGEntry 5 } + +pimStarGRPAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the Rendezvous Point (RP) for the group. + The InetAddressType is given by the pimStarGRPAddressType." + ::= { pimStarGEntry 6 } + +pimStarGPimModeOrigin OBJECT-TYPE + SYNTAX PimGroupMappingOriginType + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The mechanism by which the PIM mode and RP for the group + were learned." + ::= { pimStarGEntry 7 } + +pimStarGRPIsLocal OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router is the RP for the group." + ::= { pimStarGEntry 8 } + +pimStarGUpstreamJoinState OBJECT-TYPE + SYNTAX INTEGER { + notJoined (1), + joined (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router should join the RP tree for the + group. This corresponds to the state of the upstream (*,G) + state machine in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.5.6" + ::= { pimStarGEntry 9 } + +pimStarGUpstreamJoinTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before the local router next sends a + periodic (*,G) Join message on pimStarGRPFIfIndex. This + timer is called the (*,G) Upstream Join Timer in the PIM-SM + specification. This object is zero if the timer is not + running." + REFERENCE "RFC 4601 section 4.10" + ::= { pimStarGEntry 10 } + +pimStarGUpstreamNeighborType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary address type of the upstream neighbor, or + + + + unknown(0) if the upstream neighbor address is unknown or is + not a PIM neighbor." + ::= { pimStarGEntry 11 } + +pimStarGUpstreamNeighbor OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary address of the neighbor on pimStarGRPFIfIndex + that the local router is sending periodic (*,G) Join + messages to. The InetAddressType is given by the + pimStarGUpstreamNeighborType object. This address is called + RPF'(*,G) in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.1.6" + ::= { pimStarGEntry 12 } + +pimStarGRPFIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of ifIndex for the Reverse Path Forwarding + (RPF) interface towards the RP, or zero if the RPF + interface is unknown." + ::= { pimStarGEntry 13 } + +pimStarGRPFNextHopType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the RPF next hop towards the RP, or + unknown(0) if the RPF next hop is unknown." + ::= { pimStarGEntry 14 } + +pimStarGRPFNextHop OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the RPF next hop towards the RP. The + InetAddressType is given by the pimStarGRPFNextHopType + object. This address is called MRIB.next_hop(RP(G)) + in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.5.5" + ::= { pimStarGEntry 15 } + + + + +pimStarGRPFRouteProtocol OBJECT-TYPE + SYNTAX IANAipRouteProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing mechanism via which the route used to find the + RPF interface towards the RP was learned." + ::= { pimStarGEntry 16 } + +pimStarGRPFRouteAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address that, when combined with the corresponding + value of pimStarGRPFRoutePrefixLength, identifies the route + used to find the RPF interface towards the RP. The + InetAddressType is given by the pimStarGRPFNextHopType + object. + + This address object is only significant up to + pimStarGRPFRoutePrefixLength bits. The remainder of the + address bits are zero." + ::= { pimStarGEntry 17 } + +pimStarGRPFRoutePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The prefix length that, when combined with the + corresponding value of pimStarGRPFRouteAddress, identifies + the route used to find the RPF interface towards the RP. + The InetAddressType is given by the pimStarGRPFNextHopType + object." + ::= { pimStarGEntry 18 } + +pimStarGRPFRouteMetricPref OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The metric preference of the route used to find the RPF + interface towards the RP." + ::= { pimStarGEntry 19 } + +pimStarGRPFRouteMetric OBJECT-TYPE + SYNTAX Unsigned32 + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing metric of the route used to find the RPF + interface towards the RP." + ::= { pimStarGEntry 20 } + +-- +-- The PIM (*,G,I) State Table +-- + +pimStarGITable OBJECT-TYPE + SYNTAX SEQUENCE OF PimStarGIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interface-specific (*,G) + state that PIM has." + REFERENCE "RFC 4601 section 4.1.3" + ::= { pim 5 } + +pimStarGIEntry OBJECT-TYPE + SYNTAX PimStarGIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimStarGITable." + INDEX { pimStarGAddressType, + pimStarGGrpAddress, + pimStarGIIfIndex } + ::= { pimStarGITable 1 } + +PimStarGIEntry ::= SEQUENCE { + pimStarGIIfIndex InterfaceIndex, + pimStarGIUpTime TimeTicks, + pimStarGILocalMembership TruthValue, + pimStarGIJoinPruneState INTEGER, + pimStarGIPrunePendingTimer TimeTicks, + pimStarGIJoinExpiryTimer TimeTicks, + pimStarGIAssertState INTEGER, + pimStarGIAssertTimer TimeTicks, + pimStarGIAssertWinnerAddressType InetAddressType, + pimStarGIAssertWinnerAddress InetAddress, + pimStarGIAssertWinnerMetricPref Unsigned32, + pimStarGIAssertWinnerMetric Unsigned32 +} + +pimStarGIIfIndex OBJECT-TYPE + + + + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex of the interface that this entry corresponds + to." + ::= { pimStarGIEntry 1 } + +pimStarGIUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimStarGIEntry 2 } + +pimStarGILocalMembership OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router has (*,G) local membership on this + interface (resulting from a mechanism such as IGMP or MLD). + This corresponds to local_receiver_include(*,G,I) in the + PIM-SM specification." + REFERENCE "RFC 3376, RFC 3810, and RFC 4601 section 4.1.6" + ::= { pimStarGIEntry 3 } + +pimStarGIJoinPruneState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + join (2), + prunePending (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state resulting from (*,G) Join/Prune messages + received on this interface. This corresponds to the state + of the downstream per-interface (*,G) state machine in the + PIM-SM specification." + REFERENCE "RFC 4601 section 4.5.2" + ::= { pimStarGIEntry 4 } + +pimStarGIPrunePendingTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "The time remaining before the local router acts on a (*,G) + Prune message received on this interface, during which the + router is waiting to see whether another downstream router + will override the Prune message. This timer is called the + (*,G) Prune-Pending Timer in the PIM-SM specification. This + object is zero if the timer is not running." + REFERENCE "RFC 4601 section 4.5.1" + ::= { pimStarGIEntry 5 } + +pimStarGIJoinExpiryTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before (*,G) Join state for this + interface expires. This timer is called the (*,G) Join + Expiry Timer in the PIM-SM specification. This object is + zero if the timer is not running. A value of 'FFFFFFFF'h + indicates an infinite expiry time." + REFERENCE "RFC 4601 section 4.10" + ::= { pimStarGIEntry 6 } + +pimStarGIAssertState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + iAmAssertWinner (2), + iAmAssertLoser (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The (*,G) Assert state for this interface. This + corresponds to the state of the per-interface (*,G) Assert + state machine in the PIM-SM specification. If + pimStarGPimMode is 'bidir', this object must be 'noInfo'." + REFERENCE "RFC 4601 section 4.6.2" + ::= { pimStarGIEntry 7 } + +pimStarGIAssertTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimStarGIAssertState is 'iAmAssertWinner', this is the + time remaining before the local router next sends a (*,G) + Assert message on this interface. If pimStarGIAssertState + is 'iAmAssertLoser', this is the time remaining before the + + + + (*,G) Assert state expires. If pimStarGIAssertState is + 'noInfo', this is zero. This timer is called the (*,G) + Assert Timer in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.6.2" + ::= { pimStarGIEntry 8 } + +pimStarGIAssertWinnerAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimStarGIAssertState is 'iAmAssertLoser', this is the + address type of the assert winner; otherwise, this object is + unknown(0)." + ::= { pimStarGIEntry 9 } + +pimStarGIAssertWinnerAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimStarGIAssertState is 'iAmAssertLoser', this is the + address of the assert winner. The InetAddressType is given + by the pimStarGIAssertWinnerAddressType object." + ::= { pimStarGIEntry 10 } + +pimStarGIAssertWinnerMetricPref OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimStarGIAssertState is 'iAmAssertLoser', this is the + metric preference of the route to the RP advertised by the + assert winner; otherwise, this object is zero." + ::= { pimStarGIEntry 11 } + +pimStarGIAssertWinnerMetric OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimStarGIAssertState is 'iAmAssertLoser', this is the + routing metric of the route to the RP advertised by the + assert winner; otherwise, this object is zero." + ::= { pimStarGIEntry 12 } + +-- +-- The PIM (S,G) State Table + + + +-- + +pimSGTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimSGEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the non-interface specific + (S,G) state that PIM has." + REFERENCE "RFC 4601 section 4.1.4" + ::= { pim 6 } + +pimSGEntry OBJECT-TYPE + SYNTAX PimSGEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimSGTable." + INDEX { pimSGAddressType, + pimSGGrpAddress, + pimSGSrcAddress } + ::= { pimSGTable 1 } + +PimSGEntry ::= SEQUENCE { + pimSGAddressType InetAddressType, + pimSGGrpAddress InetAddress, + pimSGSrcAddress InetAddress, + pimSGUpTime TimeTicks, + pimSGPimMode PimMode, + pimSGUpstreamJoinState INTEGER, + pimSGUpstreamJoinTimer TimeTicks, + pimSGUpstreamNeighbor InetAddress, + pimSGRPFIfIndex InterfaceIndexOrZero, + pimSGRPFNextHopType InetAddressType, + pimSGRPFNextHop InetAddress, + pimSGRPFRouteProtocol IANAipRouteProtocol, + pimSGRPFRouteAddress InetAddress, + pimSGRPFRoutePrefixLength InetAddressPrefixLength, + pimSGRPFRouteMetricPref Unsigned32, + pimSGRPFRouteMetric Unsigned32, + pimSGSPTBit TruthValue, + pimSGKeepaliveTimer TimeTicks, + pimSGDRRegisterState INTEGER, + pimSGDRRegisterStopTimer TimeTicks, + pimSGRPRegisterPMBRAddressType InetAddressType, + pimSGRPRegisterPMBRAddress InetAddress, + pimSGUpstreamPruneState INTEGER, + pimSGUpstreamPruneLimitTimer TimeTicks, + + + + pimSGOriginatorState INTEGER, + pimSGSourceActiveTimer TimeTicks, + pimSGStateRefreshTimer TimeTicks +} + +pimSGAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the source and multicast group for this + entry." + ::= { pimSGEntry 1 } + +pimSGGrpAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group address for this entry. The + InetAddressType is given by the pimSGAddressType object." + ::= { pimSGEntry 2 } + +pimSGSrcAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The source address for this entry. The InetAddressType is + given by the pimSGAddressType object." + ::= { pimSGEntry 3 } + +pimSGUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimSGEntry 4 } + +pimSGPimMode OBJECT-TYPE + SYNTAX PimMode { ssm(2), asm(3) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether pimSGGrpAddress is an SSM (Source Specific + Multicast, used with PIM-SM) or ASM (Any Source Multicast, + used with PIM-SM) group." + + + + REFERENCE "RFC 4601 section 4.5.2, RFC 3569, and + 'IP Multicast MIB' (August 2007) ipMcastSsmRangeTable" + ::= { pimSGEntry 5 } + +pimSGUpstreamJoinState OBJECT-TYPE + SYNTAX INTEGER { + notJoined (1), + joined (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router should join the shortest-path tree + for the source and group represented by this entry. This + corresponds to the state of the upstream (S,G) state machine + in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.5.7" + ::= { pimSGEntry 6 } + +pimSGUpstreamJoinTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before the local router next sends a + periodic (S,G) Join message on pimSGRPFIfIndex. This timer + is called the (S,G) Upstream Join Timer in the PIM-SM + specification. This object is zero if the timer is not + running." + REFERENCE "RFC 4601 sections 4.10 and 4.11" + ::= { pimSGEntry 7 } + +pimSGUpstreamNeighbor OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary address of the neighbor on pimSGRPFIfIndex that + the local router is sending periodic (S,G) Join messages to. + This is zero if the RPF next hop is unknown or is not a + PIM neighbor. The InetAddressType is given by the + pimSGAddressType object. This address is called RPF'(S,G) + in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.1.6" + ::= { pimSGEntry 8 } + +pimSGRPFIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of ifIndex for the RPF interface towards the + source, or zero if the RPF interface is unknown." + ::= { pimSGEntry 9 } + +pimSGRPFNextHopType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the RPF next hop towards the source, or + unknown(0) if the RPF next hop is unknown." + ::= { pimSGEntry 10 } + +pimSGRPFNextHop OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the RPF next hop towards the source. The + InetAddressType is given by the pimSGRPFNextHopType. This + address is called MRIB.next_hop(S) in the PIM-SM + specification." + REFERENCE "RFC 4601 section 4.5.5" + ::= { pimSGEntry 11 } + +pimSGRPFRouteProtocol OBJECT-TYPE + SYNTAX IANAipRouteProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing mechanism via which the route used to find the + RPF interface towards the source was learned." + ::= { pimSGEntry 12 } + +pimSGRPFRouteAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address that, when combined with the corresponding + value of pimSGRPFRoutePrefixLength, identifies the route + used to find the RPF interface towards the source. The + InetAddressType is given by the pimSGRPFNextHopType object. + + This address object is only significant up to + + + + pimSGRPFRoutePrefixLength bits. The remainder of the + address bits are zero." + ::= { pimSGEntry 13 } + +pimSGRPFRoutePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The prefix length that, when combined with the + corresponding value of pimSGRPFRouteAddress, identifies the + route used to find the RPF interface towards the source. + The InetAddressType is given by the pimSGRPFNextHopType + object." + ::= { pimSGEntry 14 } + +pimSGRPFRouteMetricPref OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The metric preference of the route used to find the RPF + interface towards the source." + ::= { pimSGEntry 15 } + +pimSGRPFRouteMetric OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing metric of the route used to find the RPF + interface towards the source." + ::= { pimSGEntry 16 } + +pimSGSPTBit OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the SPT bit is set; and therefore whether + forwarding is taking place on the shortest-path tree." + ::= { pimSGEntry 17 } + +pimSGKeepaliveTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "The time remaining before this (S,G) state expires, in + the absence of explicit (S,G) local membership or (S,G) + Join messages received to maintain it. This timer is + called the (S,G) Keepalive Timer in the PIM-SM + specification." + REFERENCE "RFC 4601 section 4.1.4" + ::= { pimSGEntry 18 } + +pimSGDRRegisterState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + join (2), + joinPending (3), + prune (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router should encapsulate (S,G) data + packets in Register messages and send them to the RP. This + corresponds to the state of the per-(S,G) Register state + machine in the PIM-SM specification. This object is always + 'noInfo' unless pimSGPimMode is 'asm'." + REFERENCE "RFC 4601 section 4.4.1" + ::= { pimSGEntry 19 } + +pimSGDRRegisterStopTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGDRRegisterState is 'prune', this is the time + remaining before the local router sends a Null-Register + message to the RP. If pimSGDRRegisterState is + 'joinPending', this is the time remaining before the local + router resumes encapsulating data packets and sending them + to the RP. Otherwise, this is zero. This timer is called + the Register-Stop Timer in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.4" + ::= { pimSGEntry 20 } + +pimSGRPRegisterPMBRAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the first PIM Multicast Border Router + to send a Register message with the Border bit set. This + + + + object is unknown(0) if the local router is not the RP for + the group." + ::= { pimSGEntry 21 } + +pimSGRPRegisterPMBRAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the first PIM Multicast Border Router to + send a Register message with the Border bit set. The + InetAddressType is given by the + pimSGRPRegisterPMBRAddressType object." + ::= { pimSGEntry 22 } + +pimSGUpstreamPruneState OBJECT-TYPE + SYNTAX INTEGER { + forwarding (1), + ackpending (2), + pruned (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router has pruned itself from the tree. + This corresponds to the state of the upstream prune (S,G) + state machine in the PIM-DM specification. This object is + used only by PIM-DM." + REFERENCE "RFC 3973 section 4.4.1" + ::= { pimSGEntry 23 } + +pimSGUpstreamPruneLimitTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before the local router may send a (S,G) + Prune message on pimSGRPFIfIndex. This timer is called the + (S,G) Prune Limit Timer in the PIM-DM specification. This + object is zero if the timer is not running. This object is + used only by PIM-DM." + REFERENCE "RFC 2973 section 4.8" + ::= { pimSGEntry 24 } + +pimSGOriginatorState OBJECT-TYPE + SYNTAX INTEGER { + notOriginator (1), + originator (2) + + + + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the router is an originator for an (S,G) message + flow. This corresponds to the state of the per-(S,G) + Originator state machine in the PIM-DM specification. This + object is used only by PIM-DM." + REFERENCE "RFC 3973 section 4.5.2" + ::= { pimSGEntry 25 } + +pimSGSourceActiveTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGOriginatorState is 'originator', this is the time + remaining before the local router reverts to a notOriginator + state. Otherwise, this is zero. This timer is called the + Source Active Timer in the PIM-DM specification. This + object is used only by PIM-DM." + REFERENCE "RFC 3973 section 4.8" + ::= { pimSGEntry 26 } + +pimSGStateRefreshTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGOriginatorState is 'originator', this is the time + remaining before the local router sends a State Refresh + message. Otherwise, this is zero. This timer is called the + State Refresh Timer in the PIM-DM specification. This + object is used only by PIM-DM." + REFERENCE "RFC 3973 section 4.8" + ::= { pimSGEntry 27 } + +-- +-- The PIM (S,G,I) State Table +-- + +pimSGITable OBJECT-TYPE + SYNTAX SEQUENCE OF PimSGIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interface-specific (S,G) + state that PIM has." + + + + REFERENCE "RFC 4601 section 4.1.4" + ::= { pim 7 } + +pimSGIEntry OBJECT-TYPE + SYNTAX PimSGIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimSGITable." + INDEX { pimSGAddressType, + pimSGGrpAddress, + pimSGSrcAddress, + pimSGIIfIndex } + ::= { pimSGITable 1 } + +PimSGIEntry ::= SEQUENCE { + pimSGIIfIndex InterfaceIndex, + pimSGIUpTime TimeTicks, + pimSGILocalMembership TruthValue, + pimSGIJoinPruneState INTEGER, + pimSGIPrunePendingTimer TimeTicks, + pimSGIJoinExpiryTimer TimeTicks, + pimSGIAssertState INTEGER, + pimSGIAssertTimer TimeTicks, + pimSGIAssertWinnerAddressType InetAddressType, + pimSGIAssertWinnerAddress InetAddress, + pimSGIAssertWinnerMetricPref Unsigned32, + pimSGIAssertWinnerMetric Unsigned32 +} + +pimSGIIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex of the interface that this entry corresponds + to." + ::= { pimSGIEntry 1 } + +pimSGIUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimSGIEntry 2 } + +pimSGILocalMembership OBJECT-TYPE + + + + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router has (S,G) local membership on this + interface (resulting from a mechanism such as IGMP or MLD). + This corresponds to local_receiver_include(S,G,I) in the + PIM-SM specification." + REFERENCE "RFC 3376, RFC 3810, RFC 4601 sections 4.1.6, 4.6.1, and + 4.6.2" + ::= { pimSGIEntry 3 } + +pimSGIJoinPruneState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + join (2), + prunePending (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state resulting from (S,G) Join/Prune messages + received on this interface. This corresponds to the state + of the downstream per-interface (S,G) state machine in the + PIM-SM and PIM-DM specification." + REFERENCE "RFC 4601 section 4.5.3 and RFC 3973 section 4.4.2" + ::= { pimSGIEntry 4 } + +pimSGIPrunePendingTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before the local router acts on an (S,G) + Prune message received on this interface, during which the + router is waiting to see whether another downstream router + will override the Prune message. This timer is called the + (S,G) Prune-Pending Timer in the PIM-SM specification. This + object is zero if the timer is not running." + REFERENCE "RFC 4601 sections 4.5.3 and 4.5.4" + ::= { pimSGIEntry 5 } + +pimSGIJoinExpiryTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before (S,G) Join state for this + + + + interface expires. This timer is called the (S,G) Join + Expiry Timer in the PIM-SM specification. This object is + zero if the timer is not running. A value of 'FFFFFFFF'h + indicates an infinite expiry time. This timer is called the + (S,G) Prune Timer in the PIM-DM specification." + REFERENCE "RFC 4601 section 4.10 and RFC 3973 section 4.8" + ::= { pimSGIEntry 6 } + +pimSGIAssertState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + iAmAssertWinner (2), + iAmAssertLoser (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The (S,G) Assert state for this interface. This + corresponds to the state of the per-interface (S,G) Assert + state machine in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.6.1" + ::= { pimSGIEntry 7 } + +pimSGIAssertTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGIAssertState is 'iAmAssertWinner', this is the time + remaining before the local router next sends a (S,G) Assert + message on this interface. If pimSGIAssertState is + 'iAmAssertLoser', this is the time remaining before the + (S,G) Assert state expires. If pimSGIAssertState is + 'noInfo', this is zero. This timer is called the (S,G) + Assert Timer in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.6.1" + ::= { pimSGIEntry 8 } + +pimSGIAssertWinnerAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGIAssertState is 'iAmAssertLoser', this is the + address type of the assert winner; otherwise, this object is + unknown(0)." + ::= { pimSGIEntry 9 } + + + + +pimSGIAssertWinnerAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGIAssertState is 'iAmAssertLoser', this is the + address of the assert winner. The InetAddressType is given + by the pimSGIAssertWinnerAddressType object." + ::= { pimSGIEntry 10 } + +pimSGIAssertWinnerMetricPref OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGIAssertState is 'iAmAssertLoser', this is the + metric preference of the route to the source advertised by + the assert winner; otherwise, this object is zero." + ::= { pimSGIEntry 11 } + +pimSGIAssertWinnerMetric OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGIAssertState is 'iAmAssertLoser', this is the + routing metric of the route to the source advertised by the + assert winner; otherwise, this object is zero." + ::= { pimSGIEntry 12 } + +-- +-- The PIM (S,G,rpt) State Table +-- + +pimSGRptTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimSGRptEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the non-interface specific + (S,G,rpt) state that PIM has." + REFERENCE "RFC 4601 section 4.1.5" + ::= { pim 8 } + +pimSGRptEntry OBJECT-TYPE + SYNTAX PimSGRptEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "An entry (conceptual row) in the pimSGRptTable." + INDEX { pimStarGAddressType, + pimStarGGrpAddress, + pimSGRptSrcAddress } + ::= { pimSGRptTable 1 } + +PimSGRptEntry ::= SEQUENCE { + pimSGRptSrcAddress InetAddress, + pimSGRptUpTime TimeTicks, + pimSGRptUpstreamPruneState INTEGER, + pimSGRptUpstreamOverrideTimer TimeTicks +} + +pimSGRptSrcAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The source address for this entry. The InetAddressType is + given by the pimStarGAddressType object." + ::= { pimSGRptEntry 1 } + +pimSGRptUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimSGRptEntry 2 } + +pimSGRptUpstreamPruneState OBJECT-TYPE + SYNTAX INTEGER { + rptNotJoined (1), + pruned (2), + notPruned (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router should prune the source off the RP + tree. This corresponds to the state of the upstream + (S,G,rpt) state machine for triggered messages in the PIM-SM + specification." + REFERENCE "RFC 4601 section 4.5.9" + ::= { pimSGRptEntry 3 } + +pimSGRptUpstreamOverrideTimer OBJECT-TYPE + + + + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before the local router sends a + triggered (S,G,rpt) Join message on pimStarGRPFIfIndex. + This timer is called the (S,G,rpt) Upstream Override Timer + in the PIM-SM specification. This object is zero if the + timer is not running." + REFERENCE "RFC 4601 section 4.5.9" + ::= { pimSGRptEntry 4 } + +-- +-- The PIM (S,G,rpt,I) State Table +-- + +pimSGRptITable OBJECT-TYPE + SYNTAX SEQUENCE OF PimSGRptIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interface-specific + (S,G,rpt) state that PIM has." + REFERENCE "RFC 4601 section 4.1.5" + ::= { pim 9 } + +pimSGRptIEntry OBJECT-TYPE + SYNTAX PimSGRptIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimSGRptITable." + INDEX { pimStarGAddressType, + pimStarGGrpAddress, + pimSGRptSrcAddress, + pimSGRptIIfIndex } + ::= { pimSGRptITable 1 } + +PimSGRptIEntry ::= SEQUENCE { + pimSGRptIIfIndex InterfaceIndex, + pimSGRptIUpTime TimeTicks, + pimSGRptILocalMembership TruthValue, + pimSGRptIJoinPruneState INTEGER, + pimSGRptIPrunePendingTimer TimeTicks, + pimSGRptIPruneExpiryTimer TimeTicks +} + +pimSGRptIIfIndex OBJECT-TYPE + + + + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex of the interface that this entry corresponds + to." + ::= { pimSGRptIEntry 1 } + +pimSGRptIUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimSGRptIEntry 2 } + +pimSGRptILocalMembership OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router has both (*,G) include local + membership and (S,G) exclude local membership on this + interface (resulting from a mechanism such as IGMP or MLD). + This corresponds to local_receiver_exclude(S,G,I) in the + PIM-SM specification." + REFERENCE "RFC 3376, RFC 3810, RFC 4601 section 4.1.6" + ::= { pimSGRptIEntry 3 } + +pimSGRptIJoinPruneState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + prune (2), + prunePending (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state resulting from (S,G,rpt) Join/Prune messages + received on this interface. This corresponds to the state + of the downstream per-interface (S,G,rpt) state machine in + the PIM-SM specification." + REFERENCE "RFC 4601 section 4.5.4" + ::= { pimSGRptIEntry 4 } + +pimSGRptIPrunePendingTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "The time remaining before the local router starts pruning + this source off the RP tree. This timer is called the + (S,G,rpt) Prune-Pending Timer in the PIM-SM specification. + This object is zero if the timer is not running." + REFERENCE "RFC 4601 section 4.5.4" + ::= { pimSGRptIEntry 5 } + +pimSGRptIPruneExpiryTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before (S,G,rpt) Prune state for this + interface expires. This timer is called the (S,G,rpt) + Prune Expiry Timer in the PIM-SM specification. This object + is zero if the timer is not running. A value of 'FFFFFFFF'h + indicates an infinite expiry time." + REFERENCE "RFC 4601 section 4.5.4" + ::= { pimSGRptIEntry 6 } + +-- +-- The PIM Bidir DF-Election Table +-- + +pimBidirDFElectionTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimBidirDFElectionEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the per-RP Designated + Forwarder (DF) Election state for each interface for all the + RPs in BIDIR mode." + REFERENCE "RFC 5015 section 3.5" + ::= { pim 10 } + +pimBidirDFElectionEntry OBJECT-TYPE + SYNTAX PimBidirDFElectionEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimBidirDFElectionTable." + INDEX { pimBidirDFElectionAddressType, + pimBidirDFElectionRPAddress, + pimBidirDFElectionIfIndex } + ::= { pimBidirDFElectionTable 1 } + + + + +PimBidirDFElectionEntry ::= SEQUENCE { + pimBidirDFElectionAddressType InetAddressType, + pimBidirDFElectionRPAddress InetAddress, + pimBidirDFElectionIfIndex InterfaceIndex, + pimBidirDFElectionWinnerAddressType InetAddressType, + pimBidirDFElectionWinnerAddress InetAddress, + pimBidirDFElectionWinnerUpTime TimeTicks, + pimBidirDFElectionWinnerMetricPref Unsigned32, + pimBidirDFElectionWinnerMetric Unsigned32, + pimBidirDFElectionState INTEGER, + pimBidirDFElectionStateTimer TimeTicks +} + +pimBidirDFElectionAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the RP for which the DF state is being + maintained." + ::= { pimBidirDFElectionEntry 1 } + +pimBidirDFElectionRPAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP address of the RP for which the DF state is being + maintained. The InetAddressType is given by the + pimBidirDFElectionAddressType object." + ::= { pimBidirDFElectionEntry 2 } + +pimBidirDFElectionIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The value of ifIndex for the interface for which the DF + state is being maintained." + ::= { pimBidirDFElectionEntry 3 } + +pimBidirDFElectionWinnerAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary address type of the winner of the DF Election + process. A value of unknown(0) indicates there is currently + + + + no DF." + ::= { pimBidirDFElectionEntry 4 } + +pimBidirDFElectionWinnerAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary IP address of the winner of the DF Election + process. The InetAddressType is given by the + pimBidirDFElectionWinnerAddressType object." + ::= { pimBidirDFElectionEntry 5 } + +pimBidirDFElectionWinnerUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since the current winner (last) became elected as + the DF for this RP." + ::= { pimBidirDFElectionEntry 6 } + +pimBidirDFElectionWinnerMetricPref OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The metric preference advertised by the DF Winner, or zero + if there is currently no DF." + ::= { pimBidirDFElectionEntry 7 } + +pimBidirDFElectionWinnerMetric OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The metric advertised by the DF Winner, or zero if there is + currently no DF." + ::= { pimBidirDFElectionEntry 8 } + +pimBidirDFElectionState OBJECT-TYPE + SYNTAX INTEGER { + dfOffer(1), + dfLose(2), + dfWinner(3), + dfBackoff(4) + } + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "The state of this interface with respect to DF-Election for + this RP. The states correspond to the ones defined in the + BIDIR-PIM specification." + REFERENCE "RFC 5015 section 3.5.3.1" + ::= { pimBidirDFElectionEntry 9 } + +pimBidirDFElectionStateTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum time remaining after which the local router + will expire the current DF state represented by + pimBidirDFElectionState." + ::= { pimBidirDFElectionEntry 10 } + +-- +-- The PIM Static RP Table +-- + +pimStaticRPTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimStaticRPEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is used to manage static configuration of RPs. + + If the group prefixes configured for two or more rows in + this table overlap, the row with the greatest value of + pimStaticRPGrpPrefixLength is used for the overlapping + range." + REFERENCE "RFC 4601 section 3.7" + ::= { pim 11 } + +pimStaticRPEntry OBJECT-TYPE + SYNTAX PimStaticRPEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimStaticRPTable. This + entry is preserved on agent restart." + INDEX { pimStaticRPAddressType, + pimStaticRPGrpAddress, + pimStaticRPGrpPrefixLength } + ::= { pimStaticRPTable 1 } + + + + +PimStaticRPEntry ::= SEQUENCE { + pimStaticRPAddressType InetAddressType, + pimStaticRPGrpAddress InetAddress, + pimStaticRPGrpPrefixLength InetAddressPrefixLength, + pimStaticRPRPAddress InetAddress, + pimStaticRPPimMode PimMode, + pimStaticRPOverrideDynamic TruthValue, + pimStaticRPPrecedence Unsigned32, + pimStaticRPRowStatus RowStatus, + pimStaticRPStorageType StorageType +} + +pimStaticRPAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this entry." + ::= { pimStaticRPEntry 1 } + +pimStaticRPGrpAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group address that, when combined with + pimStaticRPGrpPrefixLength, gives the group prefix for this + entry. The InetAddressType is given by the + pimStaticRPAddressType object. + + This address object is only significant up to + pimStaticRPGrpPrefixLength bits. The remainder of the + address bits are zero. This is especially important for + this index field, which is part of the index of this entry. + Any non-zero bits would signify an entirely different + entry." + ::= { pimStaticRPEntry 2 } + +pimStaticRPGrpPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength (4..128) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group prefix length that, when combined + with pimStaticRPGrpAddress, gives the group prefix for this + entry. The InetAddressType is given by the + pimStaticRPAddressType object. If pimStaticRPAddressType is + 'ipv4' or 'ipv4z', this object must be in the range 4..32. + + + + If pimStaticRPGrpAddressType is 'ipv6' or 'ipv6z', this + object must be in the range 8..128." + ::= { pimStaticRPEntry 3 } + +pimStaticRPRPAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The IP address of the RP to be used for groups within this + group prefix. The InetAddressType is given by the + pimStaticRPAddressType object." + ::= { pimStaticRPEntry 4 } + +pimStaticRPPimMode OBJECT-TYPE + SYNTAX PimMode { ssm(2), asm(3), bidir(4) } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The PIM mode to be used for groups in this group prefix. + + If this object is set to ssm(2), then pimStaticRPRPAddress + must be set to zero. No RP operations are ever possible for + PIM Mode SSM." + REFERENCE "RFC 4601 section 3.7, RFC 3569, and + 'IP Multicast MIB' (August 2007) ipMcastSsmRangeTable" + DEFVAL { asm } + ::= { pimStaticRPEntry 5 } + +pimStaticRPOverrideDynamic OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Whether this static RP configuration will override other + group mappings in this group prefix. If this object is + TRUE, then it will override: + + - RP information learned dynamically for groups in this + group prefix. + + - RP information configured in pimStaticRPTable with + pimStaticRPOverrideDynamic set to FALSE. + + See pimGroupMappingTable for details." + DEFVAL { false } + ::= { pimStaticRPEntry 6 } + + + + +pimStaticRPPrecedence OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value for pimGroupMappingPrecedence to be used for this + static RP configuration. This allows fine control over + which configuration is overridden by this static + configuration. + + If pimStaticRPOverrideDynamic is set to TRUE, all dynamic RP + configuration is overridden by this static configuration, + whatever the value of this object. + + The absolute values of this object have a significance only + on the local router and do not need to be coordinated with + other routers. A setting of this object may have different + effects when applied to other routers. + + Do not use this object unless fine control of static RP + behavior on the local router is required." + ::= { pimStaticRPEntry 7 } + +pimStaticRPRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this row, by which rows in this table can + be created and destroyed. + + This status object cannot be set to active(1) before a valid + value has been written to pimStaticRPRPAddress. + + All writeable objects in this entry can be modified when the + status of this entry is active(1)." + ::= { pimStaticRPEntry 8 } + +pimStaticRPStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row." + DEFVAL { nonVolatile } + ::= { pimStaticRPEntry 9 } + + + +-- +-- The PIM Anycast-RP Set Table +-- + +pimAnycastRPSetTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimAnycastRPSetEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is used to manage Anycast-RP via PIM Register + messages, as opposed to via other protocols such as MSDP + (Multicast Source Discovery Protocol). + + Entries must be configured in this table if and only if the + local router is a member of one or more Anycast-RP sets, + that is, one or more Anycast-RP addresses are assigned to + the local router. Note that if using static RP + configuration, this is in addition to, not instead of, the + pimStaticRPTable entries that must be configured for the + Anycast-RPs. + + The set of rows with the same values of both + pimAnycastRPSetAddressType and pimAnycastRPSetAnycastAddress + corresponds to the Anycast-RP set for that Anycast-RP + address. + + When an Anycast-RP set configuration is active, one entry + per pimAnycastRPSetAnycastAddress corresponds to the local + router. The local router is identified by the + pimAnycastRpSetLocalRouter object. That entry determines + the source address used by the local router when forwarding + PIM Register messages within the Anycast-RP set." + REFERENCE "RFC 4610, RFC 3618" + ::= { pim 12 } + +pimAnycastRPSetEntry OBJECT-TYPE + SYNTAX PimAnycastRPSetEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry corresponds to a single router within a particular + Anycast-RP set. This entry is preserved on agent restart." + INDEX { pimAnycastRPSetAddressType, + pimAnycastRPSetAnycastAddress, + pimAnycastRPSetRouterAddress } + ::= { pimAnycastRPSetTable 1 } + +PimAnycastRPSetEntry ::= SEQUENCE { + + + + pimAnycastRPSetAddressType InetAddressType, + pimAnycastRPSetAnycastAddress InetAddress, + pimAnycastRPSetRouterAddress InetAddress, + pimAnycastRPSetLocalRouter TruthValue, + pimAnycastRPSetRowStatus RowStatus, + pimAnycastRPSetStorageType StorageType +} + +pimAnycastRPSetAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the Anycast-RP address and router + address." + ::= { pimAnycastRPSetEntry 1 } + +pimAnycastRPSetAnycastAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Anycast-RP address. The InetAddressType is given by + the pimAnycastRPSetAddressType object." + ::= { pimAnycastRPSetEntry 2 } + +pimAnycastRPSetRouterAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address of a router that is a member of the Anycast-RP + set. The InetAddressType is given by the + pimAnycastRPSetAddressType object. + + This address differs from pimAnycastRPSetAnycastAddress. + Equal values for these two addresses in a single entry are + not permitted. That would cause a Register loop." + ::= { pimAnycastRPSetEntry 3 } + +pimAnycastRPSetLocalRouter OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether this entry corresponds to the local router." + ::= { pimAnycastRPSetEntry 4 } + + + + +pimAnycastRPSetRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this row, by which rows in this table can + be created and destroyed. + + This status object can be set to active(1) without setting + any other columnar objects in this entry. + + All writeable objects in this entry can be modified when the + status of this entry is active(1)." + ::= { pimAnycastRPSetEntry 5 } + +pimAnycastRPSetStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row." + DEFVAL { nonVolatile } + ::= { pimAnycastRPSetEntry 6 } + +-- +-- The PIM Group Mapping Table +-- + +pimGroupMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimGroupMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing mappings from multicast + group prefixes to the PIM mode and RP address to use for + groups within that group prefix. + + Rows in this table are created for a variety of reasons, + indicated by the value of the pimGroupMappingOrigin object. + + - Rows with a pimGroupMappingOrigin value of 'fixed' are + created automatically by the router at startup, to + correspond to the well-defined prefixes of link-local and + unroutable group addresses. These rows are never + destroyed. + + + + + - Rows with a pimGroupMappingOrigin value of 'embedded' are + created by the router to correspond to group prefixes + that are to be treated as being in Embedded-RP format. + + - Rows with a pimGroupMappingOrigin value of 'configRp' are + created and destroyed as a result of rows in the + pimStaticRPTable being created and destroyed. + + - Rows with a pimGroupMappingOrigin value of 'configSsm' + are created and destroyed as a result of configuration of + SSM address ranges to the local router. + + - Rows with a pimGroupMappingOrigin value of 'bsr' are + created as a result of running the PIM Bootstrap Router + (BSR) mechanism. If the local router is not the elected + BSR, these rows are created to correspond to group + prefixes in the PIM Bootstrap messages received from the + elected BSR. If the local router is the elected BSR, + these rows are created to correspond to group prefixes in + the PIM Bootstrap messages that the local router sends. + In either case, these rows are destroyed when the group + prefixes are timed out by the BSR mechanism. + + - Rows with a pimGroupMappingOrigin value of 'other' are + created and destroyed according to some other mechanism + not specified here. + + Given the collection of rows in this table at any point in + time, the PIM mode and RP address to use for a particular + group is determined using the following algorithm. + + 1. From the set of all rows, the subset whose group prefix + contains the group in question are selected. + + 2. If there are no such rows, then the group mapping is + undefined. + + 3. If there are multiple selected rows, and a subset is + defined by pimStaticRPTable (pimGroupMappingOrigin value + of 'configRp') with pimStaticRPOverrideDynamic set to + TRUE, then this subset is selected. + + 4. From the selected subset of rows, the subset that have + the greatest value of pimGroupMappingGrpPrefixLength are + selected. + + 5. If there are still multiple selected rows, the subset + that has the highest precedence (the lowest numerical + + + + value for pimGroupMappingPrecedence) is selected. + + 6. If there are still multiple selected rows, the row + selected is implementation dependent; the implementation + might or might not apply the PIM hash function to select + the row. + + 7. The group mode to use is given by the value of + pimGroupMappingPimMode from the single selected row; the + RP to use is given by the value of + pimGroupMappingRPAddress, unless pimGroupMappingOrigin is + 'embedded', in which case, the RP is extracted from the + group address in question." + REFERENCE "RFC 4601 section 3.7, RFC 3956, and RFC 4610" + ::= { pim 13 } + +pimGroupMappingEntry OBJECT-TYPE + SYNTAX PimGroupMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimGroupMappingTable." + INDEX { pimGroupMappingOrigin, + pimGroupMappingAddressType, + pimGroupMappingGrpAddress, + pimGroupMappingGrpPrefixLength, + pimGroupMappingRPAddressType, + pimGroupMappingRPAddress } + ::= { pimGroupMappingTable 1 } + +PimGroupMappingEntry ::= SEQUENCE { + pimGroupMappingOrigin PimGroupMappingOriginType, + pimGroupMappingAddressType InetAddressType, + pimGroupMappingGrpAddress InetAddress, + pimGroupMappingGrpPrefixLength InetAddressPrefixLength, + pimGroupMappingRPAddressType InetAddressType, + pimGroupMappingRPAddress InetAddress, + pimGroupMappingPimMode PimMode, + pimGroupMappingPrecedence Unsigned32 +} + +pimGroupMappingOrigin OBJECT-TYPE + SYNTAX PimGroupMappingOriginType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mechanism by which this group mapping was learned." + ::= { pimGroupMappingEntry 1 } + + + +pimGroupMappingAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the IP multicast group prefix." + ::= { pimGroupMappingEntry 2 } + +pimGroupMappingGrpAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address that, when combined with + pimGroupMappingGrpPrefixLength, gives the group prefix for + this mapping. The InetAddressType is given by the + pimGroupMappingAddressType object. + + This address object is only significant up to + pimGroupMappingGrpPrefixLength bits. The remainder of the + address bits are zero. This is especially important for + this index field, which is part of the index of this entry. + Any non-zero bits would signify an entirely different + entry." + ::= { pimGroupMappingEntry 3 } + +pimGroupMappingGrpPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength (4..128) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group prefix length that, when combined + with pimGroupMappingGrpAddress, gives the group prefix for + this mapping. The InetAddressType is given by the + pimGroupMappingAddressType object. If + pimGroupMappingAddressType is 'ipv4' or 'ipv4z', this + object must be in the range 4..32. If + pimGroupMappingAddressType is 'ipv6' or 'ipv6z', this object + must be in the range 8..128." + ::= { pimGroupMappingEntry 4 } + +pimGroupMappingRPAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the RP to be used for groups within + this group prefix, or unknown(0) if no RP is to be used or + + + + if the RP address is unknown. This object must be + unknown(0) if pimGroupMappingPimMode is ssm(2), or if + pimGroupMappingOrigin is embedded(6)." + ::= { pimGroupMappingEntry 5 } + +pimGroupMappingRPAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP address of the RP to be used for groups within this + group prefix. The InetAddressType is given by the + pimGroupMappingRPAddressType object." + ::= { pimGroupMappingEntry 6 } + +pimGroupMappingPimMode OBJECT-TYPE + SYNTAX PimMode + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The PIM mode to be used for groups in this group prefix." + ::= { pimGroupMappingEntry 7 } + +pimGroupMappingPrecedence OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The precedence of this row, used in the algorithm that + determines which row applies to a given group address + (described above). Numerically higher values for this + object indicate lower precedences, with the value zero + denoting the highest precedence. + + The absolute values of this object have a significance only + on the local router and do not need to be coordinated with + other routers." + ::= { pimGroupMappingEntry 8 } + +-- +-- PIM Notifications +-- + +pimNeighborLoss NOTIFICATION-TYPE + OBJECTS { pimNeighborUpTime } + STATUS current + DESCRIPTION + "A pimNeighborLoss notification signifies the loss of an + + + + adjacency with a neighbor. This notification should be + generated when the neighbor timer expires, and the router + has no other neighbors on the same interface with the same + IP version and a lower IP address than itself. + + This notification is generated whenever the counter + pimNeighborLossCount is incremented, subject + to the rate limit specified by + pimNeighborLossNotificationPeriod." + REFERENCE "RFC 4601 section 4.3.2" + ::= { pimNotifications 1 } + +pimInvalidRegister NOTIFICATION-TYPE + OBJECTS { pimGroupMappingPimMode, + pimInvalidRegisterAddressType, + pimInvalidRegisterOrigin, + pimInvalidRegisterGroup, + pimInvalidRegisterRp + } + STATUS current + DESCRIPTION + "A pimInvalidRegister notification signifies that an invalid + PIM Register message was received by this device. + + This notification is generated whenever the counter + pimInvalidRegisterMsgsRcvd is incremented, subject to the + rate limit specified by + pimInvalidRegisterNotificationPeriod." + REFERENCE "RFC 4601 section 4.4.2" + ::= { pimNotifications 2 } + +pimInvalidJoinPrune NOTIFICATION-TYPE + OBJECTS { pimGroupMappingPimMode, + pimInvalidJoinPruneAddressType, + pimInvalidJoinPruneOrigin, + pimInvalidJoinPruneGroup, + pimInvalidJoinPruneRp, + pimNeighborUpTime + } + STATUS current + DESCRIPTION + "A pimInvalidJoinPrune notification signifies that an + invalid PIM Join/Prune message was received by this device. + + This notification is generated whenever the counter + pimInvalidJoinPruneMsgsRcvd is incremented, subject to the + rate limit specified by + pimInvalidJoinPruneNotificationPeriod." + + + + REFERENCE "RFC 4601 section 4.5.2" + ::= { pimNotifications 3 } + +pimRPMappingChange NOTIFICATION-TYPE + OBJECTS { pimGroupMappingPimMode, + pimGroupMappingPrecedence + } + STATUS current + DESCRIPTION + "A pimRPMappingChange notification signifies a change to the + active RP mapping on this device. + + This notification is generated whenever the counter + pimRPMappingChangeCount is incremented, subject to the + rate limit specified by + pimRPMappingChangeNotificationPeriod." + ::= { pimNotifications 4 } + +pimInterfaceElection NOTIFICATION-TYPE + OBJECTS { pimInterfaceAddressType, + pimInterfaceAddress } + STATUS current + DESCRIPTION + "A pimInterfaceElection notification signifies that a new DR + or DF has been elected on a network. + + This notification is generated whenever the counter + pimInterfaceElectionWinCount is incremented, subject to the + rate limit specified by + pimInterfaceElectionNotificationPeriod." + REFERENCE "RFC 4601 section 4.3.2 and RFC 5015 section 3.5.2" + ::= { pimNotifications 5 } + +-- +-- Conformance Information +-- + +pimMIBConformance OBJECT IDENTIFIER ::= { pimStdMIB 2 } +pimMIBCompliances OBJECT IDENTIFIER ::= { pimMIBConformance 1 } +pimMIBGroups OBJECT IDENTIFIER ::= { pimMIBConformance 2 } + +-- +-- Compliance Statements +-- + +pimMIBComplianceAsm MODULE-COMPLIANCE + STATUS current + DESCRIPTION + + + + "The compliance statement for routers which are running + PIM-SM (Sparse Mode)." + MODULE -- this module + MANDATORY-GROUPS { pimTopologyGroup, + pimSsmGroup, + pimRPConfigGroup, + pimSmGroup } + + GROUP pimNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimTuningParametersGroup + DESCRIPTION + "This group is optional." + + GROUP pimRouterStatisticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimAnycastRpGroup + DESCRIPTION + "This group is optional." + + GROUP pimStaticRPPrecedenceGroup + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationObjects + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimDiagnosticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimDeviceStorageGroup + DESCRIPTION + "This group is optional." + + ::= { pimMIBCompliances 1 } + +pimMIBComplianceBidir MODULE-COMPLIANCE + STATUS current + + + + DESCRIPTION + "The compliance statement for routers which are running + Bidir-PIM." + MODULE -- this module + MANDATORY-GROUPS { pimTopologyGroup, + pimRPConfigGroup, + pimSmGroup, + pimBidirGroup } + + GROUP pimNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimTuningParametersGroup + DESCRIPTION + "This group is optional." + + GROUP pimRouterStatisticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimAnycastRpGroup + DESCRIPTION + "This group is optional." + + GROUP pimStaticRPPrecedenceGroup + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationObjects + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimDiagnosticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimDeviceStorageGroup + DESCRIPTION + "This group is optional." + + ::= { pimMIBCompliances 2 } + +pimMIBComplianceSsm MODULE-COMPLIANCE + + + + STATUS current + DESCRIPTION + "The compliance statement for routers which are running + PIM SSM (Source Specific Multicast)." + MODULE -- this module + MANDATORY-GROUPS { pimTopologyGroup, + pimSsmGroup } + + GROUP pimNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimTuningParametersGroup + DESCRIPTION + "This group is optional." + + GROUP pimRouterStatisticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationObjects + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimDiagnosticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimDeviceStorageGroup + DESCRIPTION + "This group is optional." + + ::= { pimMIBCompliances 3 } + +pimMIBComplianceDm MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for routers which are running + PIM-DM (Dense Mode)." + MODULE -- this module + MANDATORY-GROUPS { pimTopologyGroup, + pimSsmGroup, + pimRPConfigGroup, + pimSmGroup, + + + + pimDmGroup } + + GROUP pimNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimTuningParametersGroup + DESCRIPTION + "This group is optional." + + GROUP pimRouterStatisticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimAnycastRpGroup + DESCRIPTION + "This group is optional." + + GROUP pimStaticRPPrecedenceGroup + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationObjects + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimDiagnosticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimDeviceStorageGroup + DESCRIPTION + "This group is optional." + + ::= { pimMIBCompliances 4 } + +-- +-- Units of Conformance +-- + +pimTopologyGroup OBJECT-GROUP + OBJECTS { pimInterfaceAddressType, + pimInterfaceAddress, + pimInterfaceGenerationIDValue, + + + + pimInterfaceDR, + pimInterfaceDRPriorityEnabled, + pimInterfaceHelloHoldtime, + pimInterfaceJoinPruneHoldtime, + pimInterfaceLanDelayEnabled, + pimInterfaceEffectPropagDelay, + pimInterfaceEffectOverrideIvl, + pimInterfaceSuppressionEnabled, + pimInterfaceBidirCapable, + pimNeighborGenerationIDPresent, + pimNeighborGenerationIDValue, + pimNeighborUpTime, + pimNeighborExpiryTime, + pimNeighborDRPriorityPresent, + pimNeighborDRPriority, + pimNeighborLanPruneDelayPresent, + pimNeighborTBit, + pimNeighborPropagationDelay, + pimNeighborOverrideInterval, + pimNeighborBidirCapable, + pimNbrSecAddress + } + STATUS current + DESCRIPTION + "A collection of read-only objects used to report local PIM + topology." + ::= { pimMIBGroups 1 } + +pimNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { pimNeighborLoss } + STATUS current + DESCRIPTION + "A collection of notifications for signaling important PIM + events." + ::= { pimMIBGroups 2 } + +pimTuningParametersGroup OBJECT-GROUP + OBJECTS { pimKeepalivePeriod, + pimRegisterSuppressionTime, + pimInterfaceDRPriority, + pimInterfaceHelloInterval, + pimInterfaceTrigHelloInterval, + pimInterfaceJoinPruneInterval, + pimInterfacePropagationDelay, + pimInterfaceOverrideInterval, + pimInterfaceDomainBorder, + pimInterfaceStubInterface, + pimInterfaceStatus, + + + + pimInterfaceStorageType + } + STATUS current + DESCRIPTION + "A collection of writeable objects used to configure PIM + behavior and to tune performance." + ::= { pimMIBGroups 3 } + +pimRouterStatisticsGroup OBJECT-GROUP + OBJECTS { pimStarGEntries, + pimStarGIEntries, + pimSGEntries, + pimSGIEntries, + pimSGRptEntries, + pimSGRptIEntries + } + STATUS current + DESCRIPTION + "A collection of statistics global to the PIM router." + ::= { pimMIBGroups 4 } + +pimSsmGroup OBJECT-GROUP + OBJECTS { pimSGUpTime, + pimSGPimMode, + pimSGUpstreamJoinState, + pimSGUpstreamJoinTimer, + pimSGUpstreamNeighbor, + pimSGRPFIfIndex, + pimSGRPFNextHopType, + pimSGRPFNextHop, + pimSGRPFRouteProtocol, + pimSGRPFRouteAddress, + pimSGRPFRoutePrefixLength, + pimSGRPFRouteMetricPref, + pimSGRPFRouteMetric, + pimSGSPTBit, + pimSGKeepaliveTimer, + pimSGDRRegisterState, + pimSGDRRegisterStopTimer, + pimSGRPRegisterPMBRAddressType, + pimSGRPRegisterPMBRAddress, + pimSGIUpTime, + pimSGILocalMembership, + pimSGIJoinPruneState, + pimSGIPrunePendingTimer, + pimSGIJoinExpiryTimer, + pimSGIAssertState, + pimSGIAssertTimer, + + + + pimSGIAssertWinnerAddressType, + pimSGIAssertWinnerAddress, + pimSGIAssertWinnerMetricPref, + pimSGIAssertWinnerMetric + } + STATUS current + DESCRIPTION + "A collection of objects to support management of PIM + routers running the PIM SSM (Source Specific Multicast) + protocol, in PIM mode SM (Sparse Mode)." + ::= { pimMIBGroups 5 } + +pimRPConfigGroup OBJECT-GROUP + OBJECTS { pimStaticRPRPAddress, + pimStaticRPPimMode, + pimStaticRPOverrideDynamic, + pimStaticRPRowStatus, + pimStaticRPStorageType, + pimGroupMappingPimMode, + pimGroupMappingPrecedence + } + STATUS current + DESCRIPTION + "A collection of objects to support configuration of RPs + (Rendezvous Points) and Group Mappings." + ::= { pimMIBGroups 6 } + +pimSmGroup OBJECT-GROUP + OBJECTS { pimStarGUpTime, + pimStarGPimMode, + pimStarGRPAddressType, + pimStarGRPAddress, + pimStarGPimModeOrigin, + pimStarGRPIsLocal, + pimStarGUpstreamJoinState, + pimStarGUpstreamJoinTimer, + pimStarGUpstreamNeighborType, + pimStarGUpstreamNeighbor, + pimStarGRPFIfIndex, + pimStarGRPFNextHopType, + pimStarGRPFNextHop, + pimStarGRPFRouteProtocol, + pimStarGRPFRouteAddress, + pimStarGRPFRoutePrefixLength, + pimStarGRPFRouteMetricPref, + pimStarGRPFRouteMetric, + pimStarGIUpTime, + pimStarGILocalMembership, + + + + pimStarGIJoinPruneState, + pimStarGIPrunePendingTimer, + pimStarGIJoinExpiryTimer, + pimStarGIAssertState, + pimStarGIAssertTimer, + pimStarGIAssertWinnerAddressType, + pimStarGIAssertWinnerAddress, + pimStarGIAssertWinnerMetricPref, + pimStarGIAssertWinnerMetric, + pimSGRptUpTime, + pimSGRptUpstreamPruneState, + pimSGRptUpstreamOverrideTimer, + pimSGRptIUpTime, + pimSGRptILocalMembership, + pimSGRptIJoinPruneState, + pimSGRptIPrunePendingTimer, + pimSGRptIPruneExpiryTimer + } + STATUS current + DESCRIPTION + "A collection of objects to support management of PIM + routers running PIM-SM (Sparse Mode). The groups + pimSsmGroup and pimRPConfigGroup are also required." + ::= { pimMIBGroups 7 } + +pimBidirGroup OBJECT-GROUP + OBJECTS { pimInterfaceDFElectionRobustness, + pimBidirDFElectionWinnerAddressType, + pimBidirDFElectionWinnerAddress, + pimBidirDFElectionWinnerUpTime, + pimBidirDFElectionWinnerMetricPref, + pimBidirDFElectionWinnerMetric, + pimBidirDFElectionState, + pimBidirDFElectionStateTimer + } + STATUS current + DESCRIPTION + "A collection of objects to support management of PIM + routers running BIDIR mode. The groups pimSsmGroup, + pimSmGroup and pimRPConfigGroup are also required." + ::= { pimMIBGroups 8 } + +pimAnycastRpGroup OBJECT-GROUP + OBJECTS { pimAnycastRPSetLocalRouter, + pimAnycastRPSetRowStatus, + pimAnycastRPSetStorageType + } + STATUS current + + + + DESCRIPTION + "A collection of objects to support management of the PIM + Anycast-RP mechanism." + ::= { pimMIBGroups 9 } + +pimStaticRPPrecedenceGroup OBJECT-GROUP + OBJECTS { pimStaticRPPrecedence } + STATUS current + DESCRIPTION + "A collection of objects to allow fine control of + interactions between static RP configuration and + dynamically acquired group to RP mappings." + ::= { pimMIBGroups 10 } + +pimNetMgmtNotificationObjects OBJECT-GROUP + OBJECTS { pimInvalidRegisterNotificationPeriod, + pimInvalidRegisterMsgsRcvd, + pimInvalidRegisterAddressType, + pimInvalidRegisterOrigin, + pimInvalidRegisterGroup, + pimInvalidRegisterRp, + pimInvalidJoinPruneNotificationPeriod, + pimInvalidJoinPruneMsgsRcvd, + pimInvalidJoinPruneAddressType, + pimInvalidJoinPruneOrigin, + pimInvalidJoinPruneGroup, + pimInvalidJoinPruneRp, + pimRPMappingNotificationPeriod, + pimRPMappingChangeCount, + pimInterfaceElectionNotificationPeriod, + pimInterfaceElectionWinCount + } + STATUS current + DESCRIPTION + "A collection of objects to support notification of PIM + network management events." + ::= { pimMIBGroups 11 } + +pimNetMgmtNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { pimInvalidRegister, + pimInvalidJoinPrune, + pimRPMappingChange, + pimInterfaceElection + } + STATUS current + DESCRIPTION + "A collection of notifications for signaling PIM network + management events." + + + + ::= { pimMIBGroups 12 } + +pimDiagnosticsGroup OBJECT-GROUP + OBJECTS { pimInAsserts, + pimOutAsserts, + pimLastAssertInterface, + pimLastAssertGroupAddressType, + pimLastAssertGroupAddress, + pimLastAssertSourceAddressType, + pimLastAssertSourceAddress, + pimNeighborLossNotificationPeriod, + pimNeighborLossCount + } + STATUS current + DESCRIPTION + "Objects providing additional diagnostics related to a PIM + router." + ::= { pimMIBGroups 13 } + +pimDmGroup OBJECT-GROUP + OBJECTS { + pimRefreshInterval, + pimInterfacePruneLimitInterval, + pimInterfaceGraftRetryInterval, + pimInterfaceSRPriorityEnabled, + pimNeighborSRCapable, + pimSGUpstreamPruneState, + pimSGUpstreamPruneLimitTimer, + pimSGOriginatorState, + pimSGSourceActiveTimer, + pimSGStateRefreshTimer + } + STATUS current + DESCRIPTION + "A collection of objects required for management of PIM + Dense Mode (PIM-DM) function. The groups pimSsmGroup and + pimSmGroup are also required." + REFERENCE "RFC 3973" + ::= { pimMIBGroups 14 } + + + + + + + + + + + + +pimDeviceStorageGroup OBJECT-GROUP + OBJECTS { pimDeviceConfigStorageType + } + STATUS current + DESCRIPTION + "An object that specifies the volatility of global PIM + configuration settings on this device." + ::= { pimMIBGroups 15 } + +END \ No newline at end of file diff --git a/mibs/PW-ENET-STD-MIB.txt b/mibs/PW-ENET-STD-MIB.txt new file mode 100644 index 00000000..35178c9c --- /dev/null +++ b/mibs/PW-ENET-STD-MIB.txt @@ -0,0 +1,504 @@ +PW-ENET-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + OBJECT-TYPE, MODULE-IDENTITY, Unsigned32, mib-2 + FROM SNMPv2-SMI -- [RFC2578] + + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF -- [RFC2580] + + StorageType, RowStatus + FROM SNMPv2-TC -- [RFC2579] + + InterfaceIndexOrZero + FROM IF-MIB -- [RFC2863] + + ZeroBasedCounter32 + FROM RMON2-MIB -- [RFC4502] + + pwIndex + FROM PW-STD-MIB -- [RFC5601] + + VlanIdOrAnyOrNone + FROM Q-BRIDGE-MIB; -- [RFC4363] + +pwEnetStdMIB MODULE-IDENTITY + LAST-UPDATED "200906150000Z" -- 15 June 2009 00:00:00 GMT + + ORGANIZATION "Pseudowire Edge-to-Edge Emulation (PWE3) Working + Group" + + CONTACT-INFO + "David Zelig + Email: davidz@oversi.com + + Thomas D. Nadeau + Email: tom.nadeau@bt.com + " + DESCRIPTION + "This MIB module describes a model for managing Ethernet + point-to-point pseudowire services over a Packet + Switched Network (PSN). + + Copyright (c) 2009 IETF Trust and the persons identified + as authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the following + conditions are met: + + - Redistributions of source code must retain the above + copyright notice, this list of conditions and the following + disclaimer. + + - Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + + - Neither the name of Internet Society, IETF or IETF Trust, nor + the names of specific contributors, may be used to endorse or + promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + This version of this MIB module is part of RFC 5603; + + see the RFC itself for full legal notices." + + -- Revision history + REVISION "200906150000Z" -- 15 June 2009 00:00:00 GMT + DESCRIPTION "Initial version published as part of RFC 5603." + + ::= { mib-2 180 } + +pwEnetObjects OBJECT IDENTIFIER ::= { pwEnetStdMIB 1 } +pwEnetConformance OBJECT IDENTIFIER ::= { pwEnetStdMIB 2 } + +-- +-- Ethernet PW table +-- + +pwEnetTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwEnetEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains the index to the Ethernet tables + associated with this Ethernet PW, the VLAN configuration, + and the VLAN mode." + ::= { pwEnetObjects 1 } + +pwEnetEntry OBJECT-TYPE + SYNTAX PwEnetEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is indexed by the same index that was created + for the associated entry in the PW generic table in the + + PW-STD-MIB module. + The pwIndex and the pwEnetPwInstance are used as indexes + to allow multiple VLANs to exist on the same PW. + + An entry is created in this table by the agent for every + entry in the pwTable with a pwType of 'ethernetTagged' + or 'ethernet'. Additional rows may be created by the + operator or the agent if multiple entries are required for + the same PW. + + The value of pwEnetPwInstance can be arbitrarily selected + to make the row unique; however, implementations that know + the VLAN field value when the row is created MAY use the + value of the VLAN itself for better readability and + backward compatibility with older versions of this MIB + + module. + + This table provides Ethernet port mapping and VLAN + configuration for each Ethernet PW. + + All read-create objects in this table MAY be changed at any + time; however, change of some objects (for example, + pwEnetVlanMode) during the PW forwarding state MAY cause traffic + disruption. + + Manual entries in this table SHOULD be preserved after a + reboot, and the agent MUST ensure the integrity of those + entries. If the set of entries of a specific row is found to + be inconsistent after reboot, the PW pwOperStatus MUST be + declared as notPresent(5). + " + + INDEX { pwIndex, pwEnetPwInstance } + ::= { pwEnetTable 1 } + +PwEnetEntry ::= SEQUENCE { + pwEnetPwInstance Unsigned32, + pwEnetPwVlan VlanIdOrAnyOrNone, + pwEnetVlanMode INTEGER, + pwEnetPortVlan VlanIdOrAnyOrNone, + + pwEnetPortIfIndex InterfaceIndexOrZero, + pwEnetPwIfIndex InterfaceIndexOrZero, + + pwEnetRowStatus RowStatus, + pwEnetStorageType StorageType + } + +pwEnetPwInstance OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "If multiple rows are mapped to the same PW, this index is + used to uniquely identify the individual row. + If the value of the VLAN field is known at the time of + row creation, the value of pwEnetPwVlan MAY be used + for better readability and backward compatibility with + older versions of this MIB module. Otherwise, the value + 1 SHOULD be set to the first row for each pwIndex + for better readability and in order that the management + application will know in advance how to access the + first row when it was created by the agent. + + " + ::= { pwEnetEntry 1 } + +pwEnetPwVlan OBJECT-TYPE + SYNTAX VlanIdOrAnyOrNone + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object defines the (service-delimiting) VLAN field + value on the PW. The value 4095 MUST be used if the + object is not applicable, for example, when mapping all + packets from an Ethernet port to this PW (raw mode). + The value 0 MUST be set to indicate untagged frames + (from the PW point of view), i.e., when pwEnetVlanMode + equals 'noChange' and pwEnetPortVlan equals 0." + ::= { pwEnetEntry 2 } + +pwEnetVlanMode OBJECT-TYPE + SYNTAX INTEGER { + other(0), + portBased(1), + noChange(2), + changeVlan(3), + addVlan(4), + removeVlan(5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the mode of VLAN handling between the + port or the virtual port associated with the PW and the + PW encapsulation. + + - 'other' indicates an operation that is not defined by + this MIB module. + + - 'portBased' indicates that the forwarder will forward + packets between the port and the PW independent of their + structure (i.e., there are no service-delimiting VLAN tags + from the PE standpoint). + + - 'noChange' indicates that the PW contains the original + user VLAN, as specified in pwEnetPortVlan; i.e., the + VLAN on the PE-CE link is the service-delimiting tag + and is kept 'as is' on the PW. + + - 'changeVlan' indicates that the VLAN field on the PW + may be different than the VLAN field on the user's + + port. The VLAN on the PE-CE link is the service-delimiting + tag but has a different value on the PW. + + - 'addVlan' indicates that a VLAN field will be added + on the PSN-bound direction (i.e., on the PW). pwEnetPwVlan + indicates the value that will be added. + + - 'removeVlan' indicates that the encapsulation on the + PW does not include the service-delimiting VLAN field. + Note that PRI bits transparency is lost in this case. + + - Implementation of 'portsbased', 'removeVlan', 'addVlan' + 'other', and 'changeVlan' is OPTIONAL. + " + DEFVAL { noChange } + ::= { pwEnetEntry 3 } + +pwEnetPortVlan OBJECT-TYPE + SYNTAX VlanIdOrAnyOrNone + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object defines if the mapping between the original port + (physical port or VPLS virtual port) to the PW is VLAN based + or not. In case of VLAN mapping, this object indicates the + VLAN value on the original port. + + The value of '4095' MUST be used if the whole original port + traffic is mapped to the same PW. Note that a pwType of + 'ethernetTagged' can still be used if service-delimiting tag + is added on the PW (pwEnetVlanMode equals 'addVlan'). + + This object MUST be equal to pwEnetPwVlan if pwEnetVlanMode + equals 'noChange'. + + The value 0 indicates that packets without a VLAN field + (i.e., untagged frames) on the port are associated to this + PW. This allows the same behavior as assigning 'Default + VLAN' to untagged frames. + " + DEFVAL { 4095 } + ::= { pwEnetEntry 4 } + +pwEnetPortIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + "This object is used to specify the ifIndex of the Ethernet + port associated with this PW for point-to-point Ethernet + service, or the ifIndex of the virtual interface of the + VPLS instance associated with the PW if the service is + VPLS. Two rows in this table can point to the same ifIndex + only if there is no overlap of VLAN values specified in + pwEnetPortVlan that are associated with this port. + + A value of zero indicates that association to an ifIndex is + not yet known." + + ::= { pwEnetEntry 5 } + +pwEnetPwIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the PW is modeled as an ifIndex in the ifTable, this + object indicates the value of the ifIndex representing the + Ethernet PW on the PSN side in the Etherlike-MIB. Note that + this value may be different from the value of pwIfIndex + that represents the ifIndex of the PW for ifType 'pw'." + DEFVAL { 0 } + ::= { pwEnetEntry 6 } + +pwEnetRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object enables creating, deleting, and modifying this + row." + ::= { pwEnetEntry 7 } + +pwEnetStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the storage type of this row." + DEFVAL { nonVolatile } + ::= { pwEnetEntry 8 } + +-- +-- Ethernet PW Statistics Table +-- + + +pwEnetStatsTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwEnetStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains statistical counters specific for + Ethernet PW." + ::= { pwEnetObjects 2 } + +pwEnetStatsEntry OBJECT-TYPE + SYNTAX PwEnetStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry represents the statistics gathered for the + PW carrying the Ethernet." + INDEX { pwIndex } + ::= { pwEnetStatsTable 1 } + + +PwEnetStatsEntry ::= SEQUENCE { + pwEnetStatsIllegalVlan ZeroBasedCounter32, + pwEnetStatsIllegalLength ZeroBasedCounter32 +} + +pwEnetStatsIllegalVlan OBJECT-TYPE + SYNTAX ZeroBasedCounter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets received (from the PSN) on this PW + with either an illegal VLAN field, a missing VLAN field + when one was expected, or an excessive VLAN field when + it was not expected. This counter may not be applicable + in some cases, and MUST return the value of zero in + such a case." + ::= { pwEnetStatsEntry 1 } + +pwEnetStatsIllegalLength OBJECT-TYPE + SYNTAX ZeroBasedCounter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets that were received with an illegal + Ethernet packet length on this PW. An illegal length is + defined as being greater than the value in the advertised + MTU supported, or shorter than the allowed Ethernet packet + size." + + ::= { pwEnetStatsEntry 2 } + +--- +--- Conformance description +--- + +pwEnetGroups OBJECT IDENTIFIER ::= { pwEnetConformance 1 } +pwEnetCompliances OBJECT IDENTIFIER ::= { pwEnetConformance 2 } + +-- Compliance requirement for fully compliant implementations + +pwEnetModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provides full + support for the PW-ENET-STD-MIB module. Such devices + can then be monitored and also be configured using + this MIB module." + MODULE -- this module + MANDATORY-GROUPS { + pwEnetGroup, + pwEnetStatsGroup + } + + OBJECT pwEnetVlanMode + DESCRIPTION "An implementation MUST support at least the value + noChange(2)." + + OBJECT pwEnetPwIfIndex + MIN-ACCESS read-only + DESCRIPTION "Write access and values other than zero are + required only for implementations that support + modeling the Ethernet PW in the Etherlike-MIB." + OBJECT pwEnetRowStatus + SYNTAX RowStatus { active(1), notInService(2), + notReady(3) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + MIN-ACCESS read-only + DESCRIPTION "Support for createAndWait is not required. Support + of notReady is not required for implementations that + do not support signaling. + Support of read-write is not required for + implementations that do not support more than one + VLAN mapping to the same PW." + ::= { pwEnetCompliances 1 } + + +-- Compliance requirement for read-only compliant implementations + +pwEnetModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provide read- + only support for the PW-ENET-STD-MIB module. Such + devices can then be monitored but cannot be configured + using this MIB module." + + MODULE -- this module + MANDATORY-GROUPS { pwEnetGroup, + pwEnetStatsGroup + } + + OBJECT pwEnetPwVlan + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwEnetVlanMode + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. An implementation + MUST support at least the value noChange(2)." + + OBJECT pwEnetPortVlan + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwEnetPortIfIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwEnetPwIfIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. Values other than + zero are required only for implementations that + support modeling the Ethernet PW in the + Etherlike-MIB." + + OBJECT pwEnetRowStatus + SYNTAX RowStatus { active(1), notInService(2), + notReady(3) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. Support + of notReady is not required for implementations that + do not support signaling." + + OBJECT pwEnetStorageType + + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { pwEnetCompliances 2 } + +-- Units of conformance + +pwEnetGroup OBJECT-GROUP + OBJECTS { + pwEnetPwVlan, + pwEnetVlanMode, + pwEnetPortVlan, + pwEnetPortIfIndex, + pwEnetPwIfIndex, + pwEnetRowStatus, + pwEnetStorageType + } + STATUS current + DESCRIPTION + "Collection of objects for basic Ethernet PW configuration." + ::= { pwEnetGroups 1 } + +pwEnetStatsGroup OBJECT-GROUP + OBJECTS { + pwEnetStatsIllegalVlan, + pwEnetStatsIllegalLength + } + STATUS current + DESCRIPTION + "Collection of objects counting various PW level errors." + ::= { pwEnetGroups 2 } + +END \ No newline at end of file diff --git a/mibs/PW-MPLS-STD-MIB.txt b/mibs/PW-MPLS-STD-MIB.txt new file mode 100644 index 00000000..727900ef --- /dev/null +++ b/mibs/PW-MPLS-STD-MIB.txt @@ -0,0 +1,951 @@ + PW-MPLS-STD-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, mib-2 + FROM SNMPv2-SMI -- [RFC2578] + + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF -- [RFC2580] + + StorageType + FROM SNMPv2-TC -- [RFC2579] + + InterfaceIndexOrZero + FROM IF-MIB -- [RFC2863] + + MplsTunnelIndex, MplsTunnelInstanceIndex, + MplsLdpIdentifier, MplsLsrIdentifier + FROM MPLS-TC-STD-MIB -- [RFC3811] + + MplsIndexType + FROM MPLS-LSR-STD-MIB -- [RFC3813] + + PwIndexType + FROM PW-TC-STD-MIB -- [RFC5542] + + + pwIndex -- [RFC5601] + FROM PW-STD-MIB + ; + + pwMplsStdMIB MODULE-IDENTITY + LAST-UPDATED "200906120000Z" -- 12 June 2009 00:00:00 GMT + ORGANIZATION "Pseudowire Emulation Edge-to-Edge (PWE3) Working + Group." + CONTACT-INFO + " + David Zelig, Editor + Email: davidz@corrigent.com + + Thomas D. Nadeau, Editor + Email: tom.nadeau@bt.com + + The PWE3 Working Group (email distribution pwe3@ietf.org, + http://www.ietf.org/html.charters/pwe3-charter.html) + " + DESCRIPTION + "This MIB module complements the PW-STD-MIB module for PW + operation over MPLS. + + Copyright (c) 2009 IETF Trust and the persons identified as + authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the + following conditions are met: + + - Redistributions of source code must retain the above + copyright notice, this list of conditions and the + following disclaimer. + + - Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + + - Neither the name of Internet Society, IETF or IETF Trust, + nor the names of specific contributors, may be used to + endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + This version of this MIB module is part of RFC 5602; + see the RFC itself for full legal notices. + " + + -- Revision history. + REVISION "200906120000Z" -- 12 June 2009 00:00:00 GMT + DESCRIPTION + "First published as RFC 5602. " + + ::= { mib-2 181 } + + -- Top-level components of this MIB. + + -- Notifications + pwMplsNotifications OBJECT IDENTIFIER + ::= { pwMplsStdMIB 0 } + + -- Tables, Scalars + pwMplsObjects OBJECT IDENTIFIER + ::= { pwMplsStdMIB 1 } + -- Conformance + pwMplsConformance OBJECT IDENTIFIER + ::= { pwMplsStdMIB 2 } + + -- PW MPLS table + + pwMplsTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwMplsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table controls MPLS-specific parameters when the PW is + going to be carried over MPLS PSN." + ::= { pwMplsObjects 1 } + + pwMplsEntry OBJECT-TYPE + SYNTAX PwMplsEntry + MAX-ACCESS not-accessible + + STATUS current + DESCRIPTION + "A row in this table represents parameters specific to MPLS + PSN for a pseudowire (PW). The row is created + automatically by the local agent if the pwPsnType is + mpls(1). It is indexed by pwIndex, which uniquely + identifies a singular PW. + Manual entries in this table SHOULD be preserved after a + reboot, and the agent MUST ensure the integrity of those + entries. + If the set of entries of a specific row were found to be + nonconsistent after reboot, the PW pwOperStatus MUST be + declared as down(2). + Any read-write object in this table MAY be changed at any + time; however, change of some objects (for example, + pwMplsMplsType) during PW forwarding state MAY cause traffic + disruption." + + INDEX { pwIndex } + + ::= { pwMplsTable 1 } + + PwMplsEntry ::= SEQUENCE { + pwMplsMplsType BITS, + pwMplsExpBitsMode INTEGER, + pwMplsExpBits Unsigned32, + pwMplsTtl Unsigned32, + pwMplsLocalLdpID MplsLdpIdentifier, + pwMplsLocalLdpEntityIndex Unsigned32, + pwMplsPeerLdpID MplsLdpIdentifier, + pwMplsStorageType StorageType + } + + pwMplsMplsType OBJECT-TYPE + SYNTAX BITS { + mplsTe (0), + mplsNonTe (1), + pwOnly (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is set by the operator to indicate the outer + tunnel types, if existing. mplsTe(0) is used if the outer + tunnel is set up by MPLS-TE, and mplsNonTe(1) is used if the + outer tunnel is set up by LDP or manually. A combination of + mplsTe(0) and mplsNonTe(1) MAY exist. + pwOnly(2) is used if there is no outer tunnel label, i.e., + + in static provisioning without an MPLS tunnel. pwOnly(2) + cannot be combined with mplsNonTe(1) or mplsTe(0). + An implementation that can identify automatically that the + peer node is directly connected MAY support the bit + pwOnly(2) as read-only. + " + DEFVAL { { mplsNonTe } } + ::= { pwMplsEntry 1 } + + pwMplsExpBitsMode OBJECT-TYPE + SYNTAX INTEGER { + outerTunnel (1), + specifiedValue (2), + serviceDependant (3) + } + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is set by the operator to determine the PW shim + label EXP bits. The value of outerTunnel(1) is used where + there is an outer tunnel -- pwMplsMplsType equals to + mplsTe(0) or mplsNonTe(1). Note that in this case, there + is no need to mark the PW label with the EXP bits, since the + PW label is not visible to the intermediate nodes. + If there is no outer tunnel, specifiedValue(2) SHOULD be used + to indicate that the value is specified by pwMplsExpBits. + Setting serviceDependant(3) indicates that the EXP bits are + set based on a rule that is implementation specific." + + DEFVAL { outerTunnel } + ::= { pwMplsEntry 2 } + + pwMplsExpBits OBJECT-TYPE + SYNTAX Unsigned32 (0..7) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is set by the operator if pwMplsExpBitsMode is + set to specifiedValue(2) to indicate the MPLS EXP bits to + be used on the PW shim label. Otherwise, it SHOULD be set + to zero." + DEFVAL { 0 } + ::= { pwMplsEntry 3 } + + pwMplsTtl OBJECT-TYPE + SYNTAX Unsigned32 (0..255) + MAX-ACCESS read-write + + STATUS current + DESCRIPTION + "This object is set by the operator to indicate the PW TTL + value to be used on the PW shim label." + DEFVAL { 2 } + ::= { pwMplsEntry 4 } + + pwMplsLocalLdpID OBJECT-TYPE + SYNTAX MplsLdpIdentifier + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The LDP identifier of the LDP entity that creates + this PW in the local node. As the PW labels are always + set from the per-platform label space, the last two octets + in the LDP ID MUST always both be zeros." + REFERENCE + "'LDP specifications', RFC 3036, section 2.2.2." + ::= { pwMplsEntry 5 } + + pwMplsLocalLdpEntityIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The local node LDP Entity Index of the LDP entity creating + this PW." + ::= { pwMplsEntry 6 } + + pwMplsPeerLdpID OBJECT-TYPE + SYNTAX MplsLdpIdentifier + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The peer LDP identifier of the LDP session. This object + SHOULD return the value zero if LDP is not used or if the + value is not yet known." + ::= { pwMplsEntry 7 } + + pwMplsStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This variable indicates the storage type for this row." + DEFVAL { nonVolatile } + ::= { pwMplsEntry 8 } + + + -- End of PW MPLS Table + + -- Pseudowire MPLS Outbound Tunnel Table + + pwMplsOutboundTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwMplsOutboundEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table reports and configures the current outbound MPLS + tunnels (i.e., toward the PSN) or the physical interface in + the case of a PW label only that carries the PW traffic. It + also reports the current outer tunnel and LSP that forward + the PW traffic." + ::= { pwMplsObjects 2 } + + pwMplsOutboundEntry OBJECT-TYPE + SYNTAX PwMplsOutboundEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table configures the outer tunnel used for + carrying the PW traffic toward the PSN. + In the case of PW label only, it configures the interface + that will carry the PW traffic. + + An entry in this table augments the pwMplsEntry, and is + created automatically when the corresponding row has been + created by the agent in the pwMplsEntry. + + This table points to the appropriate MPLS MIB module: + + In the MPLS-TE case, the three objects relevant to the + indexing of a TE tunnel head-end (as used in the + MPLS-TE-STD-MIB) are to be configured, and the tunnel + instance indicates the LSP that is currently in use for + forwarding the traffic. + + In the case of signaled non-TE MPLS (an outer tunnel label + assigned by LDP), the table points to the XC entry in the + LSR-STD-MIB. If the non-TE MPLS tunnel is manually + configured, the operator configures the XC pointer to this + tunnel. + + In the case of PW label only (no outer tunnel), the ifIndex + of the port to carry the PW is configured here. + + + + It is possible to associate a PW to one TE tunnel head-end + and a non-TE tunnel together. An indication in this table + will report the currently active one. In addition, in the + TE case, the table reports the active tunnel instance + (i.e., the specific LSP in use). + Any read-write object in this table MAY be changed at any + time; however, change of some objects (for example, + MPLS-TE indexes) during PW forwarding state MAY cause traffic + disruption." + + AUGMENTS { pwMplsEntry } + + ::= { pwMplsOutboundTable 1 } + + PwMplsOutboundEntry ::= SEQUENCE { + pwMplsOutboundLsrXcIndex MplsIndexType, + pwMplsOutboundTunnelIndex MplsTunnelIndex, + pwMplsOutboundTunnelInstance MplsTunnelInstanceIndex, + pwMplsOutboundTunnelLclLSR MplsLsrIdentifier, + pwMplsOutboundTunnelPeerLSR MplsLsrIdentifier, + pwMplsOutboundIfIndex InterfaceIndexOrZero, + pwMplsOutboundTunnelTypeInUse INTEGER + } + + pwMplsOutboundLsrXcIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType mplsNonTe(1) + bit is set, and MUST return a value of zero otherwise. + If the outer tunnel is signaled, the object is read-only + and indicates the XC index in the MPLS-LSR-STD-MIB of the + outer tunnel toward the peer. Otherwise (tunnel is set up + manually), the operator defines the XC index of the manually + created outer tunnel through this object. + " + ::= { pwMplsOutboundEntry 1 } + + + pwMplsOutboundTunnelIndex OBJECT-TYPE + SYNTAX MplsTunnelIndex + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType mplsTe(0) + bit is set, and MUST return a value of zero otherwise. + It is part of the set of indexes for the outbound tunnel. + + The operator sets this object to represent the desired + tunnel head-end toward the peer for carrying the PW + traffic. + " + ::= { pwMplsOutboundEntry 2 } + + pwMplsOutboundTunnelInstance OBJECT-TYPE + SYNTAX MplsTunnelInstanceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType mplsTe(0) + bit is set, and MUST return a value of zero otherwise. + It indicates the actual tunnel instance that is currently + active and carrying the PW traffic. It SHOULD return the + value zero if the information from the MPLS-TE + application is not yet known. + " + ::= { pwMplsOutboundEntry 3 } + + pwMplsOutboundTunnelLclLSR OBJECT-TYPE + SYNTAX MplsLsrIdentifier + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType mplsTe(0) + bit is set, and MUST return a value of all zeros otherwise. + It is part of the set of indexes for the outbound tunnel. + The operator sets this object to represent the desired + tunnel head-end toward the peer for carrying the PW + traffic. + " + ::= { pwMplsOutboundEntry 4 } + + pwMplsOutboundTunnelPeerLSR OBJECT-TYPE + SYNTAX MplsLsrIdentifier + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType mplsTe(0) + bit is set, and MUST return a value of zero otherwise. + It is part of the set of indexes for the outbound tunnel. + Note that in most cases, it equals to pwPeerAddr. + " + ::= { pwMplsOutboundEntry 5 } + + pwMplsOutboundIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType pwOnly(0) + bit is set, and MUST return a value of zero otherwise. + The operator configures the ifIndex of the outbound port + in this case. + " + ::= { pwMplsOutboundEntry 6 } + + pwMplsOutboundTunnelTypeInUse OBJECT-TYPE + SYNTAX INTEGER { + notYetKnown (1), + mplsTe (2), + mplsNonTe (3), + pwOnly (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object indicates the current tunnel that is carrying + the PW traffic. + The value of notYetKnown(1) should be used if the agent is + currently unable to determine which tunnel or interface is + carrying the PW, for example, because both tunnels are in + operational status down. + " + ::= { pwMplsOutboundEntry 7 } + + -- End of PW MPLS Outbound Tunnel table + + -- PW MPLS inbound table + + pwMplsInboundTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwMplsInboundEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table indicates the PW LDP XC entry in the + MPLS-LSR-STD-MIB for signaled PWs. + " + ::= { pwMplsObjects 3 } + + pwMplsInboundEntry OBJECT-TYPE + SYNTAX PwMplsInboundEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + "A row in this table is created by the agent + for each signaled PW, and shows the XC index related to + the PW signaling in the inbound direction in the + MPLS-LSR-STD-MIB that controls and display the information + for all the LDP signaling processes in the local node. + " + INDEX { pwIndex } + + ::= { pwMplsInboundTable 1 } + + PwMplsInboundEntry ::= SEQUENCE { + pwMplsInboundXcIndex MplsIndexType + } + + pwMplsInboundXcIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The XC index representing this PW in the inbound + direction. It MUST return the value zero if the + information is not yet known." + ::= { pwMplsInboundEntry 1 } + + -- End of PW MPLS inbound table + + -- PW to Non-TE mapping Table. + + pwMplsNonTeMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwMplsNonTeMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table indicates the PW association to the outbound + tunnel in non-TE applications, maps the PW to its (inbound) + XC entry, and indicates the PW-to-physical interface mapping + for a PW without an outer tunnel. + " + ::= { pwMplsObjects 4 } + + pwMplsNonTeMappingEntry OBJECT-TYPE + SYNTAX PwMplsNonTeMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table displays the association + between the PW and + - its non-TE MPLS outbound outer tunnel, + + - its XC entry in the MPLS-LSR-STD-MIB, or + - its physical interface if there is no outer tunnel + (PW label only) and manual configuration. + + Rows are created in this table by the agent depending on + the setting of pwMplsMplsType: + + - If the pwMplsMplsType mplsNonTe(1) bit is set, the agent + creates a row for the outbound direction + (pwMplsNonTeMappingDirection set to psnBound(1)). + The pwMplsNonTeMappingXcIndex holds the XC index in the + MPLS-LSR-STD-MIB of the PSN-bound outer tunnel. + pwMplsNonTeMappingIfIndex MUST be zero for this row. + + - If the pwMplsMplsType pwOnly(2) bit is set, the agent + creates a row for the outbound direction + (pwMplsNonTeMappingDirection set to psnBound(1)). + The pwMplsNonTeMappingIfIndex holds the ifIndex of the + physical port this PW will use in the outbound direction. + pwMplsNonTeMappingXcIndex MUST be zero for this row. + + - If the PW has been set up by a signaling protocol (i.e., + pwOwner equal pwIdFecSignaling(2) or + genFecSignaling(3)), the agent creates a row for the + inbound direction (pwMplsNonTeMappingDirection set to + fromPsn(2)). + The pwMplsNonTeMappingXcIndex holds the XC index in the + MPLS-LSR-STD-MIB of the PW LDP-generated XC entry. + pwMplsNonTeMappingIfIndex MUST be zero for this row. + + An application can use this table to quickly retrieve the + PW carried over specific non-TE MPLS outer tunnel or + physical interface. + " + + INDEX { pwMplsNonTeMappingDirection, + pwMplsNonTeMappingXcIndex, + pwMplsNonTeMappingIfIndex, + pwMplsNonTeMappingPwIndex } + + ::= { pwMplsNonTeMappingTable 1 } + + PwMplsNonTeMappingEntry ::= SEQUENCE { + pwMplsNonTeMappingDirection INTEGER, + pwMplsNonTeMappingXcIndex MplsIndexType, + pwMplsNonTeMappingIfIndex InterfaceIndexOrZero, + pwMplsNonTeMappingPwIndex PwIndexType + } + + pwMplsNonTeMappingDirection OBJECT-TYPE + SYNTAX INTEGER { + psnBound (1), + fromPsn (2) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Index for the conceptual XC row identifying the tunnel-to-PW + mappings, indicating the direction of the packet flow for + this entry. + psnBound(1) indicates that the entry is related to + packets toward the PSN. + fromPsn(2) indicates that the entry is related to + packets coming from the PSN. + " + ::= { pwMplsNonTeMappingEntry 1 } + + pwMplsNonTeMappingXcIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "See the description clause of pwMplsNonTeMappingEntry for + the usage guidelines of this object." + ::= { pwMplsNonTeMappingEntry 2 } + + pwMplsNonTeMappingIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "See the description clause of pwMplsNonTeMappingEntry for + the usage guidelines of this object." + ::= { pwMplsNonTeMappingEntry 3 } + + pwMplsNonTeMappingPwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value that represents the PW in the pwTable." + ::= { pwMplsNonTeMappingEntry 4 } + + -- End of PW to Non-TE mapping Table. + + + -- PW to TE MPLS tunnels mapping Table. + + pwMplsTeMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwMplsTeMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table reports the PW association to the + outbound MPLS tunnel for MPLS-TE applications." + ::= { pwMplsObjects 5 } + + pwMplsTeMappingEntry OBJECT-TYPE + SYNTAX PwMplsTeMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table represents the association + between a PW and its MPLS-TE outer (head-end) tunnel. + + An application can use this table to quickly retrieve the + list of the PWs that are configured on a specific MPLS-TE + outer tunnel. + + The pwMplsTeMappingTunnelInstance reports the actual + LSP out of the tunnel head-end that is currently + forwarding the traffic. + + The table is indexed by the head-end indexes of a TE + tunnel and the PW index. + " + + INDEX { pwMplsTeMappingTunnelIndex, + pwMplsTeMappingTunnelInstance, + pwMplsTeMappingTunnelPeerLsrID, + pwMplsTeMappingTunnelLocalLsrID, + pwMplsTeMappingPwIndex } + + ::= { pwMplsTeMappingTable 1 } + + PwMplsTeMappingEntry ::= SEQUENCE { + pwMplsTeMappingTunnelIndex MplsTunnelIndex, + pwMplsTeMappingTunnelInstance MplsTunnelInstanceIndex, + pwMplsTeMappingTunnelPeerLsrID MplsLsrIdentifier, + pwMplsTeMappingTunnelLocalLsrID MplsLsrIdentifier, + pwMplsTeMappingPwIndex PwIndexType + } + + + + + + pwMplsTeMappingTunnelIndex OBJECT-TYPE + SYNTAX MplsTunnelIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Primary index for the conceptual row identifying the + MPLS-TE tunnel that is carrying the PW traffic." + ::= { pwMplsTeMappingEntry 1 } + + pwMplsTeMappingTunnelInstance OBJECT-TYPE + SYNTAX MplsTunnelInstanceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object identifies the MPLS-TE LSP that is carrying the + PW traffic. It MUST return the value zero if the + information of the specific LSP is not yet known. + Note that based on the recommendation in the + MPLS-TC-STD-MIB, instance index 0 should refer to the + configured tunnel interface." + ::= { pwMplsTeMappingEntry 2 } + + pwMplsTeMappingTunnelPeerLsrID OBJECT-TYPE + SYNTAX MplsLsrIdentifier + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object identifies the peer LSR when the outer tunnel + is MPLS-TE." + ::= { pwMplsTeMappingEntry 3 } + + pwMplsTeMappingTunnelLocalLsrID OBJECT-TYPE + SYNTAX MplsLsrIdentifier + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object identifies the local LSR." + ::= { pwMplsTeMappingEntry 4 } + + pwMplsTeMappingPwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object returns the value that represents the PW in the + pwTable." + ::= { pwMplsTeMappingEntry 5 } + + + -- End of PW to TE MPLS tunnels mapping Table. + + -- conformance information + + pwMplsGroups OBJECT IDENTIFIER ::= { pwMplsConformance 1 } + pwMplsCompliances OBJECT IDENTIFIER ::= { pwMplsConformance 2 } + + -- Compliance requirement for fully compliant implementations. + + pwMplsModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provide full + support for the PW-MPLS-STD-MIB module. Such devices + can then be monitored and also be configured using + this MIB module." + + MODULE -- this module + MANDATORY-GROUPS { pwMplsGroup, + pwMplsOutboundMainGroup, + pwMplsInboundGroup, + pwMplsMappingGroup + } + + GROUP pwMplsOutboundTeGroup + DESCRIPTION "This group MUST be supported if the implementation + allows MPLS-TE tunnels to carry PW traffic. + " + + OBJECT pwMplsMplsType + DESCRIPTION "Support of pwOnly(2) is not required. At least one + of mplsTe(0) or mplsNonTe(1) MUST be supported if + signaling of PW is supported. + " + + OBJECT pwMplsExpBitsMode + DESCRIPTION "Support of specifiedValue(2) and + serviceDependant(3) is optional. + " + + OBJECT pwMplsLocalLdpID + MIN-ACCESS read-only + DESCRIPTION "A read-write access is required if the + implementation supports more than one LDP entity + identifier for PW signaling. + " + + OBJECT pwMplsLocalLdpEntityIndex + + MIN-ACCESS read-only + DESCRIPTION "A read-write access is required if the + implementation supports more than one LDP entity + index for PW signaling. + " + + OBJECT pwMplsOutboundLsrXcIndex + MIN-ACCESS read-only + DESCRIPTION "A value other than zero MUST be supported if the + implementation supports non-TE signaling of the + outer tunnel. + A read-write access MUST be supported if the + implementation supports PW label manual setting + and carrying them over non-TE tunnels. + " + + OBJECT pwMplsOutboundIfIndex + MIN-ACCESS read-only + DESCRIPTION "A value other than zero and read-write operations + MUST be supported if the implementation supports + manually configured PW without MPLS outer tunnel. + " + ::= { pwMplsCompliances 1 } + + -- Compliance requirement for Read Only compliant implementations. + + pwMplsModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provide read- + only support for the PW-MPLS-STD-MIB module. Such + devices can then be monitored but cannot be configured + using this MIB module." + + MODULE -- this module + MANDATORY-GROUPS { pwMplsGroup, + pwMplsOutboundMainGroup, + pwMplsInboundGroup, + pwMplsMappingGroup + } + + GROUP pwMplsOutboundTeGroup + DESCRIPTION "This group MUST be supported if the implementation + allows MPLS-TE tunnels to carry PW traffic. + " + + OBJECT pwMplsMplsType + MIN-ACCESS read-only + + DESCRIPTION "Write access is not required. + Support of pwOnly(2) is not required. At least one + of mplsTe(0) or mplsNonTe(1) MUST be supported if + signaling of PW is supported. + " + + OBJECT pwMplsExpBitsMode + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + Support of specifiedValue(2) and serviceDependant(3) + is optional. + " + OBJECT pwMplsExpBits + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + OBJECT pwMplsTtl + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsLocalLdpID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsLocalLdpEntityIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsOutboundLsrXcIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + A value other than zero MUST be supported if the + implementation supports non-TE signaling of the + outer tunnel. + " + + OBJECT pwMplsOutboundTunnelIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsOutboundTunnelLclLSR + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsOutboundTunnelPeerLSR + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsOutboundIfIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + A value other than zero MUST be supported if the + implementation supports manually configured PW + without MPLS outer tunnel. + " + ::= { pwMplsCompliances 2 } + + -- Units of conformance. + + pwMplsGroup OBJECT-GROUP + OBJECTS { + pwMplsMplsType, + pwMplsExpBitsMode, + pwMplsExpBits, + pwMplsTtl, + pwMplsLocalLdpID, + pwMplsLocalLdpEntityIndex, + pwMplsPeerLdpID, + pwMplsStorageType + } + + STATUS current + DESCRIPTION + "Collection of objects needed for PW over MPLS PSN + configuration." + ::= { pwMplsGroups 1 } + + pwMplsOutboundMainGroup OBJECT-GROUP + OBJECTS { + pwMplsOutboundLsrXcIndex, + pwMplsOutboundIfIndex, + pwMplsOutboundTunnelTypeInUse + } + + STATUS current + DESCRIPTION + + "Collection of objects needed for outbound association of + PW and MPLS tunnel." + ::= { pwMplsGroups 2 } + + pwMplsOutboundTeGroup OBJECT-GROUP + OBJECTS { + pwMplsOutboundTunnelIndex, + pwMplsOutboundTunnelInstance, + pwMplsOutboundTunnelLclLSR, + pwMplsOutboundTunnelPeerLSR + } + + STATUS current + DESCRIPTION + "Collection of objects needed for outbound association of + PW and MPLS-TE tunnel." + ::= { pwMplsGroups 3 } + + pwMplsInboundGroup OBJECT-GROUP + OBJECTS { + pwMplsInboundXcIndex + } + + STATUS current + DESCRIPTION + "Collection of objects needed for inbound PW presentation. + This group MUST be supported if PW signaling through LDP is + used." + ::= { pwMplsGroups 4 } + + pwMplsMappingGroup OBJECT-GROUP + OBJECTS { + pwMplsNonTeMappingPwIndex, + pwMplsTeMappingPwIndex + } + + STATUS current + DESCRIPTION + "Collection of objects needed for mapping association of + PW and MPLS tunnel." + ::= { pwMplsGroups 5 } + + END \ No newline at end of file diff --git a/mibs/PW-STD-MIB.txt b/mibs/PW-STD-MIB.txt new file mode 100644 index 00000000..6b43d950 --- /dev/null +++ b/mibs/PW-STD-MIB.txt @@ -0,0 +1,2511 @@ + PW-STD-MIB DEFINITIONS ::= BEGIN + + IMPORTS + NOTIFICATION-TYPE, MODULE-IDENTITY, OBJECT-TYPE, + Integer32, Unsigned32, Counter32, Counter64, TimeTicks, + transmission + FROM SNMPv2-SMI -- [RFC2578] + + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF -- [RFC2580] + + TruthValue, RowStatus, StorageType, + TimeStamp + FROM SNMPv2-TC -- [RFC2579] + + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB -- [RFC3411] + + InterfaceIndexOrZero + FROM IF-MIB -- [RFC2863] + + InetAddressType, InetAddress + FROM INET-ADDRESS-MIB -- [RFC4001] + + PerfCurrentCount, PerfIntervalCount + FROM PerfHist-TC-MIB -- [RFC3593] + + HCPerfCurrentCount, HCPerfIntervalCount, HCPerfTimeElapsed, + HCPerfValidIntervals + FROM HC-PerfHist-TC-MIB -- [RFC3705] + + PwIndexType, PwIndexOrZeroType, PwGroupID, PwIDType, + PwOperStatusTC, PwAttachmentIdentifierType, PwCwStatusTC, + PwStatus, PwFragSize, PwFragStatus, PwGenIdType + FROM PW-TC-STD-MIB -- [RFC5542] + IANAPwTypeTC, IANAPwPsnTypeTC, IANAPwCapabilities + FROM IANA-PWE3-MIB -- [RFC5601] + ; + + pwStdMIB MODULE-IDENTITY + LAST-UPDATED "200906110000Z" -- 11 June 2009 00:00:00 GMT + ORGANIZATION "Pseudowire Edge-to-Edge Emulation (PWE3) Working + Group" + CONTACT-INFO + + "David Zelig + Email: davidz@oversi.com + + Thomas D. Nadeau + Email: tom.nadeau@bt.com + + The PWE3 Working Group (email distribution pwe3@ietf.org, + http://www.ietf.org/html.charters/pwe3-charter.html) + " + + DESCRIPTION + "This MIB module contains managed object definitions for + pseudowire operation as in Bryant, S. and P. Pate, 'Pseudo + Wire Emulation Edge-to-Edge (PWE3) Architecture' [RFC3985], + Martini, L., et al, 'Pseudowire Setup and Maintenance Using + the Label Distribution Protocol (LDP)' [RFC4447], and + Townsley, M., et al, 'Layer Two Tunneling Protocol + (Version 3)' [RFC3931]. + + This MIB module enables the use of any underlying packet + switched network (PSN). MIB nodules that will support + PW operations over specific PSN types are defined in + separate memos. + + The indexes for this MIB module are also used to index the + PSN-specific tables and the PW-specific tables. The PW Type + dictates which PW-specific MIB module to use. + + Copyright (c) 2009 IETF Trust and the persons identified + as authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the following + conditions are met: + + - Redistributions of source code must retain the above + copyright notice, this list of conditions and the following + disclaimer. + + - Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + + - Neither the name of Internet Society, IETF or IETF Trust, nor + the names of specific contributors, may be used to endorse or + promote products derived from this software without specific + prior written permission. + + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + This version of this MIB module is part of RFC 5601; + see the RFC itself for full legal notices. + " + + -- Revision history. + REVISION + "200906110000Z" -- 11 June 2009 00:00:00 GMT + DESCRIPTION "Initial version published as part of RFC 5601." + ::= { transmission 246 } + + -- Top-level components of this MIB. + + -- Notifications + pwNotifications OBJECT IDENTIFIER + ::= { pwStdMIB 0 } + -- Tables, Scalars + pwObjects OBJECT IDENTIFIER + ::= { pwStdMIB 1 } + -- Conformance + pwConformance OBJECT IDENTIFIER + ::= { pwStdMIB 2 } + + -- PW Virtual Connection Table + + pwIndexNext OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains an appropriate value to be used for + pwIndex when creating entries in the pwTable. The value 0 + indicates that no unassigned entries are available. To + obtain the value of pwIndex for a new entry in the pwTable, + + the manager issues a management protocol retrieval + operation. The agent will determine through its local policy + when this index value will be made available for reuse." + ::= { pwObjects 1 } + + pwTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table specifies information for configuring and + status monitoring that is common to all service types + and PSN types." + ::= { pwObjects 2 } + + pwEntry OBJECT-TYPE + SYNTAX PwEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table represents a pseudowire (PW) virtual + connection across a packet network. It is indexed by + pwIndex, which uniquely identifies a singular + connection. + A row can be created by an operator command from a + management plan of a PE, by signaling, or due to auto- + discovery process. An operator's command can be issued via + a non-SNMP application; in such case, a row will be created + implicitly by the agent. + The read-create objects in this table are divided into + three categories: + 1) Objects that MUST NOT be changed after row activation. + These are objects that define basic properties of the + PW (for example type, destination, etc.). + 2) Objects that MAY be changed when the PW is + defined as not active. A change of these objects involves + re-signaling of the PW or it might be traffic affecting. + PW not active is defined as one of the following + conditions: + a) The pwRowStatus is notInService(2). + b) The pwRowStatus is notReady(3). + c) The pwAdminStatus is down(2). + If the operator needs to change one of the values for an + active row, the operator can either set the pwRowStatus to + notInService(2) or set pwAdminStatus to down(2). + Signaling (or traffic) is initiated again upon setting + the pwRowStatus to active(1) or setting the pwAdminStatus + to up(1) or testing(3), respectively. + + 3) Objects that MAY be changed at any time. + + A PW MAY have an entry in the ifTable in addition to the + entry in this table. In this case, a special ifType for PW + will be set in the ifTable, and the ifIndex in the ifTable + of the PW will be set in the pwIfIndex object in this table. + + By default, all the read-create objects MUST NOT be + changed after row activation, unless specifically indicated + in the individual object description. + + Manual entries in this table SHOULD be preserved after a + reboot; the agent MUST ensure the integrity of those + entries. If the set of entries of a specific row are found + to be inconsistent after reboot, the PW pwOperStatus MUST + be declared as notPresent(5). + " + INDEX { pwIndex } + + ::= { pwTable 1 } + + PwEntry ::= SEQUENCE { + pwIndex PwIndexType, + pwType IANAPwTypeTC, + pwOwner INTEGER, + pwPsnType IANAPwPsnTypeTC, + pwSetUpPriority Integer32, + pwHoldingPriority Integer32, + pwPeerAddrType InetAddressType, + pwPeerAddr InetAddress, + pwAttachedPwIndex PwIndexOrZeroType, + pwIfIndex InterfaceIndexOrZero, + + pwID PwIDType, + pwLocalGroupID PwGroupID, + pwGroupAttachmentID PwAttachmentIdentifierType, + pwLocalAttachmentID PwAttachmentIdentifierType, + pwRemoteAttachmentID PwAttachmentIdentifierType, + + pwCwPreference TruthValue, + pwLocalIfMtu Unsigned32, + + + pwLocalIfString TruthValue, + pwLocalCapabAdvert IANAPwCapabilities, + pwRemoteGroupID PwGroupID, + pwCwStatus PwCwStatusTC, + pwRemoteIfMtu Unsigned32, + + pwRemoteIfString SnmpAdminString, + pwRemoteCapabilities IANAPwCapabilities, + + pwFragmentCfgSize PwFragSize, + pwRmtFragCapability PwFragStatus, + pwFcsRetentionCfg INTEGER, + pwFcsRetentionStatus BITS, + + pwOutboundLabel Unsigned32, + pwInboundLabel Unsigned32, + + pwName SnmpAdminString, + pwDescr SnmpAdminString, + pwCreateTime TimeStamp, + pwUpTime TimeTicks, + pwLastChange TimeTicks, + pwAdminStatus INTEGER, + pwOperStatus PwOperStatusTC, + pwLocalStatus PwStatus, + pwRemoteStatusCapable INTEGER, + pwRemoteStatus PwStatus, + pwTimeElapsed HCPerfTimeElapsed, + pwValidIntervals HCPerfValidIntervals, + pwRowStatus RowStatus, + pwStorageType StorageType, + pwOamEnable TruthValue, + pwGenAGIType PwGenIdType, + pwGenLocalAIIType PwGenIdType, + pwGenRemoteAIIType PwGenIdType + } + + pwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A unique index for the conceptual row identifying a PW within + this table." + ::= { pwEntry 1 } + + pwType OBJECT-TYPE + SYNTAX IANAPwTypeTC + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value indicates the emulated service to be carried over + this PW. + " + + ::= { pwEntry 2 } + + pwOwner OBJECT-TYPE + SYNTAX INTEGER { + manual (1), + pwIdFecSignaling (2), -- PW signaling with PW ID FEC + genFecSignaling (3), -- Generalized attachment FEC + l2tpControlProtocol (4), + other (5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is set by the operator to indicate the protocol + responsible for establishing this PW. + 'manual' is used in all cases where no maintenance + protocol (PW signaling) is used to set up the PW, i.e., + configuration of entries in the PW tables including + PW labels, etc., is done by setting the MIB fields manually. + 'pwIdFecSignaling' is used in case of signaling with the + Pwid FEC element with LDP signaling. + 'genFecSignaling' is used in case of LDP signaling with + the generalized FEC. + 'l2tpControlProtocol' indicates the use of the L2TP + control protocol. + 'other' is used for other types of signaling." + ::= { pwEntry 3 } + + pwPsnType OBJECT-TYPE + SYNTAX IANAPwPsnTypeTC + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is set by the operator to indicate the PSN type. + Based on this object, the relevant PSN table's entry is + created in the PSN-specific MIB modules. + " + ::= { pwEntry 4 } + + pwSetUpPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object defines the relative priority of the PW + during set-up in a lowest-to-highest fashion, where 0 + is the highest priority. PWs with the same priority + are treated with equal priority. PWs that have not yet + + completed setup will report 'dormant' in the + pwOperStatus. + This value is significant if there are competing resources + among PWs and the implementation supports this feature. + Equal priority handling with competing resources is + implementation specific. + This object MAY be changed at any time." + DEFVAL { 0 } + ::= { pwEntry 5 } + + pwHoldingPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object defines the relative holding priority of the + PW in a lowest-to-highest fashion, where 0 is the highest + priority. PWs with the same priority are treated equally. + This value is significant if there are competing resources + among PWs and the implementation supports this feature. + Equal priority handling with competing resources is + implementation specific. + This object MAY be changed only if the PW is not active." + DEFVAL { 0 } + ::= { pwEntry 6 } + + pwPeerAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Denotes the address type of the peer node. It should be + set to 'unknown' if PE/PW maintenance protocol is not used + and the address is unknown." + DEFVAL { ipv4 } + ::= { pwEntry 8 } + + pwPeerAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object contains the value of the peer node address + of the PW/PE maintenance protocol entity. This object + SHOULD contain a value of all zeroes if not applicable + (pwPeerAddrType is 'unknown')." + ::= { pwEntry 9 } + + + pwAttachedPwIndex OBJECT-TYPE + SYNTAX PwIndexOrZeroType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the PW is attached to another PW instead of a local + native service, this item indicates the pwIndex of the + attached PW. Otherwise, this object MUST + be set to zero. Attachment to another PW will have no + PW specific entry in any of the service MIB modules." + DEFVAL { 0 } + ::= { pwEntry 10 } + + pwIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the ifIndex of the PW if the PW is + represented in the ifTable. Otherwise, it MUST be set + to zero." + DEFVAL { 0 } + ::= { pwEntry 11 } + + pwID OBJECT-TYPE + SYNTAX PwIDType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Pseudowire identifier. + + If the pwOwner object is 'pwIdFecSignaling' or + 'l2tpControlProtocol', then this object is signaled in the + outgoing PW ID field within the 'Virtual Circuit FEC + Element'. For other values of pwOwner, this object is not + signaled and it MAY be set to zero. + + For implementations that support the pwIndexMappingTable, + a non-zero value is RECOMMENDED, even if this + identifier is not signaled. This is so that reverse + mappings can be provided by pwIndexMappingTable and + pwPeerMappingTable. It is therefore RECOMMENDED that the + value of this pwID be unique (or if pwPeerAddrType is not + 'unknown', at least [pwType, pwID, pwPeerAddrType, pwPeerAddr] + is unique.)" + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + + ::= { pwEntry 12 } + + pwLocalGroupID OBJECT-TYPE + SYNTAX PwGroupID + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Used in the Group ID field sent to the peer PW End Service + within the maintenance protocol used for PW setup. + It SHOULD be set to zero if a maintenance protocol is + not used." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 13 } + + pwGroupAttachmentID OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is an octet string representing the attachment + group identifier (AGI) that this PW belongs to, which + typically identifies the VPN ID. + Applicable if pwOwner equals 'genFecSignaling'." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 14 } + + pwLocalAttachmentID OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is an octet string representing the local + forwarder attachment individual identifier (AII) to be + used by this PW. It is used as the Source AII (SAII) for + outgoing signaling messages and the Target AII (TAII) in + the incoming messages from the peer. Applicable if + pwOwner equal 'genFecSignaling'." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 15 } + + + + + pwRemoteAttachmentID OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is an octet string representing the remote + forwarder attachment individual identifier (AII) to be + used by this PW. It is used as the TAII for outgoing + signaling messages and the SAII in the incoming messages + from the peer. + Applicable if pwOwner equals 'genFecSignaling'." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 16 } + + pwCwPreference OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Defines if the control word will be sent with each packet + by the local node. Some PW types mandate the use of a + control word, and in such cases, the value configured for + this object has no effect on the existence of the control + word. + This object MAY be changed only if the PW is not active." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol.', RFC 4447." + DEFVAL { false } + ::= { pwEntry 17 } + + pwLocalIfMtu OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If not equal to zero, the optional IfMtu object in the + signaling protocol will be sent with this value, which + represents the locally supported MTU size over the + interface (or the virtual interface) associated with the + PW. + This object MAY be changed only if the PW is not active." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + DEFVAL { 0 } + + ::= { pwEntry 18 } + + pwLocalIfString OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A PW MAY be associated to an interface (or a virtual + interface) in the ifTable of the node as part of the + service configuration. This object defines if the + maintenance protocol will send the interface's name + (ifAlias) as it appears in the ifTable. If set to false, + the optional element will not be sent. + This object MAY be changed only if the PW is not active." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447, section 5.5." + DEFVAL { false } + ::= { pwEntry 19 } + + pwLocalCapabAdvert OBJECT-TYPE + SYNTAX IANAPwCapabilities + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If a maintenance protocol is used, it indicates the + capabilities the local node will advertise to the peer. The + operator MAY selectively assign a partial set of + capabilities. In case of manual configuration of the PW, the + operator SHOULD set non-conflicting options (for example, + only a single type of Operations, Administration, and + Management (OAM)) out of the available options in the + implementation. It is possible to change the value of + this object when the PW is not active. The agent MUST + reject any attempt to set a capability that is not + supported. + + The default value MUST be the full set of local node + capabilities." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 20 } + + pwRemoteGroupID OBJECT-TYPE + SYNTAX PwGroupID + MAX-ACCESS read-only + STATUS current + + DESCRIPTION + "This object is obtained from the Group ID field as + received via the maintenance protocol used for PW setup. + Value of zero will be reported if not used. + Value of 0xFFFFFFFF shall be used if the object is yet to be + defined by the PW maintenance protocol." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 21 } + + pwCwStatus OBJECT-TYPE + SYNTAX PwCwStatusTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If signaling is used for PW establishment, this object + indicates the status of the control word negotiation. + For either signaling or manual configuration, it indicates + if the control word (CW) is to be present for this PW." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 22 } + + pwRemoteIfMtu OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The remote interface MTU as (optionally) received from the + remote node via the maintenance protocol. The object SHOULD + report zero if the MTU is not available." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 23 } + + pwRemoteIfString OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..80)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the interface description string as received by + the maintenance protocol. It MUST be a NULL string if a + maintenance protocol is not used or the value is not known + yet." + + + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447, section 5.5." + ::= { pwEntry 24 } + + pwRemoteCapabilities OBJECT-TYPE + SYNTAX IANAPwCapabilities + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the capabilities as received from the peer." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 25 } + + pwFragmentCfgSize OBJECT-TYPE + SYNTAX PwFragSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If set to a value other than zero, indicates that + fragmentation is desired for this PW. + This object MAY be changed only if the PW is not active." + REFERENCE + "Malis A., Townsley M., 'PWE3 Fragmentation and Reassembly', + RFC 4623." + DEFVAL { 0 } -- i.e., fragmentation not desired + ::= { pwEntry 26 } + + pwRmtFragCapability OBJECT-TYPE + SYNTAX PwFragStatus + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The status of the fragmentation based on the local + configuration and the peer capabilities as received from + the peer when a control protocol is used." + REFERENCE + "Malis A., Townsley M., 'PWE3 Fragmentation and Reassembly', + RFC 4623." + ::= { pwEntry 27 } + + pwFcsRetentionCfg OBJECT-TYPE + SYNTAX INTEGER { + fcsRetentionDisable (1), + fcsRetentionEnable (2) + + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The local configuration of Frame Check Sequence (FCS) + retention for this PW. FCS retention can be configured for + PW types High-Level Data Link Control (HDLC), Point-to-Point + Protocol (PPP), and Ethernet only. If the implementation + does not support FCS retention, an error MUST be reported in + pwFcsRetentionStatus. This object MAY be changed only if + the PW is not active." + REFERENCE + "Malis A., et al., 'PWE3 Frame Check Sequence Retention', + RFC 4720." + DEFVAL { fcsRetentionDisable } + ::= { pwEntry 28 } + + pwFcsRetentionStatus OBJECT-TYPE + SYNTAX BITS { + remoteIndicationUnknown (0), + remoteRequestFcsRetention (1), + fcsRetentionEnabled (2), + fcsRetentionDisabled (3), + localFcsRetentionCfgErr (4), + fcsRetentionFcsSizeMismatch (5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The status of the FCS retention negotiation process based on + local configuration and the remote advertisement. + + remoteIndicationUnknown - set if a FEC has not been received + from the remote. + + remoteRequestFcsRetention - indicates that the peer has + requested FCS retention. FCS retention will be used if + the local node is capable and configured to use it for + this PW. + + fcsRetentionEnabled - FCS retention is enabled (both peers + were configured for FCS retention for signaled PW, or the + local node is configured and capable of FCS retention for + manually assigned PWs). + + fcsRetentionDisabled - FCS retention is disabled (not + configured locally or not advertised by the peer). + + + localFcsRetentionCfgErr - set if the local node has been + configured for FCS retention but is not capable to support + it. + + fcsRetentionFcsSizeMismatch - set if there is an FCS size + mismatch between the local and the peer node. + " + REFERENCE + "Malis A., et al., 'PWE3 Frame Check Sequence Retention', + RFC 4720" + ::= { pwEntry 29 } + + pwOutboundLabel OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The PW label used in the outbound direction (i.e., toward + the PSN). It might be set manually if pwOwner is 'manual'; + otherwise, it is set automatically. + For MPLS, MPLS over IP, or MPLS over Generic Routing + Encapsulation (GRE) PSN, it represents the 20-bit PW tag; + for L2TP, it represents the 32-bit Session ID; and for + IP PSN, it represents the destination UDP port number. + If the label is not yet known (signaling in process), the + object SHOULD return a value of 0xFFFFFFFF. + For manual configuration, this object MAY be changed only + if the PW is not active." + ::= { pwEntry 30 } + + pwInboundLabel OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The PW label used in the inbound direction (i.e., packets + received from the PSN). It may be set manually if pwOwner + is 'manual'; otherwise, it is set automatically. + For MPLS, MPLS over IP, or MPLS over GRE PSN, it represents + the 20-bit PW tag; for L2TP, it represents the 32-bit + Session ID; and for IP PSN, it represents the source + UDP port number. + If the label is not yet known (signaling in process), the + object SHOULD return a value of 0xFFFFFFFF. + For manual configuration, this object MAY be changed only + if the PW is not active." + ::= { pwEntry 31 } + + + pwName OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The canonical name assigned to the PW. This object MAY be + changed at any time." + ::= { pwEntry 32 } + + pwDescr OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A textual string containing information about the PW. + If there is no description, this object contains a zero- + length string. This object MAY be changed at any time." + ::= { pwEntry 33 } + + pwCreateTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time this PW was created." + ::= { pwEntry 34 } + + pwUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the time since last change of pwOperStatus to + Up(1)." + ::= { pwEntry 35 } + + pwLastChange OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time the PW entered + its current operational state. If the current state was + entered prior to the last re-initialization of the local + network management subsystem, then this object contains a + zero value." + ::= { pwEntry 36 } + + + pwAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), -- ready to pass packets + down(2), + testing(3) -- in a test mode + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The desired operational status of this PW. This object MAY + be set at any time." + ::= { pwEntry 37 } + + pwOperStatus OBJECT-TYPE + SYNTAX PwOperStatusTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object indicates the operational status of the PW; it + does not reflect the status of the Customer Edge (CE) bound + interface. It is set to down only if pwNotForwarding, + psnFacingPwRxFault, or psnFacingPwTxFault indications are + set in pwLocalStatus or pwRemoteStatus. + It indicates 'lowerLayerDown' if the only reason for + not being in the 'up' state is that either the outer tunnel + or physical layer of the network side is in the 'down' + state. + All other states are declared based on the description + of the PwOperStatusTC. + " + ::= { pwEntry 38 } + + pwLocalStatus OBJECT-TYPE + SYNTAX PwStatus + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the status of the PW in the local node. + The various indications in this object SHOULD be + available independent of the ability of the local node to + advertise them or the remote node to accept these status + indications through the control protocol. + " + ::= { pwEntry 39 } + + pwRemoteStatusCapable OBJECT-TYPE + SYNTAX INTEGER { + notApplicable (1), + + notYetKnown (2), + remoteCapable (3), + remoteNotCapable (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the remote node capability to advertise the + PW status notification. + notApplicable SHOULD be reported for a manually set PW, or + if the local node is not capable of accepting the status + notification object. + notYetKnown SHOULD be reported if the signaling protocol + has not yet finished the process of capability + determination. + remoteCapable and remoteNotcapable SHOULD be reported + based on the initial signaling exchange that has + determined the remote node capability. + " + ::= { pwEntry 40 } + + pwRemoteStatus OBJECT-TYPE + SYNTAX PwStatus + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the status of the PW as was advertised by the + remote. If the remote is not capable of advertising the + status object, or the local node is not able to accept + the status object through signaling, then the applicable + bit is 'pwNotForwarding', which is set if the remote has + sent label release or label withdraw for this PW. + " + ::= { pwEntry 41 } + + pwTimeElapsed OBJECT-TYPE + SYNTAX HCPerfTimeElapsed + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of seconds, including partial seconds, + that have elapsed since the beginning of the current + interval measurement period." + ::= { pwEntry 42 } + + pwValidIntervals OBJECT-TYPE + SYNTAX HCPerfValidIntervals + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "The number of previous 15-minute intervals + for which data was collected." + ::= { pwEntry 43 } + + pwRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "For creating, modifying, and deleting this row. + This object MAY be changed at any time." + ::= { pwEntry 44 } + + pwStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the storage type for this + object." + DEFVAL { nonVolatile } + ::= { pwEntry 45 } + + pwOamEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates if OAM is enabled for this + PW. It MAY be changed at any time." + DEFVAL { true } + ::= { pwEntry 46 } + + pwGenAGIType OBJECT-TYPE + SYNTAX PwGenIdType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the AGI type if generalized FEC + (129) is used for PW signaling or configuration. It SHOULD + return the value of zero otherwise." + DEFVAL { 0 } + ::= { pwEntry 47 } + + pwGenLocalAIIType OBJECT-TYPE + SYNTAX PwGenIdType + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is the type of the local forwarder + attachment individual identifier (AII) to be used + by this PW if generalized FEC (129) is used for PW + signaling or configuration." + DEFVAL { 0 } + ::= { pwEntry 48 } + + pwGenRemoteAIIType OBJECT-TYPE + SYNTAX PwGenIdType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is the type of the remote forwarder + attachment individual identifier (AII) to be used + by this PW if generalized FEC (129) is used for PW + signaling or configuration." + DEFVAL { 0 } + ::= { pwEntry 49 } + + -- End of the PW Virtual Connection Table + + -- PW Performance Table + + pwPerfCurrentTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwPerfCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table provides per-PW performance information for + the current interval." + ::= { pwObjects 3 } + + pwPerfCurrentEntry OBJECT-TYPE + SYNTAX PwPerfCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the agent for + every PW." + INDEX { pwIndex } + ::= { pwPerfCurrentTable 1 } + + PwPerfCurrentEntry ::= SEQUENCE { + pwPerfCurrentInHCPackets HCPerfCurrentCount, + pwPerfCurrentInHCBytes HCPerfCurrentCount, + + pwPerfCurrentOutHCPackets HCPerfCurrentCount, + pwPerfCurrentOutHCBytes HCPerfCurrentCount, + pwPerfCurrentInPackets PerfCurrentCount, + pwPerfCurrentInBytes PerfCurrentCount, + pwPerfCurrentOutPackets PerfCurrentCount, + pwPerfCurrentOutBytes PerfCurrentCount + } + + pwPerfCurrentInHCPackets OBJECT-TYPE + SYNTAX HCPerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of packets received by + the PW (from the PSN) in the current 15-minute + interval. This is the 64-bit version of + pwPerfCurrentInPackets, if pwPerfCurrentInHCPackets + is supported according to the rules spelled out + in RFC 2863." + ::= { pwPerfCurrentEntry 1 } + + pwPerfCurrentInHCBytes OBJECT-TYPE + SYNTAX HCPerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of bytes received by the + PW (from the PSN) in the current 15-minute interval. + This is the 64-bit version of pwPerfCurrentInBytes, if + pwPerfCurrentInHCBytes is supported according to the + rules spelled out in RFC 2863." + ::= { pwPerfCurrentEntry 2 } + + pwPerfCurrentOutHCPackets OBJECT-TYPE + SYNTAX HCPerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of packets forwarded by + the PW (to the PSN) in the current 15-minute interval. + This is the 64-bit version of pwPerfCurrentOutPackets, + if pwPerfCurrentOutHCPackets is supported according to + the rules spelled out in RFC 2863." + ::= { pwPerfCurrentEntry 3 } + + pwPerfCurrentOutHCBytes OBJECT-TYPE + SYNTAX HCPerfCurrentCount + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "High-capacity counter for number of bytes forwarded by + the PW (to the PSN) in the current 15-minute interval. + This is the 64-bit version of pwPerfCurrentOutBytes, + if pwPerfCurrentOutHCBytes is supported according to + the rules spelled out in RFC 2863." + ::= { pwPerfCurrentEntry 4 } + + pwPerfCurrentInPackets OBJECT-TYPE + SYNTAX PerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The counter for number of packets received by the PW (from + the PSN) in the current 15-minute interval. + This is the 32-bit version of pwPerfCurrentInHCPackets, + if pwPerfCurrentInHCPackets is supported according to + the rules spelled out in RFC 2863." + ::= { pwPerfCurrentEntry 5 } + + pwPerfCurrentInBytes OBJECT-TYPE + SYNTAX PerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The counter for number of bytes received by the + PW (from the PSN) in the current 15-minute interval. + It MUST be equal to the least significant 32 bits of + pwPerfCurrentInHCBytes, if pwPerfCurrentInHCBytes is + supported according to the rules spelled out in RFC 2863." + ::= { pwPerfCurrentEntry 6 } + + pwPerfCurrentOutPackets OBJECT-TYPE + SYNTAX PerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The counter for number of packets forwarded by + the PW (to the PSN) in the current 15-minute interval. + It MUST be equal to the least significant 32 bits of + pwPerfCurrentOutHCPackets, if + pwPerfCurrentOutHCPackets is supported according to the + rules spelled out in RFC 2863." + ::= { pwPerfCurrentEntry 7 } + + pwPerfCurrentOutBytes OBJECT-TYPE + SYNTAX PerfCurrentCount + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The counter for number of bytes forwarded by + the PW (to the PSN) in the current 15-minute interval. + It MUST be equal to the least significant 32 bits of + pwPerfCurrentOutHCBytes, if pwPerfCurrentOutHCBytes is + supported according to the rules spelled out in RFC 2863." + ::= { pwPerfCurrentEntry 8 } + + -- End of the PW Performance Current Table + + -- PW Performance Interval Table + + pwPerfIntervalTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwPerfIntervalEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table provides per-PW performance information for + each interval." + ::= { pwObjects 4 } + + pwPerfIntervalEntry OBJECT-TYPE + SYNTAX PwPerfIntervalEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the agent for every + PW." + INDEX { pwIndex, pwPerfIntervalNumber } + ::= { pwPerfIntervalTable 1 } + + PwPerfIntervalEntry ::= SEQUENCE { + pwPerfIntervalNumber Integer32, + pwPerfIntervalValidData TruthValue, + pwPerfIntervalTimeElapsed HCPerfTimeElapsed, + pwPerfIntervalInHCPackets HCPerfIntervalCount, + pwPerfIntervalInHCBytes HCPerfIntervalCount, + pwPerfIntervalOutHCPackets HCPerfIntervalCount, + pwPerfIntervalOutHCBytes HCPerfIntervalCount, + pwPerfIntervalInPackets PerfIntervalCount, + pwPerfIntervalInBytes PerfIntervalCount, + pwPerfIntervalOutPackets PerfIntervalCount, + pwPerfIntervalOutBytes PerfIntervalCount + } + + pwPerfIntervalNumber OBJECT-TYPE + + SYNTAX Integer32 (1..96) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A number N, between 1 and 96, which identifies the + interval for which the set of statistics is available. + The interval identified by 1 is the most recently + completed 15-minute interval, and the interval identified + by N is the interval immediately preceding the one + identified by N-1. + The minimum range of N is 1 through 4. The default range + is 1 to 32. The maximum range of N is 1 through 96." + REFERENCE + "Tesink, K. 'Definitions of Managed Objects for the + SONET/SDH Interface Type', RFC 2558" + ::= { pwPerfIntervalEntry 1 } + + pwPerfIntervalValidData OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This variable indicates if the data for this interval + is valid." + ::= { pwPerfIntervalEntry 2 } + + pwPerfIntervalTimeElapsed OBJECT-TYPE + SYNTAX HCPerfTimeElapsed + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The duration of this interval in seconds." + ::= { pwPerfIntervalEntry 3 } + + pwPerfIntervalInHCPackets OBJECT-TYPE + SYNTAX HCPerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of packets received by + the PW (from the PSN) during the interval. This is the + 64-bit version of pwPerfIntervalInPackets, if + pwPerfIntervalInHCPackets is supported according to the + rules spelled out in RFC 2863." + ::= { pwPerfIntervalEntry 4 } + + pwPerfIntervalInHCBytes OBJECT-TYPE + SYNTAX HCPerfIntervalCount + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of bytes received by the + PW (from the PSN) during the interval. + This is the 64-bit version of pwPerfIntervalInBytes, if + pwPerfIntervalInHCBytes is supported according to the + rules spelled out in RFC 2863." + ::= { pwPerfIntervalEntry 5 } + + pwPerfIntervalOutHCPackets OBJECT-TYPE + SYNTAX HCPerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of packets forwarded by + the PW (to the PSN) during the interval. + This is the 64-bit version of pwPerfIntervalOutPackets, + if pwPerfIntervalOutHCPackets is supported according to + the rules spelled out in RFC 2863." + ::= { pwPerfIntervalEntry 6 } + + pwPerfIntervalOutHCBytes OBJECT-TYPE + SYNTAX HCPerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of bytes forwarded by + the PW (to the PSN) during the interval. + This is the 64-bit version of pwPerfIntervalOutBytes, + if pwPerfIntervalOutHCBytes is supported according to + the rules spelled out in RFC 2863." + ::= { pwPerfIntervalEntry 7 } + + pwPerfIntervalInPackets OBJECT-TYPE + SYNTAX PerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the number of packets received + by this PW during the interval. + It MUST be equal to the least significant 32 bits of + pwPerfIntervalInHCPackets, if pwPerfIntervalInHCPackets + is supported according to the rules spelled out in + RFC 2863." + ::= { pwPerfIntervalEntry 8 } + + pwPerfIntervalInBytes OBJECT-TYPE + + SYNTAX PerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the number of bytes received by + this PW during the interval. It MUST be equal to the + least significant 32 bits of pwPerfIntervalInHCBytes, if + pwPerfIntervalInHCBytes is supported according to the + rules spelled out in RFC 2863." + ::= { pwPerfIntervalEntry 9 } + + pwPerfIntervalOutPackets OBJECT-TYPE + SYNTAX PerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the number of packets sent by this + PW during the interval. + It MUST be equal to the least significant 32 bits of + pwPerfIntervalOutHCPackets, if + pwPerfIntervalOutHCPackets is supported according to the + rules spelled out in RFC 2863." + ::= { pwPerfIntervalEntry 10 } + + pwPerfIntervalOutBytes OBJECT-TYPE + SYNTAX PerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the number of bytes sent by this + PW during the interval. + It MUST be equal to the least significant 32 + bits of pwPerfIntervalOutHCBytes, + if pwPerfIntervalOutHCBytes is supported according to + the rules spelled out in RFC 2863." + ::= { pwPerfIntervalEntry 11 } + + -- End of the PW Performance Interval Table + + -- PW Performance 1-day Interval Table + + pwPerf1DayIntervalTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwPerf1DayIntervalEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table provides per-PW performance information for + the current day's measurement and the previous day's + + interval." + ::= { pwObjects 5 } + + pwPerf1DayIntervalEntry OBJECT-TYPE + SYNTAX PwPerf1DayIntervalEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the agent for every + PW." + INDEX { pwIndex, pwPerf1DayIntervalNumber } + + ::= { pwPerf1DayIntervalTable 1 } + + PwPerf1DayIntervalEntry ::= SEQUENCE { + pwPerf1DayIntervalNumber Unsigned32, + pwPerf1DayIntervalValidData TruthValue, + pwPerf1DayIntervalTimeElapsed HCPerfTimeElapsed, + pwPerf1DayIntervalInHCPackets Counter64, + pwPerf1DayIntervalInHCBytes Counter64, + pwPerf1DayIntervalOutHCPackets Counter64, + pwPerf1DayIntervalOutHCBytes Counter64 + } + + pwPerf1DayIntervalNumber OBJECT-TYPE + SYNTAX Unsigned32(1..31) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "History Data Interval number. Interval 1 is the current day's + measurement period, interval 2 is the most recent previous + day, and interval 30 is 31 days ago. Intervals 3..31 are + optional." + ::= { pwPerf1DayIntervalEntry 1 } + + pwPerf1DayIntervalValidData OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This variable indicates if the data for this interval + is valid." + ::= { pwPerf1DayIntervalEntry 2 } + + pwPerf1DayIntervalTimeElapsed OBJECT-TYPE + SYNTAX HCPerfTimeElapsed + UNITS "seconds" + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "The number of seconds in the 1-day interval over which the + performance monitoring information is actually counted. + This value will be the same as the interval duration except + in a situation where performance monitoring data could not + be collected for any reason or where agent clock adjustments + have been made." + ::= { pwPerf1DayIntervalEntry 3 } + + pwPerf1DayIntervalInHCPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for the total number of packets + received by the PW (from the PSN)." + ::= { pwPerf1DayIntervalEntry 4 } + + pwPerf1DayIntervalInHCBytes OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for the total number of bytes + received by the PW (from the PSN)." + ::= { pwPerf1DayIntervalEntry 5 } + + pwPerf1DayIntervalOutHCPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for the total number of packets + forwarded by the PW (to the PSN)." + ::= { pwPerf1DayIntervalEntry 6 } + + pwPerf1DayIntervalOutHCBytes OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for the total number of bytes + forwarded by the PW (to the PSN)." + ::= { pwPerf1DayIntervalEntry 7 } + + -- End of the PW Performance 1-day Interval Table + + + -- Error counter scalar + + pwPerfTotalErrorPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Counter for number of errors at the PW processing level, + for example, packets received with unknown PW label." + ::= { pwObjects 6 } + + -- Reverse mapping tables + + -- The PW ID mapping table + pwIndexMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwIndexMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table enables the reverse mapping of the unique + PWid parameters [peer IP, PW type, and PW ID] and the + pwIndex. The table is not applicable for PWs created + manually or by using the generalized FEC." + ::= { pwObjects 7 } + + pwIndexMappingEntry OBJECT-TYPE + SYNTAX PwIndexMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table MUST be created by the agent for + every PW created by the pwTable for which pwOwner + equals pwIdFecSignaling and pwID is not zero. + + Implementers need to be aware that if the value of + the pwIndexMappingPeerAddr (an OID) has more than + 113 sub-identifiers, then OIDs of column instances + in this table will have more than 128 sub-identifiers + and cannot be accessed using SNMPv1, SNMPv2c, or SNMPv3." + INDEX { pwIndexMappingPwType, pwIndexMappingPwID, + pwIndexMappingPeerAddrType, pwIndexMappingPeerAddr + } + ::= { pwIndexMappingTable 1 } + + PwIndexMappingEntry ::= SEQUENCE { + pwIndexMappingPwType IANAPwTypeTC, + pwIndexMappingPwID PwIDType, + pwIndexMappingPeerAddrType InetAddressType, + + pwIndexMappingPeerAddr InetAddress, + pwIndexMappingPwIndex PwIndexType + } + + pwIndexMappingPwType OBJECT-TYPE + SYNTAX IANAPwTypeTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The PW type (indicates the service) of this PW." + ::= { pwIndexMappingEntry 1 } + + pwIndexMappingPwID OBJECT-TYPE + SYNTAX PwIDType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The PW ID of this PW. Zero if the PW is configured + manually." + ::= { pwIndexMappingEntry 2 } + + pwIndexMappingPeerAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "IP address type of the peer node." + ::= { pwIndexMappingEntry 3 } + + pwIndexMappingPeerAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "IP address of the peer node." + ::= { pwIndexMappingEntry 4 } + + pwIndexMappingPwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value that represents the PW in the pwTable." + ::= { pwIndexMappingEntry 5 } + + -- End of the PW ID mapping table + + -- The peer mapping table + + pwPeerMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwPeerMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table provides reverse mapping of the existing PW + based on PW type and PW ID ordering. This table is + typically useful for the element management system (EMS) + ordered query of existing PWs." + ::= { pwObjects 8 } + + pwPeerMappingEntry OBJECT-TYPE + SYNTAX PwPeerMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the agent for every + PW entry in the pwTable. + + Implementers need to be aware that if the value of the + pwPeerMappingPeerAddr (an OID) has more than 113 + sub-identifiers, then OIDs of column instances in this + table will have more than 128 sub-identifiers and cannot + be accessed using SNMPv1, SNMPv2c, or SNMPv3." + INDEX { pwPeerMappingPeerAddrType, pwPeerMappingPeerAddr, + pwPeerMappingPwType, pwPeerMappingPwID } + + ::= { pwPeerMappingTable 1 } + + PwPeerMappingEntry ::= SEQUENCE { + pwPeerMappingPeerAddrType InetAddressType, + pwPeerMappingPeerAddr InetAddress, + pwPeerMappingPwType IANAPwTypeTC, + pwPeerMappingPwID PwIDType, + pwPeerMappingPwIndex PwIndexType + } + + pwPeerMappingPeerAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "IP address type of the peer node." + ::= { pwPeerMappingEntry 1 } + + pwPeerMappingPeerAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + + STATUS current + DESCRIPTION + "IP address of the peer node." + ::= { pwPeerMappingEntry 2 } + + pwPeerMappingPwType OBJECT-TYPE + SYNTAX IANAPwTypeTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The PW type (indicates the emulated service) of this PW." + ::= { pwPeerMappingEntry 3 } + + pwPeerMappingPwID OBJECT-TYPE + SYNTAX PwIDType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The PW ID of this PW. Zero if the PW is configured + manually." + ::= { pwPeerMappingEntry 4 } + + pwPeerMappingPwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value that represents the PW in the pwTable." + ::= { pwPeerMappingEntry 5 } + + -- End of the peer mapping table + + -- End of the reverse mapping tables + + pwUpDownNotifEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If this object is set to true(1), then it enables + the emission of pwUp and pwDown + notifications; otherwise, these notifications are not + emitted." + REFERENCE + "See also [RFC3413] for explanation that + notifications are under the ultimate control of the + MIB module in this document." + DEFVAL { false } + + ::= { pwObjects 9 } + + pwDeletedNotifEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If this object is set to true(1), then it enables the + emission of pwDeleted notification; otherwise, this + notification is not emitted." + REFERENCE + "See also [RFC3413] for explanation that + notifications are under the ultimate control of the + MIB module in this document." + DEFVAL { false } + ::= { pwObjects 10 } + + pwNotifRate OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object defines the maximum number of PW notifications + that can be emitted from the device per second." + ::= { pwObjects 11 } + + -- The Gen Fec PW ID mapping table + + pwGenFecIndexMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwGenFecIndexMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table enables the reverse mapping of the unique + PWid parameters [GroupAttachmentID, LocalAttachmentID, + and PeerAttachmentID] and the pwIndex. The table is + only applicable for PW using the generalized FEC." + ::= { pwObjects 12 } + + pwGenFecIndexMappingEntry OBJECT-TYPE + SYNTAX PwGenFecIndexMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table MUST be created by the agent for + every PW created by the pwTable for which pwOwner + equals genFecSignaling. + + + Implementers need to be aware that if the combined value + of pwGenFecIndexMappingAGI, pwGenFecIndexMappingLocalAII, + and pwGenFecIndexMappingRemoteAII (OIDs) has more than + 113 sub-identifiers, then OIDs of column instances + in this table will have more than 128 sub-identifiers + and cannot be accessed using SNMPv1, SNMPv2c, or SNMPv3." + INDEX { pwGenFecIndexMappingAGIType, + pwGenFecIndexMappingAGI, + pwGenFecIndexMappingLocalAIIType, + pwGenFecIndexMappingLocalAII, + pwGenFecIndexMappingRemoteAIIType, + pwGenFecIndexMappingRemoteAII + } + ::= { pwGenFecIndexMappingTable 1 } + + PwGenFecIndexMappingEntry ::= SEQUENCE { + pwGenFecIndexMappingAGIType PwGenIdType, + pwGenFecIndexMappingAGI PwAttachmentIdentifierType, + pwGenFecIndexMappingLocalAIIType PwGenIdType, + pwGenFecIndexMappingLocalAII PwAttachmentIdentifierType, + pwGenFecIndexMappingRemoteAIIType PwGenIdType, + pwGenFecIndexMappingRemoteAII PwAttachmentIdentifierType, + pwGenFecIndexMappingPwIndex PwIndexType + } + + pwGenFecIndexMappingAGIType OBJECT-TYPE + SYNTAX PwGenIdType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object is the type of the attachment + group identifier (AGI) that this PW belongs to." + ::= { pwGenFecIndexMappingEntry 1 } + + pwGenFecIndexMappingAGI OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object is an octet string representing the attachment + group identifier (AGI) that this PW belongs to, + which typically identifies the VPN ID." + ::= { pwGenFecIndexMappingEntry 2 } + + pwGenFecIndexMappingLocalAIIType OBJECT-TYPE + SYNTAX PwGenIdType + MAX-ACCESS not-accessible + STATUS current + + DESCRIPTION + "This object is the type of the local forwarder + attachment individual identifier (AII) to be used + by this PW." + ::= { pwGenFecIndexMappingEntry 3 } + + pwGenFecIndexMappingLocalAII OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object is an octet string representing the local + forwarder attachment individual identifier (AII) to be used + by this PW. It is used as the SAII for outgoing signaling + messages and the TAII in the incoming messages from the + peer." + ::= { pwGenFecIndexMappingEntry 4 } + + pwGenFecIndexMappingRemoteAIIType OBJECT-TYPE + SYNTAX PwGenIdType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object is the type of the remote forwarder + attachment individual identifier (AII) to be used + by this PW." + ::= { pwGenFecIndexMappingEntry 5 } + + pwGenFecIndexMappingRemoteAII OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object is an octet string representing the peer + forwarder attachment individual identifier (AII) to be used + by this PW. It is used as the TAII for outgoing signaling + messages and the SAII in the incoming messages from the + peer." + ::= { pwGenFecIndexMappingEntry 6 } + + pwGenFecIndexMappingPwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value that represents the PW in the pwTable." + ::= { pwGenFecIndexMappingEntry 7 } + + + -- End of the Gen Fec PW ID mapping table + + -- Notifications - PW + + pwDown NOTIFICATION-TYPE + OBJECTS { pwOperStatus, --start of range + pwOperStatus --end of range + } + STATUS current + DESCRIPTION + "This notification is generated when the pwOperStatus + object for one or more contiguous entries in the pwTable are + about to enter the down(2) or lowerLayerDown(6) state from + any other state, except for transition from the + notPresent(5) state. For the purpose of deciding when + these notifications occur, the lowerLayerDown(6) state + and the down(2) state are considered to be equivalent; + i.e., there is no notification on transition from + lowerLayerDown(6) into down(2), and there is a trap on + transition from any other state except down(2) (and + notPresent) into lowerLayerDown(6). + + The included values of pwOperStatus MUST each be equal to + down(2) or lowerLayerDown(6). The two instances of + pwOperStatus in this notification indicate the range of + indexes that are affected. Note that all the indexes of + the two ends of the range can be derived from the + instance identifiers of these two objects. For cases + where a contiguous range of cross-connects have + transitioned into the down(2) and lowerLayerDown(6) states + at roughly the same time, the device SHOULD issue a single + notification for each range of contiguous indexes in an + effort to minimize the emission of a large number of + notifications. If a notification has to be issued for + just a single cross-connect entry, then the instance + identifier (and values) of the two pwOperStatus objects + MUST be identical." + ::= { pwNotifications 1 } + + pwUp NOTIFICATION-TYPE + OBJECTS { pwOperStatus, --start of range + pwOperStatus --end of range + } + STATUS current + DESCRIPTION + "This notification is generated when the pwOperStatus + object for one or more contiguous entries in the pwTable are + about to enter the up(1) state from some other state + + except the notPresent(5) state and given that the pwDown + notification been issued for these entries. The included + values of pwOperStatus MUST both be set equal to this + new state (i.e., up(1)). The two instances of pwOperStatus + in this notification indicate the range of indexes that + are affected. Note that all the indexes of the two ends + of the range can be derived from the instance identifiers + of these two objects. For cases where a contiguous range + of cross-connects have transitioned into the up(1) state + at roughly the same time, the device SHOULD issue a single + notification for each range of contiguous indexes in an + effort to minimize the emission of a large number of + notifications. If a notification has to be issued for + just a single cross-connect entry, then the instance + identifier (and values) of the two pwOperStatus objects + MUST be identical." + ::= { pwNotifications 2 } + + pwDeleted NOTIFICATION-TYPE + OBJECTS { pwType, + pwID, + pwPeerAddrType, + pwPeerAddr + } + STATUS current + DESCRIPTION + "This notification is generated when the PW has been + deleted, i.e., when the pwRowStatus has been set to + destroy(6) or the PW has been deleted by a non-MIB + application or due to an auto-discovery process. + " + ::= { pwNotifications 3 } + + -- End of notifications. + + -- Conformance information + + pwGroups OBJECT IDENTIFIER ::= { pwConformance 1 } + pwCompliances OBJECT IDENTIFIER ::= { pwConformance 2 } + + -- Compliance requirement for fully compliant implementations + + pwModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provide full + support for the PW MIB module. Such devices can + then be monitored and configured using + + this MIB module." + + MODULE -- this module + MANDATORY-GROUPS { pwBasicGroup, + pwPerformanceGeneralGroup + } + + GROUP pwNotificationGroup + DESCRIPTION "This group is only mandatory for implementations + that can efficiently implement the notifications + contained in this group. + " + + GROUP pwPwIdGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW ID FEC. + " + + GROUP pwGeneralizedFecGroup + DESCRIPTION "This group is only mandatory for implementations + that support the generalized PW FEC. + " + + GROUP pwFcsGroup + DESCRIPTION "This group is only mandatory for implementations + that support FCS retention." + + GROUP pwFragGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW fragmentation. + " + + GROUP pwPwStatusGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW status notification. + " + + GROUP pwGetNextGroup + DESCRIPTION "This group is only mandatory for implementations + where the pwIndex may be any arbitrary value + and the EMS would require retrieval of the next + free index." + + GROUP pwPriorityGroup + DESCRIPTION "This group is only mandatory for implementations + that support the controlling the PW setup and + holding priority." + + + GROUP pwAttachmentGroup + DESCRIPTION "This group is only mandatory for implementations + that support attachment of two PWs (PW stitching)." + + GROUP pwPeformance1DayIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 1-day + intervals." + + GROUP pwPerformanceIntervalGeneralGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 15- + minute intervals." + + GROUP pwPeformanceIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 15- + minute intervals." + + GROUP pwHCPeformanceIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + where at least one of the interval performance + counters wraps around too quickly based on the + criteria specified in RFC 2863 for high-capacity + counters." + + GROUP pwMappingTablesGroup + DESCRIPTION "This group is only mandatory for implementations + that support reverse mapping of PW indexes to + the pwIndex and the peer mapping table." + + GROUP pwSignalingGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW signaling." + + GROUP pwNotificationControlGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW notifications." + + OBJECT pwAdminStatus + SYNTAX INTEGER { up(1), down(2) } + DESCRIPTION "Support of the value testing(3) is not + required." + + OBJECT pwOperStatus + SYNTAX INTEGER { up(1), down(2), notPresent(5), + lowerLayerDown(6) } + DESCRIPTION "Support of the values testing(3) and dormant(4) + + is not required." + + OBJECT pwRowStatus + SYNTAX RowStatus { active(1), notInService(2), + notReady(3) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait is not required. Support + of notReady is not required for implementations + that do not support signaling, or if it is + guaranteed that the conceptual row has all the + required information to create the PW when the + row has been created by the agent or written by + the operator." + + OBJECT pwPeerAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1) } + MIN-ACCESS read-only + DESCRIPTION "Only unknown(0) and ipv4(1) are required. + Implementations that support only IPv4 MAY support + read-only access." + + OBJECT pwPeerAddr + SYNTAX InetAddress (SIZE(0|4)) + DESCRIPTION "An implementation is only required to support + 0, 4 address sizes." + + OBJECT pwStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwNotifRate + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { pwCompliances 1 } + + -- Compliance requirement for read-only compliant implementations + + pwModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provide read- + only support for the PW MIB module. Such devices can + then be monitored but cannot be configured using this + MIB module." + + + MODULE -- this module + MANDATORY-GROUPS { pwBasicGroup + } + + GROUP pwNotificationGroup + DESCRIPTION "This group is only mandatory for implementations + that can efficiently implement the notifications + contained in this group." + + GROUP pwPwIdGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW ID FEC. + " + + GROUP pwGeneralizedFecGroup + DESCRIPTION "This group is only mandatory for implementations + that support the generalized PW FEC. + " + + GROUP pwFcsGroup + DESCRIPTION "This group is only mandatory for implementations + that support FCS retention." + + GROUP pwFragGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW fragmentation. + " + + GROUP pwPwStatusGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW status notification. + " + + GROUP pwGetNextGroup + DESCRIPTION "This group is only mandatory for implementations + where the pwIndex may be any arbitrary value + and the EMS would require retrieval of the next + free index." + + GROUP pwPriorityGroup + DESCRIPTION "This group is only mandatory for implementations + that support the controlling the PW setup and + holding priority." + + GROUP pwAttachmentGroup + DESCRIPTION "This group is only mandatory for implementations + that support attachment of two PWs (PW stitching)." + + + GROUP pwPeformance1DayIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 1-day + intervals." + + GROUP pwPerformanceIntervalGeneralGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 15- + minute intervals." + + GROUP pwPeformanceIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 15- + minute intervals." + + GROUP pwHCPeformanceIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + where at least one of the interval performance + counters wraps around too quickly based on the + criteria specified in RFC 2863 for high-capacity + counters." + + GROUP pwMappingTablesGroup + DESCRIPTION "This group is only mandatory for implementations + that support reverse mapping of PW indexes to + the pwIndex and the peer mapping table." + + GROUP pwSignalingGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW signaling." + + GROUP pwNotificationControlGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW notifications." + + OBJECT pwType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwOwner + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwPsnType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwSetUpPriority + + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwHoldingPriority + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwPeerAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. Only unknown(0) and + ipv4(1) are required." + + OBJECT pwPeerAddr + SYNTAX InetAddress (SIZE(0|4)) + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. An implementation + is only required to support 0, 4 address sizes." + + OBJECT pwAttachedPwIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwIfIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwLocalGroupID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwGroupAttachmentID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwLocalAttachmentID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwRemoteAttachmentID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwCwPreference + + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwLocalIfMtu + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwLocalIfString + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwLocalCapabAdvert + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwFragmentCfgSize + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwFcsRetentionCfg + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwOutboundLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwInboundLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwName + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwDescr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwAdminStatus + SYNTAX INTEGER { up(1), down(2) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. The support of value + testing(3) is not required." + + OBJECT pwOperStatus + SYNTAX INTEGER { up(1), down(2), notPresent(5), + lowerLayerDown(6) } + + DESCRIPTION "The support of the values testing(3) and dormant(4) + is not required." + + OBJECT pwRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwOamEnable + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwGenAGIType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwGenLocalAIIType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwGenRemoteAIIType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwUpDownNotifEnable + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwDeletedNotifEnable + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwNotifRate + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { pwCompliances 2 } + + -- Units of conformance. + + pwBasicGroup OBJECT-GROUP + OBJECTS { + pwType, + pwOwner, + + pwPsnType, + pwIfIndex, + pwCwPreference, + pwLocalIfMtu, + pwOutboundLabel, + pwInboundLabel, + pwName, + pwDescr, + pwCreateTime, + pwUpTime, + pwLastChange, + pwAdminStatus, + pwOperStatus, + pwLocalStatus, + pwRowStatus, + pwStorageType, + pwOamEnable + } + + STATUS current + DESCRIPTION + "Collection of objects that are required in all + implementations that support the PW MIB module." + ::= { pwGroups 1 } + + pwPwIdGroup OBJECT-GROUP + OBJECTS { + pwID + } + + STATUS current + DESCRIPTION + "Collection of objects required for PW ID configuration + and signaling." + ::= { pwGroups 2 } + + pwGeneralizedFecGroup OBJECT-GROUP + OBJECTS { + pwGroupAttachmentID, + pwLocalAttachmentID, + pwRemoteAttachmentID, + pwGenAGIType, + pwGenLocalAIIType, + pwGenRemoteAIIType + } + STATUS current + DESCRIPTION + "Collection of objects required for generalized FEC + + configuration and signaling." + ::= { pwGroups 3 } + + pwFcsGroup OBJECT-GROUP + OBJECTS { + pwFcsRetentionCfg, + pwFcsRetentionStatus + } + + STATUS current + DESCRIPTION + "Collection of objects required for FCS retention + configuration and signaling." + ::= { pwGroups 4 } + + pwFragGroup OBJECT-GROUP + OBJECTS { + pwFragmentCfgSize, + pwRmtFragCapability + } + + STATUS current + DESCRIPTION + "Collection of objects required for fragmentation + configuration and signaling." + ::= { pwGroups 5 } + + pwPwStatusGroup OBJECT-GROUP + OBJECTS { + pwRemoteCapabilities, + pwRemoteStatusCapable, + pwRemoteStatus + } + + STATUS current + DESCRIPTION + "Collection of objects required for PW status configuration + and signaling." + ::= { pwGroups 6 } + + + pwGetNextGroup OBJECT-GROUP + OBJECTS { + pwIndexNext + } + STATUS current + DESCRIPTION + "Collection of objects for getting the next available + + index." + ::= { pwGroups 7 } + + pwPriorityGroup OBJECT-GROUP + OBJECTS { + pwSetUpPriority, + pwHoldingPriority + } + + STATUS current + DESCRIPTION + "Collection of objects for controlling the PW setup and + holding priority." + ::= { pwGroups 8 } + + pwAttachmentGroup OBJECT-GROUP + OBJECTS { + pwAttachedPwIndex + } + + STATUS current + DESCRIPTION + "Collection of objects for PW configuration as ifIndex." + ::= { pwGroups 9 } + + pwPerformanceGeneralGroup OBJECT-GROUP + OBJECTS { + pwPerfTotalErrorPackets + } + + STATUS current + DESCRIPTION + "Collection of general objects needed for managing the + total running performance parameters." + ::= { pwGroups 10 } + + pwPeformance1DayIntervalGroup OBJECT-GROUP + OBJECTS { + pwPerf1DayIntervalValidData, + pwPerf1DayIntervalTimeElapsed, + pwPerf1DayIntervalInHCPackets, + pwPerf1DayIntervalInHCBytes, + pwPerf1DayIntervalOutHCPackets, + pwPerf1DayIntervalOutHCBytes + } + STATUS current + DESCRIPTION + "Collection of objects needed for a PW running 1-day + + interval performance collection." + ::= { pwGroups 11 } + + pwPerformanceIntervalGeneralGroup OBJECT-GROUP + OBJECTS { + pwTimeElapsed, + pwValidIntervals, + pwPerfIntervalValidData, + pwPerfIntervalTimeElapsed + } + + STATUS current + DESCRIPTION + "Collection of general objects needed for managing the + interval performance parameters." + ::= { pwGroups 12 } + + pwPeformanceIntervalGroup OBJECT-GROUP + OBJECTS { + pwPerfCurrentInPackets, + pwPerfCurrentInBytes, + pwPerfCurrentOutPackets, + pwPerfCurrentOutBytes, + + pwPerfIntervalInPackets, + pwPerfIntervalInBytes, + pwPerfIntervalOutPackets, + pwPerfIntervalOutBytes + } + + STATUS current + DESCRIPTION + "Collection of 32-bit objects needed for PW performance + collection in 15-minute intervals." + ::= { pwGroups 13 } + + pwHCPeformanceIntervalGroup OBJECT-GROUP + OBJECTS { + pwPerfCurrentInHCPackets, + pwPerfCurrentInHCBytes, + pwPerfCurrentOutHCPackets, + pwPerfCurrentOutHCBytes, + + pwPerfIntervalInHCPackets, + pwPerfIntervalInHCBytes, + pwPerfIntervalOutHCPackets, + pwPerfIntervalOutHCBytes + } + + STATUS current + DESCRIPTION + "Collection of HC objects needed for PW performance + collection in 15-minute intervals." + ::= { pwGroups 14 } + + pwMappingTablesGroup OBJECT-GROUP + OBJECTS { + pwIndexMappingPwIndex, + pwPeerMappingPwIndex, + pwGenFecIndexMappingPwIndex + } + + STATUS current + DESCRIPTION + "Collection of objects contained in the reverse + mapping tables." + ::= { pwGroups 15 } + + pwNotificationControlGroup OBJECT-GROUP + OBJECTS { + pwUpDownNotifEnable, + pwDeletedNotifEnable, + pwNotifRate + } + + STATUS current + DESCRIPTION + "Collection of objects for controlling the PW + notifications." + ::= { pwGroups 16 } + + pwNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + pwUp, + pwDown, + pwDeleted + } + + STATUS current + DESCRIPTION + "Collection of PW notifications objects." + ::= { pwGroups 17 } + + pwSignalingGroup OBJECT-GROUP + OBJECTS { + pwPeerAddrType, + pwPeerAddr, + + pwLocalGroupID, + pwLocalIfString, + pwLocalCapabAdvert, + pwRemoteGroupID, + pwCwStatus, + pwRemoteIfMtu, + pwRemoteIfString + } + + STATUS current + DESCRIPTION + "Collection of objects for use in implementations that + support the PW signaling." + ::= { pwGroups 18 } + + END \ No newline at end of file diff --git a/mibs/RIPv2-MIB.txt b/mibs/RIPv2-MIB.txt new file mode 100644 index 00000000..b0c56b70 --- /dev/null +++ b/mibs/RIPv2-MIB.txt @@ -0,0 +1,530 @@ + RIPv2-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Counter32, + TimeTicks, IpAddress FROM SNMPv2-SMI + TEXTUAL-CONVENTION, RowStatus FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF + mib-2 FROM RFC1213-MIB; + + -- This MIB module uses the extended OBJECT-TYPE macro as + -- defined in [9]. + + rip2 MODULE-IDENTITY + LAST-UPDATED "9407272253Z" -- Wed Jul 27 22:53:04 PDT 1994 + ORGANIZATION "IETF RIP-II Working Group" + CONTACT-INFO + " Fred Baker + Postal: Cisco Systems + 519 Lado Drive + Santa Barbara, California 93111 + Tel: +1 805 681 0115 + E-Mail: fbaker@cisco.com + + Postal: Gary Malkin + Xylogics, Inc. + 53 Third Avenue + Burlington, MA 01803 + + Phone: (617) 272-8140 + EMail: gmalkin@Xylogics.COM" + DESCRIPTION + "The MIB module to describe the RIP2 Version 2 Protocol" + ::= { mib-2 23 } + + -- RIP-2 Management Information Base + + -- the RouteTag type represents the contents of the + -- Route Domain field in the packet header or route entry. + -- The use of the Route Domain is deprecated. + + RouteTag ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "the RouteTag type represents the contents of the Route Domain + field in the packet header or route entry" + SYNTAX OCTET STRING (SIZE (2)) + +--4.1 Global Counters + +-- The RIP-2 Globals Group. +-- Implementation of this group is mandatory for systems +-- which implement RIP-2. + +-- These counters are intended to facilitate debugging quickly +-- changing routes or failing neighbors + +rip2Globals OBJECT IDENTIFIER ::= { rip2 1 } + + rip2GlobalRouteChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of route changes made to the IP Route + Database by RIP. This does not include the refresh + of a route's age." + ::= { rip2Globals 1 } + + rip2GlobalQueries OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of responses sent to RIP queries + from other systems." + ::= { rip2Globals 2 } + +--4.2 RIP Interface Tables + +-- RIP Interfaces Groups +-- Implementation of these Groups is mandatory for systems +-- which implement RIP-2. + +-- The RIP Interface Status Table. + + rip2IfStatTable OBJECT-TYPE + SYNTAX SEQUENCE OF Rip2IfStatEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of subnets which require separate + status monitoring in RIP." + ::= { rip2 2 } + + rip2IfStatEntry OBJECT-TYPE + SYNTAX Rip2IfStatEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A Single Routing Domain in a single Subnet." + INDEX { rip2IfStatAddress } + ::= { rip2IfStatTable 1 } + + Rip2IfStatEntry ::= + SEQUENCE { + rip2IfStatAddress + IpAddress, + rip2IfStatRcvBadPackets + Counter32, + rip2IfStatRcvBadRoutes + Counter32, + rip2IfStatSentUpdates + Counter32, + rip2IfStatStatus + RowStatus + } + + rip2IfStatAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP Address of this system on the indicated + subnet. For unnumbered interfaces, the value 0.0.0.N, + where the least significant 24 bits (N) is the ifIndex + for the IP Interface in network byte order." + ::= { rip2IfStatEntry 1 } + + rip2IfStatRcvBadPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of RIP response packets received by + the RIP process which were subsequently discarded + for any reason (e.g. a version 0 packet, or an + unknown command type)." + ::= { rip2IfStatEntry 2 } + + rip2IfStatRcvBadRoutes OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of routes, in valid RIP packets, + which were ignored for any reason (e.g. unknown + address family, or invalid metric)." + ::= { rip2IfStatEntry 3 } + + rip2IfStatSentUpdates OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of triggered RIP updates actually + sent on this interface. This explicitly does + NOT include full updates sent containing new + information." + ::= { rip2IfStatEntry 4 } + + rip2IfStatStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Writing invalid has the effect of deleting + this interface." + ::= { rip2IfStatEntry 5 } + +-- The RIP Interface Configuration Table. + + rip2IfConfTable OBJECT-TYPE + SYNTAX SEQUENCE OF Rip2IfConfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of subnets which require separate + configuration in RIP." + ::= { rip2 3 } + + rip2IfConfEntry OBJECT-TYPE + SYNTAX Rip2IfConfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A Single Routing Domain in a single Subnet." + INDEX { rip2IfConfAddress } + ::= { rip2IfConfTable 1 } + + Rip2IfConfEntry ::= + SEQUENCE { + rip2IfConfAddress + IpAddress, + rip2IfConfDomain + RouteTag, + rip2IfConfAuthType + INTEGER, + rip2IfConfAuthKey + OCTET STRING, + rip2IfConfSend + INTEGER, + rip2IfConfReceive + INTEGER, + rip2IfConfDefaultMetric + INTEGER, + rip2IfConfStatus + RowStatus, + rip2IfConfSrcAddress + IpAddress + } + + rip2IfConfAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP Address of this system on the indicated + subnet. For unnumbered interfaces, the value 0.0.0.N, + where the least significant 24 bits (N) is the ifIndex + for the IP Interface in network byte order." + ::= { rip2IfConfEntry 1 } + + rip2IfConfDomain OBJECT-TYPE + SYNTAX RouteTag + MAX-ACCESS read-create + STATUS obsolete + DESCRIPTION + "Value inserted into the Routing Domain field + of all RIP packets sent on this interface." + DEFVAL { '0000'h } + ::= { rip2IfConfEntry 2 } + + rip2IfConfAuthType OBJECT-TYPE + SYNTAX INTEGER { + noAuthentication (1), + simplePassword (2), + md5 (3) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of Authentication used on this + interface." + DEFVAL { noAuthentication } + ::= { rip2IfConfEntry 3 } + + rip2IfConfAuthKey OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..16)) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value to be used as the Authentication Key + whenever the corresponding instance of + rip2IfConfAuthType has a value other than + noAuthentication. A modification of the corresponding + instance of rip2IfConfAuthType does not modify + the rip2IfConfAuthKey value. If a string shorter + than 16 octets is supplied, it will be left- + justified and padded to 16 octets, on the right, + with nulls (0x00). + + Reading this object always results in an OCTET + STRING of length zero; authentication may not + be bypassed by reading the MIB object." + DEFVAL { ''h } + ::= { rip2IfConfEntry 4 } + + rip2IfConfSend OBJECT-TYPE + SYNTAX INTEGER { + doNotSend (1), + ripVersion1 (2), + rip1Compatible (3), + ripVersion2 (4), + ripV1Demand (5), + ripV2Demand (6) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "What the router sends on this interface. + ripVersion1 implies sending RIP updates compliant + with RFC 1058. rip1Compatible implies + broadcasting RIP-2 updates using RFC 1058 route + subsumption rules. ripVersion2 implies + multicasting RIP-2 updates. ripV1Demand indicates + the use of Demand RIP on a WAN interface under RIP + Version 1 rules. ripV2Demand indicates the use of + Demand RIP on a WAN interface under Version 2 rules." + DEFVAL { rip1Compatible } + ::= { rip2IfConfEntry 5 } + + rip2IfConfReceive OBJECT-TYPE + SYNTAX INTEGER { + rip1 (1), + rip2 (2), + rip1OrRip2 (3), + doNotRecieve (4) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This indicates which version of RIP updates + are to be accepted. Note that rip2 and + rip1OrRip2 implies reception of multicast + packets." + DEFVAL { rip1OrRip2 } + ::= { rip2IfConfEntry 6 } + + rip2IfConfDefaultMetric OBJECT-TYPE + SYNTAX INTEGER ( 0..15 ) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the metric that is to + be used for the default route entry in RIP updates + originated on this interface. A value of zero + indicates that no default route should be + originated; in this case, a default route via + another router may be propagated." + ::= { rip2IfConfEntry 7 } + + rip2IfConfStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Writing invalid has the effect of deleting + this interface." + ::= { rip2IfConfEntry 8 } + + rip2IfConfSrcAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The IP Address this system will use as a source + address on this interface. If it is a numbered + interface, this MUST be the same value as + rip2IfConfAddress. On unnumbered interfaces, + it must be the value of rip2IfConfAddress for + some interface on the system." + ::= { rip2IfConfEntry 9 } + +--4.3 Peer Table + +-- Peer Table + +-- The RIP Peer Group +-- Implementation of this Group is Optional + +-- This group provides information about active peer +-- relationships intended to assist in debugging. An +-- active peer is a router from which a valid RIP +-- updated has been heard in the last 180 seconds. + + rip2PeerTable OBJECT-TYPE + SYNTAX SEQUENCE OF Rip2PeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of RIP Peers." + ::= { rip2 4 } + + rip2PeerEntry OBJECT-TYPE + SYNTAX Rip2PeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information regarding a single routing peer." + INDEX { rip2PeerAddress, rip2PeerDomain } + ::= { rip2PeerTable 1 } + + Rip2PeerEntry ::= + SEQUENCE { + rip2PeerAddress + IpAddress, + rip2PeerDomain + RouteTag, + rip2PeerLastUpdate + TimeTicks, + rip2PeerVersion + INTEGER, + rip2PeerRcvBadPackets + Counter32, + rip2PeerRcvBadRoutes + Counter32 + } + + rip2PeerAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP Address that the peer is using as its source + address. Note that on an unnumbered link, this may + not be a member of any subnet on the system." + ::= { rip2PeerEntry 1 } + + rip2PeerDomain OBJECT-TYPE + SYNTAX RouteTag + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value in the Routing Domain field in RIP + packets received from the peer. As domain suuport + is deprecated, this must be zero." + ::= { rip2PeerEntry 2 } + + rip2PeerLastUpdate OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime when the most recent + RIP update was received from this system." + ::= { rip2PeerEntry 3 } + + rip2PeerVersion OBJECT-TYPE + SYNTAX INTEGER ( 0..255 ) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The RIP version number in the header of the + last RIP packet received." + ::= { rip2PeerEntry 4 } + + rip2PeerRcvBadPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of RIP response packets from this + peer discarded as invalid." + ::= { rip2PeerEntry 5 } + + + rip2PeerRcvBadRoutes OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of routes from this peer that were + ignored because the entry format was invalid." + ::= { rip2PeerEntry 6 } + +-- conformance information + +rip2Conformance OBJECT IDENTIFIER ::= { rip2 5 } + +rip2Groups OBJECT IDENTIFIER ::= { rip2Conformance 1 } +rip2Compliances OBJECT IDENTIFIER ::= { rip2Conformance 2 } + +-- compliance statements +rip2Compliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement " + MODULE -- this module + MANDATORY-GROUPS { + rip2GlobalGroup, + rip2IfStatGroup, + rip2IfConfGroup, + rip2PeerGroup + } + GROUP rip2GlobalGroup + DESCRIPTION + "This group defines global controls for RIP-II systems." + GROUP rip2IfStatGroup + DESCRIPTION + "This group defines interface statistics for RIP-II systems." + GROUP rip2IfConfGroup + DESCRIPTION + "This group defines interface configuration for RIP-II systems." + GROUP rip2PeerGroup + DESCRIPTION + "This group defines peer information for RIP-II systems." + ::= { rip2Compliances 1 } + +-- units of conformance + +rip2GlobalGroup OBJECT-GROUP + OBJECTS { + rip2GlobalRouteChanges, + rip2GlobalQueries + } + STATUS current + DESCRIPTION + "This group defines global controls for RIP-II systems." + ::= { rip2Groups 1 } +rip2IfStatGroup OBJECT-GROUP + OBJECTS { + rip2IfStatAddress, + rip2IfStatRcvBadPackets, + rip2IfStatRcvBadRoutes, + rip2IfStatSentUpdates, + rip2IfStatStatus + } + STATUS current + DESCRIPTION + "This group defines interface statistics for RIP-II systems." + ::= { rip2Groups 2 } +rip2IfConfGroup OBJECT-GROUP + OBJECTS { + rip2IfConfAddress, + rip2IfConfAuthType, + rip2IfConfAuthKey, + rip2IfConfSend, + rip2IfConfReceive, + rip2IfConfDefaultMetric, + rip2IfConfStatus, + rip2IfConfSrcAddress + } + STATUS current + DESCRIPTION + "This group defines interface configuration for RIP-II systems." + ::= { rip2Groups 3 } +rip2PeerGroup OBJECT-GROUP + OBJECTS { + rip2PeerAddress, + rip2PeerDomain, + rip2PeerLastUpdate, + rip2PeerVersion, + rip2PeerRcvBadPackets, + rip2PeerRcvBadRoutes + } + STATUS current + DESCRIPTION + "This group defines peer information for RIP-II systems." + ::= { rip2Groups 4 } +END \ No newline at end of file diff --git a/mibs/VRRPV3-MIB.txt b/mibs/VRRPV3-MIB.txt new file mode 100644 index 00000000..1ad95b71 --- /dev/null +++ b/mibs/VRRPV3-MIB.txt @@ -0,0 +1,976 @@ + VRRPV3-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, + NOTIFICATION-TYPE, Counter32, + Integer32, mib-2, Unsigned32, + Counter64, TimeTicks + FROM SNMPv2-SMI -- RFC2578 + + TEXTUAL-CONVENTION, RowStatus, + MacAddress, TruthValue, TimeStamp, + TimeInterval + FROM SNMPv2-TC -- RFC2579 + + MODULE-COMPLIANCE, OBJECT-GROUP, + NOTIFICATION-GROUP + FROM SNMPv2-CONF -- RFC2580 + + + ifIndex + FROM IF-MIB -- RFC2863 + InetAddressType, InetAddress + + FROM INET-ADDRESS-MIB; -- RFC4001 + + vrrpv3MIB MODULE-IDENTITY + LAST-UPDATED "201202130000Z" -- Feb 13, 2012 + ORGANIZATION "IETF VRRP Working Group" + CONTACT-INFO + "WG E-Mail: vrrp@ietf.org + + Editor: Kalyan Tata + Nokia + 313 Fairchild Dr, + Mountain View, CA 94043 + Tata_kalyan@yahoo.com" + + DESCRIPTION + "This MIB describes objects used for managing Virtual + Router Redundancy Protocol version 3 (VRRPv3). + + Copyright (c) 2012 IETF Trust and the persons + identified as authors of the code. All rights + reserved. + + Redistribution and use in source and binary forms, + with or without modification, is permitted pursuant + to, and subject to the license terms contained in, + the Simplified BSD License set forth in Section + 4.c of the IETF Trust's Legal Provisions Relating + to IETF Documents + (http://trustee.ietf.org/license-info). + + This version of the MIB module is part of RFC 6527. + Please see the RFC for full legal notices." + + REVISION "201202120000Z" -- Feb 13, 2012 + DESCRIPTION "Initial version as published in RFC 6527." + + ::= { mib-2 207 } + + -- Textual Conventions + + Vrrpv3VrIdTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + + "The value of the Virtual Router Identifier noted as + (VRID) in RFC 5798. This, along with interface index + (ifIndex) and IP version, serves to uniquely identify + a virtual router on a given VRRP router." + REFERENCE "RFC 5798 (Sections 3 and 5.2.3)" + SYNTAX Integer32 (1..255) + + -- VRRPv3 MIB Groups + + vrrpv3Notifications OBJECT IDENTIFIER ::= { vrrpv3MIB 0 } + vrrpv3Objects OBJECT IDENTIFIER ::= { vrrpv3MIB 1 } + vrrpv3Conformance OBJECT IDENTIFIER ::= { vrrpv3MIB 2 } + + -- VRRPv3 MIB Objects + + vrrpv3Operations OBJECT IDENTIFIER ::= { vrrpv3Objects 1 } + vrrpv3Statistics OBJECT IDENTIFIER ::= { vrrpv3Objects 2 } + + -- VRRPv3 Operations Table + + vrrpv3OperationsTable OBJECT-TYPE + SYNTAX SEQUENCE OF Vrrpv3OperationsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Unified Operations table for a VRRP router that + consists of a sequence (i.e., one or more conceptual + rows) of 'vrrpv3OperationsEntry' items each of which + describe the operational characteristics of a virtual + router." + + ::= { vrrpv3Operations 1 } + + vrrpv3OperationsEntry OBJECT-TYPE + SYNTAX Vrrpv3OperationsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in the vrrpv3OperationsTable containing the + operational characteristics of a virtual router. + On a VRRP router, a given virtual router is + identified by a combination of ifIndex, VRID, and + the IP version. ifIndex represents an interface of + the router. + + A row must be created with vrrpv3OperationsStatus + set to initialize(1) and cannot transition to + backup(2) or master(3) until + + vrrpv3OperationsRowStatus is transitioned to + active(1). + + The information in this table is persistent and when + written the entity SHOULD save the change to non- + volatile storage." + + INDEX { ifIndex, vrrpv3OperationsVrId, + vrrpv3OperationsInetAddrType + } + ::= { vrrpv3OperationsTable 1 } + + Vrrpv3OperationsEntry ::= + + SEQUENCE { + vrrpv3OperationsVrId + Vrrpv3VrIdTC, + vrrpv3OperationsInetAddrType + InetAddressType, + vrrpv3OperationsMasterIpAddr + InetAddress, + vrrpv3OperationsPrimaryIpAddr + InetAddress, + vrrpv3OperationsVirtualMacAddr + MacAddress, + vrrpv3OperationsStatus + INTEGER, + vrrpv3OperationsPriority + Unsigned32, + vrrpv3OperationsAddrCount + Integer32, + vrrpv3OperationsAdvInterval + TimeInterval, + vrrpv3OperationsPreemptMode + TruthValue, + vrrpv3OperationsAcceptMode + TruthValue, + vrrpv3OperationsUpTime + TimeTicks, + vrrpv3OperationsRowStatus + RowStatus + } + vrrpv3OperationsVrId OBJECT-TYPE + SYNTAX Vrrpv3VrIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + + "This object contains the Virtual Router Identifier + (VRID)." + REFERENCE "RFC 4001" + ::= { vrrpv3OperationsEntry 1 } + + vrrpv3OperationsInetAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP address type of Vrrpv3OperationsEntry and + Vrrpv3AssociatedIpAddrEntry. This value determines + the type for vrrpv3OperationsMasterIpAddr, + vrrpv3OperationsPrimaryIpAddr, and + vrrpv3AssociatedIpAddrAddress. + + ipv4(1) and ipv6(2) are the only two values supported + in this MIB module." + REFERENCE "RFC 4001" + ::= { vrrpv3OperationsEntry 2 } + + vrrpv3OperationsMasterIpAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The master router's real IP address. The master router + would set this address to vrrpv3OperationsPrimaryIpAddr + while transitioning to master state. For backup + routers, this is the IP address listed as the source in + the VRRP advertisement last received by this virtual + router." + REFERENCE "RFC 5798" + ::= { vrrpv3OperationsEntry 3 } + + vrrpv3OperationsPrimaryIpAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "In the case where there is more than one IP + Address (associated IP addresses) for a given + 'ifIndex', this object is used to specify the IP + address that will become the + vrrpv3OperationsMasterIpAddr', should the virtual + router transition from backup state to master." + ::= { vrrpv3OperationsEntry 4 } + + + vrrpv3OperationsVirtualMacAddr OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The virtual MAC address of the virtual router. + Although this object can be derived from the + 'vrrpv3OperationsVrId' object, it is defined so that it + is easily obtainable by a management application and + can be included in VRRP-related SNMP notifications." + ::= { vrrpv3OperationsEntry 5 } + + vrrpv3OperationsStatus OBJECT-TYPE + SYNTAX INTEGER { + initialize(1), + backup(2), + master(3) + } + MAX-ACCESS read-only + STATUS current + + DESCRIPTION + "The current state of the virtual router. This object + has three defined values: + + - 'initialize', which indicates that the + virtual router is waiting for a startup event. + + - 'backup', which indicates that the virtual router is + monitoring the availability of the master router. + + - 'master', which indicates that the virtual router + is forwarding packets for IP addresses that are + associated with this router." + REFERENCE "RFC 5798" + ::= { vrrpv3OperationsEntry 6 } + + vrrpv3OperationsPriority OBJECT-TYPE + SYNTAX Unsigned32 (0..255) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object specifies the priority to be used for the + virtual router master election process; higher values + imply higher priority. + + A priority of '0', although not settable, is sent by + the master router to indicate that this router has + + ceased to participate in VRRP, and a backup virtual + router should transition to become a new master. + + A priority of 255 is used for the router that owns the + associated IP address(es) for VRRP over IPv4 and hence + is not settable. + + Setting the values of this object to 0 or 255 should be + rejected by the agents implementing this MIB module. + For example, an SNMP agent would return 'badValue(3)' + when a user tries to set the values 0 or 255 for this + object." + + REFERENCE "RFC 5798, Section 6.1" + DEFVAL { 100 } + ::= { vrrpv3OperationsEntry 7 } + + vrrpv3OperationsAddrCount OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of IP addresses that are associated with + this virtual router. This number is equal to the + number of rows in the vrrpv3AssociatedAddrTable that + correspond to a given ifIndex/VRID/IP version." + REFERENCE "RFC 5798, Section 6.1" + ::= { vrrpv3OperationsEntry 8 } + + vrrpv3OperationsAdvInterval OBJECT-TYPE + SYNTAX TimeInterval (1..4095) + UNITS "centiseconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The time interval, in centiseconds, between sending + advertisement messages. Only the master router sends + VRRP advertisements." + REFERENCE "RFC 5798, Section 6.1" + DEFVAL { 100} + ::= { vrrpv3OperationsEntry 9 } + + vrrpv3OperationsPreemptMode OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + "Controls whether a higher priority virtual router will + preempt a lower priority master." + REFERENCE "RFC 5798, Section 6.1" + DEFVAL { true } + ::= { vrrpv3OperationsEntry 10 } + + vrrpv3OperationsAcceptMode OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Controls whether a virtual router in master state + will accept packets addressed to the address owner's + IPv6 address as its own if it is not the IPv6 address + owner. Default is false(2). + This object is not relevant for rows representing VRRP + over IPv4 and should be set to false(2)." + DEFVAL { false } + ::= { vrrpv3OperationsEntry 11 } + + vrrpv3OperationsUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the amount of time, in + TimeTicks (hundredth of a second), since this virtual + router (i.e., the 'vrrpv3OperationsStatus') + transitioned out of 'initialize'." + REFERENCE "RFC 5798, Section 6.1" + ::= { vrrpv3OperationsEntry 12 } + + vrrpv3OperationsRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The RowStatus variable should be used in accordance to + installation and removal conventions for conceptual + rows. + + To create a row in this table, a manager sets this + object to either createAndGo(4) or createAndWait(5). + Until instances of all corresponding columns are + appropriately configured, the value of the + corresponding instance of the + 'vrrpv3OperationsRowStatus' column will be read as + notReady(3). + + In particular, a newly created row cannot be made + active(1) until (minimally) the corresponding instance + of vrrpv3OperationsInetAddrType, vrrpv3OperationsVrId, + and vrrpv3OperationsPrimaryIpAddr has been set, and + there is at least one active row in the + 'vrrpv3AssociatedIpAddrTable' defining an associated + IP address. + + notInService(2) should be used to administratively + bring the row down. + + A typical order of operation to add a row is: + 1. Create a row in vrrpv3OperationsTable with + createAndWait(5). + 2. Create one or more corresponding rows in + vrrpv3AssociatedIpAddrTable. + 3. Populate the vrrpv3OperationsEntry. + 4. Set vrrpv3OperationsRowStatus to active(1). + + A typical order of operation to delete an entry is: + 1. Set vrrpv3OperationsRowStatus to notInService(2). + 2. Set the corresponding rows in + vrrpv3AssociatedIpAddrTable to destroy(6) to delete + the entry. + 3. Set vrrpv3OperationsRowStatus to destroy(6) to + delete the entry." + ::= { vrrpv3OperationsEntry 13 } + + -- VRRP Associated Address Table + + vrrpv3AssociatedIpAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF Vrrpv3AssociatedIpAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table of addresses associated with each virtual + router." + ::= { vrrpv3Operations 2 } + + vrrpv3AssociatedIpAddrEntry OBJECT-TYPE + SYNTAX Vrrpv3AssociatedIpAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in the table contains an IP address that is + associated with a virtual router. The number of rows + for a given IP version, VrID, and ifIndex will equal + the number of IP addresses associated (e.g., backed up) + + by the virtual router (equivalent to + 'vrrpv3OperationsIpAddrCount'). + + Rows in the table cannot be modified unless the value + of 'vrrpv3OperationsStatus' for the corresponding entry + in the vrrpv3OperationsTable has transitioned to + initialize(1). + + The information in this table is persistent and when + written the entity SHOULD save the change to non- + volatile storage." + + INDEX { ifIndex, vrrpv3OperationsVrId, + vrrpv3OperationsInetAddrType, + vrrpv3AssociatedIpAddrAddress } + + ::= { vrrpv3AssociatedIpAddrTable 1 } + + Vrrpv3AssociatedIpAddrEntry ::= + SEQUENCE { + vrrpv3AssociatedIpAddrAddress + + InetAddress, + vrrpv3AssociatedIpAddrRowStatus + RowStatus + } + + vrrpv3AssociatedIpAddrAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The assigned IP addresses that a virtual router is + responsible for backing up. + + The IP address type is determined by the value of + vrrpv3OperationsInetAddrType in the index of this + row." + REFERENCE "RFC 5798" + ::= { vrrpv3AssociatedIpAddrEntry 1 } + + vrrpv3AssociatedIpAddrRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The row status variable, used according to + installation and removal conventions for conceptual + + rows. To create a row in this table, a manager sets + this object to either createAndGo(4) or + createAndWait(5). Setting this object to active(1) + results in the addition of an associated address for a + virtual router. Setting this object to notInService(2) + results in administratively bringing down the row. + + Destroying the entry or setting it to destroy(6) + removes the associated address from the virtual router. + The use of other values is implementation-dependent. + + Implementations should not allow deletion of the last + row corresponding to an active row in + vrrpv3OperationsTable. + + Refer to the description of vrrpv3OperationsRowStatus + for typical row creation and deletion scenarios." + ::= { vrrpv3AssociatedIpAddrEntry 2 } + + -- VRRP Router Statistics + + vrrpv3RouterChecksumErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP packets received with an + invalid VRRP checksum value. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3GlobalStatisticsDiscontinuityTime." + + REFERENCE "RFC 5798, Section 5.2.8" + ::= { vrrpv3Statistics 1 } + + vrrpv3RouterVersionErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP packets received with an + unknown or unsupported version number. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + + + other times as indicated by the value of + vrrpv3GlobalStatisticsDiscontinuityTime." + + REFERENCE "RFC 5798, Section 5.2.1" + ::= { vrrpv3Statistics 2 } + + vrrpv3RouterVrIdErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP packets received with a + VRID that is not valid for any virtual router on this + router. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3GlobalStatisticsDiscontinuityTime." + + REFERENCE "RFC 5798, Section 5.2.3" + ::= { vrrpv3Statistics 3 } + + vrrpv3GlobalStatisticsDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion at + which one of vrrpv3RouterChecksumErrors, + vrrpv3RouterVersionErrors, and vrrpv3RouterVrIdErrors + suffered a discontinuity. + + If no such discontinuities have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." + + ::= { vrrpv3Statistics 4 } + + -- VRRP Router Statistics Table + + vrrpv3StatisticsTable OBJECT-TYPE + SYNTAX SEQUENCE OF Vrrpv3StatisticsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Table of virtual router statistics." + ::= { vrrpv3Statistics 5 } + + vrrpv3StatisticsEntry OBJECT-TYPE + SYNTAX Vrrpv3StatisticsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in the table containing statistics + information about a given virtual router." + AUGMENTS { vrrpv3OperationsEntry } + ::= { vrrpv3StatisticsTable 1 } + + Vrrpv3StatisticsEntry ::= + SEQUENCE { + vrrpv3StatisticsMasterTransitions + Counter32, + vrrpv3StatisticsNewMasterReason + INTEGER, + vrrpv3StatisticsRcvdAdvertisements + Counter64, + vrrpv3StatisticsAdvIntervalErrors + Counter64, + vrrpv3StatisticsIpTtlErrors + Counter64, + vrrpv3StatisticsProtoErrReason + INTEGER, + vrrpv3StatisticsRcvdPriZeroPackets + Counter64, + vrrpv3StatisticsSentPriZeroPackets + Counter64, + vrrpv3StatisticsRcvdInvalidTypePackets + Counter64, + vrrpv3StatisticsAddressListErrors + Counter64, + vrrpv3StatisticsPacketLengthErrors + Counter64, + vrrpv3StatisticsRowDiscontinuityTime + TimeStamp, + vrrpv3StatisticsRefreshRate + Unsigned32 + } + + vrrpv3StatisticsMasterTransitions OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of times that this virtual router's + state has transitioned to master state. + + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + ::= { vrrpv3StatisticsEntry 1 } + + vrrpv3StatisticsNewMasterReason OBJECT-TYPE + SYNTAX INTEGER { + notMaster (0), + priority (1), + preempted (2), + masterNoResponse (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This indicates the reason for the virtual router to + transition to master state. If the virtual router + never transitioned to master state, the value of this + object is notMaster(0). Otherwise, this indicates the + reason this virtual router transitioned to master + state the last time. Used by vrrpv3NewMaster + notification." + ::= { vrrpv3StatisticsEntry 2 } + + vrrpv3StatisticsRcvdAdvertisements OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP advertisements received by + this virtual router. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + + ::= { vrrpv3StatisticsEntry 3 } + + vrrpv3StatisticsAdvIntervalErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP advertisement packets + received for which the advertisement interval is + + + different from the vrrpv3OperationsAdvInterval + configured on this virtual router. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + + ::= { vrrpv3StatisticsEntry 4 } + + vrrpv3StatisticsIpTtlErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP packets received by the + virtual router with IPv4 TTL (for VRRP over IPv4) or + IPv6 Hop Limit (for VRRP over IPv6) not equal to 255. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + REFERENCE "RFC 5798, Section 5.1.1.3" + ::= { vrrpv3StatisticsEntry 5 } + + vrrpv3StatisticsProtoErrReason OBJECT-TYPE + SYNTAX INTEGER { + noError (0), + ipTtlError (1), + versionError (2), + checksumError (3), + vrIdError(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This indicates the reason for the last protocol + error. This SHOULD be set to noError(0) when no + protocol errors are encountered. Used by + vrrpv3ProtoError notification." + ::= { vrrpv3StatisticsEntry 6 } + + vrrpv3StatisticsRcvdPriZeroPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + "The total number of VRRP packets received by the + virtual router with a priority of '0'. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + REFERENCE "RFC 5798, Section 5.2.4" + ::= { vrrpv3StatisticsEntry 7 } + + vrrpv3StatisticsSentPriZeroPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP packets sent by the virtual + router with a priority of '0'. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + REFERENCE "RFC 5798, Section 5.2.4" + ::= { vrrpv3StatisticsEntry 8 } + + vrrpv3StatisticsRcvdInvalidTypePackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of VRRP packets received by the virtual + router with an invalid value in the 'type' field. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + ::= { vrrpv3StatisticsEntry 9 } + + vrrpv3StatisticsAddressListErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of packets received for which the + address list does not match the locally configured + list for the virtual router. + + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + ::= { vrrpv3StatisticsEntry 10 } + + vrrpv3StatisticsPacketLengthErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of packets received with a packet + length less than the length of the VRRP header. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + ::= { vrrpv3StatisticsEntry 11 } + + vrrpv3StatisticsRowDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion at + which any one or more of this entry's counters + suffered a discontinuity. + + If no such discontinuities have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." + ::= { vrrpv3StatisticsEntry 12 } + + vrrpv3StatisticsRefreshRate OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "milliseconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum reasonable polling interval for this entry. + This object provides an indication of the minimum + amount of time required to update the counters in this + entry." + ::= { vrrpv3StatisticsEntry 13 } + + -- Notification Definitions + -- Notifications may be controlled using SNMP-NOTIFICATION-MIB + + vrrpv3NewMaster NOTIFICATION-TYPE + OBJECTS { + vrrpv3OperationsMasterIpAddr, + vrrpv3StatisticsNewMasterReason + } + STATUS current + DESCRIPTION + "The newMaster notification indicates that the sending + agent has transitioned to master state." + ::= { vrrpv3Notifications 1 } + + vrrpv3ProtoError NOTIFICATION-TYPE + OBJECTS { + vrrpv3StatisticsProtoErrReason + } + STATUS current + DESCRIPTION + "The notification indicates that the sending agent has + encountered the protocol error indicated by + vrrpv3StatisticsProtoErrReason." + ::= { vrrpv3Notifications 2 } + + -- Conformance Information + + vrrpv3Compliances OBJECT IDENTIFIER ::= { vrrpv3Conformance 1 } + vrrpv3Groups OBJECT IDENTIFIER ::= { vrrpv3Conformance 2 } + + -- Compliance Statements + + vrrpv3FullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement" + MODULE -- this module + MANDATORY-GROUPS { + vrrpv3OperationsGroup, + vrrpv3StatisticsGroup, + vrrpv3InfoGroup, + vrrpv3NotificationsGroup + } + OBJECT vrrpv3OperationsPriority + WRITE-SYNTAX Unsigned32 (1..254) + DESCRIPTION "Setable values are from 1 to 254." + ::= { vrrpv3Compliances 1 } + + vrrpv3ReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + + "When this MIB module is implemented without support + for read-create (i.e., in read-only mode), then such + an implementation can claim read-only compliance. + Such a device can then be monitored, but cannot be + configured with this MIB." + + MODULE -- this module + MANDATORY-GROUPS { + vrrpv3OperationsGroup, + vrrpv3StatisticsGroup, + vrrpv3StatisticsDiscontinuityGroup, + vrrpv3InfoGroup, + vrrpv3NotificationsGroup + } + + OBJECT vrrpv3OperationsPriority + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT vrrpv3OperationsPrimaryIpAddr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + OBJECT vrrpv3OperationsAdvInterval + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT vrrpv3OperationsPreemptMode + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT vrrpv3OperationsAcceptMode + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT vrrpv3OperationsRowStatus + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT vrrpv3AssociatedIpAddrRowStatus + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { vrrpv3Compliances 2 } + + -- Conformance Groups + + vrrpv3OperationsGroup OBJECT-GROUP + OBJECTS { + + vrrpv3OperationsVirtualMacAddr, + vrrpv3OperationsStatus, + vrrpv3OperationsPriority, + vrrpv3OperationsMasterIpAddr, + vrrpv3OperationsAdvInterval, + vrrpv3OperationsPreemptMode, + vrrpv3OperationsAcceptMode, + vrrpv3OperationsUpTime, + vrrpv3OperationsRowStatus, + vrrpv3OperationsAddrCount, + vrrpv3OperationsPrimaryIpAddr, + vrrpv3AssociatedIpAddrRowStatus + } + STATUS current + DESCRIPTION + "Conformance group for VRRPv3 operations." + ::= { vrrpv3Groups 1 } + + vrrpv3StatisticsGroup OBJECT-GROUP + OBJECTS { + vrrpv3RouterChecksumErrors, + vrrpv3RouterVersionErrors, + vrrpv3RouterVrIdErrors, + vrrpv3StatisticsMasterTransitions, + vrrpv3StatisticsNewMasterReason, + vrrpv3StatisticsRcvdAdvertisements, + vrrpv3StatisticsAdvIntervalErrors, + vrrpv3StatisticsRcvdPriZeroPackets, + vrrpv3StatisticsSentPriZeroPackets, + vrrpv3StatisticsRcvdInvalidTypePackets, + vrrpv3StatisticsIpTtlErrors, + vrrpv3StatisticsProtoErrReason, + vrrpv3StatisticsAddressListErrors, + vrrpv3StatisticsPacketLengthErrors, + vrrpv3StatisticsRowDiscontinuityTime, + vrrpv3StatisticsRefreshRate + } + STATUS current + DESCRIPTION + "Conformance group for VRRPv3 statistics." + ::= { vrrpv3Groups 2 } + + vrrpv3StatisticsDiscontinuityGroup OBJECT-GROUP + OBJECTS { + vrrpv3GlobalStatisticsDiscontinuityTime + } + STATUS current + DESCRIPTION + + "Objects providing information about counter + discontinuities." + ::= { vrrpv3Groups 3 } + + vrrpv3InfoGroup OBJECT-GROUP + OBJECTS { + vrrpv3StatisticsProtoErrReason, + vrrpv3StatisticsNewMasterReason + } + STATUS current + DESCRIPTION + "Conformance group for objects contained in VRRPv3 + notifications." + ::= { vrrpv3Groups 4 } + + vrrpv3NotificationsGroup NOTIFICATION-GROUP + NOTIFICATIONS { + vrrpv3NewMaster, + vrrpv3ProtoError + } + STATUS current + DESCRIPTION + "The VRRP MIB Notification Group." + ::= { vrrpv3Groups 5 } + + END \ No newline at end of file From ebb2e69fe729def5daf992626a3e73fdda7e6a6c Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Wed, 6 Jul 2016 12:31:42 +0530 Subject: [PATCH 04/12] Yang Files and Ansible plugin --- ansible/ocnos_configs.py | 177 + yang-files/ZebOS.yang | 103 + yang-files/bgp.yang | 6002 +++++++++++++++++++++++++++++++++ yang-files/bridge.yang | 1327 ++++++++ yang-files/interface.yang | 653 ++++ yang-files/layer2LACP.yang | 107 + yang-files/lldpv2.yang | 298 ++ yang-files/mstp.yang | 692 ++++ yang-files/nsmLACP.yang | 115 + yang-files/oamBfd.yang | 481 +++ yang-files/ospf.yang | 3697 ++++++++++++++++++++ yang-files/ospf6.yang | 2312 +++++++++++++ yang-files/rib.yang | 342 ++ yang-files/vlan.yang | 123 + yang-files/vlaninterface.yang | 278 ++ yang-files/vr.yang | 106 + yang-files/vrf.yang | 82 + yang-files/zebmcli.yang | 66 + 18 files changed, 16961 insertions(+) create mode 100755 ansible/ocnos_configs.py create mode 100644 yang-files/ZebOS.yang create mode 100644 yang-files/bgp.yang create mode 100644 yang-files/bridge.yang create mode 100644 yang-files/interface.yang create mode 100644 yang-files/layer2LACP.yang create mode 100644 yang-files/lldpv2.yang create mode 100644 yang-files/mstp.yang create mode 100644 yang-files/nsmLACP.yang create mode 100644 yang-files/oamBfd.yang create mode 100644 yang-files/ospf.yang create mode 100644 yang-files/ospf6.yang create mode 100644 yang-files/rib.yang create mode 100644 yang-files/vlan.yang create mode 100644 yang-files/vlaninterface.yang create mode 100644 yang-files/vr.yang create mode 100644 yang-files/vrf.yang create mode 100644 yang-files/zebmcli.yang diff --git a/ansible/ocnos_configs.py b/ansible/ocnos_configs.py new file mode 100755 index 00000000..64482ac5 --- /dev/null +++ b/ansible/ocnos_configs.py @@ -0,0 +1,177 @@ +#!/usr/bin/python +# +# Copyright (C) 2016 IP Infusion, Inc. All Rights Reserved. +# + +# Import required standard ansible modules # +import socket +import pickle +import subprocess +from distutils.version import LooseVersion +from ansible.module_utils.basic import * + +# Documentation # +''' +Documentation + This Ansible module prepares and executes 'ocsh' commands for given input tasks + +Usage + Inputs can be given in following formats: + 1) Place commands to be executed with values + e.g. bridge 1 protocol ieee vlan-aware + + 2) Using placeholders (?) instead of actual input values in command + e.g bridge ? protocol ? ? | 1,ieee,vlan-aware; 2,mstp,ring; 3,rstp + + This is useful when same command needs to get executed with multiple values. + | - Used to separate command and values + , - Used to separate values for place-holders + ; - Used to separate set of inputs for a command + $ - Used to separate commands given in same line + +Subtasks: + ocnos_configs supports following three types of subtasks: + 1) config_cmds : Input for this will be executed in ocsh's config mode + 2) exec_cmd : Input for this will be executed in ocsh's exec mode + 3) module_config_cmds : Input for this will be executed as a group in ocsh's config mode + +Example playbook: + +--- +- hosts: OCNOS + tasks: + - ocnos_configs: + config_cmds: + - 'bridge ? protocol ? ? | 1, ieee; 2,mstp,ring; 3,rstp $ interface eth3' + - ocnos_configs: + config_cmds: + - 'vlan ? protocol ? ? | 1,ieee; 2,mstp,ring; 3,rstp' + - 'hostname {{ hostnameid }}' + module_config_cmds: + - 'interface ? $ bandwidth ? | eth1; 1g; $ eth2; 10g;' + - ocnos_configs: + exec_cmds: + - 'write' + +''' + +# Function to fill input for placeholders '?' # +def fill_values_for_placeholders (string, comm): + argv = comm.split(',') + command = '' + i = 0 + length = 0 + if '?' in string: + if len(argv) >0 : + for index,ch in enumerate(string): + length +=1 + if ch == '?': + string=string.replace(ch,argv[i].strip(),1) + length += len(argv[i].strip()) + i += 1 + if i == len(argv): + if '?' in string: + sep_index = string.index('?') + last_index = string[:sep_index-1].rfind(' ') + command = string[:sep_index-1] + else: + command = string + break + else: + command = string + return command + +# Function to handle module_config_cmd # +def create_group_command (name): + cstr = '' + command_list = [] + playbook_com = name.split('|') + playbook_argvs = playbook_com[1].split('$') + for argv in playbook_argvs: + playbook_command = playbook_com[0].split('$') + command = argv.split(';') + for index,last_cmd in enumerate(playbook_command): + if index < len(command): + string = fill_values_for_placeholders (last_cmd,command[index]) + command_list.append(string) + else: + if '?' in last_cmd: + sep_index = last_cmd.index('?') + string = last_cmd[:sep_index-1] + command_list.append(string) + else: + command_list.append(last_cmd) + for commd in command_list: + cstr = cstr + " -e \"" + commd + "\"" + return cstr + +# Function to convert playbook input to ocsh command # +def create_ocsh_cmd_from_playbook_task (module, input_task): + command = [] + cstr = '' + + playbook_command = input_task.split('|') + if len(playbook_command) > 1: + argv_list = playbook_command[1].split(';') + if len(argv_list) > 0: + for comm in argv_list: + string = fill_values_for_placeholders (playbook_command[0] ,comm) + command.append(string) + else: + command.append(playbook_command[0].strip()) + for commd in command: + cstr = cstr + " -e \"" + commd + "\"" + return cstr + +# MAIN Function Definition # +def main(): + module = AnsibleModule( + argument_spec = dict( + config_cmds = dict (default=None, type='list'), + exec_cmds = dict (default=None, type='list'), + module_config_cmds = dict (default=None, type='list') + ) + ) + + # Prepare cmd # + ocsh_cmd = '/usr/local/sbin/ocsh -k ' + + # Get playbook inputs for tasks # + config_cmd = module.params['config_cmds'] + exec_cmd = module.params['exec_cmds'] + group_cmd = module.params['module_config_cmds'] + + # Handle Execution mode cmds # + if exec_cmd != None and len(exec_cmd) > 0: + for execCmd in exec_cmd: + if execCmd is not None: + ocsh_cmd += create_ocsh_cmd_from_playbook_task (module, execCmd.strip()) + + # Handle Config mode commands # + if config_cmd != None and len(config_cmd) > 0: + ocsh_cmd += ' -e \"config terminal\" ' + for cmds in config_cmd: + if cmds is not None: + ocsh_cmd += create_ocsh_cmd_from_playbook_task (module, cmds.strip()) + + # Handle group cmd # + if group_cmd != None and len(group_cmd) > 0: + ocsh_cmd += ' -e \"config terminal\" ' + for each_cmd in group_cmd: + if each_cmd is not None: + ocsh_cmd += create_group_command(each_cmd) + + # Dump Result # + name='' + (rc, out, err) = module.run_command(ocsh_cmd) + if rc != 0: + module.fail_json(msg = out) + else: + module.exit_json(changed=True, name=name, + ansible_facts=dict(ansible_hostname=name.split(','), + ansible_nodename=name, + ansible_fqdn=socket.getfqdn(), + ansible_domain='.'.join(socket.getfqdn().split('.')[1:]))) + +# Entry point # +main() diff --git a/yang-files/ZebOS.yang b/yang-files/ZebOS.yang new file mode 100644 index 00000000..87a3a30c --- /dev/null +++ b/yang-files/ZebOS.yang @@ -0,0 +1,103 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : ZebOS.yang +* +*/ + +module ZebOS { + + namespace "http://www.ipinfusion.com/CMLSchema/ZebOS"; + + prefix "ZebOS"; + include nsmLACP; + include oamBfd; + include bridge; + include ospf; + include vlan; + include mstp; + include layer2LACP; + include bgp; + include vr; + include vrf; + include interface; + include lldpv2; + include ospf6; + include rib; + include vlaninterface; + + + import cml_data_types { + prefix cml_data_types; + } + organization + "http://www.ipinfusion.com/CMLSchema"; + + contact + "http://www.ipinfusion.com/CMLSchema"; + + description + "ZebOS Managed Object"; + + + revision "2015-10-08" { + description "Revisied on 2015-10-08."; } + + + uses oamMpls-grouping; + uses lacpSystemPriority-grouping; + uses systemDetail-grouping; + uses ospfGlobal-grouping; + uses hashTableInfo-grouping; + uses vr-grouping; + uses ospf6Global-grouping; + + rpc ospf-clear-ip-ospf-process { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf ospfProcessId { + type cml_data_types:CML_INT32_T; + mandatory true; + } + } + } + + rpc ospf-clear-ip-ospf-process-all { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc bgp-restartBgp { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc bgp-clearBgp { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + +} \ No newline at end of file diff --git a/yang-files/bgp.yang b/yang-files/bgp.yang new file mode 100644 index 00000000..1cb4035e --- /dev/null +++ b/yang-files/bgp.yang @@ -0,0 +1,6002 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : bgp.yang +* +*/ + +submodule bgp { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + revision "2015-04-25" { + description "Revisied on 2015-04-25."; } + + + + grouping bgp-grouping { + list bgp { + + + description + "bgp"; + + config true; + key "bgpAs"; + + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf bgpAs { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + config true; + } // END of bgpAs definition. + + leaf vrfName { + mandatory false; + type leafref { + path "/vr/vrf/vrfName"; + } + } // END of vrfName definition. + + leaf bgpTableVersion { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpTableVersion definition. + + leaf ntwkPrefixCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkPrefixCount definition. + + leaf ibgpMetric { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ibgpMetric definition. + + leaf pathAttrBest { + mandatory false; + type cml_data_types:CML_INT32_T; + default "1"; + config false; + } // END of pathAttrBest definition. + + leaf routerIpAddr { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of routerIpAddr definition. + + leaf clusterId { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of clusterId definition. + + leaf clusterList { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of clusterList definition. + + leaf routerRunIpAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routerRunIpAddr definition. + + leaf clusterIdDigit { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + config true; + } // END of clusterIdDigit definition. + + leaf confedId { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + } // END of confedId definition. + + leaf peerConfedId { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + } // END of peerConfedId definition. + + leaf keepAlive { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "30"; + config true; + } // END of keepAlive definition. + + leaf holdTime { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "90"; + config true; + } // END of holdTime definition. + + leaf localPref { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "100"; + config true; + } // END of localPref definition. + + leaf setGshutCapable { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setGshutCapable definition. + + leaf setGshut { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setGshut definition. + + leaf gshutLocalPref { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + config true; + } // END of gshutLocalPref definition. + + leaf setInboundRouteFilter { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setInboundRouteFilter definition. + + leaf setLogNbrChanges { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setLogNbrChanges definition. + + leaf scanInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..60"; + } + default "60"; + config true; + } // END of scanInterval definition. + + leaf distance { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + config true; + } // END of distance definition. + + leaf distanceSrcIp { + mandatory false; + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of distanceSrcIp definition. + + leaf distanceACLName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of distanceACLName definition. + + leaf setMplsResolution { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setMplsResolution definition. + + leaf setTimersDisallow { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setTimersDisallow definition. + + leaf restartTime { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..3600"; + } + default "90"; + config true; + } // END of restartTime definition. + + leaf stalepathTime { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..3600"; + } + default "360"; + config true; + } // END of stalepathTime definition. + + leaf deferTime { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..3600"; + } + default "120"; + config true; + } // END of deferTime definition. + + leaf bestpathDontCompareOriginator { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bestpathDontCompareOriginator definition. + + leaf bestpathTieBreak { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bestpathTieBreak definition. + + leaf ipv4Unicast { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ipv4Unicast definition. + + leaf deterministicMed { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of deterministicMed definition. + + leaf compareMed { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of compareMed definition. + + leaf bestpathAspath { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bestpathAspath definition. + + leaf bestpathCompareConfed { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bestpathCompareConfed definition. + + leaf bestpathCompareRouterId { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bestpathCompareRouterId definition. + + leaf enforceFirst { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of enforceFirst definition. + + leaf externalFailover { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of externalFailover definition. + + leaf bgpShowTypeStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpShowTypeStr definition. + + leaf bgpShowType { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpShowType definition. + + leaf autoSummary { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of autoSummary definition. + + leaf setSyncFlag { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setSyncFlag definition. + + leaf setNwSyncFlag { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setNwSyncFlag definition. + + leaf setLocalAsCount { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setLocalAsCount definition. + + leaf localAsCount { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "2..64"; + } + config true; + } // END of localAsCount definition. + + leaf grstSet { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of grstSet definition. + + leaf setClientReflect { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setClientReflect definition. + + leaf setDampeningFlag { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setDampeningFlag definition. + + leaf halfLife { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..45"; + } + default "15"; + config true; + } // END of halfLife definition. + + leaf reusePenalty { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..20000"; + } + config true; + } // END of reusePenalty definition. + + leaf suppressPenalty { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..20000"; + } + config true; + } // END of suppressPenalty definition. + + leaf maxSuppress { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..255"; + } + config true; + } // END of maxSuppress definition. + + leaf unreachHalfLife { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..45"; + } + config true; + } // END of unreachHalfLife definition. + + leaf dampeningRmapName { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of dampeningRmapName definition. + + leaf rfdMaxPenaltyCeil { + mandatory false; + type cml_data_types:CML_INT32_T; + default "0"; + config false; + } // END of rfdMaxPenaltyCeil definition. + + leaf rfdMinPenaltyFloor { + mandatory false; + type cml_data_types:CML_INT32_T; + default "0"; + config false; + } // END of rfdMinPenaltyFloor definition. + + leaf dampeningStr { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of dampeningStr definition. + + leaf rfdCbStr { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of rfdCbStr definition. + + leaf medType { + mandatory false; + type cml_data_types:CML_BGP_MED_TYPE_T; + config true; + } // END of medType definition. + + leaf medConfedMissingAsWorst { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of medConfedMissingAsWorst definition. + + leaf medMissingAsWorstConfed { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of medMissingAsWorstConfed definition. + + leaf gracefulReset { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of gracefulReset definition. + + leaf distanceEbgp { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "20"; + config true; + } // END of distanceEbgp definition. + + leaf distanceIbgp { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "200"; + config true; + } // END of distanceIbgp definition. + + leaf distanceLocal { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "200"; + config true; + } // END of distanceLocal definition. + + leaf multipathRelax { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of multipathRelax definition. + + + list multipath { + + + description + "multipath"; + + config true; + key "bgpType"; + + + leaf bgpType { + mandatory true; + type cml_data_types:CML_BGP_MAXPATH_T; + config true; + } // END of bgpType definition. + + + list multipathType { + + + description + "multipathType"; + + config true; + key "multipathsNum"; + + + leaf multipathsNum { + mandatory true; + type cml_data_types:CML_INT32_T { + range "2..64"; + } + config true; + } // END of multipathsNum definition. + + } // End of multipathType-list + } // End of multipath-list + + list bgpNetworkList { + + + description + "bgpNetworkList"; + + config true; + key "localAddr"; + + + leaf localAddr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of localAddr definition. + + leaf localAddrMask { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of localAddrMask definition. + + leaf rfdFlapCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of rfdFlapCount definition. + + leaf localPort { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of localPort definition. + + leaf networkRmapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of networkRmapName definition. + + leaf backdoor { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of backdoor definition. + + } // End of bgpNetworkList-list + + list networkList { + + + description + "networkList"; + + config false; + key "networkAddr"; + + + leaf networkAddr { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of networkAddr definition. + + leaf bgpLongerPrefixCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpLongerPrefixCmd definition. + + leaf lastUpdate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lastUpdate definition. + + leaf routeGetReuseTime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeGetReuseTime definition. + + leaf dampInfoTimes { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of dampInfoTimes definition. + + leaf routeGetPenalty { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeGetPenalty definition. + + leaf routeGetFlapCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeGetFlapCount definition. + + leaf bgpInfoSelected { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpInfoSelected definition. + + leaf atomicAggregate { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of atomicAggregate definition. + + leaf multiInstalled { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiInstalled definition. + + leaf ecmpMultiCandidate { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ecmpMultiCandidate definition. + + leaf bgpInfoType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpInfoType definition. + + leaf bgpInfoSubType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpInfoSubType definition. + + leaf bgpConfedPeer { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpConfedPeer definition. + + leaf bgpInfoStale { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpInfoStale definition. + + leaf routeValidState { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeValidState definition. + + leaf briLabel { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of briLabel definition. + + leaf ntwkBgpOrigin { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ntwkBgpOrigin definition. + + leaf networkRemoteAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of networkRemoteAddr definition. + + leaf originatorId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of originatorId definition. + + leaf ibgpMetric { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ibgpMetric definition. + + leaf nhopValid { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of nhopValid definition. + + leaf history { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of history definition. + + leaf reflectorClient { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of reflectorClient definition. + + leaf ntwkPathCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkPathCount definition. + + leaf showBgpNtwkCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of showBgpNtwkCmd definition. + + leaf peerNtwkWeight { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerNtwkWeight definition. + + leaf flapTimeReuseList { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of flapTimeReuseList definition. + + leaf flapRecordDuration { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of flapRecordDuration definition. + + leaf bgpDampPathCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpDampPathCmd definition. + + leaf bgpDampFlapCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpDampFlapCmd definition. + + leaf bgpIncosistentAsCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpIncosistentAsCmd definition. + + leaf dampTimeToReuse { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of dampTimeToReuse definition. + + leaf ntwkPrefixBestPathCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkPrefixBestPathCount definition. + + leaf checkCidr { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of checkCidr definition. + + leaf bgpCommunityCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpCommunityCmd definition. + + leaf bgpInfoFlag { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpInfoFlag definition. + + leaf bgpAttrMpNexthopGlobalIn { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrMpNexthopGlobalIn definition. + + leaf bgpAttrNextHop { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrNextHop definition. + + leaf bgpAttrNextHopLen { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrNextHopLen definition. + + leaf bgpAttrMpNexthopGlobal { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrMpNexthopGlobal definition. + + leaf bgpAttrMpNexthopLocal { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrMpNexthopLocal definition. + + leaf bgpUpTime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpUpTime definition. + + leaf medFlagType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of medFlagType definition. + + leaf bgpMedVal { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpMedVal definition. + + leaf bgpAsPathStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAsPathStr definition. + + leaf bgpAsPath4BStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAsPath4BStr definition. + + leaf bgpAsPathOrigin { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAsPathOrigin definition. + + leaf bgpAsPath4BOrigin { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAsPath4BOrigin definition. + + + list advPeerList { + + + description + "advPeerList"; + + config false; + key "advPeerAddr"; + + + leaf advPeerAddr { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of advPeerAddr definition. + + leaf advNonPeerGroup { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advNonPeerGroup definition. + + } // End of advPeerList-list + + list advPeerGroupList { + + + description + "advPeerGroupList"; + + config false; + key "advPeerGroupName"; + + + leaf advPeerGroupName { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of advPeerGroupName definition. + + leaf advNonPeerGroup { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advNonPeerGroup definition. + + } // End of advPeerGroupList-list + } // End of networkList-list + + list bgpAggregateAddrList { + + + description + "bgpAggregateAddrList"; + + config true; + key "aggregateAddr"; + + + leaf aggregateAddr { + mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of aggregateAddr definition. + + leaf aggregateAsSet { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of aggregateAsSet definition. + + leaf aggregateSummOnly { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of aggregateSummOnly definition. + + leaf aggregateAs { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of aggregateAs definition. + + leaf aggregateAs4 { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of aggregateAs4 definition. + + } // End of bgpAggregateAddrList-list + + list bgpRedistList { + + + description + "bgpRedistList"; + + config true; + key "redistType"; + + + leaf redistType { + mandatory true; + type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; + config true; + } // END of redistType definition. + + leaf redistRmapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of redistRmapName definition. + + leaf redistOspfNo { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + config true; + } // END of redistOspfNo definition. + + leaf redistOspfRmap { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of redistOspfRmap definition. + + } // End of bgpRedistList-list + + list bgpPeerGroup { + + + description + "bgpPeerGroup"; + + config true; + key "peerGroupName"; + + + leaf peerGroupName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerGroupName definition. + + leaf peerGroupStr { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of peerGroupStr definition. + + leaf advPeerGroup { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advPeerGroup definition. + + } // End of bgpPeerGroup-list + + list bgpAddressFamily { + + + description + "bgpAddressFamily"; + + config true; + key "afi"; + + + leaf afi { + mandatory true; + type cml_data_types:CML_AFI_TYPE_T; + config true; + } // END of afi definition. + + + list bgpSubAddressFamily { + + + description + "bgpSubAddressFamily"; + + config true; + key "safi"; + + + leaf safi { + mandatory true; + type cml_data_types:CML_SAFI_TYPE_T; + config true; + } // END of safi definition. + + leaf vrfName { + mandatory false; + type leafref { + path "/vr/vrf/vrfName"; + } + } // END of vrfName definition. + + leaf setGshutAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setGshutAf definition. + + leaf setGshutCapableAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setGshutCapableAf definition. + + leaf gshutLocalPrefAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + config true; + } // END of gshutLocalPrefAf definition. + + leaf bgpTypeAf { + mandatory false; + type cml_data_types:CML_BGP_MAXPATH_T; + config true; + } // END of bgpTypeAf definition. + + leaf multipathsNumAf { + mandatory false; + type cml_data_types:CML_INT32_T { + range "2..64"; + } + default "2"; + config true; + } // END of multipathsNumAf definition. + + leaf confedIdAf { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + } // END of confedIdAf definition. + + leaf peerConfedIdAf { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + } // END of peerConfedIdAf definition. + + } // End of bgpSubAddressFamily-list + } // End of bgpAddressFamily-list + + list bgpPeer { + + + description + "bgpPeer"; + + config true; + key "peerAddr"; + + + leaf peerAddr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerAddr definition. + + leaf peerAs { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + config true; + } // END of peerAs definition. + + leaf bgpPeerBfd { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bgpPeerBfd definition. + + leaf peerBfdMh { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of peerBfdMh definition. + + leaf gshutTimer { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "10..65535"; + } + config true; + } // END of gshutTimer definition. + + leaf peerRestartTime { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..3600"; + } + config true; + } // END of peerRestartTime definition. + + leaf-list ifName { + + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf peerLocalAs { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + config true; + } // END of peerLocalAs definition. + + leaf neighborAttrUnchangedAsPath { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborAttrUnchangedAsPath definition. + + leaf neighborAttrUnchangedNexthop { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborAttrUnchangedNexthop definition. + + leaf neighborAttrUnchangedMed { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborAttrUnchangedMed definition. + + leaf neighborCapabilityGrst { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborCapabilityGrst definition. + + leaf maxPathIbgp { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of maxPathIbgp definition. + + leaf asLocalCount { + mandatory false; + type cml_data_types:CML_INT32_T; + default "1"; + config false; + } // END of asLocalCount definition. + + leaf cfgMaxPathEbgp { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of cfgMaxPathEbgp definition. + + leaf maxPathEbgp { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of maxPathEbgp definition. + + leaf cfgMaxPathIbgp { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of cfgMaxPathIbgp definition. + + leaf bgpVrfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpVrfName definition. + + leaf bgpRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpRouterId definition. + + leaf bgpCommunityCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpCommunityCount definition. + + leaf checkAfc { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of checkAfc definition. + + leaf peerConfedIdCheck { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerConfedIdCheck definition. + + leaf peerAdvExtAsnCap { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerAdvExtAsnCap definition. + + leaf peerAndExtAsnCap { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerAndExtAsnCap definition. + + leaf peerRecvExtAsnCap { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerRecvExtAsnCap definition. + + leaf peerVrfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerVrfName definition. + + leaf addFamilystring { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilystring definition. + + leaf safiUnicastAdv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiUnicastAdv definition. + + leaf safiUnicastAnd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiUnicastAnd definition. + + leaf safiUnicastRecv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiUnicastRecv definition. + + leaf addFamilyMultiString { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyMultiString definition. + + leaf safiMulticastAdv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiMulticastAdv definition. + + leaf safiMulticastAnd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiMulticastAnd definition. + + leaf safiMulticastRecv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiMulticastRecv definition. + + leaf addFamilyVPN4String { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyVPN4String definition. + + leaf safiVPNv4Adv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv4Adv definition. + + leaf safiVPNv4And { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv4And definition. + + leaf safiVPNv4Recv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv4Recv definition. + + leaf addFamilyIPV6String { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyIPV6String definition. + + leaf safiIPV6UnicastAdv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6UnicastAdv definition. + + leaf safiIPV6UnicastAnd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6UnicastAnd definition. + + leaf safiIPV6UnicastRecv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6UnicastRecv definition. + + leaf addFamilyMultiIPV6Str { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyMultiIPV6Str definition. + + leaf safiIPV6MulticastAdv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6MulticastAdv definition. + + leaf safiIPV6MulticastAnd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6MulticastAnd definition. + + leaf safiIPV6MulticastRecv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6MulticastRecv definition. + + leaf addFamilyVPNv6Str { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyVPNv6Str definition. + + leaf safiVPNv6Adv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv6Adv definition. + + leaf safiVPNV6And { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNV6And definition. + + leaf safiVPNv6Recv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv6Recv definition. + + leaf safiVPNv6Unicast { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv6Unicast definition. + + leaf safiVPNv4Unicast { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv4Unicast definition. + + leaf addFamilyLabeledStr { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyLabeledStr definition. + + leaf safiLabeledAdv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiLabeledAdv definition. + + leaf safiLabeledAnd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiLabeledAnd definition. + + leaf safiLabeledRecv { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiLabeledRecv definition. + + leaf hashCommListName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of hashCommListName definition. + + leaf attrInfoCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of attrInfoCmd definition. + + leaf hashWeight { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of hashWeight definition. + + leaf hashMedVal { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of hashMedVal definition. + + leaf hashLocalPref { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of hashLocalPref definition. + + leaf hashAsPathOrigin { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of hashAsPathOrigin definition. + + leaf attrAspathLength { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of attrAspathLength definition. + + leaf attrAspathStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of attrAspathStr definition. + + leaf attrAspath4BLength { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of attrAspath4BLength definition. + + leaf attrAspath4BStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of attrAspath4BStr definition. + + leaf hashNtwkRefcnt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of hashNtwkRefcnt definition. + + leaf peerKeepAliveTime { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerKeepAliveTime definition. + + leaf peerKeepAliveConf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerKeepAliveConf definition. + + leaf peerDefKeepAlive { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerDefKeepAlive definition. + + leaf peerDefKeepAliveConf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerDefKeepAliveConf definition. + + leaf peerHoldTimeConf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerHoldTimeConf definition. + + leaf peerDefHoldTime { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerDefHoldTime definition. + + leaf peerDefHoldTimeConf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerDefHoldTimeConf definition. + + leaf nhopValid { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of nhopValid definition. + + leaf keepAliveIn { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of keepAliveIn definition. + + leaf keepAliveOut { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of keepAliveOut definition. + + leaf openMsgIn { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of openMsgIn definition. + + leaf openMsgOut { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of openMsgOut definition. + + leaf bgpAsPathCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpAsPathCount definition. + + leaf bgpAsPath4BCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpAsPath4BCount definition. + + leaf updateMsgIn { + mandatory false; + type cml_data_types:CML_INT32_T; + default "0"; + config false; + } // END of updateMsgIn definition. + + leaf updateMsgOut { + mandatory false; + type cml_data_types:CML_INT32_T; + default "0"; + config false; + } // END of updateMsgOut definition. + + leaf nextHopGlobal { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHopGlobal definition. + + leaf nextHopLocal { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHopLocal definition. + + leaf peerRemotePort { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerRemotePort definition. + + leaf peerRemoteAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerRemoteAddr definition. + + leaf peerLocalHost { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerLocalHost definition. + + leaf nextHop { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHop definition. + + leaf peerLocalPort { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerLocalPort definition. + + leaf routeValidState { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeValidState definition. + + leaf atomicAggregate { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of atomicAggregate definition. + + leaf bgpInfoState { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpInfoState definition. + + leaf bgpInfoSelected { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpInfoSelected definition. + + leaf briLabel { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of briLabel definition. + + leaf originatorId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of originatorId definition. + + leaf bgpOrigin { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpOrigin definition. + + leaf nonPeer { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of nonPeer definition. + + leaf peerBfd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerBfd definition. + + leaf peerRemovePvtAs { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of peerRemovePvtAs definition. + + leaf sendCommunity { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of sendCommunity definition. + + leaf sendCommunityType { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of sendCommunityType definition. + + leaf neighborRouteServerClient { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborRouteServerClient definition. + + leaf peerRouteReflector { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of peerRouteReflector definition. + + leaf prefixListName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of prefixListName definition. + + leaf prefixListCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of prefixListCount definition. + + leaf InboundPathPolicyConf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of InboundPathPolicyConf definition. + + leaf OutboundPathPolicyConf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of OutboundPathPolicyConf definition. + + leaf filterInPlistName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterInPlistName definition. + + leaf filterOutPlistName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterOutPlistName definition. + + leaf filterInDlistName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterInDlistName definition. + + leaf filterOutDlistName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterOutDlistName definition. + + leaf filterInAslistName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterInAslistName definition. + + leaf filterOutAslistName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterOutAslistName definition. + + leaf filterInMaplistName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterInMaplistName definition. + + leaf filterOutMaplistName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterOutMaplistName definition. + + leaf filterUsmapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterUsmapName definition. + + leaf peerAsPathUnchanged { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerAsPathUnchanged definition. + + leaf defaultSent { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of defaultSent definition. + + leaf defaultNotSent { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of defaultNotSent definition. + + leaf orfPrefixStr { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of orfPrefixStr definition. + + leaf orfPrefixSend { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of orfPrefixSend definition. + + leaf orfPrefixCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of orfPrefixCount definition. + + leaf orfWaitRefresh { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of orfWaitRefresh definition. + + leaf reflectorClient { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of reflectorClient definition. + + leaf reserverClient { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of reserverClient definition. + + leaf softReconfig { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of softReconfig definition. + + leaf removePrivateAs { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of removePrivateAs definition. + + leaf advSmcap { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advSmcap definition. + + leaf rcvSmcap { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of rcvSmcap definition. + + leaf advRmcap { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advRmcap definition. + + leaf rcvRmcap { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of rcvRmcap definition. + + leaf afDependentCap { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of afDependentCap definition. + + leaf peerIndex { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerIndex definition. + + leaf peerOffset { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerOffset definition. + + leaf peerMask { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerMask definition. + + leaf bgpInfoType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpInfoType definition. + + leaf bgpInfoSubType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpInfoSubType definition. + + leaf ecmpMultiCandidate { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ecmpMultiCandidate definition. + + leaf multiInstalled { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiInstalled definition. + + leaf flapCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of flapCount definition. + + leaf peerGrstRestartOn { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerGrstRestartOn definition. + + leaf peerPrefixCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerPrefixCount definition. + + leaf peerSendPrefixCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerSendPrefixCount definition. + + leaf peerFlagShutDown { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerFlagShutDown definition. + + leaf peerStatusFlag { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerStatusFlag definition. + + leaf peerCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerCount definition. + + leaf brdAs { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAs definition. + + leaf brdAsNum { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAsNum definition. + + leaf brdAs4 { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAs4 definition. + + leaf brdAsNum4 { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAsNum4 definition. + + leaf brdIp { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of brdIp definition. + + leaf brdIpNum { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of brdIpNum definition. + + leaf peerNotifyInfo { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerNotifyInfo definition. + + leaf peerNotifyDirect { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerNotifyDirect definition. + + leaf peerNotifyLastReset { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerNotifyLastReset definition. + + leaf notifyCodeStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of notifyCodeStr definition. + + leaf notifySubCodeStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of notifySubCodeStr definition. + + leaf bgpConnection { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpConnection definition. + + leaf nextConnectTimer { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of nextConnectTimer definition. + + leaf peerStatusGrstRestartOn { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerStatusGrstRestartOn definition. + + leaf peerStatusRestartOn { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerStatusRestartOn definition. + + leaf conEstCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of conEstCount definition. + + leaf conDroppedCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of conDroppedCount definition. + + leaf peerPrefixOverflow { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerPrefixOverflow definition. + + leaf updateIf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of updateIf definition. + + leaf updateSource { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of updateSource definition. + + leaf bpfEstUpTime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bpfEstUpTime definition. + + leaf bpfEstDownTime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bpfEstDownTime definition. + + leaf lastReadTime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lastReadTime definition. + + leaf bpfState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bpfState definition. + + leaf bgpLinkType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpLinkType definition. + + leaf hopAwayCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of hopAwayCount definition. + + leaf peerState { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerState definition. + + leaf peerTableVersion { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerTableVersion definition. + + leaf peerLocalAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerLocalAddr definition. + + leaf bgpConfedPeer { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpConfedPeer definition. + + leaf peerRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerRouterId definition. + + leaf recvPacketCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of recvPacketCount definition. + + leaf notificationIn { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of notificationIn definition. + + leaf notificationOut { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of notificationOut definition. + + leaf pktInQue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of pktInQue definition. + + leaf sentPacketCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of sentPacketCount definition. + + leaf refreshRecvPacketCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of refreshRecvPacketCount definition. + + leaf refreshSentPacketCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of refreshSentPacketCount definition. + + leaf advertisementInterval { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advertisementInterval definition. + + leaf peerInTotalMsg { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerInTotalMsg definition. + + leaf peerOutTotalMsg { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerOutTotalMsg definition. + + leaf peerLastError { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerLastError definition. + + leaf estTxns { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of estTxns definition. + + leaf estTime { + mandatory false; + type cml_data_types:CML_INT32_T; + default "0"; + config false; + } // END of estTime definition. + + leaf inUpdateElaps { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of inUpdateElaps definition. + + leaf peerAdminFlag { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of peerAdminFlag definition. + + leaf connRetryInterval { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + default "120"; + config true; + } // END of connRetryInterval definition. + + leaf holdTimeConf { + mandatory false; + type cml_data_types:CML_INT32_T; + default "90"; + config true; + } // END of holdTimeConf definition. + + leaf peerHoldTimeRun { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerHoldTimeRun definition. + + leaf peerKeepAliveRun { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerKeepAliveRun definition. + + leaf neighborCap { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of neighborCap definition. + + leaf keepAliveConf { + mandatory false; + type cml_data_types:CML_INT32_T; + default "30"; + config true; + } // END of keepAliveConf definition. + + leaf minAsOrigInterval { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of minAsOrigInterval definition. + + leaf minRouteAdInterval { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of minRouteAdInterval definition. + + leaf peerDesc { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerDesc definition. + + leaf transparentAs { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of transparentAs definition. + + leaf transparentNexthop { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of transparentNexthop definition. + + leaf sendLabel { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of sendLabel definition. + + leaf sendLabelExplicitNull { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of sendLabelExplicitNull definition. + + leaf timeToLive { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of timeToLive definition. + + leaf maxHopCount { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "255"; + config true; + } // END of maxHopCount definition. + + leaf peerConnectInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + config true; + } // END of peerConnectInterval definition. + + leaf peerAsorigInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + config true; + } // END of peerAsorigInterval definition. + + leaf peerRaInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + default "0"; + config true; + } // END of peerRaInterval definition. + + leaf password { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of password definition. + + leaf dynamicCapability { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of dynamicCapability definition. + + leaf advertisedCapability { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advertisedCapability definition. + + leaf andCapability { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of andCapability definition. + + leaf receivedCapability { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of receivedCapability definition. + + leaf capabilityRouteRefresh { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of capabilityRouteRefresh definition. + + leaf advCapabilityRefresh { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advCapabilityRefresh definition. + + leaf andCapabilityRefresh { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of andCapabilityRefresh definition. + + leaf recvCapabilityRefresh { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of recvCapabilityRefresh definition. + + leaf oldCapabilityRefresh { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of oldCapabilityRefresh definition. + + leaf newCapabilityRefresh { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of newCapabilityRefresh definition. + + leaf collideEstablished { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of collideEstablished definition. + + leaf sourceId { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of sourceId definition. + + leaf enforceMultihop { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of enforceMultihop definition. + + leaf neighborOverrideCapability { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborOverrideCapability definition. + + leaf neighborStrictCapability { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborStrictCapability definition. + + leaf disallowHoldtimer { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of disallowHoldtimer definition. + + leaf dontCapabilityNegotiate { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of dontCapabilityNegotiate definition. + + leaf transportConnectionPassive { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of transportConnectionPassive definition. + + leaf peerShutdown { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of peerShutdown definition. + + leaf noIfBinding { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of noIfBinding definition. + + leaf bgpPort { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "179"; + config true; + } // END of bgpPort definition. + + leaf bgpVersion { + mandatory false; + type cml_data_types:CML_UINT8_T; + default "4"; + config true; + } // END of bgpVersion definition. + + leaf peerIfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerIfName definition. + + leaf softReconfigInbound { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of softReconfigInbound definition. + + leaf weight { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "0"; + config true; + } // END of weight definition. + + leaf maxPrefixes { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + config true; + } // END of maxPrefixes definition. + + leaf maxPrefixeWarning { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of maxPrefixeWarning definition. + + leaf threshold { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..100"; + } + config true; + } // END of threshold definition. + + leaf warning { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of warning definition. + + leaf allowAsNum { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..10"; + } + default "3"; + config true; + } // END of allowAsNum definition. + + leaf aclInfo { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of aclInfo definition. + + leaf distributeListDirection { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + } // END of distributeListDirection definition. + + leaf prefixListAclInfo { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of prefixListAclInfo definition. + + leaf prefixListDirection { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + } // END of prefixListDirection definition. + + leaf asListAclInfo { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of asListAclInfo definition. + + leaf asListDirection { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + } // END of asListDirection definition. + + leaf peerGroupTag { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerGroupTag definition. + + leaf peerActivate { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of peerActivate definition. + + leaf unSuppressAclInfo { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of unSuppressAclInfo definition. + + leaf peerRmapOriName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerRmapOriName definition. + + leaf defaultPeerRmapName { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of defaultPeerRmapName definition. + + leaf orfPrefixOpt { + mandatory false; + type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; + config true; + } // END of orfPrefixOpt definition. + + leaf setNcpFlag { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setNcpFlag definition. + + leaf peerRmapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerRmapName definition. + + leaf peerRmapDirection { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + } // END of peerRmapDirection definition. + + leaf peerKeepAlive { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "30"; + config true; + } // END of peerKeepAlive definition. + + leaf peerHoldTime { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "90"; + config true; + } // END of peerHoldTime definition. + + leaf nextHopSelf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of nextHopSelf definition. + + + list peerPrefix { + + + description + "peerPrefix"; + + config false; + key "prefixEntrySeq"; + + + leaf prefixEntrySeq { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of prefixEntrySeq definition. + + leaf prefixEntryType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of prefixEntryType definition. + + leaf prefixEntryGe { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of prefixEntryGe definition. + + leaf prefixEntryLe { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of prefixEntryLe definition. + + leaf peerPrefixLen { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerPrefixLen definition. + + } // End of peerPrefix-list + + list peerAdjRoute { + + + description + "peerAdjRoute"; + + config false; + key "peerNetworkAddr"; + + + leaf peerNetworkAddr { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerNetworkAddr definition. + + leaf adjRouteOutCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of adjRouteOutCmd definition. + + leaf adjRouteInCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of adjRouteInCmd definition. + + leaf peerFlapCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerFlapCount definition. + + leaf peerBgpTableVersion { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpTableVersion definition. + + leaf peerBgpInfoFlag { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpInfoFlag definition. + + leaf peerBgpAttrMpNexthopGlobalIn { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAttrMpNexthopGlobalIn definition. + + leaf peerBgpAttrNextHop { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAttrNextHop definition. + + leaf peerBgpAttrNextHopLen { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAttrNextHopLen definition. + + leaf peerBgpAttrMpNexthopGlobal { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAttrMpNexthopGlobal definition. + + leaf peerBgpAttrMpNexthopLocal { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAttrMpNexthopLocal definition. + + leaf peerBgpUpTime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpUpTime definition. + + leaf peerMedFlagType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerMedFlagType definition. + + leaf peerBgpMedVal { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerBgpMedVal definition. + + leaf peerBgpAsPathStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAsPathStr definition. + + leaf peerBgpAsPath4BStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAsPath4BStr definition. + + leaf peerBgpAsPathOrigin { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAsPathOrigin definition. + + leaf peerBgpAsPath4BOrigin { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAsPath4BOrigin definition. + + leaf peerNetwkWeight { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerNetwkWeight definition. + + } // End of peerAdjRoute-list + + list bgpPeerAddressFamily { + + + description + "bgpPeerAddressFamily"; + + config true; + key "afi"; + + + leaf afi { + mandatory true; + type cml_data_types:CML_AFI_TYPE_T; + config true; + } // END of afi definition. + + + list bgpPeerSubAddressFamily { + + + description + "bgpPeerSubAddressFamily"; + + config true; + key "safi"; + + + leaf safi { + mandatory true; + type cml_data_types:CML_SAFI_TYPE_T; + config true; + } // END of safi definition. + + leaf aclInfoAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of aclInfoAf definition. + + leaf distributeListDirectionAf { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + } // END of distributeListDirectionAf definition. + + leaf prefixListAclInfoAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of prefixListAclInfoAf definition. + + leaf prefixListDirectionAf { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + } // END of prefixListDirectionAf definition. + + leaf asListAclInfoAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of asListAclInfoAf definition. + + leaf asListDirectionAf { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + } // END of asListDirectionAf definition. + + leaf maxPrefixesAf { + mandatory false; + type cml_data_types:CML_UINT32_T; + config true; + } // END of maxPrefixesAf definition. + + leaf thresholdAf { + mandatory false; + type cml_data_types:CML_UINT8_T; + config true; + } // END of thresholdAf definition. + + leaf warningAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of warningAf definition. + + leaf nextHopSelfAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of nextHopSelfAf definition. + + leaf allowAsNumAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..10"; + } + default "3"; + config true; + } // END of allowAsNumAf definition. + + leaf unSuppressAclInfoAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of unSuppressAclInfoAf definition. + + leaf defaultPeerRmapNameAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of defaultPeerRmapNameAf definition. + + leaf peerRmapOriNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerRmapOriNameAf definition. + + leaf softReconfigInboundAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of softReconfigInboundAf definition. + + leaf weightAf { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "0"; + config true; + } // END of weightAf definition. + + leaf neighborRouteServerClientAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborRouteServerClientAf definition. + + leaf peerRouteReflectorAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of peerRouteReflectorAf definition. + + leaf peerRemovePvtAsAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of peerRemovePvtAsAf definition. + + leaf sendCommunityAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of sendCommunityAf definition. + + leaf sendCommunityTypeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of sendCommunityTypeAf definition. + + leaf peerHoldTimeRunAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerHoldTimeRunAf definition. + + leaf peerKeepAliveRunAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerKeepAliveRunAf definition. + + leaf noIfBindingAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of noIfBindingAf definition. + + leaf peerConfedIdCheckAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerConfedIdCheckAf definition. + + leaf peerAdvExtAsnCapAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerAdvExtAsnCapAf definition. + + leaf peerAndExtAsnCapAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerAndExtAsnCapAf definition. + + leaf peerRecvExtAsnCapAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerRecvExtAsnCapAf definition. + + leaf addFamilystringAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilystringAf definition. + + leaf safiUnicastAdvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiUnicastAdvAf definition. + + leaf safiUnicastAndAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiUnicastAndAf definition. + + leaf safiUnicastRecvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiUnicastRecvAf definition. + + leaf addFamilyMultiStringAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyMultiStringAf definition. + + leaf safiMulticastAdvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiMulticastAdvAf definition. + + leaf safiMulticastAndAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiMulticastAndAf definition. + + leaf safiMulticastRecvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiMulticastRecvAf definition. + + leaf addFamilyVPN4StringAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyVPN4StringAf definition. + + leaf safiVPNv4AdvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv4AdvAf definition. + + leaf safiVPNv4AndAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv4AndAf definition. + + leaf safiVPNv4RecvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv4RecvAf definition. + + leaf addFamilyIPV6StringAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyIPV6StringAf definition. + + leaf safiIPV6UnicastAdvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6UnicastAdvAf definition. + + leaf safiIPV6UnicastAndAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6UnicastAndAf definition. + + leaf safiIPV6UnicastRecvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6UnicastRecvAf definition. + + leaf addFamilyMultiIPV6StrAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyMultiIPV6StrAf definition. + + leaf safiIPV6MulticastAdvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6MulticastAdvAf definition. + + leaf safiIPV6MulticastAndAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6MulticastAndAf definition. + + leaf safiIPV6MulticastRecvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiIPV6MulticastRecvAf definition. + + leaf addFamilyVPNv6StrAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyVPNv6StrAf definition. + + leaf safiVPNv6AdvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv6AdvAf definition. + + leaf safiVPNV6AndAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNV6AndAf definition. + + leaf safiVPNv6RecvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv6RecvAf definition. + + leaf safiVPNv6UnicastAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv6UnicastAf definition. + + leaf safiVPNv4UnicastAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiVPNv4UnicastAf definition. + + leaf addFamilyLabeledStrAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of addFamilyLabeledStrAf definition. + + leaf safiLabeledAdvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiLabeledAdvAf definition. + + leaf safiLabeledAndAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiLabeledAndAf definition. + + leaf safiLabeledRecvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of safiLabeledRecvAf definition. + + leaf peerVrfNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerVrfNameAf definition. + + leaf sendExtCommunityAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of sendExtCommunityAf definition. + + leaf neighborAttrUnchangedAsPathAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborAttrUnchangedAsPathAf definition. + + leaf neighborAttrUnchangedNexthopAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborAttrUnchangedNexthopAf definition. + + leaf neighborAttrUnchangedMedAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborAttrUnchangedMedAf definition. + + leaf orfPrefixOptAf { + mandatory false; + type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; + config true; + } // END of orfPrefixOptAf definition. + + leaf setNcpFlagAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setNcpFlagAf definition. + + leaf peerGroupTagAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerGroupTagAf definition. + + leaf peerRmapNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerRmapNameAf definition. + + leaf peerRmapDirectionAf { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + } // END of peerRmapDirectionAf definition. + + leaf setGracefulShut { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setGracefulShut definition. + + leaf neighborCapabilityGrstAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborCapabilityGrstAf definition. + + leaf maxPrefixesWarningAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of maxPrefixesWarningAf definition. + + leaf fwdStatusPreserveAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of fwdStatusPreserveAf definition. + + leaf grstRestartAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of grstRestartAf definition. + + leaf grstAdvAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of grstAdvAf definition. + + leaf grstRecvAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of grstRecvAf definition. + + leaf peerBgpTableVersionAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpTableVersionAf definition. + + leaf checkAfcAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of checkAfcAf definition. + + leaf keepAliveInAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of keepAliveInAf definition. + + leaf keepAliveOutAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of keepAliveOutAf definition. + + leaf openMsgInAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of openMsgInAf definition. + + leaf openMsgOutAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of openMsgOutAf definition. + + leaf updateMsgInAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of updateMsgInAf definition. + + leaf updateMsgOutAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of updateMsgOutAf definition. + + leaf nextHopGlobalAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHopGlobalAf definition. + + leaf nextHopLocalAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHopLocalAf definition. + + leaf peerRemotePortAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerRemotePortAf definition. + + leaf peerRemoteAddrAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerRemoteAddrAf definition. + + leaf peerLocalHostAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerLocalHostAf definition. + + leaf nextHopAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHopAf definition. + + leaf peerLocalPortAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerLocalPortAf definition. + + leaf bgpInfoStateAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpInfoStateAf definition. + + leaf briLabelAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of briLabelAf definition. + + leaf bgpOriginAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpOriginAf definition. + + leaf advNonPeerGroupAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advNonPeerGroupAf definition. + + leaf peerBfdAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerBfdAf definition. + + leaf prefixListNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of prefixListNameAf definition. + + leaf prefixListCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of prefixListCountAf definition. + + leaf InboundPathPolicyConfAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of InboundPathPolicyConfAf definition. + + leaf OutboundPathPolicyConfAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of OutboundPathPolicyConfAf definition. + + leaf filterInPlistNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterInPlistNameAf definition. + + leaf filterOutPlistNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterOutPlistNameAf definition. + + leaf filterInDlistNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterInDlistNameAf definition. + + leaf filterOutDlistNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterOutDlistNameAf definition. + + leaf filterInAslistNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterInAslistNameAf definition. + + leaf filterOutAslistNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterOutAslistNameAf definition. + + leaf filterInMaplistNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterInMaplistNameAf definition. + + leaf filterOutMaplistNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterOutMaplistNameAf definition. + + leaf filterUsmapNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of filterUsmapNameAf definition. + + leaf peerAsPathUnchangedAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerAsPathUnchangedAf definition. + + leaf defaultSentAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of defaultSentAf definition. + + leaf defaultNotSentAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of defaultNotSentAf definition. + + leaf orfPrefixStrAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of orfPrefixStrAf definition. + + leaf orfPrefixSendAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of orfPrefixSendAf definition. + + leaf orfPrefixCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of orfPrefixCountAf definition. + + leaf orfWaitRefreshAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of orfWaitRefreshAf definition. + + leaf routeReflectorClientAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeReflectorClientAf definition. + + leaf reserverClientAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of reserverClientAf definition. + + leaf softReconfigAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of softReconfigAf definition. + + leaf removePrivateAsAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of removePrivateAsAf definition. + + leaf advSmcapAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advSmcapAf definition. + + leaf rcvSmcapAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of rcvSmcapAf definition. + + leaf advRmcapAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advRmcapAf definition. + + leaf rcvRmcapAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of rcvRmcapAf definition. + + leaf afDependentCapAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of afDependentCapAf definition. + + leaf peerIndexAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerIndexAf definition. + + leaf peerOffsetAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerOffsetAf definition. + + leaf peerMaskAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerMaskAf definition. + + leaf flapCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of flapCountAf definition. + + leaf peerGrstRestartOnAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerGrstRestartOnAf definition. + + leaf peerPrefixCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerPrefixCountAf definition. + + leaf peerSendPrefixCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerSendPrefixCountAf definition. + + leaf peerFlagShutDownAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerFlagShutDownAf definition. + + leaf peerStatusFlagAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerStatusFlagAf definition. + + leaf peerCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerCountAf definition. + + leaf brdAsAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAsAf definition. + + leaf brdAsNumAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAsNumAf definition. + + leaf brdAs4Af { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAs4Af definition. + + leaf brdAsNum4Af { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAsNum4Af definition. + + leaf brdIpAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of brdIpAf definition. + + leaf brdIpNumAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of brdIpNumAf definition. + + leaf peerNotifyInfoAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerNotifyInfoAf definition. + + leaf peerNotifyDirectAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerNotifyDirectAf definition. + + leaf peerNotifyLastResetAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerNotifyLastResetAf definition. + + leaf notifyCodeStrAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of notifyCodeStrAf definition. + + leaf notifySubCodeStrAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of notifySubCodeStrAf definition. + + leaf bgpConnectionAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpConnectionAf definition. + + leaf nextConnectTimerAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of nextConnectTimerAf definition. + + leaf peerStatusGrstRestartOnAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerStatusGrstRestartOnAf definition. + + leaf peerStatusRestartOnAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerStatusRestartOnAf definition. + + leaf conEstCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of conEstCountAf definition. + + leaf conDroppedCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of conDroppedCountAf definition. + + leaf peerPrefixOverflowAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerPrefixOverflowAf definition. + + leaf updateIfAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of updateIfAf definition. + + leaf updateSourceAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of updateSourceAf definition. + + leaf bpfEstUpTimeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bpfEstUpTimeAf definition. + + leaf bpfEstDownTimeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bpfEstDownTimeAf definition. + + leaf lastReadTimeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lastReadTimeAf definition. + + leaf bpfStateAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bpfStateAf definition. + + leaf bgpLinkTypeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpLinkTypeAf definition. + + leaf hopAwayCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of hopAwayCountAf definition. + + leaf peerStateAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerStateAf definition. + + leaf peerTableVersionAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerTableVersionAf definition. + + leaf peerLocalAddrAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerLocalAddrAf definition. + + leaf peerRouterIdAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerRouterIdAf definition. + + leaf recvPacketCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of recvPacketCountAf definition. + + leaf notificationInAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of notificationInAf definition. + + leaf notificationOutAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of notificationOutAf definition. + + leaf pktInQueAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of pktInQueAf definition. + + leaf sentPacketCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of sentPacketCountAf definition. + + leaf refreshRecvPacketCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of refreshRecvPacketCountAf definition. + + leaf refreshSentPacketCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of refreshSentPacketCountAf definition. + + leaf advertisementIntervalAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advertisementIntervalAf definition. + + leaf peerInTotalMsgAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerInTotalMsgAf definition. + + leaf peerOutTotalMsgAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerOutTotalMsgAf definition. + + leaf peerLastErrorAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerLastErrorAf definition. + + leaf estTxnsAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of estTxnsAf definition. + + leaf estTimeAf { + mandatory false; + type cml_data_types:CML_INT32_T; + default "0"; + config false; + } // END of estTimeAf definition. + + leaf inUpdateElapsAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of inUpdateElapsAf definition. + + leaf neighborCapAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of neighborCapAf definition. + + leaf advertisedCapabilityAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advertisedCapabilityAf definition. + + leaf andCapabilityAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of andCapabilityAf definition. + + leaf receivedCapabilityAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of receivedCapabilityAf definition. + + leaf advCapabilityRefreshAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advCapabilityRefreshAf definition. + + leaf andCapabilityRefreshAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of andCapabilityRefreshAf definition. + + leaf recvCapabilityRefreshAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of recvCapabilityRefreshAf definition. + + leaf oldCapabilityRefreshAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of oldCapabilityRefreshAf definition. + + leaf newCapabilityRefreshAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of newCapabilityRefreshAf definition. + + + list vrfobj { + + + description + "vrfobj"; + + config true; + key "vrfName"; + + + leaf vrfName { + mandatory true; + type leafref { + path "/vr/vrf/vrfName"; + } + } // END of vrfName definition. + + leaf neighborAsOverrideAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of neighborAsOverrideAf definition. + + leaf peerIfNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerIfNameAf definition. + + leaf peerDescAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerDescAf definition. + + leaf peerRestartTimeAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..3600"; + } + config true; + } // END of peerRestartTimeAf definition. + + leaf peerActivateAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of peerActivateAf definition. + + leaf peerAsAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + config true; + } // END of peerAsAf definition. + + leaf siteOriginIdAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of siteOriginIdAf definition. + + leaf peerAllowEbgpVpnAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of peerAllowEbgpVpnAf definition. + + leaf peerGroupStrAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of peerGroupStrAf definition. + + } // End of vrfobj-list + + list peerPrefix { + + + description + "peerPrefix"; + + config false; + key "prefixEntrySeqAf"; + + + leaf prefixEntrySeqAf { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of prefixEntrySeqAf definition. + + leaf prefixEntryTypeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of prefixEntryTypeAf definition. + + leaf prefixEntryGeAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of prefixEntryGeAf definition. + + leaf prefixEntryLeAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of prefixEntryLeAf definition. + + leaf peerPrefixLenAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerPrefixLenAf definition. + + } // End of peerPrefix-list + + list peerAdjRouteAf { + + + description + "peerAdjRouteAf"; + + config false; + key "peerNetworkAddrAf"; + + + leaf peerNetworkAddrAf { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerNetworkAddrAf definition. + + leaf peerFlapCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerFlapCountAf definition. + + leaf peerNetwkWeightAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerNetwkWeightAf definition. + + leaf peerBgpTableVersionAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpTableVersionAf definition. + + leaf peerBgpInfoFlagAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpInfoFlagAf definition. + + leaf peerBgpAttrMpNexthopGlobalInAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAttrMpNexthopGlobalInAf definition. + + leaf peerBgpAttrNextHopAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAttrNextHopAf definition. + + leaf peerBgpAttrNextHopLenAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAttrNextHopLenAf definition. + + leaf peerBgpAttrMpNexthopGlobalAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAttrMpNexthopGlobalAf definition. + + leaf peerBgpAttrMpNexthopLocalAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAttrMpNexthopLocalAf definition. + + leaf peerBgpUpTimeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpUpTimeAf definition. + + leaf peerMedFlagTypeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerMedFlagTypeAf definition. + + leaf peerBgpMedValAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerBgpMedValAf definition. + + leaf peerBgpAsPathStrAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAsPathStrAf definition. + + leaf peerBgpAsPath4BStrAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAsPath4BStrAf definition. + + leaf peerBgpAsPathOriginAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAsPathOriginAf definition. + + leaf peerBgpAsPath4BOriginAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerBgpAsPath4BOriginAf definition. + + } // End of peerAdjRouteAf-list + } // End of bgpPeerSubAddressFamily-list + } // End of bgpPeerAddressFamily-list + } // End of bgpPeer-list + + list netwAddrFamily { + + + description + "netwAddrFamily"; + + config true; + key "afi"; + + + leaf afi { + mandatory true; + type cml_data_types:CML_AFI_TYPE_T; + config true; + } // END of afi definition. + + + list netwSubAddrFamily { + + + description + "netwSubAddrFamily"; + + config true; + key "safi"; + + + leaf safi { + mandatory true; + type cml_data_types:CML_SAFI_TYPE_T; + config true; + } // END of safi definition. + + leaf vrfName { + mandatory false; + type leafref { + path "/vr/vrf/vrfName"; + } + } // END of vrfName definition. + + leaf autoSummaryAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of autoSummaryAf definition. + + leaf ntwkPrefixCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkPrefixCountAf definition. + + leaf ntwkRouterIpAddrAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkRouterIpAddrAf definition. + + leaf bgpTableVersionAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpTableVersionAf definition. + + leaf setSyncFlagAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setSyncFlagAf definition. + + leaf setNwSyncFlagAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setNwSyncFlagAf definition. + + leaf distanceEbgpAf { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "20"; + config true; + } // END of distanceEbgpAf definition. + + leaf distanceIbgpAf { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "200"; + config true; + } // END of distanceIbgpAf definition. + + leaf distanceLocalAf { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "200"; + config true; + } // END of distanceLocalAf definition. + + leaf setDampeningFlagAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setDampeningFlagAf definition. + + leaf halfLifeAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..45"; + } + default "15"; + config true; + } // END of halfLifeAf definition. + + leaf reusePenaltyAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..20000"; + } + config true; + } // END of reusePenaltyAf definition. + + leaf suppressPenaltyAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..20000"; + } + config true; + } // END of suppressPenaltyAf definition. + + leaf maxSuppressAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..255"; + } + config true; + } // END of maxSuppressAf definition. + + leaf unreachHalfLifeAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..45"; + } + config true; + } // END of unreachHalfLifeAf definition. + + leaf dampeningRmapNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of dampeningRmapNameAf definition. + + + list bgpAddressFamilyAggregateAddrList { + + + description + "bgpAddressFamilyAggregateAddrList"; + + config true; + key "aggregateAddrAf"; + + + leaf aggregateAddrAf { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of aggregateAddrAf definition. + + leaf aggregateTypeAf { + mandatory false; + type cml_data_types:CML_BGP_AGGREGATE_ADDR_TYPE_T; + config true; + } // END of aggregateTypeAf definition. + + leaf aggregateAsSetAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of aggregateAsSetAf definition. + + leaf aggregateSummOnlyAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of aggregateSummOnlyAf definition. + + leaf aggregateAs { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of aggregateAs definition. + + leaf aggregateAs4 { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of aggregateAs4 definition. + + } // End of bgpAddressFamilyAggregateAddrList-list + + list networkListAf { + + + description + "networkListAf"; + + config false; + key "networkAddrAf"; + + + leaf networkAddrAf { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of networkAddrAf definition. + + leaf ipv6Cmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ipv6Cmd definition. + + leaf ntwkLocalPrefAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ntwkLocalPrefAf definition. + + leaf bgpShowTypeStrAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpShowTypeStrAf definition. + + leaf bgpLongerPrefixCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpLongerPrefixCmd definition. + + leaf lastUpdateAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lastUpdateAf definition. + + leaf routeGetReuseTimeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeGetReuseTimeAf definition. + + leaf dampInfoTimesAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of dampInfoTimesAf definition. + + leaf routeGetPenaltyAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeGetPenaltyAf definition. + + leaf routeGetFlapCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeGetFlapCountAf definition. + + leaf bgpInfoSelectedAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpInfoSelectedAf definition. + + leaf atomicAggregateAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of atomicAggregateAf definition. + + leaf multiInstalledAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiInstalledAf definition. + + leaf ecmpMultiCandidateAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ecmpMultiCandidateAf definition. + + leaf bgpInfoTypeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpInfoTypeAf definition. + + leaf bgpInfoSubTypeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpInfoSubTypeAf definition. + + leaf bgpConfedPeerAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpConfedPeerAf definition. + + leaf peerLocalAsAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerLocalAsAf definition. + + leaf bgpInfoStaleAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpInfoStaleAf definition. + + leaf routeValidStateAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeValidStateAf definition. + + leaf briLabelAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of briLabelAf definition. + + leaf ntwkBgpOriginAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ntwkBgpOriginAf definition. + + leaf networkRemoteAddrAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of networkRemoteAddrAf definition. + + leaf originatorIdAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of originatorIdAf definition. + + leaf ibgpMetricAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ibgpMetricAf definition. + + leaf nhopValidAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of nhopValidAf definition. + + leaf historyAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of historyAf definition. + + leaf reflectorClientAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of reflectorClientAf definition. + + leaf ntwkPathCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkPathCountAf definition. + + leaf showBgpNtwkCmdAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of showBgpNtwkCmdAf definition. + + leaf peerNtwkWeightAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of peerNtwkWeightAf definition. + + leaf flapTimeReuseListAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of flapTimeReuseListAf definition. + + leaf flapRecordDurationAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of flapRecordDurationAf definition. + + leaf bgpDampPathCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpDampPathCmd definition. + + leaf bgpDampFlapCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpDampFlapCmd definition. + + leaf bgpIncosistentAsCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpIncosistentAsCmd definition. + + leaf dampTimeToReuseAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of dampTimeToReuseAf definition. + + leaf ntwkPrefixBestPathCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkPrefixBestPathCountAf definition. + + leaf checkCidr { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of checkCidr definition. + + leaf bgpCommunityCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpCommunityCmd definition. + + leaf bgpInfoFlagAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpInfoFlagAf definition. + + leaf bgpAttrMpNexthopGlobalInAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrMpNexthopGlobalInAf definition. + + leaf bgpAttrNextHopAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrNextHopAf definition. + + leaf bgpAttrNextHopLenAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrNextHopLenAf definition. + + leaf bgpAttrMpNexthopGlobalAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrMpNexthopGlobalAf definition. + + leaf bgpAttrMpNexthopLocalAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrMpNexthopLocalAf definition. + + leaf bgpUpTimeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpUpTimeAf definition. + + leaf medFlagTypeAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of medFlagTypeAf definition. + + leaf bgpMedValAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpMedValAf definition. + + leaf bgpAsPathStrAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAsPathStrAf definition. + + leaf bgpAsPath4BStrAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAsPath4BStrAf definition. + + leaf bgpAsPathOriginAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAsPathOriginAf definition. + + leaf bgpAsPath4BOriginAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAsPath4BOriginAf definition. + + + list advPeerListAf { + + + description + "advPeerListAf"; + + config false; + key "advPeerAddrAf"; + + + leaf advPeerAddrAf { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of advPeerAddrAf definition. + + leaf advNonPeerGroupAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advNonPeerGroupAf definition. + + } // End of advPeerListAf-list + + list advPeerGroupListAf { + + + description + "advPeerGroupListAf"; + + config false; + key "advPeerGroupNameAf"; + + + leaf advPeerGroupNameAf { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of advPeerGroupNameAf definition. + + leaf advNonPeerGroupAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advNonPeerGroupAf definition. + + } // End of advPeerGroupListAf-list + } // End of networkListAf-list + + list vrfobj { + + + description + "vrfobj"; + + config true; + key "vrfName"; + + + leaf vrfName { + mandatory true; + type leafref { + path "/vr/vrf/vrfName"; + } + } // END of vrfName definition. + + + list bgpAddressFamilyNetworkList { + + + description + "bgpAddressFamilyNetworkList"; + + config true; + key "localAddrAf"; + + + leaf localAddrAf { + mandatory true; + type cml_data_types:CML_IP_PREFIX_ADDR_T; + config true; + } // END of localAddrAf definition. + + leaf localAddrMaskAf { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of localAddrMaskAf definition. + + leaf networkRmapNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of networkRmapNameAf definition. + + leaf backdoorAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of backdoorAf definition. + + leaf rfdGetRecordDuraion { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of rfdGetRecordDuraion definition. + + leaf timeCal { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of timeCal definition. + + leaf rfdGetRecordDuration { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of rfdGetRecordDuration definition. + + leaf bgpInfoState { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpInfoState definition. + + leaf peerRemoteAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerRemoteAddr definition. + + leaf nhopValid { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of nhopValid definition. + + leaf peerSelf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of peerSelf definition. + + leaf ntwkPrefixBestPathCountAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkPrefixBestPathCountAf definition. + + leaf noAdvertise { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of noAdvertise definition. + + leaf noExport { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of noExport definition. + + leaf localAs { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of localAs definition. + + leaf suppress { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of suppress definition. + + leaf bgpInfoFlag { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpInfoFlag definition. + + leaf bgpAttrMpNexthopGlobalIn { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrMpNexthopGlobalIn definition. + + leaf bgpAttrNextHop { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrNextHop definition. + + leaf bgpAttrNextHopLen { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrNextHopLen definition. + + leaf bgpAttrMpNexthopGlobal { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrMpNexthopGlobal definition. + + leaf bgpAttrMpNexthopLocal { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAttrMpNexthopLocal definition. + + leaf bgpUpTime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpUpTime definition. + + leaf medFlagType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of medFlagType definition. + + leaf bgpMedVal { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpMedVal definition. + + leaf bgpAsPathCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpAsPathCount definition. + + leaf bgpAsPath4BCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpAsPath4BCount definition. + + leaf bgpAsPathOrigin { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAsPathOrigin definition. + + leaf bgpAsPath4BOrigin { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpAsPath4BOrigin definition. + + } // End of bgpAddressFamilyNetworkList-list + + list bgpAddressFamilyRedistList { + + + description + "bgpAddressFamilyRedistList"; + + config true; + key "redistTypeAf"; + + + leaf redistTypeAf { + mandatory true; + type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; + config true; + } // END of redistTypeAf definition. + + leaf redistRmapNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of redistRmapNameAf definition. + + leaf redistOspfNoAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + config true; + } // END of redistOspfNoAf definition. + + leaf redistOspfRmapAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of redistOspfRmapAf definition. + + } // End of bgpAddressFamilyRedistList-list + } // End of vrfobj-list + } // End of netwSubAddrFamily-list + } // End of netwAddrFamily-list + } // End of bgp-list + } // END of bgp-grouping definition. + + + grouping bgpGlobal-grouping { + list bgpGlobal { + + + description + "BGP global commands"; + + config true; + key "vrId"; + + + leaf vrId { + mandatory true; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf snmpRestart { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of snmpRestart definition. + + leaf aggNexthop { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of aggNexthop definition. + + leaf pathSelect { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of pathSelect definition. + + leaf setDisableAdjOut { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setDisableAdjOut definition. + + leaf setExtAsnCap { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setExtAsnCap definition. + + leaf setNexthopTriggerEnable { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of setNexthopTriggerEnable definition. + + leaf delayInterval { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..100"; + } + default "5"; + config true; + } // END of delayInterval definition. + + leaf rfc1771StrictSet { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of rfc1771StrictSet definition. + + leaf multiInstance { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of multiInstance definition. + + leaf allowSamePeer { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of allowSamePeer definition. + + leaf configType { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of configType definition. + + + list communityList { + + + description + "communityList"; + + config true; + key "commListName"; + + + leaf commListName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of commListName definition. + + + list commListAction { + + + description + "commListAction"; + + config true; + key "action"; + + + leaf action { + mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + config true; + } // END of action definition. + + + list commListVal { + + + description + "commListVal"; + + config true; + key "commListValue"; + + + leaf commListValue { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of commListValue definition. + + } // End of commListVal-list + } // End of commListAction-list + } // End of communityList-list + + list communityListNo { + + + description + "communityListNo"; + + config true; + key "commListStandNo"; + + + leaf commListStandNo { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..99"; + } + config true; + } // END of commListStandNo definition. + + + list commListAction { + + + description + "commListAction"; + + config true; + key "action"; + + + leaf action { + mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + config true; + } // END of action definition. + + + list commListVal { + + + description + "commListVal"; + + config true; + key "commListValue"; + + + leaf commListValue { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of commListValue definition. + + } // End of commListVal-list + } // End of commListAction-list + } // End of communityListNo-list + + list communityListStand { + + + description + "communityListStand"; + + config true; + key "commListName"; + + + leaf commListName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of commListName definition. + + + list commListAction { + + + description + "commListAction"; + + config true; + key "action"; + + + leaf action { + mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + config true; + } // END of action definition. + + + list commListVal { + + + description + "commListVal"; + + config true; + key "commListValue"; + + + leaf commListValue { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of commListValue definition. + + } // End of commListVal-list + } // End of commListAction-list + } // End of communityListStand-list + + list communityListExp { + + + description + "communityListExp"; + + config true; + key "commListNo"; + + + leaf commListNo { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "100..500"; + } + config true; + } // END of commListNo definition. + + + list commListAction { + + + description + "commListAction"; + + config true; + key "action"; + + + leaf action { + mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + config true; + } // END of action definition. + + + list commListVal { + + + description + "commListVal"; + + config true; + key "regExpList"; + + + leaf regExpList { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of regExpList definition. + + } // End of commListVal-list + } // End of commListAction-list + } // End of communityListExp-list + + list communityListExpand { + + + description + "communityListExpand"; + + config true; + key "commListExpName"; + + + leaf commListExpName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of commListExpName definition. + + + list commListAction { + + + description + "commListAction"; + + config true; + key "action"; + + + leaf action { + mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + config true; + } // END of action definition. + + + list commListVal { + + + description + "commListVal"; + + config true; + key "regExpList"; + + + leaf regExpList { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of regExpList definition. + + } // End of commListVal-list + } // End of commListAction-list + } // End of communityListExpand-list + + list extCommuListNo { + + + description + "extCommuListNo"; + + config true; + key "extCommListStandNo"; + + + leaf extCommListStandNo { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..99"; + } + config true; + } // END of extCommListStandNo definition. + + + list extCommListAction { + + + description + "extCommListAction"; + + config true; + key "extAction"; + + + leaf extAction { + mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + config true; + } // END of extAction definition. + + + list extCommListVal { + + + description + "extCommListVal"; + + config true; + key "extCommListValue"; + + + leaf extCommListValue { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of extCommListValue definition. + + } // End of extCommListVal-list + } // End of extCommListAction-list + } // End of extCommuListNo-list + + list extCommListStand { + + + description + "extCommListStand"; + + config true; + key "extCommListName"; + + + leaf extCommListName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of extCommListName definition. + + leaf delExcomm { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of delExcomm definition. + + + list extCommListAction { + + + description + "extCommListAction"; + + config true; + key "extAction"; + + + leaf extAction { + mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + config true; + } // END of extAction definition. + + + list routeTargetSoo { + + + description + "routeTargetSoo"; + + config true; + key "rtSoo"; + + + leaf rtSoo { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of rtSoo definition. + + + list extCommListVal { + + + description + "extCommListVal"; + + config true; + key "extCommListValue"; + + + leaf extCommListValue { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of extCommListValue definition. + + } // End of extCommListVal-list + } // End of routeTargetSoo-list + } // End of extCommListAction-list + } // End of extCommListStand-list + + list extCommunityListExp { + + + description + "extCommunityListExp"; + + config true; + key "extCommListNo"; + + + leaf extCommListNo { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "100..500"; + } + config true; + } // END of extCommListNo definition. + + + list extCommListAction { + + + description + "extCommListAction"; + + config true; + key "extAction"; + + + leaf extAction { + mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + config true; + } // END of extAction definition. + + + list extCommListVal { + + + description + "extCommListVal"; + + config true; + key "extCommListValue"; + + + leaf extCommListValue { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of extCommListValue definition. + + } // End of extCommListVal-list + } // End of extCommListAction-list + } // End of extCommunityListExp-list + + list extCommListExpand { + + + description + "extCommListExpand"; + + config true; + key "extCommListExpName"; + + + leaf extCommListExpName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of extCommListExpName definition. + + + list extCommListAction { + + + description + "extCommListAction"; + + config true; + key "extAction"; + + + leaf extAction { + mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + config true; + } // END of extAction definition. + + + list extCommListVal { + + + description + "extCommListVal"; + + config true; + key "extCommListValue"; + + + leaf extCommListValue { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of extCommListValue definition. + + } // End of extCommListVal-list + } // End of extCommListAction-list + } // End of extCommListExpand-list + + list accessList { + + + description + "accessList"; + + config true; + key "accessListName"; + + + leaf accessListName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of accessListName definition. + + + list accessListDirection { + + + description + "accessListDirection"; + + config true; + key "accessListDirection"; + + + leaf accessListDirection { + mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + config true; + } // END of accessListDirection definition. + + + list bgpRegExp { + + + description + "bgpRegExp"; + + config true; + key "bgpRegExp"; + + + leaf bgpRegExp { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of bgpRegExp definition. + + } // End of bgpRegExp-list + } // End of accessListDirection-list + } // End of accessList-list + } // End of bgpGlobal-list + } // END of bgpGlobal-grouping definition. + + + grouping bgpDebug-grouping { + list bgpDebug { + + + description + "bgpDebug"; + + config true; + key "vrId"; + + + leaf vrId { + mandatory true; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf debugFlag { + mandatory false; + type cml_data_types:CML_BGP_DEBUG_TYPE_T; + default "all"; + config true; + } // END of debugFlag definition. + + leaf undebugFlag { + mandatory false; + type cml_data_types:CML_BGP_DEBUG_TYPE_T; + default "all"; + config true; + } // END of undebugFlag definition. + + leaf debugUpdateFlag { + mandatory false; + type cml_data_types:CML_BGP_UPDATE_DEBUG_TYPE_T; + config true; + } // END of debugUpdateFlag definition. + + } // End of bgpDebug-list + } // END of bgpDebug-grouping definition. + + + grouping hashTableInfo-grouping { + list hashTableInfo { + + + description + "hashTableInfo"; + + config false; + key "hashBacket"; + + + leaf hashBacket { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of hashBacket definition. + + leaf hashRefCnt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of hashRefCnt definition. + + leaf hashAsStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of hashAsStr definition. + + leaf hashComStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of hashComStr definition. + + leaf bgpPathCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpPathCmd definition. + + leaf bgpComInfoCmd { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpComInfoCmd definition. + + } // End of hashTableInfo-list + } // END of hashTableInfo-grouping definition. + + + grouping vrfTable-grouping { + list vrfTable { + + + description + "vrfTable"; + + config true; + key "vrfName"; + + + leaf vrfName { + mandatory true; + type leafref { + path "/vr/vrf/vrfName"; + } + } // END of vrfName definition. + + leaf importMap { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of importMap definition. + + leaf rdStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of rdStr definition. + + + list routeTarget { + + + description + "routeTarget"; + + config true; + key "rtRdStr"; + + + leaf direct { + mandatory true; + type cml_data_types:CML_RT_T; + config true; + } // END of direct definition. + + leaf rtRdStr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of rtRdStr definition. + + } // End of routeTarget-list + } // End of vrfTable-list + } // END of vrfTable-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/bridge.yang b/yang-files/bridge.yang new file mode 100644 index 00000000..6d0a110b --- /dev/null +++ b/yang-files/bridge.yang @@ -0,0 +1,1327 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : bridge.yang +* +*/ + +submodule bridge { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include vlan; + include mstp; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Layer-2 bridge configurations"; + + + revision "2015-04-25" { + description "Revisied on 2015-04-25."; } + + + + grouping bridge-grouping { + list bridge { + + + description + "bridge"; + + config true; + key "bridgeId"; + + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf bridgeId { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of bridgeId definition. + + leaf bridgeType { + mandatory true; + type cml_data_types:CML_BRIDGE_PROTOCOL_T; + config true; + } // END of bridgeType definition. + + leaf topologyType { + mandatory false; + type cml_data_types:CML_BRIDGE_TOPOLOGY_T; + default "ring"; + config true; + } // END of topologyType definition. + + leaf macAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of macAddr definition. + + leaf discardForward { + mandatory false; + type cml_data_types:CML_DISCARDFORWARD_T; + config true; + } // END of discardForward definition. + + leaf ifName { + mandatory false; + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf bridgeForward { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bridgeForward definition. + + leaf forward { + mandatory false; + type cml_data_types:CML_BRIDGE_FORWARDING_SET_T; + config true; + } // END of forward definition. + + leaf ageingStatus { + mandatory false; + type cml_data_types:CML_BRIDGE_AGEING_STATE; + config true; + } // END of ageingStatus definition. + + leaf learning { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of learning definition. + + leaf ageingTime { + mandatory false; + type cml_data_types:CML_INT32_T { + range "10..1000000"; + } + default "300"; + config true; + } // END of ageingTime definition. + + leaf mstpEnabled { + mandatory false; + type cml_data_types:CML_ENABLE_DISABLE_T; + default "disable"; + config true; + } // END of mstpEnabled definition. + + leaf helloTime { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..10"; + } + default "2"; + config true; + } // END of helloTime definition. + + leaf maxAge { + mandatory false; + type cml_data_types:CML_INT32_T { + range "6..40"; + } + default "20"; + config true; + } // END of maxAge definition. + + leaf priority { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..61440"; + } + default "32768"; + config true; + } // END of priority definition. + + leaf forwardDelay { + mandatory false; + type cml_data_types:CML_INT32_T { + range "4..30"; + } + default "15"; + config true; + } // END of forwardDelay definition. + + leaf transmitHoldCount { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..10"; + } + default "6"; + config true; + } // END of transmitHoldCount definition. + + leaf bpduguardEnable { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of bpduguardEnable definition. + + leaf errdisableTimeoutEnable { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of errdisableTimeoutEnable definition. + + leaf errdisableTimeoutInterval { + mandatory false; + type cml_data_types:CML_INT32_T { + range "10..1000000"; + } + default "300"; + config true; + } // END of errdisableTimeoutInterval definition. + + leaf revisionLevel { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + config true; + } // END of revisionLevel definition. + + leaf maxHops { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..40"; + } + default "20"; + config true; + } // END of maxHops definition. + + leaf regionName { + mandatory false; + type cml_data_types:CML_STRING_T; + default "Default"; + config true; + } // END of regionName definition. + + leaf bpduFilter { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of bpduFilter definition. + + leaf debug { + mandatory false; + type cml_data_types:CML_UINT32_T; + config true; + } // END of debug definition. + + leaf debugStatus { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of debugStatus definition. + + leaf adminCisco { + mandatory false; + type cml_data_types:CML_ENABLE_DISABLE_T; + default "disable"; + config true; + } // END of adminCisco definition. + + leaf pathCostMethod { + mandatory false; + type cml_data_types:CML_PATHCOST_METHOD_T; + default "default"; + config true; + } // END of pathCostMethod definition. + + leaf forceVersion { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..4"; + } + default "0"; + config true; + } // END of forceVersion definition. + + leaf vId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vId definition. + + leaf svId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of svId definition. + + leaf bridgePort { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bridgePort definition. + + leaf cistbridgePriority { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistbridgePriority definition. + + leaf topologyChange { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of topologyChange definition. + + leaf externalrootPathcost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of externalrootPathcost definition. + + leaf bridgeEnabled { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bridgeEnabled definition. + + leaf topologychangeDetected { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of topologychangeDetected definition. + + leaf cistmstpBridge { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistmstpBridge definition. + + leaf cistRootPort { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistRootPort definition. + + leaf cistdesignatedRoot { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistdesignatedRoot definition. + + leaf cistBridgeid { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistBridgeid definition. + + leaf totalnumberTopologychange { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of totalnumberTopologychange definition. + + leaf cistregisteredRoot { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistregisteredRoot definition. + + leaf maxAgeCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of maxAgeCount definition. + + leaf bridgeHelloTime { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bridgeHelloTime definition. + + leaf bridgeForwardDelay { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bridgeForwardDelay definition. + + leaf bridgeTopologyChange { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bridgeTopologyChange definition. + + leaf topologyChangeCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of topologyChangeCount definition. + + leaf topologyChangeLastRecv { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of topologyChangeLastRecv definition. + + leaf addressFlag { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of addressFlag definition. + + leaf bridgeMaxAge { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bridgeMaxAge definition. + + leaf lasttimeTopologychange { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lasttimeTopologychange definition. + + leaf configFormat { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of configFormat definition. + + leaf configName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of configName definition. + + leaf configRevision { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of configRevision definition. + + leaf configDigest { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of configDigest definition. + + leaf brType { + mandatory false; + type cml_data_types:CML_BRIDGE_TYPE_T; + config true; + } // END of brType definition. + + leaf cistrootportIfindex { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of cistrootportIfindex definition. + + leaf forwarddelayTimer { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of forwarddelayTimer definition. + + leaf messageageTimer { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of messageageTimer definition. + + + list interface { + + + description + " Group of bridge attribute having interface property"; + + config true; + key "ifName"; + + + leaf ifName { + mandatory true; + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf spanningTreeDisable { + mandatory true; + type cml_data_types:CML_SPANNINGTREE_ENABLE_DISABLE_T; + config true; + } // END of spanningTreeDisable definition. + + leaf p2pMac { + mandatory false; + type cml_data_types:CML_LINK_TYPE_T; + default "point-to-point"; + config true; + } // END of p2pMac definition. + + leaf portPriority { + mandatory false; + type cml_data_types:CML_INT16_T { + range "0..240"; + } + default "128"; + config true; + } // END of portPriority definition. + + leaf portedgeEnable { + mandatory false; + type cml_data_types:CML_PORTEDGE_T; + default "portfast"; + config true; + } // END of portedgeEnable definition. + + leaf restrictedDomainRole { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of restrictedDomainRole definition. + + leaf autoEdge { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of autoEdge definition. + + leaf adminBpduguard { + mandatory false; + type cml_data_types:CML_BPDU_T; + default "default"; + config true; + } // END of adminBpduguard definition. + + leaf portHelloTime { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..10"; + } + default "2"; + config true; + } // END of portHelloTime definition. + + leaf pathCost { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..200000000"; + } + config true; + } // END of pathCost definition. + + leaf restrictedRole { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of restrictedRole definition. + + leaf restrictedTCN { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of restrictedTCN definition. + + leaf adminRootGuard { + mandatory false; + type cml_data_types:CML_UINT8_T; + default "1"; + config true; + } // END of adminRootGuard definition. + + leaf adminBpdufilter { + mandatory false; + type cml_data_types:CML_BPDU_T; + default "default"; + config true; + } // END of adminBpdufilter definition. + + leaf enableBpduRx { + mandatory false; + type cml_data_types:CML_INT32_T; + default "0"; + config true; + } // END of enableBpduRx definition. + + leaf overMacType { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of overMacType definition. + + leaf priorityOverWrite { + mandatory false; + type cml_data_types:CML_UINT8_T; + config true; + } // END of priorityOverWrite definition. + + leaf cistbridgePriority { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistbridgePriority definition. + + leaf topologyChange { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of topologyChange definition. + + leaf externalrootPathcost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of externalrootPathcost definition. + + leaf bridgeEnabled { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bridgeEnabled definition. + + leaf cistmstpBridge { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistmstpBridge definition. + + leaf cistdesignatedRoot { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistdesignatedRoot definition. + + leaf cistBridgeid { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistBridgeid definition. + + leaf totalnumberTopologychange { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of totalnumberTopologychange definition. + + leaf cistregisteredRoot { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistregisteredRoot definition. + + leaf maxAgeCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of maxAgeCount definition. + + leaf bridgeHelloTime { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bridgeHelloTime definition. + + leaf bridgeForwardDelay { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bridgeForwardDelay definition. + + leaf bridgeTopologyChange { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bridgeTopologyChange definition. + + leaf topologyChangeCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of topologyChangeCount definition. + + leaf topologyChangeLastRecv { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of topologyChangeLastRecv definition. + + leaf portName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of portName definition. + + leaf portNumber { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of portNumber definition. + + leaf portIfindex { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of portIfindex definition. + + leaf cistPortid { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of cistPortid definition. + + leaf mstipathCost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of mstipathCost definition. + + leaf designatedPortid { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of designatedPortid definition. + + leaf cistpathCost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistpathCost definition. + + leaf portdesignatedCost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of portdesignatedCost definition. + + leaf cistDesignatedportId { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistDesignatedportId definition. + + leaf cistPortState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistPortState definition. + + leaf cistPriority { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistPriority definition. + + leaf mstiInstanceRoot { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of mstiInstanceRoot definition. + + leaf messageAge { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of messageAge definition. + + leaf maxAgePort { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of maxAgePort definition. + + leaf cisthelloTime { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of cisthelloTime definition. + + leaf helloTimePort { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of helloTimePort definition. + + leaf cistforwardDelay { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of cistforwardDelay definition. + + leaf topologyChangeTimer { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of topologyChangeTimer definition. + + leaf cistforwardTransition { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistforwardTransition definition. + + leaf cistPortFast { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistPortFast definition. + + leaf bpduGuardState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bpduGuardState definition. + + leaf operBpduGuardState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of operBpduGuardState definition. + + leaf bpduFilterState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bpduFilterState definition. + + leaf operBpduFilterState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of operBpduFilterState definition. + + leaf rootGuardConfigState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of rootGuardConfigState definition. + + leaf rootGuardState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of rootGuardState definition. + + leaf cistPortrole { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistPortrole definition. + + leaf portType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of portType definition. + + leaf portRefCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of portRefCount definition. + + leaf version { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of version definition. + + leaf portRecieved { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of portRecieved definition. + + leaf portSend { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of portSend definition. + + leaf portFastCfg { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of portFastCfg definition. + + leaf portFastState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of portFastState definition. + + leaf pToPstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of pToPstate definition. + + leaf pToPCurrentstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of pToPCurrentstate definition. + + leaf autoEdgePCfg { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of autoEdgePCfg definition. + + leaf autoEdgetstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of autoEdgetstate definition. + + leaf bridgeDesignatedRoot { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bridgeDesignatedRoot definition. + + leaf bridgeDesignated { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bridgeDesignated definition. + + leaf nextMsg { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of nextMsg definition. + + leaf mstiRoot { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of mstiRoot definition. + + leaf designatedBridge { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of designatedBridge definition. + + leaf helloTimer { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of helloTimer definition. + + leaf hwAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of hwAddr definition. + + leaf forwardState { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of forwardState definition. + + + list mstpInterface { + + + description + "runtime mstp interface instance info"; + + config false; + key "instanceId"; + + + leaf instanceId { + mandatory true; + type cml_data_types:CML_INT32_T { + range "1..63"; + } + config false; + } // END of instanceId definition. + + leaf cistPortrole { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistPortrole definition. + + leaf portName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of portName definition. + + leaf portNumber { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of portNumber definition. + + leaf cistpathCost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistpathCost definition. + + leaf cistPriority { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of cistPriority definition. + + leaf cisthelloTime { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of cisthelloTime definition. + + leaf cistforwardDelay { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of cistforwardDelay definition. + + leaf portspanningTree { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of portspanningTree definition. + + leaf portconfbpduSent { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of portconfbpduSent definition. + + leaf configPending { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of configPending definition. + + leaf porttopChangeack { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of porttopChangeack definition. + + leaf portconfbpduRecieved { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of portconfbpduRecieved definition. + + leaf porttcnbpduSent { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of porttcnbpduSent definition. + + leaf porttcnbpduRecieved { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of porttcnbpduRecieved definition. + + leaf portForwardTransition { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of portForwardTransition definition. + + leaf helloTimerstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of helloTimerstate definition. + + leaf helloTimervalue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of helloTimervalue definition. + + leaf forwardTimerstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of forwardTimerstate definition. + + leaf forwardTimervalue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of forwardTimervalue definition. + + leaf messageTimerstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of messageTimerstate definition. + + leaf topologychangeTimerstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of topologychangeTimerstate definition. + + leaf topologychangeTimervalue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of topologychangeTimervalue definition. + + leaf holdTimerstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of holdTimerstate definition. + + leaf holdTimervalue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of holdTimervalue definition. + + leaf messageageExpiry { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of messageageExpiry definition. + + leaf similarbpduCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of similarbpduCount definition. + + leaf sourcemacCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of sourcemacCount definition. + + leaf totalsourcemacRecieved { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of totalsourcemacRecieved definition. + + leaf porttopologyChangetime { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of porttopologyChangetime definition. + + leaf designatedrootPathcost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of designatedrootPathcost definition. + + leaf designatedInsPortid { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of designatedInsPortid definition. + + leaf mstiInstancedesignatedRoot { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of mstiInstancedesignatedRoot definition. + + leaf mstiInstanceBridgeId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of mstiInstanceBridgeId definition. + + leaf stpMultiCastAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of stpMultiCastAddr definition. + + leaf instanceBridgeMacAddress { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of instanceBridgeMacAddress definition. + + leaf instancetopologyChange { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of instancetopologyChange definition. + + leaf instanceTopologychangedetected { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of instanceTopologychangedetected definition. + + leaf instlastTopologychangerecievedfrom { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of instlastTopologychangerecievedfrom definition. + + leaf mstirootportIfindex { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of mstirootportIfindex definition. + + leaf mstiPriority { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of mstiPriority definition. + + leaf instancemaxAge { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of instancemaxAge definition. + + leaf mstibridgePriority { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of mstibridgePriority definition. + + leaf internalrootPathcost { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of internalrootPathcost definition. + + leaf messageAgeIns { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of messageAgeIns definition. + + leaf instanceportconfbpduSent { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceportconfbpduSent definition. + + leaf instanceportconfbpduRecieved { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceportconfbpduRecieved definition. + + leaf instanceporttcnbpduSent { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceporttcnbpduSent definition. + + leaf instanceporttcnbpduRecieved { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceporttcnbpduRecieved definition. + + leaf cistforwardTransition { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistforwardTransition definition. + + leaf instancetopologychangeInitiator { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of instancetopologychangeInitiator definition. + + leaf topologychangeInitiator { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of topologychangeInitiator definition. + + leaf lasttopologychangeRecievedfrom { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of lasttopologychangeRecievedfrom definition. + + leaf configFormat { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of configFormat definition. + + leaf messageageTimervalue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of messageageTimervalue definition. + + leaf instanceMstiporttopologyChangetime { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of instanceMstiporttopologyChangetime definition. + + leaf instancePortNextState { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of instancePortNextState definition. + + leaf instanceTopologuChangeCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of instanceTopologuChangeCount definition. + + leaf mstipathCost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of mstipathCost definition. + + } // End of mstpInterface-list + } // End of interface-list + uses vlan-grouping; + uses mstp-grouping; + } // End of bridge-list + } // END of bridge-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/interface.yang b/yang-files/interface.yang new file mode 100644 index 00000000..01a097be --- /dev/null +++ b/yang-files/interface.yang @@ -0,0 +1,653 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : interface.yang +* +*/ + +submodule interface { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Interface"; + + + revision "2015-10-08" { + description "Revisied on 2015-10-08."; } + + + + grouping interface-grouping { + list interface { + + + description + "interface"; + + config true; + key "ifName"; + + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf ifName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ifName definition. + + leaf mtu { + mandatory false; + type cml_data_types:CML_INT32_T { + range "64..65536"; + } + default "1500"; + config true; + } // END of mtu definition. + + leaf macAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of macAddr definition. + + leaf ipAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of ipAddr definition. + + leaf prefixlen { + mandatory false; + type cml_data_types:CML_UINT8_T; + config true; + } // END of prefixlen definition. + + leaf ipLabel { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of ipLabel definition. + + leaf vrfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of vrfName definition. + + leaf ipForwarding { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ipForwarding definition. + + leaf ipv6Forwarding { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ipv6Forwarding definition. + + leaf mauType { + mandatory false; + type cml_data_types:CML_MAUTYPE_T; + default "dot3MauType0dot0"; + config true; + } // END of mauType definition. + + leaf duplex { + mandatory false; + type cml_data_types:CML_DUPLEX_T; + default "auto"; + config true; + } // END of duplex definition. + + leaf maxBandwidthStr { + mandatory false; + type cml_data_types:CML_STRING_T; + default "0"; + config true; + } // END of maxBandwidthStr definition. + + leaf reservableBandwidthStr { + mandatory false; + type cml_data_types:CML_STRING_T; + default "0"; + config true; + } // END of reservableBandwidthStr definition. + + leaf adminGrpName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of adminGrpName definition. + + leaf bandwidthConstraintMode { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of bandwidthConstraintMode definition. + + leaf linkStatus { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of linkStatus definition. + + leaf switchportStatus { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of switchportStatus definition. + + leaf adminState { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of adminState definition. + + leaf multicast { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of multicast definition. + + leaf labelSwitching { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of labelSwitching definition. + + leaf isRunning { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of isRunning definition. + + leaf rpfType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of rpfType definition. + + leaf adminRunState { + mandatory false; + type cml_data_types:CML_INTERFACE_ADMIN_STATE_T; + config false; + } // END of adminRunState definition. + + leaf dhcpConfigured { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of dhcpConfigured definition. + + leaf gmplsType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of gmplsType definition. + + leaf vrfId { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of vrfId definition. + + leaf multipathNum { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multipathNum definition. + + leaf routeTotal { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of routeTotal definition. + + leaf counterFib { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of counterFib definition. + + leaf ip6Addr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ip6Addr definition. + + leaf ingressfilterStatus { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ingressfilterStatus definition. + + leaf frameTypes { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of frameTypes definition. + + leaf nativeVlan { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of nativeVlan definition. + + leaf defaultVlan { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of defaultVlan definition. + + leaf confVlan { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of confVlan definition. + + leaf vId { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of vId definition. + + leaf transvId { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of transvId definition. + + leaf hwType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of hwType definition. + + leaf hwAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of hwAddr definition. + + leaf staticFlag { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of staticFlag definition. + + leaf interfaceDesc { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of interfaceDesc definition. + + leaf autoNeg { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of autoNeg definition. + + leaf vrxFlag { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vrxFlag definition. + + leaf maxlabelValue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of maxlabelValue definition. + + leaf ifoutputErrors { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifoutputErrors definition. + + leaf ifCollisions { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifCollisions definition. + + leaf servString { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of servString definition. + + leaf vcgroupName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vcgroupName definition. + + leaf bwconstraintMode { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bwconstraintMode definition. + + leaf classtypeNumber { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of classtypeNumber definition. + + leaf teclpriorityBw { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teclpriorityBw definition. + + leaf ifinputStats { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifinputStats definition. + + leaf ifoutputStats { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifoutputStats definition. + + leaf ifinputErrors { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifinputErrors definition. + + leaf ifIndex { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ifIndex definition. + + leaf ifMetric { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ifMetric definition. + + leaf arpageingTimeout { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of arpageingTimeout definition. + + leaf labelSpace { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of labelSpace definition. + + leaf minlabelValue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of minlabelValue definition. + + leaf fromLabel { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of fromLabel definition. + + leaf toLabel { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of toLabel definition. + + leaf vplsName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vplsName definition. + + leaf vcName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vcName definition. + + leaf vcType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vcType definition. + + leaf mplsClassTypeName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of mplsClassTypeName definition. + + leaf mplsclasstypeNumber { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of mplsclasstypeNumber definition. + + leaf mplsPriority { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of mplsPriority definition. + + leaf mplsteclassId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of mplsteclassId definition. + + leaf ifinputPkts { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifinputPkts definition. + + leaf ifinputOctets { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifinputOctets definition. + + leaf ifinputDrops { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifinputDrops definition. + + leaf ifinputmcastPkts { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifinputmcastPkts definition. + + leaf ifbadCrc { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifbadCrc definition. + + leaf ifundersizedPkts { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifundersizedPkts definition. + + leaf ifoutputPkts { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifoutputPkts definition. + + leaf ifoutputOctets { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifoutputOctets definition. + + leaf ifoutputDrops { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifoutputDrops definition. + + leaf ifoutputBcastPkts { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifoutputBcastPkts definition. + + leaf ifoversizedPkts { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifoversizedPkts definition. + + leaf ifoutputmcastPkts { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifoutputmcastPkts definition. + + + list secondary { + + + description + "IPv4 Address"; + + config true; + key "secIpAddr"; + + + leaf secIpAddr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of secIpAddr definition. + + leaf secondaryFlag { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of secondaryFlag definition. + + leaf ipLabel { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ipLabel definition. + + } // End of secondary-list + + list bandwidthConstraint { + + + description + "set bandwidth constraint"; + + config true; + key "constraintName"; + + + leaf constraintName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of constraintName definition. + + leaf bandwidthStr { + mandatory true; + type cml_data_types:CML_STRING_T { + length "1..10000000000"; + } + config true; + } // END of bandwidthStr definition. + + } // End of bandwidthConstraint-list + + list ipv6Addr { + + + description + "IPv6 Address"; + + config true; + key "ipv6Addr"; + + + leaf ipv6Addr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ipv6Addr definition. + + leaf anycast { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of anycast definition. + + } // End of ipv6Addr-list + + list ipRouteSummary { + + + description + "ipRouteSummary"; + + config false; + key "routeType"; + + + leaf routeType { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeType definition. + + leaf counterType { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of counterType definition. + + } // End of ipRouteSummary-list + } // End of interface-list + } // END of interface-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/layer2LACP.yang b/yang-files/layer2LACP.yang new file mode 100644 index 00000000..4826cf8c --- /dev/null +++ b/yang-files/layer2LACP.yang @@ -0,0 +1,107 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : layer2LACP.yang +* +*/ + +submodule layer2LACP { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Layer-2 lacp configurations"; + + + revision "2015-10-21" { + description "Revisied on 2015-10-21."; } + + + + grouping lacpInterface-grouping { + list lacpInterface { + + + description + "LACP interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + mandatory true; + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf portPriority { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "32768"; + config true; + } // END of portPriority definition. + + leaf TimeOut { + mandatory false; + type cml_data_types:CML_LACP_TIMEOUT_T; + default "long"; + config true; + } // END of TimeOut definition. + + leaf bridgeType { + mandatory false; + type cml_data_types:CML_LACP_BRIDGETYPE_T; + default "multicast-group-address"; + config true; + } // END of bridgeType definition. + + leaf discardConv { + mandatory false; + type cml_data_types:CML_LACP_DISCARD_CONV_T; + default "disable"; + config true; + } // END of discardConv definition. + + } // End of lacpInterface-list + } // END of lacpInterface-grouping definition. + + grouping lacpSystemPriority-grouping { + container lacpSystemPriority { + + config true; + + description + "lacpSystemPriority"; + + leaf systemPriority { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "32768"; + config true; + } // END of systemPriority definition. + + } // END of lacpSystemPriority-container definition. + } // END of lacpSystemPriority-container definition. + + +} \ No newline at end of file diff --git a/yang-files/lldpv2.yang b/yang-files/lldpv2.yang new file mode 100644 index 00000000..72633843 --- /dev/null +++ b/yang-files/lldpv2.yang @@ -0,0 +1,298 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : lldpv2.yang +* +*/ + +submodule lldpv2 { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Link Layer Discovery Protocol"; + + + revision "2015-10-08" { + description "Revisied on 2015-10-08."; } + + + + grouping lldpv2Interface-grouping { + list lldpv2Interface { + + + description + "LLDPV2 interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + mandatory true; + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf lldpPortDescription { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of lldpPortDescription definition. + + leaf lldpAgtCircuitId { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of lldpAgtCircuitId definition. + + leaf lldpmedDevType { + mandatory false; + type cml_data_types:CML_LLDP_MEDDEV_T; + config true; + } // END of lldpmedDevType definition. + + leaf localName { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of localName definition. + + + list lldpAgent { + + + description + "LLDP configuration related operations"; + + config true; + key "lldpAgent"; + + + leaf lldpAgent { + mandatory true; + type cml_data_types:CML_LLDP_AGENT_T; + config true; + } // END of lldpAgent definition. + + leaf lldpEnable { + mandatory false; + type cml_data_types:CML_LLDP_ENABLE_T; + default "rxonly"; + config true; + } // END of lldpEnable definition. + + leaf lldpDisable { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of lldpDisable definition. + + leaf reinitDelay { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of reinitDelay definition. + + leaf MsgTxInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "5..3600"; + } + default "30"; + config true; + } // END of MsgTxInterval definition. + + leaf MsgTxValue { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of MsgTxValue definition. + + leaf MsgFastTx { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..3600"; + } + default "1"; + config true; + } // END of MsgFastTx definition. + + leaf neighborLimit { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + config true; + } // END of neighborLimit definition. + + leaf neighborTimer { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + config true; + } // END of neighborTimer definition. + + leaf portLimit { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + config true; + } // END of portLimit definition. + + leaf portMac { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of portMac definition. + + leaf portTimer { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + config true; + } // END of portTimer definition. + + leaf TxMaxCredit { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..10"; + } + default "5"; + config true; + } // END of TxMaxCredit definition. + + leaf TxFastInit { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..8"; + } + default "4"; + config true; + } // END of TxFastInit definition. + + leaf portAddr { + mandatory false; + type cml_data_types:CML_LLDP_MGMT_ADDR_T; + default "mac-address"; + config true; + } // END of portAddr definition. + + leaf chassisId { + mandatory false; + type cml_data_types:CML_LLDP_CHASSIS_T; + default "mac-address"; + config true; + } // END of chassisId definition. + + leaf portId { + mandatory false; + type cml_data_types:CML_LLDP_PORT_T; + default "mac-address"; + config true; + } // END of portId definition. + + leaf tlvFlag { + mandatory false; + type cml_data_types:CML_LLDP_TVL_FLAG_T; + config true; + } // END of tlvFlag definition. + + leaf TlvSelect { + mandatory false; + type cml_data_types:CML_LLDP_IEEE_8023_T; + config true; + } // END of TlvSelect definition. + + leaf TlvSelectIeee { + mandatory false; + type cml_data_types:CML_LLDP_IEEE_8021_T; + config true; + } // END of TlvSelectIeee definition. + + leaf TlvSelectBasic { + mandatory false; + type cml_data_types:CML_LLDP_BASIC_T; + config true; + } // END of TlvSelectBasic definition. + + leaf tlvMed { + mandatory false; + type cml_data_types:CML_LLDP_MED_T; + default "media-capabilities"; + config true; + } // END of tlvMed definition. + + } // End of lldpAgent-list + } // End of lldpv2Interface-list + } // END of lldpv2Interface-grouping definition. + + grouping systemDetail-grouping { + container systemDetail { + + config true; + + description + "systemDetail"; + + leaf SystemName { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of SystemName definition. + + leaf lldpRun { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of lldpRun definition. + + leaf lldpSystemDescription { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of lldpSystemDescription definition. + + leaf locallyAssigned { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of locallyAssigned definition. + + } // END of systemDetail-container definition. + } // END of systemDetail-container definition. + + +} \ No newline at end of file diff --git a/yang-files/mstp.yang b/yang-files/mstp.yang new file mode 100644 index 00000000..392c7caa --- /dev/null +++ b/yang-files/mstp.yang @@ -0,0 +1,692 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : mstp.yang +* +*/ + +submodule mstp { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include vlan; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Layer-2 bridge configurations"; + + + revision "2015-04-25" { + description "Revisied on 2015-04-25."; } + + + + grouping mstp-grouping { + list mstp { + + + description + "mstp"; + + config true; + key "instanceId"; + + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf bridgeId { + mandatory false; + type leafref { + path "/vr/bridge/bridgeId"; + } + } // END of bridgeId definition. + + leaf instanceId { + mandatory true; + type cml_data_types:CML_INT32_T { + range "1..63"; + } + config true; + } // END of instanceId definition. + + leaf instPriority { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..61440"; + } + default "32768"; + config true; + } // END of instPriority definition. + + leaf-list vlanId { + + type leafref { + path "/vr/bridge/vlan/vlanId"; + } + } // END of vlanId definition. + + leaf bridgeEnabled { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of bridgeEnabled definition. + + leaf topologyChange { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of topologyChange definition. + + leaf topologychangeDetected { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of topologychangeDetected definition. + + leaf cistmstpBridge { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistmstpBridge definition. + + leaf externalrootPathcost { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of externalrootPathcost definition. + + leaf internalrootPathcost { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of internalrootPathcost definition. + + leaf cistbridgePriority { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistbridgePriority definition. + + leaf cistrootportIfindex { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of cistrootportIfindex definition. + + leaf totalnumberTopologychange { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of totalnumberTopologychange definition. + + leaf lasttimeTopologychange { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of lasttimeTopologychange definition. + + leaf cistdesignatedRoot { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistdesignatedRoot definition. + + leaf cistregisteredRoot { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistregisteredRoot definition. + + leaf cistBridgeid { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistBridgeid definition. + + leaf mstirootportIfindex { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of mstirootportIfindex definition. + + leaf mstibridgePriority { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of mstibridgePriority definition. + + leaf mstibridgeId { + mandatory true; + type cml_data_types:CML_UINT8_T; + config false; + } // END of mstibridgeId definition. + + leaf mstidesignatedRoot { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of mstidesignatedRoot definition. + + leaf designatedPortid { + mandatory true; + type cml_data_types:CML_UINT16_T; + config false; + } // END of designatedPortid definition. + + leaf mstipathCost { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of mstipathCost definition. + + leaf mstiPriority { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of mstiPriority definition. + + leaf messageAge { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of messageAge definition. + + leaf forwarddelayTimer { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of forwarddelayTimer definition. + + leaf messageageTimer { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of messageageTimer definition. + + leaf helloTimer { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of helloTimer definition. + + leaf instanceportconfbpduSent { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceportconfbpduSent definition. + + leaf instanceportconfbpduRecieved { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceportconfbpduRecieved definition. + + leaf instanceporttcnbpduSent { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceporttcnbpduSent definition. + + leaf instanceporttcnbpduRecieved { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceporttcnbpduRecieved definition. + + leaf cistmessageAge { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of cistmessageAge definition. + + leaf cistforwardTransition { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistforwardTransition definition. + + leaf portnextState { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of portnextState definition. + + leaf instanceporttopologyChangetime { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of instanceporttopologyChangetime definition. + + leaf bridgemacAddress { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of bridgemacAddress definition. + + leaf stpmulticastAddress { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of stpmulticastAddress definition. + + leaf instanceTopologychangedetected { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of instanceTopologychangedetected definition. + + leaf instlastTopologychangerecievedfrom { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of instlastTopologychangerecievedfrom definition. + + leaf instancemaxAge { + mandatory true; + type cml_data_types:CML_UINT32_T; + config false; + } // END of instancemaxAge definition. + + leaf instancetopologychangeInitiator { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of instancetopologychangeInitiator definition. + + leaf topologychangeInitiator { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of topologychangeInitiator definition. + + leaf instancetopologyChange { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of instancetopologyChange definition. + + leaf lasttopologychangeRecievedfrom { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of lasttopologychangeRecievedfrom definition. + + leaf configFormat { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of configFormat definition. + + leaf configName { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of configName definition. + + leaf configRevision { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of configRevision definition. + + leaf configDigest { + mandatory true; + type cml_data_types:CML_INT32_T; + config false; + } // END of configDigest definition. + + leaf instanceMstiporttopologyChangetime { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of instanceMstiporttopologyChangetime definition. + + leaf instancePortNextState { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of instancePortNextState definition. + + leaf instanceTopologuChangeCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of instanceTopologuChangeCount definition. + + leaf mstiInstancedesignatedRoot { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of mstiInstancedesignatedRoot definition. + + + list mstp_interface { + + + description + "Group of mstp attribute having interface property"; + + config true; + key "ifName"; + + + leaf ifName { + mandatory true; + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf instportPriority { + mandatory false; + type cml_data_types:CML_INT16_T { + range "0..240"; + } + default "128"; + config true; + } // END of instportPriority definition. + + leaf mstppathCost { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..20000000"; + } + default "20000000"; + config true; + } // END of mstppathCost definition. + + leaf cistAdminedge { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistAdminedge definition. + + leaf cistOperedge { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistOperedge definition. + + leaf cistPortrole { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of cistPortrole definition. + + leaf portName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of portName definition. + + leaf portNumber { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of portNumber definition. + + leaf cistpathCost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistpathCost definition. + + leaf cistPriority { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of cistPriority definition. + + leaf cisthelloTime { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of cisthelloTime definition. + + leaf cistforwardDelay { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of cistforwardDelay definition. + + leaf portspanningTree { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of portspanningTree definition. + + leaf porttopChangeack { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of porttopChangeack definition. + + leaf configPending { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of configPending definition. + + leaf portconfbpduSent { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of portconfbpduSent definition. + + leaf portconfbpduRecieved { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of portconfbpduRecieved definition. + + leaf porttcnbpduSent { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of porttcnbpduSent definition. + + leaf porttcnbpduRecieved { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of porttcnbpduRecieved definition. + + leaf portForwardTransition { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of portForwardTransition definition. + + leaf helloTimerstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of helloTimerstate definition. + + leaf helloTimervalue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of helloTimervalue definition. + + leaf forwardTimerstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of forwardTimerstate definition. + + leaf forwardTimervalue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of forwardTimervalue definition. + + leaf messageTimerstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of messageTimerstate definition. + + leaf messageageTimervalue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of messageageTimervalue definition. + + leaf topologychangeTimerstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of topologychangeTimerstate definition. + + leaf topologychangeTimervalue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of topologychangeTimervalue definition. + + leaf holdTimerstate { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of holdTimerstate definition. + + leaf holdTimervalue { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of holdTimervalue definition. + + leaf messageageExpiry { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of messageageExpiry definition. + + leaf similarbpduCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of similarbpduCount definition. + + leaf sourcemacCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of sourcemacCount definition. + + leaf totalsourcemacRecieved { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of totalsourcemacRecieved definition. + + leaf portcistnextState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of portcistnextState definition. + + leaf porttopologyChangetime { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of porttopologyChangetime definition. + + leaf designatedrootPathcost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of designatedrootPathcost definition. + + leaf designatedInsPortid { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of designatedInsPortid definition. + + leaf mstiInstancedesignatedRoot { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of mstiInstancedesignatedRoot definition. + + leaf mstiInstanceBridgeId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of mstiInstanceBridgeId definition. + + leaf stpMultiCastAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of stpMultiCastAddr definition. + + leaf instanceBridgeMacAddress { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of instanceBridgeMacAddress definition. + + leaf instancetopologyChange { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of instancetopologyChange definition. + + leaf instanceTopologychangedetected { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of instanceTopologychangedetected definition. + + leaf instlastTopologychangerecievedfrom { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of instlastTopologychangerecievedfrom definition. + + leaf runtimevlanId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of runtimevlanId definition. + + leaf restrictedTCN { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of restrictedTCN definition. + + leaf restrictedRole { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of restrictedRole definition. + + } // End of mstp_interface-list + } // End of mstp-list + } // END of mstp-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/nsmLACP.yang b/yang-files/nsmLACP.yang new file mode 100644 index 00000000..a3f7792b --- /dev/null +++ b/yang-files/nsmLACP.yang @@ -0,0 +1,115 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : nsmLACP.yang +* +*/ + +submodule nsmLACP { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Layer-2 lacp configurations"; + + + revision "2015-10-20" { + description "Revisied on 2015-10-20."; } + + + + grouping nsmlacpInterface-grouping { + list nsmlacpInterface { + + + description + "NSM LACP interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + mandatory true; + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf channelGroup { + mandatory true; + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + config true; + } // END of channelGroup definition. + + leaf modeOperation { + mandatory true; + type cml_data_types:CML_LACP_MODE_T; + config true; + } // END of modeOperation definition. + + } // End of nsmlacpInterface-list + } // END of nsmlacpInterface-grouping definition. + + + grouping nsmportInterface-grouping { + list nsmportInterface { + + + description + "NSM LACP interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + mandatory true; + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf psc { + mandatory false; + type cml_data_types:CML_LACP_PSC_T; + default "src-dst-mac"; + config true; + } // END of psc definition. + + leaf static-channel-group { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "1..12"; + } + config true; + } // END of static-channel-group definition. + + } // End of nsmportInterface-list + } // END of nsmportInterface-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/oamBfd.yang b/yang-files/oamBfd.yang new file mode 100644 index 00000000..9fc85ff9 --- /dev/null +++ b/yang-files/oamBfd.yang @@ -0,0 +1,481 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : oamBfd.yang +* +*/ + +submodule oamBfd { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + revision "2015-10-08" { + description "Revisied on 2015-10-08."; } + + + + grouping bfd-grouping { + list bfd { + + + description + "bfd"; + + config true; + key "bfdProcessId"; + + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf bfdProcessId { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bfdProcessId definition. + + leaf bfdGtsmState { + mandatory false; + type cml_data_types:CML_BFD_GTSM_STATE_T; + config true; + } // END of bfdGtsmState definition. + + leaf bfdNotificationState { + mandatory false; + type cml_data_types:CML_BFD_SESSION_STATE_T; + config true; + } // END of bfdNotificationState definition. + + leaf bfdEchoState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bfdEchoState definition. + + leaf bfdGtsmTtl { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "255"; + config true; + } // END of bfdGtsmTtl definition. + + leaf bfdSlowTimer { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1000..30000"; + } + default "2000"; + config true; + } // END of bfdSlowTimer definition. + + leaf-list bfdMultihopIntervalIpv4Addr { + + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of bfdMultihopIntervalIpv4Addr definition. + + leaf bfdIpv4MultihopMinTx { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "50..999"; + } + default "250"; + config true; + } // END of bfdIpv4MultihopMinTx definition. + + leaf bfdIpv4MultihopMinRx { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "50..999"; + } + default "250"; + config true; + } // END of bfdIpv4MultihopMinRx definition. + + leaf bfdIpv4MultihopMulti { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "3..50"; + } + default "3"; + config true; + } // END of bfdIpv4MultihopMulti definition. + + leaf bfdMultihopIntervalIpv6Addr { + mandatory false; + type cml_data_types:CML_IPV6_ADDR_T; + config true; + } // END of bfdMultihopIntervalIpv6Addr definition. + + leaf bfdIpv6MultihopMinTx { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "50..999"; + } + default "250"; + config true; + } // END of bfdIpv6MultihopMinTx definition. + + leaf bfdIpv6MultihopMinRx { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "50..999"; + } + default "250"; + config true; + } // END of bfdIpv6MultihopMinRx definition. + + leaf bfdIpv6MultihopMulti { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "3..50"; + } + default "3"; + config true; + } // END of bfdIpv6MultihopMulti definition. + + + list bfdMultihopKeyChain { + + + description + "bfdMultihopKeyChain"; + + config true; + key "bfdMultihopAddr"; + + + leaf bfdMultihopAddr { + mandatory true; + type cml_data_types:CML_IP_ADDR_T; + config true; + } // END of bfdMultihopAddr definition. + + leaf bfdAuthType { + mandatory true; + type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; + config true; + } // END of bfdAuthType definition. + + leaf bfdKeyChain { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of bfdKeyChain definition. + + } // End of bfdMultihopKeyChain-list + + list bfdMultihopKeyStr { + + + description + "bfdMultihopKeyStr"; + + config true; + key "bfdMultihopAddr"; + + + leaf bfdMultihopAddr { + mandatory true; + type cml_data_types:CML_IP_ADDR_T; + config true; + } // END of bfdMultihopAddr definition. + + leaf bfdAuthType { + mandatory true; + type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; + config true; + } // END of bfdAuthType definition. + + leaf bfdMultihopKeyId { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "0..255"; + } + config true; + } // END of bfdMultihopKeyId definition. + + leaf bfdKeyStr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of bfdKeyStr definition. + + } // End of bfdMultihopKeyStr-list + } // End of bfd-list + } // END of bfd-grouping definition. + + + grouping bfdInterface-grouping { + list bfdInterface { + + + description + "OSPF interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + mandatory true; + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf bfdSessionState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bfdSessionState definition. + + leaf bfdIpv4State { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bfdIpv4State definition. + + leaf bfdMinTx { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "50..999"; + } + default "250"; + config true; + } // END of bfdMinTx definition. + + leaf bfdMinRx { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "50..999"; + } + default "250"; + config true; + } // END of bfdMinRx definition. + + leaf bfdIntervalMultiplier { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "3..50"; + } + default "3"; + config true; + } // END of bfdIntervalMultiplier definition. + + leaf bfdEchoInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..4294967"; + } + default "1000"; + config true; + } // END of bfdEchoInterval definition. + + + list bfdIpv4UserAdd { + + + description + "bfdIpv4UserAdd"; + + config true; + key "bfdUserSrcAddr"; + + + leaf bfdUserSrcAddr { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of bfdUserSrcAddr definition. + + leaf bfdUserDestAddr { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of bfdUserDestAddr definition. + + leaf multihop { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of multihop definition. + + leaf demandMode { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of demandMode definition. + + leaf nonPersistant { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of nonPersistant definition. + + leaf adminDown { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of adminDown definition. + + } // End of bfdIpv4UserAdd-list + + list bfdIpv6UserAdd { + + + description + "bfdIpv6UserAdd"; + + config true; + key "bfdIpv6UserSrcAddr"; + + + leaf bfdIpv6UserSrcAddr { + mandatory true; + type cml_data_types:CML_IPV6_ADDR_T; + config true; + } // END of bfdIpv6UserSrcAddr definition. + + leaf bfdIpv6UserDestAddr { + mandatory true; + type cml_data_types:CML_IPV6_ADDR_T; + config true; + } // END of bfdIpv6UserDestAddr definition. + + leaf ipv6Multihop { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ipv6Multihop definition. + + leaf ipv6DemandMode { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ipv6DemandMode definition. + + leaf ipv6NonPersistant { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ipv6NonPersistant definition. + + leaf ipv6AdminDown { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ipv6AdminDown definition. + + } // End of bfdIpv6UserAdd-list + + list bfdIfAuthKeyChain { + + + description + "bfdIfAuthKeyChain"; + + config true; + key "bfdIfAuthType"; + + + leaf bfdIfAuthType { + mandatory true; + type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; + config true; + } // END of bfdIfAuthType definition. + + leaf bfdIfKeyChain { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of bfdIfKeyChain definition. + + } // End of bfdIfAuthKeyChain-list + + list bfdIfAuthKeyStr { + + + description + "bfdIfAuthKeyStr"; + + config true; + key "bfdIfAuthType"; + + + leaf bfdIfAuthType { + mandatory true; + type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; + config true; + } // END of bfdIfAuthType definition. + + leaf bfdIfKeyId { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "0..255"; + } + config true; + } // END of bfdIfKeyId definition. + + leaf bfdIfKeyStr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of bfdIfKeyStr definition. + + } // End of bfdIfAuthKeyStr-list + } // End of bfdInterface-list + } // END of bfdInterface-grouping definition. + + grouping oamMpls-grouping { + container oamMpls { + + config true; + + description + "oamMpls"; + + leaf pingRequest { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of pingRequest definition. + + leaf pingReply { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of pingReply definition. + + } // END of oamMpls-container definition. + } // END of oamMpls-container definition. + + +} \ No newline at end of file diff --git a/yang-files/ospf.yang b/yang-files/ospf.yang new file mode 100644 index 00000000..f38066ed --- /dev/null +++ b/yang-files/ospf.yang @@ -0,0 +1,3697 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : ospf.yang +* +*/ + +submodule ospf { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Layer-3 ospf configurations"; + + + revision "2015-04-25" { + description "Revisied on 2015-04-25."; } + + + + grouping ospf-grouping { + list ospf { + + + description + "ospf"; + + config true; + key "ospfProcessId"; + + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf ospfProcessId { + mandatory true; + type cml_data_types:CML_INT32_T { + range "0..65535"; + } + config true; + } // END of ospfProcessId definition. + + leaf ospfShutDown { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospfShutDown definition. + + leaf domainType { + mandatory false; + type cml_data_types:CML_OSPF_DOMAIN_TYPE_T; + config true; + } // END of domainType definition. + + leaf nullDomainValue { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of nullDomainValue definition. + + leaf domainValue { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of domainValue definition. + + leaf isPrimaryDomainId { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isPrimaryDomainId definition. + + leaf passiveIfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of passiveIfName definition. + + leaf isPassiveInterface { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isPassiveInterface definition. + + leaf passiveIfIpAddr { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of passiveIfIpAddr definition. + + leaf isPassiveIfDefault { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isPassiveIfDefault definition. + + leaf areaBorderType { + mandatory false; + type cml_data_types:CML_OSPF_ABR_TYPE_T; + default "cisco"; + config true; + } // END of areaBorderType definition. + + leaf spfStartDelay { + mandatory false; + type cml_data_types:CML_UINT32_T; + config true; + } // END of spfStartDelay definition. + + leaf spfMinDelay { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + default "500"; + config true; + } // END of spfMinDelay definition. + + leaf spfMaxDelay { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + default "5000"; + config true; + } // END of spfMaxDelay definition. + + leaf throttleTimersStartDelay { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..600000"; + } + default "0"; + config true; + } // END of throttleTimersStartDelay definition. + + leaf holdInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..600000"; + } + default "5000"; + config true; + } // END of holdInterval definition. + + leaf throttleTimersMaxDelay { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..600000"; + } + default "5000"; + config true; + } // END of throttleTimersMaxDelay definition. + + leaf lsaMinArrival { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..600000"; + } + default "1"; + config true; + } // END of lsaMinArrival definition. + + leaf referenceBandwidth { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..4294967"; + } + default "100000"; + config true; + } // END of referenceBandwidth definition. + + leaf maxDBDescriptor { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "5000"; + config true; + } // END of maxDBDescriptor definition. + + leaf maxUnusePackets { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + default "200"; + config true; + } // END of maxUnusePackets definition. + + leaf maxLsaPacket { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + default "200"; + config true; + } // END of maxLsaPacket definition. + + leaf lsdbExternalLimit { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + default "100000"; + config true; + } // END of lsdbExternalLimit definition. + + leaf exitOverflowInterval { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..65535"; + } + default "0"; + config true; + } // END of exitOverflowInterval definition. + + leaf metricValue { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..16777214"; + } + default "2"; + config true; + } // END of metricValue definition. + + leaf adminDistance { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + default "110"; + config true; + } // END of adminDistance definition. + + leaf restartMethod { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of restartMethod definition. + + leaf restartMethodLls { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of restartMethodLls definition. + + leaf logAdjacencyDebugType { + mandatory false; + type cml_data_types:CML_STRING_T; + default "breif"; + config true; + } // END of logAdjacencyDebugType definition. + + leaf maxAreaLimit { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..4294967294"; + } + config true; + } // END of maxAreaLimit definition. + + leaf trapFlagBit { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of trapFlagBit definition. + + leaf bandwidthType { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of bandwidthType definition. + + leaf lsdbLimit { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967294"; + } + default "0"; + config true; + } // END of lsdbLimit definition. + + leaf actionType { + mandatory false; + type cml_data_types:CML_OSPF_ACTION_TYPE_T; + default "soft"; + config true; + } // END of actionType definition. + + leaf isLsdbLimit { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isLsdbLimit definition. + + leaf tieBreakField { + mandatory false; + type cml_data_types:CML_STRING_T; + default "random"; + config true; + } // END of tieBreakField definition. + + leaf cspfTieBreakField { + mandatory false; + type cml_data_types:CML_STRING_T; + default "random"; + config true; + } // END of cspfTieBreakField definition. + + leaf retryInterval { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "1..3600"; + } + default "1"; + config true; + } // END of retryInterval definition. + + leaf cspfRetryInterval { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "1..3600"; + } + default "1"; + config true; + } // END of cspfRetryInterval definition. + + leaf isCompitableRfc1583 { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isCompitableRfc1583 definition. + + leaf checkCompatibleRfc1583 { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of checkCompatibleRfc1583 definition. + + leaf isCSPF { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isCSPF definition. + + leaf isEnableCSPF { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isEnableCSPF definition. + + leaf isTE { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isTE definition. + + leaf isEnableTE { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isEnableTE definition. + + leaf isOpaqueLsa { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isOpaqueLsa definition. + + leaf checkOpaqueLsa { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of checkOpaqueLsa definition. + + leaf refreshTimer { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "10..1800"; + } + default "10"; + config true; + } // END of refreshTimer definition. + + leaf dbSummaryOpt { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of dbSummaryOpt definition. + + leaf capabilityVrfLite { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of capabilityVrfLite definition. + + leaf accessListName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of accessListName definition. + + leaf-list routeSourceDistType { + + type cml_data_types:CML_OSPF_DIST_ROUTE_SOURCE_TYPE_T; + config true; + } // END of routeSourceDistType definition. + + leaf-list secondaryOspfProcId { + + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + } // END of secondaryOspfProcId definition. + + leaf isDistributeListIn { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isDistributeListIn definition. + + leaf opaqueAsDesc { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of opaqueAsDesc definition. + + leaf opaqueAsIfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of opaqueAsIfName definition. + + leaf opaqueAsAdvRouter { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of opaqueAsAdvRouter definition. + + leaf opaqueAsType { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of opaqueAsType definition. + + leaf opaqueAsId { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of opaqueAsId definition. + + leaf opaqueAsLength { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of opaqueAsLength definition. + + leaf opaqueAreaDesc { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of opaqueAreaDesc definition. + + leaf opaqueAreaIfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of opaqueAreaIfName definition. + + leaf opaqueAreaAdvRouter { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of opaqueAreaAdvRouter definition. + + leaf opaqueAreaType { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of opaqueAreaType definition. + + leaf opaqueAreaId { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of opaqueAreaId definition. + + leaf opaqueAreaLength { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of opaqueAreaLength definition. + + leaf opaqueLinkDesc { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of opaqueLinkDesc definition. + + leaf opaqueLinkIfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of opaqueLinkIfName definition. + + leaf opaqueLinkAdvRouter { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of opaqueLinkAdvRouter definition. + + leaf opaqueLinkType { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of opaqueLinkType definition. + + leaf opaqueLinkId { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of opaqueLinkId definition. + + leaf opaqueLinkLength { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of opaqueLinkLength definition. + + leaf teUnResBWState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teUnResBWState definition. + + leaf teUnResBWPrio { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teUnResBWPrio definition. + + leaf teResourceColorState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teResourceColorState definition. + + leaf teResourceColorVal { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teResourceColorVal definition. + + leaf teRemoteId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teRemoteId definition. + + leaf teLocalId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teLocalId definition. + + leaf teLinkLocalRemoteIdState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLinkLocalRemoteIdState definition. + + leaf teLinkSwitchCapState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLinkSwitchCapState definition. + + leaf teSwitchCap { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teSwitchCap definition. + + leaf teEncodeType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teEncodeType definition. + + leaf teMaxLspBWPriCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teMaxLspBWPriCount definition. + + leaf teMaxLspBWPri { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teMaxLspBWPri definition. + + leaf teMinLspBW { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teMinLspBW definition. + + leaf teCapMtu { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teCapMtu definition. + + leaf teRiskGrpState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teRiskGrpState definition. + + leaf teProtectionState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teProtectionState definition. + + leaf teProtectionType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teProtectionType definition. + + leaf teRiskGrpVal { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of teRiskGrpVal definition. + + leaf vrfIfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vrfIfName definition. + + leaf vrfIvName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vrfIvName definition. + + leaf igpShortcutDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of igpShortcutDetail definition. + + leaf igpShortcutLspDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of igpShortcutLspDetail definition. + + leaf lspP2mpId { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lspP2mpId definition. + + leaf lspId { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lspId definition. + + leaf lspIngress { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspIngress definition. + + leaf lspEgress { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspEgress definition. + + leaf lspExTunnelId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspExTunnelId definition. + + leaf lspType { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspType definition. + + leaf lspClientId { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspClientId definition. + + leaf lspState { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspState definition. + + leaf lspSetupPri { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspSetupPri definition. + + leaf lspHoldPri { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspHoldPri definition. + + leaf lspBidirectionalStatus { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspBidirectionalStatus definition. + + leaf lspBandwidth { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspBandwidth definition. + + leaf lspBWStat { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspBWStat definition. + + leaf lspHopLimit { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspHopLimit definition. + + leaf lspAdmControl { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspAdmControl definition. + + leaf lspIncludeMask { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lspIncludeMask definition. + + leaf lspExcludeMask { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lspExcludeMask definition. + + leaf lspAttrRetry { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspAttrRetry definition. + + leaf lspRetryInt { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of lspRetryInt definition. + + leaf lspRetryLimit { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of lspRetryLimit definition. + + leaf lspTeMetric { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lspTeMetric definition. + + leaf lspPathStat { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspPathStat definition. + + leaf lspPathDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspPathDetail definition. + + leaf lspExcludePathStat { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspExcludePathStat definition. + + leaf lspExcludePathDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspExcludePathDetail definition. + + leaf lspSwitchCapStat { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspSwitchCapStat definition. + + leaf lspSwitchCapEncodeType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspSwitchCapEncodeType definition. + + leaf lspSwitchCap { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspSwitchCap definition. + + leaf lspProtectionRev { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspProtectionRev definition. + + leaf lspProtectionFwd { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspProtectionFwd definition. + + leaf lspAttrProtectionStat { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspAttrProtectionStat definition. + + leaf lspRouteStat { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspRouteStat definition. + + leaf lspRouteDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspRouteDetail definition. + + leaf lspSrlgDetail { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lspSrlgDetail definition. + + leaf lspSrlgStat { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspSrlgStat definition. + + leaf multiAreaIfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiAreaIfName definition. + + leaf multiAreaNbrAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiAreaNbrAddr definition. + + leaf isMultiIpv4Num { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isMultiIpv4Num definition. + + leaf multiIdentAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiIdentAddr definition. + + leaf multiAreaDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiAreaDetail definition. + + leaf multiMtuVal { + mandatory false; + type cml_data_types:CML_INT8_T; + config false; + } // END of multiMtuVal definition. + + leaf multiNetworkMsg { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiNetworkMsg definition. + + leaf multiOutputCost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of multiOutputCost definition. + + leaf transmitInt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of transmitInt definition. + + leaf multiTransmitState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiTransmitState definition. + + leaf multiTeMetric { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of multiTeMetric definition. + + leaf dbFilterGetState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of dbFilterGetState definition. + + leaf multiHelloInt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiHelloInt definition. + + leaf multiDeadInt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiDeadInt definition. + + leaf multiRetransmitInt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiRetransmitInt definition. + + leaf restartMethodTypeState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of restartMethodTypeState definition. + + leaf restartOOBResyncTimeout { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of restartOOBResyncTimeout definition. + + leaf multiIfTypeLoopbackState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of multiIfTypeLoopbackState definition. + + leaf ifPassiveState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of ifPassiveState definition. + + leaf multiHelloTimeDueIn { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiHelloTimeDueIn definition. + + leaf multiNbrCountAll { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiNbrCountAll definition. + + leaf multiAdjacentNbrCountAll { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiAdjacentNbrCountAll definition. + + leaf multiCrypto { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of multiCrypto definition. + + leaf multiHelloPacketDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiHelloPacketDetail definition. + + leaf multiLSReqDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiLSReqDetail definition. + + leaf multiLSAckDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiLSAckDetail definition. + + leaf teDBRTAddrLsaAge { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teDBRTAddrLsaAge definition. + + leaf teDBLinkLsaAge { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teDBLinkLsaAge definition. + + leaf teOpaqueType { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teOpaqueType definition. + + leaf teLsaHeaderTypeMsg { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teLsaHeaderTypeMsg definition. + + leaf teLsaHeaderType { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of teLsaHeaderType definition. + + leaf teLsaOptions { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of teLsaOptions definition. + + leaf teInstance { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teInstance definition. + + leaf teAdvrRouter { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teAdvrRouter definition. + + leaf teLSSeqNum { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teLSSeqNum definition. + + leaf teLSChecksum { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of teLSChecksum definition. + + leaf teLength { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of teLength definition. + + leaf teRouterState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teRouterState definition. + + leaf teRouterAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teRouterAddr definition. + + leaf teLinkTypeState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLinkTypeState definition. + + leaf teLinkType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teLinkType definition. + + leaf teLinkIdState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLinkIdState definition. + + leaf teLinkId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teLinkId definition. + + leaf teLocalInterfaceState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLocalInterfaceState definition. + + leaf teLocalInterfaceAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teLocalInterfaceAddr definition. + + leaf teRemoteInterfaceState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teRemoteInterfaceState definition. + + leaf teRemoteInterfaceAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teRemoteInterfaceAddr definition. + + leaf teLinkMetricState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLinkMetricState definition. + + leaf teLinkMetric { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of teLinkMetric definition. + + leaf teMaxResBWState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teMaxResBWState definition. + + leaf teMaxResBW { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teMaxResBW definition. + + leaf teMaxBWState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teMaxBWState definition. + + leaf teMaxBW { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teMaxBW definition. + + leaf teLinkAttrBc { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLinkAttrBc definition. + + leaf teBWConsModel { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of teBWConsModel definition. + + leaf teBWCons { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teBWCons definition. + + leaf teBWCtr { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teBWCtr definition. + + leaf ibufSize { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ibufSize definition. + + leaf lsaunuseCount { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of lsaunuseCount definition. + + leaf lsaunuseMax { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of lsaunuseMax definition. + + leaf opunuseMax { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of opunuseMax definition. + + leaf opunuseCount { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of opunuseCount definition. + + leaf obufSize { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of obufSize definition. + + leaf lbufSize { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lbufSize definition. + + leaf abrDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of abrDetail definition. + + leaf asbrDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of asbrDetail definition. + + leaf isOspfPathTypeTwo { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isOspfPathTypeTwo definition. + + leaf isOspfPathDiscard { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isOspfPathDiscard definition. + + leaf isOspfNextHopCon { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isOspfNextHopCon definition. + + leaf isOspfPathCodeArea { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isOspfPathCodeArea definition. + + leaf ospfPathAreaDetails { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ospfPathAreaDetails definition. + + leaf ospfPathIfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ospfPathIfName definition. + + leaf ospfPathNbrId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ospfPathNbrId definition. + + leaf ospfPathCodeStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ospfPathCodeStr definition. + + leaf ospfPathCodeNStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ospfPathCodeNStr definition. + + leaf ospfPathCodePrefix { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ospfPathCodePrefix definition. + + leaf ospfPathCodeCostPrefix { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ospfPathCodeCostPrefix definition. + + leaf areaCount { + mandatory false; + type cml_data_types:CML_INT8_T; + config false; + } // END of areaCount definition. + + leaf vrfNameStat { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vrfNameStat definition. + + leaf lttMaxDelayMic { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lttMaxDelayMic definition. + + leaf lttHoldIntMic { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lttHoldIntMic definition. + + leaf lttStartDelayMic { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lttStartDelayMic definition. + + leaf lttArivalDelayMic { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lttArivalDelayMic definition. + + leaf abrType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of abrType definition. + + leaf isAbrType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isAbrType definition. + + leaf lttArivalDelay { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lttArivalDelay definition. + + leaf lttMaxDelay { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lttMaxDelay definition. + + leaf lttHoldInt { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lttHoldInt definition. + + leaf lttStartDelay { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lttStartDelay definition. + + leaf maxSpfDelay { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of maxSpfDelay definition. + + leaf minSpfDelay { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of minSpfDelay definition. + + leaf processUpTime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of processUpTime definition. + + leaf restartMethodType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of restartMethodType definition. + + leaf dbOverFlow { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of dbOverFlow definition. + + leaf tOverFlowExit { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of tOverFlowExit definition. + + leaf ddReceived { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of ddReceived definition. + + leaf outDdSent { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of outDdSent definition. + + leaf externalLsaCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of externalLsaCount definition. + + leaf externalLsaChecksum { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of externalLsaChecksum definition. + + leaf nonDefaultExternalLsa { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of nonDefaultExternalLsa definition. + + leaf isLsdbLimitR { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isLsdbLimitR definition. + + leaf isLsdbExtLimit { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isLsdbExtLimit definition. + + leaf isVrfEnabled { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isVrfEnabled definition. + + leaf asbrType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of asbrType definition. + + leaf lsdbExtLimit { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lsdbExtLimit definition. + + leaf restartType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of restartType definition. + + leaf lsdbLimitR { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lsdbLimitR definition. + + leaf lsaOriginateCount { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lsaOriginateCount definition. + + leaf refreshInterval { + mandatory false; + type cml_data_types:CML_INT16_T; + config false; + } // END of refreshInterval definition. + + leaf rxLsaCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of rxLsaCount definition. + + leaf distanceAccessListName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of distanceAccessListName definition. + + leaf sourceIpAddr { + mandatory false; + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of sourceIpAddr definition. + + leaf isAllDistance { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + } // END of isAllDistance definition. + + leaf routerId { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of routerId definition. + + leaf ospfRouterId { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of ospfRouterId definition. + + leaf isLogAdjSet { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isLogAdjSet definition. + + leaf isFrrSet { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isFrrSet definition. + + leaf isDna { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isDna definition. + + leaf cspfProctectionType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of cspfProctectionType definition. + + leaf isBfdIfSet { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isBfdIfSet definition. + + leaf mlinkNbr { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of mlinkNbr definition. + + + list ospfVrf { + + + description + "ospfVrf"; + + config true; + key "vrfName"; + + + leaf vrfName { + mandatory true; + type leafref { + path "/vr/vrf/vrfName"; + } + } // END of vrfName definition. + + } // End of ospfVrf-list + + list ospfDefaultInformation { + + + description + "ospfDefaultInformation"; + + config true; + key "defaultOrigin"; + + + leaf defaultOrigin { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of defaultOrigin definition. + + leaf defaultAlways { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of defaultAlways definition. + + leaf defaultMetric { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..16777214"; + } + default "0"; + config true; + } // END of defaultMetric definition. + + leaf defaultMetricType { + mandatory false; + type cml_data_types:CML_OSPF_METRIC_TYPE_T; + default "2"; + config true; + } // END of defaultMetricType definition. + + leaf redistRouteMapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of redistRouteMapName definition. + + } // End of ospfDefaultInformation-list + + list frrTieBreak { + + + description + "frrTieBreak"; + + config true; + key "frrTieBreakVal"; + + + leaf frrTieBreakVal { + mandatory true; + type cml_data_types:CML_OSPF_FRR_TIE_BREAK_VAL_T; + config true; + } // END of frrTieBreakVal definition. + + leaf frrTieBreakIndex { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..10"; + } + config true; + } // END of frrTieBreakIndex definition. + + leaf isFrrPrioSet { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isFrrPrioSet definition. + + } // End of frrTieBreak-list + + list summaryAddress { + + + description + "summaryAddress"; + + config true; + key "summaryAddr"; + + + leaf summaryAddr { + mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of summaryAddr definition. + + leaf summaryAddrMask { + mandatory true; + type cml_data_types:CML_INT32_T; + config true; + } // END of summaryAddrMask definition. + + leaf summaryAddressNotAdvertise { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of summaryAddressNotAdvertise definition. + + leaf addressTag { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + } // END of addressTag definition. + + } // End of summaryAddress-list + + list hostAddr { + + + description + "hostAddr"; + + config true; + key "hostIpAddr"; + + + leaf hostIpAddr { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of hostIpAddr definition. + + + list hostArea { + + + description + "hostArea"; + + config true; + key "hostAreaId"; + + + leaf hostAreaId { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of hostAreaId definition. + + leaf hostEntryCost { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..65535"; + } + config true; + } // END of hostEntryCost definition. + + } // End of hostArea-list + } // End of hostAddr-list + + list area { + + + description + "area"; + + config true; + key "areaId"; + + + leaf areaId { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of areaId definition. + + leaf areaAuthType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of areaAuthType definition. + + leaf areaAuthMsgType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of areaAuthMsgType definition. + + leaf exportListName { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of exportListName definition. + + leaf importListName { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of importListName definition. + + leaf areaCost { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..16777215"; + } + default "1"; + config true; + } // END of areaCost definition. + + leaf areaShortcutType { + mandatory false; + type cml_data_types:CML_OSPF_AREA_SHORTCUT_TYPE_T; + default "default"; + config true; + } // END of areaShortcutType definition. + + leaf addrAggrType { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of addrAggrType definition. + + leaf mask { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of mask definition. + + leaf areaAggrStatus { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of areaAggrStatus definition. + + leaf areaAggrEffect { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of areaAggrEffect definition. + + leaf routeTag { + mandatory false; + type cml_data_types:CML_UINT32_T; + config true; + } // END of routeTag definition. + + leaf isAreaBackbone { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isAreaBackbone definition. + + leaf isAreaActive { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isAreaActive definition. + + leaf areaIdStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of areaIdStr definition. + + leaf areaIfCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of areaIfCount definition. + + leaf activeIfCount { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of activeIfCount definition. + + leaf fullVirtNbrCount { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of fullVirtNbrCount definition. + + leaf checkSumLsa { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of checkSumLsa definition. + + leaf countLsa { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of countLsa definition. + + leaf spfLastExec { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of spfLastExec definition. + + leaf nssaTransState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of nssaTransState definition. + + leaf nssaTransEventCount { + mandatory false; + type cml_data_types:CML_INT8_T; + config false; + } // END of nssaTransEventCount definition. + + leaf fullAdjacentNbr { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of fullAdjacentNbr definition. + + leaf spfExecutionCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of spfExecutionCount definition. + + + list filterPrefixList { + + + description + "filterPrefixList"; + + config true; + key "prefixName"; + + + leaf prefixName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of prefixName definition. + + + list filterPrefixType { + + + description + "filterPrefixType"; + + config true; + key "prefixType"; + + + leaf prefixType { + mandatory true; + type cml_data_types:CML_OSPF_AREA_FILTER_LIST_PREFIX_T; + config true; + } // END of prefixType definition. + + } // End of filterPrefixType-list + } // End of filterPrefixList-list + + list filterAccessList { + + + description + "filterAccessList"; + + config true; + key "accessName"; + + + leaf accessName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of accessName definition. + + + list filterAccessType { + + + description + "filterAccessType"; + + config true; + key "accessType"; + + + leaf accessType { + mandatory true; + type cml_data_types:CML_OSPF_AREA_FILTER_LIST_PREFIX_T; + config true; + } // END of accessType definition. + + } // End of filterAccessType-list + } // End of filterAccessList-list + + list rangeArea { + + + description + "rangeArea"; + + config true; + key "ospfAreaRange"; + + + leaf ospfAreaRange { + mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of ospfAreaRange definition. + + leaf isAreaRangeAdvertise { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isAreaRangeAdvertise definition. + + leaf isAreaRangeNotAdvertise { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isAreaRangeNotAdvertise definition. + + leaf substituteAddr { + mandatory false; + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of substituteAddr definition. + + } // End of rangeArea-list + + list rangeMaskArea { + + + description + "rangeMaskArea"; + + config true; + key "areaRange"; + + + leaf areaRange { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of areaRange definition. + + + list rangeMaskLenArea { + + + description + "rangeMaskLenArea"; + + config true; + key "areaRangeMask"; + + + leaf areaRangeMask { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of areaRangeMask definition. + + leaf rangeMaskAdvertise { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of rangeMaskAdvertise definition. + + leaf rangeMaskNotAdvertise { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of rangeMaskNotAdvertise definition. + + } // End of rangeMaskLenArea-list + } // End of rangeMaskArea-list + + list nssaArea { + + + description + "nssaArea"; + + config true; + key "isNssaArea"; + + + leaf isNssaArea { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isNssaArea definition. + + leaf nssaStabilityInterval { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..2147483647"; + } + default "40"; + config true; + } // END of nssaStabilityInterval definition. + + leaf nssaTranslatorRole { + mandatory false; + type cml_data_types:CML_OSPF_TRANSLATOR_ROLE_T; + config true; + } // END of nssaTranslatorRole definition. + + leaf nssaDefaultOriginMetric { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..16777214"; + } + default "1"; + config true; + } // END of nssaDefaultOriginMetric definition. + + leaf nssaDefaultOriginMetricType { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..2"; + } + config true; + } // END of nssaDefaultOriginMetricType definition. + + leaf isNssaNoDist { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isNssaNoDist definition. + + leaf isNssaDefaultOriginate { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isNssaDefaultOriginate definition. + + leaf nssaAreaNoSummary { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of nssaAreaNoSummary definition. + + leaf nssaRouteMapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of nssaRouteMapName definition. + + container nssaAreaTranslator { + + config true; + + description + "nssaAreaTranslator"; + + leaf nssaAreaTranslatorRole { + mandatory false; + type cml_data_types:CML_OSPF_NSSA_TRANSLATOR_ROLE_T; + config true; + } // END of nssaAreaTranslatorRole definition. + + } // END of nssaAreaTranslator-container definition. + } // End of nssaArea-list + + list stubArea { + + + description + "stubArea"; + + config true; + key "isStubArea"; + + + leaf isStubArea { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isStubArea definition. + + leaf stubAreaNoSummary { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of stubAreaNoSummary definition. + + } // End of stubArea-list + + list vlinkArea { + + + description + "vlinkArea"; + + config true; + key "peerId"; + + + leaf peerId { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of peerId definition. + + leaf virtMsgDigestKeyId { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "0..255"; + } + config true; + } // END of virtMsgDigestKeyId definition. + + leaf virtMsgDigestKeyStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of virtMsgDigestKeyStr definition. + + leaf ifVirtAuthKey { + mandatory false; + type cml_data_types:CML_OSPF_VIRT_AUTH_KEY_T; + config true; + } // END of ifVirtAuthKey definition. + + leaf virtIfRetransIntvl { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..3600"; + } + default "5"; + config true; + } // END of virtIfRetransIntvl definition. + + leaf ifVirtTransmitDelay { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..3600"; + } + default "1"; + config true; + } // END of ifVirtTransmitDelay definition. + + leaf ifVirtHelloInterval { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + default "10"; + config true; + } // END of ifVirtHelloInterval definition. + + leaf ifVirtDeadInterval { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + default "40"; + config true; + } // END of ifVirtDeadInterval definition. + + leaf ifVirtAuthType { + mandatory false; + type cml_data_types:CML_OSPF_VIRT_AUTH_TYPE_T; + config true; + } // END of ifVirtAuthType definition. + + leaf vlinkName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkName definition. + + leaf vlinkStat { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkStat definition. + + leaf vlinkInterface { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkInterface definition. + + leaf vlinkIdentAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkIdentAddr definition. + + leaf vlinkRemoteAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkRemoteAddr definition. + + leaf vlinkTransDelayState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkTransDelayState definition. + + leaf vlinkHelloTimeDump { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkHelloTimeDump definition. + + leaf vlinkNbrState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkNbrState definition. + + leaf isVlinkBfdSet { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isVlinkBfdSet definition. + + } // End of vlinkArea-list + } // End of area-list + + list network { + + + description + "network"; + + config true; + key "ospfNetAddr"; + + + leaf ospfNetAddr { + mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of ospfNetAddr definition. + + + list networkArea { + + + description + "networkArea"; + + config true; + key "networkAreaId"; + + + leaf networkAreaId { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of networkAreaId definition. + + leaf ospfInterfaceInstanceId { + mandatory true; + type cml_data_types:CML_INT16_T { + range "0..255"; + } + config true; + } // END of ospfInterfaceInstanceId definition. + + } // End of networkArea-list + } // End of network-list + + list networkMask { + + + description + "networkMask"; + + config true; + key "ospfNetAddrMask"; + + + leaf ospfNetAddrMask { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of ospfNetAddrMask definition. + + leaf netMask { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of netMask definition. + + leaf networkAreaIdMask { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of networkAreaIdMask definition. + + leaf ospfInterfaceInstanceIdMask { + mandatory true; + type cml_data_types:CML_INT16_T { + range "0..255"; + } + config true; + } // END of ospfInterfaceInstanceIdMask definition. + + } // End of networkMask-list + + list neighborRun { + + + description + "neighborRun"; + + config false; + key "neighborViaInterfaceName"; + + + leaf neighborViaInterfaceName { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborViaInterfaceName definition. + + leaf neighborDownState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of neighborDownState definition. + + leaf neighborPri { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of neighborPri definition. + + leaf neighborInstanceId { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of neighborInstanceId definition. + + leaf neighborState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborState definition. + + leaf neighborInterfaceAddress { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborInterfaceAddress definition. + + leaf neighborViaInterfaceNamePvt { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborViaInterfaceNamePvt definition. + + leaf neighborId { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config false; + } // END of neighborId definition. + + leaf neighborInterfaceInputAddress { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config false; + } // END of neighborInterfaceInputAddress definition. + + leaf neighborDeadTimeDueIn { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborDeadTimeDueIn definition. + + leaf neighborRetransmitCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of neighborRetransmitCount definition. + + leaf neighborRequestCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of neighborRequestCount definition. + + leaf neighborDbSummaryCount { + mandatory false; + type cml_data_types:CML_INT8_T; + config false; + } // END of neighborDbSummaryCount definition. + + leaf neighborArea { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborArea definition. + + leaf neighborChangeState { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of neighborChangeState definition. + + leaf neighborDRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborDRouterId definition. + + leaf neighborBDRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborBDRouterId definition. + + leaf neighborOptions { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of neighborOptions definition. + + leaf neighborOptionDump { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborOptionDump definition. + + leaf neighborExtendedOptions { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of neighborExtendedOptions definition. + + leaf neighborExtendedOptionDump { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborExtendedOptionDump definition. + + leaf restartState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of restartState definition. + + leaf neighborUptime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborUptime definition. + + leaf neighborOOBResyncState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of neighborOOBResyncState definition. + + leaf neighborLastOOBState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of neighborLastOOBState definition. + + leaf neighborTResyncState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of neighborTResyncState definition. + + leaf neighborTResync { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborTResync definition. + + leaf neighborOOBUptime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborOOBUptime definition. + + leaf neighborPollDueIn { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborPollDueIn definition. + + leaf cryptSeqNum { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of cryptSeqNum definition. + + leaf neighborThreadInactivityTimer { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborThreadInactivityTimer definition. + + leaf neighborThreadDBDescriptionRetransmition { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborThreadDBDescriptionRetransmition definition. + + leaf neighborLsRequestRetransmition { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborLsRequestRetransmition definition. + + leaf neighborLsUpdateRetransmition { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborLsUpdateRetransmition definition. + + leaf neighborThreadPolltimer { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborThreadPolltimer definition. + + } // End of neighborRun-list + + list neighbor { + + + description + "neighbor"; + + config true; + key "neighborIpAddr"; + + + leaf neighborIpAddr { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of neighborIpAddr definition. + + leaf neighborStaticPriority { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "0..255"; + } + default "0"; + config true; + } // END of neighborStaticPriority definition. + + leaf nbrPollInterval { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..2147483647"; + } + default "120"; + config true; + } // END of nbrPollInterval definition. + + leaf neighborCost { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "10"; + config true; + } // END of neighborCost definition. + + } // End of neighbor-list + + list redistributeProc { + + + description + "redistributeProc"; + + config true; + key "secondaryOspfProcessId"; + + + leaf secondaryOspfProcessId { + mandatory true; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + } // END of secondaryOspfProcessId definition. + + leaf redistMetricType { + mandatory false; + type cml_data_types:CML_OSPF_METRIC_TYPE_T; + default "2"; + config true; + } // END of redistMetricType definition. + + leaf redistMetricValue { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..16777214"; + } + default "0"; + config true; + } // END of redistMetricValue definition. + + leaf redistTag { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + config true; + } // END of redistTag definition. + + leaf routeMapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of routeMapName definition. + + } // End of redistributeProc-list + + list redistribute { + + + description + "redistribute"; + + config true; + key "routeSourceType"; + + + leaf routeSourceType { + mandatory true; + type cml_data_types:CML_OSPF_ROUTE_SOURCE_TYPE_T; + config true; + } // END of routeSourceType definition. + + leaf redistMetricType { + mandatory false; + type cml_data_types:CML_OSPF_METRIC_TYPE_T; + config true; + } // END of redistMetricType definition. + + leaf redistMetricValue { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..16777214"; + } + config true; + } // END of redistMetricValue definition. + + leaf redistTag { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + } // END of redistTag definition. + + leaf routeMapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of routeMapName definition. + + } // End of redistribute-list + container distanceTypes { + + config true; + + description + "distanceTypes"; + + leaf intraAreaDistance { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + default "110"; + config true; + } // END of intraAreaDistance definition. + + leaf interAreaDistance { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + default "110"; + config true; + } // END of interAreaDistance definition. + + leaf externalDistance { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + default "110"; + config true; + } // END of externalDistance definition. + + } // END of distanceTypes-container definition. + } // End of ospf-list + } // END of ospf-grouping definition. + + + grouping ospfInterface-grouping { + list ospfInterface { + + + description + "OSPF interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + mandatory true; + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf ifNetworkType { + mandatory false; + type cml_data_types:CML_OSPF_NETWORK_T; + default "point-to-point"; + config true; + } // END of ifNetworkType definition. + + leaf isNetworkP2mp { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isNetworkP2mp definition. + + leaf ifAuthType { + mandatory false; + type cml_data_types:CML_OSPF_AUTH_TYPE_T; + default "simple"; + config true; + } // END of ifAuthType definition. + + leaf ipOspfAddr { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of ipOspfAddr definition. + + leaf ifPriority { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "0..255"; + } + default "1"; + config true; + } // END of ifPriority definition. + + leaf ifMtu { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "576..65535"; + } + default "576"; + config true; + } // END of ifMtu definition. + + leaf ifCost { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "10"; + config true; + } // END of ifCost definition. + + leaf fastRerouteIfSet { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of fastRerouteIfSet definition. + + leaf holdDownTimer { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..2147483"; + } + default "70000"; + config true; + } // END of holdDownTimer definition. + + leaf isMtuIgnore { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isMtuIgnore definition. + + leaf ifTransmitDelay { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..3600"; + } + default "1"; + config true; + } // END of ifTransmitDelay definition. + + leaf ifDisableAll { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifDisableAll definition. + + leaf ifRetransmitInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "5"; + config true; + } // END of ifRetransmitInterval definition. + + leaf ifHelloInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "10"; + config true; + } // END of ifHelloInterval definition. + + leaf ifDeadInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "40"; + config true; + } // END of ifDeadInterval definition. + + leaf ifAuthKeyEncryption { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifAuthKeyEncryption definition. + + leaf ifAuthKey { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of ifAuthKey definition. + + leaf ifDatabaseFilter { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifDatabaseFilter definition. + + leaf msgDigestKeyId { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..255"; + } + config true; + } // END of msgDigestKeyId definition. + + leaf msgDigestKeyEncryption { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of msgDigestKeyEncryption definition. + + leaf msgifAuthKey { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of msgifAuthKey definition. + + leaf ifTEMetric { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + config true; + } // END of ifTEMetric definition. + + leaf ifResyncTimeout { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "40"; + config true; + } // END of ifResyncTimeout definition. + + leaf ifOpsfProcId { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..65535"; + } + config true; + } // END of ifOpsfProcId definition. + + leaf ifOspfAreaId { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of ifOspfAreaId definition. + + leaf ifBfdSet { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifBfdSet definition. + + leaf ifBfdDisable { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifBfdDisable definition. + + leaf isIfRunning { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isIfRunning definition. + + leaf inputIfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of inputIfName definition. + + leaf intName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of intName definition. + + leaf ifIdentAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifIdentAddr definition. + + leaf ifpCost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifpCost definition. + + leaf isIpv4Unnumbered { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isIpv4Unnumbered definition. + + leaf isIfPriStatus { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isIfPriStatus definition. + + leaf isMultiIf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isMultiIf definition. + + leaf isMultiIfPriStatus { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isMultiIfPriStatus definition. + + leaf ifAreaDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifAreaDetail definition. + + leaf ifProcId { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of ifProcId definition. + + leaf ifRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifRouterId definition. + + leaf ifIntNetworkType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifIntNetworkType definition. + + leaf ifTransDelayGet { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifTransDelayGet definition. + + leaf ifTransDelayState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifTransDelayState definition. + + leaf multiIfTeMetric { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiIfTeMetric definition. + + leaf ifIdentPriority { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ifIdentPriority definition. + + leaf isLdpIgpSync { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isLdpIgpSync definition. + + leaf isLdpIgpHoldDown { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isLdpIgpHoldDown definition. + + leaf LdpIgpHoldDownVal { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of LdpIgpHoldDownVal definition. + + leaf isInterfaceType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isInterfaceType definition. + + leaf interfaceDRDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of interfaceDRDetail definition. + + leaf ifDbFilterGetState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifDbFilterGetState definition. + + leaf ifHelloInt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ifHelloInt definition. + + leaf ifDeadInt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ifDeadInt definition. + + leaf ifRetransmitInt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ifRetransmitInt definition. + + leaf ifRestartMethodTypeState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of ifRestartMethodTypeState definition. + + leaf ifRestartOOBResyncTimeout { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifRestartOOBResyncTimeout definition. + + leaf ifTypeLoopbackState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of ifTypeLoopbackState definition. + + leaf ifIntPassiveState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of ifIntPassiveState definition. + + leaf ifHelloTimeDueIn { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifHelloTimeDueIn definition. + + leaf ifNbrCountAll { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ifNbrCountAll definition. + + leaf ifAdjacentNbrCountAll { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ifAdjacentNbrCountAll definition. + + leaf ifCrypto { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifCrypto definition. + + leaf ifHelloPacketDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifHelloPacketDetail definition. + + leaf ifLSReqDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifLSReqDetail definition. + + leaf ifLSAckDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifLSAckDetail definition. + + leaf intIfMtu { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of intIfMtu definition. + + leaf multiIfIdentAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiIfIdentAddr definition. + + leaf multiIfpCost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of multiIfpCost definition. + + leaf multiIsIpv4Unnumbered { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of multiIsIpv4Unnumbered definition. + + leaf multiIfAreaDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiIfAreaDetail definition. + + leaf multiIfProcId { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of multiIfProcId definition. + + leaf multiIfRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiIfRouterId definition. + + leaf multiIfNetworkType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiIfNetworkType definition. + + leaf multiIfTransDelayGet { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of multiIfTransDelayGet definition. + + leaf multiIfTransDelayState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiIfTransDelayState definition. + + leaf multiIfIdentPriority { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiIfIdentPriority definition. + + leaf isIfSyncParams { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isIfSyncParams definition. + + leaf multiIsLdpIgpSync { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of multiIsLdpIgpSync definition. + + leaf multiIsLdpIgpHoldDown { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of multiIsLdpIgpHoldDown definition. + + leaf multiLdpIgpHoldDownVal { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiLdpIgpHoldDownVal definition. + + leaf multiIsInterfaceType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of multiIsInterfaceType definition. + + leaf multiinterfaceDRDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiinterfaceDRDetail definition. + + leaf multiIfDbFilterGetState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiIfDbFilterGetState definition. + + leaf multiIfHelloInt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiIfHelloInt definition. + + leaf multiIfDeadInt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiIfDeadInt definition. + + leaf multiIfRetransmitInt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiIfRetransmitInt definition. + + leaf multiIfRestartMethodTypeState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of multiIfRestartMethodTypeState definition. + + leaf multiIfRestartOOBResyncTimeout { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of multiIfRestartOOBResyncTimeout definition. + + leaf multiIsIfTypeLoopbackState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of multiIsIfTypeLoopbackState definition. + + leaf multiIfIntPassiveState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of multiIfIntPassiveState definition. + + leaf multiIfHelloTimeDueIn { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiIfHelloTimeDueIn definition. + + leaf multiIfNbrCountAll { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiIfNbrCountAll definition. + + leaf multiIfAdjacentNbrCountAll { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiIfAdjacentNbrCountAll definition. + + leaf multiIfCrypto { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of multiIfCrypto definition. + + leaf multiIfHelloPacketDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiIfHelloPacketDetail definition. + + leaf multiIfLSReqDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiIfLSReqDetail definition. + + leaf multiIfLSAckDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of multiIfLSAckDetail definition. + + leaf multiIfMtu { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiIfMtu definition. + + leaf ifDna { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifDna definition. + + } // End of ospfInterface-list + } // END of ospfInterface-grouping definition. + + + grouping ospfGlobal-grouping { + list ospfGlobal { + + + description + "ospfGlobal"; + + config true; + key "vrId"; + + + leaf vrId { + mandatory true; + type cml_data_types:CML_UINT32_T; + config true; + } // END of vrId definition. + + leaf isEnableExtMultiInst { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isEnableExtMultiInst definition. + + leaf debug { + mandatory false; + type cml_data_types:CML_OSPF_DEBUG_T; + config true; + } // END of debug definition. + + leaf packetType { + mandatory false; + type cml_data_types:CML_OSPF_DEBUG_PACKET_TYPE_T; + config true; + } // END of packetType definition. + + leaf debugMode { + mandatory false; + type cml_data_types:CML_OSPF_DEBUG_PACKET_MODE_T; + config true; + } // END of debugMode definition. + + leaf debugDetail { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of debugDetail definition. + + leaf restartSeconds { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..1800"; + } + default "120"; + config true; + } // END of restartSeconds definition. + + leaf hitlessRestartSeconds { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..1800"; + } + default "120"; + config true; + } // END of hitlessRestartSeconds definition. + + leaf isDebug { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isDebug definition. + + leaf isDebugPacket { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isDebugPacket definition. + + leaf isCspfeventDebug { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isCspfeventDebug definition. + + leaf isCspfhexdumpDebug { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isCspfhexdumpDebug definition. + + leaf gracefulRestartPlanned { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of gracefulRestartPlanned definition. + + container restartConfig { + + config true; + + description + "restartConfig"; + + leaf never { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of never definition. + + leaf nbrRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of nbrRouterId definition. + + leaf restartAll { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of restartAll definition. + + } // END of restartConfig-container definition. + container restartAllConfig { + + config true; + + description + "restartAllConfig"; + + leaf onlyReload { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of onlyReload definition. + + leaf onlyUpgrade { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of onlyUpgrade definition. + + leaf restartHelperPeriod { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..1800"; + } + default "120"; + config true; + } // END of restartHelperPeriod definition. + + } // END of restartAllConfig-container definition. + } // End of ospfGlobal-list + } // END of ospfGlobal-grouping definition. + + + grouping teLinkOspf-grouping { + list teLinkOspf { + + + description + "teLinkOspf"; + + config true; + key "teLinkName"; + + + leaf teLinkName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of teLinkName definition. + + leaf linkLocalEnable { + mandatory false; + type cml_data_types:CML_OSPF_TELINK_LOCAL_T; + config true; + } // END of linkLocalEnable definition. + + leaf teFloodOspfId { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..65535"; + } + default "0"; + config true; + } // END of teFloodOspfId definition. + + leaf teFloodareaId { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of teFloodareaId definition. + + } // End of teLinkOspf-list + } // END of teLinkOspf-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/ospf6.yang b/yang-files/ospf6.yang new file mode 100644 index 00000000..38e16f91 --- /dev/null +++ b/yang-files/ospf6.yang @@ -0,0 +1,2312 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : ospf6.yang +* +*/ + +submodule ospf6 { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Layer-3 ospf configurations"; + + + revision "2015-04-25" { + description "Revisied on 2015-04-25."; } + + + + grouping ospf6-grouping { + list ospf6 { + + + description + "ospf6"; + + config true; + key "ospf6ProcessTag"; + + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf ospf6ProcessTag { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ospf6ProcessTag definition. + + leaf ospf6logAdjacency { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of ospf6logAdjacency definition. + + leaf ospf6RouterId { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of ospf6RouterId definition. + + leaf ospf6ReferenceBandWidth { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..4294967"; + } + default "100000"; + config true; + } // END of ospf6ReferenceBandWidth definition. + + leaf maxDBDescriptor { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "5"; + config true; + } // END of maxDBDescriptor definition. + + leaf maxUnusePkt { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + default "200"; + config true; + } // END of maxUnusePkt definition. + + leaf maxUnuseLsa { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + default "200"; + config true; + } // END of maxUnuseLsa definition. + + leaf ospf6DefaultMetric { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..16777214"; + } + default "20"; + config true; + } // END of ospf6DefaultMetric definition. + + leaf abrType { + mandatory false; + type cml_data_types:CML_OSPF6_ABR_TYPE_T; + default "cisco"; + config true; + } // END of abrType definition. + + leaf ospf6AdminDistance { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..254"; + } + default "110"; + config true; + } // END of ospf6AdminDistance definition. + + leaf minDelay { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + default "500"; + config true; + } // END of minDelay definition. + + leaf maxDelay { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + default "50000"; + config true; + } // END of maxDelay definition. + + leaf ospf6ShutdownStatus { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6ShutdownStatus definition. + + leaf ospf6FRKeepAllPath { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6FRKeepAllPath definition. + + leaf-list passiveIfName { + + type cml_data_types:CML_STRING_T; + config true; + } // END of passiveIfName definition. + + leaf isPassiveIfDefault { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isPassiveIfDefault definition. + + leaf ospf6CapabilityTE { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6CapabilityTE definition. + + leaf ospf6CspfCapability { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6CspfCapability definition. + + leaf ospf6EnableCspf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6EnableCspf definition. + + leaf ospf6EnableDBSummary { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6EnableDBSummary definition. + + leaf tieBreak { + mandatory false; + type cml_data_types:CML_OSPF6_CSPF_TYPE_T; + default "random"; + config true; + } // END of tieBreak definition. + + leaf cspfInterval { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "1..3600"; + } + default "10"; + config true; + } // END of cspfInterval definition. + + leaf ospf6CapabilityRestartMethod { + mandatory false; + type cml_data_types:CML_BOOL_T; + default true; + config true; + } // END of ospf6CapabilityRestartMethod definition. + + leaf bfdAllInterface { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bfdAllInterface definition. + + leaf teDBRTAddrLsaAge { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teDBRTAddrLsaAge definition. + + leaf teLsaHeaderMsgType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teLsaHeaderMsgType definition. + + leaf teLsaHeaderType { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of teLsaHeaderType definition. + + leaf teInstance { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teInstance definition. + + leaf teAdvrRouter { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teAdvrRouter definition. + + leaf teLSSeqNum { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teLSSeqNum definition. + + leaf teLSChecksum { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of teLSChecksum definition. + + leaf teLength { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of teLength definition. + + leaf teRouterState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teRouterState definition. + + leaf teNeighborState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teNeighborState definition. + + leaf teNeighborInterfaceId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teNeighborInterfaceId definition. + + leaf teNeighborRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teNeighborRouterId definition. + + leaf teRouterAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teRouterAddr definition. + + leaf teLocalInterfaceState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLocalInterfaceState definition. + + leaf teLocalInterfaceAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teLocalInterfaceAddr definition. + + leaf teRemoteInterfaceState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teRemoteInterfaceState definition. + + leaf teRemoteInterfaceAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teRemoteInterfaceAddr definition. + + leaf teLinkMetricState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLinkMetricState definition. + + leaf teLinkMetric { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of teLinkMetric definition. + + leaf teMaxResBWState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teMaxResBWState definition. + + leaf teMaxResBW { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teMaxResBW definition. + + leaf teMaxBWState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teMaxBWState definition. + + leaf teMaxBW { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teMaxBW definition. + + leaf teLinkAttrBc { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLinkAttrBc definition. + + leaf teBWConsModel { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of teBWConsModel definition. + + leaf teUnResBWState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teUnResBWState definition. + + leaf teUnResBWPrio { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teUnResBWPrio definition. + + leaf teResourceColorState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teResourceColorState definition. + + leaf teResourceColorVal { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teResourceColorVal definition. + + leaf teBWCons { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teBWCons definition. + + leaf teBWCtr { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of teBWCtr definition. + + leaf teLinkStateType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLinkStateType definition. + + leaf teLinkType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teLinkType definition. + + leaf teLinkStateID { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of teLinkStateID definition. + + leaf teLinkId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of teLinkId definition. + + leaf pathCode { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of pathCode definition. + + leaf pathCost { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of pathCost definition. + + leaf nextHop { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHop definition. + + leaf ifPathCode { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifPathCode definition. + + leaf areaTransit { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of areaTransit definition. + + leaf nhAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of nhAddr definition. + + leaf lspP2mpId { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lspP2mpId definition. + + leaf lspId { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lspId definition. + + leaf lspIngress { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspIngress definition. + + leaf lspEgress { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspEgress definition. + + leaf lspExTunnelId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspExTunnelId definition. + + leaf lspType { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspType definition. + + leaf lspClientId { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspClientId definition. + + leaf lspState { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspState definition. + + leaf lspSetupPri { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspSetupPri definition. + + leaf lspHoldPri { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspHoldPri definition. + + leaf lspBidirectionalStatus { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspBidirectionalStatus definition. + + leaf lspBandwidth { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspBandwidth definition. + + leaf lspBWStat { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspBWStat definition. + + leaf lspHopLimit { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of lspHopLimit definition. + + leaf lspAdmControl { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspAdmControl definition. + + leaf lspIncludeMask { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lspIncludeMask definition. + + leaf lspExcludeMask { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lspExcludeMask definition. + + leaf lspAttrRetry { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspAttrRetry definition. + + leaf lspRetryInt { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of lspRetryInt definition. + + leaf lspRetryLimit { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of lspRetryLimit definition. + + leaf lspTeMetric { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lspTeMetric definition. + + leaf lspPathStat { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspPathStat definition. + + leaf lspPathDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspPathDetail definition. + + leaf lspExcludePathStat { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspExcludePathStat definition. + + leaf lspExcludePathDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspExcludePathDetail definition. + + leaf lspRouteStat { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of lspRouteStat definition. + + leaf lspRouteDetail { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lspRouteDetail definition. + + leaf isAbrType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of isAbrType definition. + + leaf isAbrStateType { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of isAbrStateType definition. + + leaf vrfIfName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vrfIfName definition. + + leaf vrfIvName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vrfIvName definition. + + leaf asbrSet { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of asbrSet definition. + + leaf spfMinDelay { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of spfMinDelay definition. + + leaf spfMaxDelay { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of spfMaxDelay definition. + + leaf ddCountIn { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of ddCountIn definition. + + leaf ddCountOut { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of ddCountOut definition. + + leaf externalLsa { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of externalLsa definition. + + leaf checksum { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of checksum definition. + + leaf unknownLsa { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of unknownLsa definition. + + leaf selfLsa { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of selfLsa definition. + + leaf recvLsa { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of recvLsa definition. + + leaf processUpTime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of processUpTime definition. + + leaf restartMethodType { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of restartMethodType definition. + + leaf areaCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of areaCount definition. + + leaf obufSize { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of obufSize definition. + + leaf lbufSize { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of lbufSize definition. + + leaf ibufSize { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ibufSize definition. + + leaf opunuseMax { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of opunuseMax definition. + + leaf opunuseCount { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of opunuseCount definition. + + leaf lsaunuseCount { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of lsaunuseCount definition. + + leaf lsaunuseMax { + mandatory false; + type cml_data_types:CML_UINT16_T; + config false; + } // END of lsaunuseMax definition. + + leaf accessListName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of accessListName definition. + + leaf ospf6DistIn { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6DistIn definition. + + leaf-list ospf6RedistProtocolDist { + + type cml_data_types:CML_OSPF6_DIST_ROUTE_SOURCE_TYPE_T; + config true; + } // END of ospf6RedistProtocolDist definition. + + leaf-list ospf6DistributeTag { + + type cml_data_types:CML_STRING_T; + config true; + } // END of ospf6DistributeTag definition. + + + list neighborRun { + + + description + "neighborRun"; + + config false; + key "neighborIf"; + + + leaf neighborIf { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborIf definition. + + leaf neighborPriority { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of neighborPriority definition. + + leaf neighborDownState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of neighborDownState definition. + + leaf neighborRetransmitCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of neighborRetransmitCount definition. + + leaf neighborRequestCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of neighborRequestCount definition. + + leaf neighborDbSummaryCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of neighborDbSummaryCount definition. + + leaf neighborChangeState { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of neighborChangeState definition. + + leaf neighborArea { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborArea definition. + + leaf neighborInterfaceAddress { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborInterfaceAddress definition. + + leaf neighborDRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborDRouterId definition. + + leaf neighborBDRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborBDRouterId definition. + + leaf neighborOptions { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of neighborOptions definition. + + leaf neighborOptionDump { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborOptionDump definition. + + leaf neighborState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborState definition. + + leaf neighborDeadTime { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborDeadTime definition. + + leaf neighborId { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config false; + } // END of neighborId definition. + + leaf neighborInst { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of neighborInst definition. + + } // End of neighborRun-list + + list frrTieBreak { + + + description + "frrTieBreak"; + + config true; + key "frrTieBreakVal"; + + + leaf frrTieBreakVal { + mandatory true; + type cml_data_types:CML_OSPF_FRR_TIE_BREAK_VAL_T; + config true; + } // END of frrTieBreakVal definition. + + leaf frrTieBreakIndex { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..4"; + } + config true; + } // END of frrTieBreakIndex definition. + + leaf isFrrPrioSet { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isFrrPrioSet definition. + + } // End of frrTieBreak-list + + list summaryAddress { + + + description + "summaryAddress"; + + config true; + key "summaryIpv6Addr"; + + + leaf summaryIpv6Addr { + mandatory true; + type cml_data_types:CML_IPV6_PREFIX_T; + config true; + } // END of summaryIpv6Addr definition. + + leaf addressNotMask6len { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of addressNotMask6len definition. + + leaf summaryRoute6Tag { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + } // END of summaryRoute6Tag definition. + + leaf summaryRoute6TranslateTag { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + } // END of summaryRoute6TranslateTag definition. + + } // End of summaryAddress-list + + list ospf6Area { + + + description + "ospf6Area"; + + config true; + key "areaId"; + + + leaf areaId { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of areaId definition. + + leaf defaultCost { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..16777215"; + } + default "1"; + config true; + } // END of defaultCost definition. + + leaf isAreaType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of isAreaType definition. + + leaf isAreaActive { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of isAreaActive definition. + + leaf activeIfCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of activeIfCount definition. + + leaf areaIfCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of areaIfCount definition. + + leaf spfCalcCount { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of spfCalcCount definition. + + leaf areaLsdbCountAll { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of areaLsdbCountAll definition. + + leaf areaChecksum { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of areaChecksum definition. + + leaf areaStrId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of areaStrId definition. + + leaf isAreaDefault { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of isAreaDefault definition. + + leaf isAreaNssa { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of isAreaNssa definition. + + leaf areaUnknownLsa { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of areaUnknownLsa definition. + + leaf isNssaDisabled { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of isNssaDisabled definition. + + leaf vlinkName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkName definition. + + leaf transitArea { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of transitArea definition. + + leaf authEnabled { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of authEnabled definition. + + leaf authStateEnabled { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of authStateEnabled definition. + + leaf localAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of localAddr definition. + + leaf remoteAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of remoteAddr definition. + + leaf ifFsmState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifFsmState definition. + + leaf helloDueIn { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of helloDueIn definition. + + leaf ifPassiveState { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of ifPassiveState definition. + + leaf vlinkAdjState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkAdjState definition. + + leaf vlinkState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkState definition. + + leaf vlinkInterface { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkInterface definition. + + + list areaStub { + + + description + "areaStub"; + + config true; + key "isAreaStub"; + + + leaf isAreaStub { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isAreaStub definition. + + leaf ospf6AreaSummary { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6AreaSummary definition. + + } // End of areaStub-list + + list areaVlink { + + + description + "areaVlink"; + + config true; + key "peerId"; + + + leaf peerId { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of peerId definition. + + leaf virtualLinkRetransmitInterval { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..1800"; + } + default "1"; + config true; + } // END of virtualLinkRetransmitInterval definition. + + leaf virtualLinkTransmitDelay { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..1800"; + } + default "1"; + config true; + } // END of virtualLinkTransmitDelay definition. + + leaf virtualLinkHelloInterval { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + default "1"; + config true; + } // END of virtualLinkHelloInterval definition. + + leaf virtualLinkDeadInterval { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + default "1"; + config true; + } // END of virtualLinkDeadInterval definition. + + leaf areaVlinkTimer { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of areaVlinkTimer definition. + + leaf virtualLinkSeconds { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + } // END of virtualLinkSeconds definition. + + leaf VirtualLinkInstanceId { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..255"; + } + default "0"; + config true; + } // END of VirtualLinkInstanceId definition. + + } // End of areaVlink-list + + list areaNssa { + + + description + "areaNssa"; + + config true; + key "ospf6Nssa"; + + + leaf ospf6Nssa { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6Nssa definition. + + leaf stabilityInterval { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..2147483647"; + } + default "40"; + config true; + } // END of stabilityInterval definition. + + leaf nssaAreaSummary { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of nssaAreaSummary definition. + + leaf ospf6AreaNssaTransRole { + mandatory false; + type cml_data_types:CML_OSPF6_TRANSLATOR_ROLE_T; + default "candidate"; + config true; + } // END of ospf6AreaNssaTransRole definition. + + leaf ospf6DefaultOriginMetric { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..16777214"; + } + default "1"; + config true; + } // END of ospf6DefaultOriginMetric definition. + + leaf ospf6DefaultOriginMetricType { + mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; + config true; + } // END of ospf6DefaultOriginMetricType definition. + + leaf ospf6NssaRedist { + mandatory false; + type cml_data_types:CML_BOOL_T; + default true; + config true; + } // END of ospf6NssaRedist definition. + + leaf ospf6NssaDefaultInfo { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6NssaDefaultInfo definition. + + leaf NssaRouteMapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of NssaRouteMapName definition. + + container nssaAreaTranslator { + + config true; + + description + "nssaAreaTranslator"; + + leaf nssaAreaTranslatorRole { + mandatory false; + type cml_data_types:CML_OSPF6_NSSA_TRANSLATOR_ROLE_T; + config true; + } // END of nssaAreaTranslatorRole definition. + + } // END of nssaAreaTranslator-container definition. + } // End of areaNssa-list + + list rangeipv6 { + + + description + "rangeipv6"; + + config true; + key "areaRangeAddr"; + + + leaf areaRangeAddr { + mandatory true; + type cml_data_types:CML_IPV6_PREFIX_T; + config true; + } // END of areaRangeAddr definition. + + leaf ospf6AreaRangeStatus { + mandatory true; + type cml_data_types:CML_OSPF6_AREA_RANGE_T; + config true; + } // END of ospf6AreaRangeStatus definition. + + } // End of rangeipv6-list + } // End of ospf6Area-list + + list redistributeProc { + + + description + "redistributeProc"; + + config true; + key "sourceOspf6Tag"; + + + leaf sourceOspf6Tag { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of sourceOspf6Tag definition. + + leaf ospf6RedistMetricType { + mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; + default "2"; + config true; + } // END of ospf6RedistMetricType definition. + + leaf ospf6RedistMetricValue { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..16777214"; + } + config true; + } // END of ospf6RedistMetricValue definition. + + leaf ospf6RedistTagVal { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + config true; + } // END of ospf6RedistTagVal definition. + + leaf ospf6RouteMapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of ospf6RouteMapName definition. + + } // End of redistributeProc-list + + list redistribute { + + + description + "redistribute"; + + config true; + key "ospf6RedistProtocol"; + + + leaf ospf6RedistProtocol { + mandatory true; + type cml_data_types:CML_OSPF6_ROUTE_SOURCE_TYPE_T; + config true; + } // END of ospf6RedistProtocol definition. + + leaf ospf6RedistMetricType { + mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; + default "2"; + config true; + } // END of ospf6RedistMetricType definition. + + leaf ospf6RedistMetricValue { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..16777214"; + } + config true; + } // END of ospf6RedistMetricValue definition. + + leaf ospf6RedistTagVal { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + config true; + } // END of ospf6RedistTagVal definition. + + leaf ospf6RouteMapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of ospf6RouteMapName definition. + + } // End of redistribute-list + + list ospf6DefaultInformation { + + + description + "ospf6DefaultInformation"; + + config true; + key "ospf6RedistDefaultOrigin"; + + + leaf ospf6RedistDefaultOrigin { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6RedistDefaultOrigin definition. + + leaf ospf6RedistDefaultOriginAlways { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6RedistDefaultOriginAlways definition. + + leaf ospf6RedistDefaultMetric { + mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; + config true; + } // END of ospf6RedistDefaultMetric definition. + + leaf ospf6RedistDefaultMetricValue { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..16777214"; + } + config true; + } // END of ospf6RedistDefaultMetricValue definition. + + leaf routeMapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of routeMapName definition. + + } // End of ospf6DefaultInformation-list + + list addressFamily { + + + description + "addressFamily"; + + config true; + key "addFamily"; + + + leaf addFamily { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of addFamily definition. + + + list afRangeipv4 { + + + description + "afRangeipv4"; + + config true; + key "areaId"; + + + leaf areaId { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of areaId definition. + + + list rangeipv4 { + + + description + "rangeipv4"; + + config true; + key "areaRangeIpv4Addr"; + + + leaf areaRangeIpv4Addr { + mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of areaRangeIpv4Addr definition. + + leaf ospfAreaRangeStatus { + mandatory true; + type cml_data_types:CML_OSPF6_AREA_RANGE_T; + config true; + } // END of ospfAreaRangeStatus definition. + + } // End of rangeipv4-list + } // End of afRangeipv4-list + + list addressRedistribute { + + + description + "addressRedistribute"; + + config true; + key "ospfRedistProtocol"; + + + leaf ospfRedistProtocol { + mandatory true; + type cml_data_types:CML_OSPF6_AF_ROUTE_SOURCE_TYPE_T; + config true; + } // END of ospfRedistProtocol definition. + + leaf ospfRedistMetricType { + mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; + default "2"; + config true; + } // END of ospfRedistMetricType definition. + + leaf ospfRedistMetricValue { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..16777214"; + } + default "0"; + config true; + } // END of ospfRedistMetricValue definition. + + leaf ospfRedistTagVal { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + config true; + } // END of ospfRedistTagVal definition. + + leaf ospfRouteMapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of ospfRouteMapName definition. + + } // End of addressRedistribute-list + + list addressRedistributeProc { + + + description + "addressRedistributeProc"; + + config true; + key "sourceOspfTag"; + + + leaf sourceOspfTag { + mandatory true; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + } // END of sourceOspfTag definition. + + leaf ospfRedistMetricType { + mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; + default "2"; + config true; + } // END of ospfRedistMetricType definition. + + leaf ospfRedistMetricValue { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..16777214"; + } + default "0"; + config true; + } // END of ospfRedistMetricValue definition. + + leaf ospfRedistTagVal { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + config true; + } // END of ospfRedistTagVal definition. + + leaf ospfRouteMapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of ospfRouteMapName definition. + + } // End of addressRedistributeProc-list + + list summaryAddressIpv4 { + + + description + "summaryAddressIpv4"; + + config true; + key "summaryIpv4Addr"; + + + leaf summaryIpv4Addr { + mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of summaryIpv4Addr definition. + + leaf summaryRouteTag { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + } // END of summaryRouteTag definition. + + leaf addressNotMask4len { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of addressNotMask4len definition. + + } // End of summaryAddressIpv4-list + + list ospf6FamilyDefaultInformation { + + + description + "ospf6FamilyDefaultInformation"; + + config true; + key "ospf6FamRedistDefaultOrigin"; + + + leaf ospf6FamRedistDefaultOrigin { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6FamRedistDefaultOrigin definition. + + leaf ospf6FamRedistDefaultOriginAlways { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6FamRedistDefaultOriginAlways definition. + + leaf ospf6FamRedistDefaultMetric { + mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; + config true; + } // END of ospf6FamRedistDefaultMetric definition. + + leaf ospf6FamRedistDefaultMetricValue { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..16777214"; + } + config true; + } // END of ospf6FamRedistDefaultMetricValue definition. + + leaf ospf6FamRouteMapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of ospf6FamRouteMapName definition. + + } // End of ospf6FamilyDefaultInformation-list + } // End of addressFamily-list + container distanceTypes { + + config true; + + description + "distanceTypes"; + + leaf intraDistance { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..254"; + } + default "110"; + config true; + } // END of intraDistance definition. + + leaf interDistance { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..254"; + } + default "110"; + config true; + } // END of interDistance definition. + + leaf externalDistance { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..254"; + } + default "110"; + config true; + } // END of externalDistance definition. + + } // END of distanceTypes-container definition. + } // End of ospf6-list + } // END of ospf6-grouping definition. + + + grouping ospf6Interface-grouping { + list ospf6Interface { + + + description + "OSPFv3 interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + mandatory true; + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf isDisable { + mandatory false; + type cml_data_types:CML_INT32_T; + config true; + } // END of isDisable definition. + + leaf bfdDisable { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of bfdDisable definition. + + leaf isIfLoopBackType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isIfLoopBackType definition. + + + list ospf6IfinstanceId { + + + description + "OSPFv3 instanceId of interface related operations"; + + config true; + key "instanceId"; + + + leaf instanceId { + mandatory true; + type cml_data_types:CML_INT32_T { + range "0..31 | 64..95"; + } + config true; + } // END of instanceId definition. + + leaf ospf6IfType { + mandatory false; + type cml_data_types:CML_OSPF6_NETWORK_T; + config true; + } // END of ospf6IfType definition. + + leaf ospf6IfMultiType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6IfMultiType definition. + + leaf ospf6IfPriority { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..255"; + } + default "1"; + config true; + } // END of ospf6IfPriority definition. + + leaf ifMtuIgnore { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifMtuIgnore definition. + + leaf ospf6IfCost { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "10"; + config true; + } // END of ospf6IfCost definition. + + leaf transmitDelay { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..1800"; + } + default "1"; + config true; + } // END of transmitDelay definition. + + leaf retransmitInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..1800"; + } + default "5"; + config true; + } // END of retransmitInterval definition. + + leaf helloInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "10"; + config true; + } // END of helloInterval definition. + + leaf deadInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "40"; + config true; + } // END of deadInterval definition. + + leaf ospf6TeMetric { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "10"; + config true; + } // END of ospf6TeMetric definition. + + leaf ospf6LsaSuppressionValue { + mandatory false; + type cml_data_types:CML_OSPF6_LSA_SUPRESSION_STATE_T; + default "enable"; + config true; + } // END of ospf6LsaSuppressionValue definition. + + leaf ospf6NeighborAddr { + mandatory false; + type cml_data_types:CML_IPV6_ADDR_T; + config true; + } // END of ospf6NeighborAddr definition. + + leaf ospf6IfNbrCost { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "10"; + config true; + } // END of ospf6IfNbrCost definition. + + leaf ospf6IfNbrPollInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + } // END of ospf6IfNbrPollInterval definition. + + leaf ospf6IfNbrPriority { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..255"; + } + config true; + } // END of ospf6IfNbrPriority definition. + + leaf fastRerouteIfSet { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of fastRerouteIfSet definition. + + leaf ifAreaId { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of ifAreaId definition. + + leaf ifProcessTag { + mandatory false; + type cml_data_types:CML_STRING_T; + default ""; + config true; + } // END of ifProcessTag definition. + + leaf ifProcessTagPresent { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifProcessTagPresent definition. + + leaf ifState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ifState definition. + + leaf ifIndex { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifIndex definition. + + leaf ipAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ipAddr definition. + + leaf ipLinkLocalAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ipLinkLocalAddr definition. + + leaf ipLinkAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ipLinkAddr definition. + + leaf interfaceProcessTag { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of interfaceProcessTag definition. + + leaf interfaceAreaId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of interfaceAreaId definition. + + leaf interfaceRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of interfaceRouterId definition. + + leaf interfaceInstanceId { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of interfaceInstanceId definition. + + leaf stateChange { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of stateChange definition. + + leaf neighborCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of neighborCount definition. + + leaf adjNeighborCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of adjNeighborCount definition. + + leaf designatedRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of designatedRouterId definition. + + leaf backupDesignatedRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of backupDesignatedRouterId definition. + + leaf interfaceIfType { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of interfaceIfType definition. + + leaf interfaceIfCost { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of interfaceIfCost definition. + + leaf interfaceTeMetric { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of interfaceTeMetric definition. + + leaf interfaceTransmitDelay { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of interfaceTransmitDelay definition. + + leaf interfaceFsmState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of interfaceFsmState definition. + + leaf interfaceIfPriority { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of interfaceIfPriority definition. + + leaf interfaceHelloInterval { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of interfaceHelloInterval definition. + + leaf interfaceIfPassiveState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of interfaceIfPassiveState definition. + + leaf interfaceDeadInterval { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of interfaceDeadInterval definition. + + leaf interfaceRetransmitInterval { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of interfaceRetransmitInterval definition. + + leaf interfaceHelloDueIn { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of interfaceHelloDueIn definition. + + leaf interfaceStateChange { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of interfaceStateChange definition. + + leaf interfaceNeighborCount { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of interfaceNeighborCount definition. + + leaf isInterfaceType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isInterfaceType definition. + + } // End of ospf6IfinstanceId-list + } // End of ospf6Interface-list + } // END of ospf6Interface-grouping definition. + + + grouping ospf6Global-grouping { + list ospf6Global { + + + description + "ospf6Global"; + + config true; + key "vrId"; + + + leaf vrId { + mandatory true; + type cml_data_types:CML_UINT32_T; + config true; + } // END of vrId definition. + + leaf gracePeriod { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..1800"; + } + default "120"; + config true; + } // END of gracePeriod definition. + + leaf gracefulRestartPlanned { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of gracefulRestartPlanned definition. + + leaf ospf6RouterSingleline { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6RouterSingleline definition. + + leaf ospf6Debug { + mandatory false; + type cml_data_types:CML_OSPF6_DEBUG_T; + config true; + } // END of ospf6Debug definition. + + leaf isDebug { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isDebug definition. + + leaf ospf6Packet { + mandatory false; + type cml_data_types:CML_OSPF6_DEBUG_PACKET_TYPE_T; + config true; + } // END of ospf6Packet definition. + + leaf ospf6PacketDebug { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6PacketDebug definition. + + container restartConfig { + + config true; + + description + "restartConfig"; + + leaf never { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of never definition. + + leaf nbrRouterId { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of nbrRouterId definition. + + leaf restartAll { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of restartAll definition. + + } // END of restartConfig-container definition. + container restartAllConfig { + + config true; + + description + "restartAllConfig"; + + leaf onlyReload { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of onlyReload definition. + + leaf onlyUpgrade { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of onlyUpgrade definition. + + leaf restartHelperPeriod { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..1800"; + } + default "120"; + config true; + } // END of restartHelperPeriod definition. + + } // END of restartAllConfig-container definition. + } // End of ospf6Global-list + } // END of ospf6Global-grouping definition. + + + grouping ospf6Vrf-grouping { + list ospf6Vrf { + + + description + "Enable an IPv6 VRF routing process"; + + config true; + key "vrId"; + + + leaf vrId { + mandatory true; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf vrfName { + mandatory false; + type leafref { + path "/vr/vrf/vrfName"; + } + } // END of vrfName definition. + + } // End of ospf6Vrf-list + } // END of ospf6Vrf-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/rib.yang b/yang-files/rib.yang new file mode 100644 index 00000000..c40afb70 --- /dev/null +++ b/yang-files/rib.yang @@ -0,0 +1,342 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : rib.yang +* +*/ + +submodule rib { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + revision "2015-10-08" { + description "Revisied on 2015-10-08."; } + + + + grouping rib-grouping { + list rib { + + + description + "static route with ifname"; + + config true; + key "ipv4DestinationPrefixAddr"; + + + leaf vrId { + mandatory true; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf ipv4DestinationPrefixAddr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ipv4DestinationPrefixAddr definition. + + + list ribGateway { + + + description + "static route with gateway"; + + config true; + key "ipGatewayStr"; + + + leaf ipGatewayStr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ipGatewayStr definition. + + leaf distanceValue { + mandatory true; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + } // END of distanceValue definition. + + leaf tagValue { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + config true; + } // END of tagValue definition. + + leaf staticRouteDescription { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of staticRouteDescription definition. + + } // End of ribGateway-list + + list ribGatewayIfname { + + + description + "static route with gateway and ifname"; + + config true; + key "ifName"; + + + leaf ifName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ifName definition. + + leaf ifdistanceValue { + mandatory true; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + } // END of ifdistanceValue definition. + + leaf iftagValue { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + config true; + } // END of iftagValue definition. + + leaf ifstaticRouteDescription { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ifstaticRouteDescription definition. + + } // End of ribGatewayIfname-list + } // End of rib-list + } // END of rib-grouping definition. + + + grouping ribipv6-grouping { + list ribipv6 { + + + description + "ribipv6"; + + config true; + key "ipv6DestinationPrefixAddr"; + + + leaf vrId { + mandatory true; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf ipv6DestinationPrefixAddr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ipv6DestinationPrefixAddr definition. + + + list ribipv6Gateway { + + + description + "ribipv6Gateway"; + + config true; + key "ipv6GatewayStr"; + + + leaf ipv6GatewayStr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ipv6GatewayStr definition. + + leaf distance { + mandatory true; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + } // END of distance definition. + + } // End of ribipv6Gateway-list + + list ribipv6Ifname { + + + description + "ribipv6Ifname"; + + config true; + key "ifName"; + + + leaf ifName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ifName definition. + + leaf distance { + mandatory true; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + } // END of distance definition. + + } // End of ribipv6Ifname-list + } // End of ribipv6-list + } // END of ribipv6-grouping definition. + + + grouping mroute-grouping { + list mroute { + + + description + "mroute"; + + config true; + key "vrfName"; + + + leaf vrId { + mandatory true; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf vrfName { + mandatory true; + type leafref { + path "/vr/vrf/vrfName"; + } + } // END of vrfName definition. + + leaf mrouteIfIndex { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of mrouteIfIndex definition. + + + list mroutePrefix { + + + description + "mroutePrefix"; + + config true; + key "mrouteIpv4Prefix"; + + + leaf mrouteIpv4Prefix { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of mrouteIpv4Prefix definition. + + leaf mrouteGateStr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of mrouteGateStr definition. + + leaf mrouteifname { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of mrouteifname definition. + + leaf routeType { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of routeType definition. + + leaf mrouteDistance { + mandatory true; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + } // END of mrouteDistance definition. + + } // End of mroutePrefix-list + + list mrouteIpv6Prefix { + + + description + "mrouteIpv6Prefix"; + + config true; + key "mrouteIpv6Prefix"; + + + leaf mrouteIpv6Prefix { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of mrouteIpv6Prefix definition. + + leaf mrouteIpv6GateStr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of mrouteIpv6GateStr definition. + + leaf mrouteIpv6ifname { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of mrouteIpv6ifname definition. + + leaf ipv6RouteType { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ipv6RouteType definition. + + leaf mrouteIpv6Distance { + mandatory true; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + } // END of mrouteIpv6Distance definition. + + } // End of mrouteIpv6Prefix-list + } // End of mroute-list + } // END of mroute-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/vlan.yang b/yang-files/vlan.yang new file mode 100644 index 00000000..de3b0f8e --- /dev/null +++ b/yang-files/vlan.yang @@ -0,0 +1,123 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : vlan.yang +* +*/ + +submodule vlan { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + revision "2015-10-08" { + description "Revisied on 2015-10-08."; } + + + + grouping vlan-grouping { + list vlan { + + + description + "vlan"; + + config true; + key "vlanId"; + + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf bridgeId { + mandatory false; + type leafref { + path "/vr/bridge/bridgeId"; + } + } // END of bridgeId definition. + + leaf vlanId { + mandatory true; + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + config true; + } // END of vlanId definition. + + leaf vlanName { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + } // END of vlanName definition. + + leaf vlanState { + mandatory true; + type cml_data_types:CML_VLANSTATE_T; + config true; + } // END of vlanState definition. + + leaf vlanType { + mandatory true; + type cml_data_types:CML_VLAN_TYPE_T; + config true; + } // END of vlanType definition. + + leaf mtuVal { + mandatory false; + type cml_data_types:CML_UINT32_T; + default "1500"; + config true; + } // END of mtuVal definition. + + leaf bridgeName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bridgeName definition. + + leaf vlanRuntimeName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlanRuntimeName definition. + + leaf vlanRuntimeState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlanRuntimeState definition. + + leaf vlanHwState { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of vlanHwState definition. + + leaf taggedInterface { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of taggedInterface definition. + + } // End of vlan-list + } // END of vlan-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/vlaninterface.yang b/yang-files/vlaninterface.yang new file mode 100644 index 00000000..b0941b3d --- /dev/null +++ b/yang-files/vlaninterface.yang @@ -0,0 +1,278 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : vlaninterface.yang +* +*/ + +submodule vlaninterface { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include vlan; + include bridge; + + + import cml_data_types { + prefix cml_data_types; + } + + revision "2015-10-08" { + description "Revisied on 2015-10-08."; } + + + + grouping vlaninterface-grouping { + list vlaninterface { + + + description + "vlaninterface"; + + config true; + key "ifName"; + + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf ifName { + mandatory true; + type leafref { + path "/vr/interface/ifName"; + } + } // END of ifName definition. + + leaf vlanPortMode { + mandatory true; + type cml_data_types:CML_VLAN_PORT_MODE_T; + config true; + } // END of vlanPortMode definition. + + leaf vlanPortIngressFilter { + mandatory false; + type cml_data_types:CML_ENABLE_DISABLE_T; + default "enable"; + config true; + } // END of vlanPortIngressFilter definition. + + leaf frameType { + mandatory false; + type cml_data_types:CML_VLAN_FRAME_TYPE_T; + default "all"; + config true; + } // END of frameType definition. + + + list staticMac { + + + description + "staticMac"; + + config true; + key "macAddr"; + + + leaf vlanIdMac { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "2..4096"; + } + config true; + } // END of vlanIdMac definition. + + leaf bridgeId { + mandatory false; + type leafref { + path "/vr/bridge/bridgeId"; + } + } // END of bridgeId definition. + + leaf macAddr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of macAddr definition. + + leaf discardForward { + mandatory false; + type cml_data_types:CML_DISCARDFORWARD_T; + config true; + } // END of discardForward definition. + + leaf priorityOverWrite { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "0..7"; + } + config true; + } // END of priorityOverWrite definition. + + leaf overMacType { + mandatory false; + type cml_data_types:CML_OVERMACTYPE_T; + config true; + } // END of overMacType definition. + + } // End of staticMac-list + + list vlanInterfaceBound { + + + description + "vlanInterfaceBound"; + + config true; + key "vlanId"; + + + leaf vlanId { + mandatory true; + type leafref { + path "/vr/bridge/vlan/vlanId"; + } + } // END of vlanId definition. + + leaf vlanPortMode { + mandatory true; + type cml_data_types:CML_VLAN_PORT_MODE_T; + config true; + } // END of vlanPortMode definition. + + } // End of vlanInterfaceBound-list + + list allowedvlan { + + + description + "allowedvlan"; + + config true; + key "allowedVlanId"; + + + leaf allowedVlanId { + mandatory true; + type cml_data_types:CML_UINT16_T; + config true; + } // END of allowedVlanId definition. + + leaf vlanPortMode { + mandatory true; + type cml_data_types:CML_VLAN_PORT_MODE_T; + config true; + } // END of vlanPortMode definition. + + leaf egrType { + mandatory false; + type cml_data_types:CML_ENABLE_DISABLE_T; + config true; + } // END of egrType definition. + + } // End of allowedvlan-list + + list excludevlan { + + + description + "excludevlan"; + + config true; + key "excludeVlanId"; + + + leaf excludeVlanId { + mandatory true; + type cml_data_types:CML_UINT16_T; + config true; + } // END of excludeVlanId definition. + + leaf vlanPortMode { + mandatory true; + type cml_data_types:CML_VLAN_PORT_MODE_T; + config true; + } // END of vlanPortMode definition. + + } // End of excludevlan-list + + list vlanUserTable { + + + description + "vlanUserTable"; + + config true; + key "userPriority"; + + + leaf userPriority { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "0..7"; + } + config true; + } // END of userPriority definition. + + leaf regenPriority { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "0..7"; + } + config true; + } // END of regenPriority definition. + + } // End of vlanUserTable-list + + list vlanTraffic { + + + description + "vlanTraffic"; + + config true; + key "userPriority"; + + + leaf userPriority { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "0..7"; + } + config true; + } // END of userPriority definition. + + leaf trafficClass { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..8"; + } + config true; + } // END of trafficClass definition. + + leaf trafficClassValue { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "0..7"; + } + config true; + } // END of trafficClassValue definition. + + } // End of vlanTraffic-list + } // End of vlaninterface-list + } // END of vlaninterface-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/vr.yang b/yang-files/vr.yang new file mode 100644 index 00000000..99a72ca2 --- /dev/null +++ b/yang-files/vr.yang @@ -0,0 +1,106 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : vr.yang +* +*/ + +submodule vr { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include nsmLACP; + include oamBfd; + include bridge; + include ospf; + include layer2LACP; + include bgp; + include vrf; + include lldpv2; + include ospf6; + include rib; + include vlaninterface; + + + import cml_data_types { + prefix cml_data_types; + } + + revision "2015-10-08" { + description "Revisied on 2015-10-08."; } + + + + grouping vr-grouping { + list vr { + + + description + "vr"; + + config true; + key "vrId"; + + + leaf vrId { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "0..255"; + } + config true; + } // END of vrId definition. + + leaf vrName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of vrName definition. + + leaf protocol { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of protocol definition. + + leaf ipv6Protocol { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of ipv6Protocol definition. + + uses nsmlacpInterface-grouping; + uses nsmportInterface-grouping; + uses bfd-grouping; + uses bfdInterface-grouping; + uses bridge-grouping; + uses ospf-grouping; + uses ospfInterface-grouping; + uses teLinkOspf-grouping; + uses lacpInterface-grouping; + uses bgp-grouping; + uses bgpGlobal-grouping; + uses bgpDebug-grouping; + uses vrfTable-grouping; + uses vrf-grouping; + uses interface-grouping; + uses lldpv2Interface-grouping; + uses ospf6-grouping; + uses ospf6Interface-grouping; + uses ospf6Vrf-grouping; + uses rib-grouping; + uses ribipv6-grouping; + uses mroute-grouping; + uses vlaninterface-grouping; + } // End of vr-list + } // END of vr-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/vrf.yang b/yang-files/vrf.yang new file mode 100644 index 00000000..451ddde2 --- /dev/null +++ b/yang-files/vrf.yang @@ -0,0 +1,82 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : vrf.yang +* +*/ + +submodule vrf { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + revision "2015-04-25" { + description "Initial draft version."; } + + + + grouping vrf-grouping { + list vrf { + + + description + "vrf"; + + config true; + key "vrfName"; + + + leaf vrId { + mandatory false; + type leafref { + path "/vr/vrId"; + } + } // END of vrId definition. + + leaf vrfName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of vrfName definition. + + leaf vrfId { + mandatory false; + type cml_data_types:CML_UINT32_T; + config false; + } // END of vrfId definition. + + leaf fibId { + mandatory false; + type cml_data_types:CML_UINT8_T; + config false; + } // END of fibId definition. + + leaf description { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of description definition. + + leaf routerId { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of routerId definition. + + } // End of vrf-list + } // END of vrf-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/zebmcli.yang b/yang-files/zebmcli.yang new file mode 100644 index 00000000..3ce58e30 --- /dev/null +++ b/yang-files/zebmcli.yang @@ -0,0 +1,66 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : zebmcli.yang +* +*/ + + + +module zebmcli { + namespace "http://ipinfusion.com/ns/zebmcli"; + + prefix zebmcli; + + import cml_data_types { + prefix cml_data_types; + } + + revision "2015-10-15" { + description "initial version: revisied on 2015-10-15.";} + + rpc commit-transaction { + } + + rpc abort-transaction { + } + + rpc rollback-transaction { + + input { + leaf savepointName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc create-savepoint { + + input { + leaf savepointName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc delete-savepoint { + + input { + leaf savepointName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + +} \ No newline at end of file From d512e9ed056da7df39a073ef03dd4ee2d9e132b9 Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Fri, 19 Aug 2016 18:25:55 +0530 Subject: [PATCH 05/12] New MIBs supported by OcNOS 1.2.1 Internal Tag: OcNOS-1.2.1.76 --- mibs/BGP4-MIB.txt | 72 +- mibs/IF-MIB.txt | 28 +- mibs/P-BRIDGE-MIB.txt | 87 +- mibs/Q-BRIDGE-MIB.txt | 58 +- mibs/RFC-1724-RIPV2-MIB.txt | 530 ++++ mibs/RFC-3812-MPLS-TE-STD-MIB.txt | 2631 ++++++++++++++++ mibs/RFC-3813-MPLS-LSR-STD-MIB.txt | 2236 ++++++++++++++ mibs/RFC-3814-MPLS-FTN-STD-MIB.txt | 1087 +++++++ mibs/RFC-3815-MPLS-LDP-STD-MIB.txt | 2547 ++++++++++++++++ mibs/RFC-4273-BGP4-MIB.txt | 1298 ++++++++ mibs/RFC-4444-ISIS-MIB.txt | 4581 ++++++++++++++++++++++++++++ mibs/RFC-4750-OSPF-MIB.txt | 4398 ++++++++++++++++++++++++++ mibs/RFC-5060-PIM-STD-MIB.txt | 3967 ++++++++++++++++++++++++ mibs/RFC-5132-IPMCAST-MIB.txt | 2519 +++++++++++++++ mibs/RFC-5519-MGMD-STD-MIB.txt | 1656 ++++++++++ mibs/RFC-5601-PW-STD-MIB.txt | 2511 +++++++++++++++ mibs/RFC-5602-PW-MPLS-STD-MIB.txt | 952 ++++++ mibs/RFC-5603-PW-ENET-STD-MIB.txt | 504 +++ mibs/RFC-5643-OSPFV3-MIB.txt | 4075 +++++++++++++++++++++++++ mibs/RFC-6527-VRRPV3-MIB.txt | 976 ++++++ mibs/RSTP-MIB.txt | 6 +- 21 files changed, 36567 insertions(+), 152 deletions(-) create mode 100644 mibs/RFC-1724-RIPV2-MIB.txt create mode 100644 mibs/RFC-3812-MPLS-TE-STD-MIB.txt create mode 100644 mibs/RFC-3813-MPLS-LSR-STD-MIB.txt create mode 100644 mibs/RFC-3814-MPLS-FTN-STD-MIB.txt create mode 100644 mibs/RFC-3815-MPLS-LDP-STD-MIB.txt create mode 100644 mibs/RFC-4273-BGP4-MIB.txt create mode 100644 mibs/RFC-4444-ISIS-MIB.txt create mode 100644 mibs/RFC-4750-OSPF-MIB.txt create mode 100644 mibs/RFC-5060-PIM-STD-MIB.txt create mode 100644 mibs/RFC-5132-IPMCAST-MIB.txt create mode 100644 mibs/RFC-5519-MGMD-STD-MIB.txt create mode 100644 mibs/RFC-5601-PW-STD-MIB.txt create mode 100644 mibs/RFC-5602-PW-MPLS-STD-MIB.txt create mode 100644 mibs/RFC-5603-PW-ENET-STD-MIB.txt create mode 100644 mibs/RFC-5643-OSPFV3-MIB.txt create mode 100644 mibs/RFC-6527-VRRPV3-MIB.txt diff --git a/mibs/BGP4-MIB.txt b/mibs/BGP4-MIB.txt index 94654e0b..23154413 100644 --- a/mibs/BGP4-MIB.txt +++ b/mibs/BGP4-MIB.txt @@ -455,8 +455,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The BGP Received Path Attribute Table contains information about paths to destination networks received from all - peers running BGP version 3 or less. - --IPI Comments: Not Supported" + peers running BGP version 3 or less." ::= { bgp 5 } bgpPathAttrEntry OBJECT-TYPE @@ -464,8 +463,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN MAX-ACCESS not-accessible STATUS obsolete DESCRIPTION - "Information about a path to a network. - --IPI Comments: Not Supported" + "Information about a path to a network." INDEX { bgpPathAttrDestNetwork, bgpPathAttrPeer } ::= { bgpRcvdPathAttrTable 1 } @@ -491,8 +489,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN STATUS obsolete DESCRIPTION "The IP address of the peer where the path - information was learned. - --IPI Comments: Not Supported" + information was learned." ::= { bgpPathAttrEntry 1 } bgpPathAttrDestNetwork OBJECT-TYPE @@ -500,8 +497,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN MAX-ACCESS read-only STATUS obsolete DESCRIPTION - "The address of the destination network. - --IPI Comments: Not Supported" + "The address of the destination network." ::= { bgpPathAttrEntry 2 } bgpPathAttrOrigin OBJECT-TYPE @@ -513,8 +509,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN MAX-ACCESS read-only STATUS obsolete DESCRIPTION - "The ultimate origin of the path information. - --IPI Comments: Not Supported" + "The ultimate origin of the path information." ::= { bgpPathAttrEntry 3 } bgpPathAttrASPath OBJECT-TYPE @@ -531,8 +526,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN according to the following algorithm: first-byte-of-pair = ASNumber / 256; - second-byte-of-pair = ASNumber & 255; - --IPI Comments: Not Supported" + second-byte-of-pair = ASNumber & 255;" ::= { bgpPathAttrEntry 4 } bgpPathAttrNextHop OBJECT-TYPE @@ -542,8 +536,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN DESCRIPTION "The address of the border router that should be used for the destination - network. - --IPI Comments: Not Supported" + network." ::= { bgpPathAttrEntry 5 } bgpPathAttrInterASMetric OBJECT-TYPE @@ -553,8 +546,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN DESCRIPTION "The optional inter-AS metric. If this attribute has not been provided for this - route, the value for this object is 0. - --IPI Comments: Not Supported" + route, the value for this object is 0." ::= { bgpPathAttrEntry 6 } @@ -571,8 +563,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The BGP-4 Received Path Attribute Table contains information about paths to destination networks received from all - BGP4 peers. - --IPI Comments: Not Supported" + BGP4 peers." ::= { bgp 6 } bgp4PathAttrEntry OBJECT-TYPE @@ -580,8 +571,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN MAX-ACCESS not-accessible STATUS current DESCRIPTION - "Information about a path to a network. - --IPI Comments: Not Supported" + "Information about a path to a network." INDEX { bgp4PathAttrIpAddrPrefix, bgp4PathAttrIpAddrPrefixLen, bgp4PathAttrPeer } @@ -625,8 +615,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN STATUS current DESCRIPTION "The IP address of the peer where the path - information was learned. - --IPI Comments: Not Supported" + information was learned." ::= { bgp4PathAttrEntry 1 } bgp4PathAttrIpAddrPrefixLen OBJECT-TYPE @@ -636,8 +625,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN DESCRIPTION "Length in bits of the IP address prefix in the Network Layer Reachability - Information field. - --IPI Comments: Not Supported" + Information field." ::= { bgp4PathAttrEntry 2 } bgp4PathAttrIpAddrPrefix OBJECT-TYPE @@ -651,8 +639,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN length specified by bgp4PathAttrIpAddrPrefixLen. Any bits beyond the length specified by - bgp4PathAttrIpAddrPrefixLen are zeroed. - --IPI Comments: Not Supported" + bgp4PathAttrIpAddrPrefixLen are zeroed." ::= { bgp4PathAttrEntry 3 } bgp4PathAttrOrigin OBJECT-TYPE @@ -666,8 +653,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN STATUS current DESCRIPTION "The ultimate origin of the path - information. - --IPI Comments: Not Supported" + information." ::= { bgp4PathAttrEntry 4 } bgp4PathAttrASPathSegment OBJECT-TYPE @@ -696,8 +682,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN string as a pair of octets according to the following algorithm: first-byte-of-pair = ASNumber / 256; - second-byte-of-pair = ASNumber & 255; - --IPI Comments: Not Supported" + second-byte-of-pair = ASNumber & 255;" ::= { bgp4PathAttrEntry 5 } bgp4PathAttrNextHop OBJECT-TYPE @@ -707,8 +692,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN DESCRIPTION "The address of the border router that should be used for the destination - network. - --IPI Comments: Not Supported" + network." ::= { bgp4PathAttrEntry 6 } bgp4PathAttrMultiExitDisc OBJECT-TYPE @@ -719,8 +703,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN "This metric is used to discriminate between multiple exit points to an adjacent autonomous system. A value of -1 - indicates the absence of this attribute. - --IPI Comments: Not Supported" + indicates the absence of this attribute." ::= { bgp4PathAttrEntry 7 } bgp4PathAttrLocalPref OBJECT-TYPE @@ -731,8 +714,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The originating BGP4 speaker's degree of preference for an advertised route. A value of -1 indicates the absence of this - attribute. - --IPI Comments: Not Supported" + attribute." ::= { bgp4PathAttrEntry 8 } bgp4PathAttrAtomicAggregate OBJECT-TYPE @@ -745,8 +727,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN DESCRIPTION "Whether or not the local system has selected a less specific route without - selecting a more specific route. - --IPI Comments: Not Supported" + selecting a more specific route." ::= { bgp4PathAttrEntry 9 } bgp4PathAttrAggregatorAS OBJECT-TYPE @@ -757,8 +738,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The AS number of the last BGP4 speaker that performed route aggregation. A value of zero (0) indicates the absence of this - attribute. - --IPI Comments: Not Supported" + attribute." ::= { bgp4PathAttrEntry 10 } bgp4PathAttrAggregatorAddr OBJECT-TYPE @@ -769,8 +749,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The IP address of the last BGP4 speaker that performed route aggregation. A value of 0.0.0.0 indicates the absence of this - attribute. - --IPI Comments: Not Supported" + attribute." ::= { bgp4PathAttrEntry 11 } bgp4PathAttrCalcLocalPref OBJECT-TYPE @@ -781,8 +760,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The degree of preference calculated by the receiving BGP4 speaker for an advertised route. A value of -1 indicates the - absence of this attribute. - --IPI Comments: Not Supported" + absence of this attribute." ::= { bgp4PathAttrEntry 12 } bgp4PathAttrBest OBJECT-TYPE @@ -794,8 +772,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN STATUS current DESCRIPTION "An indication of whether or not this route - was chosen as the best BGP4 route. - --IPI Comments: Not Supported" + was chosen as the best BGP4 route." ::= { bgp4PathAttrEntry 13 } bgp4PathAttrUnknown OBJECT-TYPE @@ -808,8 +785,7 @@ BGP4-MIB DEFINITIONS ::= BEGIN indicates the absence of such attribute(s). Octets beyond the maximum size, if any, are not recorded by this - object. - --IPI Comments: Not Supported" + object." ::= { bgp4PathAttrEntry 14 } diff --git a/mibs/IF-MIB.txt b/mibs/IF-MIB.txt index 80132033..87138943 100644 --- a/mibs/IF-MIB.txt +++ b/mibs/IF-MIB.txt @@ -1124,7 +1124,7 @@ ifRcvAddressStatus OBJECT-TYPE STATUS current DESCRIPTION "This object is used to create and delete rows in the - ifRcvAddressTable.--IPI Comments: Not Supported" + ifRcvAddressTable." ::= { ifRcvAddressEntry 2 } @@ -1147,7 +1147,7 @@ ifRcvAddressType OBJECT-TYPE saved, so that will not exist after the next restart of the managed system. Entries having the value other(1) are valid and exist but are not classified as to whether they will - continue to exist after the next restart.--IPI Comments: Not Supported" + continue to exist after the next restart." DEFVAL { volatile } ::= { ifRcvAddressEntry 3 } @@ -1306,7 +1306,7 @@ ifGeneralInformationGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing information applicable to - all network interfaces.--IPI Comments: Not Supported" + all network interfaces." ::= { ifGroups 10 } -- the following five groups are mutually exclusive; at most @@ -1350,7 +1350,7 @@ ifPacketGroup OBJECT-GROUP "A collection of objects providing information specific to non-high speed (non-high speed interfaces transmit and receive at speeds less than or equal to 20,000,000 - bits/second) packet-oriented network interfaces.--IPI Comments: Not Supported" + bits/second) packet-oriented network interfaces." ::= { ifGroups 4 } ifHCPacketGroup OBJECT-GROUP @@ -1396,7 +1396,7 @@ ifRcvAddressGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing information on the - multiple addresses which an interface receives.--IPI Comments: Not Supported" + multiple addresses which an interface receives." ::= { ifGroups 7 } ifStackGroup2 OBJECT-GROUP @@ -1404,7 +1404,7 @@ ifStackGroup2 OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing information on the - layering of MIB-II interfaces.--IPI Comments: Not Supported" + layering of MIB-II interfaces." ::= { ifGroups 11 } ifCounterDiscontinuityGroup OBJECT-GROUP @@ -1412,7 +1412,7 @@ ifCounterDiscontinuityGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing information specific to - interface counter discontinuities.--IPI Comments: Not Supported" + interface counter discontinuities." ::= { ifGroups 13 } linkUpDownNotificationsGroup NOTIFICATION-GROUP @@ -1420,7 +1420,7 @@ linkUpDownNotificationsGroup NOTIFICATION-GROUP STATUS current DESCRIPTION "The notifications which indicate specific changes in the - value of ifOperStatus.--IPI Comments: Not Supported" + value of ifOperStatus." ::= { ifGroups 14 } -- Deprecated Definitions - Objects @@ -1597,7 +1597,7 @@ ifTestId OBJECT-TYPE STATUS deprecated DESCRIPTION "This object identifies the current invocation of the - interface's test.--IPI Comments: Not Supported" + interface's test." ::= { ifTestEntry 1 } ifTestStatus OBJECT-TYPE @@ -1610,7 +1610,7 @@ ifTestStatus OBJECT-TYPE this interface. A write to this object is only successful when it changes its value from 'notInUse(1)' to 'inUse(2)'. After completion of a test, the agent resets the value back - to 'notInUse(1)'.--IPI Comments: Not Supported" + to 'notInUse(1)'." ::= { ifTestEntry 2 } ifTestType OBJECT-TYPE @@ -1638,7 +1638,7 @@ ifTestType OBJECT-TYPE When read, this object always returns the most recent value that ifTestType was set to. If it has not been set since the last initialization of the network management subsystem - on the agent, a value of noTest is returned.--IPI Comments: Not Supported" + on the agent, a value of noTest is returned." ::= { ifTestEntry 3 } ifTestResult OBJECT-TYPE @@ -1659,7 +1659,7 @@ ifTestResult OBJECT-TYPE requested since the last reset. Note that this facility provides no provision for saving the results of one test when starting another, as could be required if used by - multiple managers concurrently.--IPI Comments: Not Supported" + multiple managers concurrently." ::= { ifTestEntry 4 } ifTestCode OBJECT-TYPE @@ -1678,7 +1678,7 @@ ifTestCode OBJECT-TYPE testCodeUnknown OBJECT IDENTIFIER ::= { 0 0 } is defined for use if no additional result code is - available.--IPI Comments: Not Supported" + available." ::= { ifTestEntry 5 } @@ -1688,7 +1688,7 @@ ifTestOwner OBJECT-TYPE STATUS deprecated DESCRIPTION "The entity which currently has the 'ownership' required to - invoke a test on this interface.--IPI Comments: Not Supported" + invoke a test on this interface." ::= { ifTestEntry 6 } -- Deprecated Definitions - Groups diff --git a/mibs/P-BRIDGE-MIB.txt b/mibs/P-BRIDGE-MIB.txt index 72a4de18..6a58a012 100644 --- a/mibs/P-BRIDGE-MIB.txt +++ b/mibs/P-BRIDGE-MIB.txt @@ -195,8 +195,7 @@ dot1dTrafficClassesEnabled OBJECT-TYPE operates with a single priority level for all traffic. The value of this object MUST be retained across - reinitializations of the management system. - --IPI Comments: Not Supported" + reinitializations of the management system." DEFVAL { true } @@ -220,8 +219,7 @@ dot1dGmrpStatus OBJECT-TYPE machines on all ports. The value of this object MUST be retained across - reinitializations of the management system. - --IPI Comments: Not Supported" + reinitializations of the management system." DEFVAL { enabled } ::= { dot1dExtBase 3 } @@ -334,8 +332,7 @@ dot1dPortDefaultUserPriority OBJECT-TYPE support native User Priority. The value of this object MUST be retained across - reinitializations of the management system. - --IPI Comments: Not Supported" + reinitializations of the management system." ::= { dot1dPortPriorityEntry 1 } dot1dPortNumTrafficClasses OBJECT-TYPE @@ -347,8 +344,7 @@ dot1dPortNumTrafficClasses OBJECT-TYPE port. This object may optionally be read-only. The value of this object MUST be retained across - reinitializations of the management system. - --IPI Comments: Not Supported" + reinitializations of the management system." ::= { dot1dPortPriorityEntry 2 } -- ------------------------------------------------------------- @@ -396,8 +392,7 @@ dot1dUserPriority OBJECT-TYPE MAX-ACCESS not-accessible STATUS current DESCRIPTION - "The User Priority for a frame received on this port. - --IPI Comments: Not Supported" + "The User Priority for a frame received on this port." ::= { dot1dUserPriorityRegenEntry 1 } dot1dRegenUserPriority OBJECT-TYPE @@ -412,8 +407,7 @@ dot1dRegenUserPriority OBJECT-TYPE Priority is mapped to for this port. The value of this object MUST be retained across - reinitializations of the management system. - --IPI Comments: Not Supported" + reinitializations of the management system." ::= { dot1dUserPriorityRegenEntry 2 } -- ------------------------------------------------------------- @@ -467,8 +461,7 @@ dot1dTrafficClassPriority OBJECT-TYPE For untagged frames received from non-Ethernet media, this value is equal to the dot1dRegenUserPriority value - for the ingress port and media-specific user priority. - --IPI Comments: Not Supported" + for the ingress port and media-specific user priority." ::= { dot1dTrafficClassEntry 1 } dot1dTrafficClass OBJECT-TYPE @@ -479,8 +472,7 @@ dot1dTrafficClass OBJECT-TYPE "The Traffic Class the received frame is mapped to. The value of this object MUST be retained across - reinitializations of the management system. - --IPI Comments: Not Supported" + reinitializations of the management system." ::= { dot1dTrafficClassEntry 2 } -- ------------------------------------------------------------- @@ -524,8 +516,7 @@ dot1dPortOutboundAccessPriority OBJECT-TYPE STATUS current DESCRIPTION "The Outbound Access Priority the received frame is - mapped to. - --IPI Comments: Not Supported" + mapped to." ::= { dot1dPortOutboundAccessPriorityEntry 1 } -- ------------------------------------------------------------- @@ -574,8 +565,7 @@ dot1dPortGarpJoinTime OBJECT-TYPE "The GARP Join time, in centiseconds. The value of this object MUST be retained across - reinitializations of the management system. - --IPI Comments: Not Supported" + reinitializations of the management system." DEFVAL { 20 } ::= { dot1dPortGarpEntry 1 } @@ -587,8 +577,7 @@ dot1dPortGarpLeaveTime OBJECT-TYPE "The GARP Leave time, in centiseconds. The value of this object MUST be retained across - reinitializations of the management system. - --IPI Comments: Not Supported" + reinitializations of the management system." DEFVAL { 60 } ::= { dot1dPortGarpEntry 2 } @@ -600,8 +589,7 @@ dot1dPortGarpLeaveAllTime OBJECT-TYPE "The GARP LeaveAll time, in centiseconds. The value of this object MUST be retained across - reinitializations of the management system. - --IPI Comments: Not Supported" + reinitializations of the management system." DEFVAL { 1000 } ::= { dot1dPortGarpEntry 3 } @@ -661,8 +649,7 @@ dot1dPortGmrpStatus OBJECT-TYPE cause a reset of all GMRP state machines on this port. The value of this object MUST be retained across - reinitializations of the management system. - --IPI Comments: Not Supported" + reinitializations of the management system." DEFVAL { enabled } ::= { dot1dPortGmrpEntry 1 } @@ -675,8 +662,7 @@ dot1dPortGmrpFailedRegistrations OBJECT-TYPE STATUS current DESCRIPTION "The total number of failed GMRP registrations, for any - reason, in all VLANs, on this port. - --IPI Comments: Not Supported" + reason, in all VLANs, on this port." ::= { dot1dPortGmrpEntry 2 } dot1dPortGmrpLastPduOrigin OBJECT-TYPE @@ -685,8 +671,7 @@ dot1dPortGmrpLastPduOrigin OBJECT-TYPE STATUS current DESCRIPTION "The Source MAC Address of the last GMRP message - received on this port. - --IPI Comments: Not Supported" + received on this port." ::= { dot1dPortGmrpEntry 3 } dot1dPortRestrictedGroupRegistration OBJECT-TYPE @@ -897,8 +882,7 @@ pBridgeExtCapGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects indicating the optional - capabilities of the device. - --IPI Comments: Not Supported" + capabilities of the device." ::= { pBridgeGroups 1 } pBridgeDeviceGmrpGroup OBJECT-GROUP @@ -908,8 +892,7 @@ pBridgeDeviceGmrpGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing device-level control - for the Multicast Filtering extended bridge services. - --IPI Comments: Not Supported" + for the Multicast Filtering extended bridge services." ::= { pBridgeGroups 2 } pBridgeDevicePriorityGroup OBJECT-GROUP @@ -919,8 +902,7 @@ pBridgeDevicePriorityGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing device-level control - for the Priority services. - --IPI Comments: Not Supported" + for the Priority services." ::= { pBridgeGroups 3 } pBridgeDefaultPriorityGroup OBJECT-GROUP @@ -934,8 +916,7 @@ pBridgeDefaultPriorityGroup OBJECT-GROUP "A collection of objects defining the User Priority applicable to each port for media that do not support - native User Priority. - --IPI Comments: Not Supported" + native User Priority." ::= { pBridgeGroups 4 } pBridgeRegenPriorityGroup OBJECT-GROUP @@ -946,8 +927,7 @@ pBridgeRegenPriorityGroup OBJECT-GROUP DESCRIPTION "A collection of objects defining the User Priorities applicable to each port for media that support native - User Priority. - --IPI Comments: Not Supported" + User Priority." ::= { pBridgeGroups 5 } pBridgePriorityGroup OBJECT-GROUP @@ -958,8 +938,7 @@ pBridgePriorityGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects defining the traffic classes - within a bridge for each evaluated User Priority. - --IPI Comments: Not Supported" + within a bridge for each evaluated User Priority." ::= { pBridgeGroups 6 } pBridgeAccessPriorityGroup OBJECT-GROUP @@ -969,8 +948,7 @@ pBridgeAccessPriorityGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects defining the media-dependent - outbound access level for each priority. - --IPI Comments: Not Supported" + outbound access level for each priority." ::= { pBridgeGroups 7 } pBridgePortGarpGroup OBJECT-GROUP @@ -982,8 +960,7 @@ pBridgePortGarpGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing port level control - and status information for GARP operation. - --IPI Comments: Not Supported" + and status information for GARP operation." ::= { pBridgeGroups 8 } @@ -997,8 +974,7 @@ pBridgePortGmrpGroup OBJECT-GROUP STATUS deprecated DESCRIPTION "A collection of objects providing port level control - and status information for GMRP operation. - --IPI Comments: Not Supported" + and status information for GMRP operation." ::= { pBridgeGroups 9 } pBridgeHCPortGroup OBJECT-GROUP @@ -1010,8 +986,7 @@ pBridgeHCPortGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing 64-bit statistics - counters for high-capacity bridge ports. - --IPI Comments: Not Supported" + counters for high-capacity bridge ports." ::= { pBridgeGroups 10 } pBridgePortOverflowGroup OBJECT-GROUP @@ -1023,8 +998,7 @@ pBridgePortOverflowGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing overflow statistics - counters for high-capacity bridge ports. - --IPI Comments: Not Supported" + counters for high-capacity bridge ports." ::= { pBridgeGroups 11 } pBridgePortGmrpGroup2 OBJECT-GROUP @@ -1037,8 +1011,7 @@ pBridgePortGmrpGroup2 OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing port level control - and status information for GMRP operation. - --IPI Comments: Not Supported" + and status information for GMRP operation." ::= { pBridgeGroups 12 } @@ -1051,8 +1024,7 @@ pBridgeCompliance MODULE-COMPLIANCE STATUS deprecated DESCRIPTION "The compliance statement for device support of Priority - and Multicast Filtering extended bridging services. - --IPI Comments: Not Supported" + and Multicast Filtering extended bridging services." MODULE MANDATORY-GROUPS { pBridgeExtCapGroup } @@ -1150,8 +1122,7 @@ pBridgeCompliance2 MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for device support of Priority - and Multicast Filtering extended bridging services. - --IPI Comments: Not Supported" + and Multicast Filtering extended bridging services." MODULE MANDATORY-GROUPS { pBridgeExtCapGroup } diff --git a/mibs/Q-BRIDGE-MIB.txt b/mibs/Q-BRIDGE-MIB.txt index 16aad75a..1eac823d 100644 --- a/mibs/Q-BRIDGE-MIB.txt +++ b/mibs/Q-BRIDGE-MIB.txt @@ -195,7 +195,7 @@ dot1qGvrpStatus OBJECT-TYPE forwarded transparently. This object affects all GVRP Applicant and Registrar state machines. A transition from disabled(2) to enabled(1) will cause a reset of all - GVRP state machines on all ports." --- IPI Comments: Not Supported + GVRP state machines on all ports." DEFVAL { enabled } ::= { dot1qBase 5 } @@ -224,7 +224,7 @@ dot1qFdbEntry OBJECT-TYPE STATUS current DESCRIPTION "Information about a specific Filtering Database." - INDEX { dot1qFdbId } ----IPI Comments: Not Supported + INDEX { dot1qFdbId } ::= { dot1qFdbTable 1 } Dot1qFdbEntry ::= @@ -283,7 +283,7 @@ dot1qTpFdbEntry OBJECT-TYPE "Information about a specific unicast MAC address for which the device has some forwarding and/or filtering information." - INDEX { dot1qFdbId, dot1qTpFdbAddress } -- IPI Comments: Not Supported + INDEX { dot1qFdbId, dot1qTpFdbAddress } ::= { dot1qTpFdbTable 1 } Dot1qTpFdbEntry ::= @@ -387,7 +387,7 @@ dot1qTpGroupEntry OBJECT-TYPE a specific Group destination address, are allowed to be forwarded. The subset of these ports learnt dynamically is also provided." - INDEX { dot1qVlanIndex, dot1qTpGroupAddress } --- IPI Comments: Not Supported + INDEX { dot1qVlanIndex, dot1qTpGroupAddress } ::= { dot1qTpGroupTable 1 } Dot1qTpGroupEntry ::= @@ -418,7 +418,7 @@ dot1qTpGroupEgressPorts OBJECT-TYPE frames destined for this Group MAC address are currently being explicitly forwarded. This does not include ports for which this address is only implicitly forwarded, in - the dot1qForwardAllPorts list." --- IPI Comments: Not Supported + the dot1qForwardAllPorts list." ::= { dot1qTpGroupEntry 2 } dot1qTpGroupLearnt OBJECT-TYPE @@ -428,7 +428,7 @@ dot1qTpGroupLearnt OBJECT-TYPE DESCRIPTION "The subset of ports in dot1qTpGroupEgressPorts which were learnt by GMRP or some other dynamic mechanism, in - this Filtering database." --- IPI Comments: Not Supported + this Filtering database." ::= { dot1qTpGroupEntry 3 } -- ------------------------------------------------------------- @@ -500,7 +500,7 @@ dot1qForwardAllStaticPorts OBJECT-TYPE set of ports in dot1qForwardAllForbiddenPorts. The default value is a string of ones of appropriate length, to indicate standard non-EFS behaviour, i.e. forward - all multicasts to all ports." -- IPI Comments: Not Supported + all multicasts to all ports." ::= { dot1qForwardAllEntry 2 } dot1qForwardAllForbiddenPorts OBJECT-TYPE @@ -515,7 +515,7 @@ dot1qForwardAllForbiddenPorts OBJECT-TYPE reset. A port may not be added in this set if it is already a member of the set of ports in dot1qForwardAllStaticPorts. The default value is a - string of zeros of appropriate length." --- IPI Comments: Not Supported + string of zeros of appropriate length." ::= { dot1qForwardAllEntry 3 } dot1qForwardUnregisteredTable OBJECT-TYPE @@ -567,7 +567,7 @@ dot1qForwardUnregisteredPorts OBJECT-TYPE more specific forwarding information will be forwarded. This includes ports for which this need has been determined dynamically by GMRP, or configured statically - by management." IPI Comments: Not Supported + by management." ::= { dot1qForwardUnregisteredEntry 1 } dot1qForwardUnregisteredStaticPorts OBJECT-TYPE @@ -586,7 +586,7 @@ dot1qForwardUnregisteredStaticPorts OBJECT-TYPE of ports in dot1qForwardUnregisteredForbiddenPorts. The default value is a string of zeros of appropriate length, although this has no effect with the default - value of dot1qForwardAllStaticPorts." --- IPI Comments: Not Supported + value of dot1qForwardAllStaticPorts." ::= { dot1qForwardUnregisteredEntry 2 } dot1qForwardUnregisteredForbiddenPorts OBJECT-TYPE @@ -601,7 +601,7 @@ dot1qForwardUnregisteredForbiddenPorts OBJECT-TYPE the device is reset. A port may not be added in this set if it is already a member of the set of ports in dot1qForwardUnregisteredStaticPorts. The default value - is a string of zeros of appropriate length." --- IPI Comments: Not Supported + is a string of zeros of appropriate length." ::= { dot1qForwardUnregisteredEntry 3 } -- ------------------------------------------------------------- @@ -666,7 +666,7 @@ dot1qStaticUnicastAddress OBJECT-TYPE DESCRIPTION "The destination MAC address in a frame to which this entry's filtering information applies. This object must - take the value of a unicast address." --- IPI Comments: Not Supported + take the value of a unicast address." ::= { dot1qStaticUnicastEntry 1 } dot1qStaticUnicastReceivePort OBJECT-TYPE @@ -678,7 +678,7 @@ dot1qStaticUnicastReceivePort OBJECT-TYPE from which a frame must be received in order for this entry's filtering information to apply. A value of zero indicates that this entry applies on all ports of the - device for which there is no other applicable entry." --- IPI Comments: Not Supported + device for which there is no other applicable entry." ::= { dot1qStaticUnicastEntry 2 } dot1qStaticUnicastAllowedToGoTo OBJECT-TYPE @@ -696,7 +696,7 @@ dot1qStaticUnicastAllowedToGoTo OBJECT-TYPE the port the address has been seen on. This only applies to ports that are members of the VLAN, defined by dot1qVlanCurrentEgressPorts. The default value of - this object is a string of ones of appropriate length." --- IPI Comments: Not Supported + this object is a string of ones of appropriate length." REFERENCE "IEEE 802.1Q/D11 Table 8-5, ISO/IEC 15802-3 Table 7-5" ::= { dot1qStaticUnicastEntry 3 } @@ -726,7 +726,7 @@ dot1qStaticUnicastStatus OBJECT-TYPE reset of the bridge. deleteOnTimeout(5) - this entry is currently in - use and will remain so until it is aged out." --- IPI Comments: Not Supported + use and will remain so until it is aged out." DEFVAL { permanent } ::= { dot1qStaticUnicastEntry 4 } @@ -790,7 +790,7 @@ dot1qStaticMulticastAddress OBJECT-TYPE DESCRIPTION "The destination MAC address in a frame to which this entry's filtering information applies. This object must - take the value of a Multicast or Broadcast address." --- IPI Comments: Not Supported + take the value of a Multicast or Broadcast address." ::= { dot1qStaticMulticastEntry 1 } dot1qStaticMulticastReceivePort OBJECT-TYPE @@ -802,7 +802,7 @@ dot1qStaticMulticastReceivePort OBJECT-TYPE from which a frame must be received in order for this entry's filtering information to apply. A value of zero indicates that this entry applies on all ports of the - device for which there is no other applicable entry." --- IPI Comments: Not Supported + device for which there is no other applicable entry." ::= { dot1qStaticMulticastEntry 2 } dot1qStaticMulticastStaticEgressPorts OBJECT-TYPE @@ -817,7 +817,7 @@ dot1qStaticMulticastStaticEgressPorts OBJECT-TYPE be added in this set if it is already a member of the set of ports in dot1qStaticMulticastForbiddenEgressPorts. The default value of this object is a string of ones of - appropriate length." --- IPI Comments: Not Supported + appropriate length." ::= { dot1qStaticMulticastEntry 3 } dot1qStaticMulticastForbiddenEgressPorts OBJECT-TYPE @@ -832,7 +832,7 @@ dot1qStaticMulticastForbiddenEgressPorts OBJECT-TYPE not be added in this set if it is already a member of the set of ports in dot1qStaticMulticastStaticEgressPorts. The default value of this object is a string of zeros of - appropriate length." --- IPI Comments: Not Supported + appropriate length." ::= { dot1qStaticMulticastEntry 4 } dot1qStaticMulticastStatus OBJECT-TYPE @@ -854,13 +854,13 @@ dot1qStaticMulticastStatus OBJECT-TYPE removes the corresponding entry. permanent(3) - this entry is currently in use and will remain so after the next reset of - the bridge. + the bridge. deleteOnReset(4) - this entry is currently in use and will remain so until the next reset of the bridge. deleteOnTimeout(5) - this entry is currently in - use and will remain so until it is aged out." --- IPI Comments: Not Supported + use and will remain so until it is aged out." DEFVAL { permanent } ::= { dot1qStaticMulticastEntry 5 } @@ -925,7 +925,7 @@ dot1qVlanTimeMark OBJECT-TYPE STATUS current DESCRIPTION "A TimeFilter for this entry. See the TimeFilter - textual convention to see how this works." --- IPI Comments: Not Supported + textual convention to see how this works." ::= { dot1qVlanCurrentEntry 1 } dot1qVlanIndex OBJECT-TYPE @@ -933,8 +933,8 @@ dot1qVlanIndex OBJECT-TYPE MAX-ACCESS not-accessible STATUS current DESCRIPTION - "The VLAN-ID or other identifier refering to this VLAN." --- IPI Comments: Not Supported - ::= { dot1qVlanCurrentEntry 2 } + "The VLAN-ID or other identifier refering to this VLAN." + ::= { dot1qVlanCurrentEntry 2 } dot1qVlanFdbId OBJECT-TYPE SYNTAX Unsigned32 @@ -1249,7 +1249,7 @@ dot1qPortGvrpStatus OBJECT-TYPE ports. This object affects all GVRP Applicant and Registrar state machines on this port. A transition from disabled(2) to enabled(1) will cause a reset of all - GVRP state machines on this port." --- IPI Comments: Not Supported + GVRP state machines on this port." DEFVAL { enabled } ::= { dot1qPortVlanEntry 4 } @@ -1259,7 +1259,7 @@ dot1qPortGvrpFailedRegistrations OBJECT-TYPE STATUS current DESCRIPTION "The total number of failed GVRP registrations, for any - reason, on this port." --- IPI Comments: Not Supported + reason, on this port." ::= { dot1qPortVlanEntry 5 } dot1qPortGvrpLastPduOrigin OBJECT-TYPE @@ -1268,7 +1268,7 @@ dot1qPortGvrpLastPduOrigin OBJECT-TYPE STATUS current DESCRIPTION "The Source MAC Address of the last GVRP message - received on this port." --- IPI Comments: Not Supported + received on this port." ::= { dot1qPortVlanEntry 6 } -- ------------------------------------------------------------- @@ -1544,7 +1544,7 @@ dot1qConstraintType OBJECT-TYPE dot1qConstraintSet. shared(2) - the VLAN, dot1qConstraintVlan, shares the same filtering database as all other VLANs - in the same set, defined by dot1qConstraintSet." --- IPI Comments: Not Supported + in the same set, defined by dot1qConstraintSet." ::= { dot1qLearningConstraintsEntry 3 } dot1qConstraintStatus OBJECT-TYPE @@ -1562,7 +1562,7 @@ dot1qConstraintSetDefault OBJECT-TYPE DESCRIPTION "The identity of the constraint set to which a VLAN belongs, if there is not an explicit entry for that VLAN - in dot1qLearningConstraintsTable." --- IPI Comments: Not Supported + in dot1qLearningConstraintsTable." ::= { dot1qVlan 9 } dot1qConstraintTypeDefault OBJECT-TYPE diff --git a/mibs/RFC-1724-RIPV2-MIB.txt b/mibs/RFC-1724-RIPV2-MIB.txt new file mode 100644 index 00000000..b0c56b70 --- /dev/null +++ b/mibs/RFC-1724-RIPV2-MIB.txt @@ -0,0 +1,530 @@ + RIPv2-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Counter32, + TimeTicks, IpAddress FROM SNMPv2-SMI + TEXTUAL-CONVENTION, RowStatus FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF + mib-2 FROM RFC1213-MIB; + + -- This MIB module uses the extended OBJECT-TYPE macro as + -- defined in [9]. + + rip2 MODULE-IDENTITY + LAST-UPDATED "9407272253Z" -- Wed Jul 27 22:53:04 PDT 1994 + ORGANIZATION "IETF RIP-II Working Group" + CONTACT-INFO + " Fred Baker + Postal: Cisco Systems + 519 Lado Drive + Santa Barbara, California 93111 + Tel: +1 805 681 0115 + E-Mail: fbaker@cisco.com + + Postal: Gary Malkin + Xylogics, Inc. + 53 Third Avenue + Burlington, MA 01803 + + Phone: (617) 272-8140 + EMail: gmalkin@Xylogics.COM" + DESCRIPTION + "The MIB module to describe the RIP2 Version 2 Protocol" + ::= { mib-2 23 } + + -- RIP-2 Management Information Base + + -- the RouteTag type represents the contents of the + -- Route Domain field in the packet header or route entry. + -- The use of the Route Domain is deprecated. + + RouteTag ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "the RouteTag type represents the contents of the Route Domain + field in the packet header or route entry" + SYNTAX OCTET STRING (SIZE (2)) + +--4.1 Global Counters + +-- The RIP-2 Globals Group. +-- Implementation of this group is mandatory for systems +-- which implement RIP-2. + +-- These counters are intended to facilitate debugging quickly +-- changing routes or failing neighbors + +rip2Globals OBJECT IDENTIFIER ::= { rip2 1 } + + rip2GlobalRouteChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of route changes made to the IP Route + Database by RIP. This does not include the refresh + of a route's age." + ::= { rip2Globals 1 } + + rip2GlobalQueries OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of responses sent to RIP queries + from other systems." + ::= { rip2Globals 2 } + +--4.2 RIP Interface Tables + +-- RIP Interfaces Groups +-- Implementation of these Groups is mandatory for systems +-- which implement RIP-2. + +-- The RIP Interface Status Table. + + rip2IfStatTable OBJECT-TYPE + SYNTAX SEQUENCE OF Rip2IfStatEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of subnets which require separate + status monitoring in RIP." + ::= { rip2 2 } + + rip2IfStatEntry OBJECT-TYPE + SYNTAX Rip2IfStatEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A Single Routing Domain in a single Subnet." + INDEX { rip2IfStatAddress } + ::= { rip2IfStatTable 1 } + + Rip2IfStatEntry ::= + SEQUENCE { + rip2IfStatAddress + IpAddress, + rip2IfStatRcvBadPackets + Counter32, + rip2IfStatRcvBadRoutes + Counter32, + rip2IfStatSentUpdates + Counter32, + rip2IfStatStatus + RowStatus + } + + rip2IfStatAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP Address of this system on the indicated + subnet. For unnumbered interfaces, the value 0.0.0.N, + where the least significant 24 bits (N) is the ifIndex + for the IP Interface in network byte order." + ::= { rip2IfStatEntry 1 } + + rip2IfStatRcvBadPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of RIP response packets received by + the RIP process which were subsequently discarded + for any reason (e.g. a version 0 packet, or an + unknown command type)." + ::= { rip2IfStatEntry 2 } + + rip2IfStatRcvBadRoutes OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of routes, in valid RIP packets, + which were ignored for any reason (e.g. unknown + address family, or invalid metric)." + ::= { rip2IfStatEntry 3 } + + rip2IfStatSentUpdates OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of triggered RIP updates actually + sent on this interface. This explicitly does + NOT include full updates sent containing new + information." + ::= { rip2IfStatEntry 4 } + + rip2IfStatStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Writing invalid has the effect of deleting + this interface." + ::= { rip2IfStatEntry 5 } + +-- The RIP Interface Configuration Table. + + rip2IfConfTable OBJECT-TYPE + SYNTAX SEQUENCE OF Rip2IfConfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of subnets which require separate + configuration in RIP." + ::= { rip2 3 } + + rip2IfConfEntry OBJECT-TYPE + SYNTAX Rip2IfConfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A Single Routing Domain in a single Subnet." + INDEX { rip2IfConfAddress } + ::= { rip2IfConfTable 1 } + + Rip2IfConfEntry ::= + SEQUENCE { + rip2IfConfAddress + IpAddress, + rip2IfConfDomain + RouteTag, + rip2IfConfAuthType + INTEGER, + rip2IfConfAuthKey + OCTET STRING, + rip2IfConfSend + INTEGER, + rip2IfConfReceive + INTEGER, + rip2IfConfDefaultMetric + INTEGER, + rip2IfConfStatus + RowStatus, + rip2IfConfSrcAddress + IpAddress + } + + rip2IfConfAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP Address of this system on the indicated + subnet. For unnumbered interfaces, the value 0.0.0.N, + where the least significant 24 bits (N) is the ifIndex + for the IP Interface in network byte order." + ::= { rip2IfConfEntry 1 } + + rip2IfConfDomain OBJECT-TYPE + SYNTAX RouteTag + MAX-ACCESS read-create + STATUS obsolete + DESCRIPTION + "Value inserted into the Routing Domain field + of all RIP packets sent on this interface." + DEFVAL { '0000'h } + ::= { rip2IfConfEntry 2 } + + rip2IfConfAuthType OBJECT-TYPE + SYNTAX INTEGER { + noAuthentication (1), + simplePassword (2), + md5 (3) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of Authentication used on this + interface." + DEFVAL { noAuthentication } + ::= { rip2IfConfEntry 3 } + + rip2IfConfAuthKey OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..16)) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value to be used as the Authentication Key + whenever the corresponding instance of + rip2IfConfAuthType has a value other than + noAuthentication. A modification of the corresponding + instance of rip2IfConfAuthType does not modify + the rip2IfConfAuthKey value. If a string shorter + than 16 octets is supplied, it will be left- + justified and padded to 16 octets, on the right, + with nulls (0x00). + + Reading this object always results in an OCTET + STRING of length zero; authentication may not + be bypassed by reading the MIB object." + DEFVAL { ''h } + ::= { rip2IfConfEntry 4 } + + rip2IfConfSend OBJECT-TYPE + SYNTAX INTEGER { + doNotSend (1), + ripVersion1 (2), + rip1Compatible (3), + ripVersion2 (4), + ripV1Demand (5), + ripV2Demand (6) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "What the router sends on this interface. + ripVersion1 implies sending RIP updates compliant + with RFC 1058. rip1Compatible implies + broadcasting RIP-2 updates using RFC 1058 route + subsumption rules. ripVersion2 implies + multicasting RIP-2 updates. ripV1Demand indicates + the use of Demand RIP on a WAN interface under RIP + Version 1 rules. ripV2Demand indicates the use of + Demand RIP on a WAN interface under Version 2 rules." + DEFVAL { rip1Compatible } + ::= { rip2IfConfEntry 5 } + + rip2IfConfReceive OBJECT-TYPE + SYNTAX INTEGER { + rip1 (1), + rip2 (2), + rip1OrRip2 (3), + doNotRecieve (4) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This indicates which version of RIP updates + are to be accepted. Note that rip2 and + rip1OrRip2 implies reception of multicast + packets." + DEFVAL { rip1OrRip2 } + ::= { rip2IfConfEntry 6 } + + rip2IfConfDefaultMetric OBJECT-TYPE + SYNTAX INTEGER ( 0..15 ) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the metric that is to + be used for the default route entry in RIP updates + originated on this interface. A value of zero + indicates that no default route should be + originated; in this case, a default route via + another router may be propagated." + ::= { rip2IfConfEntry 7 } + + rip2IfConfStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Writing invalid has the effect of deleting + this interface." + ::= { rip2IfConfEntry 8 } + + rip2IfConfSrcAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The IP Address this system will use as a source + address on this interface. If it is a numbered + interface, this MUST be the same value as + rip2IfConfAddress. On unnumbered interfaces, + it must be the value of rip2IfConfAddress for + some interface on the system." + ::= { rip2IfConfEntry 9 } + +--4.3 Peer Table + +-- Peer Table + +-- The RIP Peer Group +-- Implementation of this Group is Optional + +-- This group provides information about active peer +-- relationships intended to assist in debugging. An +-- active peer is a router from which a valid RIP +-- updated has been heard in the last 180 seconds. + + rip2PeerTable OBJECT-TYPE + SYNTAX SEQUENCE OF Rip2PeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of RIP Peers." + ::= { rip2 4 } + + rip2PeerEntry OBJECT-TYPE + SYNTAX Rip2PeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information regarding a single routing peer." + INDEX { rip2PeerAddress, rip2PeerDomain } + ::= { rip2PeerTable 1 } + + Rip2PeerEntry ::= + SEQUENCE { + rip2PeerAddress + IpAddress, + rip2PeerDomain + RouteTag, + rip2PeerLastUpdate + TimeTicks, + rip2PeerVersion + INTEGER, + rip2PeerRcvBadPackets + Counter32, + rip2PeerRcvBadRoutes + Counter32 + } + + rip2PeerAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP Address that the peer is using as its source + address. Note that on an unnumbered link, this may + not be a member of any subnet on the system." + ::= { rip2PeerEntry 1 } + + rip2PeerDomain OBJECT-TYPE + SYNTAX RouteTag + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value in the Routing Domain field in RIP + packets received from the peer. As domain suuport + is deprecated, this must be zero." + ::= { rip2PeerEntry 2 } + + rip2PeerLastUpdate OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime when the most recent + RIP update was received from this system." + ::= { rip2PeerEntry 3 } + + rip2PeerVersion OBJECT-TYPE + SYNTAX INTEGER ( 0..255 ) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The RIP version number in the header of the + last RIP packet received." + ::= { rip2PeerEntry 4 } + + rip2PeerRcvBadPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of RIP response packets from this + peer discarded as invalid." + ::= { rip2PeerEntry 5 } + + + rip2PeerRcvBadRoutes OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of routes from this peer that were + ignored because the entry format was invalid." + ::= { rip2PeerEntry 6 } + +-- conformance information + +rip2Conformance OBJECT IDENTIFIER ::= { rip2 5 } + +rip2Groups OBJECT IDENTIFIER ::= { rip2Conformance 1 } +rip2Compliances OBJECT IDENTIFIER ::= { rip2Conformance 2 } + +-- compliance statements +rip2Compliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement " + MODULE -- this module + MANDATORY-GROUPS { + rip2GlobalGroup, + rip2IfStatGroup, + rip2IfConfGroup, + rip2PeerGroup + } + GROUP rip2GlobalGroup + DESCRIPTION + "This group defines global controls for RIP-II systems." + GROUP rip2IfStatGroup + DESCRIPTION + "This group defines interface statistics for RIP-II systems." + GROUP rip2IfConfGroup + DESCRIPTION + "This group defines interface configuration for RIP-II systems." + GROUP rip2PeerGroup + DESCRIPTION + "This group defines peer information for RIP-II systems." + ::= { rip2Compliances 1 } + +-- units of conformance + +rip2GlobalGroup OBJECT-GROUP + OBJECTS { + rip2GlobalRouteChanges, + rip2GlobalQueries + } + STATUS current + DESCRIPTION + "This group defines global controls for RIP-II systems." + ::= { rip2Groups 1 } +rip2IfStatGroup OBJECT-GROUP + OBJECTS { + rip2IfStatAddress, + rip2IfStatRcvBadPackets, + rip2IfStatRcvBadRoutes, + rip2IfStatSentUpdates, + rip2IfStatStatus + } + STATUS current + DESCRIPTION + "This group defines interface statistics for RIP-II systems." + ::= { rip2Groups 2 } +rip2IfConfGroup OBJECT-GROUP + OBJECTS { + rip2IfConfAddress, + rip2IfConfAuthType, + rip2IfConfAuthKey, + rip2IfConfSend, + rip2IfConfReceive, + rip2IfConfDefaultMetric, + rip2IfConfStatus, + rip2IfConfSrcAddress + } + STATUS current + DESCRIPTION + "This group defines interface configuration for RIP-II systems." + ::= { rip2Groups 3 } +rip2PeerGroup OBJECT-GROUP + OBJECTS { + rip2PeerAddress, + rip2PeerDomain, + rip2PeerLastUpdate, + rip2PeerVersion, + rip2PeerRcvBadPackets, + rip2PeerRcvBadRoutes + } + STATUS current + DESCRIPTION + "This group defines peer information for RIP-II systems." + ::= { rip2Groups 4 } +END \ No newline at end of file diff --git a/mibs/RFC-3812-MPLS-TE-STD-MIB.txt b/mibs/RFC-3812-MPLS-TE-STD-MIB.txt new file mode 100644 index 00000000..5d6f0e38 --- /dev/null +++ b/mibs/RFC-3812-MPLS-TE-STD-MIB.txt @@ -0,0 +1,2631 @@ +MPLS-TE-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, + Integer32, Unsigned32, Counter32, Counter64, TimeTicks, + zeroDotZero + FROM SNMPv2-SMI -- [RFC2578] + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF -- [RFC2580] + TruthValue, RowStatus, RowPointer, StorageType, + TimeStamp + FROM SNMPv2-TC -- [RFC2579] + InterfaceIndexOrZero, ifGeneralInformationGroup, + + + + ifCounterDiscontinuityGroup + FROM IF-MIB -- [RFC2863] + mplsStdMIB, MplsBitRate, MplsBurstSize, MplsLSPID, + MplsTunnelIndex, MplsTunnelInstanceIndex, + MplsTunnelAffinity, MplsExtendedTunnelId, MplsPathIndex, + MplsPathIndexOrZero, MplsOwner, TeHopAddressType, + TeHopAddress, TeHopAddressAS, TeHopAddressUnnum + FROM MPLS-TC-STD-MIB -- [RFC3811] + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB -- [RFC3411] + IndexIntegerNextFree + FROM DIFFSERV-MIB -- [RFC3289] + InetAddressPrefixLength + FROM INET-ADDRESS-MIB -- [RFC3291] + ; + +mplsTeStdMIB MODULE-IDENTITY + LAST-UPDATED + "200406030000Z" -- June 3, 2004 + ORGANIZATION + "Multiprotocol Label Switching (MPLS) Working Group" + CONTACT-INFO + " Cheenu Srinivasan + Bloomberg L.P. + Email: cheenu@bloomberg.net + + Arun Viswanathan + Force10 Networks, Inc. + Email: arunv@force10networks.com + + Thomas D. Nadeau + Cisco Systems, Inc. + Email: tnadeau@cisco.com + + Comments about this document should be emailed + directly to the MPLS working group mailing list at + mpls@uu.net." + DESCRIPTION + "Copyright (C) The Internet Society (2004). The + initial version of this MIB module was published + in RFC 3812. For full legal notices see the RFC + itself or see: http://www.ietf.org/copyrights/ianamib.html + + This MIB module contains managed object definitions + for MPLS Traffic Engineering (TE) as defined in: + 1. Extensions to RSVP for LSP Tunnels, Awduche et + al, RFC 3209, December 2001 + 2. Constraint-Based LSP Setup using LDP, Jamoussi + + + + (Editor), RFC 3212, January 2002 + 3. Requirements for Traffic Engineering Over MPLS, + Awduche, D., Malcolm, J., Agogbua, J., O'Dell, M., + and J. McManus, [RFC2702], September 1999" + + -- Revision history. + + REVISION + "200406030000Z" -- June 3, 2004 + DESCRIPTION + "Initial version issued as part of RFC 3812." + + ::= { mplsStdMIB 3 } + +-- Top level components of this MIB module. + +-- traps +mplsTeNotifications OBJECT IDENTIFIER ::= { mplsTeStdMIB 0 } +-- tables, scalars +mplsTeScalars OBJECT IDENTIFIER ::= { mplsTeStdMIB 1 } +mplsTeObjects OBJECT IDENTIFIER ::= { mplsTeStdMIB 2 } +-- conformance +mplsTeConformance OBJECT IDENTIFIER ::= { mplsTeStdMIB 3 } + + +-- MPLS Tunnel scalars. + +mplsTunnelConfigured OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of tunnels configured on this device. A + tunnel is considered configured if the + mplsTunnelRowStatus is active(1)." --- IPI Comments : SNMP SET is not supported + ::= { mplsTeScalars 1 } + +mplsTunnelActive OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of tunnels active on this device. A + tunnel is considered active if the + mplsTunnelOperStatus is up(1)." --- IPI Comments : SNMP SET is not supported + ::= { mplsTeScalars 2 } + +mplsTunnelTEDistProto OBJECT-TYPE + + + + SYNTAX BITS { + other (0), + ospf (1), + isis (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The traffic engineering distribution protocol(s) + used by this LSR. Note that an LSR may support more + than one distribution protocol simultaneously." --- IPI Comments : SNMP SET is not supported + ::= { mplsTeScalars 3 } + +mplsTunnelMaxHops OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The maximum number of hops that can be specified for + a tunnel on this device." --- IPI Comments : SNMP SET is not supported + ::= { mplsTeScalars 4 } + +mplsTunnelNotificationMaxRate OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This variable indicates the maximum number of + notifications issued per second. If events occur + more rapidly, the implementation may simply fail to + emit these notifications during that period, or may + queue them until an appropriate time. A value of 0 + means no throttling is applied and events may be + notified at the rate at which they occur." --- IPI Comments : SNMP SET is not supported + DEFVAL { 0 } + ::= { mplsTeScalars 5 } + +-- End of MPLS Tunnel scalars. + + +-- MPLS tunnel table. + +mplsTunnelIndexNext OBJECT-TYPE + SYNTAX IndexIntegerNextFree (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains an unused value for + + + + mplsTunnelIndex, or a zero to indicate + that none exist. Negative values are not allowed, + as they do not correspond to valid values of + mplsTunnelIndex. + + Note that this object offers an unused value + for an mplsTunnelIndex value at the ingress + side of a tunnel. At other LSRs the value + of mplsTunnelIndex SHOULD be taken from the + value signaled by the MPLS signaling protocol. + " --- IPI Comments : SNMP SET is Not supported. + ::= { mplsTeObjects 1 } + +mplsTunnelTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelTable allows new MPLS tunnels to be + created between an LSR and a remote endpoint, and + existing tunnels to be reconfigured or removed. + Note that only point-to-point tunnel segments are + supported, although multipoint-to-point and point- + to-multipoint connections are supported by an LSR + acting as a cross-connect. Each MPLS tunnel can + thus have one out-segment originating at this LSR + and/or one in-segment terminating at this LSR." + ::= { mplsTeObjects 2 } + +mplsTunnelEntry OBJECT-TYPE + SYNTAX MplsTunnelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents an MPLS tunnel. + An entry can be created by a network administrator + or by an SNMP agent as instructed by an MPLS + signalling protocol. Whenever a new entry is + created with mplsTunnelIsIf set to true(1), then a + corresponding entry is created in ifTable as well + (see RFC 2863). The ifType of this entry is + mplsTunnel(150). + + A tunnel entry needs to be uniquely identified across + a MPLS network. Indices mplsTunnelIndex and + mplsTunnelInstance uniquely identify a tunnel on + the LSR originating the tunnel. To uniquely + identify a tunnel across an MPLS network requires + + + + index mplsTunnelIngressLSRId. The last index + mplsTunnelEgressLSRId is useful in identifying all + instances of a tunnel that terminate on the same + egress LSR." + REFERENCE + "1. RFC 2863 - The Interfaces Group MIB, McCloghrie, + K., and F. Kastenholtz, June 2000 " + INDEX { mplsTunnelIndex, + mplsTunnelInstance, + mplsTunnelIngressLSRId, + mplsTunnelEgressLSRId + } + ::= { mplsTunnelTable 1 } + +MplsTunnelEntry ::= SEQUENCE { + mplsTunnelIndex MplsTunnelIndex, + mplsTunnelInstance MplsTunnelInstanceIndex, + mplsTunnelIngressLSRId MplsExtendedTunnelId, + mplsTunnelEgressLSRId MplsExtendedTunnelId, + mplsTunnelName SnmpAdminString, + mplsTunnelDescr SnmpAdminString, + mplsTunnelIsIf TruthValue, + mplsTunnelIfIndex InterfaceIndexOrZero, + mplsTunnelOwner MplsOwner, + mplsTunnelRole INTEGER, + mplsTunnelXCPointer RowPointer, + mplsTunnelSignallingProto INTEGER, + mplsTunnelSetupPrio Integer32, + mplsTunnelHoldingPrio Integer32, + mplsTunnelSessionAttributes BITS, + mplsTunnelLocalProtectInUse TruthValue, + mplsTunnelResourcePointer RowPointer, + mplsTunnelPrimaryInstance MplsTunnelInstanceIndex, + mplsTunnelInstancePriority Unsigned32, + mplsTunnelHopTableIndex MplsPathIndexOrZero, + mplsTunnelPathInUse MplsPathIndexOrZero, + mplsTunnelARHopTableIndex MplsPathIndexOrZero, + mplsTunnelCHopTableIndex MplsPathIndexOrZero, + mplsTunnelIncludeAnyAffinity MplsTunnelAffinity, + mplsTunnelIncludeAllAffinity MplsTunnelAffinity, + mplsTunnelExcludeAnyAffinity MplsTunnelAffinity, + mplsTunnelTotalUpTime TimeTicks, + mplsTunnelInstanceUpTime TimeTicks, + mplsTunnelPrimaryUpTime TimeTicks, + mplsTunnelPathChanges Counter32, + mplsTunnelLastPathChange TimeTicks, + mplsTunnelCreationTime TimeStamp, + mplsTunnelStateTransitions Counter32, + + + + mplsTunnelAdminStatus INTEGER, + mplsTunnelOperStatus INTEGER, + mplsTunnelRowStatus RowStatus, + mplsTunnelStorageType StorageType + } + +mplsTunnelIndex OBJECT-TYPE + SYNTAX MplsTunnelIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Uniquely identifies a set of tunnel instances + between a pair of ingress and egress LSRs. + Managers should obtain new values for row + creation in this table by reading + mplsTunnelIndexNext. When + the MPLS signalling protocol is rsvp(2) this value + SHOULD be equal to the value signaled in the + Tunnel Id of the Session object. When the MPLS + signalling protocol is crldp(3) this value + SHOULD be equal to the value signaled in the + LSP ID." + ::= { mplsTunnelEntry 1 } + +mplsTunnelInstance OBJECT-TYPE + SYNTAX MplsTunnelInstanceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Uniquely identifies a particular instance of a + tunnel between a pair of ingress and egress LSRs. + It is useful to identify multiple instances of + tunnels for the purposes of backup and parallel + tunnels. When the MPLS signaling protocol is + rsvp(2) this value SHOULD be equal to the LSP Id + of the Sender Template object. When the signaling + protocol is crldp(3) there is no equivalent + signaling object." --- IPI Comments : Not supported. + ::= { mplsTunnelEntry 2 } + +mplsTunnelIngressLSRId OBJECT-TYPE + SYNTAX MplsExtendedTunnelId + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Identity of the ingress LSR associated with this + tunnel instance. When the MPLS signalling protocol + is rsvp(2) this value SHOULD be equal to the Tunnel + + + + Sender Address in the Sender Template object and MAY + be equal to the Extended Tunnel Id field in the + SESSION object. When the MPLS signalling protocol is + crldp(3) this value SHOULD be equal to the Ingress + LSR Router ID field in the LSPID TLV object." --- IPI Comments : Not supported. + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001 + 2. Constraint-Based LSP Setup using LDP, Jamoussi + (Editor), RFC 3212, January 2002" + ::= { mplsTunnelEntry 3 } + +mplsTunnelEgressLSRId OBJECT-TYPE + SYNTAX MplsExtendedTunnelId + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Identity of the egress LSR associated with this + tunnel instance." --- IPI Comments : Not supported. + ::= { mplsTunnelEntry 4 } + +mplsTunnelName OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The canonical name assigned to the tunnel. This name + can be used to refer to the tunnel on the LSR's + console port. If mplsTunnelIsIf is set to true + then the ifName of the interface corresponding to + this tunnel should have a value equal to + mplsTunnelName. Also see the description of ifName + in RFC 2863." + REFERENCE + "RFC 2863 - The Interfaces Group MIB, McCloghrie, K., + and F. Kastenholtz, June 2000" + DEFVAL {""} + ::= { mplsTunnelEntry 5 } + +mplsTunnelDescr OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A textual string containing information about the + tunnel. If there is no description this object + contains a zero length string. This object is may + not be signaled by MPLS signaling protocols, + + + + consequentally the value of this object at transit + and egress LSRs MAY be automatically generated or + absent." + DEFVAL {""} + ::= { mplsTunnelEntry 6 } + +mplsTunnelIsIf OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Denotes whether or not this tunnel corresponds to an + interface represented in the interfaces group + table. Note that if this variable is set to true + then the ifName of the interface corresponding to + this tunnel should have a value equal to + mplsTunnelName. Also see the description of ifName + in RFC 2863. This object is meaningful only at the + ingress and egress LSRs." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC 2863 - The Interfaces Group MIB, McCloghrie, K., + and F. Kastenholtz, June 2000" + DEFVAL { false } + ::= { mplsTunnelEntry 7 } + +mplsTunnelIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelIsIf is set to true, then this value + contains the LSR-assigned ifIndex which corresponds + to an entry in the interfaces table. Otherwise + this variable should contain the value of zero + indicating that a valid ifIndex was not assigned to + this tunnel interface." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC 2863 - The Interfaces Group MIB, McCloghrie, K., + and F. Kastenholtz, June 2000" + DEFVAL { 0 } + ::= { mplsTunnelEntry 8 } + +mplsTunnelOwner OBJECT-TYPE + SYNTAX MplsOwner + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Denotes the entity that created and is responsible + + + + for managing this tunnel. This column is + automatically filled by the agent on creation of a + row." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelEntry 9 } + +mplsTunnelRole OBJECT-TYPE + SYNTAX INTEGER { head(1), + transit(2), + tail(3), + headTail(4) } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value signifies the role that this tunnel + entry/instance represents. This value MUST be set + to head(1) at the originating point of the tunnel. + This value MUST be set to transit(2) at transit + points along the tunnel, if transit points are + supported. This value MUST be set to tail(3) at the + terminating point of the tunnel if tunnel tails are + supported. + + The value headTail(4) is provided for tunnels that + begin and end on the same LSR." --- IPI Comments : It is by default takes head(1). + DEFVAL { head } + ::= { mplsTunnelEntry 10 } + +mplsTunnelXCPointer OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable points to a row in the mplsXCTable. + This table identifies the segments that compose + this tunnel, their characteristics, and + relationships to each other. A value of zeroDotZero + indicates that no LSP has been associated with this + tunnel yet." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "Srinivasan, C., Viswanathan, A., and T. Nadeau, + Multiprotocol Label Switching (MPLS) Label Switching + Router (LSR) Management Information Base (MIB), RFC 3813, + June 2004" + DEFVAL { zeroDotZero } + ::= { mplsTunnelEntry 11 } + +mplsTunnelSignallingProto OBJECT-TYPE + SYNTAX INTEGER { + + + + none(1), + rsvp(2), + crldp(3), + other(4) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The signalling protocol, if any, used to setup this + tunnel." --- IPI Comments : It retrieves "RSVP" by default. + DEFVAL { none } + ::= { mplsTunnelEntry 12 } + +mplsTunnelSetupPrio OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates the setup priority of this tunnel." + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001 + 2. Constraint-Based LSP Setup using LDP, Jamoussi + (Editor), RFC 3212, January 2002" + DEFVAL { 0 } + ::= { mplsTunnelEntry 13 } + +mplsTunnelHoldingPrio OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates the holding priority for this tunnel." --- IPI Comments : Indicates the hold priority of this tunnel. + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001 + + 2. Constraint-Based LSP Setup using LDP, Jamoussi + (Editor), RFC 3212, January 2002" + DEFVAL { 0 } + ::= { mplsTunnelEntry 14 } + +mplsTunnelSessionAttributes OBJECT-TYPE + SYNTAX BITS { + fastReroute (0), + mergingPermitted (1), + isPersistent (2), + isPinned (3), + + + + recordRoute(4) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This bit mask indicates optional session values for + this tunnel. The following describes these bit + fields: + + fastRerouteThis flag indicates that the any tunnel + hop may choose to reroute this tunnel without + tearing it down. This flag permits transit routers + to use a local repair mechanism which may result in + violation of the explicit routing of this tunnel. + When a fault is detected on an adjacent downstream + link or node, a transit router can re-route traffic + for fast service restoration. + + mergingPermitted This flag permits transit routers + to merge this session with other RSVP sessions for + the purpose of reducing resource overhead on + downstream transit routers, thereby providing + better network scaling. + + isPersistent Indicates whether this tunnel should + be restored automatically after a failure occurs. + + isPinned This flag indicates whether the loose- + routed hops of this tunnel are to be pinned. + + recordRouteThis flag indicates whether or not the + signalling protocol should remember the tunnel path + after it has been signaled." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001." + ::= { mplsTunnelEntry 15 } + +mplsTunnelLocalProtectInUse OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates that the local repair mechanism is in use + to maintain this tunnel (usually in the face of an + outage of the link it was previously routed over)." --- IPI Comments : Indicates that the local repair mechanism is in use to maintain tunnel. + DEFVAL { false } + ::= { mplsTunnelEntry 16 } + + + +mplsTunnelResourcePointer OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable represents a pointer to the traffic + parameter specification for this tunnel. This + value may point at an entry in the + mplsTunnelResourceEntry to indicate which + mplsTunnelResourceEntry is to be assigned to this + LSP instance. This value may optionally point at + an externally defined traffic parameter + specification table. A value of zeroDotZero + indicates best-effort treatment. By having the + same value of this object, two or more LSPs can + indicate resource sharing." + DEFVAL { zeroDotZero } + ::= { mplsTunnelEntry 17 } + +mplsTunnelPrimaryInstance OBJECT-TYPE + SYNTAX MplsTunnelInstanceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the instance index of the primary instance + of this tunnel. More details of the definition of + tunnel instances and the primary tunnel instance + can be found in the description of the TEXTUAL-CONVENTION + MplsTunnelInstanceIndex." --- IPI Comments : SNMP SET is not supported. + DEFVAL { 0 } + ::= { mplsTunnelEntry 18 } + +mplsTunnelInstancePriority OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value indicates which priority, in descending + order, with 0 indicating the lowest priority, + within a group of tunnel instances. A group of + tunnel instances is defined as a set of LSPs with + the same mplsTunnelIndex in this table, but with a + different mplsTunnelInstance. Tunnel instance + priorities are used to denote the priority at which + a particular tunnel instance will supercede + another. Instances of tunnels containing the same + mplsTunnelInstancePriority will be used for load + sharing." --- IPI Comments : SNMP SET is not supported. + + + + DEFVAL { 0 } + ::= { mplsTunnelEntry 19 } + +mplsTunnelHopTableIndex OBJECT-TYPE + SYNTAX MplsPathIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Index into the mplsTunnelHopTable entry that + specifies the explicit route hops for this tunnel. + This object is meaningful only at the head-end of + the tunnel." + DEFVAL { 0 } + ::= { mplsTunnelEntry 20 } + +mplsTunnelPathInUse OBJECT-TYPE + SYNTAX MplsPathIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value denotes the configured path that was + chosen for this tunnel. This value reflects the + secondary index into mplsTunnelHopTable. This path + may not exactly match the one in + mplsTunnelARHopTable due to the fact that some CSPF + modification may have taken place. See + mplsTunnelARHopTable for the actual path being + taken by the tunnel. A value of zero denotes that + no path is currently in use or available." --- IPI Comments : SNMP SET is not supported. + DEFVAL { 0 } + ::= { mplsTunnelEntry 21 } + +mplsTunnelARHopTableIndex OBJECT-TYPE + SYNTAX MplsPathIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Index into the mplsTunnelARHopTable entry that + specifies the actual hops traversed by the tunnel. + This is automatically updated by the agent when the + actual hops becomes available." --- IPI Comments : SNMP SET is not supported. + DEFVAL { 0 } + ::= { mplsTunnelEntry 22 } + +mplsTunnelCHopTableIndex OBJECT-TYPE + SYNTAX MplsPathIndexOrZero + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "Index into the mplsTunnelCHopTable entry that + specifies the computed hops traversed by the + tunnel. This is automatically updated by the agent + when computed hops become available or when + computed hops get modified." --- IPI Comments : SNMP SET is not supported. + DEFVAL { 0 } + ::= { mplsTunnelEntry 23 } + +mplsTunnelIncludeAnyAffinity OBJECT-TYPE + SYNTAX MplsTunnelAffinity + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A link satisfies the include-any constraint if and + only if the constraint is zero, or the link and the + constraint have a resource class in common." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001." + ::= { mplsTunnelEntry 24 } + +mplsTunnelIncludeAllAffinity OBJECT-TYPE + SYNTAX MplsTunnelAffinity + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A link satisfies the include-all constraint if and + only if the link contains all of the administrative + groups specified in the constraint." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001." + ::= { mplsTunnelEntry 25 } + +mplsTunnelExcludeAnyAffinity OBJECT-TYPE + SYNTAX MplsTunnelAffinity + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A link satisfies the exclude-any constraint if and + only if the link contains none of the + administrative groups specified in the constraint." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, + Awduche et al, RFC 3209, December 2001." + DEFVAL { 0 } + ::= { mplsTunnelEntry 26 } + + + +mplsTunnelTotalUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the aggregate up time for all + instances of this tunnel, if available. If this + value is unavailable, it MUST return a value of 0." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelEntry 27 } + +mplsTunnelInstanceUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value identifies the total time that this + tunnel instance's operStatus has been Up(1)." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelEntry 28 } + +mplsTunnelPrimaryUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the total time the primary instance of + this tunnel has been active. The primary instance + of this tunnel is defined in + mplsTunnelPrimaryInstance." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelEntry 29 } + +mplsTunnelPathChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the number of times the actual path for + this tunnel instance has changed." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelEntry 30 } + +mplsTunnelLastPathChange OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the time since the last change to the + actual path for this tunnel instance." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelEntry 31 } + + + + +mplsTunnelCreationTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the value of SysUpTime when the first + instance of this tunnel came into existence. + That is, when the value of mplsTunnelOperStatus + was first set to up(1)." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelEntry 32 } + +mplsTunnelStateTransitions OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the number of times the state + (mplsTunnelOperStatus) of this tunnel instance has + changed." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelEntry 33 } + +mplsTunnelAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + -- ready to pass packets + up(1), + down(2), + -- in some test mode + testing(3) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates the desired operational status of this + tunnel." --- IPI Comments :"Indicates the desired admin status of this tunnel." + ::= { mplsTunnelEntry 34 } + +mplsTunnelOperStatus OBJECT-TYPE + SYNTAX INTEGER { + -- ready to pass packets + up(1), + down(2), + -- in some test mode + testing(3), + -- status cannot be determined + unknown(4), + dormant(5), + -- some component is missing + notPresent(6), + + + + -- down due to the state of + -- lower layer interfaces + lowerLayerDown(7) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the actual operational status of this + tunnel, which is typically but not limited to, a + function of the state of individual segments of + this tunnel." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelEntry 35 } + +mplsTunnelRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable is used to create, modify, and/or + delete a row in this table. When a row in this + table is in active(1) state, no objects in that row + can be modified by the agent except + mplsTunnelAdminStatus, mplsTunnelRowStatus and + mplsTunnelStorageType." + ::= { mplsTunnelEntry 36 } + +mplsTunnelStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The storage type for this tunnel entry. + Conceptual rows having the value 'permanent' + need not allow write-access to any columnar + objects in the row." + DEFVAL { volatile } + ::= { mplsTunnelEntry 37 } + +-- End of mplsTunnelTable + +mplsTunnelHopListIndexNext OBJECT-TYPE + SYNTAX MplsPathIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains an appropriate value to be used + for mplsTunnelHopListIndex when creating entries in + the mplsTunnelHopTable. If the number of + unassigned entries is exhausted, a retrieval + + + + operation will return a value of 0. This object + may also return a value of 0 when the LSR is unable + to accept conceptual row creation, for example, if + the mplsTunnelHopTable is implemented as read-only. + To obtain the value of mplsTunnelHopListIndex for a + new entry in the mplsTunnelHopTable, the manager + issues a management protocol retrieval operation to + obtain the current value of mplsTunnelHopIndex. + + When the SET is performed to create a row in the + mplsTunnelHopTable, the Command Responder (agent) + must determine whether the value is indeed still + unused; Two Network Management Applications may + attempt to create a row (configuration entry) + simultaneously and use the same value. If it is + currently unused, the SET succeeds and the Command + Responder (agent) changes the value of this object, + according to an implementation-specific algorithm. + If the value is in use, however, the SET fails. The + Network Management Application must then re-read + this variable to obtain a new usable value." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTeObjects 3 } + +mplsTunnelHopTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelHopTable is used to indicate the hops, + strict or loose, for an instance of an MPLS tunnel + defined in mplsTunnelTable, when it is established + via signalling, for the outgoing direction of the + tunnel. Thus at a transit LSR, this table contains + the desired path of the tunnel from this LSR + onwards. Each row in this table is indexed by + mplsTunnelHopListIndex which corresponds to a group + of hop lists or path options. Each row also has a + secondary index mplsTunnelHopIndex, which indicates + a group of hops (also known as a path option). + Finally, the third index, mplsTunnelHopIndex + indicates the specific hop information for a path + option. In case we want to specify a particular + interface on the originating LSR of an outgoing + tunnel by which we want packets to exit the LSR, + we specify this as the first hop for this tunnel in + mplsTunnelHopTable." + ::= { mplsTeObjects 4 } + + + + +mplsTunnelHopEntry OBJECT-TYPE + SYNTAX MplsTunnelHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents a tunnel hop. An + entry is created by a network administrator for + signaled ERLSP set up by an MPLS signalling + protocol." + INDEX { + mplsTunnelHopListIndex, + mplsTunnelHopPathOptionIndex, + mplsTunnelHopIndex + } + ::= { mplsTunnelHopTable 1 } + +MplsTunnelHopEntry ::= SEQUENCE { + mplsTunnelHopListIndex MplsPathIndex, + mplsTunnelHopPathOptionIndex MplsPathIndex, + mplsTunnelHopIndex MplsPathIndex, + mplsTunnelHopAddrType TeHopAddressType, + mplsTunnelHopIpAddr TeHopAddress, + mplsTunnelHopIpPrefixLen InetAddressPrefixLength, + mplsTunnelHopAsNumber TeHopAddressAS, + mplsTunnelHopAddrUnnum TeHopAddressUnnum, + mplsTunnelHopLspId MplsLSPID, + mplsTunnelHopType INTEGER, + mplsTunnelHopInclude TruthValue, + mplsTunnelHopPathOptionName SnmpAdminString, + mplsTunnelHopEntryPathComp INTEGER, + mplsTunnelHopRowStatus RowStatus, + mplsTunnelHopStorageType StorageType + } + +mplsTunnelHopListIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Primary index into this table identifying a + particular explicit route object." --- IPI Comments : Not supported. + ::= { mplsTunnelHopEntry 1 } + +mplsTunnelHopPathOptionIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + + + "Secondary index into this table identifying a + particular group of hops representing a particular + configured path. This is otherwise known as a path + option." --- IPI Comments : Not supported. + ::= { mplsTunnelHopEntry 2 } + +mplsTunnelHopIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Tertiary index into this table identifying a + particular hop." --- IPI Comments : Not supported. + ::= { mplsTunnelHopEntry 3 } + +mplsTunnelHopAddrType OBJECT-TYPE + SYNTAX TeHopAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The Hop Address Type of this tunnel hop. + + The value of this object cannot be changed + if the value of the corresponding + mplsTunnelHopRowStatus object is 'active'. + + Note that lspid(5) is a valid option only + for tunnels signaled via CRLDP. + " --- IPI Comments : The Hop Address Type of this tunnel hop. Default value is Ipv4. + DEFVAL { ipv4 } + ::= { mplsTunnelHopEntry 4 } + +mplsTunnelHopIpAddr OBJECT-TYPE + SYNTAX TeHopAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION "The Tunnel Hop Address for this tunnel hop. + + The type of this address is determined by the + value of the corresponding mplsTunnelHopAddrType. + + The value of this object cannot be changed + if the value of the corresponding + mplsTunnelHopRowStatus object is 'active'. + " + DEFVAL { '00000000'h } -- IPv4 address 0.0.0.0 + ::= { mplsTunnelHopEntry 5 } + + mplsTunnelHopIpPrefixLen OBJECT-TYPE + + + + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-create + STATUS current + DESCRIPTION "If mplsTunnelHopAddrType is set to ipv4(1) or + ipv6(2), then this value will contain an + appropriate prefix length for the IP address in + object mplsTunnelHopIpAddr. Otherwise this value + is irrelevant and should be ignored. + " --- IPI Comments : If mplsTunnelHopAddrType is set to ipv4(1) or ipv6(2), then this value will contain an appropriate prefix length for the IP address + DEFVAL { 32 } + ::= { mplsTunnelHopEntry 6 } + +mplsTunnelHopAsNumber OBJECT-TYPE + SYNTAX TeHopAddressAS + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If mplsTunnelHopAddrType is set to asnumber(3), then + this value will contain the AS number of this hop. + Otherwise the agent should set this object to zero- + length string and the manager should ignore this." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelHopEntry 7 } + +mplsTunnelHopAddrUnnum OBJECT-TYPE + SYNTAX TeHopAddressUnnum + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If mplsTunnelHopAddrType is set to unnum(4), then + this value will contain the interface identifier of + the unnumbered interface for this hop. This object + should be used in conjunction with + mplsTunnelHopIpAddress which would contain the LSR + Router ID in this case. Otherwise the agent should + set this object to zero-length string and the + manager should ignore this." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelHopEntry 8 } + +mplsTunnelHopLspId OBJECT-TYPE + SYNTAX MplsLSPID + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If mplsTunnelHopAddrType is set to lspid(5), then + this value will contain the LSPID of a tunnel of + this hop. The present tunnel being configured is + tunneled through this hop (using label stacking). + This object is otherwise insignificant and should + + + + contain a value of 0 to indicate this fact." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelHopEntry 9 } + +mplsTunnelHopType OBJECT-TYPE + SYNTAX INTEGER { + strict(1), + loose(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Denotes whether this tunnel hop is routed in a + strict or loose fashion. The value of this object + has no meaning if the mplsTunnelHopInclude object + is set to 'false'." + ::= { mplsTunnelHopEntry 10 } + +mplsTunnelHopInclude OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If this value is set to true, then this indicates + that this hop must be included in the tunnel's + path. If this value is set to 'false', then this hop + must be avoided when calculating the path for this + tunnel. The default value of this object is 'true', + so that by default all indicated hops are included + in the CSPF path computation. If this object is set + to 'false' the value of mplsTunnelHopType should be + ignored." --- IPI Comments : It is set to default value "include" always. + DEFVAL { true } + ::= { mplsTunnelHopEntry 11 } + +mplsTunnelHopPathOptionName OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The description of this series of hops as they + relate to the specified path option. The + value of this object SHOULD be the same for + each hop in the series that comprises a + path option." + ::= { mplsTunnelHopEntry 12 } + +mplsTunnelHopEntryPathComp OBJECT-TYPE + SYNTAX INTEGER { + + + + dynamic(1), -- CSPF computed + explicit(2) -- strict hop + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If this value is set to dynamic, then the user + should only specify the source and destination of + the path and expect that the CSPF will calculate + the remainder of the path. If this value is set to + explicit, the user should specify the entire path + for the tunnel to take. This path may contain + strict or loose hops. Each hop along a specific + path SHOULD have this object set to the same value" + ::= { mplsTunnelHopEntry 13 } + +mplsTunnelHopRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable is used to create, modify, and/or + delete a row in this table. When a row in this + table is in active(1) state, no objects in that row + can be modified by the agent except + mplsTunnelHopRowStatus and + mplsTunnelHopStorageType." + ::= { mplsTunnelHopEntry 14 } + +mplsTunnelHopStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this Hop entry. Conceptual + rows having the value 'permanent' need not + allow write-access to any columnar objects + in the row." + DEFVAL { volatile } + ::= { mplsTunnelHopEntry 15 } + +-- End of mplsTunnelHopTable + +-- Begin of mplsTunnelResourceTable + +mplsTunnelResourceIndexNext OBJECT-TYPE + SYNTAX Unsigned32 (0.. 2147483647) + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "This object contains the next appropriate value to + be used for mplsTunnelResourceIndex when creating + entries in the mplsTunnelResourceTable. If the + number of unassigned entries is exhausted, a + retrieval operation will return a value of 0. This + object may also return a value of 0 when the LSR is + unable to accept conceptual row creation, for + example, if the mplsTunnelTable is implemented as + read-only. To obtain the mplsTunnelResourceIndex + value for a new entry, the manager must first issue + a management protocol retrieval operation to obtain + the current value of this object. + + When the SET is performed to create a row in the + mplsTunnelResourceTable, the Command Responder + (agent) must determine whether the value is indeed + still unused; Two Network Management Applications + may attempt to create a row (configuration entry) + simultaneously and use the same value. If it is + currently unused, the SET succeeds and the Command + Responder (agent) changes the value of this object, + according to an implementation-specific algorithm. + If the value is in use, however, the SET fails. The + Network Management Application must then re-read + this variable to obtain a new usable value." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTeObjects 5 } + +mplsTunnelResourceTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelResourceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelResourceTable allows a manager to + specify which resources are desired for an MPLS + tunnel. This table also allows several tunnels to + point to a single entry in this table, implying + that these tunnels should share resources." + ::= { mplsTeObjects 6 } + +mplsTunnelResourceEntry OBJECT-TYPE + SYNTAX MplsTunnelResourceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents a set of resources + for an MPLS tunnel. An entry can be created by a + + + + network administrator or by an SNMP agent as + instructed by any MPLS signalling protocol. + An entry in this table referenced by a tunnel instance + with zero mplsTunnelInstance value indicates a + configured set of resource parameter. An entry + referenced by a tunnel instance with a non-zero + mplsTunnelInstance reflects the in-use resource + parameters for the tunnel instance which may have + been negotiated or modified by the MPLS signaling + protocols." + INDEX { mplsTunnelResourceIndex } + ::= { mplsTunnelResourceTable 1 } + +MplsTunnelResourceEntry ::= SEQUENCE { + mplsTunnelResourceIndex Unsigned32, + mplsTunnelResourceMaxRate MplsBitRate, + mplsTunnelResourceMeanRate MplsBitRate, + mplsTunnelResourceMaxBurstSize MplsBurstSize, + mplsTunnelResourceMeanBurstSize MplsBurstSize, + mplsTunnelResourceExBurstSize MplsBurstSize, + mplsTunnelResourceFrequency INTEGER, + mplsTunnelResourceWeight Unsigned32, + mplsTunnelResourceRowStatus RowStatus, + mplsTunnelResourceStorageType StorageType + } + +mplsTunnelResourceIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..2147483647) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Uniquely identifies this row." --- IPI Comments: Not supported. + ::= { mplsTunnelResourceEntry 1 } + +mplsTunnelResourceMaxRate OBJECT-TYPE + SYNTAX MplsBitRate + UNITS "kilobits per second" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The maximum rate in bits/second. Note that setting + mplsTunnelResourceMaxRate, + mplsTunnelResourceMeanRate, and + mplsTunnelResourceMaxBurstSize to 0 indicates best- + effort treatment." + ::= { mplsTunnelResourceEntry 2 } + +mplsTunnelResourceMeanRate OBJECT-TYPE + + + + SYNTAX MplsBitRate + UNITS "kilobits per second" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is copied into an instance of + mplsTrafficParamMeanRate in the + mplsTrafficParamTable. The OID of this table entry + is then copied into the corresponding + mplsInSegmentTrafficParamPtr." + ::= { mplsTunnelResourceEntry 3 } + +mplsTunnelResourceMaxBurstSize OBJECT-TYPE + SYNTAX MplsBurstSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The maximum burst size in bytes." + ::= { mplsTunnelResourceEntry 4 } + +mplsTunnelResourceMeanBurstSize OBJECT-TYPE + SYNTAX MplsBurstSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The mean burst size in bytes. The implementations + which do not implement this variable must return + a noSuchObject exception for this object and must + not allow a user to set this object." + ::= { mplsTunnelResourceEntry 5 } + +mplsTunnelResourceExBurstSize OBJECT-TYPE + SYNTAX MplsBurstSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Excess burst size in bytes. The implementations + which do not implement this variable must return + noSuchObject exception for this object and must + not allow a user to set this value." + REFERENCE + "CR-LDP Specification, Section 4.3." + ::= { mplsTunnelResourceEntry 6 } + +mplsTunnelResourceFrequency OBJECT-TYPE + + + + SYNTAX INTEGER { unspecified(1), + frequent(2), + veryFrequent(3) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The granularity of the availability of committed + rate. The implementations which do not implement + this variable must return unspecified(1) for this + value and must not allow a user to set this value." + REFERENCE + "CR-LDP Specification, Section 4.3." + ::= { mplsTunnelResourceEntry 7 } + +mplsTunnelResourceWeight OBJECT-TYPE + SYNTAX Unsigned32(0..255) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The relative weight for using excess bandwidth above + its committed rate. The value of 0 means that + weight is not applicable for the CR-LSP." + REFERENCE + "CR-LDP Specification, Section 4.3." + ::= { mplsTunnelResourceEntry 8 } + +mplsTunnelResourceRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable is used to create, modify, and/or + delete a row in this table. When a row in this + table is in active(1) state, no objects in that row + can be modified by the agent except + mplsTunnelResourceRowStatus and + mplsTunnelResourceStorageType." + ::= { mplsTunnelResourceEntry 9 } + +mplsTunnelResourceStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this Hop entry. Conceptual + rows having the value 'permanent' need not + allow write-access to any columnar objects + + + + in the row." + DEFVAL { volatile } + + ::= { mplsTunnelResourceEntry 10 } + + +-- End mplsTunnelResourceTable +-- Tunnel Actual Route Hop table. + +mplsTunnelARHopTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelARHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelARHopTable is used to indicate the + hops for an MPLS tunnel defined in mplsTunnelTable, + as reported by the MPLS signalling protocol. Thus at + a transit LSR, this table (if the table is supported + and if the signaling protocol is recording actual + route information) contains the actual route of the + whole tunnel. If the signaling protocol is not + recording the actual route, this table MAY report + the information from the mplsTunnelHopTable or the + mplsTunnelCHopTable. + + Each row in this table is indexed by + mplsTunnelARHopListIndex. Each row also has a + secondary index mplsTunnelARHopIndex, corresponding + to the next hop that this row corresponds to. + + Please note that since the information necessary to + build entries within this table is not provided by + some MPLS signalling protocols, implementation of + this table is optional. Furthermore, since the + information in this table is actually provided by + the MPLS signalling protocol after the path has + been set-up, the entries in this table are provided + only for observation, and hence, all variables in + this table are accessible exclusively as read- + only. + + Note also that the contents of this table may change + while it is being read because of re-routing + activities. A network administrator may verify that + the actual route read is consistent by reference to + the mplsTunnelLastPathChange object." + ::= { mplsTeObjects 7 } + + + + +mplsTunnelARHopEntry OBJECT-TYPE + SYNTAX MplsTunnelARHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents a tunnel hop. An + entry is created by the agent for signaled ERLSP + set up by an MPLS signalling protocol." + INDEX { mplsTunnelARHopListIndex, mplsTunnelARHopIndex } + ::= { mplsTunnelARHopTable 1 } + +MplsTunnelARHopEntry ::= SEQUENCE { + mplsTunnelARHopListIndex MplsPathIndex, + mplsTunnelARHopIndex MplsPathIndex, + mplsTunnelARHopAddrType TeHopAddressType, + mplsTunnelARHopIpAddr TeHopAddress, + mplsTunnelARHopAddrUnnum TeHopAddressUnnum, + mplsTunnelARHopLspId MplsLSPID + } + +mplsTunnelARHopListIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Primary index into this table identifying a + particular recorded hop list." --- IPI Comments : NOT Supported. + ::= { mplsTunnelARHopEntry 1 } + +mplsTunnelARHopIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Secondary index into this table identifying the + particular hop." --- IPI Comments : NOT Supported. + ::= { mplsTunnelARHopEntry 2 } + +mplsTunnelARHopAddrType OBJECT-TYPE + SYNTAX TeHopAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Hop Address Type of this tunnel hop. + + Note that lspid(5) is a valid option only + for tunnels signaled via CRLDP." --- IPI Comments : NOT Supported. + DEFVAL { ipv4 } + + + + ::= { mplsTunnelARHopEntry 3 } + +mplsTunnelARHopIpAddr OBJECT-TYPE + SYNTAX TeHopAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Tunnel Hop Address for this tunnel hop. + + The type of this address is determined by the + value of the corresponding mplsTunnelARHopAddrType. + If mplsTunnelARHopAddrType is set to unnum(4), + then this value contains the LSR Router ID of the + unnumbered interface. Otherwise the agent SHOULD + set this object to the zero-length string and the + manager should ignore this object." --- IPI Comments : NOT Supported. + DEFVAL { '00000000'h } -- IPv4 address 0.0.0.0 + ::= { mplsTunnelARHopEntry 4 } + +mplsTunnelARHopAddrUnnum OBJECT-TYPE + SYNTAX TeHopAddressUnnum + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelARHopAddrType is set to unnum(4), then + this value will contain the interface identifier of + the unnumbered interface for this hop. This object + should be used in conjunction with + mplsTunnelARHopIpAddr which would contain the LSR + Router ID in this case. Otherwise the agent should + set this object to zero-length string and the + manager should ignore this." + ::= { mplsTunnelARHopEntry 5 } + +mplsTunnelARHopLspId OBJECT-TYPE + SYNTAX MplsLSPID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelARHopAddrType is set to lspid(5), then + this value will contain the LSP ID of this hop. + This object is otherwise insignificant and should + contain a value of 0 to indicate this fact." + ::= { mplsTunnelARHopEntry 6 } + +-- End of mplsTunnelARHopTable + + + + + +-- Tunnel Computed Hop table. + +mplsTunnelCHopTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelCHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelCHopTable is used to indicate the + hops, strict or loose, for an MPLS tunnel defined + in mplsTunnelTable, as computed by a constraint- + based routing protocol, based on the + mplsTunnelHopTable for the outgoing direction of + the tunnel. Thus at a transit LSR, this table (if + the table is supported) MAY contain the path + computed by the CSPF engine on (or on behalf of) + this LSR. Each row in this table is indexed by + mplsTunnelCHopListIndex. Each row also has a + secondary index mplsTunnelCHopIndex, corresponding + to the next hop that this row corresponds to. In + case we want to specify a particular interface on + the originating LSR of an outgoing tunnel by which + we want packets to exit the LSR, we specify this as + the first hop for this tunnel in + mplsTunnelCHopTable. + + Please note that since the information necessary to + build entries within this table may not be + supported by some LSRs, implementation of this + table is optional. Furthermore, since the + information in this table describes the path + computed by the CSPF engine the entries in this + table are read-only." + ::= { mplsTeObjects 8 } + +mplsTunnelCHopEntry OBJECT-TYPE + SYNTAX MplsTunnelCHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents a tunnel hop. An + entry in this table is created by a path + computation engine using CSPF techniques applied to + the information collected by routing protocols and + the hops specified in the corresponding + mplsTunnelHopTable." + INDEX { mplsTunnelCHopListIndex, mplsTunnelCHopIndex } + ::= { mplsTunnelCHopTable 1 } + + + + +MplsTunnelCHopEntry ::= SEQUENCE { + mplsTunnelCHopListIndex MplsPathIndex, + mplsTunnelCHopIndex MplsPathIndex, + mplsTunnelCHopAddrType TeHopAddressType, + mplsTunnelCHopIpAddr TeHopAddress, + mplsTunnelCHopIpPrefixLen InetAddressPrefixLength, + mplsTunnelCHopAsNumber TeHopAddressAS, + mplsTunnelCHopAddrUnnum TeHopAddressUnnum, + mplsTunnelCHopLspId MplsLSPID, + mplsTunnelCHopType INTEGER + } + +mplsTunnelCHopListIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Primary index into this table identifying a + particular computed hop list." + ::= { mplsTunnelCHopEntry 1 } + +mplsTunnelCHopIndex OBJECT-TYPE + SYNTAX MplsPathIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Secondary index into this table identifying the + particular hop." + ::= { mplsTunnelCHopEntry 2 } + +mplsTunnelCHopAddrType OBJECT-TYPE + SYNTAX TeHopAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Hop Address Type of this tunnel hop. + + Note that lspid(5) is a valid option only + for tunnels signaled via CRLDP." + DEFVAL { ipv4 } + ::= { mplsTunnelCHopEntry 3 } + +mplsTunnelCHopIpAddr OBJECT-TYPE + SYNTAX TeHopAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Tunnel Hop Address for this tunnel hop. + + + + + The type of this address is determined by the + value of the corresponding mplsTunnelCHopAddrType. + + If mplsTunnelCHopAddrType is set to unnum(4), then + this value will contain the LSR Router ID of the + unnumbered interface. Otherwise the agent should + set this object to the zero-length string and the + manager SHOULD ignore this object." + DEFVAL { '00000000'h } -- IPv4 address 0.0.0.0 + ::= { mplsTunnelCHopEntry 4 } + +mplsTunnelCHopIpPrefixLen OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelCHopAddrType is set to ipv4(1) or + ipv6(2), then this value will contain an + appropriate prefix length for the IP address in + object mplsTunnelCHopIpAddr. Otherwise this value + is irrelevant and should be ignored. + " --- IPI Comments : this value will contain an appropriate prefix length for the IP address in objectmplsTunnelCHopIpAddr. + DEFVAL { 32 } + ::= { mplsTunnelCHopEntry 5 } + +mplsTunnelCHopAsNumber OBJECT-TYPE + SYNTAX TeHopAddressAS + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelCHopAddrType is set to asnumber(3), + then this value will contain the AS number of this + hop. Otherwise the agent should set this object to + zero-length string and the manager should ignore + this." --- IPI Comments : Not supported. + ::= { mplsTunnelCHopEntry 6 } + +mplsTunnelCHopAddrUnnum OBJECT-TYPE + SYNTAX TeHopAddressUnnum + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelCHopAddrType is set to unnum(4), then + this value will contain the unnumbered interface + identifier of this hop. This object should be used + in conjunction with mplsTunnelCHopIpAddr which + would contain the LSR Router ID in this case. + + + + Otherwise the agent should set this object to zero- + length string and the manager should ignore this." --- IPI Comments : Not supported. + ::= { mplsTunnelCHopEntry 7 } + +mplsTunnelCHopLspId OBJECT-TYPE + SYNTAX MplsLSPID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If mplsTunnelCHopAddrType is set to lspid(5), then + this value will contain the LSP ID of this hop. + This object is otherwise insignificant and should + contain a value of 0 to indicate this fact." --- IPI Comments : Not supported. + ::= { mplsTunnelCHopEntry 8 } + +mplsTunnelCHopType OBJECT-TYPE + SYNTAX INTEGER { strict(1), + loose(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Denotes whether this is tunnel hop is routed in a + strict or loose fashion." --- IPI Comments : Not supported. + ::= { mplsTunnelCHopEntry 9 } + +-- End of mplsTunnelCHopTable + + +-- MPLS Tunnel Performance Table. + +mplsTunnelPerfTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table provides per-tunnel instance MPLS + performance information." + ::= { mplsTeObjects 9 } + +mplsTunnelPerfEntry OBJECT-TYPE + SYNTAX MplsTunnelPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the LSR for + every tunnel. Its is an extension to + mplsTunnelEntry." + + + + AUGMENTS { mplsTunnelEntry } + ::= { mplsTunnelPerfTable 1 } + +MplsTunnelPerfEntry ::= SEQUENCE { + mplsTunnelPerfPackets Counter32, + mplsTunnelPerfHCPackets Counter64, + mplsTunnelPerfErrors Counter32, + mplsTunnelPerfBytes Counter32, + mplsTunnelPerfHCBytes Counter64 + } + +mplsTunnelPerfPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of packets forwarded by the tunnel. + This object should represents the 32-bit + value of the least significant part of the + 64-bit value if both mplsTunnelPerfHCPackets + is returned." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelPerfEntry 1 } + +mplsTunnelPerfHCPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High capacity counter for number of packets + forwarded by the tunnel. " --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelPerfEntry 2 } + +mplsTunnelPerfErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of packets dropped because of errors or for + other reasons." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelPerfEntry 3 } + +mplsTunnelPerfBytes OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of bytes forwarded by the tunnel. + This object should represents the 32-bit + + + + value of the least significant part of the + 64-bit value if both mplsTunnelPerfHCBytes + is returned." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelPerfEntry 4 } + +mplsTunnelPerfHCBytes OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High capacity counter for number of bytes forwarded + by the tunnel." --- IPI Comments : SNMP SET is not supported. + ::= { mplsTunnelPerfEntry 5 } + +-- End of mplsTunnelPerfTable + + +-- CR-LDP Tunnel Resource Table + +mplsTunnelCRLDPResTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsTunnelCRLDPResEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mplsTunnelCRLDPResTable allows a manager to + specify which CR-LDP-specific resources are desired + for an MPLS tunnel if that tunnel is signaled using + CR-LDP. Note that these attributes are in addition + to those specified in mplsTunnelResourceTable. This + table also allows several tunnels to point to a + single entry in this table, implying that these + tunnels should share resources." + ::= { mplsTeObjects 10 } + +mplsTunnelCRLDPResEntry OBJECT-TYPE + SYNTAX MplsTunnelCRLDPResEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents a set of resources + for an MPLS tunnel established using CRLDP + (mplsTunnelSignallingProto equal to crldp (3)). An + entry can be created by a network administrator or + by an SNMP agent as instructed by any MPLS + signalling protocol." + INDEX { mplsTunnelResourceIndex } + ::= { mplsTunnelCRLDPResTable 1 } + + + + +MplsTunnelCRLDPResEntry ::= SEQUENCE { + mplsTunnelCRLDPResMeanBurstSize MplsBurstSize, + mplsTunnelCRLDPResExBurstSize MplsBurstSize, + mplsTunnelCRLDPResFrequency INTEGER, + mplsTunnelCRLDPResWeight Unsigned32, + mplsTunnelCRLDPResFlags Unsigned32, + mplsTunnelCRLDPResRowStatus RowStatus, + mplsTunnelCRLDPResStorageType StorageType + } + +mplsTunnelCRLDPResMeanBurstSize OBJECT-TYPE + SYNTAX MplsBurstSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The mean burst size in bytes." + ::= { mplsTunnelCRLDPResEntry 1 } + +mplsTunnelCRLDPResExBurstSize OBJECT-TYPE + SYNTAX MplsBurstSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Excess burst size in bytes." + REFERENCE + "CR-LDP Specification, Section 4.3." + ::= { mplsTunnelCRLDPResEntry 2 } + +mplsTunnelCRLDPResFrequency OBJECT-TYPE + SYNTAX INTEGER { + unspecified(1), + frequent(2), + veryFrequent(3) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The granularity of the availability of committed + rate." + REFERENCE + "CR-LDP Specification, Section 4.3." + ::= { mplsTunnelCRLDPResEntry 3 } + +mplsTunnelCRLDPResWeight OBJECT-TYPE + SYNTAX Unsigned32(0..255) + MAX-ACCESS read-create + + + + STATUS current + DESCRIPTION + "The relative weight for using excess bandwidth above + its committed rate. The value of 0 means that + weight is not applicable for the CR-LSP." + REFERENCE + "CR-LDP Specification, Section 4.3." + DEFVAL { 0 } + ::= { mplsTunnelCRLDPResEntry 4 } + +mplsTunnelCRLDPResFlags OBJECT-TYPE + SYNTAX Unsigned32 (0..63) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value of the 1 byte Flags conveyed as part of + the traffic parameters during the establishment of + the CRLSP. The bits in this object are to be + interpreted as follows. + + +--+--+--+--+--+--+--+--+ + | Res |F6|F5|F4|F3|F2|F1| + +--+--+--+--+--+--+--+--+ + + Res - These bits are reserved. Zero on transmission. + Ignored on receipt. + F1 - Corresponds to the PDR. + F2 - Corresponds to the PBS. + F3 - Corresponds to the CDR. + F4 - Corresponds to the CBS. + F5 - Corresponds to the EBS. + F6 - Corresponds to the Weight. + + Each flag if is a Negotiable Flag corresponding to a + Traffic Parameter. The Negotiable Flag value zero + denotes Not Negotiable and value one denotes + Negotiable." + REFERENCE + "1. Section 4.3, Constraint-Based LSP Setup using + LDP, Jamoussi (Editor), RFC 3212, January 2002" + DEFVAL { 0 } + ::= { mplsTunnelCRLDPResEntry 5 } + +mplsTunnelCRLDPResRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "This variable is used to create, modify, and/or + delete a row in this table. When a row in this + table is in active(1) state, no objects in that row + can be modified by the agent except + mplsTunnelCRLDPResRowStatus and + mplsTunnelCRLDPResStorageType." + ::= { mplsTunnelCRLDPResEntry 6 } + +mplsTunnelCRLDPResStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this CR-LDP Resource entry. + Conceptual rows having the value 'permanent' + need not allow write-access to any columnar + objects in the row." + DEFVAL { volatile } + ::= { mplsTunnelCRLDPResEntry 7 } + + +-- Notifications. + +mplsTunnelNotificationEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If this object is true, then it enables the + generation of mplsTunnelUp and mplsTunnelDown + traps, otherwise these traps are not emitted." + DEFVAL { false } + ::= { mplsTeObjects 11 } + +mplsTunnelUp NOTIFICATION-TYPE + OBJECTS { + mplsTunnelAdminStatus, + mplsTunnelOperStatus + } + STATUS current + DESCRIPTION + "This notification is generated when a + mplsTunnelOperStatus object for one of the + configured tunnels is about to leave the down state + and transition into some other state (but not into + the notPresent state). This other state is + indicated by the included value of + mplsTunnelOperStatus." + + + + ::= { mplsTeNotifications 1 } + +mplsTunnelDown NOTIFICATION-TYPE + OBJECTS { + mplsTunnelAdminStatus, + mplsTunnelOperStatus + } + STATUS current + DESCRIPTION + "This notification is generated when a + mplsTunnelOperStatus object for one of the + configured tunnels is about to enter the down state + from some other state (but not from the notPresent + state). This other state is indicated by the + included value of mplsTunnelOperStatus." + ::= { mplsTeNotifications 2 } + +mplsTunnelRerouted NOTIFICATION-TYPE + OBJECTS { + mplsTunnelAdminStatus, + mplsTunnelOperStatus + } + STATUS current + DESCRIPTION + "This notification is generated when a tunnel is + rerouted. If the mplsTunnelARHopTable is used, then + this tunnel instance's entry in the + mplsTunnelARHopTable MAY contain the new path for + this tunnel some time after this trap is issued by + the agent." + ::= { mplsTeNotifications 3 } + +mplsTunnelReoptimized NOTIFICATION-TYPE + OBJECTS { + mplsTunnelAdminStatus, + mplsTunnelOperStatus + } + STATUS current + DESCRIPTION + "This notification is generated when a tunnel is + reoptimized. If the mplsTunnelARHopTable is used, + then this tunnel instance's entry in the + mplsTunnelARHopTable MAY contain the new path for + this tunnel some time after this trap is issued by + the agent." + ::= { mplsTeNotifications 4 } + +-- End of notifications. + + + +-- Module compliance. + +mplsTeGroups + OBJECT IDENTIFIER ::= { mplsTeConformance 1 } + +mplsTeCompliances + OBJECT IDENTIFIER ::= { mplsTeConformance 2 } + +-- Compliance requirement for fully compliant implementations. + +mplsTeModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "Compliance statement for agents that provide full + support the MPLS-TE-STD-MIB module." + + MODULE IF-MIB -- The Interfaces Group MIB, RFC 2863. + MANDATORY-GROUPS { + ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + } + + MODULE -- this module + + -- The mandatory group has to be implemented by all + -- LSRs that originate/terminate ESLSPs/tunnels. + -- In addition, depending on the type of tunnels + -- supported, other groups become mandatory as + -- explained below. + + MANDATORY-GROUPS { + mplsTunnelGroup, + mplsTunnelScalarGroup + } + + GROUP mplsTunnelManualGroup + DESCRIPTION + "This group is mandatory for devices which support + manual configuration of tunnels." + + GROUP mplsTunnelSignaledGroup + DESCRIPTION + "This group is mandatory for devices which support + signaled tunnel set up." + + GROUP mplsTunnelIsNotIntfcGroup + DESCRIPTION + "This group is mandatory for devices which support + + + + tunnels that are not interfaces." + + GROUP mplsTunnelIsIntfcGroup + DESCRIPTION + "This group is mandatory for devices which support + tunnels that are interfaces." + + GROUP mplsTunnelCRLDPResOptionalGroup + DESCRIPTION + "Objects in this group are required by + implementations supporting the CR-LDP protocol for + signalling of TE tunnels." + + GROUP mplsTeNotificationGroup + DESCRIPTION "This group is mandatory for those implementations + which can implement the notifications + contained in this group." + + OBJECT mplsTunnelRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required." + + OBJECT mplsTunnelHopRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required." + + OBJECT mplsTunnelCRLDPResRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is + not required." + + ::= { mplsTeCompliances 1 } + +-- Compliance requirement for read-only implementations. + +mplsTeModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + + + + DESCRIPTION + "Compliance requirement for implementations that only + provide read-only support for MPLS-TE-STD-MIB. + Such devices can then be monitored but cannot be + configured using this MIB modules." + + MODULE -- this module + + -- mplsTunnelTable + + MANDATORY-GROUPS { + mplsTunnelGroup, + mplsTunnelScalarGroup + } + + GROUP mplsTunnelManualGroup + DESCRIPTION + "This group is mandatory for devices which support + manual configuration of tunnels." + + GROUP mplsTunnelSignaledGroup + DESCRIPTION + "This group is mandatory for devices which support + signaled tunnel set up." + + GROUP mplsTunnelIsNotIntfcGroup + DESCRIPTION + "This group is mandatory for devices which support + tunnels that are not interfaces." + + GROUP mplsTunnelIsIntfcGroup + DESCRIPTION + "This group is mandatory for devices which support + tunnels that are interfaces." + + GROUP mplsTunnelCRLDPResOptionalGroup + DESCRIPTION + "Objects in this group are required by + implementations supporting the CR-LDP protocol for + signalling of TE tunnels." + + GROUP mplsTeNotificationGroup + DESCRIPTION "This group is mandatory for those implementations + which can implement the notifications + contained in this group." + + -- mplsTunnelTable + + + + + OBJECT mplsTunnelName + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelDescr + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelIsIf + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelIfIndex + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelXCPointer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelSignallingProto + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelSetupPrio + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHoldingPrio + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelSessionAttributes + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelLocalProtectInUse + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + OBJECT mplsTunnelResourcePointer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelInstancePriority + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHopTableIndex + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelIncludeAnyAffinity + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelIncludeAllAffinity + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelExcludeAnyAffinity + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelPathInUse + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelRole + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelAdminStatus + SYNTAX INTEGER { up (1), down (2) } + MIN-ACCESS read-only + DESCRIPTION + "Only up and down states must be supported. Write + access is not required." + + OBJECT mplsTunnelRowStatus + + + + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + -- mplsTunnelHopTable + + OBJECT mplsTunnelHopAddrType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelHopIpAddr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelHopIpPrefixLen + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHopAddrUnnum + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHopAsNumber + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHopLspId + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelHopType + SYNTAX INTEGER { strict(1) } + MIN-ACCESS read-only + DESCRIPTION + "loose(2) need not be supported. Write access is + not required." + + OBJECT mplsTunnelHopInclude + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelHopPathOptionName + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + + + OBJECT mplsTunnelHopEntryPathComp + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelHopRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelHopStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + -- mplsTunnelResourceTable + + OBJECT mplsTunnelResourceMaxRate + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceMeanRate + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceMaxBurstSize + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceMeanBurstSize + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceExBurstSize + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsTunnelResourceFrequency + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceWeight + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelResourceRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + + + OBJECT mplsTunnelResourceStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + -- mplsTunnelCRLDPResTable + + OBJECT mplsTunnelCRLDPResMeanBurstSize + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResExBurstSize + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResFrequency + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResWeight + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResFlags + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsTunnelCRLDPResStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { mplsTeCompliances 2 } + + +-- Units of conformance. + +mplsTunnelGroup OBJECT-GROUP + OBJECTS { + mplsTunnelIndexNext, + mplsTunnelName, + mplsTunnelDescr, + mplsTunnelOwner, + mplsTunnelXCPointer, + mplsTunnelIfIndex, + + + + mplsTunnelHopTableIndex, + mplsTunnelARHopTableIndex, + mplsTunnelCHopTableIndex, + mplsTunnelAdminStatus, + mplsTunnelOperStatus, + mplsTunnelRowStatus, + mplsTunnelNotificationEnable, + mplsTunnelStorageType, + mplsTunnelConfigured, + mplsTunnelActive, + mplsTunnelPrimaryInstance, + mplsTunnelPrimaryUpTime, + mplsTunnelPathChanges, + mplsTunnelLastPathChange, + mplsTunnelCreationTime, + mplsTunnelStateTransitions, + mplsTunnelIncludeAnyAffinity, + mplsTunnelIncludeAllAffinity, + mplsTunnelExcludeAnyAffinity, + mplsTunnelPerfPackets, + mplsTunnelPerfHCPackets, + mplsTunnelPerfErrors, + mplsTunnelPerfBytes, + mplsTunnelPerfHCBytes, + mplsTunnelResourcePointer, + mplsTunnelInstancePriority, + mplsTunnelPathInUse, + mplsTunnelRole, + mplsTunnelTotalUpTime, + mplsTunnelInstanceUpTime, + mplsTunnelResourceIndexNext, + mplsTunnelResourceMaxRate, + mplsTunnelResourceMeanRate, + mplsTunnelResourceMaxBurstSize, + mplsTunnelResourceMeanBurstSize, + mplsTunnelResourceExBurstSize, + mplsTunnelResourceFrequency, + mplsTunnelResourceWeight, + mplsTunnelResourceRowStatus, + mplsTunnelResourceStorageType, + mplsTunnelARHopAddrType, + mplsTunnelARHopIpAddr, + mplsTunnelARHopAddrUnnum, + mplsTunnelARHopLspId, + mplsTunnelCHopAddrType, + mplsTunnelCHopIpAddr, + mplsTunnelCHopIpPrefixLen, + mplsTunnelCHopAsNumber, + + + + mplsTunnelCHopAddrUnnum, + mplsTunnelCHopLspId, + mplsTunnelCHopType + } + STATUS current + DESCRIPTION + "Necessary, but not sufficient, set of objects to + implement tunnels. In addition, depending on the + type of the tunnels supported (for example, + manually configured or signaled, persistent or non- + persistent, etc.), the following other groups + defined below are mandatory: mplsTunnelManualGroup + and/or mplsTunnelSignaledGroup, + mplsTunnelIsNotIntfcGroup and/or + mplsTunnelIsIntfcGroup." + ::= { mplsTeGroups 1 } + +mplsTunnelManualGroup OBJECT-GROUP + OBJECTS { mplsTunnelSignallingProto } + STATUS current + DESCRIPTION + "Object(s) needed to implement manually configured + tunnels." + ::= { mplsTeGroups 2 } + +mplsTunnelSignaledGroup OBJECT-GROUP + OBJECTS { + mplsTunnelSetupPrio, + mplsTunnelHoldingPrio, + mplsTunnelSignallingProto, + mplsTunnelLocalProtectInUse, + mplsTunnelSessionAttributes, + mplsTunnelHopListIndexNext, + mplsTunnelHopAddrType, + mplsTunnelHopIpAddr, + mplsTunnelHopIpPrefixLen, + mplsTunnelHopAddrUnnum, + mplsTunnelHopAsNumber, + mplsTunnelHopLspId, + mplsTunnelHopType, + mplsTunnelHopInclude, + mplsTunnelHopPathOptionName, + mplsTunnelHopEntryPathComp, + mplsTunnelHopRowStatus, + mplsTunnelHopStorageType + } + STATUS current + DESCRIPTION + + + + "Objects needed to implement signaled tunnels." + ::= { mplsTeGroups 3 } + +mplsTunnelScalarGroup OBJECT-GROUP + OBJECTS { + mplsTunnelConfigured, + mplsTunnelActive, + mplsTunnelTEDistProto, + mplsTunnelMaxHops, + mplsTunnelNotificationMaxRate + } + STATUS current + DESCRIPTION + "Scalar object needed to implement MPLS tunnels." + ::= { mplsTeGroups 4 } + +mplsTunnelIsIntfcGroup OBJECT-GROUP + OBJECTS { mplsTunnelIsIf } + STATUS current + DESCRIPTION + "Objects needed to implement tunnels that are + interfaces." + ::= { mplsTeGroups 5 } + +mplsTunnelIsNotIntfcGroup OBJECT-GROUP + OBJECTS { mplsTunnelIsIf } + STATUS current + DESCRIPTION + "Objects needed to implement tunnels that are not + interfaces." + ::= { mplsTeGroups 6 } + +mplsTunnelCRLDPResOptionalGroup OBJECT-GROUP + OBJECTS { + mplsTunnelCRLDPResMeanBurstSize, + mplsTunnelCRLDPResExBurstSize, + mplsTunnelCRLDPResFrequency, + mplsTunnelCRLDPResWeight, + mplsTunnelCRLDPResFlags, + mplsTunnelCRLDPResRowStatus, + mplsTunnelCRLDPResStorageType + } + STATUS current + DESCRIPTION + "Set of objects implemented for resources applicable + for tunnels signaled using CR-LDP." + ::= { mplsTeGroups 7 } + + + + +mplsTeNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + mplsTunnelUp, + mplsTunnelDown, + mplsTunnelRerouted, + mplsTunnelReoptimized + } + STATUS current + DESCRIPTION + "Set of notifications implemented in this module. + None is mandatory." + ::= { mplsTeGroups 8 } + +END \ No newline at end of file diff --git a/mibs/RFC-3813-MPLS-LSR-STD-MIB.txt b/mibs/RFC-3813-MPLS-LSR-STD-MIB.txt new file mode 100644 index 00000000..03d96cb9 --- /dev/null +++ b/mibs/RFC-3813-MPLS-LSR-STD-MIB.txt @@ -0,0 +1,2236 @@ +MPLS-LSR-STD-MIB DEFINITIONS ::= BEGIN +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, + Integer32, Counter32, Unsigned32, Counter64, Gauge32, + zeroDotZero + FROM SNMPv2-SMI -- [RFC2578] + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF -- [RFC2580] + TruthValue, RowStatus, StorageType, RowPointer, + TimeStamp, TEXTUAL-CONVENTION + FROM SNMPv2-TC -- [RFC2579] + InterfaceIndexOrZero, ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + FROM IF-MIB -- [RFC2863] + mplsStdMIB, MplsLSPID, MplsLabel, MplsBitRate, + MplsOwner + FROM MPLS-TC-STD-MIB -- [RFC3811] + AddressFamilyNumbers + FROM IANA-ADDRESS-FAMILY-NUMBERS-MIB -- [IANAFamily] + InetAddress, InetAddressType + FROM INET-ADDRESS-MIB -- [RFC3291] + ; + +mplsLsrStdMIB MODULE-IDENTITY + LAST-UPDATED "200406030000Z" -- June 3, 2004 + ORGANIZATION "Multiprotocol Label Switching (MPLS) Working Group" + CONTACT-INFO + " Cheenu Srinivasan + Bloomberg L.P. + Email: cheenu@bloomberg.net + + Arun Viswanathan + Force10 Networks, Inc. + Email: arunv@force10networks.com + + Thomas D. Nadeau + Cisco Systems, Inc. + Email: tnadeau@cisco.com + + Comments about this document should be emailed + directly to the MPLS working group mailing list at + mpls@uu.net." + + DESCRIPTION + "This MIB module contains managed object definitions for + the Multiprotocol Label Switching (MPLS) Router as + + + + defined in: Rosen, E., Viswanathan, A., and R. + Callon, Multiprotocol Label Switching Architecture, + RFC 3031, January 2001. + + Copyright (C) The Internet Society (2004). The + initial version of this MIB module was published + in RFC 3812. For full legal notices see the RFC + itself or see: + http://www.ietf.org/copyrights/ianamib.html" + + -- Revision history. + REVISION + "200406030000Z" -- June 3, 2004 + DESCRIPTION + "Initial revision, published as part of RFC 3813." + + ::= { mplsStdMIB 2 } + +-- TEXTUAL-CONVENTIONs + +MplsIndexType ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "This is an octet string that can be used as a table + index in cases where a large addressable space is + required such as on an LSR where many applications + may be provisioning labels. + + Note that the string containing the single octet with + the value 0x00 is a reserved value used to represent + special cases. When this TEXTUAL-CONVENTION is used + as the SYNTAX of an object, the DESCRIPTION clause + MUST specify if this special value is valid and if so + what the special meaning is. + + In systems that provide write access to the MPLS-LSR-STD + MIB, mplsIndexType SHOULD be used as a simple multi-digit + integer encoded as an octet string. + No further overloading of the meaning of an index SHOULD + be made. + + In systems that do not offer write access to the MPLS-LSR-STD + MIB, the mplsIndexType may contain implicit formatting that is + specific to the implementation to convey additional + information such as interface index, physical card or + device, or application id. The interpretation of this + additional formatting is implementation dependent and + not covered in this document. Such formatting MUST + + + + NOT impact the basic functionality of read-only access + to the MPLS-LSR-STD MIB by management applications that are + not aware of the formatting rules." + SYNTAX OCTET STRING (SIZE(1..24)) + +MplsIndexNextType ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "When a MIB module is used for configuration, an object with + this SYNTAX always contains a legal value (a non-zero-length + string) for an index that is not currently used in the relevant + table. The Command Generator (Network Management Application) + reads this variable and uses the (non-zero-length string) + value read when creating a new row with an SNMP SET. + + When the SET is performed, the Command Responder (agent) must + determine whether the value is indeed still unused; Two Network + Management Applications may attempt to create a row + (configuration entry) simultaneously and use the same value. If + it is currently unused, the SET succeeds and the Command + Responder (agent) changes the value of this object, according + to an implementation-specific algorithm. If the value is in + use, however, the SET fails. The Network Management + Application must then re-read this variable to obtain a new + usable value. + + Note that the string containing the single octet with + the value 0x00 is a reserved value used to represent + the special case where no additional indexes can be + provisioned, or in systems that do not offer + write access, objects defined using this TEXTUAL-CONVENTION + MUST return the string containing the single + octet with the value 0x00." + SYNTAX OCTET STRING (SIZE(1..24)) + +-- Top level components of this MIB module. + +-- Notifications +mplsLsrNotifications OBJECT IDENTIFIER ::= { mplsLsrStdMIB 0 } + +-- Tables, Scalars +mplsLsrObjects OBJECT IDENTIFIER ::= { mplsLsrStdMIB 1 } + +-- Conformance +mplsLsrConformance OBJECT IDENTIFIER ::= { mplsLsrStdMIB 2 } + +-- MPLS Interface Table. +mplsInterfaceTable OBJECT-TYPE + + + + SYNTAX SEQUENCE OF MplsInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table specifies per-interface MPLS capability + and associated information." + ::= { mplsLsrObjects 1 } + +mplsInterfaceEntry OBJECT-TYPE + SYNTAX MplsInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A conceptual row in this table is created + automatically by an LSR for every interface capable + of supporting MPLS and which is configured to do so. + A conceptual row in this table will exist if and only if + a corresponding entry in ifTable exists with ifType = + mpls(166). If this associated entry in ifTable is + operationally disabled (thus removing MPLS + capabilities on that interface), the corresponding + entry in this table MUST be deleted shortly thereafter. + An conceptual row with index 0 is created if the LSR + supports per-platform labels. This conceptual row + represents the per-platform label space and contains + parameters that apply to all interfaces that participate + in the per-platform label space. Other conceptual rows + in this table represent MPLS interfaces that may + participate in either the per-platform or per- + interface label spaces, or both. Implementations + that either only support per-platform labels, + or have only them configured, may choose to return + just the mplsInterfaceEntry of 0 and not return + the other rows. This will greatly reduce the number + of objects returned. Further information about label + space participation of an interface is provided in + the DESCRIPTION clause of + mplsInterfaceLabelParticipationType." + INDEX { mplsInterfaceIndex } + ::= { mplsInterfaceTable 1 } + +MplsInterfaceEntry ::= SEQUENCE { + mplsInterfaceIndex InterfaceIndexOrZero, + mplsInterfaceLabelMinIn MplsLabel, + mplsInterfaceLabelMaxIn MplsLabel, + mplsInterfaceLabelMinOut MplsLabel, + mplsInterfaceLabelMaxOut MplsLabel, + mplsInterfaceTotalBandwidth MplsBitRate, + + + + mplsInterfaceAvailableBandwidth MplsBitRate, + mplsInterfaceLabelParticipationType BITS +} + +mplsInterfaceIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This is a unique index for an entry in the + MplsInterfaceTable. A non-zero index for an + entry indicates the ifIndex for the corresponding + interface entry of the MPLS-layer in the ifTable. + The entry with index 0 represents the per-platform + label space and contains parameters that apply to all + interfaces that participate in the per-platform label + space. Other entries defined in this table represent + additional MPLS interfaces that may participate in either + the per-platform or per-interface label spaces, or both." --- IPI Comments : Not Supported. + REFERENCE + "RFC 2863 - The Interfaces Group MIB, McCloghrie, K., + and F. Kastenholtz, June 2000" + ::= { mplsInterfaceEntry 1 } + +mplsInterfaceLabelMinIn OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This is the minimum value of an MPLS label that this + LSR is willing to receive on this interface." --- IPI Comments : SNMP SET is Not Supported. + ::= { mplsInterfaceEntry 2 } + +mplsInterfaceLabelMaxIn OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This is the maximum value of an MPLS label that this + LSR is willing to receive on this interface." --- IPI Comments : SNMP SET is Not Supported. + ::= { mplsInterfaceEntry 3 } + +mplsInterfaceLabelMinOut OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This is the minimum value of an MPLS label that this + + + + LSR is willing to send on this interface." --- IPI Comments : SNMP SET is Not Supported. + ::= { mplsInterfaceEntry 4 } + +mplsInterfaceLabelMaxOut OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This is the maximum value of an MPLS label that this + LSR is willing to send on this interface." --- IPI Comments : SNMP SET is Not Supported. + ::= { mplsInterfaceEntry 5 } + +mplsInterfaceTotalBandwidth OBJECT-TYPE + SYNTAX MplsBitRate + UNITS "kilobits per second" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value indicates the total amount of usable + bandwidth on this interface and is specified in + kilobits per second (Kbps). This variable is not + applicable when applied to the interface with index + 0. When this value cannot be measured, this value + should contain the nominal bandwidth." --- IPI Comments : SNMP SET is Not Supported. +::= { mplsInterfaceEntry 6 } + +mplsInterfaceAvailableBandwidth OBJECT-TYPE + SYNTAX MplsBitRate + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value indicates the total amount of available + bandwidth available on this interface and is + specified in kilobits per second (Kbps). This value + is calculated as the difference between the amount + of bandwidth currently in use and that specified in + mplsInterfaceTotalBandwidth. This variable is not + applicable when applied to the interface with index + 0. When this value cannot be measured, this value + should contain the nominal bandwidth." --- IPI Comments : SNMP SET is Not Supported. +::= { mplsInterfaceEntry 7 } + +mplsInterfaceLabelParticipationType OBJECT-TYPE + SYNTAX BITS { + perPlatform (0), + perInterface (1) + } + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "If the value of the mplsInterfaceIndex for this + entry is zero, then this entry corresponds to the + per-platform label space for all interfaces configured + to use that label space. In this case the perPlatform(0) + bit MUST be set; the perInterface(1) bit is meaningless + and MUST be ignored. + + The remainder of this description applies to entries + with a non-zero value of mplsInterfaceIndex. + + If the perInterface(1) bit is set then the value of + mplsInterfaceLabelMinIn, mplsInterfaceLabelMaxIn, + mplsInterfaceLabelMinOut, and + mplsInterfaceLabelMaxOut for this entry reflect the + label ranges for this interface. + + If only the perPlatform(0) bit is set, then the value of + mplsInterfaceLabelMinIn, mplsInterfaceLabelMaxIn, + mplsInterfaceLabelMinOut, and + mplsInterfaceLabelMaxOut for this entry MUST be + identical to the instance of these objects with + index 0. These objects may only vary from the entry + with index 0 if both the perPlatform(0) and perInterface(1) + bits are set. + + In all cases, at a minimum one of the perPlatform(0) or + perInterface(1) bits MUST be set to indicate that + at least one label space is in use by this interface. In + all cases, agents MUST ensure that label ranges are + specified consistently and MUST return an + inconsistentValue error when they do not." --- IPI Comments : SNMP SET is Not Supported. + REFERENCE + "Rosen, E., Viswanathan, A., and R. Callon, + Multiprotocol Label Switching Architecture, RFC + 3031, January 2001." +::= { mplsInterfaceEntry 8 } + +-- End of mplsInterfaceTable + + +-- MPLS Interface Performance Table. + +mplsInterfacePerfTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsInterfacePerfEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "This table provides MPLS performance information on + a per-interface basis." + ::= { mplsLsrObjects 2 } + +mplsInterfacePerfEntry OBJECT-TYPE + SYNTAX MplsInterfacePerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the LSR for + every interface capable of supporting MPLS. Its is + an extension to the mplsInterfaceEntry table. + Note that the discontinuity behavior of entries in + this table MUST be based on the corresponding + ifEntry's ifDiscontinuityTime." + AUGMENTS { mplsInterfaceEntry } + ::= { mplsInterfacePerfTable 1 } + +MplsInterfacePerfEntry ::= SEQUENCE { + -- incoming direction + mplsInterfacePerfInLabelsInUse Gauge32, + mplsInterfacePerfInLabelLookupFailures Counter32, + + -- outgoing direction + mplsInterfacePerfOutLabelsInUse Gauge32, + mplsInterfacePerfOutFragmentedPkts Counter32 + } + +mplsInterfacePerfInLabelsInUse OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of labels that are in + use at this point in time on this interface in the + incoming direction. If the interface participates in + only the per-platform label space, then the value of + the instance of this object MUST be identical to + the value of the instance with index 0. If the + interface participates in the per-interface label + space, then the instance of this object MUST + represent the number of per-interface labels that + are in use on this interface." --- IPI Comments : SNMP SET is not supported. + ::= { mplsInterfacePerfEntry 1 } + +mplsInterfacePerfInLabelLookupFailures OBJECT-TYPE + SYNTAX Counter32 + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of labeled packets + that have been received on this interface and which + were discarded because there was no matching cross- + connect entry. This object MUST count on a per- + interface basis regardless of which label space the + interface participates in." --- IPI Comments : SNMP SET is not supported. + ::= { mplsInterfacePerfEntry 2 } + +mplsInterfacePerfOutLabelsInUse OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of top-most labels in + the outgoing label stacks that are in use at this + point in time on this interface. This object MUST + count on a per-interface basis regardless of which + label space the interface participates in." --- IPI Comments : SNMP SET is not supported. + ::= { mplsInterfacePerfEntry 3 } + +mplsInterfacePerfOutFragmentedPkts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of outgoing MPLS + packets that required fragmentation before + transmission on this interface. This object MUST + count on a per-interface basis regardless of which + label space the interface participates in." --- IPI Comments : SNMP SET is not supported. +::= { mplsInterfacePerfEntry 4 } + +-- mplsInterfacePerf Table end. + +mplsInSegmentIndexNext OBJECT-TYPE + SYNTAX MplsIndexNextType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the next available value to + be used for mplsInSegmentIndex when creating entries + in the mplsInSegmentTable. The special value of a + string containing the single octet 0x00 indicates + that no new entries can be created in this table. + Agents not allowing managers to create entries + + + + in this table MUST set this object to this special + value." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLsrObjects 3 } + +-- in-segment table. +mplsInSegmentTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsInSegmentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains a description of the incoming MPLS + segments (labels) to an LSR and their associated parameters. + The index for this table is mplsInSegmentIndex. + The index structure of this table is specifically designed + to handle many different MPLS implementations that manage + their labels both in a distributed and centralized manner. + The table is also designed to handle existing MPLS labels + as defined in RFC3031 as well as longer ones that may + be necessary in the future. + + In cases where the label cannot fit into the + mplsInSegmentLabel object, the mplsInSegmentLabelPtr + will indicate this by being set to the first accessible + column in the appropriate extension table's row. + In this case an additional table MUST + be provided and MUST be indexed by at least the indexes + used by this table. In all other cases when the label is + represented within the mplsInSegmentLabel object, the + mplsInSegmentLabelPtr MUST be set to 0.0. Due to the + fact that MPLS labels may not exceed 24 bits, the + mplsInSegmentLabelPtr object is only a provision for + future-proofing the MIB module. Thus, the definition + of any extension tables is beyond the scope of this + MIB module." + ::= { mplsLsrObjects 4 } + +mplsInSegmentEntry OBJECT-TYPE + SYNTAX MplsInSegmentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents one incoming + segment as is represented in an LSR's LFIB. + An entry can be created by a network + administrator or an SNMP agent, or an MPLS signaling + protocol. The creator of the entry is denoted by + mplsInSegmentOwner. + + + + + The value of mplsInSegmentRowStatus cannot be active(1) + unless the ifTable entry corresponding to + mplsInSegmentInterface exists. An entry in this table + must match any incoming packets, and indicates an + instance of mplsXCEntry based on which forwarding + and/or switching actions are taken." + INDEX { mplsInSegmentIndex } + ::= { mplsInSegmentTable 1 } + +MplsInSegmentEntry ::= SEQUENCE { + mplsInSegmentIndex MplsIndexType, + mplsInSegmentInterface InterfaceIndexOrZero, + mplsInSegmentLabel MplsLabel, + mplsInSegmentLabelPtr RowPointer, + mplsInSegmentNPop Integer32, + mplsInSegmentAddrFamily AddressFamilyNumbers, + mplsInSegmentXCIndex MplsIndexType, + mplsInSegmentOwner MplsOwner , + mplsInSegmentTrafficParamPtr RowPointer, + mplsInSegmentRowStatus RowStatus, + mplsInSegmentStorageType StorageType +} + +mplsInSegmentIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index for this in-segment. The + string containing the single octet 0x00 + MUST not be used as an index." --- IPI Comments : Not Supported. + ::= { mplsInSegmentEntry 1 } + +mplsInSegmentInterface OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object represents the + interface index for the incoming MPLS interface. A + value of zero represents all interfaces participating in + the per-platform label space. This may only be used + in cases where the incoming interface and label + are associated with the same mplsXCEntry. Specifically, + given a label and any incoming interface pair from the + per-platform label space, the outgoing label/interface + mapping remains the same. If this is not the case, + then individual entries MUST exist that + + + + can then be mapped to unique mplsXCEntries." + ::= { mplsInSegmentEntry 2 } + +mplsInSegmentLabel OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the corresponding instance of mplsInSegmentLabelPtr is + zeroDotZero then this object MUST contain the incoming label + associated with this in-segment. If not this object SHOULD + be zero and MUST be ignored." + ::= { mplsInSegmentEntry 3 } + +mplsInSegmentLabelPtr OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the label for this segment cannot be represented + fully within the mplsInSegmentLabel object, + this object MUST point to the first accessible + column of a conceptual row in an external table containing + the label. In this case, the mplsInSegmentTopLabel + object SHOULD be set to 0 and ignored. This object MUST + be set to zeroDotZero otherwise." + DEFVAL { zeroDotZero } + ::= { mplsInSegmentEntry 4 } + +mplsInSegmentNPop OBJECT-TYPE + SYNTAX Integer32 (1..2147483647) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of labels to pop from the incoming + packet. Normally only the top label is popped from + the packet and used for all switching decisions for + that packet. This is indicated by setting this + object to the default value of 1. If an LSR supports + popping of more than one label, this object MUST + be set to that number. This object cannot be modified + if mplsInSegmentRowStatus is active(1)." + DEFVAL { 1 } + ::= { mplsInSegmentEntry 5 } + +mplsInSegmentAddrFamily OBJECT-TYPE + SYNTAX AddressFamilyNumbers + MAX-ACCESS read-create + + + + STATUS current + DESCRIPTION + "The IANA address family [IANAFamily] of packets + received on this segment, which is used at an egress + LSR to deliver them to the appropriate layer 3 entity. + A value of other(0) indicates that the family type is + either unknown or undefined; this SHOULD NOT be used + at an egress LSR. This object cannot be + modified if mplsInSegmentRowStatus is active(1)." + REFERENCE + "Internet Assigned Numbers Authority (IANA), ADDRESS + FAMILY NUMBERS, (http://www.iana.org/assignments/ + address-family-numbers), for MIB see: + http://www.iana.org/assignments/ + ianaaddressfamilynumbers-mib +" + DEFVAL { other } + ::= { mplsInSegmentEntry 6 } + +mplsInSegmentXCIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Index into mplsXCTable which identifies which cross- + connect entry this segment is part of. The string + containing the single octet 0x00 indicates that this + entry is not referred to by any cross-connect entry. + When a cross-connect entry is created which this + in-segment is a part of, this object is automatically + updated to reflect the value of mplsXCIndex of that + cross-connect entry." --- IPI Comments : SNMP SET is not supported. + ::= { mplsInSegmentEntry 7 } + +mplsInSegmentOwner OBJECT-TYPE + SYNTAX MplsOwner + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Denotes the entity that created and is responsible + for managing this segment." --- IPI Comments : SNMP SET is not supported. + ::= { mplsInSegmentEntry 8 } + +mplsInSegmentTrafficParamPtr OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "This variable represents a pointer to the traffic + parameter specification for this in-segment. This + value may point at an entry in the + mplsTunnelResourceTable in the MPLS-TE-STD-MIB (RFC3812) + to indicate which traffic parameter settings for this + segment if it represents an LSP used for a TE tunnel. + + This value may optionally point at an + externally defined traffic parameter specification + table. A value of zeroDotZero indicates best-effort + treatment. By having the same value of this object, + two or more segments can indicate resource sharing + of such things as LSP queue space, etc. + + This object cannot be modified if mplsInSegmentRowStatus + is active(1). For entries in this table that + are preserved after a re-boot, the agent MUST ensure + that their integrity be preserved, or this object should + be set to 0.0 if it cannot." + DEFVAL { zeroDotZero } + ::= { mplsInSegmentEntry 9 } + +mplsInSegmentRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable is used to create, modify, and/or + delete a row in this table. When a row in this + table has a row in the active(1) state, no + objects in this row can be modified except the + mplsInSegmentRowStatus and mplsInSegmentStorageType." + ::= { mplsInSegmentEntry 10 } + +mplsInSegmentStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the storage type for this + object. The agent MUST ensure that this object's + value remains consistent with the associated + mplsXCEntry. Conceptual rows having the value + 'permanent' need not allow write-access to any + columnar objects in the row." + REFERENCE + "See RFC2579." + DEFVAL { volatile } + + + + ::= { mplsInSegmentEntry 11 } + +-- End of mplsInSegmentTable + +-- in-segment performance table. + +mplsInSegmentPerfTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsInSegmentPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains statistical information for + incoming MPLS segments to an LSR." + ::= { mplsLsrObjects 5 } + +mplsInSegmentPerfEntry OBJECT-TYPE + SYNTAX MplsInSegmentPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table contains statistical + information about one incoming segment which is + configured in the mplsInSegmentTable. The counters + in this entry should behave in a manner similar to + that of the interface. + mplsInSegmentPerfDiscontinuityTime indicates the + time of the last discontinuity in all of these + objects." + AUGMENTS { mplsInSegmentEntry } + ::= { mplsInSegmentPerfTable 1 } + +MplsInSegmentPerfEntry ::= SEQUENCE { + mplsInSegmentPerfOctets Counter32, + mplsInSegmentPerfPackets Counter32, + mplsInSegmentPerfErrors Counter32, + mplsInSegmentPerfDiscards Counter32, + + -- high capacity counter + mplsInSegmentPerfHCOctets Counter64, + + mplsInSegmentPerfDiscontinuityTime TimeStamp + } + +mplsInSegmentPerfOctets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "This value represents the total number of octets + received by this segment. It MUST be equal to the + least significant 32 bits of + mplsInSegmentPerfHCOctets + if mplsInSegmentPerfHCOctets is supported according to + the rules spelled out in RFC2863." --- IPI Comments : SNMP SET is not supported. + ::= { mplsInSegmentPerfEntry 1 } + +mplsInSegmentPerfPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Total number of packets received by this segment." --- IPI Comments : SNMP SET is not supported. + ::= { mplsInSegmentPerfEntry 2 } + +mplsInSegmentPerfErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of errored packets received on this + segment." --- IPI Comments : SNMP SET is not supported. + ::= { mplsInSegmentPerfEntry 3 } + +mplsInSegmentPerfDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of labeled packets received on this in- + segment, which were chosen to be discarded even + though no errors had been detected to prevent their + being transmitted. One possible reason for + discarding such a labeled packet could be to free up + buffer space." --- IPI Comments : SNMP SET is not supported. + ::= { mplsInSegmentPerfEntry 4 } + +mplsInSegmentPerfHCOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of octets received. This is the 64 + bit version of mplsInSegmentPerfOctets, + if mplsInSegmentPerfHCOctets is supported according to + the rules spelled out in RFC2863." --- IPI Comments : SNMP SET is not supported. + ::= { mplsInSegmentPerfEntry 5 } + + + + +mplsInSegmentPerfDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one or more of this segment's Counter32 + or Counter64 suffered a discontinuity. If no such + discontinuities have occurred since the last re- + initialization of the local management subsystem, + then this object contains a zero value." --- IPI Comments : SNMP SET is not supported. + ::= { mplsInSegmentPerfEntry 6 } + +-- End of mplsInSegmentPerfTable. + +-- out-segment table. + +mplsOutSegmentIndexNext OBJECT-TYPE + SYNTAX MplsIndexNextType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the next available value to + be used for mplsOutSegmentIndex when creating entries + in the mplsOutSegmentTable. The special value of a + string containing the single octet 0x00 + indicates that no new entries can be created in this + table. Agents not allowing managers to create entries + in this table MUST set this object to this special + value." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLsrObjects 6 } + +mplsOutSegmentTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsOutSegmentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains a representation of the outgoing + segments from an LSR." + ::= { mplsLsrObjects 7 } + +mplsOutSegmentEntry OBJECT-TYPE + SYNTAX MplsOutSegmentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents one outgoing + + + + segment. An entry can be created by a network + administrator, an SNMP agent, or an MPLS signaling + protocol. The object mplsOutSegmentOwner indicates + the creator of this entry. The value of + mplsOutSegmentRowStatus cannot be active(1) unless + the ifTable entry corresponding to + mplsOutSegmentInterface exists. + + Note that the indexing of this table uses a single, + arbitrary index (mplsOutSegmentIndex) to indicate + which out-segment (i.e.: label) is being switched to + from which in-segment (i.e: label) or in-segments. + This is necessary because it is possible to have an + equal-cost multi-path situation where two identical + out-going labels are assigned to the same + cross-connect (i.e.: they go to two different neighboring + LSRs); thus, requiring two out-segments. In order to + preserve the uniqueness of the references + by the mplsXCEntry, an arbitrary integer must be used as + the index for this table." + INDEX { mplsOutSegmentIndex } + ::= { mplsOutSegmentTable 1 } + +MplsOutSegmentEntry ::= SEQUENCE { + mplsOutSegmentIndex MplsIndexType, + mplsOutSegmentInterface InterfaceIndexOrZero, + mplsOutSegmentPushTopLabel TruthValue, + mplsOutSegmentTopLabel MplsLabel, + mplsOutSegmentTopLabelPtr RowPointer, + mplsOutSegmentNextHopAddrType InetAddressType, + mplsOutSegmentNextHopAddr InetAddress, + mplsOutSegmentXCIndex MplsIndexType, + mplsOutSegmentOwner MplsOwner, + mplsOutSegmentTrafficParamPtr RowPointer, + mplsOutSegmentRowStatus RowStatus, + mplsOutSegmentStorageType StorageType +} + +mplsOutSegmentIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This value contains a unique index for this row. + While a value of a string containing the single + octet 0x00 is not valid as an index for entries + in this table, it can be supplied as a valid value + to index the mplsXCTable to represent entries for + + + + which no out-segment has been configured or + exists." --- IPI Comments : Not supported. + ::= { mplsOutSegmentEntry 1 } + +mplsOutSegmentInterface OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value must contain the interface index of the + outgoing interface. This object cannot be modified + if mplsOutSegmentRowStatus is active(1). The + mplsOutSegmentRowStatus cannot be set to active(1) + until this object is set to a value corresponding to + a valid ifEntry." + ::= { mplsOutSegmentEntry 2 } + +mplsOutSegmentPushTopLabel OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value indicates whether or not a top label + should be pushed onto the outgoing packet's label + stack. The value of this variable MUST be set to + true(1) if the outgoing interface does not support + pop-and-go (and no label stack remains). For example, + on ATM interface, or if the segment represents a + tunnel origination. Note that it is considered + an error in the case that mplsOutSegmentPushTopLabel + is set to false, but the cross-connect entry which + refers to this out-segment has a non-zero + mplsLabelStackIndex. The LSR MUST ensure that this + situation does not happen. This object cannot be + modified if mplsOutSegmentRowStatus is active(1)." --- IPI Comments : mplsOutSegmentPushTopLabel is taking only "true" value. + DEFVAL { true } + ::= { mplsOutSegmentEntry 3 } + +mplsOutSegmentTopLabel OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If mplsOutSegmentPushTopLabel is true then this + represents the label that should be pushed onto the + top of the outgoing packet's label stack. Otherwise + this value SHOULD be set to 0 by the management + station and MUST be ignored by the agent. This + + + + object cannot be modified if mplsOutSegmentRowStatus + is active(1)." + DEFVAL { 0 } + ::= { mplsOutSegmentEntry 4 } + +mplsOutSegmentTopLabelPtr OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the label for this segment cannot be represented + fully within the mplsOutSegmentLabel object, + this object MUST point to the first accessible + column of a conceptual row in an external table containing + the label. In this case, the mplsOutSegmentTopLabel + object SHOULD be set to 0 and ignored. This object + MUST be set to zeroDotZero otherwise." --- IPI Comments : points to the first accessible column of a conceptual row in an external table containing the label + + DEFVAL { zeroDotZero } + ::= { mplsOutSegmentEntry 5 } + +mplsOutSegmentNextHopAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates the next hop Internet address type. + Only values unknown(0), ipv4(1) or ipv6(2) + have to be supported. + + A value of unknown(0) is allowed only when + the outgoing interface is of type point-to-point. + If any other unsupported values are attempted in a set + operation, the agent MUST return an inconsistentValue + error." --- IPI Comments : In ZebOS,it supports only ipv4 + REFERENCE + "See RFC3291." + ::= { mplsOutSegmentEntry 6 } + +mplsOutSegmentNextHopAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The internet address of the next hop. The type of + this address is determined by the value of the + mplslOutSegmentNextHopAddrType object. + + This object cannot be modified if + + + + mplsOutSegmentRowStatus is active(1)." + ::= { mplsOutSegmentEntry 7 } + +mplsOutSegmentXCIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Index into mplsXCTable which identifies which cross- + connect entry this segment is part of. A value of + the string containing the single octet 0x00 + indicates that this entry is not referred + to by any cross-connect entry. When a cross-connect + entry is created which this out-segment is a part of, + this object MUST be updated by the agent to reflect + the value of mplsXCIndex of that cross-connect + entry." --- IPI Comments : SNMP SET is not supported. + ::= { mplsOutSegmentEntry 8 } + +mplsOutSegmentOwner OBJECT-TYPE + SYNTAX MplsOwner + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Denotes the entity which created and is responsible + for managing this segment." --- IPI Comments : SNMP SET is not supported. + ::= { mplsOutSegmentEntry 9 } + +mplsOutSegmentTrafficParamPtr OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable represents a pointer to the traffic + parameter specification for this out-segment. This + value may point at an entry in the + MplsTunnelResourceEntry in the MPLS-TE-STD-MIB (RFC3812) + + RFC Editor: Please fill in RFC number. + + to indicate which traffic parameter settings for this + segment if it represents an LSP used for a TE tunnel. + + This value may optionally point at an + externally defined traffic parameter specification + table. A value of zeroDotZero indicates best-effort + treatment. By having the same value of this object, + two or more segments can indicate resource sharing + + + + of such things as LSP queue space, etc. + + This object cannot be modified if + mplsOutSegmentRowStatus is active(1). + For entries in this table that + are preserved after a re-boot, the agent MUST ensure + that their integrity be preserved, or this object should + be set to 0.0 if it cannot." --- IPI Comments : This variable represents a pointer to the traffic parameter specification for this out-segment + + DEFVAL { zeroDotZero } + ::= { mplsOutSegmentEntry 10 } + +mplsOutSegmentRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "For creating, modifying, and deleting this row. + When a row in this table has a row in the active(1) + state, no objects in this row can be modified + except the mplsOutSegmentRowStatus or + mplsOutSegmentStorageType." + ::= { mplsOutSegmentEntry 11 } + +mplsOutSegmentStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the storage type for this + object. The agent MUST ensure that this object's value + remains consistent with the associated mplsXCEntry. + Conceptual rows having the value 'permanent' + need not allow write-access to any columnar + objects in the row." --- IPI Comments : In ZebOS, it supports only Volatile(2). + DEFVAL { volatile } + ::= { mplsOutSegmentEntry 12 } + +-- End of mplsOutSegmentTable + + +-- out-segment performance table. + +mplsOutSegmentPerfTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsOutSegmentPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains statistical information about + + + + outgoing segments from an LSR. The counters in this + entry should behave in a manner similar to that of + the interface." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLsrObjects 8 } + +mplsOutSegmentPerfEntry OBJECT-TYPE + SYNTAX MplsOutSegmentPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table contains statistical + information about one outgoing segment configured in + mplsOutSegmentTable. The object + mplsOutSegmentPerfDiscontinuityTime indicates the + time of the last discontinuity in these objects. " + AUGMENTS { mplsOutSegmentEntry } + ::= { mplsOutSegmentPerfTable 1 } + +MplsOutSegmentPerfEntry ::= SEQUENCE { + mplsOutSegmentPerfOctets Counter32, + mplsOutSegmentPerfPackets Counter32, + mplsOutSegmentPerfErrors Counter32, + mplsOutSegmentPerfDiscards Counter32, + + -- HC counter + mplsOutSegmentPerfHCOctets Counter64, + + mplsOutSegmentPerfDiscontinuityTime TimeStamp + } + +mplsOutSegmentPerfOctets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value contains the total number of octets sent + on this segment. It MUST be equal to the least + significant 32 bits of mplsOutSegmentPerfHCOctets + if mplsOutSegmentPerfHCOctets is supported according to + the rules spelled out in RFC2863." + ::= { mplsOutSegmentPerfEntry 1 } + +mplsOutSegmentPerfPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value contains the total number of packets sent + + + + on this segment." --- IPI Comments : SNMP SET is not supported. + ::= { mplsOutSegmentPerfEntry 2 } + +mplsOutSegmentPerfErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of packets that could not be sent due to + errors on this segment." --- IPI Comments : SNMP SET is not supported. + ::= { mplsOutSegmentPerfEntry 3 } + +mplsOutSegmentPerfDiscards OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of labeled packets attempted to be transmitted + on this out-segment, which were chosen to be discarded + even though no errors had been detected to prevent their + being transmitted. One possible reason for + discarding such a labeled packet could be to free up + buffer space." --- IPI Comments : SNMP SET is not supported. + ::= { mplsOutSegmentPerfEntry 4 } + +mplsOutSegmentPerfHCOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Total number of octets sent. This is the 64 bit + version of mplsOutSegmentPerfOctets, + if mplsOutSegmentPerfHCOctets is supported according to + the rules spelled out in RFC2863." --- IPI Comments : SNMP SET is not supported. + ::= { mplsOutSegmentPerfEntry 5 } + +mplsOutSegmentPerfDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one or more of this segment's Counter32 + or Counter64 suffered a discontinuity. If no such + discontinuities have occurred since the last re- + initialization of the local management subsystem, + then this object contains a zero value." --- IPI Comments : SNMP SET is not supported. + ::= { mplsOutSegmentPerfEntry 6 } + + + + +-- End of mplsOutSegmentPerfTable. + + +-- Cross-connect table. + +mplsXCIndexNext OBJECT-TYPE + SYNTAX MplsIndexNextType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the next available value to + be used for mplsXCIndex when creating entries in + the mplsXCTable. A special value of the zero length + string indicates that no more new entries can be created + in the relevant table. Agents not allowing managers + to create entries in this table MUST set this value + to the zero length string." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLsrObjects 9 } + +mplsXCTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsXCEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table specifies information for switching + between LSP segments. It supports point-to-point, + point-to-multipoint and multipoint-to-point + connections. mplsLabelStackTable specifies the + label stack information for a cross-connect LSR and + is referred to from mplsXCTable." --- IPI Comments : + ::= { mplsLsrObjects 10 } + +mplsXCEntry OBJECT-TYPE + SYNTAX MplsXCEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table represents one cross-connect + entry. It is indexed by the following objects: + + - cross-connect index mplsXCIndex that uniquely + identifies a group of cross-connect entries + + - in-segment index, mplsXCInSegmentIndex + + - out-segment index, mplsXCOutSegmentIndex + + + + + LSPs originating at this LSR: + These are represented by using the special + of value of mplsXCInSegmentIndex set to the + string containing a single octet 0x00. In + this case the mplsXCOutSegmentIndex + MUST not be the string containing a single + octet 0x00. + + LSPs terminating at this LSR: + These are represented by using the special value + mplsXCOutSegmentIndex set to the string containing + a single octet 0x00. + + Special labels: + Entries indexed by the strings containing the + reserved MPLS label values as a single octet 0x00 + through 0x0f (inclusive) imply LSPs terminating at + this LSR. Note that situations where LSPs are + terminated with incoming label equal to the string + containing a single octet 0x00 can be distinguished + from LSPs originating at this LSR because the + mplsXCOutSegmentIndex equals the string containing the + single octet 0x00. + + An entry can be created by a network administrator + or by an SNMP agent as instructed by an MPLS + signaling protocol." + INDEX { mplsXCIndex, mplsXCInSegmentIndex, + mplsXCOutSegmentIndex } + ::= { mplsXCTable 1 } + +MplsXCEntry ::= SEQUENCE { + mplsXCIndex MplsIndexType, + mplsXCInSegmentIndex MplsIndexType, + mplsXCOutSegmentIndex MplsIndexType, + mplsXCLspId MplsLSPID, + mplsXCLabelStackIndex MplsIndexType, + mplsXCOwner MplsOwner , + mplsXCRowStatus RowStatus, + mplsXCStorageType StorageType, + mplsXCAdminStatus INTEGER, + mplsXCOperStatus INTEGER + } + +mplsXCIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "Primary index for the conceptual row identifying a + group of cross-connect segments. The string + containing a single octet 0x00 is an invalid index." --- IPI Comments : Not supported. + ::= { mplsXCEntry 1 } + +mplsXCInSegmentIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Incoming label index. + If this object is set to the string containing + a single octet 0x00, this indicates a special + case outlined in the table's description above. + In this case no corresponding mplsInSegmentEntry + shall exist." --- IPI Comments : Not supported. + ::= { mplsXCEntry 2 } + +mplsXCOutSegmentIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Index of out-segment for LSPs not terminating on + this LSR if not set to the string containing the + single octet 0x00. If the segment identified by this + entry is terminating, then this object MUST be set to + the string containing a single octet 0x00 to indicate + that no corresponding mplsOutSegmentEntry shall + exist." --- IPI Comments : Not supported. + ::= { mplsXCEntry 3 } + +mplsXCLspId OBJECT-TYPE + SYNTAX MplsLSPID + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value identifies the label switched path that + this cross-connect entry belongs to. This object + cannot be modified if mplsXCRowStatus is active(1) + except for this object." --- IPI Comments:Returns the LSP id and set operation is working . But it is taking only value "0" + + ::= { mplsXCEntry 4 } + +mplsXCLabelStackIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "Primary index into mplsLabelStackTable identifying a + stack of labels to be pushed beneath the top label. + Note that the top label identified by the out- + segment ensures that all the components of a + multipoint-to-point connection have the same + outgoing label. A value of the string containing the + single octet 0x00 indicates that no labels are to + be stacked beneath the top label. + This object cannot be modified if mplsXCRowStatus is + active(1)." --- IPI Comments: By default it is set to 0. In SET operation, Only possible value that can be set is 0. + ::= { mplsXCEntry 5 } + +mplsXCOwner OBJECT-TYPE + SYNTAX MplsOwner + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Denotes the entity that created and is responsible + for managing this cross-connect." --- IPI Comments : SNMP SET is not supported. + ::= { mplsXCEntry 6 } + +mplsXCRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "For creating, modifying, and deleting this row. + When a row in this table has a row in the active(1) + state, no objects in this row except this object + and the mplsXCStorageType can be modified. " + ::= { mplsXCEntry 7 } + +mplsXCStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the storage type for this + object. The agent MUST ensure that the associated in + and out segments also have the same StorageType value + and are restored consistently upon system restart. + This value SHOULD be set to permanent(4) if created + as a result of a static LSP configuration. + + Conceptual rows having the value 'permanent' + need not allow write-access to any columnar + objects in the row." --- IPI Comments : The only possible value that can be SET and GET is volatile(2). + + + + DEFVAL { volatile } + ::= { mplsXCEntry 8 } + +mplsXCAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), -- ready to pass packets + down(2), + testing(3) -- in some test mode + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The desired operational status of this segment." + DEFVAL { up } + ::= { mplsXCEntry 9 } + +mplsXCOperStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), -- ready to pass packets + down(2), + testing(3), -- in some test mode + unknown(4), -- status cannot be determined + -- for some reason. + dormant(5), + notPresent(6), -- some component is missing + lowerLayerDown(7) -- down due to the state of + -- lower layer interfaces + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The actual operational status of this cross- + connect." + + ::= { mplsXCEntry 10 } + +-- End of mplsXCTable + + +-- Label stack table. + +mplsMaxLabelStackDepth OBJECT-TYPE + SYNTAX Unsigned32 (1..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The maximum stack depth supported by this LSR." +::= { mplsLsrObjects 11 } + + + + +mplsLabelStackIndexNext OBJECT-TYPE + SYNTAX MplsIndexNextType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the next available value to + be used for mplsLabelStackIndex when creating entries + in the mplsLabelStackTable. The special string + containing the single octet 0x00 + indicates that no more new entries can be created + in the relevant table. Agents not allowing managers + to create entries in this table MUST set this value + to the string containing the single octet 0x00." --- IPI Comments : Not Supported. +::= { mplsLsrObjects 12 } + +mplsLabelStackTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLabelStackEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table specifies the label stack to be pushed + onto a packet, beneath the top label. Entries into + this table are referred to from mplsXCTable." + ::= { mplsLsrObjects 13 } + +mplsLabelStackEntry OBJECT-TYPE + SYNTAX MplsLabelStackEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents one label which is + to be pushed onto an outgoing packet, beneath the + top label. An entry can be created by a network + administrator or by an SNMP agent as instructed by + an MPLS signaling protocol." + INDEX { mplsLabelStackIndex, mplsLabelStackLabelIndex } + ::= { mplsLabelStackTable 1 } + +MplsLabelStackEntry ::= SEQUENCE { + mplsLabelStackIndex MplsIndexType, + mplsLabelStackLabelIndex Unsigned32, + mplsLabelStackLabel MplsLabel, + mplsLabelStackLabelPtr RowPointer, + mplsLabelStackRowStatus RowStatus, + mplsLabelStackStorageType StorageType + } + +mplsLabelStackIndex OBJECT-TYPE + + + + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Primary index for this row identifying a stack of + labels to be pushed on an outgoing packet, beneath + the top label. An index containing the string with + a single octet 0x00 MUST not be used." --- IPI Comments : Not Supported. + ::= { mplsLabelStackEntry 1 } + +mplsLabelStackLabelIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..2147483647) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Secondary index for this row identifying one label + of the stack. Note that an entry with a smaller + mplsLabelStackLabelIndex would refer to a label + higher up the label stack and would be popped at a + downstream LSR before a label represented by a + higher mplsLabelStackLabelIndex at a downstream + LSR." --- IPI Comments : Not Supported. + ::= { mplsLabelStackEntry 2 } + +mplsLabelStackLabel OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The label to pushed." --- IPI Comments : Not Supported. + ::= { mplsLabelStackEntry 3 } + +mplsLabelStackLabelPtr OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the label for this segment cannot be represented + fully within the mplsLabelStackLabel object, + this object MUST point to the first accessible + column of a conceptual row in an external table containing + the label. In this case, the mplsLabelStackLabel + object SHOULD be set to 0 and ignored. This object + MUST be set to zeroDotZero otherwise." --- IPI Comments : Not Supported. + DEFVAL { zeroDotZero } + ::= { mplsLabelStackEntry 4 } + +mplsLabelStackRowStatus OBJECT-TYPE + + + + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "For creating, modifying, and deleting this row. + When a row in this table has a row in the active(1) + state, no objects in this row except this object + and the mplsLabelStackStorageType can be modified." --- IPI Comments : Not Supported. + ::= { mplsLabelStackEntry 5 } + +mplsLabelStackStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the storage type for this + object. This object cannot be modified if + mplsLabelStackRowStatus is active(1). + No objects are required to be writable for + rows in this table with this object set to + permanent(4). + + The agent MUST ensure that all related entries + in this table retain the same value for this + object. Agents MUST ensure that the storage type + for all entries related to a particular mplsXCEntry + retain the same value for this object as the + mplsXCEntry's StorageType." --- IPI Comments : Not Supported. + DEFVAL { volatile } + ::= { mplsLabelStackEntry 6 } + +-- End of mplsLabelStackTable + +-- Begin mplsInSegmentMapTable + +mplsInSegmentMapTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsInSegmentMapEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table specifies the mapping from the + mplsInSegmentIndex to the corresponding + mplsInSegmentInterface and mplsInSegmentLabel + objects. The purpose of this table is to + provide the manager with an alternative + means by which to locate in-segments." + ::= { mplsLsrObjects 14 } + + + + +mplsInSegmentMapEntry OBJECT-TYPE + SYNTAX MplsInSegmentMapEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents one interface + and incoming label pair. + + In cases where the label cannot fit into the + mplsInSegmentLabel object, the mplsInSegmentLabelPtr + will indicate this by being set to the first accessible + column in the appropriate extension table's row, + and the mplsInSegmentLabel SHOULD be set to 0. + In all other cases when the label is + represented within the mplsInSegmentLabel object, the + mplsInSegmentLabelPtr MUST be 0.0. + + Implementors need to be aware that if the value of + the mplsInSegmentMapLabelPtrIndex (an OID) has more + that 111 sub-identifiers, then OIDs of column + instances in this table will have more than 128 + sub-identifiers and cannot be accessed using SNMPv1, + SNMPv2c, or SNMPv3." + INDEX { mplsInSegmentMapInterface, + mplsInSegmentMapLabel, + mplsInSegmentMapLabelPtrIndex } + ::= { mplsInSegmentMapTable 1 } + +MplsInSegmentMapEntry ::= SEQUENCE { + mplsInSegmentMapInterface InterfaceIndexOrZero, + mplsInSegmentMapLabel MplsLabel, + mplsInSegmentMapLabelPtrIndex RowPointer, + mplsInSegmentMapIndex MplsIndexType + } + +mplsInSegmentMapInterface OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This index contains the same value as the + mplsInSegmentIndex in the mplsInSegmentTable." --- IPI Comments : Not Supported. + ::= { mplsInSegmentMapEntry 1 } + +mplsInSegmentMapLabel OBJECT-TYPE + SYNTAX MplsLabel + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "This index contains the same value as the + mplsInSegmentLabel in the mplsInSegmentTable." --- IPI Comments : Not Supported. + ::= { mplsInSegmentMapEntry 2 } + +mplsInSegmentMapLabelPtrIndex OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This index contains the same value as the + mplsInSegmentLabelPtr. + + If the label for the InSegment cannot be represented + fully within the mplsInSegmentLabel object, + this index MUST point to the first accessible + column of a conceptual row in an external table containing + the label. In this case, the mplsInSegmentTopLabel + object SHOULD be set to 0 and ignored. This object MUST + be set to zeroDotZero otherwise." --- IPI Comments : Not Supported. + ::= { mplsInSegmentMapEntry 3 } + +mplsInSegmentMapIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The mplsInSegmentIndex that corresponds + to the mplsInSegmentInterface and + mplsInSegmentLabel, or the mplsInSegmentInterface + and mplsInSegmentLabelPtr, if applicable. + The string containing the single octet 0x00 + MUST not be returned." --- IPI Comments : SNMP SET is Not Supported. + ::= { mplsInSegmentMapEntry 4 } + +-- End mplsInSegmentMapTable + + +-- Notification Configuration + +mplsXCNotificationsEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If this object is set to true(1), then it enables + the emission of mplsXCUp and mplsXCDown + notifications; otherwise these notifications are not + + + + emitted." + REFERENCE + "See also RFC3413 for explanation that + notifications are under the ultimate control of the + MIB module in this document." + DEFVAL { false } + ::= { mplsLsrObjects 15 } + +-- Cross-connect. + +mplsXCUp NOTIFICATION-TYPE + OBJECTS { mplsXCOperStatus, -- start of range + mplsXCOperStatus -- end of range + } + STATUS current + DESCRIPTION + "This notification is generated when the + mplsXCOperStatus object for one or more contiguous + entries in mplsXCTable are about to enter the up(1) + state from some other state. The included values of + mplsXCOperStatus MUST both be set equal to this + new state (i.e: up(1)). The two instances of + mplsXCOperStatus in this notification indicate the range + of indexes that are affected. Note that all the indexes + of the two ends of the range can be derived from the + instance identifiers of these two objects. For + cases where a contiguous range of cross-connects + have transitioned into the up(1) state at roughly + the same time, the device SHOULD issue a single + notification for each range of contiguous indexes in + an effort to minimize the emission of a large number + of notifications. If a notification has to be + issued for just a single cross-connect entry, then + the instance identifier (and values) of the two + mplsXCOperStatus objects MUST be the identical." + ::= { mplsLsrNotifications 1 } + +mplsXCDown NOTIFICATION-TYPE + OBJECTS { + mplsXCOperStatus, -- start of range + mplsXCOperStatus -- end of range + } + STATUS current + DESCRIPTION + "This notification is generated when the + mplsXCOperStatus object for one or more contiguous + entries in mplsXCTable are about to enter the + down(2) state from some other state. The included values + + + + of mplsXCOperStatus MUST both be set equal to this + down(2) state. The two instances of mplsXCOperStatus + in this notification indicate the range of indexes + that are affected. Note that all the indexes of the + two ends of the range can be derived from the + instance identifiers of these two objects. For + cases where a contiguous range of cross-connects + have transitioned into the down(2) state at roughly + the same time, the device SHOULD issue a single + notification for each range of contiguous indexes in + an effort to minimize the emission of a large number + of notifications. If a notification has to be + issued for just a single cross-connect entry, then + the instance identifier (and values) of the two + mplsXCOperStatus objects MUST be identical." + ::= { mplsLsrNotifications 2 } + +-- End of notifications. + + +-- Module compliance. + +mplsLsrGroups + OBJECT IDENTIFIER ::= { mplsLsrConformance 1 } + +mplsLsrCompliances + OBJECT IDENTIFIER ::= { mplsLsrConformance 2 } + +-- Compliance requirement for fully compliant implementations. + +mplsLsrModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION "Compliance statement for agents that provide full + support for MPLS-LSR-STD-MIB. Such devices can + then be monitored and also be configured using + this MIB module." + + MODULE IF-MIB -- The Interfaces Group MIB, RFC 2863. + MANDATORY-GROUPS { + ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + } + + MODULE -- This module. + MANDATORY-GROUPS { + mplsInterfaceGroup, + mplsInSegmentGroup, + mplsOutSegmentGroup, + + + + mplsXCGroup, + mplsPerfGroup + } + + GROUP mplsLabelStackGroup + DESCRIPTION "This group is only mandatory for LSRs that wish to + support the modification of LSP label stacks. + " + + GROUP mplsHCInSegmentPerfGroup + DESCRIPTION "This group is mandatory for those in-segment entries + for which the object mplsInSegmentOutOctets wraps + around too quickly based on the criteria specified in + RFC 2863 for high-capacity counters. + " + + GROUP mplsHCOutSegmentPerfGroup + DESCRIPTION "This group is mandatory for those out-segment entries + for which the object mplsOutSegmentPerfOctets wraps + around too quickly based on the criteria specified in + RFC 2863 for high-capacity counters. + " + + GROUP mplsLsrNotificationGroup + DESCRIPTION "This group is only mandatory for those implementations + which can efficiently implement the notifications + contained in this group." + + OBJECT mplsInSegmentRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is + not required." + + OBJECT mplsOutSegmentNextHopAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + DESCRIPTION "Only unknown(0), ipv4(1) and ipv6(2) support + is required." + + OBJECT mplsOutSegmentNextHopAddr + SYNTAX InetAddress (SIZE(0|4|16)) + DESCRIPTION "An implementation is only required to support + unknown(0), ipv4(1) and ipv6(2) sizes." + + OBJECT mplsOutSegmentRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + + + + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required." + + OBJECT mplsLabelStackRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required." + + OBJECT mplsXCRowStatus + SYNTAX RowStatus { active(1), notInService(2) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait and notReady is not + required." + + ::= { mplsLsrCompliances 1 } + +-- Compliance requirement for read-only implementations. + +mplsLsrModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION "Compliance requirement for implementations that only + provide read-only support for MPLS-LSR-STD-MIB. Such + devices can then be monitored but cannot be configured + using this MIB module. + " + + MODULE IF-MIB -- The interfaces Group MIB, RFC 2863 + MANDATORY-GROUPS { + ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + } + + MODULE -- This module + MANDATORY-GROUPS { + mplsInterfaceGroup, + mplsInSegmentGroup, + mplsOutSegmentGroup, + mplsXCGroup, + mplsPerfGroup + } + + + + GROUP mplsLabelStackGroup + DESCRIPTION "This group is only mandatory for LSRs that wish to + support the modification of LSP label stacks. + " + + GROUP mplsHCInSegmentPerfGroup + DESCRIPTION "This group is mandatory for those in-segment entries + for which the object mplsInSegmentOutOctets wraps + around too quickly based on the criteria specified in + RFC 2863 for high-capacity counters. + " + + GROUP mplsHCOutSegmentPerfGroup + DESCRIPTION "This group is mandatory for those out-segment entries + for which the object mplsOutSegmentPerfOctets wraps + around too quickly based on the criteria specified in + RFC 2863 for high-capacity counters. + " + + GROUP mplsLsrNotificationGroup + DESCRIPTION "This group is only mandatory for those implementations + which can efficiently implement the notifications + contained in this group. + " + + -- mplsInSegmentTable + OBJECT mplsInSegmentLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsInSegmentLabelPtr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsInSegmentNPop + SYNTAX Integer32 (1..1) + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. This object + SHOULD be set to 1 if it is read-only. + " + + OBJECT mplsInSegmentAddrFamily + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. A value of other(0) + should be supported because there may be cases where + the agent may not know about or support any address + types. + " + + + + OBJECT mplsInSegmentRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsInSegmentStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + -- mplsOutSegmentTable + OBJECT mplsOutSegmentInterface + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsOutSegmentPushTopLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsOutSegmentTopLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsOutSegmentTopLabelPtr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsOutSegmentNextHopAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. Only unknown(0), + ipv4(1) and ipv6(2) support is required. + " + + OBJECT mplsOutSegmentNextHopAddr + SYNTAX InetAddress (SIZE(0|4|16)) + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. An implementation is + only required to support unknown(0), ipv4(1) and + ipv6(2) sizes." + + OBJECT mplsOutSegmentRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsOutSegmentStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + + + -- mplsXCTable + OBJECT mplsXCLabelStackIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsXCAdminStatus + MIN-ACCESS read-only + DESCRIPTION "Read only support is required." + + OBJECT mplsXCRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsXCStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsLabelStackLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsLabelStackLabelPtr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsLabelStackRowStatus + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT mplsLabelStackStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { mplsLsrCompliances 2 } + +-- Units of conformance. + +mplsInterfaceGroup OBJECT-GROUP + OBJECTS { + mplsInterfaceLabelMinIn, + mplsInterfaceLabelMaxIn, + mplsInterfaceLabelMinOut, + mplsInterfaceLabelMaxOut, + mplsInterfaceTotalBandwidth, + mplsInterfaceAvailableBandwidth, + mplsInterfaceLabelParticipationType + } + + + + STATUS current + DESCRIPTION + "Collection of objects needed for MPLS interface + and interface performance information." + ::= { mplsLsrGroups 1 } + +mplsInSegmentGroup OBJECT-GROUP + OBJECTS { + mplsInSegmentIndexNext, + mplsInSegmentInterface, + mplsInSegmentLabel, + mplsInSegmentLabelPtr, + mplsInSegmentNPop, + mplsInSegmentAddrFamily, + mplsInSegmentXCIndex, + mplsInSegmentOwner, + mplsInSegmentRowStatus, + mplsInSegmentStorageType, + mplsInSegmentTrafficParamPtr, + mplsInSegmentMapIndex + } + STATUS current + DESCRIPTION + "Collection of objects needed to implement an in- + segment." + ::= { mplsLsrGroups 2 } + +mplsOutSegmentGroup OBJECT-GROUP + OBJECTS { + mplsOutSegmentIndexNext, + mplsOutSegmentInterface, + mplsOutSegmentPushTopLabel, + mplsOutSegmentTopLabel, + mplsOutSegmentTopLabelPtr, + mplsOutSegmentNextHopAddrType, + mplsOutSegmentNextHopAddr, + mplsOutSegmentXCIndex, + mplsOutSegmentOwner, + mplsOutSegmentPerfOctets, + mplsOutSegmentPerfDiscards, + mplsOutSegmentPerfErrors, + mplsOutSegmentRowStatus, + mplsOutSegmentStorageType, + mplsOutSegmentTrafficParamPtr + } + STATUS current + DESCRIPTION + "Collection of objects needed to implement an out- + + + + segment." + ::= { mplsLsrGroups 3 } + +mplsXCGroup OBJECT-GROUP + OBJECTS { + mplsXCIndexNext, + mplsXCLspId, + mplsXCLabelStackIndex, + mplsXCOwner, + mplsXCStorageType, + mplsXCAdminStatus, + mplsXCOperStatus, + mplsXCRowStatus, + mplsXCNotificationsEnable + } + STATUS current + DESCRIPTION + "Collection of objects needed to implement a + cross-connect entry." + ::= { mplsLsrGroups 4 } + +mplsPerfGroup OBJECT-GROUP + OBJECTS { + mplsInSegmentPerfOctets, + mplsInSegmentPerfPackets, + mplsInSegmentPerfErrors, + mplsInSegmentPerfDiscards, + mplsInSegmentPerfDiscontinuityTime, + mplsOutSegmentPerfOctets, + mplsOutSegmentPerfPackets, + mplsOutSegmentPerfDiscards, + mplsOutSegmentPerfDiscontinuityTime, + mplsInterfacePerfInLabelsInUse, + mplsInterfacePerfInLabelLookupFailures, + mplsInterfacePerfOutFragmentedPkts, + mplsInterfacePerfOutLabelsInUse + } + + STATUS current + DESCRIPTION + "Collection of objects providing performance + information + about an LSR." + ::= { mplsLsrGroups 5 } + +mplsHCInSegmentPerfGroup OBJECT-GROUP + OBJECTS { mplsInSegmentPerfHCOctets } + STATUS current + + + + DESCRIPTION + "Object(s) providing performance information + specific to out-segments for which the object + mplsInterfaceInOctets wraps around too quickly." + ::= { mplsLsrGroups 6 } + +mplsHCOutSegmentPerfGroup OBJECT-GROUP + OBJECTS { mplsOutSegmentPerfHCOctets } + STATUS current + DESCRIPTION + "Object(s) providing performance information + specific to out-segments for which the object + mplsInterfaceOutOctets wraps around too + quickly." + ::= { mplsLsrGroups 7 } + +mplsLabelStackGroup OBJECT-GROUP + OBJECTS { + mplsLabelStackLabel, + mplsLabelStackLabelPtr, + mplsLabelStackRowStatus, + mplsLabelStackStorageType, + mplsMaxLabelStackDepth, + mplsLabelStackIndexNext + } + STATUS current + DESCRIPTION + "Objects needed to support label stacking." + ::= { mplsLsrGroups 8 } + +mplsLsrNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + mplsXCUp, + mplsXCDown + } + STATUS current + DESCRIPTION + "Set of notifications implemented in this + module." + ::= { mplsLsrGroups 9 } +END \ No newline at end of file diff --git a/mibs/RFC-3814-MPLS-FTN-STD-MIB.txt b/mibs/RFC-3814-MPLS-FTN-STD-MIB.txt new file mode 100644 index 00000000..2475f8e0 --- /dev/null +++ b/mibs/RFC-3814-MPLS-FTN-STD-MIB.txt @@ -0,0 +1,1087 @@ +MPLS-FTN-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, Counter64, Integer32 + FROM SNMPv2-SMI -- [RFC2578] + RowStatus, StorageType, RowPointer, + TEXTUAL-CONVENTION, TimeStamp + FROM SNMPv2-TC -- [RFC2579] + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF -- [RFC2580] + InterfaceIndexOrZero, + ifGeneralInformationGroup, ifCounterDiscontinuityGroup + FROM IF-MIB -- [RFC2863] + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB -- [RFC3411] + Dscp + FROM DIFFSERV-DSCP-TC -- [RFC3289] + InetAddressType, InetAddress, InetPortNumber + FROM INET-ADDRESS-MIB -- [RFC3291] + mplsStdMIB + FROM MPLS-TC-STD-MIB -- [RFC3811] + + + + ; + +mplsFTNStdMIB MODULE-IDENTITY + LAST-UPDATED "200406030000Z" -- June 6, 2004 + ORGANIZATION "Multiprotocol Label Switching (MPLS) Working Group" + CONTACT-INFO + " + Thomas D. Nadeau + Postal: Cisco Systems, Inc. + 250 Apollo Drive + Chelmsford, MA 01824 + Tel: +1-978-244-3051 + Email: tnadeau@cisco.com + + Cheenu Srinivasan + Postal: Bloomberg L.P. + 499 Park Avenue + New York, NY 10022 + Tel: +1-212-893-3682 + Email: cheenu@bloomberg.net + + Arun Viswanathan + Postal: Force10 Networks, Inc. + 1440 McCarthy Blvd + Milpitas, CA 95035 + Tel: +1-408-571-3516 + Email: arunv@force10networks.com + + IETF MPLS Working Group email: mpls@uu.net" + + DESCRIPTION + "Copyright (C) The Internet Society (2004). The + initial version of this MIB module was published + in RFC 3814. For full legal notices see the RFC + itself or see: + http://www.ietf.org/copyrights/ianamib.html + + This MIB module contains managed object definitions for + specifying FEC to NHLFE (FTN) mappings and corresponding + performance for MPLS." + + -- Revision history. + + REVISION + "200406030000Z" -- June 3, 2004 + + DESCRIPTION + "Initial version issued as part of RFC 3814." + + + + ::= { mplsStdMIB 8 } + +-- TEXTUAL-CONVENTIONs used in this MIB. +MplsFTNEntryIndex ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Index for an entry in mplsFTNTable." + SYNTAX Unsigned32 (1..4294967295) + +MplsFTNEntryIndexOrZero ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Index for an entry in mplsFTNTable or the special value + zero. The value zero is object-specific and must + therefore be defined as part of the description of any + object which uses this syntax. Examples of the usage + of zero might include situations when none or all + entries in mplsFTNTable need to be referenced." + SYNTAX Unsigned32 (0..4294967295) + +-- Top-Level Components of this MIB. + +mplsFTNNotifications OBJECT IDENTIFIER ::= { mplsFTNStdMIB 0 } +mplsFTNObjects OBJECT IDENTIFIER ::= { mplsFTNStdMIB 1 } +mplsFTNConformance OBJECT IDENTIFIER ::= { mplsFTNStdMIB 2 } + +-- Next free index in mplsFTNTable. +mplsFTNIndexNext OBJECT-TYPE + SYNTAX MplsFTNEntryIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the next available valid value to + be used for mplsFTNIndex when creating entries in the + mplsFTNTable. + + When creating a new conceptual row (configuration + entry) in mplsFTNTable with an SNMP SET operation the + command generator (Network Management Application) must + first issue a management protocol retrieval operation + to obtain the current value of this object. + + If the command responder (agent) does not wish to allow + creation of more entries in mplsFTNTable, possibly + because of resource exhaustion, this object MUST return + a value of 0. + + If a non-zero value is returned the Network Management + + + + Application must determine whether the value is indeed + still unused since two Network Management Applications + may attempt to create a row simultaneously and use the + same value. + + If it is currently unused and the SET succeeds, the + agent MUST change the value of this object to a + currently unused non-zero value (according to an + implementation specific algorithm) or zero (if no + further row creation will be permitted). + + If the value is in use, however, the SET fails and the + Network Management Application must then reread this + object to obtain a new usable value." + ::= { mplsFTNObjects 1 } + +-- Last time an object in mplsFTNTable changed. +mplsFTNTableLastChanged OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the last time an entry was added, deleted or + modified in mplsFTNTable. Management stations should + consult this object to determine if mplsFTNTable + requires their attention. This object is particularly + useful for applications performing a retrieval on + mplsFTNTable to ensure that the table is not modified + during the retrieval operation." + ::= { mplsFTNObjects 2 } + +-- Table of FTN entries. +mplsFTNTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsFTNEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains the currently defined FTN entries. + This table allows FEC to NHLFE mappings to be + specified. Each entry in this table defines a rule to + be applied to incoming packets (on interfaces that the + FTN entry is activated on using mplsFTNMapTable) and an + action to be taken on matching packets + (mplsFTNActionPointer). + + This table supports 6-tuple matching rules based on one + or more of source address range, destination address + range, source port range, destination port range, IPv4 + + + + Protocol field or IPv6 next-header field and the + DiffServ Code Point (DSCP) to be specified. + + The action pointer points either to instance of + mplsXCEntry in MPLS-LSR-STD-MIB when the NHLFE is a non- + TE LSP, or to an instance of mplsTunnelEntry in the + MPLS-TE-STD-MIB when the NHLFE is an originating TE + tunnel." + REFERENCE + "J. Postel, Internet Protocol, RFC 791, STD 5, September + 1981 + + Deering, S., and R. Hinden, Internet Protocol, Version + 6 (IPv6) Specification, RFC 2460, December 1998 + + Nichols, K, Blake, S., Baker, F. and D. Black, + Definition of the Differentiated Services Field (DS + Field) in the IPv4 and IPv6 Headers, RFC 2474, December + 1998 + + Srinivasan, C., A. Viswanathan, and T. Nadeau, MPLS + Label Switch Router Management Information Base, + RFC 3813 + + Srinivasan, C., A. Viswanathan, and T. Nadeau, MPLS + Traffic Engineering Management Information Base, + RFC 3812" + ::= { mplsFTNObjects 3 } + +mplsFTNEntry OBJECT-TYPE + SYNTAX MplsFTNEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry represents one FTN entry which defines a + rule to compare incoming packets with and an action to + be taken on matching packets." + INDEX { mplsFTNIndex } + ::= { mplsFTNTable 1 } + +MplsFTNEntry ::= SEQUENCE { + mplsFTNIndex MplsFTNEntryIndex, + mplsFTNRowStatus RowStatus, + mplsFTNDescr SnmpAdminString, + mplsFTNMask BITS, + mplsFTNAddrType InetAddressType, + mplsFTNSourceAddrMin InetAddress, + mplsFTNSourceAddrMax InetAddress, + + + + mplsFTNDestAddrMin InetAddress, + mplsFTNDestAddrMax InetAddress, + mplsFTNSourcePortMin InetPortNumber, + mplsFTNSourcePortMax InetPortNumber, + mplsFTNDestPortMin InetPortNumber, + mplsFTNDestPortMax InetPortNumber, + mplsFTNProtocol Integer32, + mplsFTNDscp Dscp, + mplsFTNActionType INTEGER, + mplsFTNActionPointer RowPointer, + mplsFTNStorageType StorageType + } + +mplsFTNIndex OBJECT-TYPE + SYNTAX MplsFTNEntryIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This is the unique index for a conceptual row in + mplsFTNTable. + + To create a new conceptual row in mplsFTNTable a + Network Management Application SHOULD retrieve the + current value of mplsFTNIndexNext to determine the next + valid available value of mplsFTNIndex." --- IPI Comments : Not Supported. + ::= { mplsFTNEntry 1 } + +mplsFTNRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Used for controlling the creation and deletion of this + row. All writeable objects in this row may be modified + at any time. If a Network Management Application + attempts to delete a conceptual row by setting this + object to 'destroy' and there are one or more entries + in mplsFTNMapTable pointing to the row (i.e., when + mplsFTNIndex of the conceptual row being deleted is + equal to mplsFTNMapCurrIndex for one or more entries in + mplsFTNMapTable), the agent MUST also destroy the + corresponding entries in mplsFTNMapTable." + ::= { mplsFTNEntry 2 } + +mplsFTNDescr OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "The description of this FTN entry. Since the index for + this table has no particular significance or meaning, + this object should contain some meaningful text that an + operator could use to further distinguish entries in + this table." + ::= { mplsFTNEntry 3 } + +mplsFTNMask OBJECT-TYPE + SYNTAX BITS { + sourceAddr(0), + destAddr(1), + sourcePort(2), + destPort(3), + protocol(4), + dscp(5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This bit map indicates which of the fields described + next, namely source address range, destination address + range, source port range, destination port range, IPv4 + Protocol field or IPv6 next-header field and + Differentiated Services Code Point (DSCP) is active for + this FTN entry. If a particular bit is set to zero then + the corresponding field in the packet MUST be ignored + for comparison purposes." --- IPI Comments : It works fine only for the default value. + ::= { mplsFTNEntry 4 } + +mplsFTNAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object determines the type of address contained in + the source and destination address objects + (mplsFTNSourceAddrMin, mplsFTNSourceAddrMax, + mplsFTNDestAddrMin and mplsFTNDestAddrMax) of a + conceptual row. + + This object MUST NOT be set to unknown(0) when + mplsFTNMask has bit positions sourceAddr(0) or + destAddr(1) set to one. + + When both these bit positions of mplsFTNMask are set to + zero the value of mplsFTNAddrType SHOULD be set to + unknown(0) and the corresponding source and destination + + + + address objects SHOULD be set to zero-length strings." --- IPI Comments : For ipv4 its value is 1. It has not been implemented for ipv6. + + ::= { mplsFTNEntry 5 } + +mplsFTNSourceAddrMin OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The lower end of the source address range. The type of + this object is determined by the corresponding + mplsFTNAddrType object." --- IPI Comments : It is taking only the default value.(0.0.0.0). + ::= { mplsFTNEntry 6 } + +mplsFTNSourceAddrMax OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The upper end of the source address range. The type of + this object is determined by the corresponding + mplsFTNAddrType object." --- IPI Comments : It is taking only the default value.(0.0.0.0). + ::= { mplsFTNEntry 7 } + +mplsFTNDestAddrMin OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The lower end of the destination address range. The + type of this object is determined by the corresponding + mplsFTNAddrType object." + ::= { mplsFTNEntry 8 } + +mplsFTNDestAddrMax OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The higher end of the destination address range. The + type of this object is determined by the corresponding + mplsFTNAddrType object." + ::= { mplsFTNEntry 9 } + +mplsFTNSourcePortMin OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "The lower end of the source port range." --- IPI Comments : Default value is 0. + DEFVAL { 0 } + ::= { mplsFTNEntry 10 } + +mplsFTNSourcePortMax OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The higher end of the source port range " --- IPI Comments : Default value is 65535. + DEFVAL { 65535 } + ::= { mplsFTNEntry 11 } + +mplsFTNDestPortMin OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The lower end of the destination port range." --- IPI Comments : Default value is 0. + DEFVAL { 0 } + ::= { mplsFTNEntry 12 } + +mplsFTNDestPortMax OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The higher end of the destination port range." --- IPI Comments : Default value is 65535. + DEFVAL { 65535 } + ::= { mplsFTNEntry 13 } + +mplsFTNProtocol OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The IP protocol to match against the IPv4 protocol + number or IPv6 Next-Header number in the packet. A + value of 255 means match all. Note that the protocol + number of 255 is reserved by IANA, and Next-Header + number of 0 is used in IPv6." --- IPI Comments : Default value is 255. + DEFVAL { 255 } + ::= { mplsFTNEntry 14 } + +mplsFTNDscp OBJECT-TYPE + SYNTAX Dscp + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "The contents of the DSCP field." --- IPI Comments : Default value is 0. + REFERENCE + "Nichols, K., Blake, S., Baker, F. and D. Black, + Definition of the Differentiated Services Field (DS + Field) in the IPv4 and IPv6 Headers, RFC 2474, December + 1998." + ::= { mplsFTNEntry 15 } + +mplsFTNActionType OBJECT-TYPE + SYNTAX INTEGER { + redirectLsp(1), -- redirect into LSP + redirectTunnel(2) -- redirect into tunnel + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of action to be taken on packets matching this + FTN entry." --- IPI Comments : By default it is redirectLsp(1). + ::= { mplsFTNEntry 16 } + +mplsFTNActionPointer OBJECT-TYPE + SYNTAX RowPointer + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If mplsFTNActionType is redirectLsp(1), then this + object MUST contain zeroDotZero or point to a instance + of mplsXCEntry indicating the LSP to redirect matching + packets to. + + If mplsFTNActionType is redirectTunnel(2), then this + object MUST contain zeroDotZero or point to a instance + of mplsTunnelEntry indicating the MPLS TE tunnel to + redirect matching packets to. + + If this object points to a conceptual row instance in a + table consistent with mplsFTNActionType but this + instance does not currently exist then no action will + be taken on packets matching such an FTN entry till + this instance comes into existence. + + If this object contains zeroDotZero then no action will + be taken on packets matching such an FTN entry till it + is populated with a valid pointer consistent with the + value of mplsFTNActionType as explained above." + ::= { mplsFTNEntry 17 } + + + + +mplsFTNStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this FTN entry. Conceptual rows + having the value 'permanent' need not allow write- + access to any columnar objects in the row." --- IPI Comments : By default it is volatile(2) + DEFVAL { nonVolatile } + ::= { mplsFTNEntry 18 } + +-- End of mplsFTNTable. + +-- Last time an object in mplsFTNMapTable changed. + +mplsFTNMapTableLastChanged OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the last time an entry was added, deleted or + modified in mplsFTNMapTable. Management stations should + consult this object to determine if the table requires + their attention. This object is particularly useful + for applications performing a retrieval on + mplsFTNMapTable to ensure that the table is not + modified during the retrieval operation." + ::= { mplsFTNObjects 4 } + +-- FTN to interface mapping table. + +mplsFTNMapTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsFTNMapEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains objects which provide the + capability to apply or map FTN rules as defined by + entries in mplsFTNTable to specific interfaces in the + system. FTN rules are compared with incoming packets + in the order in which they are applied on an interface. + + The indexing structure of mplsFTNMapTable is as + follows. + + - mplsFTNMapIndex indicates the interface to which the + rule is being applied. A value of 0 represents the + application of the rule to all interfaces. + + + + + - mplsFTNMapPrevIndex specifies the rule on the + interface prior to the one being applied. A value of + 0 specifies that the rule is being inserted at the + head of the list of rules currently applied to the + interface. + + - mplsFTNMapCurrIndex is the index in mplsFTNTable + corresponding to the rule being applied. + + This indexing structure makes the entries in the table + behave like items in a linked-list. The object + mplsFTNMapPrevIndex in each conceptual row is a pointer + to the previous entry that is applied to a particular + interface. This allows a new entry to be 'inserted' at + an arbitrary position in a list of entries currently + applied to an interface. This object is self- + adjusting, i.e., its value is automatically adjusted by + the agent, if necessary, after an insertion or deletion + operation. + + Using this linked-list structure, one can retrieve FTN + entries in the order of application on a per-interface + basis as follows: + + - To determine the first FTN entry on an interface + with index ifIndex perform a GETNEXT retrieval + operation on mplsFTNMapRowStatus.ifIndex.0.0; the + returned object, if one exists, is (say) + mplsFTNMapRowStatus.ifIndex.0.n (mplsFTNMapRowStatus + is the first accessible columnar object in the + conceptual row). Then the index of the first FTN + entry applied on this interface is n. + + - To determine the FTN entry applied to an interface + after the one indexed by n perform a GETNEXT + retrieval operation on + mplsFTNMapRowStatus.ifIndex.n.0. If such an entry + exists the returned object would be of the form + mplsFTNMapRowStatus.ifIndex.n.m. Then the index of + the next FTN entry applied on this interface is m. + + - If the FTN entry indexed by n is the last entry + applied to the interface with index ifIndex then the + object returned would either be: + + 1.mplsFTNMapRowStatus.ifIndexNext.0.k, where + ifIndexNext is the index of the next interface in + + + + ifTable to which an FTN entry has been applied, in + which case k is the index of the first FTN entry + applied to the interface with index ifIndexNext; + + or: + + 2.mplsFTNMapStorageType.firstIfIndex.0.p, if there + are no more entries in mplsFTNMapTable, where + firstIfIndex is the first entry in ifTable to + which an FTN entry has been mapped. + + Use the above steps to retrieve all the applied FTN + entries on a per-interface basis in application order. + Note that the number of retrieval operations is the + same as the number of applied FTN entries (i.e., the + minimum number of GETNEXT operations needed using any + indexing scheme). + + Agents MUST NOT allow the same FTN entry as specified + by mplsFTNMapCurrIndex to be applied multiple times to + the same interface. + + Agents MUST NOT allow the creation of rows in this + table until the corresponding rows are created in the + mplsFTNTable. + + If a row in mplsFTNTable is destroyed, the agent MUST + destroy the corresponding entries (i.e., ones with a + matching value of mplsFTNCurrIndex) in this table as + well." + ::= { mplsFTNObjects 5 } + +mplsFTNMapEntry OBJECT-TYPE + SYNTAX MplsFTNMapEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each conceptual row represents the application of an + FTN rule at a specific position in the list of FTN + rules applied on an interface. " + INDEX { + mplsFTNMapIndex, + mplsFTNMapPrevIndex, + mplsFTNMapCurrIndex + } + ::= { mplsFTNMapTable 1 } + +MplsFTNMapEntry ::= SEQUENCE { + + + + mplsFTNMapIndex InterfaceIndexOrZero, + mplsFTNMapPrevIndex MplsFTNEntryIndexOrZero, + mplsFTNMapCurrIndex MplsFTNEntryIndex, + mplsFTNMapRowStatus RowStatus, + mplsFTNMapStorageType StorageType + } + +mplsFTNMapIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface index that this FTN entry is being + applied to. A value of zero indicates an entry that is + applied all interfaces. + + Entries mapped to an interface by specifying its (non- + zero) interface index in mplsFTNMapIndex are applied + ahead of entries with mplsFTNMapIndex equal to zero." --- IPI Comments : Not Supporteed. + ::= { mplsFTNMapEntry 1 } + +mplsFTNMapPrevIndex OBJECT-TYPE + SYNTAX MplsFTNEntryIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index of the previous FTN entry that was applied to + this interface. The special value zero indicates that + this should be the first FTN entry in the list." --- IPI Comments : Not Supporteed. + ::= { mplsFTNMapEntry 2 } + +mplsFTNMapCurrIndex OBJECT-TYPE + SYNTAX MplsFTNEntryIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Index of the current FTN entry that is being applied to + this interface." --- IPI Comments : Not Supported. + ::= { mplsFTNMapEntry 3 } + +mplsFTNMapRowStatus OBJECT-TYPE + SYNTAX RowStatus { + active(1), + createAndGo(4), + destroy(6) + } + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "Used for controlling the creation and deletion of this + row. + + All writable objects in this row may be modified at any + time. + + If a conceptual row in mplsFTNMapTable points to a + conceptual row in mplsFTNTable which is subsequently + deleted, the corresponding conceptual row in + mplsFTNMapTable MUST also be deleted by the agent." --- IPI Comments : Not Supported. + ::= { mplsFTNMapEntry 4 } + +mplsFTNMapStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this entry. Conceptual rows + having the value 'permanent' need not allow write- + access to any columnar objects in this row." --- IPI Comments : Not Supported. + DEFVAL { nonVolatile } + ::= { mplsFTNMapEntry 5 } + +-- End of mplsFTNMapTable + +-- FTN entry performance table + +mplsFTNPerfTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsFTNPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains performance statistics on FTN + entries on a per-interface basis." + ::= { mplsFTNObjects 6 } + +mplsFTNPerfEntry OBJECT-TYPE + SYNTAX MplsFTNPerfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains performance information for the + specified interface and an FTN entry mapped to this + interface." + INDEX { mplsFTNPerfIndex, mplsFTNPerfCurrIndex } + ::= { mplsFTNPerfTable 1 } + + + + +MplsFTNPerfEntry ::= SEQUENCE { + mplsFTNPerfIndex InterfaceIndexOrZero, + mplsFTNPerfCurrIndex MplsFTNEntryIndex, + mplsFTNPerfMatchedPackets Counter64, + mplsFTNPerfMatchedOctets Counter64, + mplsFTNPerfDiscontinuityTime TimeStamp + } + +mplsFTNPerfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface index of an interface that an FTN entry + has been applied/mapped to. Each instance of this + object corresponds to an instance of mplsFTNMapIndex." --- IPI Comments : Not Supported. + ::= { mplsFTNPerfEntry 1 } + +mplsFTNPerfCurrIndex OBJECT-TYPE + SYNTAX MplsFTNEntryIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Index of an FTN entry that has been applied/mapped to + the specified interface. Each instance of this object + corresponds to an instance of mplsFTNMapCurrIndex." --- IPI Comments : Not Supported. + ::= { mplsFTNPerfEntry 2 } + +mplsFTNPerfMatchedPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of packets that matched the specified FTN entry + if it is applied/mapped to the specified interface. + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsFTNDiscontinuityTime." --- IPI Comments : Not Supported. + ::= { mplsFTNPerfEntry 3 } + +mplsFTNPerfMatchedOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of octets that matched the specified FTN entry + if it is applied/mapped to the specified interface. + + + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsFTNDiscontinuityTime." --- IPI Comments : Not Supported. + ::= { mplsFTNPerfEntry 4 } + +mplsFTNPerfDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion at + which any one or more of this entry's counters suffered + a discontinuity. If no such discontinuities have + occurred since the last re-initialization of the local + management subsystem, then this object contains a zero + value." --- IPI Comments : Not Supported. + ::= { mplsFTNPerfEntry 5 } + +-- End of mplsFTNPerfTable + +-- Module compliance. + +-- Top level object IDs. + +mplsFTNGroups + OBJECT IDENTIFIER ::= { mplsFTNConformance 1 } +mplsFTNCompliances + OBJECT IDENTIFIER ::= { mplsFTNConformance 2 } + +-- Compliance requirement for fully compliant implementations. +mplsFTNModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "Compliance statement for agents that provide full + support for MPLS-FTN-STD-MIB." + + MODULE IF-MIB -- The Interfaces Group MIB, RFC 2863. + MANDATORY-GROUPS { + ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + } + + MODULE -- This module. + MANDATORY-GROUPS { + mplsFTNRuleGroup, + mplsFTNMapGroup, + mplsFTNPerfGroup + + + + } + + OBJECT mplsFTNAddrType + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + DESCRIPTION + "An implementation is only required to support IPv4 + and/or IPv6 addresses. An implementation is only + required to support the address types that are actually + supported on the LSR." + + OBJECT mplsFTNSourceAddrMin + SYNTAX InetAddress (SIZE (4 | 20)) + DESCRIPTION + "An implementation is only required to support IPv4 + and/or IPv6 addresses. An implementation is only + required to support the address types that are actually + supported on the LSR." + + OBJECT mplsFTNSourceAddrMax + SYNTAX InetAddress (SIZE (4 | 20)) + DESCRIPTION + "An implementation is only required to support IPv4 + and/or IPv6 addresses. An implementation is only + required to support the address types that are actually + supported on the LSR." + + OBJECT mplsFTNDestAddrMin + SYNTAX InetAddress (SIZE (4 | 20)) + DESCRIPTION + "An implementation is only required to support IPv4 + and/or IPv6 addresses. An implementation is only + required to support the address types that are actually + supported on the LSR." + + OBJECT mplsFTNDestAddrMax + SYNTAX InetAddress (SIZE (4 | 20)) + DESCRIPTION + "An implementation is only required to support IPv4 + and/or IPv6 addresses. An implementation is only + required to support the address types that are actually + supported on the LSR." + ::= { mplsFTNCompliances 1 } + +-- Compliance requirement for read-only implementations. +mplsFTNModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "Compliance requirement for implementations that only + + + + provide read-only support for MPLS-FTN-STD-MIB. Such + devices can then be monitored but cannot be configured + using this MIB module." + + MODULE IF-MIB -- The interfaces Group MIB, RFC 2863 + MANDATORY-GROUPS { + ifGeneralInformationGroup, + ifCounterDiscontinuityGroup + } + + MODULE -- This module + MANDATORY-GROUPS { + mplsFTNRuleGroup, + mplsFTNMapGroup, + mplsFTNPerfGroup + } + + OBJECT mplsFTNIndexNext + MIN-ACCESS not-accessible + DESCRIPTION + "This object is not needed when mplsFTNTable is + implemented as read-only." + + OBJECT mplsFTNRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and active is the only + status that needs to be supported." + + OBJECT mplsFTNDescr + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNMask + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNAddrType + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. An implementation is only + required to support IPv4 and IPv6 addresses." + + OBJECT mplsFTNSourceAddrMin + + + + SYNTAX InetAddress (SIZE (4 | 20)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. An implementation is only + required to support IPv4 and IPv6 addresses." + + OBJECT mplsFTNSourceAddrMax + SYNTAX InetAddress (SIZE (4 | 20)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. An implementation is only + required to support IPv4 and IPv6 addresses." + + OBJECT mplsFTNDestAddrMin + SYNTAX InetAddress (SIZE (4 | 20)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. An implementation is only + required to support IPv4 and IPv6 addresses." + + OBJECT mplsFTNDestAddrMax + SYNTAX InetAddress (SIZE (4 | 20)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. An implementation is only + required to support IPv4 and IPv6 addresses." + + OBJECT mplsFTNSourcePortMin + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNSourcePortMax + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNDestPortMin + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNDestPortMax + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNProtocol + + + + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNActionType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNActionPointer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNDscp + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFTNMapRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and active(1) is the only + status that needs to be supported." + + OBJECT mplsFTNMapStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + ::= { mplsFTNCompliances 2 } + +-- Units of conformance. +mplsFTNRuleGroup OBJECT-GROUP + OBJECTS { + mplsFTNIndexNext, + mplsFTNTableLastChanged, + mplsFTNRowStatus, + mplsFTNDescr, + mplsFTNMask, + mplsFTNAddrType, + mplsFTNSourceAddrMin, + mplsFTNSourceAddrMax, + + + + mplsFTNDestAddrMin, + mplsFTNDestAddrMax, + mplsFTNSourcePortMin, + mplsFTNSourcePortMax, + mplsFTNDestPortMin, + mplsFTNDestPortMax, + mplsFTNProtocol, + mplsFTNActionType, + mplsFTNActionPointer, + mplsFTNDscp, + mplsFTNStorageType + } + STATUS current + DESCRIPTION + "Collection of objects that implement MPLS FTN rules." + ::= { mplsFTNGroups 1 } + +mplsFTNMapGroup OBJECT-GROUP + OBJECTS { + mplsFTNMapTableLastChanged, + mplsFTNMapRowStatus, + mplsFTNMapStorageType + } + STATUS current + DESCRIPTION + "Collection of objects that implement activation of MPLS + FTN entries on interfaces." + ::= { mplsFTNGroups 2 } + +mplsFTNPerfGroup OBJECT-GROUP + OBJECTS { + mplsFTNPerfMatchedPackets, + mplsFTNPerfMatchedOctets, + mplsFTNPerfDiscontinuityTime + } + STATUS current + DESCRIPTION + "Collection of objects providing MPLS FTN performance + information." + ::= { mplsFTNGroups 3 } + +END \ No newline at end of file diff --git a/mibs/RFC-3815-MPLS-LDP-STD-MIB.txt b/mibs/RFC-3815-MPLS-LDP-STD-MIB.txt new file mode 100644 index 00000000..0e81a135 --- /dev/null +++ b/mibs/RFC-3815-MPLS-LDP-STD-MIB.txt @@ -0,0 +1,2547 @@ +MPLS-LDP-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE, + Integer32, Counter32, Unsigned32 + FROM SNMPv2-SMI -- [RFC2578] + + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF -- [RFC2580] + + RowStatus, TimeInterval, TruthValue, + TimeStamp, StorageType + + + + FROM SNMPv2-TC -- [RFC2579] + + InetAddressPrefixLength, + InetAddressType, + InetAddress, + InetPortNumber + FROM INET-ADDRESS-MIB -- [RFC3291] + + IndexInteger, + IndexIntegerNextFree + FROM DIFFSERV-MIB -- [RFC3289] + + mplsStdMIB, + MplsLabelDistributionMethod, + MplsLdpIdentifier, + MplsLdpLabelType, + MplsLspType, + MplsLsrIdentifier, + MplsRetentionMode + FROM MPLS-TC-STD-MIB -- [RFC3811] + + MplsIndexType + FROM MPLS-LSR-STD-MIB; -- [RFC3813] + +mplsLdpStdMIB MODULE-IDENTITY + LAST-UPDATED "200406030000Z" -- June 3, 2004 + ORGANIZATION "Multiprotocol Label Switching (mpls) + Working Group" + CONTACT-INFO + + "Joan Cucchiara (jcucchiara@mindspring.com) + Marconi Communications, Inc. + + Hans Sjostrand (hans@ipunplugged.com) + ipUnplugged + + James V. Luciani (james_luciani@mindspring.com) + Marconi Communications, Inc. + + Working Group Chairs: + George Swallow, email: swallow@cisco.com + Loa Andersson, email: loa@pi.se + + MPLS Working Group, email: mpls@uu.net" + + DESCRIPTION + "Copyright (C) The Internet Society (2004). The + initial version of this MIB module was published + + + + in RFC 3815. For full legal notices see the RFC + itself or see: + http://www.ietf.org/copyrights/ianamib.html + + This MIB contains managed object definitions for the + 'Multiprotocol Label Switching, Label Distribution + Protocol, LDP' document." + + REVISION "200406030000Z" -- June 3, 2004 + DESCRIPTION + "Initial version published as part of RFC 3815." + + ::= { mplsStdMIB 4 } + +--**************************************************************** + +mplsLdpNotifications OBJECT IDENTIFIER ::= { mplsLdpStdMIB 0 } +mplsLdpObjects OBJECT IDENTIFIER ::= { mplsLdpStdMIB 1 } +mplsLdpConformance OBJECT IDENTIFIER ::= { mplsLdpStdMIB 2 } + +--**************************************************************** +-- MPLS LDP Objects +--**************************************************************** + +mplsLdpLsrObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 1 } + +mplsLdpEntityObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 2 } + +-- +-- The MPLS Label Distribution Protocol's +-- Label Switching Router Objects +-- + +mplsLdpLsrId OBJECT-TYPE + SYNTAX MplsLsrIdentifier + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Label Switching Router's Identifier." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpLsrObjects 1 } + +mplsLdpLsrLoopDetectionCapable OBJECT-TYPE + SYNTAX INTEGER { + none(1), + other(2), + hopCount(3), + pathVector(4), + hopCountAndPathVector(5) + + + + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A indication of whether this + Label Switching Router supports + loop detection. + + none(1) -- Loop Detection is not supported + on this LSR. + + other(2) -- Loop Detection is supported but + by a method other than those + listed below. + + hopCount(3) -- Loop Detection is supported by + Hop Count only. + + pathVector(4) -- Loop Detection is supported by + Path Vector only. + + hopCountAndPathVector(5) -- Loop Detection is + supported by both Hop Count + And Path Vector. + + Since Loop Detection is determined during + Session Initialization, an individual session + may not be running with loop detection. This + object simply gives an indication of whether or not the + LSR has the ability to support Loop Detection and + which types." --- IPI Comments : SNMP SET is not supported. + + ::= { mplsLdpLsrObjects 2 } + +-- +-- The MPLS Label Distribution Protocol Entity Objects +-- + +mplsLdpEntityLastChange OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time of the most + recent addition or deletion of an entry + to/from the mplsLdpEntityTable/mplsLdpEntityStatsTable, or + the most recent change in value of any objects in the + mplsLdpEntityTable. + + + + If no such changes have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpEntityObjects 1 } + +mplsLdpEntityIndexNext OBJECT-TYPE + SYNTAX IndexIntegerNextFree + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains an appropriate value to + be used for mplsLdpEntityIndex when creating + entries in the mplsLdpEntityTable. The value + 0 indicates that no unassigned entries are + available." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpEntityObjects 2 } + + +mplsLdpEntityTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpEntityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains information about the + MPLS Label Distribution Protocol Entities which + exist on this Label Switching Router (LSR) + or Label Edge Router (LER)." + ::= { mplsLdpEntityObjects 3 } + + mplsLdpEntityEntry OBJECT-TYPE + SYNTAX MplsLdpEntityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents an LDP entity. + An entry can be created by a network administrator + or by an SNMP agent as instructed by LDP." + INDEX { mplsLdpEntityLdpId, mplsLdpEntityIndex } + ::= { mplsLdpEntityTable 1 } + + MplsLdpEntityEntry ::= SEQUENCE { + mplsLdpEntityLdpId MplsLdpIdentifier, + mplsLdpEntityIndex IndexInteger, + mplsLdpEntityProtocolVersion Unsigned32, + mplsLdpEntityAdminStatus INTEGER, + mplsLdpEntityOperStatus INTEGER, + mplsLdpEntityTcpPort InetPortNumber, + mplsLdpEntityUdpDscPort InetPortNumber, + + + + mplsLdpEntityMaxPduLength Unsigned32, + mplsLdpEntityKeepAliveHoldTimer Unsigned32, + mplsLdpEntityHelloHoldTimer Unsigned32, + mplsLdpEntityInitSessionThreshold Integer32, + mplsLdpEntityLabelDistMethod MplsLabelDistributionMethod, + mplsLdpEntityLabelRetentionMode MplsRetentionMode, + mplsLdpEntityPathVectorLimit Integer32, + mplsLdpEntityHopCountLimit Integer32, + mplsLdpEntityTransportAddrKind INTEGER, + mplsLdpEntityTargetPeer TruthValue, + mplsLdpEntityTargetPeerAddrType InetAddressType, + mplsLdpEntityTargetPeerAddr InetAddress, + mplsLdpEntityLabelType MplsLdpLabelType, + mplsLdpEntityDiscontinuityTime TimeStamp, + mplsLdpEntityStorageType StorageType, + mplsLdpEntityRowStatus RowStatus + } + + mplsLdpEntityLdpId OBJECT-TYPE + SYNTAX MplsLdpIdentifier + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The LDP identifier." + REFERENCE + "RFC3036, LDP Specification, Section on LDP Identifiers." --- IPI Comments : NOT Supported. + ::= { mplsLdpEntityEntry 1 } + +mplsLdpEntityIndex OBJECT-TYPE + SYNTAX IndexInteger + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This index is used as a secondary index to uniquely + identify this row. Before creating a row in this table, + the 'mplsLdpEntityIndexNext' object should be retrieved. + That value should be used for the value of this index + when creating a row in this table. NOTE: if a value + of zero (0) is retrieved, that indicates that no rows + can be created in this table at this time. + + A secondary index (this object) is meaningful to some + but not all, LDP implementations. For example + an LDP implementation which uses PPP would + use this index to differentiate PPP sub-links. + + Another way to use this index is to give this the + value of ifIndex. However, this is dependant + + + + on the implementation." --- IPI Comments : NOT Supported. + ::= { mplsLdpEntityEntry 2 } + +mplsLdpEntityProtocolVersion OBJECT-TYPE + SYNTAX Unsigned32(1..65535) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The version number of the LDP protocol which will be + used in the session initialization message. + + Section 3.5.3 in the LDP Specification specifies + that the version of the LDP protocol is negotiated during + session establishment. The value of this object + represents the value that is sent in the initialization + message." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3 Initialization + Message." + DEFVAL { 1 } + ::= { mplsLdpEntityEntry 3 } + +mplsLdpEntityAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + enable(1), + disable(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The administrative status of this LDP Entity. + If this object is changed from 'enable' to 'disable' + and this entity has already attempted to establish + contact with a Peer, then all contact with that + Peer is lost and all information from that Peer + needs to be removed from the MIB. (This implies + that the network management subsystem should clean + up any related entry in the mplsLdpPeerTable. This + further implies that a 'tear-down' for that session + is issued and the session and all information related + to that session cease to exist). + + At this point the operator is able to change values + which are related to this entity. + + When the admin status is set back to 'enable', then + this Entity will attempt to establish a new session + with the Peer." + + + + DEFVAL { enable } + ::= { mplsLdpEntityEntry 4 } + +mplsLdpEntityOperStatus OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + enabled(2), + disabled(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The operational status of this LDP Entity. + + The value of unknown(1) indicates that the + operational status cannot be determined at + this time. The value of unknown should be + a transient condition before changing + to enabled(2) or disabled(3)." --- IPI Comments: Not supported. + ::= { mplsLdpEntityEntry 5 } + +mplsLdpEntityTcpPort OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The TCP Port for + LDP. The default value is the well-known + value of this port." --- IPI Comments: The TCP Port for LDP. The default value is the well-known value of this port. + REFERENCE + "RFC3036, LDP Specification, Section 3.10, Well-known + Numbers, and Section 3.10.1. UDP and TCP Ports." + DEFVAL { 646 } + ::= { mplsLdpEntityEntry 6 } + +mplsLdpEntityUdpDscPort OBJECT-TYPE + SYNTAX InetPortNumber + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The UDP Discovery Port for + LDP. The default value is the + well-known value for this port." --- IPI Comments: The UDP Discovery Port for LDP. The default value is the well-known value for this port. + REFERENCE + "RFC3036, LDP Specification, Section 2.4.1, + Basic Discovery Mechanism, Section 2.4.2, + Extended Discovery Mechanism, Section + 3.10, Well-known Numbers, and Section 3.10.1. + + + + UDP and TCP Ports." + DEFVAL { 646 } + ::= { mplsLdpEntityEntry 7 } + +mplsLdpEntityMaxPduLength OBJECT-TYPE + SYNTAX Unsigned32 (256..65535) + UNITS "octets" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The maximum PDU Length that is sent in + the Common Session Parameters of an Initialization + Message. According to the LDP Specification [RFC3036] + a value of 255 or less specifies the + default maximum length of 4096 octets, this is why + the value of this object starts at 256. The operator + should explicitly choose the default value (i.e., 4096), + or some other value. + + The receiving LSR MUST calculate the maximum PDU + length for the session by using the smaller of its and + its peer's proposals for Max PDU Length." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3. + Initialization Message." + DEFVAL { 4096 } + ::= { mplsLdpEntityEntry 8 } + +mplsLdpEntityKeepAliveHoldTimer OBJECT-TYPE + SYNTAX Unsigned32 (1..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The 16-bit integer value which is the proposed keep + alive hold timer for this LDP Entity." + DEFVAL { 40 } + ::= { mplsLdpEntityEntry 9 } + +mplsLdpEntityHelloHoldTimer OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The 16-bit integer value which is the proposed Hello + hold timer for this LDP Entity. The Hello Hold time + in seconds. + + + + An LSR maintains a record of Hellos received + from potential peers. This object represents + the Hold Time in the Common Hello Parameters TLV of + the Hello Message. + + A value of 0 is a default value and should be + interpretted in conjunction with the + mplsLdpEntityTargetPeer object. + + If the value of this object is 0: if the value of the + mplsLdpEntityTargetPeer object is false(2), then this + specifies that the Hold Time's actual default value is + 15 seconds (i.e., the default Hold time for Link Hellos + is 15 seconds). Otherwise if the value of the + mplsLdpEntityTargetPeer object is true(1), then this + specifies that the Hold Time's actual default value is + 45 seconds (i.e., the default Hold time for Targeted + Hellos is 45 seconds). + + A value of 65535 means infinite (i.e., wait forever). + + All other values represent the amount of time in + seconds to wait for a Hello Message. Setting the + hold time to a value smaller than 15 is not + recommended, although not forbidden according + to RFC3036." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.2., + Hello Message." + DEFVAL { 0 } + ::= { mplsLdpEntityEntry 10 } + +mplsLdpEntityInitSessionThreshold OBJECT-TYPE + SYNTAX Integer32(0..100) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "When attempting to establish a session with + a given Peer, the given LDP Entity should + send out the SNMP notification, + 'mplsLdpInitSessionThresholdExceeded', when + the number of Session Initialization messages + sent exceeds this threshold. + + The notification is used to notify an + operator when this Entity and its Peer are + possibly engaged in an endless sequence + of messages as each NAKs the other's + + + + Initialization messages with Error Notification + messages. Setting this threshold which triggers + the notification is one way to notify the + operator. The notification should be generated + each time this threshold is exceeded and + for every subsequent Initialization message + which is NAK'd with an Error Notification + message after this threshold is exceeded. + + A value of 0 (zero) for this object + indicates that the threshold is infinity, thus + the SNMP notification will never be generated." + REFERENCE + "RFC3036, LDP Specification, + Section 2.5.3 Session Initialization." + DEFVAL { 8 } + ::= { mplsLdpEntityEntry 11 } + +mplsLdpEntityLabelDistMethod OBJECT-TYPE + SYNTAX MplsLabelDistributionMethod + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "For any given LDP session, the method of + label distribution must be specified." + ::= { mplsLdpEntityEntry 12 } + +mplsLdpEntityLabelRetentionMode OBJECT-TYPE + SYNTAX MplsRetentionMode + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The LDP Entity can be configured to use either + conservative or liberal label retention mode. + + If the value of this object is conservative(1) + then advertized label mappings are retained + only if they will be used to forward packets, + i.e., if label came from a valid next hop. + + If the value of this object is liberal(2) + then all advertized label mappings are retained + whether they are from a valid next hop or not." + ::= { mplsLdpEntityEntry 13 } + +mplsLdpEntityPathVectorLimit OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-create + + + + STATUS current + DESCRIPTION + "If the value of this object is 0 (zero) then + Loop Detection for Path Vectors is disabled. + + Otherwise, if this object has a value greater than + zero, then Loop Dection for Path Vectors is enabled, + and the Path Vector Limit is this value. + Also, the value of the object, + 'mplsLdpLsrLoopDetectionCapable', must be set to + either 'pathVector(4)' or 'hopCountAndPathVector(5)', + if this object has a value greater than 0 (zero), + otherwise it is ignored." + REFERENCE + "RFC3036, LDP Specification, Section 2.8 Loop Dection, + Section 3.4.5 Path Vector TLV." + ::= { mplsLdpEntityEntry 14 } + +mplsLdpEntityHopCountLimit OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the value of this object is 0 (zero), + then Loop Detection using Hop Counters is + disabled. + + If the value of this object is greater than + 0 (zero) then Loop Detection using Hop + Counters is enabled, and this object + specifies this Entity's maximum allowable + value for the Hop Count. + Also, the value of the object + mplsLdpLsrLoopDetectionCapable must be set + to either 'hopCount(3)' or + 'hopCountAndPathVector(5)' if this object + has a value greater than 0 (zero), otherwise + it is ignored." + DEFVAL { 0 } + ::= { mplsLdpEntityEntry 15 } + +mplsLdpEntityTransportAddrKind OBJECT-TYPE + SYNTAX INTEGER { + interface(1), + loopback(2) + } + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "This specifies whether the loopback or interface + address is to be used as the transport address + in the transport address TLV of the + hello message. + + If the value is interface(1), then the IP + address of the interface from which hello + messages are sent is used as the transport + address in the hello message. + + Otherwise, if the value is loopback(2), then the IP + address of the loopback interface is used as the + transport address in the hello message." IPI Comments : This specifies whether the loopback or interface address is to be used as the transport address in the transport address TLV of the hello message. + DEFVAL { loopback } + ::= { mplsLdpEntityEntry 16 } + +mplsLdpEntityTargetPeer OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If this LDP entity uses targeted peer then set + this to true." + DEFVAL { false } + ::= { mplsLdpEntityEntry 17 } + +mplsLdpEntityTargetPeerAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of the internetwork layer address used for + the Extended Discovery. This object indicates how + the value of mplsLdpEntityTargetPeerAddr is to + be interpreted." IPI Comments : The type of the internetwork layer address used for the Extended Discovery. + ::= { mplsLdpEntityEntry 18 } + +mplsLdpEntityTargetPeerAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value of the internetwork layer address + used for the Extended Discovery. The value of + mplsLdpEntityTargetPeerAddrType specifies how + this address is to be interpreted." + ::= { mplsLdpEntityEntry 19 } + + + +mplsLdpEntityLabelType OBJECT-TYPE + SYNTAX MplsLdpLabelType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Specifies the optional parameters for the LDP + Initialization Message. + + If the value is generic(1) then no + optional parameters will be sent in + the LDP Initialization message associated + with this Entity. + + If the value is atmParameters(2) then + a row must be created in the + mplsLdpEntityAtmTable, which + corresponds to this entry. + + If the value is frameRelayParameters(3) then + a row must be created in the + mplsLdpEntityFrameRelayTable, which + corresponds to this entry." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3., + Initialization Message." + ::= { mplsLdpEntityEntry 20 } + +mplsLdpEntityDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one or more of this entity's counters + suffered a discontinuity. The relevant counters + are the specific instances associated with this + entity of any Counter32 object contained + in the 'mplsLdpEntityStatsTable'. If no such + discontinuities have occurred since the last + re-initialization of the local management + subsystem, then this object contains a zero + value." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpEntityEntry 21 } + +mplsLdpEntityStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "The storage type for this conceptual row. + Conceptual rows having the value 'permanent(4)' + need not allow write-access to any columnar + objects in the row." --- Conceptual rows having the value 'permanent(4)' need not allow write-access to any columnar objects in the row. + DEFVAL{ nonVolatile } + ::= { mplsLdpEntityEntry 22 } + +mplsLdpEntityRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this conceptual row. All writable + objects in this row may be modified at any + time, however, as described in detail in + the section entitled, 'Changing Values After + Session Establishment', and again described + in the DESCRIPTION clause of the + mplsLdpEntityAdminStatus object, if a session + has been initiated with a Peer, changing objects + in this table will wreak havoc with the session + and interrupt traffic. To repeat again: + the recommended procedure is to + set the mplsLdpEntityAdminStatus to down, thereby + explicitly causing a session to be torn down. Then, + change objects in this entry, then set + the mplsLdpEntityAdminStatus to enable, + which enables a new session to be initiated." + ::= { mplsLdpEntityEntry 23 } + +-- +-- The MPLS LDP Entity Statistics Table +-- + +mplsLdpEntityStatsTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpEntityStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is a read-only table which augments + the mplsLdpEntityTable. The purpose of this + table is to keep statistical information about + the LDP Entities on the LSR." + ::= { mplsLdpEntityObjects 4 } + +mplsLdpEntityStatsEntry OBJECT-TYPE + SYNTAX MplsLdpEntityStatsEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table contains statistical information + about an LDP Entity. Some counters contained in a + row are for fatal errors received during a former + LDP Session associated with this entry. For example, + an LDP PDU received on a TCP connection during an + LDP Session contains a fatal error. That + error is counted here, because the + session is terminated. + + If the error is NOT fatal (i.e., the Session + remains), then the error is counted in the + mplsLdpSessionStatsEntry." + AUGMENTS { mplsLdpEntityEntry } + ::= { mplsLdpEntityStatsTable 1 } + +MplsLdpEntityStatsEntry ::= SEQUENCE { + mplsLdpEntityStatsSessionAttempts Counter32, + mplsLdpEntityStatsSessionRejectedNoHelloErrors Counter32, + mplsLdpEntityStatsSessionRejectedAdErrors Counter32, + mplsLdpEntityStatsSessionRejectedMaxPduErrors Counter32, + mplsLdpEntityStatsSessionRejectedLRErrors Counter32, + mplsLdpEntityStatsBadLdpIdentifierErrors Counter32, + mplsLdpEntityStatsBadPduLengthErrors Counter32, + mplsLdpEntityStatsBadMessageLengthErrors Counter32, + mplsLdpEntityStatsBadTlvLengthErrors Counter32, + mplsLdpEntityStatsMalformedTlvValueErrors Counter32, + mplsLdpEntityStatsKeepAliveTimerExpErrors Counter32, + mplsLdpEntityStatsShutdownReceivedNotifications Counter32, + mplsLdpEntityStatsShutdownSentNotifications Counter32 +} + +mplsLdpEntityStatsSessionAttempts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A count of the Session Initialization messages + which were sent or received by this LDP Entity and + were NAK'd. In other words, this counter counts + the number of session initializations that failed. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + + + + ::= { mplsLdpEntityStatsEntry 1 } + +mplsLdpEntityStatsSessionRejectedNoHelloErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A count of the Session Rejected/No Hello Error + Notification Messages sent or received by + this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpEntityStatsEntry 2 } + +mplsLdpEntityStatsSessionRejectedAdErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A count of the Session Rejected/Parameters + Advertisement Mode Error Notification Messages sent + or received by this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpEntityStatsEntry 3 } + +mplsLdpEntityStatsSessionRejectedMaxPduErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A count of the Session Rejected/Parameters + + Max Pdu Length Error Notification Messages sent + or received by this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpEntityStatsEntry 4 } + + + + +mplsLdpEntityStatsSessionRejectedLRErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A count of the Session Rejected/Parameters + Label Range Notification Messages sent + or received by this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpEntityStatsEntry 5 } + +mplsLdpEntityStatsBadLdpIdentifierErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Bad LDP Identifier + Fatal Errors detected by the session(s) + (past and present) associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 6 } + +mplsLdpEntityStatsBadPduLengthErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Bad PDU Length + Fatal Errors detected by the session(s) + (past and present) associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 7 } + + + +mplsLdpEntityStatsBadMessageLengthErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Bad Message + Length Fatal Errors detected by the session(s) + (past and present) associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 8 } + +mplsLdpEntityStatsBadTlvLengthErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Bad TLV + Length Fatal Errors detected by the session(s) + (past and present) associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 9 } + +mplsLdpEntityStatsMalformedTlvValueErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Malformed TLV + Value Fatal Errors detected by the session(s) + (past and present) associated with this + LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + + + + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 10 } + +mplsLdpEntityStatsKeepAliveTimerExpErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Session Keep Alive + Timer Expired Errors detected by the session(s) + (past and present) associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, LDP Specification, Section 3.5.1.2." + ::= { mplsLdpEntityStatsEntry 11 } + +mplsLdpEntityStatsShutdownReceivedNotifications OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Shutdown Notifications + received related to session(s) (past and present) + associated with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpEntityStatsEntry 12 } + +mplsLdpEntityStatsShutdownSentNotifications OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Shutdown Notfications + sent related to session(s) (past and present) associated + with this LDP Entity. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + + + + mplsLdpEntityDiscontinuityTime." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpEntityStatsEntry 13 } + +-- +-- The MPLS LDP Peer Table +-- + +mplsLdpSessionObjects OBJECT IDENTIFIER ::= { mplsLdpObjects 3 } + +mplsLdpPeerLastChange OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time of the most + recent addition or deletion to/from the + mplsLdpPeerTable/mplsLdpSessionTable." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpSessionObjects 1 } + +mplsLdpPeerTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpPeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about LDP peers known by Entities in + the mplsLdpEntityTable. The information in this table + is based on information from the Entity-Peer interaction + during session initialization but is not appropriate + for the mplsLdpSessionTable, because objects in this + table may or may not be used in session establishment." + ::= { mplsLdpSessionObjects 2 } + +mplsLdpPeerEntry OBJECT-TYPE + SYNTAX MplsLdpPeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a single Peer which is related + to a Session. This table is augmented by + the mplsLdpSessionTable." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId } + ::= { mplsLdpPeerTable 1 } + +MplsLdpPeerEntry ::= SEQUENCE { + mplsLdpPeerLdpId MplsLdpIdentifier, + mplsLdpPeerLabelDistMethod MplsLabelDistributionMethod, + + + + mplsLdpPeerPathVectorLimit Integer32, + mplsLdpPeerTransportAddrType InetAddressType, + mplsLdpPeerTransportAddr InetAddress +} + +mplsLdpPeerLdpId OBJECT-TYPE + SYNTAX MplsLdpIdentifier + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The LDP identifier of this LDP Peer." --- IPI Comments : Not supported. + ::= { mplsLdpPeerEntry 1 } + +mplsLdpPeerLabelDistMethod OBJECT-TYPE + SYNTAX MplsLabelDistributionMethod + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "For any given LDP session, the method of + label distribution must be specified." --- IPI Comments : SNMP SET is Not supported. + ::= { mplsLdpPeerEntry 2 } + +mplsLdpPeerPathVectorLimit OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If the value of this object is 0 (zero) then + Loop Dection for Path Vectors for this Peer + is disabled. + + Otherwise, if this object has a value greater than + zero, then Loop Dection for Path Vectors for this + Peer is enabled and the Path Vector Limit is this value." --- IPI Comments : SNMP SET is Not supported. + REFERENCE + "RFC3036, LDP Specification, Section 2.8 Loop Dection, + Section 3.4.5 Path Vector TLV." + ::= { mplsLdpPeerEntry 3 } + +mplsLdpPeerTransportAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of the Internet address for the + mplsLdpPeerTransportAddr object. The LDP + specification describes this as being either + an IPv4 Transport Address or IPv6 Transport + + + + Address which is used in opening the LDP session's + TCP connection, or if the optional TLV is not + present, then this is the IPv4/IPv6 source + address for the UPD packet carrying the Hellos. + + This object specifies how the value of the + mplsLdpPeerTransportAddr object should be + interpreted." --- IPI Comments : SNMP SET is Not supported. + REFERENCE + "RFC3036, LDP Specification, Section 2.5.2 + Transport Connection Establishment and + Section 3.5.2.1 Hello Message Procedures." + ::= { mplsLdpPeerEntry 4 } + +mplsLdpPeerTransportAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Internet address advertised by the peer + in the Hello Message or the Hello source address. + + The type of this address is specified by the + value of the mplsLdpPeerTransportAddrType + object." --- IPI Comments : SNMP SET is Not supported. + REFERENCE + "RFC3036, LDP Specification, Section 2.5.2 + Transport Connection Establishment and + Section 3.5.2.1 Hello Message Procedures." + ::= { mplsLdpPeerEntry 5 } + +-- +-- The MPLS LDP Sessions Table +-- + +mplsLdpSessionTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpSessionEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of Sessions between the LDP Entities + and LDP Peers. This table AUGMENTS the + mplsLdpPeerTable. Each row in this table + represents a single session." + ::= { mplsLdpSessionObjects 3 } + +mplsLdpSessionEntry OBJECT-TYPE + SYNTAX MplsLdpSessionEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents information on a + single session between an LDP Entity and LDP Peer. + The information contained in a row is read-only. + + Please note: the Path Vector Limit for the + Session is the value which is configured in + the corresponding mplsLdpEntityEntry. The + Peer's Path Vector Limit is in the + mplsLdpPeerPathVectorLimit object in the + mplsLdpPeerTable. + + Values which may differ from those configured are + noted in the objects of this table, the + mplsLdpAtmSessionTable and the + mplsLdpFrameRelaySessionTable. A value will + differ if it was negotiated between the + Entity and the Peer. Values may or may not + be negotiated. For example, if the values + are the same then no negotiation takes place. + If they are negotiated, then they may differ." + AUGMENTS { mplsLdpPeerEntry } + ::= { mplsLdpSessionTable 1 } + +MplsLdpSessionEntry ::= SEQUENCE { + mplsLdpSessionStateLastChange TimeStamp, + mplsLdpSessionState INTEGER, + mplsLdpSessionRole INTEGER, + mplsLdpSessionProtocolVersion Unsigned32, + mplsLdpSessionKeepAliveHoldTimeRem TimeInterval, + mplsLdpSessionKeepAliveTime Unsigned32, + mplsLdpSessionMaxPduLength Unsigned32, + mplsLdpSessionDiscontinuityTime TimeStamp +} + +mplsLdpSessionStateLastChange OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time this + Session entered its current state as + denoted by the mplsLdpSessionState + object." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpSessionEntry 1 } + + + + +mplsLdpSessionState OBJECT-TYPE + SYNTAX INTEGER { + nonexistent(1), + initialized(2), + openrec(3), + opensent(4), + operational(5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current state of the session, all of the + states 1 to 5 are based on the state machine + for session negotiation behavior." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, LDP Specification, Section 2.5.4, + Initialization State Machine." + ::= { mplsLdpSessionEntry 2 } + +mplsLdpSessionRole OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + active(2), + passive(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "During session establishment the LSR/LER takes either + the active role or the passive role based on address + comparisons. This object indicates whether this LSR/LER + was behaving in an active role or passive role during + this session's establishment. + + The value of unknown(1), indicates that the role is not + able to be determined at the present time." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, LDP Specification, Section 2.5.3., + Session Initialization" + ::= { mplsLdpSessionEntry 3 } + +mplsLdpSessionProtocolVersion OBJECT-TYPE + SYNTAX Unsigned32(1..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The version of the LDP Protocol which + this session is using. This is the version of + + + + the LDP protocol which has been negotiated + during session initialization." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3, + Initialization Message." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpSessionEntry 4 } + +mplsLdpSessionKeepAliveHoldTimeRem OBJECT-TYPE + SYNTAX TimeInterval + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The keep alive hold time remaining for + this session." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpSessionEntry 5 } + + mplsLdpSessionKeepAliveTime OBJECT-TYPE + SYNTAX Unsigned32 (1..65535) + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The negotiated KeepAlive Time which + represents the amount of seconds between + keep alive messages. The + mplsLdpEntityKeepAliveHoldTimer + related to this Session is the + value that was proposed as the + KeepAlive Time for this session. + + This value is negotiated during + session initialization between + the entity's proposed value + (i.e., the value configured in + mplsLdpEntityKeepAliveHoldTimer) + and the peer's proposed + KeepAlive Hold Timer value. + This value is the smaller + of the two proposed values." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3, + Initialization Message." + ::= { mplsLdpSessionEntry 6 } + + mplsLdpSessionMaxPduLength OBJECT-TYPE + SYNTAX Unsigned32 (1..65535) + UNITS "octets" + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "The value of maximum allowable length for LDP PDUs for + this session. This value may have been negotiated + during the Session Initialization. This object is + related to the mplsLdpEntityMaxPduLength object. The + mplsLdpEntityMaxPduLength object specifies the requested + LDP PDU length, and this object reflects the negotiated + LDP PDU length between the Entity and + the Peer." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3, + Initialization Message." + ::= { mplsLdpSessionEntry 7 } + +mplsLdpSessionDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one or more of this session's counters + suffered a discontinuity. The relevant counters are + the specific instances associated with this session + of any Counter32 object contained in the + mplsLdpSessionStatsTable. + + The initial value of this object is the value of + sysUpTime when the entry was created in this table. + + Also, a command generator can distinguish when a session + between a given Entity and Peer goes away and a new + session is established. This value would change and + thus indicate to the command generator that this is a + different session." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpSessionEntry 8 } + +-- +-- The MPLS LDP Session Statistics Table +-- + +mplsLdpSessionStatsTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpSessionStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of statistics for Sessions between + LDP Entities and LDP Peers. This table AUGMENTS + + + + the mplsLdpPeerTable." + ::= { mplsLdpSessionObjects 4 } + +mplsLdpSessionStatsEntry OBJECT-TYPE + SYNTAX MplsLdpSessionStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents statistical + information on a single session between an LDP + Entity and LDP Peer." + + AUGMENTS { mplsLdpPeerEntry } + ::= { mplsLdpSessionStatsTable 1 } + +MplsLdpSessionStatsEntry ::= SEQUENCE { + mplsLdpSessionStatsUnknownMesTypeErrors Counter32, + mplsLdpSessionStatsUnknownTlvErrors Counter32 +} + +mplsLdpSessionStatsUnknownMesTypeErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Unknown Message Type + Errors detected by this LSR/LER during this session. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpSessionDiscontinuityTime." --- IPI Comments : SNMP SET not supported. + ::= { mplsLdpSessionStatsEntry 1 } + +mplsLdpSessionStatsUnknownTlvErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object counts the number of Unknown TLV Errors + detected by this LSR/LER during this session. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + mplsLdpSessionDiscontinuityTime." --- IPI Comments : SNMP SET not supported. + ::= { mplsLdpSessionStatsEntry 2 } + + + + +-- +-- The MPLS LDP Hello Adjacency Table +-- + +mplsLdpHelloAdjacencyObjects OBJECT IDENTIFIER ::= + { mplsLdpSessionObjects 5 } + +mplsLdpHelloAdjacencyTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpHelloAdjacencyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of Hello Adjacencies for Sessions." + ::= { mplsLdpHelloAdjacencyObjects 1 } + +mplsLdpHelloAdjacencyEntry OBJECT-TYPE + SYNTAX MplsLdpHelloAdjacencyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each row represents a single LDP Hello Adjacency. + An LDP Session can have one or more Hello + Adjacencies." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId, + mplsLdpHelloAdjacencyIndex } + ::= { mplsLdpHelloAdjacencyTable 1 } + +MplsLdpHelloAdjacencyEntry ::= SEQUENCE { + mplsLdpHelloAdjacencyIndex Unsigned32, + mplsLdpHelloAdjacencyHoldTimeRem TimeInterval, + mplsLdpHelloAdjacencyHoldTime Unsigned32, + mplsLdpHelloAdjacencyType INTEGER +} + +mplsLdpHelloAdjacencyIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An identifier for this specific adjacency." --- IPI Comments : Not supported. + ::= { mplsLdpHelloAdjacencyEntry 1 } + +mplsLdpHelloAdjacencyHoldTimeRem OBJECT-TYPE + SYNTAX TimeInterval + UNITS "seconds" + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "If the value of this object is 65535, + this means that the hold time is infinite + (i.e., wait forever). + + Otherwise, the time remaining for + this Hello Adjacency to receive its + next Hello Message. + + This interval will change when the 'next' + Hello Message which corresponds to this + Hello Adjacency is received unless it + is infinite." --- IPI Comments : Not supported. + ::= { mplsLdpHelloAdjacencyEntry 2 } + +mplsLdpHelloAdjacencyHoldTime OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Hello hold time which is negotiated between + the Entity and the Peer. The entity associated + with this Hello Adjacency issues a proposed + Hello Hold Time value in the + mplsLdpEntityHelloHoldTimer object. The peer + also proposes a value and this object represents + the negotiated value. + + A value of 0 means the default, + which is 15 seconds for Link Hellos + and 45 seconds for Targeted Hellos. + A value of 65535 indicates an + infinite hold time." --- IPI Comments : Not supported. + REFERENCE + "RFC3036, LDP Specification, Section 3.5.2 Hello Message" + ::= { mplsLdpHelloAdjacencyEntry 3 } + +mplsLdpHelloAdjacencyType OBJECT-TYPE + SYNTAX INTEGER { + link(1), + targeted(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This adjacency is the result of a 'link' + hello if the value of this object is link(1). + + + + Otherwise, it is a result of a 'targeted' + hello, targeted(2)." --- IPI Comments : Not supported. + ::= { mplsLdpHelloAdjacencyEntry 4 } + +-- +-- Session Label (LSP) Mapping to LSR MIB's +-- In Segment LIB Information. +-- +-- +-- NOTE: the next 2 tables map to the +-- MPLS-LSR-STD-MIB's MplsInSegmentTable +-- and MplsOutSegmentTable. The +-- cross-connect (XC) information is not +-- represented here as it can be gleaned +-- from the MPLS-LSR-STD-MIB. +-- + +mplsInSegmentLdpLspTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsInSegmentLdpLspEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of LDP LSP's which + map to the mplsInSegmentTable in the + MPLS-LSR-STD-MIB module." --- IPI Comments : Not supported. + ::= { mplsLdpSessionObjects 6 } + +mplsInSegmentLdpLspEntry OBJECT-TYPE + SYNTAX MplsInSegmentLdpLspEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents information + on a single LDP LSP which is represented by + a session's index triple (mplsLdpEntityLdpId, + mplsLdpEntityIndex, mplsLdpPeerLdpId) AND the + index for the mplsInSegmentTable + (mplsInSegmentLdpLspLabelIndex) from the + MPLS-LSR-STD-MIB. + + The information contained in a row is read-only." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId, + mplsInSegmentLdpLspIndex + } + ::= { mplsInSegmentLdpLspTable 1 } + + + + +MplsInSegmentLdpLspEntry ::= SEQUENCE { + mplsInSegmentLdpLspIndex MplsIndexType, + mplsInSegmentLdpLspLabelType MplsLdpLabelType, + mplsInSegmentLdpLspType MplsLspType +} + +mplsInSegmentLdpLspIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This contains the same value as the + mplsInSegmentIndex in the + MPLS-LSR-STD-MIB's mplsInSegmentTable." --- IPI Comments : Not supported. + ::= { mplsInSegmentLdpLspEntry 1 } + +mplsInSegmentLdpLspLabelType OBJECT-TYPE + SYNTAX MplsLdpLabelType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Layer 2 Label Type." --- IPI Comments : Not supported. + ::= { mplsInSegmentLdpLspEntry 2 } + +mplsInSegmentLdpLspType OBJECT-TYPE + SYNTAX MplsLspType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of LSP connection." --- IPI Comments : Not supported. + ::= { mplsInSegmentLdpLspEntry 3 } + +-- +-- Session Label (LSP) Mapping to LSR MIB's +-- Out Segment LIB Information. +-- + +mplsOutSegmentLdpLspTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsOutSegmentLdpLspEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of LDP LSP's which + map to the mplsOutSegmentTable in the + MPLS-LSR-STD-MIB." --- IPI Comments : Not supported. + ::= { mplsLdpSessionObjects 7 } + +mplsOutSegmentLdpLspEntry OBJECT-TYPE + + + + SYNTAX MplsOutSegmentLdpLspEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents information + on a single LDP LSP which is represented by + a session's index triple (mplsLdpEntityLdpId, + mplsLdpEntityIndex, mplsLdpPeerLdpId) AND the + index (mplsOutSegmentLdpLspIndex) + for the mplsOutSegmentTable. + + The information contained in a row is read-only." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId, + mplsOutSegmentLdpLspIndex + } + ::= { mplsOutSegmentLdpLspTable 1 } + +MplsOutSegmentLdpLspEntry ::= SEQUENCE { + mplsOutSegmentLdpLspIndex MplsIndexType, + mplsOutSegmentLdpLspLabelType MplsLdpLabelType, + mplsOutSegmentLdpLspType MplsLspType +} + +mplsOutSegmentLdpLspIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This contains the same value as the + mplsOutSegmentIndex in the + MPLS-LSR-STD-MIB's mplsOutSegmentTable." + ::= { mplsOutSegmentLdpLspEntry 1 } + +mplsOutSegmentLdpLspLabelType OBJECT-TYPE + SYNTAX MplsLdpLabelType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Layer 2 Label Type." --- IPI Comments : SNMP SET is not supported. + ::= { mplsOutSegmentLdpLspEntry 2 } + +mplsOutSegmentLdpLspType OBJECT-TYPE + SYNTAX MplsLspType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "The type of LSP connection." --- IPI Comments : SNMP SET is not supported. + ::= { mplsOutSegmentLdpLspEntry 3 } + +-- +-- Mpls FEC Table +-- + +mplsFecObjects OBJECT IDENTIFIER ::= + { mplsLdpSessionObjects 8 } + +mplsFecLastChange OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time of the most + recent addition/deletion of an entry + to/from the mplsLdpFectTable or + the most recent change in values to any objects + in the mplsLdpFecTable. + + If no such changes have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." --- IPI Comments : SNMP SET is not supported. + ::= { mplsFecObjects 1 } + +mplsFecIndexNext OBJECT-TYPE + SYNTAX IndexIntegerNextFree + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains an appropriate value to + be used for mplsFecIndex when creating + entries in the mplsFecTable. The value + 0 indicates that no unassigned entries are + available." --- IPI Comments : SNMP SET is not supported. + ::= { mplsFecObjects 2 } + +mplsFecTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsFecEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table represents the FEC + (Forwarding Equivalence Class) + Information associated with an LSP." + ::= { mplsFecObjects 3 } + + + + +mplsFecEntry OBJECT-TYPE + SYNTAX MplsFecEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each row represents a single FEC Element." + INDEX { mplsFecIndex } + ::= { mplsFecTable 1 } + +MplsFecEntry ::= SEQUENCE { + mplsFecIndex IndexInteger, + mplsFecType INTEGER, + mplsFecAddrType InetAddressType, + mplsFecAddr InetAddress, + mplsFecAddrPrefixLength InetAddressPrefixLength, + mplsFecStorageType StorageType, + mplsFecRowStatus RowStatus +} + +mplsFecIndex OBJECT-TYPE + SYNTAX IndexInteger + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index which uniquely identifies this entry." --- IPI Comments : Not Supported. + ::= { mplsFecEntry 1 } + +mplsFecType OBJECT-TYPE + SYNTAX INTEGER { + prefix(1), + hostAddress(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of the FEC. If the value of this object + is 'prefix(1)' then the FEC type described by this + row is an address prefix. + + If the value of this object is 'hostAddress(2)' then + the FEC type described by this row is a host address." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, Section 3.4.1. FEC TLV." + ::= { mplsFecEntry 2 } + +mplsFecAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + + + + STATUS current + DESCRIPTION + "The value of this object is the type of the + Internet address. The value of this object, + decides how the value of the mplsFecAddr object + is interpreted." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, Section 3.4.1. FEC TLV." + ::= { mplsFecEntry 4 } + +mplsFecAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value of this object is interpreted based + on the value of the 'mplsFecAddrType' object. + + This address is then further interpretted as + an being used with the address prefix, + or as the host address. This further interpretation + is indicated by the 'mplsFecType' object. + In other words, the FEC element is populated + according to the Prefix FEC Element value encoding, or + the Host Address FEC Element encoding." --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, Section 3.4.1 FEC TLV." + ::= { mplsFecEntry 5 } + +mplsFecAddrPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the value of the 'mplsFecType' is 'hostAddress(2)' + then this object is undefined. + + If the value of 'mplsFecType' is 'prefix(1)' + then the value of this object is the length in + bits of the address prefix represented by + 'mplsFecAddr', or zero. If the value of this + object is zero, this indicates that the + prefix matches all addresses. In this case the + address prefix MUST also be zero (i.e., 'mplsFecAddr' + should have the value of zero.)" --- IPI Comments : SNMP SET is not supported. + REFERENCE + "RFC3036, Section 3.4.1. FEC TLV." + DEFVAL { 0 } + + + + ::= { mplsFecEntry 3 } + +mplsFecStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this conceptual row. + Conceptual rows having the value 'permanent(4)' + need not allow write-access to any columnar + objects in the row." --- IPI Comments : SNMP SET is not supported. + DEFVAL { nonVolatile } + ::= { mplsFecEntry 6 } + +mplsFecRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this conceptual row. If the value of this + object is 'active(1)', then none of the writable objects + of this entry can be modified, except to set this object + to 'destroy(6)'. + + NOTE: if this row is being referenced by any entry in + the mplsLdpLspFecTable, then a request to destroy + this row, will result in an inconsistentValue error." --- IPI Comments : SNMP SET is not supported. + ::= { mplsFecEntry 7 } + +-- +-- LDP LSP FEC Table +-- + +mplsLdpLspFecLastChange OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time of the most + recent addition/deletion of an entry + to/from the mplsLdpLspFecTable or + the most recent change in values to any objects in the + mplsLdpLspFecTable. + + If no such changes have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." --- IPI Comments : SNMP SET is not supported. + ::= { mplsLdpSessionObjects 9 } + + + +mplsLdpLspFecTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpLspFecEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table which shows the relationship between + LDP LSPs and FECs. Each row represents + a single LDP LSP to FEC association." + ::= { mplsLdpSessionObjects 10 } + +mplsLdpLspFecEntry OBJECT-TYPE + SYNTAX MplsLdpLspFecEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry represents a LDP LSP + to FEC association." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId, + mplsLdpLspFecSegment, + mplsLdpLspFecSegmentIndex, + mplsLdpLspFecIndex + } + ::= { mplsLdpLspFecTable 1 } + +MplsLdpLspFecEntry ::= SEQUENCE { + mplsLdpLspFecSegment INTEGER, + mplsLdpLspFecSegmentIndex MplsIndexType, + mplsLdpLspFecIndex IndexInteger, + mplsLdpLspFecStorageType StorageType, + mplsLdpLspFecRowStatus RowStatus +} + +mplsLdpLspFecSegment OBJECT-TYPE + SYNTAX INTEGER { + inSegment(1), + outSegment(2) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "If the value is inSegment(1), then this + indicates that the following index, + mplsLdpLspFecSegmentIndex, contains the same + value as the mplsInSegmentLdpLspIndex. + + Otherwise, if the value of this object is + + + + outSegment(2), then this + indicates that following index, + mplsLdpLspFecSegmentIndex, contains the same + value as the mplsOutSegmentLdpLspIndex." --- IPI Comments : Not Supported. + ::= { mplsLdpLspFecEntry 1 } + +mplsLdpLspFecSegmentIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This index is interpretted by using the value + of the mplsLdpLspFecSegment. + + If the mplsLdpLspFecSegment is inSegment(1), + then this index has the same value as + mplsInSegmentLdpLspIndex. + + If the mplsLdpLspFecSegment is outSegment(2), + then this index has the same value as + mplsOutSegmentLdpLspIndex." --- IPI Comments : Not Supported. + ::= { mplsLdpLspFecEntry 2 } + +mplsLdpLspFecIndex OBJECT-TYPE + SYNTAX IndexInteger + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This index identifies the FEC entry in the + mplsFecTable associated with this session. + In other words, the value of this index + is the same as the value of the mplsFecIndex + that denotes the FEC associated with this + Session." --- IPI Comments : Not Supported. + ::= { mplsLdpLspFecEntry 3 } + +mplsLdpLspFecStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this conceptual row. + Conceptual rows having the value 'permanent(4)' + need not allow write-access to any columnar + objects in the row." --- IPI Comments : SNMP SET is Not Supported. + DEFVAL { nonVolatile } + ::= { mplsLdpLspFecEntry 4 } + + + + +mplsLdpLspFecRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this conceptual row. If the + value of this object is 'active(1)', then + none of the writable objects of this entry + can be modified. + + The Agent should delete this row when + the session ceases to exist. If an + operator wants to associate the session with + a different FEC, the recommended + procedure is (as described in detail in the section + entitled, 'Changing Values After Session + Establishment', and again described in the + DESCRIPTION clause of the + mplsLdpEntityAdminStatus object) + is to set the mplsLdpEntityAdminStatus to + down, thereby explicitly causing a session + to be torn down. This will also + cause this entry to be deleted. + + Then, set the mplsLdpEntityAdminStatus + to enable which enables a new session to be initiated. + Once the session is initiated, an entry may be + added to this table to associate the new session + with a FEC." --- IPI Comments : SNMP SET is Not Supported. + ::= { mplsLdpLspFecEntry 5 } + +-- +-- Address Message/Address Withdraw Message Information +-- +-- This information is associated with a specific Session +-- because Label Address Messages are sent after session +-- initialization has taken place. +-- + +mplsLdpSessionPeerAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF MplsLdpSessionPeerAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table 'extends' the mplsLdpSessionTable. + This table is used to store Label Address Information + from Label Address Messages received by this LSR from + Peers. This table is read-only and should be updated + + + + when Label Withdraw Address Messages are received, i.e., + Rows should be deleted as appropriate. + + NOTE: since more than one address may be contained + in a Label Address Message, this table 'sparse augments', + the mplsLdpSessionTable's information." + ::= { mplsLdpSessionObjects 11 } + +mplsLdpSessionPeerAddrEntry OBJECT-TYPE + SYNTAX MplsLdpSessionPeerAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table represents information on + a session's single next hop address which was + advertised in an Address Message from the LDP peer. + The information contained in a row is read-only." + INDEX { mplsLdpEntityLdpId, + mplsLdpEntityIndex, + mplsLdpPeerLdpId, + mplsLdpSessionPeerAddrIndex + } + ::= { mplsLdpSessionPeerAddrTable 1 } + +MplsLdpSessionPeerAddrEntry ::= SEQUENCE { + mplsLdpSessionPeerAddrIndex Unsigned32, + mplsLdpSessionPeerNextHopAddrType InetAddressType, + mplsLdpSessionPeerNextHopAddr InetAddress +} + +mplsLdpSessionPeerAddrIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An index which uniquely identifies this entry within + a given session." --- IPI Comments : Not Supported. + ::= { mplsLdpSessionPeerAddrEntry 1 } + +mplsLdpSessionPeerNextHopAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The internetwork layer address type of this Next Hop + Address as specified in the Label Address Message + associated with this Session. The value of this + object indicates how to interpret the value of + + + + mplsLdpSessionPeerNextHopAddr." --- IPI Comments : SNMP SET is Not Supported. + ::= { mplsLdpSessionPeerAddrEntry 2 } + +mplsLdpSessionPeerNextHopAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The next hop address. The type of this address + is specified by the value of the + mplsLdpSessionPeerNextHopAddrType." + REFERENCE + "RFC3036, Section 2.7. LDP Identifiers + and Next Hop Addresses" --- IPI Comments : SNMP SET is Not Supported. + ::= { mplsLdpSessionPeerAddrEntry 3 } + +--- +--- Notifications +--- + +mplsLdpInitSessionThresholdExceeded NOTIFICATION-TYPE + OBJECTS { + mplsLdpEntityInitSessionThreshold + } + STATUS current + DESCRIPTION + "This notification is generated when the value of + the 'mplsLdpEntityInitSessionThreshold' object + is not zero, and the number of Session + Initialization messages exceeds the value + of the 'mplsLdpEntityInitSessionThreshold' object." + ::= { mplsLdpNotifications 1 } + +mplsLdpPathVectorLimitMismatch NOTIFICATION-TYPE + OBJECTS { + mplsLdpEntityPathVectorLimit, + mplsLdpPeerPathVectorLimit + } + STATUS current + DESCRIPTION + "This notification is sent when the + 'mplsLdpEntityPathVectorLimit' does NOT match + the value of the 'mplsLdpPeerPathVectorLimit' for + a specific Entity." + REFERENCE + "RFC3036, LDP Specification, Section 3.5.3." + ::= { mplsLdpNotifications 2 } + + + + +mplsLdpSessionUp NOTIFICATION-TYPE + OBJECTS { + mplsLdpSessionState, + mplsLdpSessionDiscontinuityTime, + mplsLdpSessionStatsUnknownMesTypeErrors, + mplsLdpSessionStatsUnknownTlvErrors + } + STATUS current + DESCRIPTION + "If this notification is sent when the + value of 'mplsLdpSessionState' enters + the 'operational(5)' state." + ::= { mplsLdpNotifications 3 } + +mplsLdpSessionDown NOTIFICATION-TYPE + OBJECTS { + mplsLdpSessionState, + mplsLdpSessionDiscontinuityTime, + mplsLdpSessionStatsUnknownMesTypeErrors, + mplsLdpSessionStatsUnknownTlvErrors + + } + STATUS current + DESCRIPTION + "This notification is sent when the + value of 'mplsLdpSessionState' leaves + the 'operational(5)' state." + ::= { mplsLdpNotifications 4 } + +--**************************************************************** +-- Module Conformance Statement +--**************************************************************** + +mplsLdpGroups + OBJECT IDENTIFIER ::= { mplsLdpConformance 1 } + +mplsLdpCompliances + OBJECT IDENTIFIER ::= { mplsLdpConformance 2 } + +-- +-- Full Compliance +-- + +mplsLdpModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The Module is implemented with support + for read-create and read-write. In other + + + + words, both monitoring and configuration + are available when using this MODULE-COMPLIANCE." + + MODULE -- this module + MANDATORY-GROUPS { mplsLdpGeneralGroup, + mplsLdpNotificationsGroup + } + GROUP mplsLdpLspGroup + DESCRIPTION + "This group must be supported if the LSR MIB is + implemented, specifically the mplsInSegmentTable, + the mplsOutSegmentTable or the mplsXCTable." + + OBJECT mplsLdpEntityTargetPeerAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + DESCRIPTION + "An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + OBJECT mplsLdpEntityTargetPeerAddr + SYNTAX InetAddress (SIZE(0|4|16)) + DESCRIPTION + "An implementation is only required to support IPv4 and + globally unique IPv6 addresses." + + OBJECT mplsLdpEntityRowStatus + SYNTAX RowStatus { active(1) } + WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } + DESCRIPTION + "Support for createAndWait and notInService is not + required." + + OBJECT mplsFecAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + DESCRIPTION + "An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + OBJECT mplsFecAddr + SYNTAX InetAddress (SIZE(0|4|16)) + DESCRIPTION + "An implementation is only required to support IPv4 and + globally unique IPv6 addresses." + + OBJECT mplsFecRowStatus + SYNTAX RowStatus { active(1) } + WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } + DESCRIPTION + + + + "Support for createAndWait and notInService is not + required." + + OBJECT mplsLdpLspFecRowStatus + SYNTAX RowStatus { active(1) } + WRITE-SYNTAX RowStatus { createAndGo(4), destroy(6) } + DESCRIPTION + "Support for createAndWait and notInService is not + required." + + OBJECT mplsLdpSessionPeerNextHopAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + DESCRIPTION + "An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + OBJECT mplsLdpSessionPeerNextHopAddr + SYNTAX InetAddress (SIZE(0|4|16)) + DESCRIPTION + "An implementation is only required to support IPv4 + and globally unique IPv6 addresses." + + ::= { mplsLdpCompliances 1 } + +-- +-- Read-Only Compliance +-- + +mplsLdpModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The Module is implemented with support + for read-only. In other words, only monitoring + is available by implementing this MODULE-COMPLIANCE." + + MODULE -- this module + MANDATORY-GROUPS { mplsLdpGeneralGroup, + mplsLdpNotificationsGroup + } + + GROUP mplsLdpLspGroup + DESCRIPTION + "This group must be supported if the LSR MIB is + implemented, specifically the mplsInSegmentTable, + the mplsOutSegmentTable or the mplsXCTable." + + OBJECT mplsLdpEntityProtocolVersion + MIN-ACCESS read-only + + + + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityAdminStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityTcpPort + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityUdpDscPort + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityMaxPduLength + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityKeepAliveHoldTimer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityHelloHoldTimer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityInitSessionThreshold + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityLabelDistMethod + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityLabelRetentionMode + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + OBJECT mplsLdpEntityPathVectorLimit + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityHopCountLimit + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityTransportAddrKind + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityTargetPeer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityTargetPeerAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. + An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + OBJECT mplsLdpEntityTargetPeerAddr + SYNTAX InetAddress (SIZE(0|4|16)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. + An implementation is only required to support IPv4 and + globally unique IPv6 addresses." + + OBJECT mplsLdpEntityLabelType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsLdpEntityRowStatus + SYNTAX RowStatus { active(1) } + + + + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and active is the + only status that needs to be supported." + + OBJECT mplsFecType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFecAddrPrefixLength + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFecAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. + An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + OBJECT mplsFecAddr + SYNTAX InetAddress (SIZE(0|4|16)) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. + An implementation is only required to support IPv4 and + globally unique IPv6 addresses." + + OBJECT mplsFecStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mplsFecRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and active is the + only status that needs to be supported." + + OBJECT mplsLdpLspFecStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + OBJECT mplsLdpLspFecRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required, and active is the + only status that needs to be supported." + + OBJECT mplsLdpSessionPeerNextHopAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } + DESCRIPTION + "An implementation is only required to support + 'unknown(0)', IPv4 and globally unique IPv6 addresses." + + + OBJECT mplsLdpSessionPeerNextHopAddr + SYNTAX InetAddress (SIZE(0|4|16)) + DESCRIPTION + "An implementation is only required to support IPv4 + and globally unique IPv6 addresses." + + ::= { mplsLdpCompliances 2 } + +-- units of conformance + +mplsLdpGeneralGroup OBJECT-GROUP + OBJECTS { + mplsLdpLsrId, + mplsLdpLsrLoopDetectionCapable, + mplsLdpEntityLastChange, + mplsLdpEntityIndexNext, + mplsLdpEntityProtocolVersion, + mplsLdpEntityAdminStatus, + mplsLdpEntityOperStatus, + mplsLdpEntityTcpPort, + mplsLdpEntityUdpDscPort, + mplsLdpEntityMaxPduLength, + mplsLdpEntityKeepAliveHoldTimer, + mplsLdpEntityHelloHoldTimer, + mplsLdpEntityInitSessionThreshold, + mplsLdpEntityLabelDistMethod, + mplsLdpEntityLabelRetentionMode, + mplsLdpEntityPathVectorLimit, + mplsLdpEntityHopCountLimit, + mplsLdpEntityTransportAddrKind, + mplsLdpEntityTargetPeer, + mplsLdpEntityTargetPeerAddrType, + mplsLdpEntityTargetPeerAddr, + mplsLdpEntityLabelType, + + + + mplsLdpEntityDiscontinuityTime, + mplsLdpEntityStorageType, + mplsLdpEntityRowStatus, + mplsLdpEntityStatsSessionAttempts, + mplsLdpEntityStatsSessionRejectedNoHelloErrors, + mplsLdpEntityStatsSessionRejectedAdErrors, + mplsLdpEntityStatsSessionRejectedMaxPduErrors, + mplsLdpEntityStatsSessionRejectedLRErrors, + mplsLdpEntityStatsBadLdpIdentifierErrors, + mplsLdpEntityStatsBadPduLengthErrors, + mplsLdpEntityStatsBadMessageLengthErrors, + mplsLdpEntityStatsBadTlvLengthErrors, + mplsLdpEntityStatsMalformedTlvValueErrors, + mplsLdpEntityStatsKeepAliveTimerExpErrors, + mplsLdpEntityStatsShutdownReceivedNotifications, + mplsLdpEntityStatsShutdownSentNotifications, + mplsLdpPeerLastChange, + mplsLdpPeerLabelDistMethod, + mplsLdpPeerPathVectorLimit, + mplsLdpPeerTransportAddrType, + mplsLdpPeerTransportAddr, + mplsLdpHelloAdjacencyHoldTimeRem, + mplsLdpHelloAdjacencyHoldTime, + mplsLdpHelloAdjacencyType, + mplsLdpSessionStateLastChange, + mplsLdpSessionState, + mplsLdpSessionRole, + mplsLdpSessionProtocolVersion, + mplsLdpSessionKeepAliveHoldTimeRem, + mplsLdpSessionKeepAliveTime, + mplsLdpSessionMaxPduLength, + mplsLdpSessionDiscontinuityTime, + mplsLdpSessionStatsUnknownMesTypeErrors, + mplsLdpSessionStatsUnknownTlvErrors, + mplsLdpSessionPeerNextHopAddrType, + mplsLdpSessionPeerNextHopAddr, + mplsFecLastChange, + mplsFecIndexNext, + mplsFecType, + mplsFecAddrType, + mplsFecAddr, + mplsFecAddrPrefixLength, + mplsFecStorageType, + mplsFecRowStatus + } + STATUS current + DESCRIPTION + "Objects that apply to all MPLS LDP implementations." + + + + ::= { mplsLdpGroups 1 } + +mplsLdpLspGroup OBJECT-GROUP + OBJECTS { + mplsInSegmentLdpLspLabelType, + mplsInSegmentLdpLspType, + mplsOutSegmentLdpLspLabelType, + mplsOutSegmentLdpLspType, + mplsLdpLspFecLastChange, + mplsLdpLspFecStorageType, + mplsLdpLspFecRowStatus + } + STATUS current + DESCRIPTION + "These objects are for LDP implementations + which interface to the Label Information Base (LIB) + in the MPLS-LSR-STD-MIB. The LIB is + represented in the mplsInSegmentTable, + mplsOutSegmentTable and mplsXCTable." + ::= { mplsLdpGroups 2 } + +mplsLdpNotificationsGroup NOTIFICATION-GROUP + NOTIFICATIONS { mplsLdpInitSessionThresholdExceeded, + mplsLdpPathVectorLimitMismatch, + mplsLdpSessionUp, + mplsLdpSessionDown + } + STATUS current + DESCRIPTION + "The notification for an MPLS LDP implementation." + ::= { mplsLdpGroups 3 } + +END \ No newline at end of file diff --git a/mibs/RFC-4273-BGP4-MIB.txt b/mibs/RFC-4273-BGP4-MIB.txt new file mode 100644 index 00000000..2508d49a --- /dev/null +++ b/mibs/RFC-4273-BGP4-MIB.txt @@ -0,0 +1,1298 @@ +BGP4-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, + IpAddress, Integer32, Counter32, Gauge32, mib-2 + FROM SNMPv2-SMI + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF; + + bgp MODULE-IDENTITY + LAST-UPDATED "200601110000Z" + ORGANIZATION "IETF IDR Working Group" + CONTACT-INFO "E-mail: idr@ietf.org + + Jeffrey Haas, Susan Hares (Editors) + NextHop Technologies + 825 Victors Way + Suite 100 + Ann Arbor, MI 48108-2738 + Tel: +1 734 222-1600 + Fax: +1 734 222-1602 + E-mail: jhaas@nexthop.com + skh@nexthop.com" + + DESCRIPTION + "The MIB module for the BGP-4 protocol. + + Copyright (C) The Internet Society (2006). This + version of this MIB module is part of RFC 4273; + see the RFC itself for full legal notices." + + REVISION "200601110000Z" + DESCRIPTION + "Changes from RFC 1657: + + 1) Fixed the definitions of the notifications + to make them equivalent to their initial + definition in RFC 1269. + 2) Added compliance and conformance info. + 3) Updated information for the values of + bgpPeerNegotiatedVersion, bgp4PathAttrLocalPref, + bgp4PathAttrCalcLocalPref, + bgp4PathAttrMultiExitDisc, + bgp4PathAttrASPathSegement. + 4) Added additional clarification comments where + needed. + + + + 5) Noted where objects do not fully reflect + the protocol as Known Issues. + 6) Updated the DESCRIPTION for the + bgp4PathAttrAtomicAggregate object. + 7) The following objects have had their DESCRIPTION + clause modified to remove the text that suggested + (using 'should' verb) initializing the counter + to zero on a transition to the established state: + bgpPeerInUpdates, bgpPeerOutUpdates, + bgpPeerInTotalMessages, bgpPeerOutTotalMessages + Those implementations that still do this are + still compliant with this new wording. + Applications should not assume counters have + started at zero. + + Published as RFC 4273." + + REVISION "199405050000Z" + DESCRIPTION + "Translated to SMIv2 and published as RFC 1657." + + REVISION "199110261839Z" + DESCRIPTION + "Initial version, published as RFC 1269." + ::= { mib-2 15 } + + bgpVersion OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Vector of supported BGP protocol version + numbers. Each peer negotiates the version + from this vector. Versions are identified + via the string of bits contained within this + object. The first octet contains bits 0 to + 7, the second octet contains bits 8 to 15, + and so on, with the most significant bit + referring to the lowest bit number in the + octet (e.g., the MSB of the first octet + refers to bit 0). If a bit, i, is present + and set, then the version (i+1) of the BGP + is supported." + REFERENCE + "RFC 4271, Section 4.2." + ::= { bgp 1 } + + bgpLocalAs OBJECT-TYPE + + + + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local autonomous system number." + REFERENCE + "RFC 4271, Section 4.2, 'My Autonomous System'." + ::= { bgp 2 } + + -- BGP Peer table. This table contains, one entry per + -- BGP peer, information about the BGP peer. + + bgpPeerTable OBJECT-TYPE + SYNTAX SEQUENCE OF BgpPeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "BGP peer table. This table contains, + one entry per BGP peer, information about the + connections with BGP peers." + ::= { bgp 3 } + + bgpPeerEntry OBJECT-TYPE + SYNTAX BgpPeerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Entry containing information about the + connection with a BGP peer." + INDEX { bgpPeerRemoteAddr } + ::= { bgpPeerTable 1 } + + BgpPeerEntry ::= SEQUENCE { + bgpPeerIdentifier + IpAddress, + bgpPeerState + INTEGER, + bgpPeerAdminStatus + INTEGER, + bgpPeerNegotiatedVersion + Integer32, + bgpPeerLocalAddr + IpAddress, + bgpPeerLocalPort + Integer32, + bgpPeerRemoteAddr + IpAddress, + bgpPeerRemotePort + + + + Integer32, + bgpPeerRemoteAs + Integer32, + bgpPeerInUpdates + Counter32, + bgpPeerOutUpdates + Counter32, + bgpPeerInTotalMessages + Counter32, + bgpPeerOutTotalMessages + Counter32, + bgpPeerLastError + OCTET STRING, + bgpPeerFsmEstablishedTransitions + Counter32, + bgpPeerFsmEstablishedTime + Gauge32, + bgpPeerConnectRetryInterval + Integer32, + bgpPeerHoldTime + Integer32, + bgpPeerKeepAlive + Integer32, + bgpPeerHoldTimeConfigured + Integer32, + bgpPeerKeepAliveConfigured + Integer32, + bgpPeerMinASOriginationInterval + Integer32, + bgpPeerMinRouteAdvertisementInterval + Integer32, + bgpPeerInUpdateElapsedTime + Gauge32 + } + + bgpPeerIdentifier OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The BGP Identifier of this entry's BGP peer. + This entry MUST be 0.0.0.0 unless the + bgpPeerState is in the openconfirm or the + established state." + REFERENCE + "RFC 4271, Section 4.2, 'BGP Identifier'." + ::= { bgpPeerEntry 1 } + + + + + bgpPeerState OBJECT-TYPE + SYNTAX INTEGER { + idle(1), + connect(2), + active(3), + opensent(4), + openconfirm(5), + established(6) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The BGP peer connection state." + REFERENCE + "RFC 4271, Section 8.2.2." + ::= { bgpPeerEntry 2 } + + bgpPeerAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + stop(1), + start(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The desired state of the BGP connection. + A transition from 'stop' to 'start' will cause + the BGP Manual Start Event to be generated. + A transition from 'start' to 'stop' will cause + the BGP Manual Stop Event to be generated. + This parameter can be used to restart BGP peer + connections. Care should be used in providing + write access to this object without adequate + authentication." + REFERENCE + "RFC 4271, Section 8.1.2." + ::= { bgpPeerEntry 3 } + + bgpPeerNegotiatedVersion OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The negotiated version of BGP running between + the two peers. + + This entry MUST be zero (0) unless the + bgpPeerState is in the openconfirm or the + + + + established state. + + Note that legal values for this object are + between 0 and 255." + REFERENCE + "RFC 4271, Section 4.2. + RFC 4271, Section 7." + ::= { bgpPeerEntry 4 } + + bgpPeerLocalAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local IP address of this entry's BGP + connection." + ::= { bgpPeerEntry 5 } + + bgpPeerLocalPort OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local port for the TCP connection between + the BGP peers." + ::= { bgpPeerEntry 6 } + + bgpPeerRemoteAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The remote IP address of this entry's BGP + peer." + ::= { bgpPeerEntry 7 } + + bgpPeerRemotePort OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The remote port for the TCP connection + between the BGP peers. Note that the + objects bgpPeerLocalAddr, + bgpPeerLocalPort, bgpPeerRemoteAddr, and + bgpPeerRemotePort provide the appropriate + reference to the standard MIB TCP + connection table." + + + + ::= { bgpPeerEntry 8 } + + bgpPeerRemoteAs OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The remote autonomous system number received in + the BGP OPEN message." + REFERENCE + "RFC 4271, Section 4.2." + ::= { bgpPeerEntry 9 } + + bgpPeerInUpdates OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of BGP UPDATE messages + received on this connection." + REFERENCE + "RFC 4271, Section 4.3." + ::= { bgpPeerEntry 10 } + + bgpPeerOutUpdates OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of BGP UPDATE messages + transmitted on this connection." + REFERENCE + "RFC 4271, Section 4.3." + ::= { bgpPeerEntry 11 } + + bgpPeerInTotalMessages OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of messages received + from the remote peer on this connection." + REFERENCE + "RFC 4271, Section 4." + ::= { bgpPeerEntry 12 } + + bgpPeerOutTotalMessages OBJECT-TYPE + SYNTAX Counter32 + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of messages transmitted to + the remote peer on this connection." + REFERENCE + "RFC 4271, Section 4." + ::= { bgpPeerEntry 13 } + + bgpPeerLastError OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (2)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The last error code and subcode seen by this + peer on this connection. If no error has + occurred, this field is zero. Otherwise, the + first byte of this two byte OCTET STRING + contains the error code, and the second byte + contains the subcode." + REFERENCE + "RFC 4271, Section 4.5." + ::= { bgpPeerEntry 14 } + + bgpPeerFsmEstablishedTransitions OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of times the BGP FSM + transitioned into the established state + for this peer." + REFERENCE + "RFC 4271, Section 8." + ::= { bgpPeerEntry 15 } + + bgpPeerFsmEstablishedTime OBJECT-TYPE + SYNTAX Gauge32 + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This timer indicates how long (in + seconds) this peer has been in the + established state or how long + since this peer was last in the + established state. It is set to zero when + a new peer is configured or when the router is + + + + booted." + REFERENCE + "RFC 4271, Section 8." + ::= { bgpPeerEntry 16 } + + bgpPeerConnectRetryInterval OBJECT-TYPE + SYNTAX Integer32 (1..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time interval (in seconds) for the + ConnectRetry timer. The suggested value + for this timer is 120 seconds." + REFERENCE + "RFC 4271, Section 8.2.2. This is the value used + to initialize the 'ConnectRetryTimer'." + ::= { bgpPeerEntry 17 } + + bgpPeerHoldTime OBJECT-TYPE + SYNTAX Integer32 ( 0 | 3..65535 ) + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Time interval (in seconds) for the Hold + Timer established with the peer. The + value of this object is calculated by this + BGP speaker, using the smaller of the + values in bgpPeerHoldTimeConfigured and the + Hold Time received in the OPEN message. + + This value must be at least three seconds + if it is not zero (0). + + If the Hold Timer has not been established + with the peer this object MUST have a value + of zero (0). + + If the bgpPeerHoldTimeConfigured object has + a value of (0), then this object MUST have a + value of (0)." + REFERENCE + "RFC 4271, Section 4.2." + ::= { bgpPeerEntry 18 } + + bgpPeerKeepAlive OBJECT-TYPE + SYNTAX Integer32 ( 0 | 1..21845 ) + + + + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Time interval (in seconds) for the KeepAlive + timer established with the peer. The value + of this object is calculated by this BGP + speaker such that, when compared with + bgpPeerHoldTime, it has the same proportion + that bgpPeerKeepAliveConfigured has, + compared with bgpPeerHoldTimeConfigured. + + If the KeepAlive timer has not been established + with the peer, this object MUST have a value + of zero (0). + + If the of bgpPeerKeepAliveConfigured object + has a value of (0), then this object MUST have + a value of (0)." + REFERENCE + "RFC 4271, Section 4.4." + ::= { bgpPeerEntry 19 } + + bgpPeerHoldTimeConfigured OBJECT-TYPE + SYNTAX Integer32 ( 0 | 3..65535 ) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time interval (in seconds) for the Hold Time + configured for this BGP speaker with this + peer. This value is placed in an OPEN + message sent to this peer by this BGP + speaker, and is compared with the Hold + Time field in an OPEN message received + from the peer when determining the Hold + Time (bgpPeerHoldTime) with the peer. + This value must not be less than three + seconds if it is not zero (0). If it is + zero (0), the Hold Time is NOT to be + established with the peer. The suggested + value for this timer is 90 seconds." + REFERENCE + "RFC 4271, Section 4.2. + RFC 4271, Section 10." + ::= { bgpPeerEntry 20 } + + bgpPeerKeepAliveConfigured OBJECT-TYPE + + + + SYNTAX Integer32 ( 0 | 1..21845 ) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time interval (in seconds) for the + KeepAlive timer configured for this BGP + speaker with this peer. The value of this + object will only determine the + KEEPALIVE messages' frequency relative to + the value specified in + bgpPeerHoldTimeConfigured; the actual + time interval for the KEEPALIVE messages is + indicated by bgpPeerKeepAlive. A + reasonable maximum value for this timer + would be one third of that of + bgpPeerHoldTimeConfigured. + If the value of this object is zero (0), + no periodical KEEPALIVE messages are sent + to the peer after the BGP connection has + been established. The suggested value for + this timer is 30 seconds." + REFERENCE + "RFC 4271, Section 4.4. + RFC 4271, Section 10." + ::= { bgpPeerEntry 21 } + + bgpPeerMinASOriginationInterval OBJECT-TYPE + SYNTAX Integer32 (1..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time interval (in seconds) for the + MinASOriginationInterval timer. + The suggested value for this timer is 15 + seconds." + REFERENCE + "RFC 4271, Section 9.2.1.2. + RFC 4271, Section 10." + ::= { bgpPeerEntry 22 } + + bgpPeerMinRouteAdvertisementInterval OBJECT-TYPE + SYNTAX Integer32 (1..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + + + + "Time interval (in seconds) for the + MinRouteAdvertisementInterval timer. + The suggested value for this timer is 30 + seconds for EBGP connections and 5 + seconds for IBGP connections." + REFERENCE + "RFC 4271, Section 9.2.1.1. + RFC 4271, Section 10." + ::= { bgpPeerEntry 23 } + + bgpPeerInUpdateElapsedTime OBJECT-TYPE + SYNTAX Gauge32 + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Elapsed time (in seconds) since the last BGP + UPDATE message was received from the peer. + Each time bgpPeerInUpdates is incremented, + the value of this object is set to zero (0)." + REFERENCE + "RFC 4271, Section 4.3. + RFC 4271, Section 8.2.2, Established state." + ::= { bgpPeerEntry 24 } + + bgpIdentifier OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The BGP Identifier of the local system." + REFERENCE + "RFC 4271, Section 4.2." + ::= { bgp 4 } + + -- BGP Received Path Attribute Table. This table contains + -- one entry per path to a network, and path attributes + -- received from all peers running BGP version 3 or less. + -- This table is obsolete, having been replaced in + -- functionality by the bgp4PathAttrTable. + + bgpRcvdPathAttrTable OBJECT-TYPE + SYNTAX SEQUENCE OF BgpPathAttrEntry + MAX-ACCESS not-accessible + STATUS obsolete + DESCRIPTION + "The BGP Received Path Attribute Table + contains information about paths to + + + + destination networks, received from all + peers running BGP version 3 or less." + ::= { bgp 5 } + + bgpPathAttrEntry OBJECT-TYPE + SYNTAX BgpPathAttrEntry + MAX-ACCESS not-accessible + STATUS obsolete + DESCRIPTION + "Information about a path to a network." + INDEX { bgpPathAttrDestNetwork, + bgpPathAttrPeer } + ::= { bgpRcvdPathAttrTable 1 } + + BgpPathAttrEntry ::= SEQUENCE { + bgpPathAttrPeer + IpAddress, + bgpPathAttrDestNetwork + IpAddress, + bgpPathAttrOrigin + INTEGER, + bgpPathAttrASPath + OCTET STRING, + bgpPathAttrNextHop + IpAddress, + bgpPathAttrInterASMetric + Integer32 + } + + bgpPathAttrPeer OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The IP address of the peer where the path + information was learned." + ::= { bgpPathAttrEntry 1 } + + bgpPathAttrDestNetwork OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The address of the destination network." + REFERENCE + "RFC 1267, Section 4.3." + ::= { bgpPathAttrEntry 2 } + + + + + bgpPathAttrOrigin OBJECT-TYPE + SYNTAX INTEGER { + igp(1),-- networks are interior + egp(2),-- networks learned via the + -- EGP protocol + incomplete(3) -- networks that + -- are learned by some other + -- means + } + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The ultimate origin of the path information." + REFERENCE + "RFC 1267, Section 4.3. + RFC 1267, Section 5." + ::= { bgpPathAttrEntry 3 } + + bgpPathAttrASPath OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (2..255)) + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The set of ASes that must be traversed to reach + the network. This object is probably best + represented as SEQUENCE OF INTEGER. For SMI + compatibility, though, it is represented as + OCTET STRING. Each AS is represented as a pair + of octets according to the following algorithm: + + first-byte-of-pair = ASNumber / 256; + second-byte-of-pair = ASNumber & 255;" + REFERENCE + "RFC 1267, Section 4.3. + RFC 1267, Section 5." + ::= { bgpPathAttrEntry 4 } + + bgpPathAttrNextHop OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The address of the border router that should + be used for the destination network." + REFERENCE + "RFC 1267, Section 4.3. + RFC 1267, Section 5." + ::= { bgpPathAttrEntry 5 } + + + + bgpPathAttrInterASMetric OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS obsolete + DESCRIPTION + "The optional inter-AS metric. If this + attribute has not been provided for this route, + the value for this object is 0." + REFERENCE + "RFC 1267, Section 4.3. + RFC 1267, Section 5." + ::= { bgpPathAttrEntry 6 } + + -- BGP-4 Received Path Attribute Table. This table + -- contains one entry per path to a network, and path + -- attributes received from all peers running BGP-4. + + bgp4PathAttrTable OBJECT-TYPE + SYNTAX SEQUENCE OF Bgp4PathAttrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The BGP-4 Received Path Attribute Table + contains information about paths to + destination networks, received from all + BGP4 peers." + ::= { bgp 6 } + + bgp4PathAttrEntry OBJECT-TYPE + SYNTAX Bgp4PathAttrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a path to a network." + INDEX { bgp4PathAttrIpAddrPrefix, + bgp4PathAttrIpAddrPrefixLen, + bgp4PathAttrPeer } + ::= { bgp4PathAttrTable 1 } + + Bgp4PathAttrEntry ::= SEQUENCE { + bgp4PathAttrPeer + IpAddress, + bgp4PathAttrIpAddrPrefixLen + Integer32, + bgp4PathAttrIpAddrPrefix + IpAddress, + bgp4PathAttrOrigin + INTEGER, + + + + bgp4PathAttrASPathSegment + OCTET STRING, + bgp4PathAttrNextHop + IpAddress, + bgp4PathAttrMultiExitDisc + Integer32, + bgp4PathAttrLocalPref + Integer32, + bgp4PathAttrAtomicAggregate + INTEGER, + bgp4PathAttrAggregatorAS + Integer32, + bgp4PathAttrAggregatorAddr + IpAddress, + bgp4PathAttrCalcLocalPref + Integer32, + bgp4PathAttrBest + INTEGER, + bgp4PathAttrUnknown + OCTET STRING + } + + bgp4PathAttrPeer OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the peer where the path + information was learned." + ::= { bgp4PathAttrEntry 1 } + + bgp4PathAttrIpAddrPrefixLen OBJECT-TYPE + SYNTAX Integer32 (0..32) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Length in bits of the IP address prefix in + the Network Layer Reachability + Information field." + ::= { bgp4PathAttrEntry 2 } + + bgp4PathAttrIpAddrPrefix OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An IP address prefix in the Network Layer + Reachability Information field. This object + + + + is an IP address containing the prefix with + length specified by + bgp4PathAttrIpAddrPrefixLen. + Any bits beyond the length specified by + bgp4PathAttrIpAddrPrefixLen are zeroed." + REFERENCE + "RFC 4271, Section 4.3." + ::= { bgp4PathAttrEntry 3 } + + bgp4PathAttrOrigin OBJECT-TYPE + SYNTAX INTEGER { + igp(1),-- networks are interior + egp(2),-- networks learned via the + -- EGP protocol + incomplete(3) -- networks that + -- are learned by some other + -- means + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The ultimate origin of the path + information." + REFERENCE + "RFC 4271, Section 4.3. + RFC 4271, Section 5.1.1." + ::= { bgp4PathAttrEntry 4 } + + bgp4PathAttrASPathSegment OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (2..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence of AS path segments. Each AS + path segment is represented by a triple + . + + The type is a 1-octet field that has two + possible values: + 1 AS_SET: unordered set of ASes that a + route in the UPDATE message + has traversed + + 2 AS_SEQUENCE: ordered set of ASes that + a route in the UPDATE message + has traversed. + + The length is a 1-octet field containing the + + + + number of ASes in the value field. + + The value field contains one or more AS + numbers. Each AS is represented in the octet + string as a pair of octets according to the + following algorithm: + + first-byte-of-pair = ASNumber / 256; + second-byte-of-pair = ASNumber & 255; + + Known Issues: + o BGP Confederations will result in + a type of either 3 or 4. + o An AS Path may be longer than 255 octets. + This may result in this object containing + a truncated AS Path." + REFERENCE + "RFC 4271, Section 4.3. + RFC 4271, Section 5.1.2." + ::= { bgp4PathAttrEntry 5 } + + bgp4PathAttrNextHop OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the border router that + should be used for the destination + network. This address is the NEXT_HOP + address received in the UPDATE packet." + REFERENCE + "RFC 4271, Section 4.3. + RFC 4271, Section 5.1.3." + ::= { bgp4PathAttrEntry 6 } + + bgp4PathAttrMultiExitDisc OBJECT-TYPE + SYNTAX Integer32 (-1..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This metric is used to discriminate + between multiple exit points to an + adjacent autonomous system. A value of -1 + indicates the absence of this attribute. + + Known Issues: + o The BGP-4 specification uses an + unsigned 32 bit number. Thus, this + + + + object cannot represent the full + range of the protocol." + REFERENCE + "RFC 4271, Section 4.3. + RFC 4271, Section 5.1.4." + ::= { bgp4PathAttrEntry 7 } + + bgp4PathAttrLocalPref OBJECT-TYPE + SYNTAX Integer32 (-1..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The originating BGP4 speaker's degree of + preference for an advertised route. A + value of -1 indicates the absence of this + attribute. + + Known Issues: + o The BGP-4 specification uses an + unsigned 32 bit number and thus this + object cannot represent the full + range of the protocol." + REFERENCE + "RFC 4271, Section 4.3. + RFC 4271, Section 5.1.5." + ::= { bgp4PathAttrEntry 8 } + + bgp4PathAttrAtomicAggregate OBJECT-TYPE + SYNTAX INTEGER { + lessSpecificRouteNotSelected(1), + -- Typo corrected from RFC 1657 + lessSpecificRouteSelected(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If the ATOMIC_AGGREGATE attribute is present + in the Path Attributes then this object MUST + have a value of 'lessSpecificRouteNotSelected'. + + If the ATOMIC_AGGREGATE attribute is missing + in the Path Attributes then this object MUST + have a value of 'lessSpecificRouteSelected'. + + Note that ATOMIC_AGGREGATE is now a primarily + informational attribute." + REFERENCE + "RFC 4271, Sections 5.1.6 and 9.1.4." + + + + ::= { bgp4PathAttrEntry 9 } + + bgp4PathAttrAggregatorAS OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The AS number of the last BGP4 speaker that + performed route aggregation. A value of + zero (0) indicates the absence of this + attribute. + + Note that propagation of AS of zero is illegal + in the Internet." + REFERENCE + "RFC 4271, Section 5.1.7. + RFC 4271, Section 9.2.2.2." + ::= { bgp4PathAttrEntry 10 } + + bgp4PathAttrAggregatorAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the last BGP4 speaker + that performed route aggregation. A + value of 0.0.0.0 indicates the absence + of this attribute." + REFERENCE + "RFC 4271, Section 5.1.7. + RFC 4271, Section 9.2.2.2." + ::= { bgp4PathAttrEntry 11 } + + bgp4PathAttrCalcLocalPref OBJECT-TYPE + SYNTAX Integer32 (-1..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The degree of preference calculated by the + receiving BGP4 speaker for an advertised + route. A value of -1 indicates the + absence of this attribute. + + Known Issues: + o The BGP-4 specification uses an + unsigned 32 bit number and thus this + object cannot represent the full + range of the protocol." + + + + REFERENCE + "RFC 4271, Section 9.1.1." + ::= { bgp4PathAttrEntry 12 } + + bgp4PathAttrBest OBJECT-TYPE + SYNTAX INTEGER { + false(1),-- not chosen as best route + true(2) -- chosen as best route + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An indication of whether this route + was chosen as the best BGP4 route for this + destination." + REFERENCE + "RFC 4271, Section 9.1.2." + ::= { bgp4PathAttrEntry 13 } + + bgp4PathAttrUnknown OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "One or more path attributes not understood by + this BGP4 speaker. + + Path attributes are recorded in the Update Path + attribute format of type, length, value. + + Size zero (0) indicates the absence of such + attributes. + + Octets beyond the maximum size, if any, are not + recorded by this object. + + Known Issues: + o Attributes understood by this speaker, but not + represented in this MIB, are unavailable to + the agent." + REFERENCE + "RFC 4271, Section 5." + ::= { bgp4PathAttrEntry 14 } + + -- Traps. + -- Note that in RFC 1657, bgpTraps was incorrectly + -- assigned a value of { bgp 7 } and each of the + -- traps had the bgpPeerRemoteAddr object inappropriately + + + + -- removed from their OBJECTS clause. The following + -- definitions restore the semantics of the traps as + -- they were initially defined in RFC 1269. + + bgpNotification OBJECT IDENTIFIER ::= { bgp 0 } + + bgpEstablishedNotification NOTIFICATION-TYPE + OBJECTS { bgpPeerRemoteAddr, + bgpPeerLastError, + bgpPeerState } + STATUS current + DESCRIPTION + "The bgpEstablishedNotification event is generated + when the BGP FSM enters the established state. + + This Notification replaces the bgpEstablished + Notification." + ::= { bgpNotification 1 } + + bgpBackwardTransNotification NOTIFICATION-TYPE + OBJECTS { bgpPeerRemoteAddr, + bgpPeerLastError, + bgpPeerState } + STATUS current + DESCRIPTION + "The bgpBackwardTransNotification event is + generated when the BGP FSM moves from a higher + numbered state to a lower numbered state. + + This Notification replaces the + bgpBackwardsTransition Notification." + ::= { bgpNotification 2 } + + -- { bgp 7 } is deprecated. Do not allocate new objects or + -- notifications underneath this branch. + + bgpTraps OBJECT IDENTIFIER ::= { bgp 7 } -- deprecated + + bgpEstablished NOTIFICATION-TYPE + OBJECTS { bgpPeerLastError, + bgpPeerState } + STATUS deprecated + DESCRIPTION + "The bgpEstablished event is generated when + the BGP FSM enters the established state. + + This Notification has been replaced by the + bgpEstablishedNotification Notification." + + + + ::= { bgpTraps 1 } + + bgpBackwardTransition NOTIFICATION-TYPE + OBJECTS { bgpPeerLastError, + bgpPeerState } + STATUS deprecated + DESCRIPTION + "The bgpBackwardTransition event is generated + when the BGP FSM moves from a higher numbered + state to a lower numbered state. + + This Notification has been replaced by the + bgpBackwardTransNotification Notification." + ::= { bgpTraps 2 } + + -- Conformance information + + bgp4MIBConformance OBJECT IDENTIFIER + ::= { bgp 8 } + bgp4MIBCompliances OBJECT IDENTIFIER + ::= { bgp4MIBConformance 1 } + bgp4MIBGroups OBJECT IDENTIFIER + ::= { bgp4MIBConformance 2 } + + -- Compliance statements + + bgp4MIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for entities which + implement the BGP4 mib." + MODULE -- this module + MANDATORY-GROUPS { bgp4MIBGlobalsGroup, + bgp4MIBPeerGroup, + bgp4MIBPathAttrGroup } + GROUP bgp4MIBNotificationGroup + DESCRIPTION + "Implementation of BGP Notifications are + completely optional in this MIB." + ::= { bgp4MIBCompliances 1 } + + bgp4MIBDeprecatedCompliances MODULE-COMPLIANCE + STATUS deprecated + DESCRIPTION + "The compliance statement documenting deprecated + objects in the BGP4 mib." + MODULE -- this module + GROUP bgp4MIBTrapGroup + + + + DESCRIPTION + "Group containing TRAP objects that were + improperly converted from SMIv1 in RFC 1657. + The proper semantics have been restored + with the objects in bgp4MIBNotificationGroup." + ::= { bgp4MIBCompliances 2 } + + bgp4MIBObsoleteCompliances MODULE-COMPLIANCE + STATUS obsolete + DESCRIPTION + "The compliance statement documenting obsolete + objects in the BGP4 mib." + MODULE -- this module + GROUP bgpRcvdPathAttrGroup + DESCRIPTION + "Group containing objects relevant to BGP-3 + and earlier objects." + ::= { bgp4MIBCompliances 3 } + + -- Units of conformance + + bgp4MIBGlobalsGroup OBJECT-GROUP + OBJECTS { bgpVersion, + bgpLocalAs, + bgpIdentifier } + STATUS current + DESCRIPTION + "A collection of objects providing + information on global BGP state." + ::= { bgp4MIBGroups 1 } + + bgp4MIBPeerGroup OBJECT-GROUP + OBJECTS { bgpPeerIdentifier, + bgpPeerState, + bgpPeerAdminStatus, + bgpPeerNegotiatedVersion, + bgpPeerLocalAddr, + bgpPeerLocalPort, + bgpPeerRemoteAddr, + bgpPeerRemotePort, + bgpPeerRemoteAs, + bgpPeerInUpdates, + bgpPeerOutUpdates, + bgpPeerInTotalMessages, + bgpPeerOutTotalMessages, + bgpPeerLastError, + bgpPeerFsmEstablishedTransitions, + bgpPeerFsmEstablishedTime, + + + + bgpPeerConnectRetryInterval, + bgpPeerHoldTime, + bgpPeerKeepAlive, + bgpPeerHoldTimeConfigured, + bgpPeerKeepAliveConfigured, + bgpPeerMinASOriginationInterval, + bgpPeerMinRouteAdvertisementInterval, + bgpPeerInUpdateElapsedTime } + STATUS current + DESCRIPTION + "A collection of objects for managing + BGP peers." + ::= { bgp4MIBGroups 2 } + + bgpRcvdPathAttrGroup OBJECT-GROUP + OBJECTS { bgpPathAttrPeer, + bgpPathAttrDestNetwork, + bgpPathAttrOrigin, + bgpPathAttrASPath, + bgpPathAttrNextHop, + bgpPathAttrInterASMetric } + STATUS obsolete + DESCRIPTION + "A collection of objects for managing BGP-3 and + earlier path entries. + + This conformance group, like BGP-3, is obsolete." + ::= { bgp4MIBGroups 3 } + + bgp4MIBPathAttrGroup OBJECT-GROUP + OBJECTS { bgp4PathAttrPeer, + bgp4PathAttrIpAddrPrefixLen, + bgp4PathAttrIpAddrPrefix, + bgp4PathAttrOrigin, + bgp4PathAttrASPathSegment, + bgp4PathAttrNextHop, + bgp4PathAttrMultiExitDisc, + bgp4PathAttrLocalPref, + bgp4PathAttrAtomicAggregate, + bgp4PathAttrAggregatorAS, + bgp4PathAttrAggregatorAddr, + bgp4PathAttrCalcLocalPref, + bgp4PathAttrBest, + bgp4PathAttrUnknown } + STATUS current + DESCRIPTION + "A collection of objects for managing + BGP path entries." + + + + ::= { bgp4MIBGroups 4 } + + bgp4MIBTrapGroup NOTIFICATION-GROUP + NOTIFICATIONS { bgpEstablished, + bgpBackwardTransition } + STATUS deprecated + DESCRIPTION + "A collection of notifications for signaling + changes in BGP peer relationships. + + Obsoleted by bgp4MIBNotificationGroup" + ::= { bgp4MIBGroups 5 } + + bgp4MIBNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { bgpEstablishedNotification, + bgpBackwardTransNotification } + STATUS current + DESCRIPTION + "A collection of notifications for signaling + changes in BGP peer relationships. + + Obsoletes bgp4MIBTrapGroup." + ::= { bgp4MIBGroups 6 } + +END \ No newline at end of file diff --git a/mibs/RFC-4444-ISIS-MIB.txt b/mibs/RFC-4444-ISIS-MIB.txt new file mode 100644 index 00000000..b9bb2634 --- /dev/null +++ b/mibs/RFC-4444-ISIS-MIB.txt @@ -0,0 +1,4581 @@ +ISIS-MIB DEFINITIONS ::= BEGIN + IMPORTS + TEXTUAL-CONVENTION, RowStatus, TruthValue, TimeStamp + FROM SNMPv2-TC -- RFC2579 + MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, + Unsigned32, Counter32, mib-2 + FROM SNMPv2-SMI -- RFC2578 + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF -- RFC2580 + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB -- RFC2571 + IndexInteger, IndexIntegerNextFree + FROM DIFFSERV-MIB -- RFC3289 + InterfaceIndex + FROM IF-MIB -- RFC2863 + InetAddressType, InetAddress, InetAddressPrefixLength + FROM INET-ADDRESS-MIB; -- RFC3291 + + isisMIB MODULE-IDENTITY + LAST-UPDATED "200604040000Z" -- April 4, 2006, midnight + ORGANIZATION "IETF IS-IS for IP Internets Working Group" + CONTACT-INFO + "IS-IS for IP Internets working Group + http://www.ietf.org/html.charters/isis-charter.html + isis-wg@ietf.org + + Jeff Parker + Department of Computer Science + Middlebury College, + Middlebury, Vermont 05753 + jeffp at middlbury dot edu" + + DESCRIPTION + "This document describes a management information base for + the IS-IS Routing protocol, as described in ISO 10589, + when it is used to construct routing tables for IP + networks, as described in RFC 1195. + + This document is based on a 1994 IETF document by Chris + Gunner. This version has been modified to include + current syntax, to exclude portions of the protocol that + are not relevant to IP, and to add management support for + current practice. + + + + + + + Copyright (C) The Internet Society (2006). This version + of this MIB module is part of RFC 4444; see the RFC + itself for full legal notices." + + REVISION "200604040000Z" -- April 4, 2006, midnight + + DESCRIPTION + "Initial version, published as RFC 4444." + ::= { mib-2 138 } + +-- Top-level structure of the MIB + +isisNotifications OBJECT IDENTIFIER ::= { isisMIB 0 } +isisObjects OBJECT IDENTIFIER ::= { isisMIB 1 } +isisConformance OBJECT IDENTIFIER ::= { isisMIB 2 } + +-- OBJECT IDENTIFIER definitions + +-- System wide attributes. +isisSystem OBJECT IDENTIFIER ::= { isisObjects 1 } + +-- Attributes associated with the domain or with the area. +isisSysLevel OBJECT IDENTIFIER ::= { isisObjects 2 } + +-- Attributes associated with one Circuit +isisCirc OBJECT IDENTIFIER ::= { isisObjects 3 } + +-- Attributes associated with area or domain relevant within a Circuit. +isisCircLevelValues OBJECT IDENTIFIER ::= { isisObjects 4 } + +-- System and circuit counters. +isisCounters OBJECT IDENTIFIER ::= { isisObjects 5 } + +-- Attributes associated with an adjacent Protocol Peer. +isisISAdj OBJECT IDENTIFIER ::= { isisObjects 6 } + +-- Attributes associated with a configured address. +isisReachAddr OBJECT IDENTIFIER ::= { isisObjects 7 } + +-- Attributes associated with IP routes learned by +-- configuration or through another protocol. +isisIPReachAddr OBJECT IDENTIFIER ::= { isisObjects 8 } + +-- The collection of Link State PDUs known to the Intermediate System +isisLSPDataBase OBJECT IDENTIFIER ::= { isisObjects 9 } + +-- Objects included in Notifications. +isisNotification OBJECT IDENTIFIER ::= { isisObjects 10 } + + + +-- Type definitions + + IsisOSINSAddress ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "OSI Network Service Address, e.g., NSAP, SNPA, or Network + Entity Title" + SYNTAX OCTET STRING (SIZE(0..20)) + + IsisSystemID ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The ID for an Intermediate System. This should + be unique within a network, and is included + in all PDUs originated by an Intermediate System. + The protocol does not place any meanings upon + the bits, other than using ordering to break + ties in electing a Designated IS on a LAN." + REFERENCE "{ISIS.aoi systemId (119)}" + SYNTAX OCTET STRING (SIZE(6)) + + IsisLinkStatePDUID ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The 8-byte Link State PDU (LSP) ID, + consisting of the 6-byte SystemID of the + originating IS; a one-byte PseudoNode ID, + which is 0 unless the LSP represents the + topology of a LAN; and a one-byte LSP + fragment number that is issued in sequence, + starting with 0. Non-zero PseudoNode IDs + need to be unique to the IS but need not + match the IfIndex." + REFERENCE "{See section 9.8 of ISO 10589}" + SYNTAX OCTET STRING (SIZE(8)) + + IsisAdminState ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Type used in enabling and disabling a row." + SYNTAX INTEGER + { + on(1), + off(2) + } + + IsisLSPBuffSize ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + + + + STATUS current + DESCRIPTION + "Integer sub-range for maximum LSP size." + SYNTAX Unsigned32 (512..16000) + + IsisLevelState ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "States of the IS-IS protocol." + SYNTAX INTEGER + { + off (1), + on (2), + waiting (3), + overloaded(4) + } + + IsisSupportedProtocol ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Types of network protocol supported by Integrated IS-IS. + The values for ISO8473 and IP are those registered for + these protocols in ISO TR9577." + REFERENCE "{See section 5.3.1 of RFC 1195}" + SYNTAX INTEGER + { + iso8473(129), + ipV6(142), + ip(204) + } + + IsisDefaultMetric ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "Integer sub-range for default metric for single hop. + ISO 10589 provides for 4 types of metric. Only the + 'default' metric is used in practice." + REFERENCE "{See section 7.2.2 of ISO 10589}" + SYNTAX Unsigned32 (0..63) + + IsisWideMetric ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "Wide metric for IS Neighbors. ISO 10589 provides a + 6-bit metric. Traffic Engineering extensions provide + 24-bit metrics." + + + + REFERENCE "{See section 3 of RFC 3784}" + SYNTAX Unsigned32 (0..16777215) + + IsisFullMetric ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "Full metric for IP Routes. Traffic Engineering extensions + provide 32-bit metrics." + REFERENCE "{See section 4 of RFC 3784}" + SYNTAX Unsigned32 + + IsisMetricType ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Is this an Internal or External Metric?" + REFERENCE "{See section 7.2.2 of ISO 10589}" + SYNTAX INTEGER + { + internal(1), + external(2) + } + + IsisMetricStyle ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Do we use RFC 1195 style metrics or wide metrics?" + REFERENCE "{See section 5 of RFC 3787}" + SYNTAX INTEGER + { + narrow(1), + wide(2), + both(3) + } + + IsisISLevel ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Identifies a level." + REFERENCE "{See definitions 3.6.1 and 3.6.11 of ISO 10589}" + SYNTAX INTEGER + { + area(1), -- L1 + domain(2) -- L2 + } + + IsisLevel ::= TEXTUAL-CONVENTION + STATUS current + + + + DESCRIPTION + "Identifies one or more levels." + REFERENCE "{See definitions 3.6.1 and 3.6.11 of ISO 10589}" + SYNTAX INTEGER + { + level1(1), + level2(2), + level1and2(3) + } + + IsisPDUHeader ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "A block to contain the header from a PDU." + SYNTAX OCTET STRING (SIZE(0..64)) + + IsisCircuitID ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "ID for a circuit." + REFERENCE "{See section 7.2.7 of ISO 10589}" + SYNTAX OCTET STRING (SIZE(0|7)) + + IsisISPriority ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "Integer sub-range for IS-IS priority." + REFERENCE "{See section 9.5 of ISO 10589}" + SYNTAX Unsigned32 (0..127) + + IsisUnsigned16TC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "An Unsigned32 further restricted to 16 bits. Note that + the ASN.1 BER encoding may still require 24 bits for + some values." + SYNTAX Unsigned32 (0..65535) + + IsisUnsigned8TC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "An Unsigned32 further restricted to 8 bits. Note that + the ASN.1 BER encoding may still require 16 bits for + some values." + SYNTAX Unsigned32 (0..255) + + + +-- Behavior Definitions + +-- ResettingTimer behavior definition +-- + +-- "This behavior applies to objects that specify the interval +-- between events in the operation of the protocol state machine. +-- If the value of such an object is set to a new value while +-- the protocol state machine is in operation, the implementation +-- shall take the necessary steps to ensure that for any time +-- interval that was in progress when the value of the +-- corresponding object was changed, the next expiration of that +-- interval takes place the specified time after the original +-- start of that interval, or immediately, whichever is later. +-- The precision with which this time shall be implemented shall +-- be the same as that associated with the basic operation of +-- the timer object." + +-- ReplaceOnlyWhileDisabled behavior definition +-- "This behavior applies to objects that may not be modified +-- while the corresponding table row's variable of type +-- IsisAdminState is in state on." + +-- ManualOrAutomatic behavior definition +-- "This behavior applies to objects that are read-write +-- if the object was created manually. Objects that were +-- created automatically that have this behavior are +-- read-only. + + isisSysObject OBJECT IDENTIFIER ::= { isisSystem 1 } + + isisSysVersion OBJECT-TYPE + SYNTAX INTEGER + { + unknown(0), + one(1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The version number of the IS-IS protocol that + is implemented." + REFERENCE "{ISIS.aoi version (1)}" + DEFVAL { one } + ::= { isisSysObject 1 } + + isisSysLevelType OBJECT-TYPE + SYNTAX IsisLevel + + + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "At which levels is the Intermediate System + running? This object may not be modified when + the isisSysAdminState variable is in state 'on' + for this Intermediate System. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi iSType (2)}" + DEFVAL { level1and2 } + ::= { isisSysObject 2 } + + isisSysID OBJECT-TYPE + SYNTAX IsisSystemID + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The ID for this Intermediate System. + This value is appended to each of the + area addresses to form the Network Entity Titles. + The derivation of a value for this object is + implementation specific. Some implementations may + automatically assign values and not permit an + SNMP write, while others may require the value + to be set manually. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi systemId (119)}" + ::= { isisSysObject 3 } + + isisSysMaxPathSplits OBJECT-TYPE + SYNTAX Unsigned32 (1..32) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Maximum number of paths with equal routing metric value + which it is permitted to split between. This object + may not be modified when the isisSysAdminState variable + is in state 'on' for this Intermediate System. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi maximumPathSplits (3)}" + DEFVAL { 2 } + ::= { isisSysObject 4 } + + isisSysMaxLSPGenInt OBJECT-TYPE + SYNTAX Unsigned32 (1..65235) + + + + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Maximum interval, in seconds, between generated LSPs + by this Intermediate System. This object follows + the ResettingTimer behavior. The value must be + greater than any value configured for + isisSysLevelMinLSPGenInt, and should be at least 300 + seconds less than isisSysMaxAge. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi maximumLSPGenerationInterval (6)}" + DEFVAL { 900 } + ::= { isisSysObject 5 } + + isisSysPollESHelloRate OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The value, in seconds, to be used for the suggested ES + configuration timer in ISH PDUs when soliciting the ES + configuration. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi pollESHelloRate (13)}" + DEFVAL { 50 } + ::= { isisSysObject 6 } + + isisSysWaitTime OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Number of seconds to delay in state 'waiting' before + entering the state 'on'. This object follows the + ResettingTimer behavior. + + Configured values MUST survive an agent reboot." + REFERENCE "{ISIS.aoi waitingTime (15)}" + DEFVAL { 60 } + ::= { isisSysObject 7 } + + isisSysAdminState OBJECT-TYPE + SYNTAX IsisAdminState + + + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative state of this Intermediate + System. Setting this object to the value 'on' + when its current value is 'off' enables + the Intermediate System. + + Configured values MUST survive an agent reboot." + DEFVAL { off } + ::= { isisSysObject 8 } + + isisSysL2toL1Leaking OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If true, allow the router to leak L2 routes into L1. + + Configured values MUST survive an agent reboot." + DEFVAL { false } + ::= { isisSysObject 9 } + + isisSysMaxAge OBJECT-TYPE + SYNTAX IsisUnsigned16TC (350..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Value to place in RemainingLifeTime field of + the LSPs we generate. + This should be at least 300 seconds greater than + isisSysMaxLSPGenInt. + + Configured values MUST survive an agent reboot." + DEFVAL { 1200 } + ::= { isisSysObject 10 } + + isisSysReceiveLSPBufferSize OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1492..16000) + UNITS "bytes" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Size of the largest buffer we are designed or + configured to store. This should be at least + as big as the maximum isisSysLevelOrigLSPBuffSize + supported by the system. + + + + If resources allow, we will store and flood LSPs + larger than isisSysReceiveLSPBufferSize, as this + can help avoid problems in networks with different + values for isisSysLevelOrigLSPBuffSize. + + Configured values MUST survive an agent reboot." + DEFVAL { 1492 } + ::= { isisSysObject 11 } + + isisSysProtSupported OBJECT-TYPE + SYNTAX BITS { + iso8473 (0), + ipv4 (1), + ipv6 (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This attribute contains the set of protocols + supported by this Intermediate System." + ::= { isisSysObject 12 } + + isisSysNotificationEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If this object is set to true(1), then it enables + the emission of IS-IS Notifications. If it is + set to false(2), these notifications are not sent. + + Configured values MUST survive an agent reboot." + DEFVAL { true } + ::= { isisSysObject 13 } + +-- The Level 1 Manual Area Address Table + + isisManAreaAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisManAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The set of manual area addresses configured on this + Intermediate System. + + At least one row in which the value of + isisManAreaAddrExistState is active must be present. + The maximum number of rows in this table for + + + + which the object isisManAreaAddrExistState has the + value active is 3. + + An attempt to create more than 3 rows of + isisManAreaAddrEntry with state 'active' in one + instance of the IS-IS protocol should + return inconsistentValue." + REFERENCE "{ISIS.aoi manualAreaAddresses (10)}" + ::= { isisSystem 2 } + + isisManAreaAddrEntry OBJECT-TYPE + SYNTAX IsisManAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one area address manually configured + on this system. + + Dynamically created rows MUST survive an agent reboot." + INDEX { isisManAreaAddr } + ::= { isisManAreaAddrTable 1 } + + IsisManAreaAddrEntry ::= + SEQUENCE { + isisManAreaAddr + IsisOSINSAddress, + isisManAreaAddrExistState + RowStatus + } + + isisManAreaAddr OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A manually configured area address for this system. + + Note: An index for the entry {1, {49.0001} active} in + this table would be the ordered pair + (1, (0x03 0x49 0x00 0x01)), as the length of an octet + string is part of the OID." + ::= { isisManAreaAddrEntry 1 } + + isisManAreaAddrExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "The state of the isisManAreaAddrEntry. If the + isisSysAdminState for this Intermediate System is 'on' and + an attempt is made to set this object to the value + 'destroy' or 'notInService' when this is the only + isisManAreaAddrEntry in state 'active' for this + Intermediate System should return inconsistentValue. + + A row entry cannot be modified when the value of this + object is 'active'." + ::= { isisManAreaAddrEntry 2 } + +-- The Level 1 Area Address Table + +-- The Level 1 Area Address Table contains the +-- union of the sets of relevant area addresses configured +-- or learned from Level 1 LSPs received by this Intermediate System. + + isisAreaAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The union of the sets of area addresses reported in all + Level 1 LSPs with fragment number zero generated by this + Intermediate System, or received from other Intermediate + Systems that are reachable via Level 1 routing." + REFERENCE "{ISIS.aoi areaAddresses (18)}" + ::= { isisSystem 3 } + + isisAreaAddrEntry OBJECT-TYPE + SYNTAX IsisAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one area address reported in a + Level 1 LSP generated or received by this Intermediate + System. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisAreaAddr } + ::= { isisAreaAddrTable 1 } + + IsisAreaAddrEntry ::= + SEQUENCE { + isisAreaAddr + IsisOSINSAddress + } + + + + + isisAreaAddr OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An area address reported in a Level 1 LSP." + ::= { isisAreaAddrEntry 1 } + +-- The Summary Address Table + +-- The Summary Address Table contains the set of summary +-- addresses manually configured for the Intermediate System. +-- +-- This is used to control leaking L1 routes into L2. + + isisSummAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisSummAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The set of IP summary addresses to use in forming + summary TLVs originated by this Intermediate System. + + An administrator may use a summary address to combine + and modify IP Reachability announcements. If the + Intermediate system can reach any subset of the summary + address, the summary address MUST be announced instead, + at the configured metric." + ::= { isisSystem 4 } + + isisSummAddrEntry OBJECT-TYPE + SYNTAX IsisSummAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one IP summary address. + + Dynamically created rows MUST survive an agent reboot. + + Implementers need to be aware that if the total number + of elements (octets or sub-identifiers) in + isisSummAddress and isisSummAddrPrefixLen is too great, + then OIDs of column instances in this table will have + more than 128 subidentifiers and cannot be accessed + using SNMPv1, SNMPv2c, or SNMPv3." + INDEX { isisSummAddressType, + isisSummAddress, + isisSummAddrPrefixLen } + + + + ::= { isisSummAddrTable 1 } + + IsisSummAddrEntry ::= + SEQUENCE { + isisSummAddressType + InetAddressType, + isisSummAddress + InetAddress, + isisSummAddrPrefixLen + InetAddressPrefixLength, + isisSummAddrExistState + RowStatus, + isisSummAddrMetric + IsisDefaultMetric, + isisSummAddrFullMetric + IsisFullMetric + } + + isisSummAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Type of IP address for this summary address." + ::= { isisSummAddrEntry 1 } + + isisSummAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP Address value for this summary address. + The address must not contain any set host bits + (bits set after the address prefix determined by + isisSummAddrPrefixLen). + + The type of this address is determined by the value of + the isisSummAddressType object." + ::= { isisSummAddrEntry 2 } + + isisSummAddrPrefixLen OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Length of the IP NetMask for this summary address. + + The values for the index objects isisSummAddress and + + + + isisSummAddrPrefixLen must be consistent. When the value + of isisSummAddress (excluding the zone index, if one + is present) is x, then the bitwise logical-AND + of x with the value of the mask formed from the + corresponding index object isisSummAddrPrefixLen MUST be + equal to x. If not, then the index pair is not + consistent, and an inconsistentName error must be + returned on SET or CREATE requests." + ::= { isisSummAddrEntry 3 } + + isisSummAddrExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The existence state of this summary address. Support + for 'createAndWait' and 'notInService' is not required. + + A row entry cannot be modified when the value of this + object is 'active'." + ::= { isisSummAddrEntry 4 } + + isisSummAddrMetric OBJECT-TYPE + SYNTAX IsisDefaultMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric value to announce this summary + address within LSPs generated by this system." + DEFVAL { 20 } + ::= { isisSummAddrEntry 5 } + + isisSummAddrFullMetric OBJECT-TYPE + SYNTAX IsisFullMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The wide metric value to announce this summary + address within LSPs generated by this system." + DEFVAL { 20 } + ::= { isisSummAddrEntry 6 } + +-- The Redistribution table defines addresses that should be +-- leaked from L2 to L1 if isisSysL2toL1Leaking is enabled. + + isisRedistributeAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisRedistributeAddrEntry + MAX-ACCESS not-accessible + + + + STATUS current + DESCRIPTION + "This table provides criteria to decide if a route should + be leaked from L2 to L1 when Domain Wide Prefix leaking is + enabled. + + Addresses that match the summary mask in the table MUST + be announced at L1 by routers when isisSysL2toL1Leaking + is enabled. Routes that fall into the ranges specified + are announced as is, without being summarized. Routes + that do not match a summary mask are not announced." + ::= { isisSystem 5 } + + isisRedistributeAddrEntry OBJECT-TYPE + SYNTAX IsisRedistributeAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one configured IP summary + address to manage leaking L2 addresses into L1. + + Dynamically created rows MUST survive an agent reboot. + + Implementers need to be aware that if the total number + of elements (octets or sub-identifiers) in + isisRedistributeAddrAddress and + isisRedistributeAddrPrefixLen is too great, then OIDs + of column instances in this table will have more than + 128 subidentifiers and cannot be accessed using SNMPv1, + SNMPv2c, or SNMPv3." + INDEX { isisRedistributeAddrType, + isisRedistributeAddrAddress, + isisRedistributeAddrPrefixLen } + ::= { isisRedistributeAddrTable 1 } + + IsisRedistributeAddrEntry ::= + SEQUENCE { + isisRedistributeAddrType + InetAddressType, + isisRedistributeAddrAddress + InetAddress, + isisRedistributeAddrPrefixLen + InetAddressPrefixLength, + isisRedistributeAddrExistState + RowStatus + } + + isisRedistributeAddrType OBJECT-TYPE + + + + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Type of IP address for this summary address. --IPI Comments: Not Supported" + ::= { isisRedistributeAddrEntry 1 } + + isisRedistributeAddrAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP Address value for this summary address. + The type of this address is determined by the + value of the isisRedistributeAddrType object. + The address must not contain any set host bits - + bits set after the address prefix determined by + isisRedistributeAddrPrefixLen. --IPI Comments: Not Supported" + + ::= { isisRedistributeAddrEntry 2 } + + isisRedistributeAddrPrefixLen OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Length of the IP NetMask for this summary address. + + The values for the index objects + isisRedistributeAddrAddress and + isisRedistributeAddrPrefixLen must be consistent. + When the value of isisRedistributeAddrAddress + (excluding the zone index, if one is present) is x, + then the bitwise logical-AND of x with the value of + the mask formed from the corresponding index object + isisRedistributeAddrPrefixLen MUST be equal to x. + If not, then the index pair is not consistent, and an + inconsistentName error must be returned on SET or + CREATE requests. --IPI Comments: Not Supported" + + ::= { isisRedistributeAddrEntry 3 } + + isisRedistributeAddrExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The existence state of this summary address. Support + + + + for createAndWait and notInService is not required. + + A row entry cannot be modified when the value of this + object is 'active'. --IPI Comments: Not Supported" + ::= { isisRedistributeAddrEntry 4 } + +-- The Router Table keeps track of hostnames and router IDs +-- associated with Intermediate Systems in the area and domain. + + isisRouterTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisRouterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The set of hostnames and router ID." + ::= { isisSystem 6 } + + isisRouterEntry OBJECT-TYPE + SYNTAX IsisRouterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry tracks information about one Intermediate + System at one level. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisRouterSysID, + isisRouterLevel } + ::= { isisRouterTable 1 } + + IsisRouterEntry ::= + SEQUENCE { + isisRouterSysID + IsisSystemID, + isisRouterLevel + IsisISLevel, + isisRouterHostName + SnmpAdminString, + isisRouterID + Unsigned32 + } + + isisRouterSysID OBJECT-TYPE + SYNTAX IsisSystemID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The System ID of the Intermediate System." + + + + ::= { isisRouterEntry 1 } + + isisRouterLevel OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The level at which the information about this + Intermediate System was received." + ::= { isisRouterEntry 2 } + + isisRouterHostName OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The hostname listed in the LSP, or a zero-length + string if none." + ::= { isisRouterEntry 3 } + + isisRouterID OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Router ID found in the LSP, or zero if none." + ::= { isisRouterEntry 4 } + +-- The System Level Table +-- This table captures level-specific information about the system + + isisSysLevelTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisSysLevelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Level specific information about the System." + ::= { isisSysLevel 1 } + + isisSysLevelEntry OBJECT-TYPE + SYNTAX IsisSysLevelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each row describes variables configured for Area or Domain. + + Configured values MUST survive an agent reboot." + INDEX { isisSysLevelIndex } + + + + ::= { isisSysLevelTable 1 } + + IsisSysLevelEntry ::= + SEQUENCE { + isisSysLevelIndex + IsisISLevel, + isisSysLevelOrigLSPBuffSize + IsisLSPBuffSize, + isisSysLevelMinLSPGenInt + IsisUnsigned16TC, + isisSysLevelState + IsisLevelState, + isisSysLevelSetOverload + TruthValue, + isisSysLevelSetOverloadUntil + Unsigned32, + isisSysLevelMetricStyle + IsisMetricStyle, + isisSysLevelSPFConsiders + IsisMetricStyle, + isisSysLevelTEEnabled + TruthValue + } + + isisSysLevelIndex OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The level that this entry describes." + ::= { isisSysLevelEntry 1 } + + isisSysLevelOrigLSPBuffSize OBJECT-TYPE + SYNTAX IsisLSPBuffSize + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The maximum size of LSPs and SNPs originated by + this Intermediate System at this level. This + object may not be modified when the isisSysAdminState + variable is in state 'on' for this Intermediate System." + REFERENCE "{ISIS.aoi originatingL1LSPBufferSize (9)}" + DEFVAL { 1492 } + ::= { isisSysLevelEntry 2 } + + isisSysLevelMinLSPGenInt OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1..65535) + UNITS "seconds" + + + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Minimum interval, in seconds, between successive + generation of LSPs with the same LSPID at this level + by this Intermediate System." + REFERENCE "{ISIS.aoi minimumLSPGenerationInterval (11)}" + DEFVAL { 30 } + ::= { isisSysLevelEntry 3 } + + isisSysLevelState OBJECT-TYPE + SYNTAX IsisLevelState + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the database at this level. + The value 'off' indicates that IS-IS is not active at + this level. + The value 'on' indicates that IS-IS is active at this + level and is not overloaded. + The value 'waiting' indicates a database that is low on + an essential resource, such as memory. + The administrator may force the state to 'overloaded' + by setting the object isisSysLevelSetOverload. + If the state is 'waiting' or 'overloaded', we + originate LSPs with the overload bit set. --IPI Comments: Not Supported " + REFERENCE "{ISIS.aoi l1State (17)}" + ::= { isisSysLevelEntry 4 } + + isisSysLevelSetOverload OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Administratively set the overload bit for the level. + The overload bit MUST continue to be set if the + implementation runs out of memory, independent of + this variable. It may also be set manually independent + of this variable, using the isisSysLevelSetOverloadUntil + object." + DEFVAL { false } + ::= { isisSysLevelEntry 5 } + + isisSysLevelSetOverloadUntil OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "Seconds until clearing manually set Overload Bit" + MAX-ACCESS read-write + STATUS current + + + + DESCRIPTION + "If this object is non-zero, the overload bit is set at + this level when the isisSysAdminState variable goes to + state 'on' for this Intermediate System. The overload bit + remains set for isisSysLevelSetOverloadUntil seconds. + When isisSysLevelSetOverloadUntil seconds have elapsed, + the overload flag remains set if the implementation has + run out of memory, or if it is set manually using the + isisSysLevelSetOverload object. + + If isisSysLevelSetOverload is false, the system clears + the overload bit when isisSysLevelSetOverloadUntil seconds + have elapsed, if the system has not run out of memory." + ::= { isisSysLevelEntry 6 } + + isisSysLevelMetricStyle OBJECT-TYPE + SYNTAX IsisMetricStyle + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Which style of metric do we generate in our LSPs + at this level?" + DEFVAL { narrow } + ::= { isisSysLevelEntry 7 } + + isisSysLevelSPFConsiders OBJECT-TYPE + SYNTAX IsisMetricStyle + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Which style of metric do we consider in our + SPF computation at this level?" + DEFVAL { narrow } + ::= { isisSysLevelEntry 8 } + + isisSysLevelTEEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Do we do Traffic Engineering at this level? --IPI Comments: Not Supported" + DEFVAL { false } + ::= { isisSysLevelEntry 9 } + +-- Static to provide next CircIndex + + isisNextCircIndex OBJECT-TYPE + SYNTAX IndexIntegerNextFree + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object is used to assist a management + application in creating new rows in the + isisCircTable. If it is possible to create + a new instance of isisCircEntry, then this + object will contain a non-zero value that + is not in use as the index of any row in the + isisCircTable. The network manager reads the + value of this object and then (if the + value read is non-zero) attempts to create + the corresponding instance of isisCircEntry. + If the set request fails with the code + 'inconsistentValue', then the process must be + repeated; if the set request succeeds, then + the agent will change the value of this object + according to an implementation-specific + algorithm." + ::= { isisCirc 1 } + +-- The Circuit Table +-- Each broadcast or point-to-point interface on the system +-- corresponds to one entry in the Circuit table. However, there +-- may be multiple X.25 DA circuit entries in the Circuit table +-- for a given X.25 interface. + + isisCircTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisCircEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table of circuits used by this + Intermediate System." + ::= { isisCirc 2 } + + isisCircEntry OBJECT-TYPE + SYNTAX IsisCircEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An isisCircEntry exists for each circuit configured + for Integrated IS-IS on this system. + + Dynamically created rows MUST survive an agent reboot." + INDEX { isisCircIndex } + ::= { isisCircTable 1 } + + + + + IsisCircEntry ::= + SEQUENCE { + isisCircIndex + IndexInteger, + isisCircIfIndex + InterfaceIndex, + isisCircAdminState + IsisAdminState, + isisCircExistState + RowStatus, + isisCircType + INTEGER, + isisCircExtDomain + TruthValue, + isisCircLevelType + IsisLevel, + isisCircPassiveCircuit + TruthValue, + isisCircMeshGroupEnabled + INTEGER, + isisCircMeshGroup + Unsigned32, + isisCircSmallHellos + TruthValue, + isisCircLastUpTime + TimeStamp, + isisCirc3WayEnabled + TruthValue, + isisCircExtendedCircID + Unsigned32 + } + + isisCircIndex OBJECT-TYPE + SYNTAX IndexInteger + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An index used to uniquely identify this circuit. + When creating a row in this table, the + isisNextCircIndex object should be retrieved, + and its value should be specified as the value + of this index using a SET operation. A retrieved + value of zero(0) indicates that no rows can be + created at this time." + ::= { isisCircEntry 1 } + + isisCircIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + + + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value of ifIndex for the interface to which this + circuit corresponds. This object cannot be modified + after creation." + ::= { isisCircEntry 2 } + + isisCircAdminState OBJECT-TYPE + SYNTAX IsisAdminState + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The administrative state of the circuit." + DEFVAL { off } + ::= { isisCircEntry 3 } + + isisCircExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The existence state of this circuit. Setting the state + to 'notInService' halts the generation and processing of + IS-IS protocol PDUs on this circuit. Setting the state + to destroy will also erase any configuration associated + with the circuit. Support for 'createAndWait' and + 'notInService' is not required. + + A row entry cannot be modified when the value of this + object is 'active'." + ::= { isisCircEntry 4 } + + isisCircType OBJECT-TYPE + SYNTAX INTEGER + { + broadcast(1), + ptToPt(2), + staticIn(3), + staticOut(4), + dA(5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of the circuit. This object follows the + ReplaceOnlyWhileDisabled behavior. The type specified + must be compatible with the type of the interface defined + + + + by the value of isisCircIfIndex." + REFERENCE "{ISIS.aoi type (33)}" + ::= { isisCircEntry 5 } + + isisCircExtDomain OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If true, suppress normal transmission of and + interpretation of Intra-domain IS-IS PDUs on this + circuit." + REFERENCE "{ISIS.aoi externalDomain (46)}" + DEFVAL { false } + ::= { isisCircEntry 6 } + + isisCircLevelType OBJECT-TYPE + SYNTAX IsisLevel + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates which type of packets will be sent and + accepted on this circuit. The values set will be + saved, but the values used will be modified by + the settings of isisSysLevelType. Thus, if the + isisSysTpe is level2 and the isisCircLevelType + for a circuit is level1, the circuit will not send + or receive IS-IS packets. This object follows the + ReplaceOnlyWhileDisabled behavior." + DEFVAL { level1and2 } + ::= { isisCircEntry 7 } + + isisCircPassiveCircuit OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Should we include this interface in LSPs, even if + it is not running the IS-IS Protocol? --IPI Comments: Not Supported" + DEFVAL { false } + ::= { isisCircEntry 8 } + + isisCircMeshGroupEnabled OBJECT-TYPE + SYNTAX INTEGER + { + inactive(1), + blocked(2), + set(3) + + + + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Is this port a member of a mesh group, or is it + blocked? Circuits in the same mesh group act as a + virtual multiaccess network. LSPs seen on one circuit + in a mesh group will not be flooded to another circuit + in the same mesh group. --IPI Comments: Not Supported" + REFERENCE "{ RFC 2973 }" + DEFVAL { inactive } + ::= { isisCircEntry 9 } + + isisCircMeshGroup OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Circuits in the same mesh group act as a virtual + multiaccess network. LSPs seen on one circuit in + a mesh group will not be flooded to another circuit + in the same mesh group. If isisCircMeshGroupEnabled + is inactive or blocked, this value is ignored.--IPI Comments: Not Supported" + REFERENCE "{ RFC 2973 }" + ::= { isisCircEntry 10 } + + isisCircSmallHellos OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Can we send unpadded hellos on LAN circuits? False + means the LAN Hellos must be padded. + Implementations should allow the administrator to read + this value. An implementation need not be able to + support unpadded hellos to be conformant." + DEFVAL { false } + ::= { isisCircEntry 11 } + + isisCircLastUpTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "How long the circuit has been enabled, measured in + hundredths of seconds since the last re-initialization + of the network management subsystem; 0 if the + circuit has never been 'on'." + + + + ::= { isisCircEntry 12 } + + isisCirc3WayEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Is this circuit enabled to run 3Way handshake?" + DEFVAL { true } + ::= { isisCircEntry 13 } + + isisCircExtendedCircID OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value to be used as the extended circuit ID in + 3Way handshake. This value is only used if + isisCirc3WayEnabled is true, and it must be unique + across all circuits on this IS." + ::= { isisCircEntry 14 } + +-- The Circuit Level Table +-- This table captures level-specific information about a circuit + + isisCircLevelTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisCircLevelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Level specific information about circuits used by IS-IS." + ::= { isisCircLevelValues 1 } + + isisCircLevelEntry OBJECT-TYPE + SYNTAX IsisCircLevelEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An isisCircLevelEntry exists for each level on + each circuit configured for Integrated IS-IS on + this system. + + Configured values MUST survive an agent reboot." + INDEX { isisCircIndex, + isisCircLevelIndex } + ::= { isisCircLevelTable 1 } + + IsisCircLevelEntry ::= + + + + SEQUENCE { + isisCircLevelIndex + IsisISLevel, + isisCircLevelMetric + IsisDefaultMetric, + isisCircLevelWideMetric + IsisWideMetric, + isisCircLevelISPriority + IsisISPriority, + isisCircLevelIDOctet + Unsigned32, + isisCircLevelID + IsisCircuitID, + isisCircLevelDesIS + IsisCircuitID, + isisCircLevelHelloMultiplier + Unsigned32, + isisCircLevelHelloTimer + Unsigned32, + isisCircLevelDRHelloTimer + Unsigned32, + isisCircLevelLSPThrottle + IsisUnsigned16TC, + isisCircLevelMinLSPRetransInt + Unsigned32, + isisCircLevelCSNPInterval + Unsigned32, + isisCircLevelPartSNPInterval + Unsigned32 + } + + isisCircLevelIndex OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The level that this entry describes." + ::= { isisCircLevelEntry 1 } + + isisCircLevelMetric OBJECT-TYPE + SYNTAX IsisDefaultMetric + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The metric value of this circuit for this level." + REFERENCE "{ISIS.aoi l1DefaultMetric (35)}" + DEFVAL { 10 } + ::= { isisCircLevelEntry 2 } + + + + isisCircLevelWideMetric OBJECT-TYPE + SYNTAX IsisWideMetric + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The wide metric value of this circuit for this level.--IPI Comments: Not Supported" + DEFVAL { 10 } + ::= { isisCircLevelEntry 3 } + + isisCircLevelISPriority OBJECT-TYPE + SYNTAX IsisISPriority + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The priority for becoming the LAN-Designated + Intermediate System at this level." + REFERENCE "{ISIS.aoi l2IntermediateSystemPriority (73)}" + DEFVAL { 64 } + ::= { isisCircLevelEntry 4 } + + isisCircLevelIDOctet OBJECT-TYPE + SYNTAX Unsigned32(0..255) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A one-byte identifier for the circuit selected by the + Intermediate System. + + On point-to-point circuits, the value is used as the Local + Circuit ID in point-to-point IIH PDUs transmitted on this + circuit. In this case, values of isisCircLevelIDOctet do + not need to be unique. + + For broadcast circuits, the value is used to generate the + LAN ID that will be used if this Intermediate System is + elected as the Designated IS on this circuit. The value + is required to differ on LANs where the Intermediate System + is the Designated Intermediate System." + ::= { isisCircLevelEntry 5 } + + isisCircLevelID OBJECT-TYPE + SYNTAX IsisCircuitID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "On a point-to-point circuit with a fully initialized + adjacency to a peer IS, the value of this object is + the circuit ID negotiated during adjacency initialization. + + + + On a point to point circuit without such an adjacency, + the value is the concatenation of the local system ID + and the one-byte isisCircLevelIDOctet for this circuit, + i.e., the value that would be proposed for the circuit ID. + On other circuit types, the value returned is the zero- + length OCTET STRING." + REFERENCE "{ISIS.aoi ptPtCircuitID (51)}" + ::= { isisCircLevelEntry 6 } + + isisCircLevelDesIS OBJECT-TYPE + SYNTAX IsisCircuitID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The ID of the LAN-Designated Intermediate System + on this circuit at this level. If, for any reason, + this system is not partaking in the relevant + Designated Intermediate System election process, + then the value returned is the zero-length OCTET STRING." + REFERENCE "{ISIS.aoi l2DesignatedIntermediateSystem (75)}" + ::= { isisCircLevelEntry 7 } + + isisCircLevelHelloMultiplier OBJECT-TYPE + SYNTAX Unsigned32 (2..100) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This value is multiplied by the corresponding HelloTimer, + and the result in seconds (rounded up) is used as the + holding time in transmitted hellos, to be used by + receivers of hello packets from this IS." + REFERENCE "{ISIS.aoi iSISHelloTimer (45)}" + DEFVAL { 10 } + ::= { isisCircLevelEntry 8 } + + isisCircLevelHelloTimer OBJECT-TYPE + SYNTAX Unsigned32 (10..600000) + UNITS "milliseconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Maximum period, in milliseconds, between IIH PDUs + on multiaccess networks at this level for LANs. + The value at L1 is used as the period between + Hellos on L1L2 point-to-point circuits. Setting + this value at level 2 on an L1L2 point-to-point + circuit will result in an error of InconsistentValue. + + + + + This object follows the ResettingTimer behavior." + REFERENCE "{ISIS.aoi iSISHelloTimer (45)}" + DEFVAL { 3000 } + ::= { isisCircLevelEntry 9 } + + isisCircLevelDRHelloTimer OBJECT-TYPE + SYNTAX Unsigned32 (10..120000) + UNITS "milliseconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Period, in milliseconds, between Hello PDUs on + multiaccess networks when this IS is the Designated + Intermediate System. This object follows the + ResettingTimer behavior." + REFERENCE "{ISIS.aoi iSISHelloTimer (45)}" + DEFVAL { 1000 } + ::= { isisCircLevelEntry 10 } + + isisCircLevelLSPThrottle OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1..65535) + UNITS "milliseconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Minimal interval of time, in milliseconds, between + transmissions of LSPs on an interface at this level." + REFERENCE + "{ISIS.aoi minimumBroadcastLSPTransmissionInterval (5)}" + DEFVAL { 30 } + ::= { isisCircLevelEntry 11 } + + isisCircLevelMinLSPRetransInt OBJECT-TYPE + SYNTAX Unsigned32 (1..300) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Minimum interval, in seconds, between re-transmission of + an LSP at this level. This object follows the + ResettingTimer behavior. + + Note that isisCircLevelLSPThrottle controls + how fast we send back-to-back LSPs. This variable + controls how fast we re-send the same LSP." + REFERENCE "{ISIS.aoi minimumLSPTransmissionInterval (5)}" + DEFVAL { 5 } + ::= { isisCircLevelEntry 12 } + + + + isisCircLevelCSNPInterval OBJECT-TYPE + SYNTAX Unsigned32 (1..600) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Interval of time, in seconds, between periodic + transmission of a complete set of CSNPs on + multiaccess networks if this router is the + designated router at this level. + This object follows the ResettingTimer behavior." + REFERENCE "{ISIS.aoi completeSNPInterval (8)}" + DEFVAL { 10 } + ::= { isisCircLevelEntry 13 } + + isisCircLevelPartSNPInterval OBJECT-TYPE + SYNTAX Unsigned32 (1..120) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Minimum interval, in seconds, between sending Partial + Sequence Number PDUs at this level. This object + follows the ResettingTimer behavior." + REFERENCE "{ISIS.aoi partialSNPInterval (14)}" + DEFVAL { 2 } + ::= { isisCircLevelEntry 14 } + +-- isisSystemCounterTable keeps track of system-wide events. + + isisSystemCounterTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisSystemCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "System-wide counters for this Intermediate System." + ::= { isisCounters 1 } + + isisSystemCounterEntry OBJECT-TYPE + SYNTAX IsisSystemCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "System-wide IS-IS counters." + INDEX { isisSysStatLevel } + ::= { isisSystemCounterTable 1 } + + IsisSystemCounterEntry ::= + + + + SEQUENCE { + isisSysStatLevel + IsisISLevel, + isisSysStatCorrLSPs + Counter32, + isisSysStatAuthTypeFails + Counter32, + isisSysStatAuthFails + Counter32, + isisSysStatLSPDbaseOloads + Counter32, + isisSysStatManAddrDropFromAreas + Counter32, + isisSysStatAttmptToExMaxSeqNums + Counter32, + isisSysStatSeqNumSkips + Counter32, + isisSysStatOwnLSPPurges + Counter32, + isisSysStatIDFieldLenMismatches + Counter32, + isisSysStatPartChanges + Counter32, + isisSysStatSPFRuns + Counter32, + isisSysStatLSPErrors + Counter32 + } + + isisSysStatLevel OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The level that this entry describes." + ::= { isisSystemCounterEntry 1 } + + isisSysStatCorrLSPs OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of corrupted in-memory frames" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of corrupted in-memory LSPs detected. + + LSPs received from the wire with a bad checksum + are silently dropped and are not counted. + + + + + LSPs received from the wire with parse errors + are counted by isisSysStatLSPErrors." + REFERENCE "{ISIS.aoi corruptedLSPsDetected (19)}" + ::= { isisSystemCounterEntry 2 } + + isisSysStatAuthTypeFails OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of frames with authentication type mismatches" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of authentication type mismatches recognized + by this Intermediate System." + ::= { isisSystemCounterEntry 3 } + + isisSysStatAuthFails OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of frames with authentication key failures" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of authentication key failures recognized + by this Intermediate System." + ::= { isisSystemCounterEntry 4 } + + isisSysStatLSPDbaseOloads OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times the LSP database has become + overloaded." + REFERENCE "{ISIS.aoi lSPL1DatabaseOverloads (20)}" + ::= { isisSystemCounterEntry 5 } + + isisSysStatManAddrDropFromAreas OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times a manual address has been dropped from + the area." + REFERENCE "{ISIS.aoi manualAddressesDroppedFromArea (21)}" + ::= { isisSystemCounterEntry 6 } + + isisSysStatAttmptToExMaxSeqNums OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "Number of times the IS has attempted to exceed the + maximum sequence number." + REFERENCE + "{ISIS.aoi attemptsToExceedmaximumSequenceNumber (22)}" + ::= { isisSystemCounterEntry 7 } + + isisSysStatSeqNumSkips OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times a sequence number skip has occurred." + REFERENCE "{ISIS.aoi sequenceNumberSkips (23)}" + ::= { isisSystemCounterEntry 8 } + + isisSysStatOwnLSPPurges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times a zero-aged copy of the system's own LSP + is received from some other node." + REFERENCE "{ISIS.aoi ownLSPPurges (24)}" + ::= { isisSystemCounterEntry 9 } + + isisSysStatIDFieldLenMismatches OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of frames with ID length mismatches" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times a PDU is received with a different value + for ID field length from that of the receiving system." + REFERENCE "{ISIS.aoi iDFieldLengthMismatches (25)}" + ::= { isisSystemCounterEntry 10 } + + isisSysStatPartChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Partition changes." + ::= { isisSystemCounterEntry 11 } + + isisSysStatSPFRuns OBJECT-TYPE + SYNTAX Counter32 + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of times we ran SPF at this level." + ::= { isisSystemCounterEntry 12 } + + isisSysStatLSPErrors OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of frames with errors that we have received" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of LSPs with errors we have received." + ::= { isisSystemCounterEntry 13 } + +-- isisCircuitCounterTable keeps track of events +-- specific to a circuit and a level + + isisCircuitCounterTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisCircuitCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Circuit specific counters for this + Intermediate System." + ::= { isisCounters 2 } + + isisCircuitCounterEntry OBJECT-TYPE + SYNTAX IsisCircuitCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An isisCircuitCounterEntry exists for each circuit + used by Integrated IS-IS on this system." + INDEX { isisCircIndex, + isisCircuitType } + ::= { isisCircuitCounterTable 1 } + + IsisCircuitCounterEntry ::= SEQUENCE { + isisCircuitType + INTEGER, + isisCircAdjChanges + Counter32, + isisCircNumAdj + Unsigned32, + isisCircInitFails + Counter32, + isisCircRejAdjs + + + + Counter32, + isisCircIDFieldLenMismatches + Counter32, + isisCircMaxAreaAddrMismatches + Counter32, + isisCircAuthTypeFails + Counter32, + isisCircAuthFails + Counter32, + isisCircLANDesISChanges + Counter32 + } + + isisCircuitType OBJECT-TYPE + SYNTAX INTEGER + { + lanlevel1(1), + lanlevel2(2), + p2pcircuit(3) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "What type of circuit saw these counts? + + The point-to-point Hello PDU includes + both L1 and L2, and ISs form a single + adjacency on point-to-point links. + Thus, we combine counts on + point-to-point links into one group." + ::= { isisCircuitCounterEntry 1 } + + isisCircAdjChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an adjacency state change has + occurred on this circuit." + REFERENCE "{ISIS.aoi changesInAdjacencyState (40)}" + ::= { isisCircuitCounterEntry 2 } + + isisCircNumAdj OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of adjacencies on this circuit." + + + + REFERENCE "{ISIS.aoi changesInAdjacencyState (40)}" + ::= { isisCircuitCounterEntry 3 } + + isisCircInitFails OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times initialization of this circuit has + failed. This counts events such as PPP NCP failures. + Failures to form an adjacency are counted by + isisCircRejAdjs." + ::= { isisCircuitCounterEntry 4 } + + isisCircRejAdjs OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an adjacency has been rejected on + this circuit." + REFERENCE "{ISIS.aoi rejectedAdjacencies (42)}" + ::= { isisCircuitCounterEntry 5 } + + isisCircIDFieldLenMismatches OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of frames with ID field length mismatch" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an IS-IS control PDU with an ID + field length different from that for this system has been + received." + REFERENCE "{ISIS.aoi iDFieldLengthMismatches (25)}" + ::= { isisCircuitCounterEntry 6 } + + isisCircMaxAreaAddrMismatches OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an IS-IS control PDU with a + max area address field different from that for this + system has been received." + REFERENCE "{ISIS.aoi iDFieldLengthMismatches (25)}" + ::= { isisCircuitCounterEntry 7 } + + isisCircAuthTypeFails OBJECT-TYPE + + + + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an IS-IS control PDU with + an auth type field different from that for this + system has been received." + ::= { isisCircuitCounterEntry 8 } + + isisCircAuthFails OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times an IS-IS control PDU with + the correct auth type has failed to pass authentication + validation." + ::= { isisCircuitCounterEntry 9 } + + isisCircLANDesISChanges OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times the Designated IS has changed + on this circuit at this level. If the circuit is + point to point, this count is zero." + ::= { isisCircuitCounterEntry 10 } + +-- isisPacketCounterTable keeps track of the number of IS-IS +-- control packets sent and received at each level + + isisPacketCounterTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisPacketCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about IS-IS protocol traffic at one level, + on one circuit, in one direction." + ::= { isisCounters 3 } + + isisPacketCounterEntry OBJECT-TYPE + SYNTAX IsisPacketCounterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about IS-IS protocol traffic at one level, + on one circuit, in one direction." + + + + INDEX { isisCircIndex, + isisPacketCountLevel, + isisPacketCountDirection } + ::= { isisPacketCounterTable 1 } + + IsisPacketCounterEntry ::= + SEQUENCE { + isisPacketCountLevel + IsisISLevel, + isisPacketCountDirection + INTEGER, + isisPacketCountIIHello + Counter32, + isisPacketCountISHello + Counter32, + isisPacketCountESHello + Counter32, + isisPacketCountLSP + Counter32, + isisPacketCountCSNP + Counter32, + isisPacketCountPSNP + Counter32, + isisPacketCountUnknown + Counter32 + } + + isisPacketCountLevel OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The level at which these PDU counts have been collected." + ::= { isisPacketCounterEntry 1 } + + isisPacketCountDirection OBJECT-TYPE + SYNTAX INTEGER + { + sending(1), + receiving(2) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Were we sending or receiving these PDUs?" + ::= { isisPacketCounterEntry 2 } + + isisPacketCountIIHello OBJECT-TYPE + + + + SYNTAX Counter32 + UNITS "Number of IS-IS Hellos frames seen in this direction + at this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of IS-IS Hello PDUs seen in this + direction at this level. + + Point-to-Point IIH PDUs are counted at + the lowest enabled level: at L1 on L1 or L1L2 circuits, + and at L2 otherwise." + REFERENCE "{ISIS.aoi iSISControlPDUsSent (43)}" + ::= { isisPacketCounterEntry 3 } + + isisPacketCountISHello OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of ES-IS frames seen in this direction at + this level." + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of ES-IS Hello PDUs seen in this + direction. ISH PDUs are counted at the + lowest enabled level: at L1 on L1 or L1L2 + circuits, and at L2 otherwise." + ::= { isisPacketCounterEntry 4 } + + isisPacketCountESHello OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of ES Hello frames seen in this direction at + this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of ES Hello PDUs seen in this + direction. ESH PDUs are counted at the + lowest enabled level: at L1 on L1 or L1L2 + circuits, and at L2 otherwise." + ::= { isisPacketCounterEntry 5 } + + isisPacketCountLSP OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of IS-IS LSP frames seen in this direction at + this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "The number of IS-IS LSPs seen in this + direction at this level." + REFERENCE "{ISIS.aoi iSISControlPDUsSent (43)}" + ::= { isisPacketCounterEntry 6 } + + isisPacketCountCSNP OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of IS-IS CSNP frames seen in this direction at + this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of IS-IS CSNPs seen in this + direction at this level." + REFERENCE "{ISIS.aoi iSISControlPDUsSent (43)}" + ::= { isisPacketCounterEntry 7 } + + isisPacketCountPSNP OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of IS-IS PSNP frames seen in this direction at + this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of IS-IS PSNPs seen in this + direction at this level." + REFERENCE "{ISIS.aoi iSISControlPDUsSent (43)}" + ::= { isisPacketCounterEntry 8 } + + isisPacketCountUnknown OBJECT-TYPE + SYNTAX Counter32 + UNITS "Number of unknown IS-IS frames seen at this level" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of unknown IS-IS PDUs seen + at this level." + REFERENCE "{ISIS.aoi iSISControlPDUsSent (43)}" + ::= { isisPacketCounterEntry 9 } + +-- The IS Adjacency Table +-- +-- Each adjacency to an IS corresponds to one entry in this +-- table. + + isisISAdjTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisISAdjEntry + MAX-ACCESS not-accessible + + + + STATUS current + DESCRIPTION + "The table of adjacencies to Intermediate Systems." + ::= { isisISAdj 1 } + + isisISAdjEntry OBJECT-TYPE + SYNTAX IsisISAdjEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry corresponds to one adjacency to an + Intermediate System on this system. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisCircIndex, + isisISAdjIndex } + ::= { isisISAdjTable 1 } + + IsisISAdjEntry ::= + SEQUENCE { + isisISAdjIndex + Unsigned32, + isisISAdjState + INTEGER, + isisISAdj3WayState + INTEGER, + isisISAdjNeighSNPAAddress + IsisOSINSAddress, + isisISAdjNeighSysType + INTEGER, + isisISAdjNeighSysID + IsisSystemID, + isisISAdjNbrExtendedCircID + Unsigned32, + isisISAdjUsage + IsisLevel, + isisISAdjHoldTimer + IsisUnsigned16TC, + isisISAdjNeighPriority + IsisISPriority, + isisISAdjLastUpTime + TimeStamp + } + + isisISAdjIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "A unique value identifying the IS adjacency from all + other such adjacencies on this circuit. This value is + automatically assigned by the system when the adjacency + is created." + ::= { isisISAdjEntry 1 } + + isisISAdjState OBJECT-TYPE + SYNTAX INTEGER + { + down (1), + initializing (2), + up (3), + failed(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the adjacency." + REFERENCE "{ISIS.aoi adjacencyState (78)}" + ::= { isisISAdjEntry 2 } + + isisISAdj3WayState OBJECT-TYPE + SYNTAX INTEGER + { + up (0), + initializing (1), + down (2), + failed (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 3Way state of the adjacency. These are picked + to match the historical on-the-wire representation + of the 3Way state and are not intended to match + isisISAdjState." + REFERENCE "{ RFC 3373 }" + ::= { isisISAdjEntry 3 } + + isisISAdjNeighSNPAAddress OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The SNPA address of the neighboring system." + REFERENCE "{ISIS.aoi neighbourSNPAAddress (79)}" + ::= { isisISAdjEntry 4 } + + + + isisISAdjNeighSysType OBJECT-TYPE + SYNTAX INTEGER + { + l1IntermediateSystem(1), + l2IntermediateSystem(2), + l1L2IntermediateSystem(3), + unknown(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of the neighboring system." + REFERENCE "{ISIS.aoi neighbourSystemType (80)}" + ::= { isisISAdjEntry 5 } + + isisISAdjNeighSysID OBJECT-TYPE + SYNTAX IsisSystemID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The system ID of the neighboring Intermediate + System." + REFERENCE "{ISIS.aoi neighbourSystemIds (83)}" + ::= { isisISAdjEntry 6 } + + isisISAdjNbrExtendedCircID OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 4-byte Extended Circuit ID learned from the + Neighbor during 3-way handshake, or 0." + ::= { isisISAdjEntry 7 } + + isisISAdjUsage OBJECT-TYPE + SYNTAX IsisLevel + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "How is the adjacency used? On a point-to-point link, + this might be level1and2, but on a LAN, the usage will + be level1 on the adjacency between peers at L1, + and level2 for the adjacency between peers at L2." + REFERENCE "{ISIS.aoi adjacencyUsage (82)}" + ::= { isisISAdjEntry 8 } + + isisISAdjHoldTimer OBJECT-TYPE + SYNTAX IsisUnsigned16TC (1..65535) + + + + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The holding time, in seconds, for this adjacency. + This value is based on received IIH PDUs and + the elapsed time since receipt." + REFERENCE "{ISIS.aoi holdingTimer (85)}" + ::= { isisISAdjEntry 9 } + + isisISAdjNeighPriority OBJECT-TYPE + SYNTAX IsisISPriority + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Priority of the neighboring Intermediate System for + becoming the Designated Intermediate System." + REFERENCE "{ISIS.aoi lANPriority (86)}" + ::= { isisISAdjEntry 10 } + + isisISAdjLastUpTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "When the adjacency most recently entered the state 'up', + measured in hundredths of a second since the last + re-initialization of the network management subsystem. + Holds 0 if the adjacency has never been in state 'up'." + ::= { isisISAdjEntry 11 } + +-- The IS Adjacency Area Address Table + +-- The IS Adjacency Area Address Table contains the set of +-- Area Addresses of neighboring +-- Intermediate Systems as reported in IIH PDUs. + + isisISAdjAreaAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisISAdjAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains the set of Area Addresses of + neighboring Intermediate Systems as reported in received + IIH PDUs." + REFERENCE "{ISIS.aoi areaAddressesOfNeighbour (84)}" + ::= { isisISAdj 2 } + + + + + isisISAdjAreaAddrEntry OBJECT-TYPE + SYNTAX IsisISAdjAreaAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one Area Address reported by a + neighboring Intermediate System in its IIH PDUs. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisCircIndex, + isisISAdjIndex, + isisISAdjAreaAddrIndex } + ::= { isisISAdjAreaAddrTable 1 } + + IsisISAdjAreaAddrEntry ::= + SEQUENCE { + isisISAdjAreaAddrIndex + Unsigned32, + isisISAdjAreaAddress + IsisOSINSAddress + } + + isisISAdjAreaAddrIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An index for the areas associated with one neighbor. + This provides a simple way to walk the table." + ::= { isisISAdjAreaAddrEntry 1 } + + isisISAdjAreaAddress OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "One Area Address as reported in IIH PDUs received from + the neighbor." + ::= { isisISAdjAreaAddrEntry 2 } + +-- The IS Adjacency IP Address Table + +-- The IS Adjacency IP Address Table contains the +-- set of IP Addresses of neighboring Intermediate Systems +-- as reported in received IIH PDUs. + + isisISAdjIPAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisISAdjIPAddrEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains the set of IP Addresses of + neighboring Intermediate Systems as reported in received + IIH PDUs." + ::= { isisISAdj 3 } + + isisISAdjIPAddrEntry OBJECT-TYPE + SYNTAX IsisISAdjIPAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one IP Address reported by a + neighboring Intermediate System in its IIH PDUs. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisCircIndex, + isisISAdjIndex, + isisISAdjIPAddrIndex + } + ::= { isisISAdjIPAddrTable 1 } + + IsisISAdjIPAddrEntry ::= + SEQUENCE { + isisISAdjIPAddrIndex + Unsigned32, + isisISAdjIPAddrType + InetAddressType, + isisISAdjIPAddrAddress + InetAddress + } + + isisISAdjIPAddrIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An index to this table that identifies the IP addresses + to which this entry belongs." + ::= { isisISAdjIPAddrEntry 1 } + + isisISAdjIPAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of one IP Address as reported in IIH PDUs + + + + received from the neighbor." + ::= { isisISAdjIPAddrEntry 2 } + + isisISAdjIPAddrAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "One IP Address as reported in IIH PDUs received from the + neighbor. + + The type of this address is determined by the value of + the isisISAdjIPAddrType object." + ::= { isisISAdjIPAddrEntry 3 } + +-- The IS Adjacency Protocol Supported Table +-- +-- The IS Adjacency Protocol Supported Table contains the set of +-- protocols supported by neighboring +-- Intermediate Systems as reported in received IIH PDUs. + + isisISAdjProtSuppTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisISAdjProtSuppEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains the set of protocols supported by + neighboring Intermediate Systems as reported in received + IIH PDUs." + ::= { isisISAdj 4 } + + isisISAdjProtSuppEntry OBJECT-TYPE + SYNTAX IsisISAdjProtSuppEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains one protocol supported by a + neighboring Intermediate System as reported in its IIH + PDUs. + + Dynamically learned rows do not survive an agent reboot." + INDEX { isisCircIndex, + isisISAdjIndex, + isisISAdjProtSuppProtocol } + ::= { isisISAdjProtSuppTable 1 } + + IsisISAdjProtSuppEntry ::= + SEQUENCE { + + + + isisISAdjProtSuppProtocol + IsisSupportedProtocol + } + + isisISAdjProtSuppProtocol OBJECT-TYPE + SYNTAX IsisSupportedProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "One supported protocol as reported in IIH PDUs received + from the neighbor." + ::= { isisISAdjProtSuppEntry 1 } + +-- The Reachable Address Group +-- +-- The Reachable Address Table +-- Each entry records information about a reachable address +-- (NSAP or address prefix) manually configured on the system +-- or learned through another protocol. + + isisRATable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisRAEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table of Reachable Addresses to NSAPs or Address + Prefixes." + ::= { isisReachAddr 1 } + + isisRAEntry OBJECT-TYPE + SYNTAX IsisRAEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry defines a configured Reachable Address + to an NSAP or Address Prefix. + + Dynamically created rows MUST survive an agent reboot." + INDEX { isisCircIndex, + isisRAIndex } + ::= { isisRATable 1 } + + IsisRAEntry ::= + SEQUENCE { + isisRAIndex + Unsigned32, + isisRAExistState + RowStatus, + + + + isisRAAdminState + IsisAdminState, + isisRAAddrPrefix + IsisOSINSAddress, + isisRAMapType + INTEGER, + isisRAMetric + IsisDefaultMetric, + isisRAMetricType + IsisMetricType, + isisRASNPAAddress + IsisOSINSAddress, + isisRASNPAMask + IsisOSINSAddress, + isisRASNPAPrefix + IsisOSINSAddress, + isisRAType + INTEGER + } + + isisRAIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The identifier for this isisRAEntry. This value must be + unique amongst all Reachable Addresses on the same parent + Circuit.--IPI Comments: Not Supported" + ::= { isisRAEntry 1 } + + isisRAExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The existence state of this Reachable Address. This + object follows the ManualOrAutomatic behaviors. Support + for 'createAndWait' and 'notInService' is not required. + + A row entry cannot be modified when the value of this + object is 'active'.--IPI Comments: Not Supported" + ::= { isisRAEntry 2 } + + isisRAAdminState OBJECT-TYPE + SYNTAX IsisAdminState + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "The administrative state of the Reachable Address. This + object follows the ManualOrAutomatic behaviors.--IPI Comments: Not Supported" + DEFVAL { off } + ::= { isisRAEntry 3 } + + isisRAAddrPrefix OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The destination of this Reachable Address. This is an + Address Prefix. This object follows the + ReplaceOnlyWhileDisabled and ManualOrAutomatic + behaviors.--IPI Comments: Not Supported" + REFERENCE "{ISIS.aoi addressPrefix (98)}" + ::= { isisRAEntry 4 } + + isisRAMapType OBJECT-TYPE + SYNTAX INTEGER + { + none (1), + explicit (2), + extractIDI (3), + extractDSP (4) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of mapping to be employed to ascertain the SNPA + Address that should be used in forwarding PDUs for this + Reachable Address prefix. This object follows the + ManualOrAutomatic behavior. The following values of + mapping type are defined: + + none: The mapping is null because the neighbor SNPA is + implicit by nature of the subnetwork (e.g., a + point-to-point linkage). + + explicit: The subnetwork addresses in the object + isisRASNPAAddress are to be used. + + extractIDI: The SNPA is embedded in the IDI of + the destination NSAP Address. The mapping + algorithm extracts the SNPA to be used + according to the format and encoding rules of + ISO8473/Add2. This SNPA extraction algorithm can + be used in conjunction with Reachable Address + prefixes from the X.121, F.69, E.163, and E.164 + + + + addressing subdomains. + + extractDSP: All, or a suffix, of the SNPA is embedded + in the DSP of the destination address. This SNPA + extraction algorithm extracts the embedded + subnetwork addressing information by performing a + logical AND of the isisRASNPAMask object value + with the destination address. The part of the + SNPA extracted from the destination NSAP is + appended to the isisRASNPAPrefix object value to + form the next hop subnetwork addressing + information.--IPI Comments: Not Supported" + + REFERENCE "{ISO10589-ISIS.aoi mappingType (107)}" + ::= { isisRAEntry 5 } + + isisRAMetric OBJECT-TYPE + SYNTAX IsisDefaultMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric value for reaching the specified + prefix over this circuit. This object follows the + ManualOrAutomatic behavior.--IPI Comments: Not Supported" + REFERENCE "{ISIS.aoi DefaultMetric (99)}" + DEFVAL { 20 } + ::= { isisRAEntry 6 } + + isisRAMetricType OBJECT-TYPE + SYNTAX IsisMetricType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether the metric is internal or + external. This object follows the ManualOrAutomatic + behavior.--IPI Comments: Not Supported" + REFERENCE "{ISIS.aoi DefaultMetricType (103)}" + DEFVAL { internal } + ::= { isisRAEntry 7 } + + isisRASNPAAddress OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The SNPA Address to which a PDU may be forwarded in + order to reach a destination that matches the address + prefix of the Reachable Address. This object follows the + + + + ManualOrAutomatic behavior.--IPI Comments: Not Supported" + REFERENCE "{ISIS.aoi sNPAAddresses (109)}" +-- Note only one address may be specified per Reachable Address +-- in the MIB + DEFVAL { ''H } + ::= { isisRAEntry 8 } + + isisRASNPAMask OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A bit mask with 1 bit indicating the positions in the + effective destination address from which embedded SNPA + information is to be extracted. For the extraction, the + first octet of the isisRASNPAMask object value is aligned + with the first octet (AFI) of the NSAP Address. If the + isisRASNPAMask object value and NSAP Address are of + different lengths, the shorter of the two is logically + padded with zeros before performing the extraction. This + object follows the ManualOrAutomatic behavior.--IPI Comments: Not Supported" + REFERENCE "{ISIS.aoi sNPAMask (122)}" + DEFVAL { '00'H } + ::= { isisRAEntry 9 } + + isisRASNPAPrefix OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A fixed SNPA prefix for use when the isisRAMapType is + extractDSP. The SNPA Address to use is formed by + concatenating the fixed SNPA prefix with a variable SNPA + part that is extracted from the effective destination + address. For Reachable Address prefixes in which the + entire SNPA is embedded in the DSP, the SNPA Prefix shall + be null. This object follows the ManualOrAutomatic + behavior.--IPI Comments: Not Supported" + REFERENCE "{ISIS.aoi sNPAPrefix (123)}" + DEFVAL { '00'H } + ::= { isisRAEntry 10 } + + isisRAType OBJECT-TYPE + SYNTAX INTEGER + { + manual (1), + automatic (2) + } + + + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of Reachable address. Those of type + manual are created by the network manager. Those + of type automatic are created through propagation + of routing information from another routing + protocol (e.g., IDRP).--IPI Comments: Not Supported " + DEFVAL {manual} + ::= {isisRAEntry 11 } + + +-- The IP Reachable Address Table + +-- Each entry records information about one IP reachable +-- address manually configured on this system or learned from +-- another protocol. + + isisIPRATable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisIPRAEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table of IP Reachable Addresses to networks, + subnetworks, or hosts either manually configured or + learned from another protocol." + ::= { isisIPReachAddr 1 } + + isisIPRAEntry OBJECT-TYPE + SYNTAX IsisIPRAEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry defines an IP Reachable Address to a network, + subnetwork, or host. + + Each IP Reachable Address may have multiple entries in the + table, one for each equal cost path to the reachable + address. + + Dynamically created rows MUST survive an agent reboot. + + Implementers need to be aware that if the total number + of elements (octets or sub-identifiers) in + isisIPRADestr, isisIPRADestPrefixLen, and + isisIPRANextHopIndex is too great, then OIDs of column + instances in this table will have more than 128 + subidentifiers and cannot be accessed using SNMPv1, + + + + SNMPv2c, or SNMPv3." + INDEX { isisSysLevelIndex, + isisIPRADestType, + isisIPRADest, + isisIPRADestPrefixLen, + isisIPRANextHopIndex } + ::= { isisIPRATable 1 } + + IsisIPRAEntry ::= + SEQUENCE { + isisIPRADestType + InetAddressType, + isisIPRADest + InetAddress, + isisIPRADestPrefixLen + InetAddressPrefixLength, + isisIPRANextHopIndex + Unsigned32, + isisIPRANextHopType + InetAddressType, + isisIPRANextHop + InetAddress, + isisIPRAType + INTEGER, + isisIPRAExistState + RowStatus, + isisIPRAAdminState + IsisAdminState, + isisIPRAMetric + IsisDefaultMetric, + isisIPRAMetricType + IsisMetricType, + isisIPRAFullMetric + IsisFullMetric, + isisIPRASNPAAddress + IsisOSINSAddress, + isisIPRASourceType + INTEGER + } + + isisIPRADestType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of this IP Reachable Address.--IPI Comments: Not Supported" + ::= { isisIPRAEntry 1 } + + + + + isisIPRADest OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The destination of this IP Reachable Address. This is + a network address, subnetwork address, or host + address. + + The type of this address is determined by the value of + the isisIPRADestType object.--IPI Comments: Not Supported" + + ::= { isisIPRAEntry 2 } + + isisIPRADestPrefixLen OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length of the IP Netmask for Reachability Address. + + The values for the index objects isisIPRADest and + isisIPRADestPrefixLen must be consistent. When the value + of isisIPRADest (excluding the zone index, if one + is present) is x, then the bitwise logical-AND + of x with the value of the mask formed from the + corresponding index object isisIPRADestPrefixLen MUST be + equal to x. If not, then the index pair is not + consistent, and an inconsistentName error must be + returned on SET or CREATE requests.--IPI Comments: Not Supported" + ::= { isisIPRAEntry 3 } + + isisIPRANextHopIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Index of next hop. Used when there are multiple Equal + Cost Multipath alternatives for the same destination.--IPI Comments: Not Supported" + ::= { isisIPRAEntry 4 } + + isisIPRANextHopType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of the IP next hop address.--IPI Comments: Not Supported" + ::= { isisIPRAEntry 5 } + + + + isisIPRANextHop OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The IP next hop to this destination. + + The type of this address is determined by the value of + the isisIPRANextHopType object.--IPI Comments: Not Supported" + ::= { isisIPRAEntry 6 } + + isisIPRAType OBJECT-TYPE + SYNTAX INTEGER + { + manual (1), + automatic (2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type of this IP Reachable Address. Those of type + manual are created by the network manager. Those of type + automatic are created through propagation of routing + information from another routing protocol. This object + follows the ManualOrAutomatic behavior.--IPI Comments: Not Supported" + ::= { isisIPRAEntry 7 } + + isisIPRAExistState OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The state of this IP Reachable Address. This object + follows the ExistenceState and ManualOrAutomatic + behaviors. Support for 'createAndWait' and + 'notInService' is not required. + + A row entry cannot be modified when the value of this + object is 'active'.--IPI Comments: Not Supported" + ::= { isisIPRAEntry 8 } + + isisIPRAAdminState OBJECT-TYPE + SYNTAX IsisAdminState + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The administrative state of the IP Reachable Address. This + object follows the IsisAdminState and ManualOrAutomatic + + + + behaviors.--IPI Comments: Not Supported" + DEFVAL { off } + ::= { isisIPRAEntry 9 } + + isisIPRAMetric OBJECT-TYPE + SYNTAX IsisDefaultMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric value for reaching the specified + destination over this circuit. This object follows the + ManualOrAutomatic behavior.--IPI Comments: Not Supported" + DEFVAL { 10 } + ::= { isisIPRAEntry 10 } + + isisIPRAMetricType OBJECT-TYPE + SYNTAX IsisMetricType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether the metric is internal or + external. This object follows the ManualOrAutomatic + behavior.--IPI Comments: Not Supported" + DEFVAL { internal } + ::= { isisIPRAEntry 11 } + + isisIPRAFullMetric OBJECT-TYPE + SYNTAX IsisFullMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The wide metric value for reaching the specified + destination over this circuit. This object follows the + ManualOrAutomatic behavior.--IPI Comments: Not Supported" + DEFVAL { 10 } + ::= { isisIPRAEntry 12 } + + isisIPRASNPAAddress OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The SNPA Address to which a PDU may be forwarded in + order to reach a destination that matches this IP + Reachable Address. This object follows the + ManualOrAutomatic behavior.--IPI Comments: Not Supported" + DEFVAL { ''H } + ::= { isisIPRAEntry 13 } + + + + isisIPRASourceType OBJECT-TYPE + SYNTAX INTEGER + { + static (1), + direct (2), + ospfv2 (3), + ospfv3 (4), + isis (5), + rip (6), + igrp (7), + eigrp (8), + bgp (9), + other (10) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The origin of this route.--IPI Comments: Not Supported" + ::= { isisIPRAEntry 14 } + +-- The LSP Database Table +-- +-- The first table provides Summary Information about LSPs +-- The next table provides a complete record + + isisLSPSummaryTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisLSPSummaryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table of LSP Headers." + ::= { isisLSPDataBase 1 } + + isisLSPSummaryEntry OBJECT-TYPE + SYNTAX IsisLSPSummaryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry provides a summary describing an + LSP currently stored in the system. + + Dynamically learned rows will not survive an + agent reboot." + INDEX { isisLSPLevel, + isisLSPID } + ::= { isisLSPSummaryTable 1 } + + IsisLSPSummaryEntry ::= + + + + SEQUENCE { + isisLSPLevel + IsisISLevel, + isisLSPID + IsisLinkStatePDUID, + isisLSPSeq + Unsigned32, + isisLSPZeroLife + TruthValue, + isisLSPChecksum + IsisUnsigned16TC, + isisLSPLifetimeRemain + IsisUnsigned16TC, + isisLSPPDULength + IsisUnsigned16TC, + isisLSPAttributes + IsisUnsigned8TC + } + + isisLSPLevel OBJECT-TYPE + SYNTAX IsisISLevel + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "At which level does this LSP appear?" + ::= { isisLSPSummaryEntry 1 } + + isisLSPID OBJECT-TYPE + SYNTAX IsisLinkStatePDUID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 8-byte LSP ID for this Link State PDU." + ::= { isisLSPSummaryEntry 2 } + + isisLSPSeq OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number for this LSP." + ::= { isisLSPSummaryEntry 3 } + + isisLSPZeroLife OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "Is this LSP being purged by this system?" + ::= { isisLSPSummaryEntry 4 } + + isisLSPChecksum OBJECT-TYPE + SYNTAX IsisUnsigned16TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 16-bit Fletcher Checksum for this LSP." + ::= { isisLSPSummaryEntry 5 } + + isisLSPLifetimeRemain OBJECT-TYPE + SYNTAX IsisUnsigned16TC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The remaining lifetime, in seconds, for this LSP." + ::= { isisLSPSummaryEntry 6 } + + isisLSPPDULength OBJECT-TYPE + SYNTAX IsisUnsigned16TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The length of this LSP." + ::= { isisLSPSummaryEntry 7 } + + isisLSPAttributes OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Flags carried by the LSP." + ::= { isisLSPSummaryEntry 8 } + +-- LSP Table +-- +-- The full LSP as a sequence of {Type, Len, Value} tuples +-- Since the underlying LSP may have changed while downloading +-- TLVs, we provide the Sequence number and Checksum for each +-- LSP TLV, so the network manager may verify that they are +-- still working on the same version of the LSP. + + isisLSPTLVTable OBJECT-TYPE + SYNTAX SEQUENCE OF IsisLSPTLVEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "The table of LSPs in the database." + ::= { isisLSPDataBase 2 } + + isisLSPTLVEntry OBJECT-TYPE + SYNTAX IsisLSPTLVEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry describes a TLV within + an LSP currently stored in the system. + + Dynamically learned rows will not survive an + agent reboot." + INDEX { isisLSPLevel, + isisLSPID, + isisLSPTLVIndex } + ::= { isisLSPTLVTable 1 } + + IsisLSPTLVEntry ::= + SEQUENCE { + isisLSPTLVIndex + Unsigned32, + isisLSPTLVSeq + Unsigned32, + isisLSPTLVChecksum + IsisUnsigned16TC, + isisLSPTLVType + IsisUnsigned8TC, + isisLSPTLVLen + IsisUnsigned8TC, + isisLSPTLVValue + OCTET STRING + } + + isisLSPTLVIndex OBJECT-TYPE + SYNTAX Unsigned32(1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index of this TLV in the LSP. The first TLV has + index 1, and the Nth TLV has an index of N." + ::= { isisLSPTLVEntry 1 } + + isisLSPTLVSeq OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "The sequence number for this LSP." + ::= { isisLSPTLVEntry 2 } + + isisLSPTLVChecksum OBJECT-TYPE + SYNTAX IsisUnsigned16TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 16-bit Fletcher Checksum for this LSP." + ::= { isisLSPTLVEntry 3 } + + isisLSPTLVType OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of this TLV." + ::= { isisLSPTLVEntry 4 } + + isisLSPTLVLen OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The length of this TLV." + ::= { isisLSPTLVEntry 5 } + + isisLSPTLVValue OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of this TLV." + ::= { isisLSPTLVEntry 6 } + + +-- The IS-IS Notification Table + +-- The IS-IS Notification Table records fields that are +-- required for notifications + + isisNotificationEntry OBJECT IDENTIFIER + ::= { isisNotification 1 } + + isisNotificationSysLevelIndex OBJECT-TYPE + SYNTAX IsisLevel + MAX-ACCESS accessible-for-notify + + + + STATUS current + DESCRIPTION + "The system level for this notification." + ::= { isisNotificationEntry 1 } + + isisNotificationCircIfIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..2147483647) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "The identifier of this circuit relevant to + this notification." + ::= { isisNotificationEntry 2 } + + isisPduLspId OBJECT-TYPE + SYNTAX IsisLinkStatePDUID + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "An Octet String that uniquely identifies + a Link State PDU." + ::= { isisNotificationEntry 3 } + + isisPduFragment OBJECT-TYPE + SYNTAX IsisPDUHeader + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds up to 64 initial bytes of a PDU that + triggered the notification." + ::= { isisNotificationEntry 4 } + + isisPduFieldLen OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the System ID length reported in PDU we received." + ::= { isisNotificationEntry 5 } + + isisPduMaxAreaAddress OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the Max Area Addresses reported in a PDU + we received." + ::= { isisNotificationEntry 6 } + + + + isisPduProtocolVersion OBJECT-TYPE + SYNTAX IsisUnsigned8TC + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the Protocol version reported in PDU we received." + ::= { isisNotificationEntry 7 } + + isisPduLspSize OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the size of LSP we received that is too + big to forward." + ::= { isisNotificationEntry 8 } + + isisPduOriginatingBufferSize OBJECT-TYPE + SYNTAX IsisUnsigned16TC (0..16000) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the size of isisSysLevelOrigLSPBuffSize advertised + by the peer in the originatingLSPBufferSize TLV. + If the peer does not advertise this TLV, this + value is set to 0." + ::= { isisNotificationEntry 9 } + + isisPduBufferSize OBJECT-TYPE + SYNTAX IsisUnsigned16TC (0..16000) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Holds the size of LSP received from peer." + ::= { isisNotificationEntry 10 } + + isisPduProtocolsSupported OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..255)) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "The list of protocols supported by an + adjacent system. This may be empty." + ::= { isisNotificationEntry 11 } + + isisAdjState OBJECT-TYPE + SYNTAX INTEGER + { + + + + down (1), + initializing (2), + up (3), + failed(4) + } + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "The current state of an adjacency." + ::= { isisNotificationEntry 12 } + + isisErrorOffset OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "An offset to a problem in a PDU. If the problem + is a malformed TLV, this points to the beginning + of the TLV. If the problem is in the header, this + points to the byte that is suspicious." + ::= { isisNotificationEntry 13 } + + isisErrorTLVType OBJECT-TYPE + SYNTAX Unsigned32 (0..255) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "The type for a malformed TLV." + ::= { isisNotificationEntry 14 } + + isisNotificationAreaAddress OBJECT-TYPE + SYNTAX IsisOSINSAddress + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "An Area Address." + ::= { isisNotificationEntry 15 } + +-- Notification definitions +-- +-- Note that notifications can be disabled by setting +-- isisSysNotificationEnable false + + isisDatabaseOverload NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisSysLevelState + } + + + + STATUS current + DESCRIPTION + "This notification is generated when the system + enters or leaves the Overload state. The number + of times this has been generated and cleared is kept + track of by isisSysStatLSPDbaseOloads." + ::= { isisNotifications 1 } + + isisManualAddressDrops NOTIFICATION-TYPE + OBJECTS { + isisNotificationAreaAddress + } + STATUS current + DESCRIPTION + "This notification is generated when one of the + manual areaAddresses assigned to this system is + ignored when computing routes. The object + isisNotificationAreaAddress describes the area that + has been dropped. + + The number of times this event has been generated + is counted by isisSysStatManAddrDropFromAreas. + + The agent must throttle the generation of + consecutive isisManualAddressDrops notifications + so that there is at least a 5-second gap between + notifications of this type. When notifications + are throttled, they are dropped, not queued for + sending at a future time." + ::= { isisNotifications 2 } + + isisCorruptedLSPDetected NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisPduLspId + } + STATUS current + DESCRIPTION + "This notification is generated when we find that + an LSP that was stored in memory has become + corrupted. The number of times this has been + generated is counted by isisSysCorrLSPs. + + We forward an LSP ID. We may have independent + knowledge of the ID, but in some implementations + there is a chance that the ID itself will be + corrupted." + + + + + ::= { isisNotifications 3 } + + isisAttemptToExceedMaxSequence NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisPduLspId + } + STATUS current + DESCRIPTION + "When the sequence number on an LSP we generate + wraps the 32-bit sequence counter, we purge and + wait to re-announce this information. This + notification describes that event. Since these + should not be generated rapidly, we generate + an event each time this happens. + + While the first 6 bytes of the LSPID are ours, + the other two contain useful information." + + ::= { isisNotifications 4 } + + isisIDLenMismatch NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisPduFieldLen, + isisNotificationCircIfIndex, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a PDU + with a different value for the System ID Length. + This notification includes an index to identify + the circuit where we saw the PDU and the header of + the PDU, which may help a network manager identify + the source of the confusion. + + The agent must throttle the generation of + consecutive isisIDLenMismatch notifications + so that there is at least a 5-second gap between + notifications of this type. When notifications + are throttled, they are dropped, not queued for + sending at a future time." + + ::= { isisNotifications 5 } + + isisMaxAreaAddressesMismatch NOTIFICATION-TYPE + OBJECTS { + + + + isisNotificationSysLevelIndex, + isisPduMaxAreaAddress, + isisNotificationCircIfIndex, + isisPduFragment + } + + STATUS current + DESCRIPTION + "A notification sent when we receive a PDU + with a different value for the Maximum Area + Addresses. This notification includes the + header of the packet, which may help a + network manager identify the source of the + confusion. + + The agent must throttle the generation of + consecutive isisMaxAreaAddressesMismatch + notifications so that there is at least a 5-second + gap between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 6 } + + isisOwnLSPPurge NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspId + } + STATUS current + DESCRIPTION + "A notification sent when we receive a PDU + with our systemID and zero age. This + notification includes the circuit Index + and router ID from the LSP, if available, + which may help a network manager + identify the source of the confusion." + + ::= { isisNotifications 7 } + + isisSequenceNumberSkip NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspId + } + STATUS current + + + + DESCRIPTION + "When we receive an LSP with our System ID + and different contents, we may need to reissue + the LSP with a higher sequence number. + + We send this notification if we need to increase + the sequence number by more than one. If two + Intermediate Systems are configured with the same + System ID, this notification will fire." + + ::= { isisNotifications 8 } + + isisAuthenticationTypeFailure NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a PDU + with the wrong authentication type field. + This notification includes the header of the + packet, which may help a network manager + identify the source of the confusion. + + The agent must throttle the generation of + consecutive isisAuthenticationTypeFailure + notifications so that there is at least a 5-second + gap between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 9 } + + isisAuthenticationFailure NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a PDU + with an incorrect authentication information + field. This notification includes the header + of the packet, which may help a network manager + identify the source of the confusion. + + + + The agent must throttle the generation of + consecutive isisAuthenticationFailure + notifications so that there is at least a 5-second + gap between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 10 } + + isisVersionSkew NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduProtocolVersion, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a Hello + PDU from an IS running a different version + of the protocol. This notification includes + the header of the packet, which may help a + network manager identify the source of the + confusion. + + The agent must throttle the generation of + consecutive isisVersionSkew notifications + so that there is at least a 5-second gap + between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 11 } + + isisAreaMismatch NOTIFICATION-TYPE + OBJECTS { + isisNotificationCircIfIndex, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a Hello + PDU from an IS that does not share any + area address. This notification includes + the header of the packet, which may help a + network manager identify the source of the + confusion. + + + + + The agent must throttle the generation of + consecutive isisAreaMismatch notifications + so that there is at least a 5-second gap + between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 12 } + + isisRejectedAdjacency NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when we receive a Hello + PDU from an IS but do not establish an + adjacency for some reason. + + The agent must throttle the generation of + consecutive isisRejectedAdjacency notifications + so that there is at least a 5-second gap + between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 13 } + + isisLSPTooLargeToPropagate NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspSize, + isisPduLspId + } + STATUS current + DESCRIPTION + "A notification sent when we attempt to propagate + an LSP that is larger than the dataLinkBlockSize + for the circuit. + + The agent must throttle the generation of + consecutive isisLSPTooLargeToPropagate notifications + so that there is at least a 5-second gap + between notifications of this type. When + notifications are throttled, they are dropped, not + + + + queued for sending at a future time." + + ::= { isisNotifications 14 } + + isisOrigLSPBuffSizeMismatch NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspId, + isisPduOriginatingBufferSize, + isisPduBufferSize + } + STATUS current + DESCRIPTION + "A notification sent when a Level 1 LSP or Level + 2 LSP is received that is larger than the local + value for isisSysLevelOrigLSPBuffSize, or when an + LSP is received that contains the supported Buffer Size + option and the value in the PDU option field does + not match the local value for isisSysLevelOrigLSPBuffSize. + We pass up the size from the option field and the + size of the LSP when one of them exceeds our configuration. + + The agent must throttle the generation of + consecutive isisOrigLSPBuffSizeMismatch notifications + so that there is at least a 5-second gap + between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 15 } + + isisProtocolsSupportedMismatch NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduProtocolsSupported, + isisPduLspId, + isisPduFragment + } + STATUS current + DESCRIPTION + "A notification sent when a non-pseudonode + segment 0 LSP is received that has no matching + protocols supported. This may be because the system + does not generate the field, or because there are no + common elements. The list of protocols supported + should be included in the notification: it may be + + + + empty if the TLV is not supported, or if the + TLV is empty. + + The agent must throttle the generation of + consecutive isisProtocolsSupportedMismatch + notifications so that there is at least a 5-second + gap between notifications of this type. When + notifications are throttled, they are dropped, not + queued for sending at a future time." + + ::= { isisNotifications 16 } + + isisAdjacencyChange NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspId, + isisAdjState + } + STATUS current + DESCRIPTION + "A notification sent when an adjacency changes + state, entering or leaving state up. + The first 6 bytes of the isisPduLspId are the + SystemID of the adjacent IS. + The isisAdjState is the new state of the adjacency." + + ::= { isisNotifications 17 } + + isisLSPErrorDetected NOTIFICATION-TYPE + OBJECTS { + isisNotificationSysLevelIndex, + isisPduLspId, + isisNotificationCircIfIndex, + isisPduFragment, + isisErrorOffset, + isisErrorTLVType + } + STATUS current + DESCRIPTION + "This notification is generated when we receive + an LSP with a parse error. The isisCircIfIndex + holds an index of the circuit on which the PDU + arrived. The isisPduFragment holds the start of the + LSP, and the isisErrorOffset points to the problem. + + If the problem is a malformed TLV, isisErrorOffset + points to the start of the TLV, and isisErrorTLVType + + + + holds the value of the type. + + If the problem is with the LSP header, isisErrorOffset + points to the suspicious byte. + + The number of such LSPs is accumulated in + isisSysStatLSPErrors." + + ::= { isisNotifications 18 } + +-- Agent Conformance Definitions +-- We define the objects a conformant agent must define + +isisCompliances OBJECT IDENTIFIER ::= { isisConformance 1 } +isisGroups OBJECT IDENTIFIER ::= { isisConformance 2 } + +-- compliance statements + + isisCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that support + the IS-IS MIB. + + There are a number of INDEX objects that cannot be + represented in the form of OBJECT clauses in SMIv2, + but for which there are compliance requirements. + Those requirements and similar requirements for + related objects are expressed below, in + pseudo-OBJECT clause form, in this description: + + -- OBJECT isisSummAddressType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 Summary + -- Addresses and anticipates the support of + -- IPv6 addresses. + -- + -- + -- OBJECT isisRedistributeAddrType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 + -- Redistribution Addresses and anticipates + -- the support of IPv6 addresses." + -- + + + + -- + -- OBJECT isisISAdjIPAddrType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 + -- Adjacency Addresses and anticipates the + -- support of IPv6 addresses. + MODULE -- this module + MANDATORY-GROUPS { + isisSystemGroup, + isisCircuitGroup, + isisISAdjGroup, + isisNotificationObjectGroup, + isisNotificationGroup + } + ::= { isisCompliances 1 } + + -- List of all groups, mandatory and optional + isisAdvancedCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that fully + support the IS-IS MIB. + + There are a number of INDEX objects that cannot be + represented in the form of OBJECT clauses in SMIv2, + but for which there are compliance requirements. + Those requirements and similar requirements for + related objects are expressed below, in + pseudo-OBJECT clause form, in this description: + + -- OBJECT isisSummAddressType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 Summary + -- Addresses and anticipates the support of + -- IPv6 addresses. + -- + -- + -- OBJECT isisRedistributeAddrType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 + -- Redistribution Addresses and anticipates + -- the support of IPv6 addresses." + + + + -- + -- + -- OBJECT isisISAdjIPAddrType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 + -- Adjacency Addresses and anticipates the + -- support of IPv6 addresses. + -- + -- + -- OBJECT isisIPRADestType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 RA + -- Addresses and anticipates the support of + -- IPv6 addresses. + -- + -- + -- OBJECT isisIPRANextHopType + -- SYNTAX InetAddressType { ipv4(1), ipv6(2) } + -- + -- DESCRIPTION + -- The MIB requires support for IPv4 NextHop + -- Addresses and anticipates the support of + -- IPv6 addresses. + MODULE -- this module + MANDATORY-GROUPS { + isisSystemGroup, + isisCircuitGroup, + isisISAdjGroup, + isisNotificationObjectGroup, + isisNotificationGroup, + isisISPDUCounterGroup, + isisRATableGroup, + isisISIPRADestGroup, + isisLSPGroup + } + ::= { isisCompliances 2 } + + isisReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "When this MIB is implemented without support for + read-create (i.e., in read-only mode), the + implementation can claim read-only compliance. Such + a device can then be monitored but cannot be + + + + configured with this MIB." + MODULE -- this module + MANDATORY-GROUPS { + isisSystemGroup, + isisCircuitGroup, + isisISAdjGroup + } + + OBJECT isisSysLevelType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysID + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysMaxPathSplits + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysMaxLSPGenInt + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysPollESHelloRate + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysWaitTime + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysAdminState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysL2toL1Leaking + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + OBJECT isisSysMaxAge + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisManAreaAddrExistState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelOrigLSPBuffSize + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelMinLSPGenInt + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelSetOverload + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelSetOverloadUntil + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelMetricStyle + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelSPFConsiders + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysLevelTEEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSysReceiveLSPBufferSize + MIN-ACCESS read-only + DESCRIPTION + + + + "Write access is not required." + + OBJECT isisSummAddrExistState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSummAddrMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisSummAddrFullMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisRedistributeAddrExistState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircAdminState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircExistState + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircExtDomain + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircPassiveCircuit + + + + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircMeshGroupEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircMeshGroup + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircSmallHellos + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircExtendedCircID + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircIfIndex + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCirc3WayEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelWideMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelISPriority + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + OBJECT isisCircLevelHelloMultiplier + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelHelloTimer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelDRHelloTimer + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelLSPThrottle + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelMinLSPRetransInt + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelCSNPInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT isisCircLevelPartSNPInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + ::= { isisCompliances 3 } + +-- MIB Grouping + + isisSystemGroup OBJECT-GROUP + OBJECTS { + isisSysVersion, + isisSysLevelType, + isisSysID, + isisSysMaxPathSplits, + isisSysMaxLSPGenInt, + isisSysPollESHelloRate, + isisSysWaitTime, + + + + isisSysAdminState, + isisSysL2toL1Leaking, + isisSysMaxAge, + isisSysProtSupported, + isisSysNotificationEnable, + isisManAreaAddrExistState, + isisSysLevelOrigLSPBuffSize, + isisSysLevelMinLSPGenInt, + isisSysLevelState, + isisSysLevelSetOverload, + isisSysLevelSetOverloadUntil, + isisSysLevelMetricStyle, + isisSysLevelSPFConsiders, + isisSysLevelTEEnabled, + isisSysReceiveLSPBufferSize, + isisSummAddrExistState, + isisSummAddrMetric, + isisAreaAddr, + isisSummAddrFullMetric, + isisRedistributeAddrExistState, + isisRouterHostName, + isisRouterID, + isisSysStatCorrLSPs, + isisSysStatLSPDbaseOloads, + isisSysStatManAddrDropFromAreas, + isisSysStatAttmptToExMaxSeqNums, + isisSysStatSeqNumSkips, + isisSysStatOwnLSPPurges, + isisSysStatIDFieldLenMismatches, + isisSysStatPartChanges, + isisSysStatSPFRuns, + isisSysStatAuthTypeFails, + isisSysStatAuthFails, + isisSysStatLSPErrors + } + STATUS current + DESCRIPTION + "The collections of objects used to manage an + IS-IS router." + ::= { isisGroups 1 } + + isisCircuitGroup OBJECT-GROUP + OBJECTS { + isisNextCircIndex, + isisCircAdminState, + isisCircExistState, + isisCircType, + isisCircExtDomain, + + + + isisCircLevelType, + isisCircAdjChanges, + isisCircNumAdj, + isisCircInitFails, + isisCircRejAdjs, + isisCircIDFieldLenMismatches, + isisCircMaxAreaAddrMismatches, + isisCircAuthTypeFails, + isisCircAuthFails, + isisCircLANDesISChanges, + isisCircPassiveCircuit, + isisCircMeshGroupEnabled, + isisCircMeshGroup, + isisCircSmallHellos, + isisCircLastUpTime, + isisCirc3WayEnabled, + isisCircExtendedCircID, + isisCircIfIndex, + isisCircLevelMetric, + isisCircLevelWideMetric, + isisCircLevelISPriority, + isisCircLevelIDOctet, + isisCircLevelID, + isisCircLevelDesIS, + isisCircLevelHelloMultiplier, + isisCircLevelHelloTimer, + isisCircLevelDRHelloTimer, + isisCircLevelLSPThrottle, + isisCircLevelMinLSPRetransInt, + isisCircLevelCSNPInterval, + isisCircLevelPartSNPInterval + } + STATUS current + DESCRIPTION + "The collections of objects used to describe an + IS-IS Circuit." + ::= { isisGroups 2 } + + isisISAdjGroup OBJECT-GROUP + OBJECTS { + isisISAdjState, + isisISAdj3WayState, + isisISAdjNeighSNPAAddress, + isisISAdjNeighSysType, + isisISAdjNeighSysID, + isisISAdjNbrExtendedCircID, + isisISAdjUsage, + isisISAdjHoldTimer, + + + + isisISAdjNeighPriority, + isisISAdjLastUpTime, + isisISAdjAreaAddress, + isisISAdjIPAddrType, + isisISAdjIPAddrAddress, + isisISAdjProtSuppProtocol + } + STATUS current + DESCRIPTION + "The collections of objects used to manage an + IS-IS Adjacency." + ::= { isisGroups 3 } + + isisNotificationObjectGroup OBJECT-GROUP + OBJECTS { + isisNotificationSysLevelIndex, + isisNotificationCircIfIndex, + isisPduLspId, + isisPduFragment, + isisPduFieldLen, + isisPduMaxAreaAddress, + isisPduProtocolVersion, + isisPduLspSize, + isisPduOriginatingBufferSize, + isisPduBufferSize, + isisPduProtocolsSupported, + isisAdjState, + isisErrorOffset, + isisErrorTLVType, + isisNotificationAreaAddress + } + STATUS current + DESCRIPTION + "The objects used to record notification parameters." + ::= { isisGroups 4 } + + + isisNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + isisDatabaseOverload, + isisManualAddressDrops, + isisCorruptedLSPDetected, + isisAttemptToExceedMaxSequence, + isisIDLenMismatch, + isisMaxAreaAddressesMismatch, + isisOwnLSPPurge, + isisSequenceNumberSkip, + isisAuthenticationTypeFailure, + + + + isisAuthenticationFailure, + isisVersionSkew, + isisAreaMismatch, + isisRejectedAdjacency, + isisLSPTooLargeToPropagate, + isisOrigLSPBuffSizeMismatch, + isisProtocolsSupportedMismatch, + isisAdjacencyChange, + isisLSPErrorDetected + } + STATUS current + DESCRIPTION + "The collections of notifications sent by an IS." + ::= { isisGroups 5 } + + + isisISPDUCounterGroup OBJECT-GROUP + OBJECTS { + isisPacketCountIIHello, + isisPacketCountISHello, + isisPacketCountESHello, + isisPacketCountLSP, + isisPacketCountCSNP, + isisPacketCountPSNP, + isisPacketCountUnknown + } + STATUS current + DESCRIPTION + "The collections of objects used to count protocol PDUs." + ::= { isisGroups 6 } + + + isisRATableGroup OBJECT-GROUP + OBJECTS { + isisRAExistState, + isisRAAdminState, + isisRAAddrPrefix, + isisRAMapType, + isisRAMetric, + isisRAMetricType, + isisRASNPAAddress, + isisRASNPAMask, + isisRASNPAPrefix, + isisRAType + } + STATUS current + DESCRIPTION + "The collections of objects used to manage the + + + + reachable NSAP prefixes." + ::= { isisGroups 7 } + + + isisISIPRADestGroup OBJECT-GROUP + OBJECTS { + isisIPRANextHopType, + isisIPRANextHop, + isisIPRAType, + isisIPRAExistState, + isisIPRAAdminState, + isisIPRAMetric, + isisIPRAFullMetric, + isisIPRAMetricType, + isisIPRASNPAAddress, + isisIPRASourceType + } + STATUS current + DESCRIPTION + "The collections of objects used to manage configured + IP addresses." + ::= { isisGroups 8 } + + isisLSPGroup OBJECT-GROUP + OBJECTS { + isisLSPSeq, + isisLSPZeroLife, + isisLSPChecksum, + isisLSPLifetimeRemain, + isisLSPPDULength, + isisLSPAttributes, + isisLSPTLVSeq, + isisLSPTLVChecksum, + isisLSPTLVType, + isisLSPTLVLen, + isisLSPTLVValue + } + STATUS current + DESCRIPTION + "The collections of objects used to observe the LSP + Database." + ::= { isisGroups 9 } + +END \ No newline at end of file diff --git a/mibs/RFC-4750-OSPF-MIB.txt b/mibs/RFC-4750-OSPF-MIB.txt new file mode 100644 index 00000000..b0c0314a --- /dev/null +++ b/mibs/RFC-4750-OSPF-MIB.txt @@ -0,0 +1,4398 @@ +OSPF-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Counter32, Gauge32, + Integer32, Unsigned32, IpAddress, mib-2 + FROM SNMPv2-SMI + TEXTUAL-CONVENTION, TruthValue, RowStatus, TimeStamp + FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF + InterfaceIndexOrZero + FROM IF-MIB; + +ospf MODULE-IDENTITY + LAST-UPDATED "200611100000Z" -- November 10, 2006 00:00:00 EST + ORGANIZATION "IETF OSPF Working Group" + CONTACT-INFO + "WG E-Mail: ospf@ietf.org + + WG Chairs: acee@cisco.com + rohit@gmail.com + + Editors: Dan Joyal + Nortel + 600 Technology Park Drive + Billerica, MA 01821 + djoyal@nortel.com + + Piotr Galecki + Airvana + 19 Alpha Road + Chelmsford, MA 01824 + pgalecki@airvana.com + + Spencer Giacalone + CSFB + Eleven Madison Ave + New York, NY 10010-3629 + spencer.giacalone@gmail.com" + + DESCRIPTION + "The MIB module to describe the OSPF Version 2 + Protocol. Note that some objects in this MIB + module may pose a significant security risk. + Refer to the Security Considerations section + in RFC 4750 for more information. + + + + Copyright (C) The IETF Trust (2006). + This version of this MIB module is part of + RFC 4750; see the RFC itself for full legal + notices." + + REVISION "200611100000Z" -- November 10, 2006 09:00:00 EST + DESCRIPTION + "Updated for latest changes to OSPF Version 2: + - updated the General Group with the new + ospfRFC1583Compatibility, ospfReferenceBandwidth + and ospfDiscontinuityTime objects + - added graceful-restart-related objects + - added stub-router-related objects + - updated the Area Table with NSSA-related objects + - added ospfAreaAggregateExtRouteTag object + - added Opaque LSA-related objects + - updates to the Compliances and Security sections + - added area LSA counter table + - added section describing translation of notification + parameters between SNMP versions + - added ospfComplianceObsolete to contain obsolete + object groups + - deprecated ospfExtLsdbTable + See Appendix B of RFC 4750 for more details. + + This version published as part of RFC 4750" + + REVISION "199501201225Z" -- Fri Jan 20 12:25:50 PST 1995 + DESCRIPTION + "The initial SMIv2 revision of this MIB module, published + in RFC 1850." + ::= { mib-2 14 } + +AreaID ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "An OSPF Area Identifier. + Note that the Area ID, in OSPF, has the same format + as an IP address, but has the function of defining + a summarization point for link state advertisements." + SYNTAX IpAddress + +RouterID ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "A OSPF Router Identifier. + Note that the Router ID, in OSPF, has the same format + as an IP address, but identifies the router independent + + + + of its IP address." + SYNTAX IpAddress + +Metric ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "The OSPF internal metric. + Note that the OSPF metric is defined as an unsigned value + in the range." + SYNTAX Integer32 (0..'FFFF'h) + +BigMetric ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "The OSPF external metric." + SYNTAX Integer32 (0..'FFFFFF'h) + +Status ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "An indication of the operability of an OSPF + function or feature. For example, the status + of an interface: 'enabled' indicates that + it is willing to communicate with other OSPF routers, + and 'disabled' indicates that it is not." + SYNTAX INTEGER { enabled (1), disabled (2) } + +PositiveInteger ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "A positive integer. Values in excess are precluded as + unnecessary and prone to interoperability issues." + SYNTAX Integer32 (0..'7FFFFFFF'h) + +HelloRange ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "The range of intervals in seconds on which Hello messages + are exchanged." + SYNTAX Integer32 (1..'FFFF'h) + +UpToMaxAge ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + + + + DESCRIPTION + "The values in seconds that one might find or configure + for variables bounded by the maximum age of an LSA." + SYNTAX Integer32 (0..3600) + +DesignatedRouterPriority ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "The range of values defined for the priority of a system + for becoming the designated router." + SYNTAX Integer32 (0..'FF'h) + +TOSType ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d-0" + STATUS current + DESCRIPTION + "Type of Service (TOS) is defined as a mapping to the IP + Type of Service Flags as defined in the IP Forwarding + Table MIB + + +-----+-----+-----+-----+-----+-----+-----+-----+ + | | | | + | PRECEDENCE | TYPE OF SERVICE | 0 | + | | | | + +-----+-----+-----+-----+-----+-----+-----+-----+ + + IP TOS IP TOS + Field Policy Field Policy + + Contents Code Contents Code + 0 0 0 0 ==> 0 0 0 0 1 ==> 2 + 0 0 1 0 ==> 4 0 0 1 1 ==> 6 + 0 1 0 0 ==> 8 0 1 0 1 ==> 10 + 0 1 1 0 ==> 12 0 1 1 1 ==> 14 + 1 0 0 0 ==> 16 1 0 0 1 ==> 18 + 1 0 1 0 ==> 20 1 0 1 1 ==> 22 + 1 1 0 0 ==> 24 1 1 0 1 ==> 26 + 1 1 1 0 ==> 28 1 1 1 1 ==> 30 + + The remaining values are left for future definition." + SYNTAX Integer32 (0..30) + +OspfAuthenticationType ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The authentication type." + SYNTAX INTEGER { + + + + none (0), + simplePassword (1), + md5 (2) + -- reserved for specification by IANA (> 2) + } + +-- OSPF General Variables + +-- Note: These parameters apply globally to the Router's +-- OSPF Process. + +ospfGeneralGroup OBJECT IDENTIFIER ::= { ospf 1 } + + ospfRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying the + router in the Autonomous System. + By convention, to ensure uniqueness, this + should default to the value of one of the + router's IP interface addresses. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile storage." + REFERENCE + "OSPF Version 2, C.1 Global parameters" + ::= { ospfGeneralGroup 1 } + + ospfAdminStat OBJECT-TYPE + SYNTAX Status + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative status of OSPF in the + router. The value 'enabled' denotes that the + OSPF Process is active on at least one interface; + 'disabled' disables it on all interfaces. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile storage." + ::= { ospfGeneralGroup 2 } + + ospfVersionNumber OBJECT-TYPE + SYNTAX INTEGER { version2 (2) } + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "The current version number of the OSPF protocol is 2." + REFERENCE + "OSPF Version 2, Title" + ::= { ospfGeneralGroup 3 } + + ospfAreaBdrRtrStatus OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A flag to note whether this router is an Area + Border Router." + REFERENCE + "OSPF Version 2, Section 3 Splitting the AS into + Areas" + ::= { ospfGeneralGroup 4 } + + ospfASBdrRtrStatus OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A flag to note whether this router is configured as + an Autonomous System Border Router. + + This object is persistent and when written the + entity SHOULD save the change to non-volatile storage." + REFERENCE + "OSPF Version 2, Section 3.3 Classification of + routers" + ::= { ospfGeneralGroup 5 } + + ospfExternLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of external (LS type-5) link state + advertisements in the link state database." + REFERENCE + "OSPF Version 2, Appendix A.4.5 AS external link + advertisements" + ::= { ospfGeneralGroup 6 } + + ospfExternLsaCksumSum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "The 32-bit sum of the LS checksums of + the external link state advertisements + contained in the link state database. This sum + can be used to determine if there has been a + change in a router's link state database and + to compare the link state database of two + routers. The value should be treated as unsigned + when comparing two sums of checksums." + ::= { ospfGeneralGroup 7 } + + ospfTOSSupport OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The router's support for type-of-service routing. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix F.1.2 Optional TOS + support" + ::= { ospfGeneralGroup 8 } + + ospfOriginateNewLsas OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of new link state advertisements + that have been originated. This number is + incremented each time the router originates a new + LSA. + + Discontinuities in the value of this counter can + occur at re-initialization of the management system, + and at other times as indicated by the value of + ospfDiscontinuityTime." + ::= { ospfGeneralGroup 9 } + + ospfRxNewLsas OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "The number of link state advertisements received + that are determined to be new instantiations. + This number does not include newer instantiations + of self-originated link state advertisements. + + Discontinuities in the value of this counter can + occur at re-initialization of the management system, + and at other times as indicated by the value of + ospfDiscontinuityTime." + ::= { ospfGeneralGroup 10 } + + ospfExtLsdbLimit OBJECT-TYPE + SYNTAX Integer32 (-1..'7FFFFFFF'h) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The maximum number of non-default + AS-external LSAs entries that can be stored in the + link state database. If the value is -1, then + there is no limit. + + When the number of non-default AS-external LSAs + in a router's link state database reaches + ospfExtLsdbLimit, the router enters + overflow state. The router never holds more than + ospfExtLsdbLimit non-default AS-external LSAs + in its database. OspfExtLsdbLimit MUST be set + identically in all routers attached to the OSPF + backbone and/or any regular OSPF area (i.e., + OSPF stub areas and NSSAs are excluded). + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + DEFVAL { -1 } + ::= { ospfGeneralGroup 11 } + + ospfMulticastExtensions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A bit mask indicating whether the router is + forwarding IP multicast (Class D) datagrams + based on the algorithms defined in the + multicast extensions to OSPF. + + Bit 0, if set, indicates that the router can + + + + forward IP multicast datagrams in the router's + directly attached areas (called intra-area + multicast routing). + + Bit 1, if set, indicates that the router can + forward IP multicast datagrams between OSPF + areas (called inter-area multicast routing). + + Bit 2, if set, indicates that the router can + forward IP multicast datagrams between + Autonomous Systems (called inter-AS multicast + routing). + + Only certain combinations of bit settings are + allowed, namely: 0 (no multicast forwarding is + enabled), 1 (intra-area multicasting only), 3 + (intra-area and inter-area multicasting), 5 + (intra-area and inter-AS multicasting), and 7 + (multicasting everywhere). By default, no + multicast forwarding is enabled. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + DEFVAL { 0 } + ::= { ospfGeneralGroup 12 } + + ospfExitOverflowInterval OBJECT-TYPE + SYNTAX PositiveInteger + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The number of seconds that, after entering + OverflowState, a router will attempt to leave + OverflowState. This allows the router to again + originate non-default AS-external LSAs. When + set to 0, the router will not leave + overflow state until restarted. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + DEFVAL { 0 } + ::= { ospfGeneralGroup 13 } + + ospfDemandExtensions OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + + + + STATUS current + DESCRIPTION + "The router's support for demand routing. + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "Extending OSPF to Support Demand Circuits" + ::= { ospfGeneralGroup 14 } + + ospfRFC1583Compatibility OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates metrics used to choose among multiple + AS-external LSAs. When RFC1583Compatibility is set to + enabled, only cost will be used when choosing among + multiple AS-external LSAs advertising the same + destination. When RFC1583Compatibility is set to + disabled, preference will be driven first by type of + path using cost only to break ties. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Section 16.4.1 External path + preferences" + ::= { ospfGeneralGroup 15 } + + ospfOpaqueLsaSupport OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The router's support for Opaque LSA types." + REFERENCE + "The OSPF Opaque LSA Option" + ::= { ospfGeneralGroup 16 } + + ospfReferenceBandwidth OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "kilobits per second" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Reference bandwidth in kilobits/second for + + + + calculating default interface metrics. The + default value is 100,000 KBPS (100 MBPS). + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + ::= { ospfGeneralGroup 17 } + + ospfRestartSupport OBJECT-TYPE + SYNTAX INTEGER { none (1), + plannedOnly (2), + plannedAndUnplanned (3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The router's support for OSPF graceful restart. + Options include: no restart support, only planned + restarts, or both planned and unplanned restarts. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + ::= { ospfGeneralGroup 18 } + + ospfRestartInterval OBJECT-TYPE + SYNTAX Integer32 (1..1800) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Configured OSPF graceful restart timeout interval. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + ::= { ospfGeneralGroup 19 } + + ospfRestartStrictLsaChecking OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates if strict LSA checking is enabled for + graceful restart. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + + + + storage." + ::= { ospfGeneralGroup 20 } + + + ospfRestartStatus OBJECT-TYPE + SYNTAX INTEGER { notRestarting (1), + plannedRestart (2), + unplannedRestart (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Current status of OSPF graceful restart." + ::= { ospfGeneralGroup 21 } + + ospfRestartAge OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in current OSPF graceful restart + interval." + ::= { ospfGeneralGroup 22 } + + ospfRestartExitReason OBJECT-TYPE + SYNTAX INTEGER { none (1), -- none attempted + inProgress (2), -- restart in + -- progress + completed (3), -- successfully + -- completed + timedOut (4), -- timed out + topologyChanged (5) -- aborted due to + -- topology change. + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Describes the outcome of the last attempt at a + graceful restart. If the value is 'none', no restart + has yet been attempted. If the value is 'inProgress', + a restart attempt is currently underway." + ::= { ospfGeneralGroup 23 } + + ospfAsLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "The number of AS-scope link state + advertisements in the AS-scope link state database." + ::= { ospfGeneralGroup 24 } + + ospfAsLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the LS checksums of + the AS link state advertisements contained in the AS-scope + link state database. This sum can be used to determine + if there has been a change in a router's AS-scope link + state database, and to compare the AS-scope link state + database of two routers." + ::= { ospfGeneralGroup 25 } + + ospfStubRouterSupport OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The router's support for stub router functionality." + REFERENCE + "OSPF Stub Router Advertisement" + ::= { ospfGeneralGroup 26 } + + ospfStubRouterAdvertisement OBJECT-TYPE + SYNTAX INTEGER { + doNotAdvertise (1), + advertise(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object controls the advertisement of + stub router LSAs by the router. The value + doNotAdvertise will result in the advertisement + of a standard router LSA and is the default value. + + This object is persistent and when written + the entity SHOULD save the change to non-volatile + storage." + ::= { ospfGeneralGroup 27 } + + ospfDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one of this MIB's counters suffered + a discontinuity. + + If no such discontinuities have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." + ::= { ospfGeneralGroup 28 } + + +-- OSPF Area Table +-- The OSPF Area Table contains information +-- regarding the various areas. + + ospfAreaTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfAreaEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information describing the configured parameters and + cumulative statistics of the router's attached areas. + The interfaces and virtual links are configured + as part of these areas. Area 0.0.0.0, by definition, + is the backbone area." + REFERENCE + "OSPF Version 2, Section 6 The Area Data Structure" + ::= { ospf 2 } + + ospfAreaEntry OBJECT-TYPE + SYNTAX OspfAreaEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information describing the configured parameters and + cumulative statistics of one of the router's attached areas. + The interfaces and virtual links are configured as part of + these areas. Area 0.0.0.0, by definition, is the backbone + area. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + INDEX { ospfAreaId } + ::= { ospfAreaTable 1 } + + + + + OspfAreaEntry ::= + SEQUENCE { + ospfAreaId + AreaID, + ospfAuthType + OspfAuthenticationType, + ospfImportAsExtern + INTEGER, + ospfSpfRuns + Counter32, + ospfAreaBdrRtrCount + Gauge32, + ospfAsBdrRtrCount + Gauge32, + ospfAreaLsaCount + Gauge32, + ospfAreaLsaCksumSum + Integer32, + ospfAreaSummary + INTEGER, + ospfAreaStatus + RowStatus, + ospfAreaNssaTranslatorRole + INTEGER, + ospfAreaNssaTranslatorState + INTEGER, + ospfAreaNssaTranslatorStabilityInterval + PositiveInteger, + ospfAreaNssaTranslatorEvents + Counter32 + } + + ospfAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally + -- an SMIv1 index + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying an area. + Area ID 0.0.0.0 is used for the OSPF backbone." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaEntry 1 } + + ospfAuthType OBJECT-TYPE + SYNTAX OspfAuthenticationType + MAX-ACCESS read-create + STATUS obsolete + + + + DESCRIPTION + "The authentication type specified for an area." + REFERENCE + "OSPF Version 2, Appendix D Authentication" + DEFVAL { none } -- no authentication, by default + ::= { ospfAreaEntry 2 } + + ospfImportAsExtern OBJECT-TYPE + SYNTAX INTEGER { + importExternal (1), + importNoExternal (2), + importNssa (3) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates if an area is a stub area, NSSA, or standard + area. Type-5 AS-external LSAs and type-11 Opaque LSAs are + not imported into stub areas or NSSAs. NSSAs import + AS-external data as type-7 LSAs" + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + DEFVAL { importExternal } + ::= { ospfAreaEntry 3 } + + ospfSpfRuns OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times that the intra-area route + table has been calculated using this area's + link state database. This is typically done + using Dijkstra's algorithm. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfAreaEntry 4 } + + ospfAreaBdrRtrCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of Area Border Routers reachable + within this area. This is initially zero and is + calculated in each Shortest Path First (SPF) pass." + + + + ::= { ospfAreaEntry 5 } + + ospfAsBdrRtrCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of Autonomous System Border + Routers reachable within this area. This is + initially zero and is calculated in each SPF + pass." + ::= { ospfAreaEntry 6 } + + ospfAreaLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of link state advertisements + in this area's link state database, excluding + AS-external LSAs." + ::= { ospfAreaEntry 7 } + + ospfAreaLsaCksumSum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit sum of the link state + advertisements' LS checksums contained in this + area's link state database. This sum excludes + external (LS type-5) link state advertisements. + The sum can be used to determine if there has + been a change in a router's link state + database, and to compare the link state database of + two routers. The value should be treated as unsigned + when comparing two sums of checksums." + DEFVAL { 0 } + ::= { ospfAreaEntry 8 } + + ospfAreaSummary OBJECT-TYPE + SYNTAX INTEGER { + noAreaSummary (1), + sendAreaSummary (2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + + "The variable ospfAreaSummary controls the + import of summary LSAs into stub and NSSA areas. + It has no effect on other areas. + + If it is noAreaSummary, the router will not + originate summary LSAs into the stub or NSSA area. + It will rely entirely on its default route. + + If it is sendAreaSummary, the router will both + summarize and propagate summary LSAs." + DEFVAL { noAreaSummary } + ::= { ospfAreaEntry 9 } + + ospfAreaStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfAreaEntry 10 } + + ospfAreaNssaTranslatorRole OBJECT-TYPE + SYNTAX INTEGER { always (1), candidate (2) } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates an NSSA border router's ability to + perform NSSA translation of type-7 LSAs into + type-5 LSAs." + DEFVAL { candidate } + ::= { ospfAreaEntry 11 } + + ospfAreaNssaTranslatorState OBJECT-TYPE + SYNTAX INTEGER { enabled (1), + elected (2), + disabled (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates if and how an NSSA border router is + performing NSSA translation of type-7 LSAs into type-5 + + + + LSAs. When this object is set to enabled, the NSSA Border + router's OspfAreaNssaExtTranslatorRole has been set to + always. When this object is set to elected, a candidate + NSSA Border router is Translating type-7 LSAs into type-5. + When this object is set to disabled, a candidate NSSA + border router is NOT translating type-7 LSAs into type-5." + ::= { ospfAreaEntry 12 } + + ospfAreaNssaTranslatorStabilityInterval OBJECT-TYPE + SYNTAX PositiveInteger + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds after an elected translator + determines its services are no longer required, that + it should continue to perform its translation duties." + DEFVAL { 40 } + ::= { ospfAreaEntry 13 } + + ospfAreaNssaTranslatorEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the number of translator state changes + that have occurred since the last boot-up. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfAreaEntry 14 } + +-- OSPF Area Default Metric Table + + ospfStubAreaTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfStubAreaEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The set of metrics that will be advertised + by a default Area Border Router into a stub area." + REFERENCE + "OSPF Version 2, Appendix C.2, Area Parameters" + ::= { ospf 3 } + + ospfStubAreaEntry OBJECT-TYPE + SYNTAX OspfStubAreaEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The metric for a given Type of Service that + will be advertised by a default Area Border + Router into a stub area. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix C.2, Area Parameters" + INDEX { ospfStubAreaId, ospfStubTOS } + ::= { ospfStubAreaTable 1 } + + OspfStubAreaEntry ::= + SEQUENCE { + ospfStubAreaId + AreaID, + ospfStubTOS + TOSType, + ospfStubMetric + BigMetric, + ospfStubStatus + RowStatus, + ospfStubMetricType + INTEGER + } + + ospfStubAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The 32-bit identifier for the stub area. On + creation, this can be derived from the + instance." + ::= { ospfStubAreaEntry 1 } + + ospfStubTOS OBJECT-TYPE + SYNTAX TOSType + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The Type of Service associated with the + metric. On creation, this can be derived from + + + + the instance." + ::= { ospfStubAreaEntry 2 } + + ospfStubMetric OBJECT-TYPE + SYNTAX BigMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric value applied at the indicated Type + of Service. By default, this equals the least + metric at the Type of Service among the + interfaces to other areas." + ::= { ospfStubAreaEntry 3 } + + ospfStubStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfStubAreaEntry 4 } + + ospfStubMetricType OBJECT-TYPE + SYNTAX INTEGER { + ospfMetric (1), -- OSPF Metric + comparableCost (2), -- external type 1 + nonComparable (3) -- external type 2 + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable displays the type of metric + advertised as a default route." + DEFVAL { ospfMetric } + ::= { ospfStubAreaEntry 5 } + +-- OSPF Link State Database + + ospfLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfLsdbEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "The OSPF Process's link state database (LSDB). + The LSDB contains the link state advertisements + from throughout the areas that the device is attached to." + REFERENCE + "OSPF Version 2, Section 12 Link State Advertisements" + ::= { ospf 4 } + + ospfLsdbEntry OBJECT-TYPE + SYNTAX OspfLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single link state advertisement." + INDEX { ospfLsdbAreaId, ospfLsdbType, + ospfLsdbLsid, ospfLsdbRouterId } + ::= { ospfLsdbTable 1 } + + OspfLsdbEntry ::= + SEQUENCE { + ospfLsdbAreaId + AreaID, + ospfLsdbType + INTEGER, + ospfLsdbLsid + IpAddress, + ospfLsdbRouterId + RouterID, + ospfLsdbSequence + Integer32, + ospfLsdbAge + Integer32, + ospfLsdbChecksum + Integer32, + ospfLsdbAdvertisement + OCTET STRING + } + + ospfLsdbAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The 32-bit identifier of the area from which + the LSA was received." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + + + + ::= { ospfLsdbEntry 1 } + + ospfLsdbType OBJECT-TYPE + SYNTAX INTEGER { + routerLink (1), + networkLink (2), + summaryLink (3), + asSummaryLink (4), + asExternalLink (5), -- but see ospfAsLsdbTable + multicastLink (6), + nssaExternalLink (7), + areaOpaqueLink (10) + } + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate advertisement + format. + + Note: External link state advertisements are permitted + for backward compatibility, but should be displayed + in the ospfAsLsdbTable rather than here." + REFERENCE + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + ::= { ospfLsdbEntry 2 } + + ospfLsdbLsid OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The Link State ID is an LS Type Specific field + containing either a Router ID or an IP address; + it identifies the piece of the routing domain + that is being described by the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.4 Link State ID" + ::= { ospfLsdbEntry 3 } + + ospfLsdbRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + + + + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1 Global parameters" + ::= { ospfLsdbEntry 4 } + + ospfLsdbSequence OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It starts with the value '80000001'h, + or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + Thus, a typical sequence number will be very negative. + It is used to detect old and duplicate Link State + Advertisements. The space of sequence numbers is linearly + ordered. The larger the sequence number, the more recent + the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6 LS sequence + number" + ::= { ospfLsdbEntry 5 } + + ospfLsdbAge OBJECT-TYPE + SYNTAX Integer32 -- Should be 0..MaxAge, except when + -- doNotAge bit is set + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state advertisement + in seconds." + REFERENCE + "OSPF Version 2, Section 12.1.1 LS age" + ::= { ospfLsdbEntry 6 } + + ospfLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete contents of + the advertisement, excepting the age field. The age field + is excepted so that an advertisement's age can be + incremented without updating the checksum. The checksum + used is the same that is used for ISO connectionless + + + + datagrams; it is commonly referred to as the + Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7 LS checksum" + ::= { ospfLsdbEntry 7 } + + ospfLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header. + + Note that for variable length LSAs, SNMP agents + may not be able to return the largest string size." + REFERENCE + "OSPF Version 2, Section 12 Link State Advertisements" + ::= { ospfLsdbEntry 8 } + +-- Address Range Table + + ospfAreaRangeTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfAreaRangeEntry + MAX-ACCESS not-accessible + STATUS obsolete + DESCRIPTION + "The Address Range Table acts as an adjunct to the Area + Table. It describes those Address Range Summaries that + are configured to be propagated from an Area to reduce + the amount of information about it that is known beyond + its borders. It contains a set of IP address ranges + specified by an IP address/IP network mask pair. + For example, class B address range of X.X.X.X + with a network mask of 255.255.0.0 includes all IP + addresses from X.X.0.0 to X.X.255.255. + + Note that this table is obsoleted and is replaced + by the Area Aggregate Table." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospf 5 } + + ospfAreaRangeEntry OBJECT-TYPE + SYNTAX OspfAreaRangeEntry + MAX-ACCESS not-accessible + STATUS obsolete + DESCRIPTION + + + + "A single area address range. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + INDEX { ospfAreaRangeAreaId, ospfAreaRangeNet } + ::= { ospfAreaRangeTable 1 } + + OspfAreaRangeEntry ::= + SEQUENCE { + ospfAreaRangeAreaId + AreaID, + ospfAreaRangeNet + IpAddress, + ospfAreaRangeMask + IpAddress, + ospfAreaRangeStatus + RowStatus, + ospfAreaRangeEffect + INTEGER + } + + ospfAreaRangeAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS obsolete + DESCRIPTION + "The area that the address range is to be found + within." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaRangeEntry 1 } + + ospfAreaRangeNet OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS obsolete + DESCRIPTION + "The IP address of the net or subnet indicated + by the range." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaRangeEntry 2 } + + + + + ospfAreaRangeMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-create + STATUS obsolete + DESCRIPTION + "The subnet mask that pertains to the net or + subnet." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaRangeEntry 3 } + + ospfAreaRangeStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS obsolete + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfAreaRangeEntry 4 } + + ospfAreaRangeEffect OBJECT-TYPE + SYNTAX INTEGER { + advertiseMatching (1), + doNotAdvertiseMatching (2) + } + MAX-ACCESS read-create + STATUS obsolete + DESCRIPTION + "Subnets subsumed by ranges either trigger the + advertisement of the indicated summary + (advertiseMatching) or result in the subnet's not + being advertised at all outside the area." + DEFVAL { advertiseMatching } + ::= { ospfAreaRangeEntry 5 } + +-- OSPF Host Table + + ospfHostTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfHostEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Host/Metric Table indicates what hosts are directly + + + + attached to the router, what metrics and types + of service should be advertised for them, + and what areas they are found within." + REFERENCE + "OSPF Version 2, Appendix C.7 Host route + parameters" + ::= { ospf 6 } + + ospfHostEntry OBJECT-TYPE + SYNTAX OspfHostEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A metric to be advertised, for a given type of + service, when a given host is reachable. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + INDEX { ospfHostIpAddress, ospfHostTOS } + ::= { ospfHostTable 1 } + + OspfHostEntry ::= + SEQUENCE { + ospfHostIpAddress + IpAddress, + ospfHostTOS + TOSType, + ospfHostMetric + Metric, + ospfHostStatus + RowStatus, + ospfHostAreaID + AreaID, + ospfHostCfgAreaID + AreaID + } + + ospfHostIpAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The IP address of the host." + REFERENCE + "OSPF Version 2, Appendix C.7 Host route parameters" + ::= { ospfHostEntry 1 } + + + + ospfHostTOS OBJECT-TYPE + SYNTAX TOSType + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The Type of Service of the route being configured." + REFERENCE + "OSPF Version 2, Appendix C.7 Host route parameters" + ::= { ospfHostEntry 2 } + + ospfHostMetric OBJECT-TYPE + SYNTAX Metric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric to be advertised." + REFERENCE + "OSPF Version 2, Appendix C.7 Host route parameters" + ::= { ospfHostEntry 3 } + + ospfHostStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfHostEntry 4 } + + ospfHostAreaID OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "The OSPF area to which the host belongs. + Deprecated by ospfHostCfgAreaID." + REFERENCE + "OSPF Version 2, Appendix C.7 Host parameters" + ::= { ospfHostEntry 5 } + + ospfHostCfgAreaID OBJECT-TYPE + SYNTAX AreaID + + + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "To configure the OSPF area to which the host belongs." + REFERENCE + "OSPF Version 2, Appendix C.7 Host parameters" + ::= { ospfHostEntry 6 } + +-- OSPF Interface Table + + ospfIfTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPF Interface Table describes the interfaces + from the viewpoint of OSPF. + It augments the ipAddrTable with OSPF specific information." + REFERENCE + "OSPF Version 2, Appendix C.3 Router interface + parameters" + ::= { ospf 7 } + + ospfIfEntry OBJECT-TYPE + SYNTAX OspfIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPF interface entry describes one interface + from the viewpoint of OSPF. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + INDEX { ospfIfIpAddress, ospfAddressLessIf } + ::= { ospfIfTable 1 } + + OspfIfEntry ::= + SEQUENCE { + ospfIfIpAddress + IpAddress, + ospfAddressLessIf + InterfaceIndexOrZero, + ospfIfAreaId + AreaID, + ospfIfType + INTEGER, + ospfIfAdminStat + + + + Status, + ospfIfRtrPriority + DesignatedRouterPriority, + ospfIfTransitDelay + UpToMaxAge, + ospfIfRetransInterval + UpToMaxAge, + ospfIfHelloInterval + HelloRange, + ospfIfRtrDeadInterval + PositiveInteger, + ospfIfPollInterval + PositiveInteger, + ospfIfState + INTEGER, + ospfIfDesignatedRouter + IpAddress, + ospfIfBackupDesignatedRouter + IpAddress, + ospfIfEvents + Counter32, + ospfIfAuthKey + OCTET STRING, + ospfIfStatus + RowStatus, + ospfIfMulticastForwarding + INTEGER, + ospfIfDemand + TruthValue, + ospfIfAuthType + OspfAuthenticationType, + ospfIfLsaCount + Gauge32, + ospfIfLsaCksumSum + Unsigned32, + ospfIfDesignatedRouterId + RouterID, + ospfIfBackupDesignatedRouterId + RouterID + } + + ospfIfIpAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The IP address of this OSPF interface." + + + + ::= { ospfIfEntry 1 } + + ospfAddressLessIf OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "For the purpose of easing the instancing of + addressed and addressless interfaces; this + variable takes the value 0 on interfaces with + IP addresses and the corresponding value of + ifIndex for interfaces having no IP address." + ::= { ospfIfEntry 2 } + + ospfIfAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying the area + to which the interface connects. Area ID + 0.0.0.0 is used for the OSPF backbone." + DEFVAL { '00000000'H } -- 0.0.0.0 + ::= { ospfIfEntry 3 } + + ospfIfType OBJECT-TYPE + SYNTAX INTEGER { + broadcast (1), + nbma (2), + pointToPoint (3), + pointToMultipoint (5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The OSPF interface type. + By way of a default, this field may be intuited + from the corresponding value of ifType. + Broadcast LANs, such as Ethernet and IEEE 802.5, + take the value 'broadcast', X.25 and similar + technologies take the value 'nbma', and links + that are definitively point to point take the + value 'pointToPoint'." + ::= { ospfIfEntry 4 } + + ospfIfAdminStat OBJECT-TYPE + SYNTAX Status + + + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The OSPF interface's administrative status. + The value formed on the interface, and the interface + will be advertised as an internal route to some area. + The value 'disabled' denotes that the interface is + external to OSPF." + DEFVAL { enabled } + ::= { ospfIfEntry 5 } + + ospfIfRtrPriority OBJECT-TYPE + SYNTAX DesignatedRouterPriority + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The priority of this interface. Used in + multi-access networks, this field is used in + the designated router election algorithm. The + value 0 signifies that the router is not eligible + to become the designated router on this particular + network. In the event of a tie in this value, + routers will use their Router ID as a tie breaker." + DEFVAL { 1 } + ::= { ospfIfEntry 6 } + + ospfIfTransitDelay OBJECT-TYPE + SYNTAX UpToMaxAge + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The estimated number of seconds it takes to + transmit a link state update packet over this + interface. Note that the minimal value SHOULD be + 1 second." + DEFVAL { 1 } + ::= { ospfIfEntry 7 } + + ospfIfRetransInterval OBJECT-TYPE + SYNTAX UpToMaxAge + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds between link state advertisement + retransmissions, for adjacencies belonging to this + interface. This value is also used when retransmitting + + + + database description and Link State request packets. + Note that minimal value SHOULD be 1 second." + DEFVAL { 5 } + ::= { ospfIfEntry 8 } + + ospfIfHelloInterval OBJECT-TYPE + SYNTAX HelloRange + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The length of time, in seconds, between the Hello packets + that the router sends on the interface. This value must be + the same for all routers attached to a common network." + DEFVAL { 10 } + ::= { ospfIfEntry 9 } + + ospfIfRtrDeadInterval OBJECT-TYPE + SYNTAX PositiveInteger + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds that a router's Hello packets have + not been seen before its neighbors declare the router down. + This should be some multiple of the Hello interval. This + value must be the same for all routers attached to a common + network." + DEFVAL { 40 } + ::= { ospfIfEntry 10 } + + ospfIfPollInterval OBJECT-TYPE + SYNTAX PositiveInteger + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The larger time interval, in seconds, between the Hello + packets sent to an inactive non-broadcast multi-access + neighbor." + DEFVAL { 120 } + ::= { ospfIfEntry 11 } + + ospfIfState OBJECT-TYPE + SYNTAX INTEGER { + down (1), + loopback (2), + waiting (3), + + + + pointToPoint (4), + designatedRouter (5), + backupDesignatedRouter (6), + otherDesignatedRouter (7) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The OSPF Interface State." + DEFVAL { down } + ::= { ospfIfEntry 12 } + + ospfIfDesignatedRouter OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the designated router." + DEFVAL { '00000000'H } -- 0.0.0.0 + ::= { ospfIfEntry 13 } + + ospfIfBackupDesignatedRouter OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the backup designated + router." + DEFVAL { '00000000'H } -- 0.0.0.0 + ::= { ospfIfEntry 14 } + + ospfIfEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this OSPF interface has + changed its state or an error has occurred. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfIfEntry 15 } + + ospfIfAuthKey OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (0..256)) + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "The cleartext password used as an OSPF + authentication key when simplePassword security + is enabled. This object does not access any OSPF + cryptogaphic (e.g., MD5) authentication key under + any circumstance. + + If the key length is shorter than 8 octets, the + agent will left adjust and zero fill to 8 octets. + + Unauthenticated interfaces need no authentication + key, and simple password authentication cannot use + a key of more than 8 octets. + + Note that the use of simplePassword authentication + is NOT recommended when there is concern regarding + attack upon the OSPF system. SimplePassword + authentication is only sufficient to protect against + accidental misconfigurations because it re-uses + cleartext passwords [RFC1704]. + + When read, ospfIfAuthKey always returns an octet + string of length zero." + REFERENCE + "OSPF Version 2, Section 9 The Interface Data + Structure" + DEFVAL { '0000000000000000'H } -- 0.0.0.0.0.0.0.0 + ::= { ospfIfEntry 16 } + + ospfIfStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfIfEntry 17 } + + ospfIfMulticastForwarding OBJECT-TYPE + SYNTAX INTEGER { + blocked (1), -- no multicast forwarding + multicast (2), -- using multicast address + unicast (3) -- to each OSPF neighbor + + + + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The way multicasts should be forwarded on this + interface: not forwarded, forwarded as data + link multicasts, or forwarded as data link + unicasts. Data link multicasting is not + meaningful on point-to-point and NBMA interfaces, + and setting ospfMulticastForwarding to 0 effectively + disables all multicast forwarding." + DEFVAL { blocked } + ::= { ospfIfEntry 18 } + + ospfIfDemand OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether Demand OSPF procedures (hello + suppression to FULL neighbors and setting the + DoNotAge flag on propagated LSAs) should be + performed on this interface." + DEFVAL { false } + ::= { ospfIfEntry 19 } + + ospfIfAuthType OBJECT-TYPE + SYNTAX OspfAuthenticationType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The authentication type specified for an interface. + + Note that this object can be used to engage + in significant attacks against an OSPF router." + REFERENCE + "OSPF Version 2, Appendix D Authentication" + DEFVAL { none } -- no authentication, by default + ::= { ospfIfEntry 20 } + + ospfIfLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of link-local link state advertisements + in this interface's link-local link state database." + ::= { ospfIfEntry 21 } + + + + ospfIfLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the Link State + Advertisements' LS checksums contained in this + interface's link-local link state database. + The sum can be used to determine if there has + been a change in the interface's link state + database and to compare the interface link state + database of routers attached to the same subnet." + ::= { ospfIfEntry 22 } + + ospfIfDesignatedRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Router ID of the designated router." + ::= { ospfIfEntry 23 } + + ospfIfBackupDesignatedRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Router ID of the backup designated router." + ::= { ospfIfEntry 24 } + +-- OSPF Interface Metric Table + + ospfIfMetricTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfIfMetricEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Metric Table describes the metrics to be advertised + for a specified interface at the various types of service. + As such, this table is an adjunct of the OSPF Interface + Table. + + Types of service, as defined by RFC 791, have the ability + to request low delay, high bandwidth, or reliable linkage. + + For the purposes of this specification, the measure of + bandwidth: + + + + + Metric = referenceBandwidth / ifSpeed + + is the default value. + The default reference bandwidth is 10^8. + For multiple link interfaces, note that ifSpeed is the sum + of the individual link speeds. This yields a number having + the following typical values: + + Network Type/bit rate Metric + + >= 100 MBPS 1 + Ethernet/802.3 10 + E1 48 + T1 (ESF) 65 + 64 KBPS 1562 + 56 KBPS 1785 + 19.2 KBPS 5208 + 9.6 KBPS 10416 + + Routes that are not specified use the default + (TOS 0) metric. + + Note that the default reference bandwidth can be configured + using the general group object ospfReferenceBandwidth." + REFERENCE + "OSPF Version 2, Appendix C.3 Router interface + parameters" + ::= { ospf 8 } + + ospfIfMetricEntry OBJECT-TYPE + SYNTAX OspfIfMetricEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A particular TOS metric for a non-virtual interface + identified by the interface index. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix C.3 Router interface + parameters" + INDEX { ospfIfMetricIpAddress, + ospfIfMetricAddressLessIf, + ospfIfMetricTOS } + ::= { ospfIfMetricTable 1 } + + + + + OspfIfMetricEntry ::= + SEQUENCE { + ospfIfMetricIpAddress + IpAddress, + ospfIfMetricAddressLessIf + InterfaceIndexOrZero, + ospfIfMetricTOS + TOSType, + ospfIfMetricValue + Metric, + ospfIfMetricStatus + RowStatus + } + + ospfIfMetricIpAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The IP address of this OSPF interface. On row + creation, this can be derived from the instance." + ::= { ospfIfMetricEntry 1 } + + ospfIfMetricAddressLessIf OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "For the purpose of easing the instancing of + addressed and addressless interfaces; this + variable takes the value 0 on interfaces with + IP addresses and the value of ifIndex for + interfaces having no IP address. On row + creation, this can be derived from the instance." + ::= { ospfIfMetricEntry 2 } + + ospfIfMetricTOS OBJECT-TYPE + SYNTAX TOSType + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The Type of Service metric being referenced. + On row creation, this can be derived from the + instance." + ::= { ospfIfMetricEntry 3 } + + + + ospfIfMetricValue OBJECT-TYPE + SYNTAX Metric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric of using this Type of Service on + this interface. The default value of the TOS 0 + metric is 10^8 / ifSpeed." + ::= { ospfIfMetricEntry 4 } + + ospfIfMetricStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfIfMetricEntry 5 } + +-- OSPF Virtual Interface Table + + ospfVirtIfTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfVirtIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about this router's virtual interfaces + that the OSPF Process is configured to carry on." + REFERENCE + "OSPF Version 2, Appendix C.4 Virtual link + parameters" + ::= { ospf 9 } + + ospfVirtIfEntry OBJECT-TYPE + SYNTAX OspfVirtIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a single virtual interface. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + + + + INDEX { ospfVirtIfAreaId, ospfVirtIfNeighbor } + ::= { ospfVirtIfTable 1 } + + OspfVirtIfEntry ::= + SEQUENCE { + ospfVirtIfAreaId + AreaID, + ospfVirtIfNeighbor + RouterID, + ospfVirtIfTransitDelay + UpToMaxAge, + ospfVirtIfRetransInterval + UpToMaxAge, + ospfVirtIfHelloInterval + HelloRange, + ospfVirtIfRtrDeadInterval + PositiveInteger, + ospfVirtIfState + INTEGER, + ospfVirtIfEvents + Counter32, + ospfVirtIfAuthKey + OCTET STRING, + ospfVirtIfStatus + RowStatus, + ospfVirtIfAuthType + OspfAuthenticationType, + ospfVirtIfLsaCount + Gauge32, + ospfVirtIfLsaCksumSum + Unsigned32 + } + + ospfVirtIfAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The transit area that the virtual link + traverses. By definition, this is not 0.0.0.0." + ::= { ospfVirtIfEntry 1 } + + ospfVirtIfNeighbor OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + + + + DESCRIPTION + "The Router ID of the virtual neighbor." + ::= { ospfVirtIfEntry 2 } + + ospfVirtIfTransitDelay OBJECT-TYPE + SYNTAX UpToMaxAge + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The estimated number of seconds it takes to + transmit a Link State update packet over this + interface. Note that the minimal value SHOULD be + 1 second." + DEFVAL { 1 } + ::= { ospfVirtIfEntry 3 } + + ospfVirtIfRetransInterval OBJECT-TYPE + SYNTAX UpToMaxAge + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds between link state + avertisement retransmissions, for adjacencies + belonging to this interface. This value is + also used when retransmitting database + description and Link State request packets. This + value should be well over the expected + round-trip time. Note that the minimal value SHOULD be + 1 second." + DEFVAL { 5 } + ::= { ospfVirtIfEntry 4 } + + ospfVirtIfHelloInterval OBJECT-TYPE + SYNTAX HelloRange + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The length of time, in seconds, between the + Hello packets that the router sends on the + interface. This value must be the same for the + virtual neighbor." + DEFVAL { 10 } + ::= { ospfVirtIfEntry 5 } + + ospfVirtIfRtrDeadInterval OBJECT-TYPE + + + + SYNTAX PositiveInteger + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds that a router's Hello + packets have not been seen before its + neighbors declare the router down. This should be + some multiple of the Hello interval. This + value must be the same for the virtual neighbor." + DEFVAL { 60 } + ::= { ospfVirtIfEntry 6 } + + ospfVirtIfState OBJECT-TYPE + SYNTAX INTEGER { + down (1), -- these use the same encoding + pointToPoint (4) -- as the ospfIfTable + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "OSPF virtual interface states." + DEFVAL { down } + ::= { ospfVirtIfEntry 7 } + + ospfVirtIfEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of state changes or error events on + this virtual link. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfVirtIfEntry 8 } + + ospfVirtIfAuthKey OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..256)) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The cleartext password used as an OSPF + authentication key when simplePassword security + is enabled. This object does not access any OSPF + cryptogaphic (e.g., MD5) authentication key under + any circumstance. + + + + If the key length is shorter than 8 octets, the + agent will left adjust and zero fill to 8 octets. + + Unauthenticated interfaces need no authentication + key, and simple password authentication cannot use + a key of more than 8 octets. + + Note that the use of simplePassword authentication + is NOT recommended when there is concern regarding + attack upon the OSPF system. SimplePassword + authentication is only sufficient to protect against + accidental misconfigurations because it re-uses + cleartext passwords. [RFC1704] + + When read, ospfIfAuthKey always returns an octet + string of length zero." + REFERENCE + "OSPF Version 2, Section 9 The Interface Data + Structure" + DEFVAL { '0000000000000000'H } -- 0.0.0.0.0.0.0.0 + ::= { ospfVirtIfEntry 9 } + + ospfVirtIfStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfVirtIfEntry 10 } + + ospfVirtIfAuthType OBJECT-TYPE + SYNTAX OspfAuthenticationType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The authentication type specified for a virtual interface. + + Note that this object can be used to engage + in significant attacks against an OSPF router." + REFERENCE + "OSPF Version 2, Appendix E Authentication" + DEFVAL { none } -- no authentication, by default + + + + ::= { ospfVirtIfEntry 11 } + + ospfVirtIfLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of link-local link state advertisements + in this virtual interface's link-local link state database." + ::= { ospfVirtIfEntry 12 } + + ospfVirtIfLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the link state + advertisements' LS checksums contained in this + virtual interface's link-local link state database. + The sum can be used to determine if there has + been a change in the virtual interface's link state + database, and to compare the virtual interface + link state database of the virtual neighbors." + ::= { ospfVirtIfEntry 13 } + +-- OSPF Neighbor Table + + ospfNbrTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table describing all non-virtual neighbors + in the locality of the OSPF router." + REFERENCE + "OSPF Version 2, Section 10 The Neighbor Data + Structure" + ::= { ospf 10 } + + ospfNbrEntry OBJECT-TYPE + SYNTAX OspfNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The information regarding a single neighbor. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + + + + storage." + REFERENCE + "OSPF Version 2, Section 10 The Neighbor Data + Structure" + INDEX { ospfNbrIpAddr, ospfNbrAddressLessIndex } + ::= { ospfNbrTable 1 } + + OspfNbrEntry ::= + SEQUENCE { + ospfNbrIpAddr + IpAddress, + ospfNbrAddressLessIndex + InterfaceIndexOrZero, + ospfNbrRtrId + RouterID, + ospfNbrOptions + Integer32, + ospfNbrPriority + DesignatedRouterPriority, + ospfNbrState + INTEGER, + ospfNbrEvents + Counter32, + ospfNbrLsRetransQLen + Gauge32, + ospfNbmaNbrStatus + RowStatus, + ospfNbmaNbrPermanence + INTEGER, + ospfNbrHelloSuppressed + TruthValue, + ospfNbrRestartHelperStatus + INTEGER, + ospfNbrRestartHelperAge + Unsigned32, + ospfNbrRestartHelperExitReason + INTEGER + } + + ospfNbrIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The IP address this neighbor is using in its + IP source address. Note that, on addressless + links, this will not be 0.0.0.0 but the + + + + address of another of the neighbor's interfaces." + ::= { ospfNbrEntry 1 } + + ospfNbrAddressLessIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "On an interface having an IP address, zero. + On addressless interfaces, the corresponding + value of ifIndex in the Internet Standard MIB. + On row creation, this can be derived from the + instance." + ::= { ospfNbrEntry 2 } + + ospfNbrRtrId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A 32-bit integer (represented as a type + IpAddress) uniquely identifying the neighboring + router in the Autonomous System." + DEFVAL { '00000000'H } -- 0.0.0.0 + ::= { ospfNbrEntry 3 } + + ospfNbrOptions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A bit mask corresponding to the neighbor's + options field. + + Bit 0, if set, indicates that the system will + operate on Type of Service metrics other than + TOS 0. If zero, the neighbor will ignore all + metrics except the TOS 0 metric. + + Bit 1, if set, indicates that the associated + area accepts and operates on external + information; if zero, it is a stub area. + + Bit 2, if set, indicates that the system is + capable of routing IP multicast datagrams, that is + that it implements the multicast extensions to + OSPF. + + + + Bit 3, if set, indicates that the associated + area is an NSSA. These areas are capable of + carrying type-7 external advertisements, which + are translated into type-5 external advertisements + at NSSA borders." + REFERENCE + "OSPF Version 2, Section 12.1.2 Options" + DEFVAL { 0 } + ::= { ospfNbrEntry 4 } + + ospfNbrPriority OBJECT-TYPE + SYNTAX DesignatedRouterPriority + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The priority of this neighbor in the designated + router election algorithm. The value 0 signifies + that the neighbor is not eligible to become + the designated router on this particular network." + + DEFVAL { 1 } + ::= { ospfNbrEntry 5 } + + ospfNbrState OBJECT-TYPE + SYNTAX INTEGER { + down (1), + attempt (2), + init (3), + twoWay (4), + exchangeStart (5), + exchange (6), + loading (7), + full (8) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the relationship with this neighbor." + REFERENCE + "OSPF Version 2, Section 10.1 Neighbor States" + DEFVAL { down } + ::= { ospfNbrEntry 6 } + + ospfNbrEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "The number of times this neighbor relationship + has changed state or an error has occurred. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfNbrEntry 7 } + + ospfNbrLsRetransQLen OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current length of the retransmission + queue." + ::= { ospfNbrEntry 8 } + + ospfNbmaNbrStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfNbrEntry 9 } + + ospfNbmaNbrPermanence OBJECT-TYPE + SYNTAX INTEGER { + dynamic (1), -- learned through protocol + permanent (2) -- configured address + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This variable displays the status of the entry; + 'dynamic' and 'permanent' refer to how the neighbor + became known." + DEFVAL { permanent } + ::= { ospfNbrEntry 10 } + + ospfNbrHelloSuppressed OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "Indicates whether Hellos are being suppressed + to the neighbor." + ::= { ospfNbrEntry 11 } + + ospfNbrRestartHelperStatus OBJECT-TYPE + SYNTAX INTEGER { notHelping (1), + helping (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether the router is acting + as a graceful restart helper for the neighbor." + ::= { ospfNbrEntry 12 } + + ospfNbrRestartHelperAge OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in current OSPF graceful restart + interval, if the router is acting as a restart + helper for the neighbor." + ::= { ospfNbrEntry 13 } + + ospfNbrRestartHelperExitReason OBJECT-TYPE + SYNTAX INTEGER { none (1), -- not attempted + inProgress (2), -- restart in + -- progress + completed (3), -- successfully + -- completed + timedOut (4), -- timed out + topologyChanged (5) -- aborted due to + -- topology + -- change. + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Describes the outcome of the last attempt at acting + as a graceful restart helper for the neighbor." + ::= { ospfNbrEntry 14 } + +-- OSPF Virtual Neighbor Table + + + + + ospfVirtNbrTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfVirtNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table describes all virtual neighbors. + Since virtual links are configured + in the Virtual Interface Table, this table is read-only." + REFERENCE + "OSPF Version 2, Section 15 Virtual Links" + ::= { ospf 11 } + + ospfVirtNbrEntry OBJECT-TYPE + SYNTAX OspfVirtNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Virtual neighbor information." + INDEX { ospfVirtNbrArea, ospfVirtNbrRtrId } + ::= { ospfVirtNbrTable 1 } + + OspfVirtNbrEntry ::= + SEQUENCE { + ospfVirtNbrArea + AreaID, + ospfVirtNbrRtrId + RouterID, + ospfVirtNbrIpAddr + IpAddress, + ospfVirtNbrOptions + Integer32, + ospfVirtNbrState + INTEGER, + ospfVirtNbrEvents + Counter32, + ospfVirtNbrLsRetransQLen + Gauge32, + ospfVirtNbrHelloSuppressed + TruthValue, + ospfVirtNbrRestartHelperStatus + INTEGER, + ospfVirtNbrRestartHelperAge + Unsigned32, + ospfVirtNbrRestartHelperExitReason + INTEGER + } + + ospfVirtNbrArea OBJECT-TYPE + + + + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The Transit Area Identifier." + ::= { ospfVirtNbrEntry 1 } + + ospfVirtNbrRtrId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying the + neighboring router in the Autonomous System." + ::= { ospfVirtNbrEntry 2 } + + ospfVirtNbrIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address this virtual neighbor is using." + ::= { ospfVirtNbrEntry 3 } + + ospfVirtNbrOptions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A bit mask corresponding to the neighbor's + options field. + + Bit 1, if set, indicates that the system will + operate on Type of Service metrics other than + TOS 0. If zero, the neighbor will ignore all + metrics except the TOS 0 metric. + + Bit 2, if set, indicates that the system is + network multicast capable, i.e., that it + implements OSPF multicast routing." + ::= { ospfVirtNbrEntry 4 } + + ospfVirtNbrState OBJECT-TYPE + SYNTAX INTEGER { + down (1), + attempt (2), + + + + init (3), + twoWay (4), + exchangeStart (5), + exchange (6), + loading (7), + full (8) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the virtual neighbor relationship." + ::= { ospfVirtNbrEntry 5 } + + ospfVirtNbrEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this virtual link has + changed its state or an error has occurred. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at other + times as indicated by the value of ospfDiscontinuityTime." + ::= { ospfVirtNbrEntry 6 } + + ospfVirtNbrLsRetransQLen OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current length of the retransmission + queue." + ::= { ospfVirtNbrEntry 7 } + + ospfVirtNbrHelloSuppressed OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether Hellos are being suppressed + to the neighbor." + ::= { ospfVirtNbrEntry 8 } + + ospfVirtNbrRestartHelperStatus OBJECT-TYPE + SYNTAX INTEGER { notHelping (1), + helping (2) + } + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether the router is acting + as a graceful restart helper for the neighbor." + ::= { ospfVirtNbrEntry 9 } + + ospfVirtNbrRestartHelperAge OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in current OSPF graceful restart + interval, if the router is acting as a restart + helper for the neighbor." + ::= { ospfVirtNbrEntry 10 } + + ospfVirtNbrRestartHelperExitReason OBJECT-TYPE + SYNTAX INTEGER { none (1), -- not attempted + inProgress (2), -- restart in + -- progress + completed (3), -- successfully + -- completed + timedOut (4), -- timed out + topologyChanged (5) -- aborted due to + -- topology + -- change. + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Describes the outcome of the last attempt at acting + as a graceful restart helper for the neighbor." + ::= { ospfVirtNbrEntry 11 } + +-- OSPF Link State Database, External + + ospfExtLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfExtLsdbEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "The OSPF Process's external LSA link state database. + + This table is identical to the OSPF LSDB Table + in format, but contains only external link state + advertisements. The purpose is to allow external + + + + LSAs to be displayed once for the router rather + than once in each non-stub area. + + Note that external LSAs are also in the AS-scope link state + database." + REFERENCE + "OSPF Version 2, Section 12 Link State Advertisements" + ::= { ospf 12 } + + ospfExtLsdbEntry OBJECT-TYPE + SYNTAX OspfExtLsdbEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "A single link state advertisement." + INDEX { ospfExtLsdbType, ospfExtLsdbLsid, ospfExtLsdbRouterId } + ::= { ospfExtLsdbTable 1 } + + OspfExtLsdbEntry ::= + SEQUENCE { + ospfExtLsdbType + INTEGER, + ospfExtLsdbLsid + IpAddress, + ospfExtLsdbRouterId + RouterID, + ospfExtLsdbSequence + Integer32, + ospfExtLsdbAge + Integer32, + ospfExtLsdbChecksum + Integer32, + ospfExtLsdbAdvertisement + OCTET STRING + } + + ospfExtLsdbType OBJECT-TYPE + SYNTAX INTEGER { + asExternalLink (5) + } + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS deprecated + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate advertisement + format." + REFERENCE + + + + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + + ::= { ospfExtLsdbEntry 1 } + + ospfExtLsdbLsid OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS deprecated + DESCRIPTION + "The Link State ID is an LS Type Specific field + containing either a Router ID or an IP address; + it identifies the piece of the routing domain + that is being described by the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.4 Link State ID" + ::= { ospfExtLsdbEntry 2 } + + ospfExtLsdbRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS deprecated + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1 Global parameters" + ::= { ospfExtLsdbEntry 3 } + + ospfExtLsdbSequence OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It starts with the value '80000001'h, + or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + Thus, a typical sequence number will be very negative. + It is used to detect old and duplicate link state + advertisements. The space of sequence numbers is linearly + ordered. The larger the sequence number, the more recent + the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6 LS sequence + number" + ::= { ospfExtLsdbEntry 4 } + + + + ospfExtLsdbAge OBJECT-TYPE + SYNTAX Integer32 -- Should be 0..MaxAge, except when + -- doNotAge bit is set + UNITS "seconds" + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "This field is the age of the link state + advertisement in seconds." + REFERENCE + "OSPF Version 2, Section 12.1.1 LS age" + ::= { ospfExtLsdbEntry 5 } + + ospfExtLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly referred + to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7 LS checksum" + ::= { ospfExtLsdbEntry 6 } + + ospfExtLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(36)) + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "The entire link state advertisement, including + its header." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements" + ::= { ospfExtLsdbEntry 7 } + +-- OSPF Use of the CIDR Route Table + + ospfRouteGroup OBJECT IDENTIFIER ::= { ospf 13 } + +-- The IP Forwarding Table defines a number of objects for use by +-- the routing protocol to externalize its information. Most of + + + +-- the variables (ipForwardDest, ipForwardMask, ipForwardPolicy, +-- ipForwardNextHop, ipForwardIfIndex, ipForwardType, +-- ipForwardProto, ipForwardAge, and ipForwardNextHopAS) are +-- defined there. + +-- Those that leave some discretion are defined here. + +-- ipCidrRouteProto is, of course, ospf (13). + +-- ipCidrRouteAge is the time since the route was first +-- calculated, as opposed to the time since the last SPF run. +-- ipCidrRouteInfo is an OBJECT IDENTIFIER for use by the routing +-- protocol. The following values shall be found there depending +-- on the way the route was calculated. + + ospfIntraArea OBJECT IDENTIFIER ::= { ospfRouteGroup 1 } + ospfInterArea OBJECT IDENTIFIER ::= { ospfRouteGroup 2 } + ospfExternalType1 OBJECT IDENTIFIER ::= { ospfRouteGroup 3 } + ospfExternalType2 OBJECT IDENTIFIER ::= { ospfRouteGroup 4 } + +-- ipCidrRouteMetric1 is, by definition, the primary routing +-- metric. Therefore, it should be the metric that route +-- selection is based on. For intra-area and inter-area routes, +-- it is an OSPF metric. For External Type 1 (comparable value) +-- routes, it is an OSPF metric plus the External Metric. For +-- external Type 2 (non-comparable value) routes, it is the +-- external metric. + +-- ipCidrRouteMetric2 is, by definition, a secondary routing +-- metric. Therefore, it should be the metric that breaks a tie +-- among routes having equal metric1 values and the same +-- calculation rule. For intra-area, inter-area routes, and +-- External Type 1 (comparable value) routes, it is unused. For +-- External Type 2 (non-comparable value) routes, it is the metric +-- to the AS border router. + +-- ipCidrRouteMetric3, ipCidrRouteMetric4, and ipCidrRouteMetric5 +-- are unused. + +-- The OSPF Area Aggregate Table +-- +-- This table replaces the OSPF Area Summary Table, being an +-- extension of that for CIDR routers. + + ospfAreaAggregateTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfAreaAggregateEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "The Area Aggregate Table acts as an adjunct + to the Area Table. It describes those address aggregates + that are configured to be propagated from an area. + Its purpose is to reduce the amount of information + that is known beyond an Area's borders. + + It contains a set of IP address ranges + specified by an IP address/IP network mask pair. + For example, a class B address range of X.X.X.X + with a network mask of 255.255.0.0 includes all IP + addresses from X.X.0.0 to X.X.255.255. + + Note that if ranges are configured such that one range + subsumes another range (e.g., 10.0.0.0 mask 255.0.0.0 + and 10.1.0.0 mask 255.255.0.0), + the most specific match is the preferred one." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospf 14 } + + ospfAreaAggregateEntry OBJECT-TYPE + SYNTAX OspfAreaAggregateEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single area aggregate entry. + + Information in this table is persistent and when this object + is written the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + INDEX { ospfAreaAggregateAreaID, ospfAreaAggregateLsdbType, + ospfAreaAggregateNet, ospfAreaAggregateMask } + ::= { ospfAreaAggregateTable 1 } + + OspfAreaAggregateEntry ::= + SEQUENCE { + ospfAreaAggregateAreaID + AreaID, + ospfAreaAggregateLsdbType + INTEGER, + ospfAreaAggregateNet + IpAddress, + ospfAreaAggregateMask + IpAddress, + ospfAreaAggregateStatus + + + + RowStatus, + ospfAreaAggregateEffect + INTEGER, + ospfAreaAggregateExtRouteTag + Unsigned32 + } + + ospfAreaAggregateAreaID OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The area within which the address aggregate is to be + found." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaAggregateEntry 1 } + + ospfAreaAggregateLsdbType OBJECT-TYPE + SYNTAX INTEGER { + summaryLink (3), + nssaExternalLink (7) + } + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The type of the address aggregate. This field + specifies the Lsdb type that this address + aggregate applies to." + REFERENCE + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + ::= { ospfAreaAggregateEntry 2 } + + ospfAreaAggregateNet OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The IP address of the net or subnet indicated + by the range." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaAggregateEntry 3 } + + + + + ospfAreaAggregateMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only -- read-only since originally an + -- SMIv1 index + STATUS current + DESCRIPTION + "The subnet mask that pertains to the net or + subnet." + REFERENCE + "OSPF Version 2, Appendix C.2 Area parameters" + ::= { ospfAreaAggregateEntry 4 } + + ospfAreaAggregateStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfAreaAggregateEntry 5 } + + ospfAreaAggregateEffect OBJECT-TYPE + SYNTAX INTEGER { + advertiseMatching (1), + doNotAdvertiseMatching (2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Subnets subsumed by ranges either trigger the + advertisement of the indicated aggregate + (advertiseMatching) or result in the subnet's not + being advertised at all outside the area." + DEFVAL { advertiseMatching } + ::= { ospfAreaAggregateEntry 6 } + + ospfAreaAggregateExtRouteTag OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "External route tag to be included in NSSA (type-7) + LSAs." + + + + DEFVAL { 0 } + ::= { ospfAreaAggregateEntry 7 } + +-- OSPF Link State Database, link-local for non-virtual links + + + ospfLocalLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfLocalLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPF Process's link-local link state database + for non-virtual links. + This table is identical to the OSPF LSDB Table + in format, but contains only link-local Link State + Advertisements for non-virtual links. The purpose is + to allow link-local LSAs to be displayed for each + non-virtual interface. This table is implemented to + support type-9 LSAs that are defined + in 'The OSPF Opaque LSA Option'." + REFERENCE + "OSPF Version 2, Section 12 Link State Advertisements + and The OSPF Opaque LSA Option" + ::= { ospf 17 } + + ospfLocalLsdbEntry OBJECT-TYPE + SYNTAX OspfLocalLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single link state advertisement." + INDEX { ospfLocalLsdbIpAddress, ospfLocalLsdbAddressLessIf, + ospfLocalLsdbType, ospfLocalLsdbLsid, ospfLocalLsdbRouterId + } + ::= { ospfLocalLsdbTable 1 } + + OspfLocalLsdbEntry ::= + SEQUENCE { + ospfLocalLsdbIpAddress + IpAddress, + ospfLocalLsdbAddressLessIf + InterfaceIndexOrZero, + ospfLocalLsdbType + INTEGER, + ospfLocalLsdbLsid + IpAddress, + ospfLocalLsdbRouterId + RouterID, + + + + ospfLocalLsdbSequence + Integer32, + ospfLocalLsdbAge + Integer32, + ospfLocalLsdbChecksum + Integer32, + ospfLocalLsdbAdvertisement + OCTET STRING + } + + ospfLocalLsdbIpAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP address of the interface from + which the LSA was received if the interface is + numbered." + REFERENCE + "OSPF Version 2, Appendix C.3 Interface parameters" + ::= { ospfLocalLsdbEntry 1 } + + ospfLocalLsdbAddressLessIf OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface index of the interface from + which the LSA was received if the interface is + unnumbered." + REFERENCE + "OSPF Version 2, Appendix C.3 Interface parameters" + ::= { ospfLocalLsdbEntry 2 } + + ospfLocalLsdbType OBJECT-TYPE + SYNTAX INTEGER { localOpaqueLink (9) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format." + REFERENCE + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + ::= { ospfLocalLsdbEntry 3 } + + ospfLocalLsdbLsid OBJECT-TYPE + + + + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS Type Specific field + containing a 32-bit identifier in IP address format; + it identifies the piece of the routing domain + that is being described by the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.4 Link State ID" + ::= { ospfLocalLsdbEntry 4 } + + ospfLocalLsdbRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1 Global parameters" + ::= { ospfLocalLsdbEntry 5 } + + ospfLocalLsdbSequence OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It starts with the value '80000001'h, + or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + Thus, a typical sequence number will be very negative. + It is used to detect old and duplicate link state + advertisements. The space of sequence numbers is linearly + ordered. The larger the sequence number, the more recent + the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6 LS sequence + number" + ::= { ospfLocalLsdbEntry 6 } + + ospfLocalLsdbAge OBJECT-TYPE + SYNTAX Integer32 -- Should be 0..MaxAge, except when + -- doNotAge bit is set + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "This field is the age of the link state + advertisement in seconds." + REFERENCE + "OSPF Version 2, Section 12.1.1 LS age" + ::= { ospfLocalLsdbEntry 7 } + + ospfLocalLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly referred + to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7 LS checksum" + ::= { ospfLocalLsdbEntry 8 } + + ospfLocalLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header. + + Note that for variable length LSAs, SNMP agents + may not be able to return the largest string size." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements" + ::= { ospfLocalLsdbEntry 9 } + +-- OSPF Link State Database, link-local for virtual Links + + ospfVirtLocalLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfVirtLocalLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPF Process's link-local link state database + for virtual links. + + + + + This table is identical to the OSPF LSDB Table + in format, but contains only link-local Link State + Advertisements for virtual links. The purpose is to + allow link-local LSAs to be displayed for each virtual + interface. This table is implemented to support type-9 LSAs + that are defined in 'The OSPF Opaque LSA Option'." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements and The OSPF Opaque LSA Option" + ::= { ospf 18 } + + ospfVirtLocalLsdbEntry OBJECT-TYPE + SYNTAX OspfVirtLocalLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single link state advertisement." + INDEX { ospfVirtLocalLsdbTransitArea, + ospfVirtLocalLsdbNeighbor, + ospfVirtLocalLsdbType, + ospfVirtLocalLsdbLsid, + ospfVirtLocalLsdbRouterId + } + ::= { ospfVirtLocalLsdbTable 1 } + + OspfVirtLocalLsdbEntry ::= + SEQUENCE { + ospfVirtLocalLsdbTransitArea + AreaID, + ospfVirtLocalLsdbNeighbor + RouterID, + ospfVirtLocalLsdbType + INTEGER, + ospfVirtLocalLsdbLsid + IpAddress, + ospfVirtLocalLsdbRouterId + RouterID, + ospfVirtLocalLsdbSequence + Integer32, + ospfVirtLocalLsdbAge + Integer32, + ospfVirtLocalLsdbChecksum + Integer32, + ospfVirtLocalLsdbAdvertisement + OCTET STRING + } + + ospfVirtLocalLsdbTransitArea OBJECT-TYPE + + + + SYNTAX AreaID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The transit area that the virtual link + traverses. By definition, this is not 0.0.0.0." + REFERENCE + "OSPF Version 2, Appendix C.3 Interface parameters" + ::= { ospfVirtLocalLsdbEntry 1 } + + ospfVirtLocalLsdbNeighbor OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Router ID of the virtual neighbor." + REFERENCE + "OSPF Version 2, Appendix C.3 Interface parameters" + ::= { ospfVirtLocalLsdbEntry 2 } + + ospfVirtLocalLsdbType OBJECT-TYPE + SYNTAX INTEGER { localOpaqueLink (9) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format." + REFERENCE + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + ::= { ospfVirtLocalLsdbEntry 3 } + + ospfVirtLocalLsdbLsid OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS Type Specific field + containing a 32-bit identifier in IP address format; + it identifies the piece of the routing domain + that is being described by the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.4 Link State ID" + ::= { ospfVirtLocalLsdbEntry 4 } + + ospfVirtLocalLsdbRouterId OBJECT-TYPE + SYNTAX RouterID + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1 Global parameters" + ::= { ospfVirtLocalLsdbEntry 5 } + + ospfVirtLocalLsdbSequence OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It starts with the value '80000001'h, + or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + Thus, a typical sequence number will be very negative. + It is used to detect old and duplicate link state + advertisements. The space of sequence numbers is linearly + ordered. The larger the sequence number, the more recent + the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6 LS sequence + number" + ::= { ospfVirtLocalLsdbEntry 6 } + + ospfVirtLocalLsdbAge OBJECT-TYPE + SYNTAX Integer32 -- Should be 0..MaxAge, except when + -- doNotAge bit is set + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds." + REFERENCE + "OSPF Version 2, Section 12.1.1 LS age" + ::= { ospfVirtLocalLsdbEntry 7 } + + ospfVirtLocalLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + + + + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly + referred to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7 LS checksum" + ::= { ospfVirtLocalLsdbEntry 8 } + + ospfVirtLocalLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements. + + Note that for variable length LSAs, SNMP agents + may not be able to return the largest string size." + ::= { ospfVirtLocalLsdbEntry 9 } + +-- OSPF Link State Database, AS-scope + + ospfAsLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfAsLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPF Process's AS-scope LSA link state database. + The database contains the AS-scope Link State + Advertisements from throughout the areas that + the device is attached to. + + This table is identical to the OSPF LSDB Table + in format, but contains only AS-scope Link State + Advertisements. The purpose is to allow AS-scope + LSAs to be displayed once for the router rather + than once in each non-stub area." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements" + ::= { ospf 19 } + + ospfAsLsdbEntry OBJECT-TYPE + SYNTAX OspfAsLsdbEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single link state advertisement." + INDEX { ospfAsLsdbType, ospfAsLsdbLsid, ospfAsLsdbRouterId } + ::= { ospfAsLsdbTable 1 } + + OspfAsLsdbEntry ::= + SEQUENCE { + ospfAsLsdbType + INTEGER, + ospfAsLsdbLsid + IpAddress, + ospfAsLsdbRouterId + RouterID, + ospfAsLsdbSequence + Integer32, + ospfAsLsdbAge + Integer32, + ospfAsLsdbChecksum + Integer32, + ospfAsLsdbAdvertisement + OCTET STRING + } + + ospfAsLsdbType OBJECT-TYPE + SYNTAX INTEGER { + asExternalLink (5), + asOpaqueLink (11) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format." + REFERENCE + "OSPF Version 2, Appendix A.4.1 The Link State + Advertisement header" + ::= { ospfAsLsdbEntry 1 } + + ospfAsLsdbLsid OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS Type Specific field + containing either a Router ID or an IP address; + + + + it identifies the piece of the routing domain + that is being described by the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.4 Link State ID" + ::= { ospfAsLsdbEntry 2 } + + ospfAsLsdbRouterId OBJECT-TYPE + SYNTAX RouterID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1 Global parameters" + ::= { ospfAsLsdbEntry 3 } + + ospfAsLsdbSequence OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It starts with the value '80000001'h, + or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + Thus, a typical sequence number will be very negative. + It is used to detect old and duplicate link state + advertisements. The space of sequence numbers is linearly + ordered. The larger the sequence number, the more recent + the advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6 LS sequence + number" + ::= { ospfAsLsdbEntry 4 } + + ospfAsLsdbAge OBJECT-TYPE + SYNTAX Integer32 -- Should be 0..MaxAge, except when + -- doNotAge bit is set + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds." + REFERENCE + "OSPF Version 2, Section 12.1.1 LS age" + ::= { ospfAsLsdbEntry 5 } + + + + + ospfAsLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly referred + to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7 LS checksum" + ::= { ospfAsLsdbEntry 6 } + + ospfAsLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + REFERENCE + "OSPF Version 2, Section 12 Link State + Advertisements. + + Note that for variable length LSAs, SNMP agents + may not be able to return the largest string size." + ::= { ospfAsLsdbEntry 7 } + + -- OSPF Area LSA Counter Table + + ospfAreaLsaCountTable OBJECT-TYPE + SYNTAX SEQUENCE OF OspfAreaLsaCountEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table maintains per-area, per-LSA-type counters" + ::= { ospf 20 } + + ospfAreaLsaCountEntry OBJECT-TYPE + SYNTAX OspfAreaLsaCountEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry with a number of link advertisements + + + + of a given type for a given area." + INDEX { ospfAreaLsaCountAreaId, ospfAreaLsaCountLsaType } + ::= { ospfAreaLsaCountTable 1 } + + OspfAreaLsaCountEntry ::= + SEQUENCE { + ospfAreaLsaCountAreaId + AreaID, + ospfAreaLsaCountLsaType + INTEGER, + ospfAreaLsaCountNumber + Gauge32 + } + + ospfAreaLsaCountAreaId OBJECT-TYPE + SYNTAX AreaID + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This entry Area ID." + ::= { ospfAreaLsaCountEntry 1 } + + ospfAreaLsaCountLsaType OBJECT-TYPE + SYNTAX INTEGER { + routerLink (1), + networkLink (2), + summaryLink (3), + asSummaryLink (4), + multicastLink (6), + nssaExternalLink (7), + areaOpaqueLink (10) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This entry LSA type." + ::= { ospfAreaLsaCountEntry 2 } + + ospfAreaLsaCountNumber OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of LSAs of a given type for a given area." + ::= { ospfAreaLsaCountEntry 3 } + +-- conformance information + + + + +ospfConformance OBJECT IDENTIFIER ::= { ospf 15 } + +ospfGroups OBJECT IDENTIFIER ::= { ospfConformance 1 } +ospfCompliances OBJECT IDENTIFIER ::= { ospfConformance 2 } + +-- compliance statements + + ospfCompliance MODULE-COMPLIANCE + STATUS deprecated + DESCRIPTION + "The compliance statement for OSPF systems + conforming to RFC 1850." + MODULE -- this module + MANDATORY-GROUPS { + ospfBasicGroup, + ospfAreaGroup, + ospfStubAreaGroup, + ospfIfGroup, + ospfIfMetricGroup, + ospfVirtIfGroup, + ospfNbrGroup, + ospfVirtNbrGroup, + ospfAreaAggregateGroup + } + GROUP ospfHostGroup + DESCRIPTION + "This group is mandatory for OSPF systems that support + attached hosts." + GROUP ospfLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their per-area link state database." + GROUP ospfExtLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their external link state database." + ::= { ospfCompliances 1 } + + ospfCompliance2 MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement." + MODULE -- this module + MANDATORY-GROUPS { + ospfBasicGroup2, + ospfAreaGroup2, + ospfStubAreaGroup, + ospfIfGroup2, + + + + ospfIfMetricGroup, + ospfVirtIfGroup2, + ospfNbrGroup2, + ospfVirtNbrGroup2, + ospfAreaAggregateGroup2 + } + GROUP ospfHostGroup2 + DESCRIPTION + "This group is mandatory for OSPF systems that support + attached hosts." + GROUP ospfLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their per-area link state database." + GROUP ospfAsLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their AS-scope link state database." + GROUP ospfLocalLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their per-link link state database for non-virtual + links." + GROUP ospfVirtLocalLsdbGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + their per-link link state database for virtual links." + GROUP ospfAreaLsaCountGroup + DESCRIPTION + "This group is mandatory for OSPF systems that display + per-area, per-LSA-type counters." + ::= { ospfCompliances 2 } + + ospfComplianceObsolete MODULE-COMPLIANCE + STATUS obsolete + DESCRIPTION + "Contains obsolete object groups." + MODULE -- this module + GROUP ospfAreaRangeGroup + DESCRIPTION + "This group is obsolete, and it is mandatory only + for non-Classless Inter-Domain Routing (CIDR) OSPF + systems that support multiple areas." + GROUP ospfObsoleteGroup + DESCRIPTION + "This group contains obsolete objects, + which are no longer required for OSPF systems." + ::= { ospfCompliances 3 } + + + +-- units of conformance + + ospfBasicGroup OBJECT-GROUP + OBJECTS { + ospfRouterId, + ospfAdminStat, + ospfVersionNumber, + ospfAreaBdrRtrStatus, + ospfASBdrRtrStatus, + ospfExternLsaCount, + ospfExternLsaCksumSum, + ospfTOSSupport, + ospfOriginateNewLsas, + ospfRxNewLsas, + ospfExtLsdbLimit, + ospfMulticastExtensions, + ospfExitOverflowInterval, + ospfDemandExtensions + } + STATUS deprecated + DESCRIPTION + "These objects are used to monitor/manage + global OSPF parameters. This object group + conforms to RFC 1850." + ::= { ospfGroups 1 } + + ospfAreaGroup OBJECT-GROUP + OBJECTS { + ospfAreaId, + ospfImportAsExtern, + ospfSpfRuns, + ospfAreaBdrRtrCount, + ospfAsBdrRtrCount, + ospfAreaLsaCount, + ospfAreaLsaCksumSum, + ospfAreaSummary, + ospfAreaStatus + } + STATUS deprecated + DESCRIPTION + "These objects are used for OSPF systems + supporting areas per RFC 1850." + ::= { ospfGroups 2 } + + ospfStubAreaGroup OBJECT-GROUP + OBJECTS { + ospfStubAreaId, + ospfStubTOS, + + + + ospfStubMetric, + ospfStubStatus, + ospfStubMetricType + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + supporting stub areas." + ::= { ospfGroups 3 } + + ospfLsdbGroup OBJECT-GROUP + OBJECTS { + ospfLsdbAreaId, + ospfLsdbType, + ospfLsdbLsid, + ospfLsdbRouterId, + ospfLsdbSequence, + ospfLsdbAge, + ospfLsdbChecksum, + ospfLsdbAdvertisement + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + that display their link state database." + ::= { ospfGroups 4 } + + ospfAreaRangeGroup OBJECT-GROUP + OBJECTS { + ospfAreaRangeAreaId, + ospfAreaRangeNet, + ospfAreaRangeMask, + ospfAreaRangeStatus, + ospfAreaRangeEffect + } + STATUS obsolete + DESCRIPTION + "These objects are used for non-CIDR OSPF + systems that support multiple areas. This + object group is obsolete." + ::= { ospfGroups 5 } + + ospfHostGroup OBJECT-GROUP + OBJECTS { + ospfHostIpAddress, + ospfHostTOS, + ospfHostMetric, + ospfHostStatus, + + + + ospfHostAreaID + } + STATUS deprecated + DESCRIPTION + "These objects are used for OSPF systems + that support attached hosts." + ::= { ospfGroups 6 } + + ospfIfGroup OBJECT-GROUP + OBJECTS { + ospfIfIpAddress, + ospfAddressLessIf, + ospfIfAreaId, + ospfIfType, + ospfIfAdminStat, + ospfIfRtrPriority, + ospfIfTransitDelay, + ospfIfRetransInterval, + ospfIfHelloInterval, + ospfIfRtrDeadInterval, + ospfIfPollInterval, + ospfIfState, + ospfIfDesignatedRouter, + ospfIfBackupDesignatedRouter, + ospfIfEvents, + ospfIfAuthType, + ospfIfAuthKey, + ospfIfStatus, + ospfIfMulticastForwarding, + ospfIfDemand + } + STATUS deprecated + DESCRIPTION + "These objects are used to monitor/manage OSPF + interfaces. This object group conforms to RFC 1850." + ::= { ospfGroups 7 } + + ospfIfMetricGroup OBJECT-GROUP + OBJECTS { + ospfIfMetricIpAddress, + ospfIfMetricAddressLessIf, + ospfIfMetricTOS, + ospfIfMetricValue, + ospfIfMetricStatus + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems for supporting + + + + interface metrics." + ::= { ospfGroups 8 } + + ospfVirtIfGroup OBJECT-GROUP + OBJECTS { + ospfVirtIfAreaId, + ospfVirtIfNeighbor, + ospfVirtIfTransitDelay, + ospfVirtIfRetransInterval, + ospfVirtIfHelloInterval, + ospfVirtIfRtrDeadInterval, + ospfVirtIfState, + ospfVirtIfEvents, + ospfVirtIfAuthType, + ospfVirtIfAuthKey, + ospfVirtIfStatus + } + STATUS deprecated + DESCRIPTION + "These objects are used for OSPF systems for supporting + virtual interfaces. This object group conforms + to RFC 1850." + ::= { ospfGroups 9 } + + ospfNbrGroup OBJECT-GROUP + OBJECTS { + ospfNbrIpAddr, + ospfNbrAddressLessIndex, + ospfNbrRtrId, + ospfNbrOptions, + ospfNbrPriority, + ospfNbrState, + ospfNbrEvents, + ospfNbrLsRetransQLen, + ospfNbmaNbrStatus, + ospfNbmaNbrPermanence, + ospfNbrHelloSuppressed + } + STATUS deprecated + DESCRIPTION + "These objects are used to monitor/manage OSPF neighbors. + This object group conforms to RFC 1850." + ::= { ospfGroups 10 } + + ospfVirtNbrGroup OBJECT-GROUP + OBJECTS { + ospfVirtNbrArea, + ospfVirtNbrRtrId, + + + + ospfVirtNbrIpAddr, + ospfVirtNbrOptions, + ospfVirtNbrState, + ospfVirtNbrEvents, + ospfVirtNbrLsRetransQLen, + ospfVirtNbrHelloSuppressed + } + STATUS deprecated + DESCRIPTION + "These objects are used to monitor/manage OSPF virtual + neighbors. This object group conforms to RFC 1850." + + ::= { ospfGroups 11 } + + ospfExtLsdbGroup OBJECT-GROUP + OBJECTS { + ospfExtLsdbType, + ospfExtLsdbLsid, + ospfExtLsdbRouterId, + ospfExtLsdbSequence, + ospfExtLsdbAge, + ospfExtLsdbChecksum, + ospfExtLsdbAdvertisement + } + STATUS deprecated + DESCRIPTION + "These objects are used for OSPF systems that display + their link state database. This object group + conforms to RFC 1850. + + This object group is replaced by the ospfAsLsdbGroup + in order to support any AS-scope LSA type in a single + table." + ::= { ospfGroups 12 } + + ospfAreaAggregateGroup OBJECT-GROUP + OBJECTS { + ospfAreaAggregateAreaID, + ospfAreaAggregateLsdbType, + ospfAreaAggregateNet, + ospfAreaAggregateMask, + ospfAreaAggregateStatus, + ospfAreaAggregateEffect + } + STATUS deprecated + DESCRIPTION + "These objects are used for OSPF systems to support + network prefix aggregation across areas." + + + + ::= { ospfGroups 13 } + + ospfLocalLsdbGroup OBJECT-GROUP + OBJECTS { + ospfLocalLsdbSequence, + ospfLocalLsdbAge, + ospfLocalLsdbChecksum, + ospfLocalLsdbAdvertisement + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + that display their link-local link state databases + for non-virtual links." + ::= { ospfGroups 14 } + + ospfVirtLocalLsdbGroup OBJECT-GROUP + OBJECTS { + ospfVirtLocalLsdbSequence, + ospfVirtLocalLsdbAge, + ospfVirtLocalLsdbChecksum, + ospfVirtLocalLsdbAdvertisement + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + that display their link-local link state databases + for virtual links." + ::= { ospfGroups 15 } + + ospfAsLsdbGroup OBJECT-GROUP + OBJECTS { + ospfAsLsdbSequence, + ospfAsLsdbAge, + ospfAsLsdbChecksum, + ospfAsLsdbAdvertisement + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + that display their AS-scope link state database." + ::= { ospfGroups 16 } + + ospfBasicGroup2 OBJECT-GROUP + OBJECTS { + ospfRouterId, + ospfAdminStat, + ospfVersionNumber, + + + + ospfAreaBdrRtrStatus, + ospfASBdrRtrStatus, + ospfExternLsaCount, + ospfExternLsaCksumSum, + ospfTOSSupport, + ospfOriginateNewLsas, + ospfRxNewLsas, + ospfExtLsdbLimit, + ospfMulticastExtensions, + ospfExitOverflowInterval, + ospfDemandExtensions, + ospfRFC1583Compatibility, + ospfOpaqueLsaSupport, + ospfReferenceBandwidth, + ospfRestartSupport, + ospfRestartInterval, + ospfRestartStrictLsaChecking, + ospfRestartStatus, + ospfRestartAge, + ospfRestartExitReason, + ospfAsLsaCount, + ospfAsLsaCksumSum, + ospfStubRouterSupport, + ospfStubRouterAdvertisement, + ospfDiscontinuityTime + } + STATUS current + DESCRIPTION + "These objects are used to monitor/manage OSPF global + parameters." + ::= { ospfGroups 17 } + + ospfAreaGroup2 OBJECT-GROUP + OBJECTS { + ospfAreaId, + ospfImportAsExtern, + ospfSpfRuns, + ospfAreaBdrRtrCount, + ospfAsBdrRtrCount, + ospfAreaLsaCount, + ospfAreaLsaCksumSum, + ospfAreaSummary, + ospfAreaStatus, + ospfAreaNssaTranslatorRole, + ospfAreaNssaTranslatorState, + ospfAreaNssaTranslatorStabilityInterval, + ospfAreaNssaTranslatorEvents + } + + + + STATUS current + DESCRIPTION + "These objects are used by OSPF systems + to support areas." + ::= { ospfGroups 18 } + + ospfIfGroup2 OBJECT-GROUP + OBJECTS { + ospfIfIpAddress, + ospfAddressLessIf, + ospfIfAreaId, + ospfIfType, + ospfIfAdminStat, + ospfIfRtrPriority, + ospfIfTransitDelay, + ospfIfRetransInterval, + ospfIfHelloInterval, + ospfIfRtrDeadInterval, + ospfIfPollInterval, + ospfIfState, + ospfIfDesignatedRouter, + ospfIfBackupDesignatedRouter, + ospfIfEvents, + ospfIfAuthType, + ospfIfAuthKey, + ospfIfStatus, + ospfIfMulticastForwarding, + ospfIfDemand, + ospfIfLsaCount, + ospfIfLsaCksumSum + } + STATUS current + DESCRIPTION + "These objects are used to monitor/manage OSPF interfaces." + ::= { ospfGroups 19 } + + ospfVirtIfGroup2 OBJECT-GROUP + OBJECTS { + ospfVirtIfAreaId, + ospfVirtIfNeighbor, + ospfVirtIfTransitDelay, + ospfVirtIfRetransInterval, + ospfVirtIfHelloInterval, + ospfVirtIfRtrDeadInterval, + ospfVirtIfState, + ospfVirtIfEvents, + ospfVirtIfAuthType, + ospfVirtIfAuthKey, + + + + ospfVirtIfStatus, + ospfVirtIfLsaCount, + ospfVirtIfLsaCksumSum, + ospfIfDesignatedRouterId, + ospfIfBackupDesignatedRouterId + } + STATUS current + DESCRIPTION + "These objects are used to monitor/manage OSPF + virtual interfaces." + ::= { ospfGroups 20 } + + ospfNbrGroup2 OBJECT-GROUP + OBJECTS { + ospfNbrIpAddr, + ospfNbrAddressLessIndex, + ospfNbrRtrId, + ospfNbrOptions, + ospfNbrPriority, + ospfNbrState, + ospfNbrEvents, + ospfNbrLsRetransQLen, + ospfNbmaNbrStatus, + ospfNbmaNbrPermanence, + ospfNbrHelloSuppressed, + ospfNbrRestartHelperStatus, + ospfNbrRestartHelperAge, + ospfNbrRestartHelperExitReason + } + STATUS current + DESCRIPTION + "These objects are used to monitor/manage OSPF + neighbors." + ::= { ospfGroups 21 } + + ospfVirtNbrGroup2 OBJECT-GROUP + OBJECTS { + ospfVirtNbrArea, + ospfVirtNbrRtrId, + ospfVirtNbrIpAddr, + ospfVirtNbrOptions, + ospfVirtNbrState, + ospfVirtNbrEvents, + ospfVirtNbrLsRetransQLen, + ospfVirtNbrHelloSuppressed, + ospfVirtNbrRestartHelperStatus, + ospfVirtNbrRestartHelperAge, + ospfVirtNbrRestartHelperExitReason + + + + } + STATUS current + DESCRIPTION + "These objects are used to monitor/manage OSPF + virtual neighbors." + ::= { ospfGroups 22 } + + ospfAreaAggregateGroup2 OBJECT-GROUP + OBJECTS { + ospfAreaAggregateAreaID, + ospfAreaAggregateLsdbType, + ospfAreaAggregateNet, + ospfAreaAggregateMask, + ospfAreaAggregateStatus, + ospfAreaAggregateEffect, + ospfAreaAggregateExtRouteTag + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems to support + network prefix aggregation across areas." + ::= { ospfGroups 23 } + + ospfAreaLsaCountGroup OBJECT-GROUP + OBJECTS { + ospfAreaLsaCountNumber + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems that display + per-area, per-LSA-type counters." + ::= { ospfGroups 24 } + + ospfHostGroup2 OBJECT-GROUP + OBJECTS { + ospfHostIpAddress, + ospfHostTOS, + ospfHostMetric, + ospfHostStatus, + ospfHostCfgAreaID + } + STATUS current + DESCRIPTION + "These objects are used for OSPF systems + that support attached hosts." + ::= { ospfGroups 25 } + +-- This object group is included for SMI conformance. It is not a + + + +-- mandatory group for compliance with this MIB + + ospfObsoleteGroup OBJECT-GROUP + OBJECTS { + ospfAuthType + } + STATUS obsolete + DESCRIPTION + "These objects are obsolete and are no longer required for + OSPF systems. They are placed into this group for SMI + conformance." + ::= { ospfGroups 26 } + +END \ No newline at end of file diff --git a/mibs/RFC-5060-PIM-STD-MIB.txt b/mibs/RFC-5060-PIM-STD-MIB.txt new file mode 100644 index 00000000..93488340 --- /dev/null +++ b/mibs/RFC-5060-PIM-STD-MIB.txt @@ -0,0 +1,3967 @@ +PIM-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, mib-2, + NOTIFICATION-TYPE, Unsigned32, + Counter32, Counter64, Gauge32, + TimeTicks FROM SNMPv2-SMI -- [RFC2578] + TEXTUAL-CONVENTION, + RowStatus, TruthValue, + StorageType FROM SNMPv2-TC -- [RFC2579] + MODULE-COMPLIANCE, OBJECT-GROUP, + NOTIFICATION-GROUP FROM SNMPv2-CONF -- [RFC2580] + InterfaceIndexOrZero, + InterfaceIndex FROM IF-MIB -- [RFC2863] + InetAddressType, + InetAddressPrefixLength, + InetAddress, InetVersion FROM INET-ADDRESS-MIB -- [RFC4001] + IANAipRouteProtocol FROM IANA-RTPROTO-MIB; -- [RTPROTO] + +pimStdMIB MODULE-IDENTITY + LAST-UPDATED "200711020000Z" -- 2 November 2007 + ORGANIZATION + "IETF Protocol Independent Multicast (PIM) Working Group" + CONTACT-INFO + "Email: pim@ietf.org + WG charter: + + + + + http://www.ietf.org/html.charters/pim-charter.html" + DESCRIPTION + "The MIB module for management of PIM routers. + + Copyright (C) The IETF Trust (2007). This version of this + MIB module is part of RFC 5060; see the RFC itself for full + legal notices." + REVISION "200711020000Z" -- 2 November 2007 + DESCRIPTION "Initial version, published as RFC 5060." + ::= { mib-2 157 } + +-- +-- Textual Conventions +-- + +PimMode ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The PIM mode in which a group is operating. + + none(1) The group is not using PIM, which may be the + case if, for example, it is a link-local or + unroutable group address. + + ssm(2) Source-Specific Multicast (SSM) with PIM Sparse + Mode. + + asm(3) Any Source Multicast (ASM) with PIM Sparse + Mode. + + bidir(4) Bidirectional PIM. + + dm(5) PIM Dense Mode. + + other(6) Any other PIM mode." + + SYNTAX INTEGER { + none(1), + ssm(2), + asm(3), + bidir(4), + dm(5), + other(6) + } + +PimGroupMappingOriginType ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + + + + "The mechanism by which a PIM group mapping was learned. + + fixed(1) Link-local or unroutable group mappings. + + configRp(2) Local static RP configuration. + + configSsm(3) Local SSM Group configuration. + + bsr(4) The PIM Bootstrap Router (BSR) mechanism. + + autoRP(5) Cisco's Auto-RP mechanism. + + embedded(6) The Embedded-RP mechanism where the RP address + is embedded in the multicast group address. + + other(7) Any other mechanism." + + REFERENCE "RFC 3569, RFC 3956, and RFC 5059" + SYNTAX INTEGER { + fixed(1), + configRp(2), + configSsm(3), + bsr(4), + autoRP(5), + embedded(6), + other(7) + } + +-- +-- Top-level structure +-- + +pimNotifications OBJECT IDENTIFIER ::= { pimStdMIB 0 } +pim OBJECT IDENTIFIER ::= { pimStdMIB 1 } + +pimKeepalivePeriod OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The duration of the Keepalive Timer. This is the period + during which the PIM router will maintain (S,G) state in the + absence of explicit (S,G) local membership or (S,G) join + messages received to maintain it. This timer period is + called the Keepalive_Period in the PIM-SM specification. It + is called the SourceLifetime in the PIM-DM specification. + + + + + The storage type of this object is determined by + pimDeviceConfigStorageType." + REFERENCE "RFC 4601 section 4.11" + DEFVAL { 210 } + ::= { pim 14 } + +pimRegisterSuppressionTime OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The duration of the Register Suppression Timer. This is + the period during which a PIM Designated Router (DR) stops + sending Register-encapsulated data to the Rendezvous Point + (RP) after receiving a Register-Stop message. This object + is used to run timers both at the DR and at the RP. This + timer period is called the Register_Suppression_Time in the + PIM-SM specification. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + REFERENCE "RFC 4601 section 4.11" + DEFVAL { 60 } + ::= { pim 15 } + +pimStarGEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimStarGTable." + ::= { pim 16 } + +pimStarGIEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimStarGITable." + ::= { pim 17 } + +pimSGEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimSGTable." + + + + ::= { pim 18 } + +pimSGIEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimSGITable." + ::= { pim 19 } + +pimSGRptEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimSGRptTable." + ::= { pim 20 } + +pimSGRptIEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of entries in the pimSGRptITable." + ::= { pim 21 } + +pimOutAsserts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of Asserts sent by this router. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.6" + ::= { pim 22 } + +pimInAsserts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of Asserts received by this router. Asserts + are multicast to all routers on a network. This counter is + incremented by all routers that receive an assert, not only + those routers that are contesting the assert. + + + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.6" + ::= { pim 23 } + +pimLastAssertInterface OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The interface on which this router most recently sent or + received an assert, or zero if this router has not sent or + received an assert." + REFERENCE "RFC 4601 section 4.6" + ::= { pim 24 } + +pimLastAssertGroupAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the multicast group address in the most + recently sent or received assert. If this router has not + sent or received an assert, then this object is set to + unknown(0)." + ::= { pim 25 } + +pimLastAssertGroupAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The multicast group address in the most recently sent or + received assert. The InetAddressType is given by the + pimLastAssertGroupAddressType object." + ::= { pim 26 } + +pimLastAssertSourceAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the source address in the most recently + sent or received assert. If the most recent assert was + (*,G), or if this router has not sent or received an assert, + then this object is set to unknown(0)." + ::= { pim 27 } + + + +pimLastAssertSourceAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The source address in the most recently sent or received + assert. The InetAddressType is given by the + pimLastAssertSourceAddressType object." + ::= { pim 28 } + +pimNeighborLossNotificationPeriod OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The minimum time that must elapse between pimNeighborLoss + notifications originated by this router. The maximum value + 65535 represents an 'infinite' time, in which case, no + pimNeighborLoss notifications are ever sent. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + DEFVAL { 0 } + ::= { pim 29 } + +pimNeighborLossCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of neighbor loss events that have occurred. + + This counter is incremented when the neighbor timer expires, + and the router has no other neighbors on the same interface + with the same IP version and a lower IP address than itself. + + This counter is incremented whenever a pimNeighborLoss + notification would be generated. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.3.2" + ::= { pim 30 } + +pimInvalidRegisterNotificationPeriod OBJECT-TYPE + SYNTAX Unsigned32 (10..65535) + + + + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The minimum time that must elapse between + pimInvalidRegister notifications originated by this router. + The default value of 65535 represents an 'infinite' time, in + which case, no pimInvalidRegister notifications are ever + sent. + + The non-zero minimum allowed value provides resilience + against propagation of denial-of-service attacks from the + data and control planes to the network management plane. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + DEFVAL { 65535 } + ::= { pim 31 } + +pimInvalidRegisterMsgsRcvd OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of invalid PIM Register messages that have been + received by this device. + + A PIM Register message is invalid if either + + o the destination address of the Register message does not + match the Group to RP mapping on this device, or + + o this device believes the group address to be within an + SSM address range, but this Register implies ASM usage. + + These conditions can occur transiently while RP mapping + changes propagate through the network. If this counter is + incremented repeatedly over several minutes, then there is a + persisting configuration error that requires correction. + + The active Group to RP mapping on this device is specified + by the object pimGroupMappingPimMode. If there is no such + mapping, then the object pimGroupMappingPimMode is absent. + The RP address contained in the invalid Register is + pimInvalidRegisterRp. + + Multicast data carried by invalid Register messages is + discarded. The discarded data is from a source directly + + + + connected to pimInvalidRegisterOrigin, and is addressed to + pimInvalidRegisterGroup. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.4.2, RFC 3569, and + 'IP Multicast MIB' (August 2007) ipMcastSsmRangeTable" + ::= { pim 32 } + +pimInvalidRegisterAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type stored in pimInvalidRegisterOrigin, + pimInvalidRegisterGroup, and pimInvalidRegisterRp. + + If no invalid Register messages have been received, then + this object is set to unknown(0)." + ::= { pim 33 } + +pimInvalidRegisterOrigin OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The source address of the last invalid Register message + received by this device." + ::= { pim 34 } + +pimInvalidRegisterGroup OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP multicast group address to which the last invalid + Register message received by this device was addressed." + ::= { pim 35 } + +pimInvalidRegisterRp OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The RP address to which the last invalid Register message + received by this device was delivered." + ::= { pim 36 } + + + +pimInvalidJoinPruneNotificationPeriod OBJECT-TYPE + SYNTAX Unsigned32 (10..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The minimum time that must elapse between + pimInvalidJoinPrune notifications originated by this router. + The default value of 65535 represents an 'infinite' time, in + which case, no pimInvalidJoinPrune notifications are ever + sent. + + The non-zero minimum allowed value provides resilience + against propagation of denial-of-service attacks from the + control plane to the network management plane. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + DEFVAL { 65535 } + ::= { pim 37 } + +pimInvalidJoinPruneMsgsRcvd OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of invalid PIM Join/Prune messages that have + been received by this device. + + A PIM Join/Prune message is invalid if either + + o the Group to RP mapping specified by this message does not + match the Group to RP mapping on this device, or + + o this device believes the group address to be within an + SSM address range, but this Join/Prune (*,G) or (S,G,rpt) + implies ASM usage. + + These conditions can occur transiently while RP mapping + changes propagate through the network. If this counter is + incremented repeatedly over several minutes, then there is a + persisting configuration error that requires correction. + + The active Group to RP mapping on this device is specified + by the object pimGroupMappingPimMode. If there is no such + mapping, then the object pimGroupMappingPimMode is absent. + The RP address contained in the invalid Join/Prune is + pimInvalidJoinPruneRp. + + + + Invalid Join/Prune messages are discarded. This may result + in loss of multicast data affecting listeners downstream of + pimInvalidJoinPruneOrigin, for multicast data addressed to + pimInvalidJoinPruneGroup. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.5.2, RFC 3569, and + 'IP Multicast MIB' (August 2007) ipMcastSsmRangeTable" + ::= { pim 38 } + +pimInvalidJoinPruneAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type stored in pimInvalidJoinPruneOrigin, + pimInvalidJoinPruneGroup, and pimInvalidJoinPruneRp. + + If no invalid Join/Prune messages have been received, this + object is set to unknown(0)." + ::= { pim 39 } + +pimInvalidJoinPruneOrigin OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The source address of the last invalid Join/Prune message + received by this device." + ::= { pim 40 } + +pimInvalidJoinPruneGroup OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP multicast group address carried in the last + invalid Join/Prune message received by this device." + ::= { pim 41 } + +pimInvalidJoinPruneRp OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The RP address carried in the last invalid Join/Prune + + + + message received by this device." + ::= { pim 42 } + +pimRPMappingNotificationPeriod OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The minimum time that must elapse between + pimRPMappingChange notifications originated by this router. + The default value of 65535 represents an 'infinite' time, in + which case, no pimRPMappingChange notifications are ever + sent. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + DEFVAL { 65535 } + ::= { pim 43 } + +pimRPMappingChangeCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of changes to active RP mappings on this device. + + Information about active RP mappings is available in + pimGroupMappingTable. Only changes to active mappings cause + this counter to be incremented. That is, changes that + modify the pimGroupMappingEntry with the highest precedence + for a group (lowest value of pimGroupMappingPrecedence). + + Such changes may result from manual configuration of this + device, or from automatic RP mapping discovery methods + including the PIM Bootstrap Router (BSR) mechanism. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 5059" + ::= { pim 44 } + +pimInterfaceElectionNotificationPeriod OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + + + + DESCRIPTION + "The minimum time that must elapse between + pimInterfaceElection notifications originated by this + router. The default value of 65535 represents an 'infinite' + time, in which case, no pimInterfaceElection notifications + are ever sent. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + DEFVAL { 65535 } + ::= { pim 45 } + +pimInterfaceElectionWinCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this device has been elected DR or DF + on any interface. + + Elections occur frequently on newly-active interfaces, as + triggered Hellos establish adjacencies. This counter is not + incremented for elections on an interface until the first + periodic Hello has been sent. If this router is the DR or + DF at the time of sending the first periodic Hello after + interface activation, then this counter is incremented + (once) at that time. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, for example, + when the device is rebooted." + REFERENCE "RFC 4601 section 4.3.2 and RFC 5015 section 3.5.2" + ::= { pim 46 } + +pimRefreshInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The interval between successive State Refresh messages sent + by an Originator. This timer period is called the + RefreshInterval in the PIM-DM specification. This object is + used only by PIM-DM. + + The storage type of this object is determined by + pimDeviceConfigStorageType." + REFERENCE "RFC 3973 section 4.8" + + + + DEFVAL { 60 } + ::= { pim 47 } + +pimDeviceConfigStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The storage type used for the global PIM configuration of + this device, comprised of the objects listed below. If this + storage type takes the value 'permanent', write-access to + the listed objects need not be allowed. + + The objects described by this storage type are: + pimKeepalivePeriod, pimRegisterSuppressionTime, + pimNeighborLossNotificationPeriod, + pimInvalidRegisterNotificationPeriod, + pimInvalidJoinPruneNotificationPeriod, + pimRPMappingNotificationPeriod, + pimInterfaceElectionNotificationPeriod, and + pimRefreshInterval.--IPI Comments: Snmpset is not supported." + DEFVAL { nonVolatile } + ::= { pim 48 } + +-- +-- The PIM Interface Table +-- + +pimInterfaceTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the router's PIM interfaces. + PIM is enabled on all interfaces listed in this table." + ::= { pim 1 } + +pimInterfaceEntry OBJECT-TYPE + SYNTAX PimInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimInterfaceTable. This + entry is preserved on agent restart." + INDEX { pimInterfaceIfIndex, + pimInterfaceIPVersion } + ::= { pimInterfaceTable 1 } + + + + +PimInterfaceEntry ::= SEQUENCE { + pimInterfaceIfIndex InterfaceIndex, + pimInterfaceIPVersion InetVersion, + pimInterfaceAddressType InetAddressType, + pimInterfaceAddress InetAddress, + pimInterfaceGenerationIDValue Unsigned32, + pimInterfaceDR InetAddress, + pimInterfaceDRPriority Unsigned32, + pimInterfaceDRPriorityEnabled TruthValue, + pimInterfaceHelloInterval Unsigned32, + pimInterfaceTrigHelloInterval Unsigned32, + pimInterfaceHelloHoldtime Unsigned32, + pimInterfaceJoinPruneInterval Unsigned32, + pimInterfaceJoinPruneHoldtime Unsigned32, + pimInterfaceDFElectionRobustness Unsigned32, + pimInterfaceLanDelayEnabled TruthValue, + pimInterfacePropagationDelay Unsigned32, + pimInterfaceOverrideInterval Unsigned32, + pimInterfaceEffectPropagDelay Unsigned32, + pimInterfaceEffectOverrideIvl Unsigned32, + pimInterfaceSuppressionEnabled TruthValue, + pimInterfaceBidirCapable TruthValue, + pimInterfaceDomainBorder TruthValue, + pimInterfaceStubInterface TruthValue, + pimInterfacePruneLimitInterval Unsigned32, + pimInterfaceGraftRetryInterval Unsigned32, + pimInterfaceSRPriorityEnabled TruthValue, + pimInterfaceStatus RowStatus, + pimInterfaceStorageType StorageType +} + +pimInterfaceIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex value of this PIM interface." + ::= { pimInterfaceEntry 1 } + +pimInterfaceIPVersion OBJECT-TYPE + SYNTAX InetVersion + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP version of this PIM interface. A physical interface + may be configured in multiple modes concurrently, e.g., IPv4 + and IPv6; however, the traffic is considered to be logically + separate." + + + + ::= { pimInterfaceEntry 2 } + +pimInterfaceAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of this PIM interface." + ::= { pimInterfaceEntry 3 } + +pimInterfaceAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary IP address of this router on this PIM + interface. The InetAddressType is given by the + pimInterfaceAddressType object." + REFERENCE "RFC 4601 sections 4.1.6, 4.3.1-4.3.4, and 4.5.1" + ::= { pimInterfaceEntry 4 } + +pimInterfaceGenerationIDValue OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of the Generation ID this router inserted in the + last PIM Hello message it sent on this interface." + REFERENCE "RFC 4601 section 4.3.1" + ::= { pimInterfaceEntry 5 } + +pimInterfaceDR OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary IP address of the Designated Router on this PIM + interface. The InetAddressType is given by the + pimInterfaceAddressType object." + REFERENCE "RFC 4601 section 4.3" + ::= { pimInterfaceEntry 6 } + +pimInterfaceDRPriority OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Designated Router Priority value inserted into the DR + + + + Priority option in PIM Hello messages transmitted on this + interface. Numerically higher values for this object + indicate higher priorities." + REFERENCE "RFC 4601 section 4.3.2" + DEFVAL { 1 } + ::= { pimInterfaceEntry 7 } + +pimInterfaceDRPriorityEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if all routers on this interface are + using the DR Priority option." + REFERENCE "RFC 4601 section 4.3.2" + ::= { pimInterfaceEntry 8 } + +pimInterfaceHelloInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..18000) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The frequency at which PIM Hello messages are transmitted + on this interface. This object corresponds to the + 'Hello_Period' timer value defined in the PIM-SM + specification. A value of zero represents an 'infinite' + interval, and indicates that periodic PIM Hello messages + should not be sent on this interface." + REFERENCE "RFC 4601 section 9" + DEFVAL { 30 } + ::= { pimInterfaceEntry 9 } + +pimInterfaceTrigHelloInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..60) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The maximum time before this router sends a triggered PIM + Hello message on this interface. This object corresponds to + the 'Trigered_Hello_Delay' timer value defined in the PIM-SM + specification. A value of zero has no special meaning and + indicates that triggered PIM Hello messages should always be + sent immediately." + REFERENCE "RFC 4601 section 4.11" + DEFVAL { 5 } + ::= { pimInterfaceEntry 10 } + + + +pimInterfaceHelloHoldtime OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value set in the Holdtime field of PIM Hello messages + transmitted on this interface. A value of 65535 represents + an 'infinite' holdtime. Implementations are recommended + to use a holdtime that is 3.5 times the value of + pimInterfaceHelloInterval, or 65535 if + pimInterfaceHelloInterval is set to zero." + REFERENCE "RFC 4601 sections 4.3.2 and 4.9.2" + DEFVAL { 105 } + ::= { pimInterfaceEntry 11 } + +pimInterfaceJoinPruneInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..18000) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The frequency at which this router sends PIM Join/Prune + messages on this PIM interface. This object corresponds to + the 't_periodic' timer value defined in the PIM-SM + specification. A value of zero represents an 'infinite' + interval, and indicates that periodic PIM Join/Prune + messages should not be sent on this interface." + REFERENCE "RFC 4601 section 4.11" + DEFVAL { 60 } + ::= { pimInterfaceEntry 12 } + +pimInterfaceJoinPruneHoldtime OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value inserted into the Holdtime field of a PIM + Join/Prune message sent on this interface. A value of 65535 + represents an 'infinite' holdtime. Implementations are + recommended to use a holdtime that is 3.5 times the value of + pimInterfaceJoinPruneInterval, or 65535 if + pimInterfaceJoinPruneInterval is set to zero. PIM-DM + implementations are recommended to use the value of + pimInterfacePruneLimitInterval." + REFERENCE "RFC 4601 sections 4.5.3 and 4.9.5" + DEFVAL { 210 } + + + + ::= { pimInterfaceEntry 13 } + +pimInterfaceDFElectionRobustness OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The minimum number of PIM DF-Election messages that must be + lost in order for DF election on this interface to fail.--IPI Comments: Not Supported" + DEFVAL { 3 } + ::= { pimInterfaceEntry 14 } + +pimInterfaceLanDelayEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if all routers on this interface are + using the LAN Prune Delay option." + REFERENCE "RFC 4601 sections 4.3.3 and 4.9.2" + ::= { pimInterfaceEntry 15 } + +pimInterfacePropagationDelay OBJECT-TYPE + SYNTAX Unsigned32 (0..32767) + UNITS "milliseconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The expected propagation delay between PIM routers on this + network or link. + + This router inserts this value into the Propagation_Delay + field of the LAN Prune Delay option in the PIM Hello + messages sent on this interface. Implementations SHOULD + enforce a lower bound on the permitted values for this + object to allow for scheduling and processing delays within + the local router." + DEFVAL { 500 } + ::= { pimInterfaceEntry 16 } + +pimInterfaceOverrideInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "milliseconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value this router inserts into the Override_Interval + field of the LAN Prune Delay option in the PIM Hello + + + + messages it sends on this interface. + + When overriding a prune, PIM routers pick a random timer + duration up to the value of this object. The more PIM + routers that are active on a network, the more likely it is + that the prune will be overridden after a small proportion + of this time has elapsed. + + The more PIM routers are active on this network, the larger + this object should be to obtain an optimal spread of prune + override latencies." + REFERENCE "RFC 4601 section 4.3.3" + DEFVAL { 2500 } + ::= { pimInterfaceEntry 17 } + +pimInterfaceEffectPropagDelay OBJECT-TYPE + SYNTAX Unsigned32 (0..32767) + UNITS "milliseconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Effective Propagation Delay on this interface. This + object is always 500 if pimInterfaceLanDelayEnabled is + FALSE." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimInterfaceEntry 18 } + +pimInterfaceEffectOverrideIvl OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "milliseconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Effective Override Interval on this interface. This + object is always 2500 if pimInterfaceLanDelayEnabled is + FALSE." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimInterfaceEntry 19 } + +pimInterfaceSuppressionEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether join suppression is enabled on this interface. + This object is always TRUE if pimInterfaceLanDelayEnabled is + FALSE." + REFERENCE "RFC 4601 section 4.3.3" + + + + ::= { pimInterfaceEntry 20 } + +pimInterfaceBidirCapable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if all routers on this interface are + using the Bidirectional-PIM Capable option." + REFERENCE "RFC 5015 section 3.2 and 3.7.4" + ::= { pimInterfaceEntry 21 } + +pimInterfaceDomainBorder OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Whether or not this interface is a PIM domain border. This + includes acting as a border for PIM Bootstrap Router (BSR) + messages, if the BSR mechanism is in use." + DEFVAL { false } + ::= { pimInterfaceEntry 22 } + +pimInterfaceStubInterface OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Whether this interface is a 'stub interface'. If this + object is set to TRUE, then no PIM packets are sent out this + interface, and any received PIM packets are ignored. + + Setting this object to TRUE is a security measure for + interfaces towards untrusted hosts. This allows an + interface to be configured for use with IGMP (Internet Group + Management Protocol) or MLD (Multicast Listener Discovery) + only, which protects the PIM router from forged PIM messages + on the interface. + + To communicate with other PIM routers using this interface, + this object must remain set to FALSE. + + Changing the value of this object while the interface is + operational causes PIM to be disabled and then re-enabled on + this interface." + REFERENCE "RFC 3376, RFC 3810" + DEFVAL { false } + ::= { pimInterfaceEntry 23 } + + + +pimInterfacePruneLimitInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The minimum interval that must transpire between two + successive Prunes sent by a router. This object corresponds + to the 't_limit' timer value defined in the PIM-DM + specification. This object is used only by PIM-DM." + REFERENCE "RFC 3973 section 4.8" + DEFVAL { 60 } + ::= { pimInterfaceEntry 24 } + +pimInterfaceGraftRetryInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The minimum interval that must transpire between two + successive Grafts sent by a router. This object corresponds + to the 'Graft_Retry_Period' timer value defined in the + PIM-DM specification. This object is used only by PIM-DM." + REFERENCE "RFC 3973 section 4.8" + DEFVAL { 3 } + ::= { pimInterfaceEntry 25 } + +pimInterfaceSRPriorityEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if all routers on this interface are + using the State Refresh option. This object is used only by + PIM-DM." + ::= { pimInterfaceEntry 26 } + +pimInterfaceStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this entry. Creating the entry enables PIM + on the interface; destroying the entry disables PIM on the + interface. + + This status object can be set to active(1) without setting + + + + any other columnar objects in this entry. + + All writeable objects in this entry can be modified when the + status of this entry is active(1)." + ::= { pimInterfaceEntry 27 } + +pimInterfaceStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row.---IPI Comments: Snmpset is not supported." + DEFVAL { nonVolatile } + ::= { pimInterfaceEntry 28 } + +-- +-- The PIM Neighbor Table +-- + +pimNeighborTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimNeighborEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the router's PIM neighbors." + ::= { pim 2 } + +pimNeighborEntry OBJECT-TYPE + SYNTAX PimNeighborEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimNeighborTable." + INDEX { pimNeighborIfIndex, + pimNeighborAddressType, + pimNeighborAddress } + ::= { pimNeighborTable 1 } + +PimNeighborEntry ::= SEQUENCE { + pimNeighborIfIndex InterfaceIndex, + pimNeighborAddressType InetAddressType, + pimNeighborAddress InetAddress, + pimNeighborGenerationIDPresent TruthValue, + pimNeighborGenerationIDValue Unsigned32, + pimNeighborUpTime TimeTicks, + pimNeighborExpiryTime TimeTicks, + + + + pimNeighborDRPriorityPresent TruthValue, + pimNeighborDRPriority Unsigned32, + pimNeighborLanPruneDelayPresent TruthValue, + pimNeighborTBit TruthValue, + pimNeighborPropagationDelay Unsigned32, + pimNeighborOverrideInterval Unsigned32, + pimNeighborBidirCapable TruthValue, + pimNeighborSRCapable TruthValue +} + +pimNeighborIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The value of ifIndex for the interface used to reach this + PIM neighbor." + ::= { pimNeighborEntry 1 } + +pimNeighborAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this PIM neighbor." + ::= { pimNeighborEntry 2 } + +pimNeighborAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The primary IP address of this PIM neighbor. The + InetAddressType is given by the pimNeighborAddressType + object." + ::= { pimNeighborEntry 3 } + +pimNeighborGenerationIDPresent OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if this neighbor is using the Generation + ID option." + REFERENCE "RFC 4601 section 4.3.1" + ::= { pimNeighborEntry 4 } + +pimNeighborGenerationIDValue OBJECT-TYPE + + + + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of the Generation ID from the last PIM Hello + message received from this neighbor. This object is always + zero if pimNeighborGenerationIDPresent is FALSE." + REFERENCE "RFC 4601 section 4.3.1" + ::= { pimNeighborEntry 5 } + +pimNeighborUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this PIM neighbor (last) became a neighbor + of the local router." + ::= { pimNeighborEntry 6 } + +pimNeighborExpiryTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum time remaining before this PIM neighbor will + time out. The value zero indicates that this PIM neighbor + will never time out." + ::= { pimNeighborEntry 7 } + +pimNeighborDRPriorityPresent OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if this neighbor is using the DR Priority + option." + REFERENCE "RFC 4601 section 4.3.2" + ::= { pimNeighborEntry 8 } + +pimNeighborDRPriority OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of the Designated Router Priority from the last + PIM Hello message received from this neighbor. This object + is always zero if pimNeighborDRPriorityPresent is FALSE." + REFERENCE "RFC 4601 section 4.3.2" + + + + ::= { pimNeighborEntry 9 } + +pimNeighborLanPruneDelayPresent OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if this neighbor is using the LAN Prune + Delay option." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimNeighborEntry 10 } + +pimNeighborTBit OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the T bit was set in the LAN Prune Delay option + received from this neighbor. The T bit specifies the + ability of the neighbor to disable join suppression. This + object is always TRUE if pimNeighborLanPruneDelayPresent is + FALSE." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimNeighborEntry 11 } + +pimNeighborPropagationDelay OBJECT-TYPE + SYNTAX Unsigned32 (0..32767) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of the Propagation_Delay field of the LAN Prune + Delay option received from this neighbor. This object is + always zero if pimNeighborLanPruneDelayPresent is FALSE." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimNeighborEntry 12 } + +pimNeighborOverrideInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of the Override_Interval field of the LAN Prune + Delay option received from this neighbor. This object is + always zero if pimNeighborLanPruneDelayPresent is FALSE." + REFERENCE "RFC 4601 section 4.3.3" + ::= { pimNeighborEntry 13 } + +pimNeighborBidirCapable OBJECT-TYPE + + + + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if this neighbor is using the + Bidirectional-PIM Capable option." + REFERENCE "RFC 5015 section 3.2 and 3.7.4" + ::= { pimNeighborEntry 14 } + +pimNeighborSRCapable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Evaluates to TRUE if this neighbor is using the State + Refresh Capable option. This object is used only by + PIM-DM." + REFERENCE "RFC 3973 section 4.3.4" + ::= { pimNeighborEntry 15 } + +-- +-- The PIM Neighbor Secondary Address Table +-- + +pimNbrSecAddressTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimNbrSecAddressEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the secondary addresses + advertised by each PIM neighbor (on a subset of the rows of + the pimNeighborTable defined above)." + REFERENCE "RFC 4601 section 4.3.4" + ::= { pim 3 } + +pimNbrSecAddressEntry OBJECT-TYPE + SYNTAX PimNbrSecAddressEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimNbrSecAddressTable." + INDEX { pimNbrSecAddressIfIndex, + pimNbrSecAddressType, + pimNbrSecAddressPrimary, + pimNbrSecAddress } + ::= { pimNbrSecAddressTable 1 } + +PimNbrSecAddressEntry ::= SEQUENCE { + + + + pimNbrSecAddressIfIndex InterfaceIndex, + pimNbrSecAddressType InetAddressType, + pimNbrSecAddressPrimary InetAddress, + pimNbrSecAddress InetAddress +} + +pimNbrSecAddressIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The value of ifIndex for the interface used to reach this + PIM neighbor." + ::= { pimNbrSecAddressEntry 1 } + +pimNbrSecAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this PIM neighbor." + ::= { pimNbrSecAddressEntry 2 } + +pimNbrSecAddressPrimary OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The primary IP address of this PIM neighbor. The + InetAddressType is given by the pimNbrSecAddressType + object." + ::= { pimNbrSecAddressEntry 3 } + +pimNbrSecAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The secondary IP address of this PIM neighbor. The + InetAddressType is given by the pimNbrSecAddressType + object." + ::= { pimNbrSecAddressEntry 4 } + +-- +-- The PIM (*,G) State Table +-- + +pimStarGTable OBJECT-TYPE + + + + SYNTAX SEQUENCE OF PimStarGEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the non-interface specific + (*,G) state that PIM has." + REFERENCE "RFC 4601 section 4.1.3" + ::= { pim 4 } + +pimStarGEntry OBJECT-TYPE + SYNTAX PimStarGEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimStarGTable." + INDEX { pimStarGAddressType, + pimStarGGrpAddress } + ::= { pimStarGTable 1 } + +PimStarGEntry ::= SEQUENCE { + pimStarGAddressType InetAddressType, + pimStarGGrpAddress InetAddress, + pimStarGUpTime TimeTicks, + pimStarGPimMode PimMode, + pimStarGRPAddressType InetAddressType, + pimStarGRPAddress InetAddress, + pimStarGPimModeOrigin PimGroupMappingOriginType, + pimStarGRPIsLocal TruthValue, + pimStarGUpstreamJoinState INTEGER, + pimStarGUpstreamJoinTimer TimeTicks, + pimStarGUpstreamNeighborType InetAddressType, + pimStarGUpstreamNeighbor InetAddress, + pimStarGRPFIfIndex InterfaceIndexOrZero, + pimStarGRPFNextHopType InetAddressType, + pimStarGRPFNextHop InetAddress, + pimStarGRPFRouteProtocol IANAipRouteProtocol, + pimStarGRPFRouteAddress InetAddress, + pimStarGRPFRoutePrefixLength InetAddressPrefixLength, + pimStarGRPFRouteMetricPref Unsigned32, + pimStarGRPFRouteMetric Unsigned32 +} + +pimStarGAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this multicast group." + + + + ::= { pimStarGEntry 1 } + +pimStarGGrpAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group address. The InetAddressType is given + by the pimStarGAddressType object." + ::= { pimStarGEntry 2 } + +pimStarGUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimStarGEntry 3 } + +pimStarGPimMode OBJECT-TYPE + SYNTAX PimMode { asm(3), bidir(4) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether this entry represents an ASM (Any Source Multicast, + used with PIM-SM) or BIDIR-PIM group." + ::= { pimStarGEntry 4 } + +pimStarGRPAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the Rendezvous Point (RP), or + unknown(0) if the RP address is unknown." + ::= { pimStarGEntry 5 } + +pimStarGRPAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the Rendezvous Point (RP) for the group. + The InetAddressType is given by the pimStarGRPAddressType." + ::= { pimStarGEntry 6 } + +pimStarGPimModeOrigin OBJECT-TYPE + SYNTAX PimGroupMappingOriginType + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The mechanism by which the PIM mode and RP for the group + were learned." + ::= { pimStarGEntry 7 } + +pimStarGRPIsLocal OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router is the RP for the group." + ::= { pimStarGEntry 8 } + +pimStarGUpstreamJoinState OBJECT-TYPE + SYNTAX INTEGER { + notJoined (1), + joined (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router should join the RP tree for the + group. This corresponds to the state of the upstream (*,G) + state machine in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.5.6" + ::= { pimStarGEntry 9 } + +pimStarGUpstreamJoinTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before the local router next sends a + periodic (*,G) Join message on pimStarGRPFIfIndex. This + timer is called the (*,G) Upstream Join Timer in the PIM-SM + specification. This object is zero if the timer is not + running." + REFERENCE "RFC 4601 section 4.10" + ::= { pimStarGEntry 10 } + +pimStarGUpstreamNeighborType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary address type of the upstream neighbor, or + + + + unknown(0) if the upstream neighbor address is unknown or is + not a PIM neighbor." + ::= { pimStarGEntry 11 } + +pimStarGUpstreamNeighbor OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary address of the neighbor on pimStarGRPFIfIndex + that the local router is sending periodic (*,G) Join + messages to. The InetAddressType is given by the + pimStarGUpstreamNeighborType object. This address is called + RPF'(*,G) in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.1.6" + ::= { pimStarGEntry 12 } + +pimStarGRPFIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of ifIndex for the Reverse Path Forwarding + (RPF) interface towards the RP, or zero if the RPF + interface is unknown." + ::= { pimStarGEntry 13 } + +pimStarGRPFNextHopType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the RPF next hop towards the RP, or + unknown(0) if the RPF next hop is unknown." + ::= { pimStarGEntry 14 } + +pimStarGRPFNextHop OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the RPF next hop towards the RP. The + InetAddressType is given by the pimStarGRPFNextHopType + object. This address is called MRIB.next_hop(RP(G)) + in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.5.5" + ::= { pimStarGEntry 15 } + + + + +pimStarGRPFRouteProtocol OBJECT-TYPE + SYNTAX IANAipRouteProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing mechanism via which the route used to find the + RPF interface towards the RP was learned." + ::= { pimStarGEntry 16 } + +pimStarGRPFRouteAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address that, when combined with the corresponding + value of pimStarGRPFRoutePrefixLength, identifies the route + used to find the RPF interface towards the RP. The + InetAddressType is given by the pimStarGRPFNextHopType + object. + + This address object is only significant up to + pimStarGRPFRoutePrefixLength bits. The remainder of the + address bits are zero." + ::= { pimStarGEntry 17 } + +pimStarGRPFRoutePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The prefix length that, when combined with the + corresponding value of pimStarGRPFRouteAddress, identifies + the route used to find the RPF interface towards the RP. + The InetAddressType is given by the pimStarGRPFNextHopType + object." + ::= { pimStarGEntry 18 } + +pimStarGRPFRouteMetricPref OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The metric preference of the route used to find the RPF + interface towards the RP." + ::= { pimStarGEntry 19 } + +pimStarGRPFRouteMetric OBJECT-TYPE + SYNTAX Unsigned32 + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing metric of the route used to find the RPF + interface towards the RP." + ::= { pimStarGEntry 20 } + +-- +-- The PIM (*,G,I) State Table +-- + +pimStarGITable OBJECT-TYPE + SYNTAX SEQUENCE OF PimStarGIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interface-specific (*,G) + state that PIM has." + REFERENCE "RFC 4601 section 4.1.3" + ::= { pim 5 } + +pimStarGIEntry OBJECT-TYPE + SYNTAX PimStarGIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimStarGITable." + INDEX { pimStarGAddressType, + pimStarGGrpAddress, + pimStarGIIfIndex } + ::= { pimStarGITable 1 } + +PimStarGIEntry ::= SEQUENCE { + pimStarGIIfIndex InterfaceIndex, + pimStarGIUpTime TimeTicks, + pimStarGILocalMembership TruthValue, + pimStarGIJoinPruneState INTEGER, + pimStarGIPrunePendingTimer TimeTicks, + pimStarGIJoinExpiryTimer TimeTicks, + pimStarGIAssertState INTEGER, + pimStarGIAssertTimer TimeTicks, + pimStarGIAssertWinnerAddressType InetAddressType, + pimStarGIAssertWinnerAddress InetAddress, + pimStarGIAssertWinnerMetricPref Unsigned32, + pimStarGIAssertWinnerMetric Unsigned32 +} + +pimStarGIIfIndex OBJECT-TYPE + + + + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex of the interface that this entry corresponds + to." + ::= { pimStarGIEntry 1 } + +pimStarGIUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimStarGIEntry 2 } + +pimStarGILocalMembership OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router has (*,G) local membership on this + interface (resulting from a mechanism such as IGMP or MLD). + This corresponds to local_receiver_include(*,G,I) in the + PIM-SM specification." + REFERENCE "RFC 3376, RFC 3810, and RFC 4601 section 4.1.6" + ::= { pimStarGIEntry 3 } + +pimStarGIJoinPruneState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + join (2), + prunePending (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state resulting from (*,G) Join/Prune messages + received on this interface. This corresponds to the state + of the downstream per-interface (*,G) state machine in the + PIM-SM specification." + REFERENCE "RFC 4601 section 4.5.2" + ::= { pimStarGIEntry 4 } + +pimStarGIPrunePendingTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "The time remaining before the local router acts on a (*,G) + Prune message received on this interface, during which the + router is waiting to see whether another downstream router + will override the Prune message. This timer is called the + (*,G) Prune-Pending Timer in the PIM-SM specification. This + object is zero if the timer is not running." + REFERENCE "RFC 4601 section 4.5.1" + ::= { pimStarGIEntry 5 } + +pimStarGIJoinExpiryTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before (*,G) Join state for this + interface expires. This timer is called the (*,G) Join + Expiry Timer in the PIM-SM specification. This object is + zero if the timer is not running. A value of 'FFFFFFFF'h + indicates an infinite expiry time." + REFERENCE "RFC 4601 section 4.10" + ::= { pimStarGIEntry 6 } + +pimStarGIAssertState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + iAmAssertWinner (2), + iAmAssertLoser (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The (*,G) Assert state for this interface. This + corresponds to the state of the per-interface (*,G) Assert + state machine in the PIM-SM specification. If + pimStarGPimMode is 'bidir', this object must be 'noInfo'." + REFERENCE "RFC 4601 section 4.6.2" + ::= { pimStarGIEntry 7 } + +pimStarGIAssertTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimStarGIAssertState is 'iAmAssertWinner', this is the + time remaining before the local router next sends a (*,G) + Assert message on this interface. If pimStarGIAssertState + is 'iAmAssertLoser', this is the time remaining before the + + + + (*,G) Assert state expires. If pimStarGIAssertState is + 'noInfo', this is zero. This timer is called the (*,G) + Assert Timer in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.6.2" + ::= { pimStarGIEntry 8 } + +pimStarGIAssertWinnerAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimStarGIAssertState is 'iAmAssertLoser', this is the + address type of the assert winner; otherwise, this object is + unknown(0)." + ::= { pimStarGIEntry 9 } + +pimStarGIAssertWinnerAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimStarGIAssertState is 'iAmAssertLoser', this is the + address of the assert winner. The InetAddressType is given + by the pimStarGIAssertWinnerAddressType object." + ::= { pimStarGIEntry 10 } + +pimStarGIAssertWinnerMetricPref OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimStarGIAssertState is 'iAmAssertLoser', this is the + metric preference of the route to the RP advertised by the + assert winner; otherwise, this object is zero." + ::= { pimStarGIEntry 11 } + +pimStarGIAssertWinnerMetric OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimStarGIAssertState is 'iAmAssertLoser', this is the + routing metric of the route to the RP advertised by the + assert winner; otherwise, this object is zero." + ::= { pimStarGIEntry 12 } + +-- +-- The PIM (S,G) State Table + + + +-- + +pimSGTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimSGEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the non-interface specific + (S,G) state that PIM has." + REFERENCE "RFC 4601 section 4.1.4" + ::= { pim 6 } + +pimSGEntry OBJECT-TYPE + SYNTAX PimSGEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimSGTable." + INDEX { pimSGAddressType, + pimSGGrpAddress, + pimSGSrcAddress } + ::= { pimSGTable 1 } + +PimSGEntry ::= SEQUENCE { + pimSGAddressType InetAddressType, + pimSGGrpAddress InetAddress, + pimSGSrcAddress InetAddress, + pimSGUpTime TimeTicks, + pimSGPimMode PimMode, + pimSGUpstreamJoinState INTEGER, + pimSGUpstreamJoinTimer TimeTicks, + pimSGUpstreamNeighbor InetAddress, + pimSGRPFIfIndex InterfaceIndexOrZero, + pimSGRPFNextHopType InetAddressType, + pimSGRPFNextHop InetAddress, + pimSGRPFRouteProtocol IANAipRouteProtocol, + pimSGRPFRouteAddress InetAddress, + pimSGRPFRoutePrefixLength InetAddressPrefixLength, + pimSGRPFRouteMetricPref Unsigned32, + pimSGRPFRouteMetric Unsigned32, + pimSGSPTBit TruthValue, + pimSGKeepaliveTimer TimeTicks, + pimSGDRRegisterState INTEGER, + pimSGDRRegisterStopTimer TimeTicks, + pimSGRPRegisterPMBRAddressType InetAddressType, + pimSGRPRegisterPMBRAddress InetAddress, + pimSGUpstreamPruneState INTEGER, + pimSGUpstreamPruneLimitTimer TimeTicks, + + + + pimSGOriginatorState INTEGER, + pimSGSourceActiveTimer TimeTicks, + pimSGStateRefreshTimer TimeTicks +} + +pimSGAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the source and multicast group for this + entry." + ::= { pimSGEntry 1 } + +pimSGGrpAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group address for this entry. The + InetAddressType is given by the pimSGAddressType object." + ::= { pimSGEntry 2 } + +pimSGSrcAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The source address for this entry. The InetAddressType is + given by the pimSGAddressType object." + ::= { pimSGEntry 3 } + +pimSGUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimSGEntry 4 } + +pimSGPimMode OBJECT-TYPE + SYNTAX PimMode { ssm(2), asm(3) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether pimSGGrpAddress is an SSM (Source Specific + Multicast, used with PIM-SM) or ASM (Any Source Multicast, + used with PIM-SM) group." + + + + REFERENCE "RFC 4601 section 4.5.2, RFC 3569, and + 'IP Multicast MIB' (August 2007) ipMcastSsmRangeTable" + ::= { pimSGEntry 5 } + +pimSGUpstreamJoinState OBJECT-TYPE + SYNTAX INTEGER { + notJoined (1), + joined (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router should join the shortest-path tree + for the source and group represented by this entry. This + corresponds to the state of the upstream (S,G) state machine + in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.5.7" + ::= { pimSGEntry 6 } + +pimSGUpstreamJoinTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before the local router next sends a + periodic (S,G) Join message on pimSGRPFIfIndex. This timer + is called the (S,G) Upstream Join Timer in the PIM-SM + specification. This object is zero if the timer is not + running." + REFERENCE "RFC 4601 sections 4.10 and 4.11" + ::= { pimSGEntry 7 } + +pimSGUpstreamNeighbor OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary address of the neighbor on pimSGRPFIfIndex that + the local router is sending periodic (S,G) Join messages to. + This is zero if the RPF next hop is unknown or is not a + PIM neighbor. The InetAddressType is given by the + pimSGAddressType object. This address is called RPF'(S,G) + in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.1.6" + ::= { pimSGEntry 8 } + +pimSGRPFIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of ifIndex for the RPF interface towards the + source, or zero if the RPF interface is unknown." + ::= { pimSGEntry 9 } + +pimSGRPFNextHopType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the RPF next hop towards the source, or + unknown(0) if the RPF next hop is unknown." + ::= { pimSGEntry 10 } + +pimSGRPFNextHop OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the RPF next hop towards the source. The + InetAddressType is given by the pimSGRPFNextHopType. This + address is called MRIB.next_hop(S) in the PIM-SM + specification." + REFERENCE "RFC 4601 section 4.5.5" + ::= { pimSGEntry 11 } + +pimSGRPFRouteProtocol OBJECT-TYPE + SYNTAX IANAipRouteProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing mechanism via which the route used to find the + RPF interface towards the source was learned." + ::= { pimSGEntry 12 } + +pimSGRPFRouteAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address that, when combined with the corresponding + value of pimSGRPFRoutePrefixLength, identifies the route + used to find the RPF interface towards the source. The + InetAddressType is given by the pimSGRPFNextHopType object. + + This address object is only significant up to + + + + pimSGRPFRoutePrefixLength bits. The remainder of the + address bits are zero." + ::= { pimSGEntry 13 } + +pimSGRPFRoutePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The prefix length that, when combined with the + corresponding value of pimSGRPFRouteAddress, identifies the + route used to find the RPF interface towards the source. + The InetAddressType is given by the pimSGRPFNextHopType + object." + ::= { pimSGEntry 14 } + +pimSGRPFRouteMetricPref OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The metric preference of the route used to find the RPF + interface towards the source." + ::= { pimSGEntry 15 } + +pimSGRPFRouteMetric OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing metric of the route used to find the RPF + interface towards the source." + ::= { pimSGEntry 16 } + +pimSGSPTBit OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the SPT bit is set; and therefore whether + forwarding is taking place on the shortest-path tree." + ::= { pimSGEntry 17 } + +pimSGKeepaliveTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + + + "The time remaining before this (S,G) state expires, in + the absence of explicit (S,G) local membership or (S,G) + Join messages received to maintain it. This timer is + called the (S,G) Keepalive Timer in the PIM-SM + specification." + REFERENCE "RFC 4601 section 4.1.4" + ::= { pimSGEntry 18 } + +pimSGDRRegisterState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + join (2), + joinPending (3), + prune (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router should encapsulate (S,G) data + packets in Register messages and send them to the RP. This + corresponds to the state of the per-(S,G) Register state + machine in the PIM-SM specification. This object is always + 'noInfo' unless pimSGPimMode is 'asm'." + REFERENCE "RFC 4601 section 4.4.1" + ::= { pimSGEntry 19 } + +pimSGDRRegisterStopTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGDRRegisterState is 'prune', this is the time + remaining before the local router sends a Null-Register + message to the RP. If pimSGDRRegisterState is + 'joinPending', this is the time remaining before the local + router resumes encapsulating data packets and sending them + to the RP. Otherwise, this is zero. This timer is called + the Register-Stop Timer in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.4" + ::= { pimSGEntry 20 } + +pimSGRPRegisterPMBRAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of the first PIM Multicast Border Router + to send a Register message with the Border bit set. This + + + + object is unknown(0) if the local router is not the RP for + the group." + ::= { pimSGEntry 21 } + +pimSGRPRegisterPMBRAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the first PIM Multicast Border Router to + send a Register message with the Border bit set. The + InetAddressType is given by the + pimSGRPRegisterPMBRAddressType object." + ::= { pimSGEntry 22 } + +pimSGUpstreamPruneState OBJECT-TYPE + SYNTAX INTEGER { + forwarding (1), + ackpending (2), + pruned (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router has pruned itself from the tree. + This corresponds to the state of the upstream prune (S,G) + state machine in the PIM-DM specification. This object is + used only by PIM-DM." + REFERENCE "RFC 3973 section 4.4.1" + ::= { pimSGEntry 23 } + +pimSGUpstreamPruneLimitTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before the local router may send a (S,G) + Prune message on pimSGRPFIfIndex. This timer is called the + (S,G) Prune Limit Timer in the PIM-DM specification. This + object is zero if the timer is not running. This object is + used only by PIM-DM." + REFERENCE "RFC 2973 section 4.8" + ::= { pimSGEntry 24 } + +pimSGOriginatorState OBJECT-TYPE + SYNTAX INTEGER { + notOriginator (1), + originator (2) + + + + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the router is an originator for an (S,G) message + flow. This corresponds to the state of the per-(S,G) + Originator state machine in the PIM-DM specification. This + object is used only by PIM-DM." + REFERENCE "RFC 3973 section 4.5.2" + ::= { pimSGEntry 25 } + +pimSGSourceActiveTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGOriginatorState is 'originator', this is the time + remaining before the local router reverts to a notOriginator + state. Otherwise, this is zero. This timer is called the + Source Active Timer in the PIM-DM specification. This + object is used only by PIM-DM." + REFERENCE "RFC 3973 section 4.8" + ::= { pimSGEntry 26 } + +pimSGStateRefreshTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGOriginatorState is 'originator', this is the time + remaining before the local router sends a State Refresh + message. Otherwise, this is zero. This timer is called the + State Refresh Timer in the PIM-DM specification. This + object is used only by PIM-DM." + REFERENCE "RFC 3973 section 4.8" + ::= { pimSGEntry 27 } + +-- +-- The PIM (S,G,I) State Table +-- + +pimSGITable OBJECT-TYPE + SYNTAX SEQUENCE OF PimSGIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interface-specific (S,G) + state that PIM has." + + + + REFERENCE "RFC 4601 section 4.1.4" + ::= { pim 7 } + +pimSGIEntry OBJECT-TYPE + SYNTAX PimSGIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimSGITable." + INDEX { pimSGAddressType, + pimSGGrpAddress, + pimSGSrcAddress, + pimSGIIfIndex } + ::= { pimSGITable 1 } + +PimSGIEntry ::= SEQUENCE { + pimSGIIfIndex InterfaceIndex, + pimSGIUpTime TimeTicks, + pimSGILocalMembership TruthValue, + pimSGIJoinPruneState INTEGER, + pimSGIPrunePendingTimer TimeTicks, + pimSGIJoinExpiryTimer TimeTicks, + pimSGIAssertState INTEGER, + pimSGIAssertTimer TimeTicks, + pimSGIAssertWinnerAddressType InetAddressType, + pimSGIAssertWinnerAddress InetAddress, + pimSGIAssertWinnerMetricPref Unsigned32, + pimSGIAssertWinnerMetric Unsigned32 +} + +pimSGIIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex of the interface that this entry corresponds + to." + ::= { pimSGIEntry 1 } + +pimSGIUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimSGIEntry 2 } + +pimSGILocalMembership OBJECT-TYPE + + + + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router has (S,G) local membership on this + interface (resulting from a mechanism such as IGMP or MLD). + This corresponds to local_receiver_include(S,G,I) in the + PIM-SM specification." + REFERENCE "RFC 3376, RFC 3810, RFC 4601 sections 4.1.6, 4.6.1, and + 4.6.2" + ::= { pimSGIEntry 3 } + +pimSGIJoinPruneState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + join (2), + prunePending (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state resulting from (S,G) Join/Prune messages + received on this interface. This corresponds to the state + of the downstream per-interface (S,G) state machine in the + PIM-SM and PIM-DM specification." + REFERENCE "RFC 4601 section 4.5.3 and RFC 3973 section 4.4.2" + ::= { pimSGIEntry 4 } + +pimSGIPrunePendingTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before the local router acts on an (S,G) + Prune message received on this interface, during which the + router is waiting to see whether another downstream router + will override the Prune message. This timer is called the + (S,G) Prune-Pending Timer in the PIM-SM specification. This + object is zero if the timer is not running." + REFERENCE "RFC 4601 sections 4.5.3 and 4.5.4" + ::= { pimSGIEntry 5 } + +pimSGIJoinExpiryTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before (S,G) Join state for this + + + + interface expires. This timer is called the (S,G) Join + Expiry Timer in the PIM-SM specification. This object is + zero if the timer is not running. A value of 'FFFFFFFF'h + indicates an infinite expiry time. This timer is called the + (S,G) Prune Timer in the PIM-DM specification." + REFERENCE "RFC 4601 section 4.10 and RFC 3973 section 4.8" + ::= { pimSGIEntry 6 } + +pimSGIAssertState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + iAmAssertWinner (2), + iAmAssertLoser (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The (S,G) Assert state for this interface. This + corresponds to the state of the per-interface (S,G) Assert + state machine in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.6.1" + ::= { pimSGIEntry 7 } + +pimSGIAssertTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGIAssertState is 'iAmAssertWinner', this is the time + remaining before the local router next sends a (S,G) Assert + message on this interface. If pimSGIAssertState is + 'iAmAssertLoser', this is the time remaining before the + (S,G) Assert state expires. If pimSGIAssertState is + 'noInfo', this is zero. This timer is called the (S,G) + Assert Timer in the PIM-SM specification." + REFERENCE "RFC 4601 section 4.6.1" + ::= { pimSGIEntry 8 } + +pimSGIAssertWinnerAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGIAssertState is 'iAmAssertLoser', this is the + address type of the assert winner; otherwise, this object is + unknown(0)." + ::= { pimSGIEntry 9 } + + + + +pimSGIAssertWinnerAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGIAssertState is 'iAmAssertLoser', this is the + address of the assert winner. The InetAddressType is given + by the pimSGIAssertWinnerAddressType object." + ::= { pimSGIEntry 10 } + +pimSGIAssertWinnerMetricPref OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGIAssertState is 'iAmAssertLoser', this is the + metric preference of the route to the source advertised by + the assert winner; otherwise, this object is zero." + ::= { pimSGIEntry 11 } + +pimSGIAssertWinnerMetric OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If pimSGIAssertState is 'iAmAssertLoser', this is the + routing metric of the route to the source advertised by the + assert winner; otherwise, this object is zero." + ::= { pimSGIEntry 12 } + +-- +-- The PIM (S,G,rpt) State Table +-- + +pimSGRptTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimSGRptEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the non-interface specific + (S,G,rpt) state that PIM has." + REFERENCE "RFC 4601 section 4.1.5" + ::= { pim 8 } + +pimSGRptEntry OBJECT-TYPE + SYNTAX PimSGRptEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "An entry (conceptual row) in the pimSGRptTable." + INDEX { pimStarGAddressType, + pimStarGGrpAddress, + pimSGRptSrcAddress } + ::= { pimSGRptTable 1 } + +PimSGRptEntry ::= SEQUENCE { + pimSGRptSrcAddress InetAddress, + pimSGRptUpTime TimeTicks, + pimSGRptUpstreamPruneState INTEGER, + pimSGRptUpstreamOverrideTimer TimeTicks +} + +pimSGRptSrcAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The source address for this entry. The InetAddressType is + given by the pimStarGAddressType object." + ::= { pimSGRptEntry 1 } + +pimSGRptUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimSGRptEntry 2 } + +pimSGRptUpstreamPruneState OBJECT-TYPE + SYNTAX INTEGER { + rptNotJoined (1), + pruned (2), + notPruned (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router should prune the source off the RP + tree. This corresponds to the state of the upstream + (S,G,rpt) state machine for triggered messages in the PIM-SM + specification." + REFERENCE "RFC 4601 section 4.5.9" + ::= { pimSGRptEntry 3 } + +pimSGRptUpstreamOverrideTimer OBJECT-TYPE + + + + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before the local router sends a + triggered (S,G,rpt) Join message on pimStarGRPFIfIndex. + This timer is called the (S,G,rpt) Upstream Override Timer + in the PIM-SM specification. This object is zero if the + timer is not running." + REFERENCE "RFC 4601 section 4.5.9" + ::= { pimSGRptEntry 4 } + +-- +-- The PIM (S,G,rpt,I) State Table +-- + +pimSGRptITable OBJECT-TYPE + SYNTAX SEQUENCE OF PimSGRptIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interface-specific + (S,G,rpt) state that PIM has." + REFERENCE "RFC 4601 section 4.1.5" + ::= { pim 9 } + +pimSGRptIEntry OBJECT-TYPE + SYNTAX PimSGRptIEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimSGRptITable." + INDEX { pimStarGAddressType, + pimStarGGrpAddress, + pimSGRptSrcAddress, + pimSGRptIIfIndex } + ::= { pimSGRptITable 1 } + +PimSGRptIEntry ::= SEQUENCE { + pimSGRptIIfIndex InterfaceIndex, + pimSGRptIUpTime TimeTicks, + pimSGRptILocalMembership TruthValue, + pimSGRptIJoinPruneState INTEGER, + pimSGRptIPrunePendingTimer TimeTicks, + pimSGRptIPruneExpiryTimer TimeTicks +} + +pimSGRptIIfIndex OBJECT-TYPE + + + + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex of the interface that this entry corresponds + to." + ::= { pimSGRptIEntry 1 } + +pimSGRptIUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since this entry was created by the local router." + ::= { pimSGRptIEntry 2 } + +pimSGRptILocalMembership OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether the local router has both (*,G) include local + membership and (S,G) exclude local membership on this + interface (resulting from a mechanism such as IGMP or MLD). + This corresponds to local_receiver_exclude(S,G,I) in the + PIM-SM specification." + REFERENCE "RFC 3376, RFC 3810, RFC 4601 section 4.1.6" + ::= { pimSGRptIEntry 3 } + +pimSGRptIJoinPruneState OBJECT-TYPE + SYNTAX INTEGER { + noInfo (1), + prune (2), + prunePending (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state resulting from (S,G,rpt) Join/Prune messages + received on this interface. This corresponds to the state + of the downstream per-interface (S,G,rpt) state machine in + the PIM-SM specification." + REFERENCE "RFC 4601 section 4.5.4" + ::= { pimSGRptIEntry 4 } + +pimSGRptIPrunePendingTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "The time remaining before the local router starts pruning + this source off the RP tree. This timer is called the + (S,G,rpt) Prune-Pending Timer in the PIM-SM specification. + This object is zero if the timer is not running." + REFERENCE "RFC 4601 section 4.5.4" + ::= { pimSGRptIEntry 5 } + +pimSGRptIPruneExpiryTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining before (S,G,rpt) Prune state for this + interface expires. This timer is called the (S,G,rpt) + Prune Expiry Timer in the PIM-SM specification. This object + is zero if the timer is not running. A value of 'FFFFFFFF'h + indicates an infinite expiry time." + REFERENCE "RFC 4601 section 4.5.4" + ::= { pimSGRptIEntry 6 } + +-- +-- The PIM Bidir DF-Election Table +-- + +pimBidirDFElectionTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimBidirDFElectionEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the per-RP Designated + Forwarder (DF) Election state for each interface for all the + RPs in BIDIR mode." + REFERENCE "RFC 5015 section 3.5" + ::= { pim 10 } + +pimBidirDFElectionEntry OBJECT-TYPE + SYNTAX PimBidirDFElectionEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimBidirDFElectionTable." + INDEX { pimBidirDFElectionAddressType, + pimBidirDFElectionRPAddress, + pimBidirDFElectionIfIndex } + ::= { pimBidirDFElectionTable 1 } + + + + +PimBidirDFElectionEntry ::= SEQUENCE { + pimBidirDFElectionAddressType InetAddressType, + pimBidirDFElectionRPAddress InetAddress, + pimBidirDFElectionIfIndex InterfaceIndex, + pimBidirDFElectionWinnerAddressType InetAddressType, + pimBidirDFElectionWinnerAddress InetAddress, + pimBidirDFElectionWinnerUpTime TimeTicks, + pimBidirDFElectionWinnerMetricPref Unsigned32, + pimBidirDFElectionWinnerMetric Unsigned32, + pimBidirDFElectionState INTEGER, + pimBidirDFElectionStateTimer TimeTicks +} + +pimBidirDFElectionAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the RP for which the DF state is being + maintained." + ::= { pimBidirDFElectionEntry 1 } + +pimBidirDFElectionRPAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP address of the RP for which the DF state is being + maintained. The InetAddressType is given by the + pimBidirDFElectionAddressType object." + ::= { pimBidirDFElectionEntry 2 } + +pimBidirDFElectionIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The value of ifIndex for the interface for which the DF + state is being maintained." + ::= { pimBidirDFElectionEntry 3 } + +pimBidirDFElectionWinnerAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary address type of the winner of the DF Election + process. A value of unknown(0) indicates there is currently + + + + no DF." + ::= { pimBidirDFElectionEntry 4 } + +pimBidirDFElectionWinnerAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The primary IP address of the winner of the DF Election + process. The InetAddressType is given by the + pimBidirDFElectionWinnerAddressType object." + ::= { pimBidirDFElectionEntry 5 } + +pimBidirDFElectionWinnerUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since the current winner (last) became elected as + the DF for this RP." + ::= { pimBidirDFElectionEntry 6 } + +pimBidirDFElectionWinnerMetricPref OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The metric preference advertised by the DF Winner, or zero + if there is currently no DF." + ::= { pimBidirDFElectionEntry 7 } + +pimBidirDFElectionWinnerMetric OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The metric advertised by the DF Winner, or zero if there is + currently no DF." + ::= { pimBidirDFElectionEntry 8 } + +pimBidirDFElectionState OBJECT-TYPE + SYNTAX INTEGER { + dfOffer(1), + dfLose(2), + dfWinner(3), + dfBackoff(4) + } + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "The state of this interface with respect to DF-Election for + this RP. The states correspond to the ones defined in the + BIDIR-PIM specification." + REFERENCE "RFC 5015 section 3.5.3.1" + ::= { pimBidirDFElectionEntry 9 } + +pimBidirDFElectionStateTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum time remaining after which the local router + will expire the current DF state represented by + pimBidirDFElectionState." + ::= { pimBidirDFElectionEntry 10 } + +-- +-- The PIM Static RP Table +-- + +pimStaticRPTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimStaticRPEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is used to manage static configuration of RPs. + + If the group prefixes configured for two or more rows in + this table overlap, the row with the greatest value of + pimStaticRPGrpPrefixLength is used for the overlapping + range." + REFERENCE "RFC 4601 section 3.7" + ::= { pim 11 } + +pimStaticRPEntry OBJECT-TYPE + SYNTAX PimStaticRPEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimStaticRPTable. This + entry is preserved on agent restart." + INDEX { pimStaticRPAddressType, + pimStaticRPGrpAddress, + pimStaticRPGrpPrefixLength } + ::= { pimStaticRPTable 1 } + + + + +PimStaticRPEntry ::= SEQUENCE { + pimStaticRPAddressType InetAddressType, + pimStaticRPGrpAddress InetAddress, + pimStaticRPGrpPrefixLength InetAddressPrefixLength, + pimStaticRPRPAddress InetAddress, + pimStaticRPPimMode PimMode, + pimStaticRPOverrideDynamic TruthValue, + pimStaticRPPrecedence Unsigned32, + pimStaticRPRowStatus RowStatus, + pimStaticRPStorageType StorageType +} + +pimStaticRPAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this entry." + ::= { pimStaticRPEntry 1 } + +pimStaticRPGrpAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group address that, when combined with + pimStaticRPGrpPrefixLength, gives the group prefix for this + entry. The InetAddressType is given by the + pimStaticRPAddressType object. + + This address object is only significant up to + pimStaticRPGrpPrefixLength bits. The remainder of the + address bits are zero. This is especially important for + this index field, which is part of the index of this entry. + Any non-zero bits would signify an entirely different + entry." + ::= { pimStaticRPEntry 2 } + +pimStaticRPGrpPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength (4..128) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group prefix length that, when combined + with pimStaticRPGrpAddress, gives the group prefix for this + entry. The InetAddressType is given by the + pimStaticRPAddressType object. If pimStaticRPAddressType is + 'ipv4' or 'ipv4z', this object must be in the range 4..32. + + + + If pimStaticRPGrpAddressType is 'ipv6' or 'ipv6z', this + object must be in the range 8..128." + ::= { pimStaticRPEntry 3 } + +pimStaticRPRPAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The IP address of the RP to be used for groups within this + group prefix. The InetAddressType is given by the + pimStaticRPAddressType object." + ::= { pimStaticRPEntry 4 } + +pimStaticRPPimMode OBJECT-TYPE + SYNTAX PimMode { ssm(2), asm(3), bidir(4) } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The PIM mode to be used for groups in this group prefix. + + If this object is set to ssm(2), then pimStaticRPRPAddress + must be set to zero. No RP operations are ever possible for + PIM Mode SSM." + REFERENCE "RFC 4601 section 3.7, RFC 3569, and + 'IP Multicast MIB' (August 2007) ipMcastSsmRangeTable" + DEFVAL { asm } + ::= { pimStaticRPEntry 5 } + +pimStaticRPOverrideDynamic OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Whether this static RP configuration will override other + group mappings in this group prefix. If this object is + TRUE, then it will override: + + - RP information learned dynamically for groups in this + group prefix. + + - RP information configured in pimStaticRPTable with + pimStaticRPOverrideDynamic set to FALSE. + + See pimGroupMappingTable for details." + DEFVAL { false } + ::= { pimStaticRPEntry 6 } + + + + +pimStaticRPPrecedence OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The value for pimGroupMappingPrecedence to be used for this + static RP configuration. This allows fine control over + which configuration is overridden by this static + configuration. + + If pimStaticRPOverrideDynamic is set to TRUE, all dynamic RP + configuration is overridden by this static configuration, + whatever the value of this object. + + The absolute values of this object have a significance only + on the local router and do not need to be coordinated with + other routers. A setting of this object may have different + effects when applied to other routers. + + Do not use this object unless fine control of static RP + behavior on the local router is required.--IPI Comments: Snmpset is not supported." + ::= { pimStaticRPEntry 7 } + +pimStaticRPRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this row, by which rows in this table can + be created and destroyed. + + This status object cannot be set to active(1) before a valid + value has been written to pimStaticRPRPAddress. + + All writeable objects in this entry can be modified when the + status of this entry is active(1).--IPI Comments: Snmpset is applicable for only (1,2,6) values." + ::= { pimStaticRPEntry 8 } + +pimStaticRPStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row.--IPI Comments: Snmpset is not supported." + DEFVAL { nonVolatile } + ::= { pimStaticRPEntry 9 } + + + +-- +-- The PIM Anycast-RP Set Table +-- + +pimAnycastRPSetTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimAnycastRPSetEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is used to manage Anycast-RP via PIM Register + messages, as opposed to via other protocols such as MSDP + (Multicast Source Discovery Protocol). + + Entries must be configured in this table if and only if the + local router is a member of one or more Anycast-RP sets, + that is, one or more Anycast-RP addresses are assigned to + the local router. Note that if using static RP + configuration, this is in addition to, not instead of, the + pimStaticRPTable entries that must be configured for the + Anycast-RPs. + + The set of rows with the same values of both + pimAnycastRPSetAddressType and pimAnycastRPSetAnycastAddress + corresponds to the Anycast-RP set for that Anycast-RP + address. + + When an Anycast-RP set configuration is active, one entry + per pimAnycastRPSetAnycastAddress corresponds to the local + router. The local router is identified by the + pimAnycastRpSetLocalRouter object. That entry determines + the source address used by the local router when forwarding + PIM Register messages within the Anycast-RP set." + REFERENCE "RFC 4610, RFC 3618" + ::= { pim 12 } + +pimAnycastRPSetEntry OBJECT-TYPE + SYNTAX PimAnycastRPSetEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry corresponds to a single router within a particular + Anycast-RP set. This entry is preserved on agent restart." + INDEX { pimAnycastRPSetAddressType, + pimAnycastRPSetAnycastAddress, + pimAnycastRPSetRouterAddress } + ::= { pimAnycastRPSetTable 1 } + +PimAnycastRPSetEntry ::= SEQUENCE { + + + + pimAnycastRPSetAddressType InetAddressType, + pimAnycastRPSetAnycastAddress InetAddress, + pimAnycastRPSetRouterAddress InetAddress, + pimAnycastRPSetLocalRouter TruthValue, + pimAnycastRPSetRowStatus RowStatus, + pimAnycastRPSetStorageType StorageType +} + +pimAnycastRPSetAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the Anycast-RP address and router + address." + ::= { pimAnycastRPSetEntry 1 } + +pimAnycastRPSetAnycastAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Anycast-RP address. The InetAddressType is given by + the pimAnycastRPSetAddressType object." + ::= { pimAnycastRPSetEntry 2 } + +pimAnycastRPSetRouterAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address of a router that is a member of the Anycast-RP + set. The InetAddressType is given by the + pimAnycastRPSetAddressType object. + + This address differs from pimAnycastRPSetAnycastAddress. + Equal values for these two addresses in a single entry are + not permitted. That would cause a Register loop." + ::= { pimAnycastRPSetEntry 3 } + +pimAnycastRPSetLocalRouter OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Whether this entry corresponds to the local router." + ::= { pimAnycastRPSetEntry 4 } + + + + +pimAnycastRPSetRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this row, by which rows in this table can + be created and destroyed. + + This status object can be set to active(1) without setting + any other columnar objects in this entry. + + All writeable objects in this entry can be modified when the + status of this entry is active(1)." + ::= { pimAnycastRPSetEntry 5 } + +pimAnycastRPSetStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row.--IPI Comments: Snmpset is applicable for only (4,5,6) values." + DEFVAL { nonVolatile } + ::= { pimAnycastRPSetEntry 6 } + +-- +-- The PIM Group Mapping Table +-- + +pimGroupMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PimGroupMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing mappings from multicast + group prefixes to the PIM mode and RP address to use for + groups within that group prefix. + + Rows in this table are created for a variety of reasons, + indicated by the value of the pimGroupMappingOrigin object. + + - Rows with a pimGroupMappingOrigin value of 'fixed' are + created automatically by the router at startup, to + correspond to the well-defined prefixes of link-local and + unroutable group addresses. These rows are never + destroyed. + + + + + - Rows with a pimGroupMappingOrigin value of 'embedded' are + created by the router to correspond to group prefixes + that are to be treated as being in Embedded-RP format. + + - Rows with a pimGroupMappingOrigin value of 'configRp' are + created and destroyed as a result of rows in the + pimStaticRPTable being created and destroyed. + + - Rows with a pimGroupMappingOrigin value of 'configSsm' + are created and destroyed as a result of configuration of + SSM address ranges to the local router. + + - Rows with a pimGroupMappingOrigin value of 'bsr' are + created as a result of running the PIM Bootstrap Router + (BSR) mechanism. If the local router is not the elected + BSR, these rows are created to correspond to group + prefixes in the PIM Bootstrap messages received from the + elected BSR. If the local router is the elected BSR, + these rows are created to correspond to group prefixes in + the PIM Bootstrap messages that the local router sends. + In either case, these rows are destroyed when the group + prefixes are timed out by the BSR mechanism. + + - Rows with a pimGroupMappingOrigin value of 'other' are + created and destroyed according to some other mechanism + not specified here. + + Given the collection of rows in this table at any point in + time, the PIM mode and RP address to use for a particular + group is determined using the following algorithm. + + 1. From the set of all rows, the subset whose group prefix + contains the group in question are selected. + + 2. If there are no such rows, then the group mapping is + undefined. + + 3. If there are multiple selected rows, and a subset is + defined by pimStaticRPTable (pimGroupMappingOrigin value + of 'configRp') with pimStaticRPOverrideDynamic set to + TRUE, then this subset is selected. + + 4. From the selected subset of rows, the subset that have + the greatest value of pimGroupMappingGrpPrefixLength are + selected. + + 5. If there are still multiple selected rows, the subset + that has the highest precedence (the lowest numerical + + + + value for pimGroupMappingPrecedence) is selected. + + 6. If there are still multiple selected rows, the row + selected is implementation dependent; the implementation + might or might not apply the PIM hash function to select + the row. + + 7. The group mode to use is given by the value of + pimGroupMappingPimMode from the single selected row; the + RP to use is given by the value of + pimGroupMappingRPAddress, unless pimGroupMappingOrigin is + 'embedded', in which case, the RP is extracted from the + group address in question." + REFERENCE "RFC 4601 section 3.7, RFC 3956, and RFC 4610" + ::= { pim 13 } + +pimGroupMappingEntry OBJECT-TYPE + SYNTAX PimGroupMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the pimGroupMappingTable." + INDEX { pimGroupMappingOrigin, + pimGroupMappingAddressType, + pimGroupMappingGrpAddress, + pimGroupMappingGrpPrefixLength, + pimGroupMappingRPAddressType, + pimGroupMappingRPAddress } + ::= { pimGroupMappingTable 1 } + +PimGroupMappingEntry ::= SEQUENCE { + pimGroupMappingOrigin PimGroupMappingOriginType, + pimGroupMappingAddressType InetAddressType, + pimGroupMappingGrpAddress InetAddress, + pimGroupMappingGrpPrefixLength InetAddressPrefixLength, + pimGroupMappingRPAddressType InetAddressType, + pimGroupMappingRPAddress InetAddress, + pimGroupMappingPimMode PimMode, + pimGroupMappingPrecedence Unsigned32 +} + +pimGroupMappingOrigin OBJECT-TYPE + SYNTAX PimGroupMappingOriginType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The mechanism by which this group mapping was learned." + ::= { pimGroupMappingEntry 1 } + + + +pimGroupMappingAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the IP multicast group prefix." + ::= { pimGroupMappingEntry 2 } + +pimGroupMappingGrpAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address that, when combined with + pimGroupMappingGrpPrefixLength, gives the group prefix for + this mapping. The InetAddressType is given by the + pimGroupMappingAddressType object. + + This address object is only significant up to + pimGroupMappingGrpPrefixLength bits. The remainder of the + address bits are zero. This is especially important for + this index field, which is part of the index of this entry. + Any non-zero bits would signify an entirely different + entry." + ::= { pimGroupMappingEntry 3 } + +pimGroupMappingGrpPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength (4..128) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group prefix length that, when combined + with pimGroupMappingGrpAddress, gives the group prefix for + this mapping. The InetAddressType is given by the + pimGroupMappingAddressType object. If + pimGroupMappingAddressType is 'ipv4' or 'ipv4z', this + object must be in the range 4..32. If + pimGroupMappingAddressType is 'ipv6' or 'ipv6z', this object + must be in the range 8..128." + ::= { pimGroupMappingEntry 4 } + +pimGroupMappingRPAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the RP to be used for groups within + this group prefix, or unknown(0) if no RP is to be used or + + + + if the RP address is unknown. This object must be + unknown(0) if pimGroupMappingPimMode is ssm(2), or if + pimGroupMappingOrigin is embedded(6)." + ::= { pimGroupMappingEntry 5 } + +pimGroupMappingRPAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP address of the RP to be used for groups within this + group prefix. The InetAddressType is given by the + pimGroupMappingRPAddressType object." + ::= { pimGroupMappingEntry 6 } + +pimGroupMappingPimMode OBJECT-TYPE + SYNTAX PimMode + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The PIM mode to be used for groups in this group prefix." + ::= { pimGroupMappingEntry 7 } + +pimGroupMappingPrecedence OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The precedence of this row, used in the algorithm that + determines which row applies to a given group address + (described above). Numerically higher values for this + object indicate lower precedences, with the value zero + denoting the highest precedence. + + The absolute values of this object have a significance only + on the local router and do not need to be coordinated with + other routers." + ::= { pimGroupMappingEntry 8 } + +-- +-- PIM Notifications +-- + +pimNeighborLoss NOTIFICATION-TYPE + OBJECTS { pimNeighborUpTime } + STATUS current + DESCRIPTION + "A pimNeighborLoss notification signifies the loss of an + + + + adjacency with a neighbor. This notification should be + generated when the neighbor timer expires, and the router + has no other neighbors on the same interface with the same + IP version and a lower IP address than itself. + + This notification is generated whenever the counter + pimNeighborLossCount is incremented, subject + to the rate limit specified by + pimNeighborLossNotificationPeriod." + REFERENCE "RFC 4601 section 4.3.2" + ::= { pimNotifications 1 } + +pimInvalidRegister NOTIFICATION-TYPE + OBJECTS { pimGroupMappingPimMode, + pimInvalidRegisterAddressType, + pimInvalidRegisterOrigin, + pimInvalidRegisterGroup, + pimInvalidRegisterRp + } + STATUS current + DESCRIPTION + "A pimInvalidRegister notification signifies that an invalid + PIM Register message was received by this device. + + This notification is generated whenever the counter + pimInvalidRegisterMsgsRcvd is incremented, subject to the + rate limit specified by + pimInvalidRegisterNotificationPeriod." + REFERENCE "RFC 4601 section 4.4.2" + ::= { pimNotifications 2 } + +pimInvalidJoinPrune NOTIFICATION-TYPE + OBJECTS { pimGroupMappingPimMode, + pimInvalidJoinPruneAddressType, + pimInvalidJoinPruneOrigin, + pimInvalidJoinPruneGroup, + pimInvalidJoinPruneRp, + pimNeighborUpTime + } + STATUS current + DESCRIPTION + "A pimInvalidJoinPrune notification signifies that an + invalid PIM Join/Prune message was received by this device. + + This notification is generated whenever the counter + pimInvalidJoinPruneMsgsRcvd is incremented, subject to the + rate limit specified by + pimInvalidJoinPruneNotificationPeriod." + + + + REFERENCE "RFC 4601 section 4.5.2" + ::= { pimNotifications 3 } + +pimRPMappingChange NOTIFICATION-TYPE + OBJECTS { pimGroupMappingPimMode, + pimGroupMappingPrecedence + } + STATUS current + DESCRIPTION + "A pimRPMappingChange notification signifies a change to the + active RP mapping on this device. + + This notification is generated whenever the counter + pimRPMappingChangeCount is incremented, subject to the + rate limit specified by + pimRPMappingChangeNotificationPeriod." + ::= { pimNotifications 4 } + +pimInterfaceElection NOTIFICATION-TYPE + OBJECTS { pimInterfaceAddressType, + pimInterfaceAddress } + STATUS current + DESCRIPTION + "A pimInterfaceElection notification signifies that a new DR + or DF has been elected on a network. + + This notification is generated whenever the counter + pimInterfaceElectionWinCount is incremented, subject to the + rate limit specified by + pimInterfaceElectionNotificationPeriod." + REFERENCE "RFC 4601 section 4.3.2 and RFC 5015 section 3.5.2" + ::= { pimNotifications 5 } + +-- +-- Conformance Information +-- + +pimMIBConformance OBJECT IDENTIFIER ::= { pimStdMIB 2 } +pimMIBCompliances OBJECT IDENTIFIER ::= { pimMIBConformance 1 } +pimMIBGroups OBJECT IDENTIFIER ::= { pimMIBConformance 2 } + +-- +-- Compliance Statements +-- + +pimMIBComplianceAsm MODULE-COMPLIANCE + STATUS current + DESCRIPTION + + + + "The compliance statement for routers which are running + PIM-SM (Sparse Mode)." + MODULE -- this module + MANDATORY-GROUPS { pimTopologyGroup, + pimSsmGroup, + pimRPConfigGroup, + pimSmGroup } + + GROUP pimNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimTuningParametersGroup + DESCRIPTION + "This group is optional." + + GROUP pimRouterStatisticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimAnycastRpGroup + DESCRIPTION + "This group is optional." + + GROUP pimStaticRPPrecedenceGroup + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationObjects + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimDiagnosticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimDeviceStorageGroup + DESCRIPTION + "This group is optional." + + ::= { pimMIBCompliances 1 } + +pimMIBComplianceBidir MODULE-COMPLIANCE + STATUS current + + + + DESCRIPTION + "The compliance statement for routers which are running + Bidir-PIM." + MODULE -- this module + MANDATORY-GROUPS { pimTopologyGroup, + pimRPConfigGroup, + pimSmGroup, + pimBidirGroup } + + GROUP pimNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimTuningParametersGroup + DESCRIPTION + "This group is optional." + + GROUP pimRouterStatisticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimAnycastRpGroup + DESCRIPTION + "This group is optional." + + GROUP pimStaticRPPrecedenceGroup + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationObjects + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimDiagnosticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimDeviceStorageGroup + DESCRIPTION + "This group is optional." + + ::= { pimMIBCompliances 2 } + +pimMIBComplianceSsm MODULE-COMPLIANCE + + + + STATUS current + DESCRIPTION + "The compliance statement for routers which are running + PIM SSM (Source Specific Multicast)." + MODULE -- this module + MANDATORY-GROUPS { pimTopologyGroup, + pimSsmGroup } + + GROUP pimNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimTuningParametersGroup + DESCRIPTION + "This group is optional." + + GROUP pimRouterStatisticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationObjects + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimDiagnosticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimDeviceStorageGroup + DESCRIPTION + "This group is optional." + + ::= { pimMIBCompliances 3 } + +pimMIBComplianceDm MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for routers which are running + PIM-DM (Dense Mode)." + MODULE -- this module + MANDATORY-GROUPS { pimTopologyGroup, + pimSsmGroup, + pimRPConfigGroup, + pimSmGroup, + + + + pimDmGroup } + + GROUP pimNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimTuningParametersGroup + DESCRIPTION + "This group is optional." + + GROUP pimRouterStatisticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimAnycastRpGroup + DESCRIPTION + "This group is optional." + + GROUP pimStaticRPPrecedenceGroup + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationObjects + DESCRIPTION + "This group is optional." + + GROUP pimNetMgmtNotificationGroup + DESCRIPTION + "This group is optional." + + GROUP pimDiagnosticsGroup + DESCRIPTION + "This group is optional." + + GROUP pimDeviceStorageGroup + DESCRIPTION + "This group is optional." + + ::= { pimMIBCompliances 4 } + +-- +-- Units of Conformance +-- + +pimTopologyGroup OBJECT-GROUP + OBJECTS { pimInterfaceAddressType, + pimInterfaceAddress, + pimInterfaceGenerationIDValue, + + + + pimInterfaceDR, + pimInterfaceDRPriorityEnabled, + pimInterfaceHelloHoldtime, + pimInterfaceJoinPruneHoldtime, + pimInterfaceLanDelayEnabled, + pimInterfaceEffectPropagDelay, + pimInterfaceEffectOverrideIvl, + pimInterfaceSuppressionEnabled, + pimInterfaceBidirCapable, + pimNeighborGenerationIDPresent, + pimNeighborGenerationIDValue, + pimNeighborUpTime, + pimNeighborExpiryTime, + pimNeighborDRPriorityPresent, + pimNeighborDRPriority, + pimNeighborLanPruneDelayPresent, + pimNeighborTBit, + pimNeighborPropagationDelay, + pimNeighborOverrideInterval, + pimNeighborBidirCapable, + pimNbrSecAddress + } + STATUS current + DESCRIPTION + "A collection of read-only objects used to report local PIM + topology." + ::= { pimMIBGroups 1 } + +pimNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { pimNeighborLoss } + STATUS current + DESCRIPTION + "A collection of notifications for signaling important PIM + events." + ::= { pimMIBGroups 2 } + +pimTuningParametersGroup OBJECT-GROUP + OBJECTS { pimKeepalivePeriod, + pimRegisterSuppressionTime, + pimInterfaceDRPriority, + pimInterfaceHelloInterval, + pimInterfaceTrigHelloInterval, + pimInterfaceJoinPruneInterval, + pimInterfacePropagationDelay, + pimInterfaceOverrideInterval, + pimInterfaceDomainBorder, + pimInterfaceStubInterface, + pimInterfaceStatus, + + + + pimInterfaceStorageType + } + STATUS current + DESCRIPTION + "A collection of writeable objects used to configure PIM + behavior and to tune performance." + ::= { pimMIBGroups 3 } + +pimRouterStatisticsGroup OBJECT-GROUP + OBJECTS { pimStarGEntries, + pimStarGIEntries, + pimSGEntries, + pimSGIEntries, + pimSGRptEntries, + pimSGRptIEntries + } + STATUS current + DESCRIPTION + "A collection of statistics global to the PIM router." + ::= { pimMIBGroups 4 } + +pimSsmGroup OBJECT-GROUP + OBJECTS { pimSGUpTime, + pimSGPimMode, + pimSGUpstreamJoinState, + pimSGUpstreamJoinTimer, + pimSGUpstreamNeighbor, + pimSGRPFIfIndex, + pimSGRPFNextHopType, + pimSGRPFNextHop, + pimSGRPFRouteProtocol, + pimSGRPFRouteAddress, + pimSGRPFRoutePrefixLength, + pimSGRPFRouteMetricPref, + pimSGRPFRouteMetric, + pimSGSPTBit, + pimSGKeepaliveTimer, + pimSGDRRegisterState, + pimSGDRRegisterStopTimer, + pimSGRPRegisterPMBRAddressType, + pimSGRPRegisterPMBRAddress, + pimSGIUpTime, + pimSGILocalMembership, + pimSGIJoinPruneState, + pimSGIPrunePendingTimer, + pimSGIJoinExpiryTimer, + pimSGIAssertState, + pimSGIAssertTimer, + + + + pimSGIAssertWinnerAddressType, + pimSGIAssertWinnerAddress, + pimSGIAssertWinnerMetricPref, + pimSGIAssertWinnerMetric + } + STATUS current + DESCRIPTION + "A collection of objects to support management of PIM + routers running the PIM SSM (Source Specific Multicast) + protocol, in PIM mode SM (Sparse Mode)." + ::= { pimMIBGroups 5 } + +pimRPConfigGroup OBJECT-GROUP + OBJECTS { pimStaticRPRPAddress, + pimStaticRPPimMode, + pimStaticRPOverrideDynamic, + pimStaticRPRowStatus, + pimStaticRPStorageType, + pimGroupMappingPimMode, + pimGroupMappingPrecedence + } + STATUS current + DESCRIPTION + "A collection of objects to support configuration of RPs + (Rendezvous Points) and Group Mappings." + ::= { pimMIBGroups 6 } + +pimSmGroup OBJECT-GROUP + OBJECTS { pimStarGUpTime, + pimStarGPimMode, + pimStarGRPAddressType, + pimStarGRPAddress, + pimStarGPimModeOrigin, + pimStarGRPIsLocal, + pimStarGUpstreamJoinState, + pimStarGUpstreamJoinTimer, + pimStarGUpstreamNeighborType, + pimStarGUpstreamNeighbor, + pimStarGRPFIfIndex, + pimStarGRPFNextHopType, + pimStarGRPFNextHop, + pimStarGRPFRouteProtocol, + pimStarGRPFRouteAddress, + pimStarGRPFRoutePrefixLength, + pimStarGRPFRouteMetricPref, + pimStarGRPFRouteMetric, + pimStarGIUpTime, + pimStarGILocalMembership, + + + + pimStarGIJoinPruneState, + pimStarGIPrunePendingTimer, + pimStarGIJoinExpiryTimer, + pimStarGIAssertState, + pimStarGIAssertTimer, + pimStarGIAssertWinnerAddressType, + pimStarGIAssertWinnerAddress, + pimStarGIAssertWinnerMetricPref, + pimStarGIAssertWinnerMetric, + pimSGRptUpTime, + pimSGRptUpstreamPruneState, + pimSGRptUpstreamOverrideTimer, + pimSGRptIUpTime, + pimSGRptILocalMembership, + pimSGRptIJoinPruneState, + pimSGRptIPrunePendingTimer, + pimSGRptIPruneExpiryTimer + } + STATUS current + DESCRIPTION + "A collection of objects to support management of PIM + routers running PIM-SM (Sparse Mode). The groups + pimSsmGroup and pimRPConfigGroup are also required." + ::= { pimMIBGroups 7 } + +pimBidirGroup OBJECT-GROUP + OBJECTS { pimInterfaceDFElectionRobustness, + pimBidirDFElectionWinnerAddressType, + pimBidirDFElectionWinnerAddress, + pimBidirDFElectionWinnerUpTime, + pimBidirDFElectionWinnerMetricPref, + pimBidirDFElectionWinnerMetric, + pimBidirDFElectionState, + pimBidirDFElectionStateTimer + } + STATUS current + DESCRIPTION + "A collection of objects to support management of PIM + routers running BIDIR mode. The groups pimSsmGroup, + pimSmGroup and pimRPConfigGroup are also required." + ::= { pimMIBGroups 8 } + +pimAnycastRpGroup OBJECT-GROUP + OBJECTS { pimAnycastRPSetLocalRouter, + pimAnycastRPSetRowStatus, + pimAnycastRPSetStorageType + } + STATUS current + + + + DESCRIPTION + "A collection of objects to support management of the PIM + Anycast-RP mechanism." + ::= { pimMIBGroups 9 } + +pimStaticRPPrecedenceGroup OBJECT-GROUP + OBJECTS { pimStaticRPPrecedence } + STATUS current + DESCRIPTION + "A collection of objects to allow fine control of + interactions between static RP configuration and + dynamically acquired group to RP mappings." + ::= { pimMIBGroups 10 } + +pimNetMgmtNotificationObjects OBJECT-GROUP + OBJECTS { pimInvalidRegisterNotificationPeriod, + pimInvalidRegisterMsgsRcvd, + pimInvalidRegisterAddressType, + pimInvalidRegisterOrigin, + pimInvalidRegisterGroup, + pimInvalidRegisterRp, + pimInvalidJoinPruneNotificationPeriod, + pimInvalidJoinPruneMsgsRcvd, + pimInvalidJoinPruneAddressType, + pimInvalidJoinPruneOrigin, + pimInvalidJoinPruneGroup, + pimInvalidJoinPruneRp, + pimRPMappingNotificationPeriod, + pimRPMappingChangeCount, + pimInterfaceElectionNotificationPeriod, + pimInterfaceElectionWinCount + } + STATUS current + DESCRIPTION + "A collection of objects to support notification of PIM + network management events." + ::= { pimMIBGroups 11 } + +pimNetMgmtNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { pimInvalidRegister, + pimInvalidJoinPrune, + pimRPMappingChange, + pimInterfaceElection + } + STATUS current + DESCRIPTION + "A collection of notifications for signaling PIM network + management events." + + + + ::= { pimMIBGroups 12 } + +pimDiagnosticsGroup OBJECT-GROUP + OBJECTS { pimInAsserts, + pimOutAsserts, + pimLastAssertInterface, + pimLastAssertGroupAddressType, + pimLastAssertGroupAddress, + pimLastAssertSourceAddressType, + pimLastAssertSourceAddress, + pimNeighborLossNotificationPeriod, + pimNeighborLossCount + } + STATUS current + DESCRIPTION + "Objects providing additional diagnostics related to a PIM + router." + ::= { pimMIBGroups 13 } + +pimDmGroup OBJECT-GROUP + OBJECTS { + pimRefreshInterval, + pimInterfacePruneLimitInterval, + pimInterfaceGraftRetryInterval, + pimInterfaceSRPriorityEnabled, + pimNeighborSRCapable, + pimSGUpstreamPruneState, + pimSGUpstreamPruneLimitTimer, + pimSGOriginatorState, + pimSGSourceActiveTimer, + pimSGStateRefreshTimer + } + STATUS current + DESCRIPTION + "A collection of objects required for management of PIM + Dense Mode (PIM-DM) function. The groups pimSsmGroup and + pimSmGroup are also required." + REFERENCE "RFC 3973" + ::= { pimMIBGroups 14 } + + + + + + + + + + + + +pimDeviceStorageGroup OBJECT-GROUP + OBJECTS { pimDeviceConfigStorageType + } + STATUS current + DESCRIPTION + "An object that specifies the volatility of global PIM + configuration settings on this device." + ::= { pimMIBGroups 15 } + +END \ No newline at end of file diff --git a/mibs/RFC-5132-IPMCAST-MIB.txt b/mibs/RFC-5132-IPMCAST-MIB.txt new file mode 100644 index 00000000..f9203940 --- /dev/null +++ b/mibs/RFC-5132-IPMCAST-MIB.txt @@ -0,0 +1,2519 @@ +IPMCAST-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, + mib-2, Unsigned32, Counter64, + Gauge32, TimeTicks FROM SNMPv2-SMI -- [RFC2578] + RowStatus, TruthValue, + StorageType, TimeStamp FROM SNMPv2-TC -- [RFC2579] + MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF -- [RFC2580] + CounterBasedGauge64 FROM HCNUM-TC -- [RFC2856] + InterfaceIndexOrZero, + InterfaceIndex FROM IF-MIB -- [RFC2863] + IANAipRouteProtocol, + IANAipMRouteProtocol FROM IANA-RTPROTO-MIB + SnmpAdminString FROM SNMP-FRAMEWORK-MIB -- [RFC3411] + InetAddress, InetAddressType, + InetAddressPrefixLength, + InetZoneIndex, InetVersion FROM INET-ADDRESS-MIB -- [RFC4001] + LangTag FROM LANGTAG-TC-MIB; -- [RFC5131] + +ipMcastMIB MODULE-IDENTITY + LAST-UPDATED "200711090000Z" -- 9 November 2007 + ORGANIZATION "IETF MBONE Deployment (MBONED) Working Group" + CONTACT-INFO "David McWalter + Data Connection Limited + + + + 100 Church Street + Enfield, EN2 6BQ + UK + + Phone: +44 208 366 1177 + EMail: dmcw@dataconnection.com + + Dave Thaler + Microsoft Corporation + One Microsoft Way + Redmond, WA 98052-6399 + US + + Phone: +1 425 703 8835 + EMail: dthaler@dthaler.microsoft.com + + Andrew Kessler + Cisco Systems + 425 E. Tasman Drive + San Jose, CA 95134 + US + + Phone: +1 408 526 5139 + EMail: kessler@cisco.com" + DESCRIPTION + "The MIB module for management of IP Multicast, including + multicast routing, data forwarding, and data reception. + + Copyright (C) The IETF Trust (2007). This version of this + MIB module is part of RFC 5132; see the RFC itself for full + legal notices." + REVISION "200711090000Z" -- 9 November 2007 + DESCRIPTION "Initial version, published as RFC 5132. + + This MIB module obsoletes IPMROUTE-STD-MIB defined by + [RFC2932]. Changes include the following: + + o This MIB module includes support for IPv6 addressing + and the IPv6 scoped address architecture. [RFC2932] + supported only IPv4. + + o This MIB module allows several multicast protocols + to perform routing on a single interface, where + [RFC2932] assumed each interface supported at most + one multicast routing protocol. Multicast routing + protocols are now per-route, see + ipMcastRouteProtocol. + + + + + o This MIB module includes objects that are not + specific to multicast routing. It allows management + of multicast function on systems that do not perform + routing, whereas [RFC2932] was restricted to + multicast routing. + + o This MIB module includes a table of Source-Specific + Multicast (SSM) address ranges to which SSM + semantics [RFC3569] should be applied. + + o This MIB module includes a table of local + applications that are receiving multicast data. + + o This MIB module includes a table of multicast scope + zones." + ::= { mib-2 168 } + +-- +-- Top-level structure of the MIB +-- + +ipMcast OBJECT IDENTIFIER ::= { ipMcastMIB 1 } + +ipMcastEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The enabled status of IP Multicast function on this + system. + + The storage type of this object is determined by + ipMcastDeviceConfigStorageType." + ::= { ipMcast 1 } + +ipMcastRouteEntryCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of rows in the ipMcastRouteTable. This can be + used to check for multicast routing activity, and to monitor + the multicast routing table size." + ::= { ipMcast 2 } + +ipMcastDeviceConfigStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-write + + + + STATUS current + DESCRIPTION + "The storage type used for the global IP multicast + configuration of this device, comprised of the objects + listed below. If this storage type takes the value + 'permanent', write-access to the listed objects need not be + allowed. + + The objects described by this storage type are: + ipMcastEnabled.--IPI Comments: Snmpset is not supported." + DEFVAL { nonVolatile } + ::= { ipMcast 11 } + +-- +-- The Multicast Interface Table +-- + +ipMcastInterfaceTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table used to manage the multicast + protocol active on an interface." + ::= { ipMcast 3 } + +ipMcastInterfaceEntry OBJECT-TYPE + SYNTAX IpMcastInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) containing the multicast protocol + information for a particular interface. + + Per-interface multicast forwarding statistics are also + available in ipIfStatsTable." + REFERENCE "RFC 4293 ipIfStatsTable" + INDEX { ipMcastInterfaceIPVersion, + ipMcastInterfaceIfIndex } + ::= { ipMcastInterfaceTable 1 } + +IpMcastInterfaceEntry ::= SEQUENCE { + ipMcastInterfaceIPVersion InetVersion, + ipMcastInterfaceIfIndex InterfaceIndex, + ipMcastInterfaceTtl Unsigned32, + ipMcastInterfaceRateLimit Unsigned32, + ipMcastInterfaceStorageType StorageType +} + + + +ipMcastInterfaceIPVersion OBJECT-TYPE + SYNTAX InetVersion + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP version of this row." + ::= { ipMcastInterfaceEntry 1 } + +ipMcastInterfaceIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index value that uniquely identifies the interface to + which this entry is applicable. The interface identified by + a particular value of this index is the same interface as + identified by the same value of the IF-MIB's ifIndex." + ::= { ipMcastInterfaceEntry 2 } + +ipMcastInterfaceTtl OBJECT-TYPE + SYNTAX Unsigned32 (0..256) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The datagram Time to Live (TTL) threshold for the + interface. Any IP multicast datagrams with a TTL (IPv4) or + Hop Limit (IPv6) less than this threshold will not be + forwarded out the interface. The default value of 0 means + all multicast packets are forwarded out the interface. A + value of 256 means that no multicast packets are forwarded + out the interface." + DEFVAL { 0 } + ::= { ipMcastInterfaceEntry 3 } + +ipMcastInterfaceRateLimit OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The rate-limit, in kilobits per second, of forwarded + multicast traffic on the interface. A rate-limit of 0 + indicates that no rate limiting is done.--IPI Comments: Snmpset is not supported." + DEFVAL { 0 } + ::= { ipMcastInterfaceEntry 4 } + +ipMcastInterfaceStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-write + + + + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row.--IPI Comments: Snmpset is not supported." + DEFVAL { nonVolatile } + ::= { ipMcastInterfaceEntry 5 } + +-- +-- The SSM Range Table +-- + +ipMcastSsmRangeTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastSsmRangeEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is used to create and manage the range(s) of + group addresses to which SSM semantics should be applied." + REFERENCE "RFC 3569" + ::= { ipMcast 4 } + +ipMcastSsmRangeEntry OBJECT-TYPE + SYNTAX IpMcastSsmRangeEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) containing a range of group + addresses to which SSM semantics should be applied. + + Object Identifiers (OIDs) are limited to 128 + sub-identifiers, but this limit is not enforced by the + syntax of this entry. In practice, this does not present + a problem, because IP address types allowed by conformance + statements do not exceed this limit." + REFERENCE "RFC 3569" + INDEX { ipMcastSsmRangeAddressType, + ipMcastSsmRangeAddress, + ipMcastSsmRangePrefixLength } + ::= { ipMcastSsmRangeTable 1 } + +IpMcastSsmRangeEntry ::= SEQUENCE { + ipMcastSsmRangeAddressType InetAddressType, + ipMcastSsmRangeAddress InetAddress, + ipMcastSsmRangePrefixLength InetAddressPrefixLength, + ipMcastSsmRangeRowStatus RowStatus, + ipMcastSsmRangeStorageType StorageType +} + + + +ipMcastSsmRangeAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the multicast group prefix." + ::= { ipMcastSsmRangeEntry 1 } + +ipMcastSsmRangeAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The multicast group address which, when combined with + ipMcastSsmRangePrefixLength, gives the group prefix for this + SSM range. The InetAddressType is given by + ipMcastSsmRangeAddressType. + + This address object is only significant up to + ipMcastSsmRangePrefixLength bits. The remaining address + bits are set to zero. This is especially important for this + index field, which is part of the index of this entry. Any + non-zero bits would signify an entirely different entry. + + For IPv6 SSM address ranges, only ranges prefixed by + FF3x::/16 are permitted, where 'x' is a valid IPv6 RFC 4291 + multicast address scope. The syntax of the address range is + given by RFC 3306, Sections 4 and 7. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + SSM range entry applies only within the given zone. Zone + index zero is not valid in this table. + + If non-global scope SSM range entries are present, then + consistent ipMcastBoundaryTable entries are required on + routers at the zone boundary." + REFERENCE "RFC 2365, RFC 4291 Section 2.7, RFC 3306 Sections 4, 6, + and 7" + ::= { ipMcastSsmRangeEntry 2 } + +ipMcastSsmRangePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + + + + ipMcastSsmRangeAddress, gives the group prefix for this SSM + range. + + The InetAddressType is given by ipMcastSsmRangeAddressType. + For values 'ipv4' and 'ipv4z', this object must be in the + range 4..32. For values 'ipv6' and 'ipv6z', this object + must be in the range 8..128." + REFERENCE "RFC 2365, RFC 4291 Section 2.7, RFC 3306 Sections 4, 6, + and 7" + ::= { ipMcastSsmRangeEntry 3 } + +ipMcastSsmRangeRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this row, by which rows in this table can + be created and destroyed. + + This status object can be set to active(1) without setting + any other columnar objects in this entry. + + All writeable objects in this entry can be modified when the + status of this entry is active(1).--IPI Comments: Not Supported" + ::= { ipMcastSsmRangeEntry 4 } + +ipMcastSsmRangeStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row.--IPI Comments: Not Supported" + DEFVAL { nonVolatile } + ::= { ipMcastSsmRangeEntry 5 } + +-- +-- The IP Multicast Routing Table +-- + +ipMcastRouteTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastRouteEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table containing multicast routing + information for IP datagrams sent by particular sources + + + + to the IP multicast groups known to this router." + ::= { ipMcast 5 } + +ipMcastRouteEntry OBJECT-TYPE + SYNTAX IpMcastRouteEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) containing the multicast routing + information for IP datagrams from a particular source and + addressed to a particular IP multicast group address. + + OIDs are limited to 128 sub-identifiers, but this limit + is not enforced by the syntax of this entry. In practice, + this does not present a problem, because IP address types + allowed by conformance statements do not exceed this limit." + INDEX { ipMcastRouteGroupAddressType, + ipMcastRouteGroup, + ipMcastRouteGroupPrefixLength, + ipMcastRouteSourceAddressType, + ipMcastRouteSource, + ipMcastRouteSourcePrefixLength } + ::= { ipMcastRouteTable 1 } + +IpMcastRouteEntry ::= SEQUENCE { + ipMcastRouteGroupAddressType InetAddressType, + ipMcastRouteGroup InetAddress, + ipMcastRouteGroupPrefixLength InetAddressPrefixLength, + ipMcastRouteSourceAddressType InetAddressType, + ipMcastRouteSource InetAddress, + ipMcastRouteSourcePrefixLength InetAddressPrefixLength, + ipMcastRouteUpstreamNeighborType InetAddressType, + ipMcastRouteUpstreamNeighbor InetAddress, + ipMcastRouteInIfIndex InterfaceIndexOrZero, + ipMcastRouteTimeStamp TimeStamp, + ipMcastRouteExpiryTime TimeTicks, + ipMcastRouteProtocol IANAipMRouteProtocol, + ipMcastRouteRtProtocol IANAipRouteProtocol, + ipMcastRouteRtAddressType InetAddressType, + ipMcastRouteRtAddress InetAddress, + ipMcastRouteRtPrefixLength InetAddressPrefixLength, + ipMcastRouteRtType INTEGER, + ipMcastRouteOctets Counter64, + ipMcastRoutePkts Counter64, + ipMcastRouteTtlDropOctets Counter64, + ipMcastRouteTtlDropPackets Counter64, + ipMcastRouteDifferentInIfOctets Counter64, + ipMcastRouteDifferentInIfPackets Counter64, + + + + ipMcastRouteBps CounterBasedGauge64 +} + +ipMcastRouteGroupAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteGroup. Legal values correspond to + the subset of address families for which multicast + forwarding is supported." + ::= { ipMcastRouteEntry 1 } + +ipMcastRouteGroup OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address which, when combined with + the corresponding value specified in + ipMcastRouteGroupPrefixLength, identifies the groups for + which this entry contains multicast routing information. + + This address object is only significant up to + ipMcastRouteGroupPrefixLength bits. The remaining address + bits are set to zero. This is especially important for this + index field, which is part of the index of this entry. Any + non-zero bits would signify an entirely different entry. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + forwarding state applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastRouteEntry 2 } + +ipMcastRouteGroupPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + the corresponding value of ipMcastRouteGroup, identifies the + groups for which this entry contains multicast routing + information. + + The InetAddressType is given by + + + + ipMcastRouteGroupAddressType. For values 'ipv4' and + 'ipv4z', this object must be in the range 4..32. For values + 'ipv6' and 'ipv6z', this object must be in the range + 8..128." + ::= { ipMcastRouteEntry 3 } + +ipMcastRouteSourceAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteSource. + + A value of unknown(0) indicates a non-source-specific entry, + corresponding to all sources in the group. Otherwise, the + value MUST be the same as the value of + ipMcastRouteGroupType." + ::= { ipMcastRouteEntry 4 } + +ipMcastRouteSource OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The network address which, when combined with the + corresponding value of ipMcastRouteSourcePrefixLength, + identifies the sources for which this entry contains + multicast routing information. + + This address object is only significant up to + ipMcastRouteSourcePrefixLength bits. The remaining address + bits are set to zero. This is especially important for this + index field, which is part of the index of this entry. Any + non-zero bits would signify an entirely different entry. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + source address applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastRouteEntry 5 } + +ipMcastRouteSourcePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + + + "The length in bits of the mask which, when combined with + the corresponding value of ipMcastRouteSource, identifies + the sources for which this entry contains multicast routing + information. + + The InetAddressType is given by + ipMcastRouteSourceAddressType. For the value 'unknown', + this object must be zero. For values 'ipv4' and 'ipv4z', + this object must be in the range 4..32. For values 'ipv6' + and 'ipv6z', this object must be in the range 8..128." + ::= { ipMcastRouteEntry 6 } + +ipMcastRouteUpstreamNeighborType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteUpstreamNeighbor. + + An address type of unknown(0) indicates that the upstream + neighbor is unknown, for example in BIDIR-PIM." + REFERENCE "RFC 5015" + ::= { ipMcastRouteEntry 7 } + +ipMcastRouteUpstreamNeighbor OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the upstream neighbor (for example, RPF + neighbor) from which IP datagrams from these sources to + this multicast address are received." + ::= { ipMcastRouteEntry 8 } + +ipMcastRouteInIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of ifIndex for the interface on which IP + datagrams sent by these sources to this multicast address + are received. A value of 0 indicates that datagrams are not + subject to an incoming interface check, but may be accepted + on multiple interfaces (for example, in BIDIR-PIM)." + REFERENCE "RFC 5015" + ::= { ipMcastRouteEntry 9 } + + + + +ipMcastRouteTimeStamp OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at which the multicast routing + information represented by this entry was learned by the + router. + + If this information was present at the most recent re- + initialization of the local management subsystem, then this + object contains a zero value." + ::= { ipMcastRouteEntry 10 } + +ipMcastRouteExpiryTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum amount of time remaining before this entry will + be aged out. The value 0 indicates that the entry is not + subject to aging. If ipMcastRouteNextHopState is pruned(1), + this object represents the remaining time until the prune + expires. If this timer expires, state reverts to + forwarding(2). Otherwise, this object represents the time + until this entry is removed from the table." + ::= { ipMcastRouteEntry 11 } + +ipMcastRouteProtocol OBJECT-TYPE + SYNTAX IANAipMRouteProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The multicast routing protocol via which this multicast + forwarding entry was learned." + ::= { ipMcastRouteEntry 12 } + +ipMcastRouteRtProtocol OBJECT-TYPE + SYNTAX IANAipRouteProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing mechanism via which the route used to find the + upstream or parent interface for this multicast forwarding + entry was learned." + ::= { ipMcastRouteEntry 13 } + +ipMcastRouteRtAddressType OBJECT-TYPE + + + + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteRtAddress." + ::= { ipMcastRouteEntry 14 } + +ipMcastRouteRtAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address portion of the route used to find the upstream + or parent interface for this multicast forwarding entry. + + This address object is only significant up to + ipMcastRouteRtPrefixLength bits. The remaining address bits + are set to zero. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + forwarding state applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastRouteEntry 15 } + +ipMcastRouteRtPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The length in bits of the mask associated with the route + used to find the upstream or parent interface for this + multicast forwarding entry. + + The InetAddressType is given by ipMcastRouteRtAddressType. + For values 'ipv4' and 'ipv4z', this object must be in the + range 4..32. For values 'ipv6' and 'ipv6z', this object + must be in the range 8..128." + ::= { ipMcastRouteEntry 16 } + +ipMcastRouteRtType OBJECT-TYPE + SYNTAX INTEGER { + unicast (1), -- Unicast route used in multicast RIB + multicast (2) -- Multicast route + } + MAX-ACCESS read-only + + + + STATUS current + DESCRIPTION + "The reason the given route was placed in the (logical) + multicast Routing Information Base (RIB). A value of + unicast means that the route would normally be placed only + in the unicast RIB, but was placed in the multicast RIB + due (instead or in addition) to local configuration, such as + when running PIM over RIP. A value of multicast means that + the route was explicitly added to the multicast RIB by the + routing protocol, such as the Distance Vector Multicast + Routing Protocol (DVMRP) or Multiprotocol BGP." + ::= { ipMcastRouteEntry 17 } + +ipMcastRouteOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of octets contained in IP datagrams that were + received from these sources and addressed to this multicast + group address, and which were forwarded by this router. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp." + ::= { ipMcastRouteEntry 18 } + +ipMcastRoutePkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets routed using this multicast route + entry. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp." + ::= { ipMcastRouteEntry 19 } + +ipMcastRouteTtlDropOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "The number of octets contained in IP datagrams that this + router has received from these sources and addressed to this + multicast group address, which were dropped because the TTL + (IPv4) or Hop Limit (IPv6) was decremented to zero, or to a + value less than ipMcastInterfaceTtl for all next hops. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp.--IPI Comments: Not Supported" + ::= { ipMcastRouteEntry 20 } + +ipMcastRouteTtlDropPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets that this router has received from + these sources and addressed to this multicast group address, + which were dropped because the TTL (IPv4) or Hop Limit + (IPv6) was decremented to zero, or to a value less than + ipMcastInterfaceTtl for all next hops. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp.--IPI Comments: Not Supported" + ::= { ipMcastRouteEntry 21 } + +ipMcastRouteDifferentInIfOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of octets contained in IP datagrams that this + router has received from these sources and addressed to this + multicast group address, which were dropped because they + were received on an unexpected interface. + + For RPF checking protocols (such as PIM-SM), these packets + arrived on interfaces other than ipMcastRouteInIfIndex, and + were dropped because of this failed RPF check. (RPF paths + are 'Reverse Path Forwarding' paths; the unicast routes to + the expected origin of multicast data flows). + + + + + Other protocols may drop packets on an incoming interface + check for different reasons (for example, BIDIR-PIM performs + a DF check on receipt of packets). All packets dropped as a + result of an incoming interface check are counted here. + + If this counter increases rapidly, this indicates a problem. + A significant quantity of multicast data is arriving at this + router on unexpected interfaces, and is not being forwarded. + + For guidance, if the rate of increase of this counter + exceeds 1% of the rate of increase of ipMcastRouteOctets, + then there are multicast routing problems that require + investigation. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp.--IPI Comments: Not Supported" + REFERENCE "RFC 4601 and RFC 5015" + ::= { ipMcastRouteEntry 22 } + +ipMcastRouteDifferentInIfPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets which this router has received from + these sources and addressed to this multicast group address, + which were dropped because they were received on an + unexpected interface. + + For RPF checking protocols (such as PIM-SM), these packets + arrived on interfaces other than ipMcastRouteInIfIndex, and + were dropped because of this failed RPF check. (RPF paths + are 'Reverse Path Forwarding' path; the unicast routes to + the expected origin of multicast data flows). + + Other protocols may drop packets on an incoming interface + check for different reasons (for example, BIDIR-PIM performs + a DF check on receipt of packets). All packets dropped as a + result of an incoming interface check are counted here. + + If this counter increases rapidly, this indicates a problem. + A significant quantity of multicast data is arriving at this + router on unexpected interfaces, and is not being forwarded. + + For guidance, if the rate of increase of this counter + + + + exceeds 1% of the rate of increase of ipMcastRoutePkts, then + there are multicast routing problems that require + investigation. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteTimeStamp." + REFERENCE "RFC 4601 and RFC 5015" + ::= { ipMcastRouteEntry 23 } + +ipMcastRouteBps OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "bits per second" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Bits per second forwarded by this router using this + multicast routing entry. + + This value is a sample; it is the number of bits forwarded + during the last whole 1 second sampling period. The value + during the current 1 second sampling period is not made + available until the period is completed. + + The quantity being sampled is the same as that measured by + ipMcastRouteOctets. The units and the sampling method are + different.--IPI Comments: Not Supported" + ::= { ipMcastRouteEntry 24 } +-- +-- The IP Multicast Routing Next Hop Table +-- + +ipMcastRouteNextHopTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastRouteNextHopEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table containing information on the + next-hops on outgoing interfaces for routing IP multicast + datagrams. Each entry is one of a list of next-hops on + outgoing interfaces for particular sources sending to a + particular multicast group address." + ::= { ipMcast 6 } + +ipMcastRouteNextHopEntry OBJECT-TYPE + SYNTAX IpMcastRouteNextHopEntry + + + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the list of next-hops on + outgoing interfaces to which IP multicast datagrams from + particular sources to an IP multicast group address are + routed. + + OIDs are limited to 128 sub-identifiers, but this limit + is not enforced by the syntax of this entry. In practice, + this does not present a problem, because IP address types + allowed by conformance statements do not exceed this limit." + INDEX { ipMcastRouteNextHopGroupAddressType, + ipMcastRouteNextHopGroup, + ipMcastRouteNextHopGroupPrefixLength, + ipMcastRouteNextHopSourceAddressType, + ipMcastRouteNextHopSource, + ipMcastRouteNextHopSourcePrefixLength, + ipMcastRouteNextHopIfIndex, + ipMcastRouteNextHopAddressType, + ipMcastRouteNextHopAddress } + ::= { ipMcastRouteNextHopTable 1 } + +IpMcastRouteNextHopEntry ::= SEQUENCE { + ipMcastRouteNextHopGroupAddressType InetAddressType, + ipMcastRouteNextHopGroup InetAddress, + ipMcastRouteNextHopGroupPrefixLength InetAddressPrefixLength, + ipMcastRouteNextHopSourceAddressType InetAddressType, + ipMcastRouteNextHopSource InetAddress, + ipMcastRouteNextHopSourcePrefixLength InetAddressPrefixLength, + ipMcastRouteNextHopIfIndex InterfaceIndex, + ipMcastRouteNextHopAddressType InetAddressType, + ipMcastRouteNextHopAddress InetAddress, + ipMcastRouteNextHopState INTEGER, + ipMcastRouteNextHopTimeStamp TimeStamp, + ipMcastRouteNextHopExpiryTime TimeTicks, + ipMcastRouteNextHopClosestMemberHops Unsigned32, + ipMcastRouteNextHopProtocol IANAipMRouteProtocol, + ipMcastRouteNextHopOctets Counter64, + ipMcastRouteNextHopPkts Counter64 +} + +ipMcastRouteNextHopGroupAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + + + + contained in ipMcastRouteNextHopGroup. Legal values + correspond to the subset of address families for which + multicast forwarding is supported." + ::= { ipMcastRouteNextHopEntry 1 } + +ipMcastRouteNextHopGroup OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address which, when combined with + the corresponding value specified in + ipMcastRouteNextHopGroupPrefixLength, identifies the groups + for which this entry contains multicast forwarding + information. + + This address object is only significant up to + ipMcastRouteNextHopGroupPrefixLength bits. The remaining + address bits are set to zero. This is especially important + for this index field, which is part of the index of this + entry. Any non-zero bits would signify an entirely + different entry. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + forwarding state applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastRouteNextHopEntry 2 } + +ipMcastRouteNextHopGroupPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + the corresponding value of ipMcastRouteGroup, identifies the + groups for which this entry contains multicast routing + information. + + The InetAddressType is given by + ipMcastRouteNextHopGroupAddressType. For values 'ipv4' and + 'ipv4z', this object must be in the range 4..32. For values + 'ipv6' and 'ipv6z', this object must be in the range + 8..128." + ::= { ipMcastRouteNextHopEntry 3 } + +ipMcastRouteNextHopSourceAddressType OBJECT-TYPE + + + + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteNextHopSource. + + A value of unknown(0) indicates a non-source-specific entry, + corresponding to all sources in the group. Otherwise, the + value MUST be the same as the value of + ipMcastRouteNextHopGroupType." + ::= { ipMcastRouteNextHopEntry 4 } + +ipMcastRouteNextHopSource OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The network address which, when combined with the + corresponding value of the mask specified in + ipMcastRouteNextHopSourcePrefixLength, identifies the + sources for which this entry specifies a next-hop on an + outgoing interface. + + This address object is only significant up to + ipMcastRouteNextHopSourcePrefixLength bits. The remaining + address bits are set to zero. This is especially important + for this index field, which is part of the index of this + entry. Any non-zero bits would signify an entirely + different entry. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + source address applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastRouteNextHopEntry 5 } + +ipMcastRouteNextHopSourcePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + the corresponding value specified in + ipMcastRouteNextHopSource, identifies the sources for which + this entry specifies a next-hop on an outgoing interface. + + + + + The InetAddressType is given by + ipMcastRouteNextHopSourceAddressType. For the value + 'unknown', this object must be zero. For values 'ipv4' and + 'ipv4z', this object must be in the range 4..32. For values + 'ipv6' and 'ipv6z', this object must be in the range + 8..128." + ::= { ipMcastRouteNextHopEntry 6 } + +ipMcastRouteNextHopIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex value of the interface for the outgoing + interface for this next-hop." + ::= { ipMcastRouteNextHopEntry 7 } + +ipMcastRouteNextHopAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastRouteNextHopAddress." + ::= { ipMcastRouteNextHopEntry 8 } + +ipMcastRouteNextHopAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address of the next-hop specific to this entry. For + most interfaces, this is identical to + ipMcastRouteNextHopGroup. Non-Broadcast Multi-Access + (NBMA) interfaces, however, may + have multiple next-hop addresses out a single outgoing + interface." + ::= { ipMcastRouteNextHopEntry 9 } + +ipMcastRouteNextHopState OBJECT-TYPE + SYNTAX INTEGER { pruned(1), forwarding(2) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An indication of whether the outgoing interface and next- + hop represented by this entry is currently being used to + forward IP datagrams. The value 'forwarding' indicates it + is currently being used; the value 'pruned' indicates it is + + + + not." + ::= { ipMcastRouteNextHopEntry 10 } + +ipMcastRouteNextHopTimeStamp OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at which the multicast routing + information represented by this entry was learned by the + router. + + If this information was present at the most recent re- + initialization of the local management subsystem, then this + object contains a zero value." + ::= { ipMcastRouteNextHopEntry 11 } + +ipMcastRouteNextHopExpiryTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum amount of time remaining before this entry will + be aged out. If ipMcastRouteNextHopState is pruned(1), the + remaining time until the prune expires and the state reverts + to forwarding(2). Otherwise, the remaining time until this + entry is removed from the table. The time remaining may be + copied from ipMcastRouteExpiryTime if the protocol in use + for this entry does not specify next-hop timers. The value + 0 indicates that the entry is not subject to aging." + ::= { ipMcastRouteNextHopEntry 12 } + +ipMcastRouteNextHopClosestMemberHops OBJECT-TYPE + SYNTAX Unsigned32 (0..256) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum number of hops between this router and any + member of this IP multicast group reached via this next-hop + on this outgoing interface. Any IP multicast datagrams for + the group that have a TTL (IPv4) or Hop Count (IPv6) less + than this number of hops will not be forwarded to this + next-hop. + + A value of 0 means all multicast datagrams are forwarded out + the interface. A value of 256 means that no multicast + datagrams are forwarded out the interface. + + + + + This is an optimization applied by multicast routing + protocols that explicitly track hop counts to downstream + listeners. Multicast protocols that are not aware of hop + counts to downstream listeners set this object to 0." + ::= { ipMcastRouteNextHopEntry 13 } + +ipMcastRouteNextHopProtocol OBJECT-TYPE + SYNTAX IANAipMRouteProtocol + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The routing mechanism via which this next-hop was learned." + ::= { ipMcastRouteNextHopEntry 14 } + +ipMcastRouteNextHopOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of octets of multicast packets that have been + forwarded using this route. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteNextHopTimeStamp." + ::= { ipMcastRouteNextHopEntry 15 } + +ipMcastRouteNextHopPkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets which have been forwarded using this + route. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of routes being + removed and replaced, which can be detected by observing + the value of ipMcastRouteNextHopTimeStamp." + ::= { ipMcastRouteNextHopEntry 16 } + +-- +-- The IP Multicast Scope Boundary Table +-- + + + + +ipMcastBoundaryTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastBoundaryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the system's multicast scope + zone boundaries." + REFERENCE "RFC 4007 Section 5" + ::= { ipMcast 7 } + +ipMcastBoundaryEntry OBJECT-TYPE + SYNTAX IpMcastBoundaryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) describing one of this device's + multicast scope zone boundaries. + + OIDs are limited to 128 sub-identifiers, but this limit + is not enforced by the syntax of this entry. In practice, + this does not present a problem, because IP address types + allowed by conformance statements do not exceed this limit." + REFERENCE "RFC 2365 Section 5, RFC 4007 Section 5" + INDEX { ipMcastBoundaryIfIndex, + ipMcastBoundaryAddressType, + ipMcastBoundaryAddress, + ipMcastBoundaryAddressPrefixLength } + ::= { ipMcastBoundaryTable 1 } + +IpMcastBoundaryEntry ::= SEQUENCE { + ipMcastBoundaryIfIndex InterfaceIndex, + ipMcastBoundaryAddressType InetAddressType, + ipMcastBoundaryAddress InetAddress, + ipMcastBoundaryAddressPrefixLength InetAddressPrefixLength, + ipMcastBoundaryTimeStamp TimeStamp, + ipMcastBoundaryDroppedMcastOctets Counter64, + ipMcastBoundaryDroppedMcastPkts Counter64, + ipMcastBoundaryStatus RowStatus, + ipMcastBoundaryStorageType StorageType +} + +ipMcastBoundaryIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IfIndex value for the interface to which this boundary + applies. Packets with a destination address in the + + + + associated address/mask range will not be forwarded over + this interface. + + For IPv4, zone boundaries cut through links. Therefore, + this is an external interface. This may be either a + physical or virtual interface (tunnel, encapsulation, and + so forth.) + + For IPv6, zone boundaries cut through nodes. Therefore, + this is a virtual interface within the node. This is not + an external interface, either real or virtual. Packets + crossing this interface neither arrive at nor leave the + node, but only move between zones within the node." + REFERENCE "RFC 2365 Section 5, RFC 4007 Section 5" + ::= { ipMcastBoundaryEntry 1 } + +ipMcastBoundaryAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastBoundaryAddress. Legal values + correspond to the subset of address families for which + multicast forwarding is supported." + ::= { ipMcastBoundaryEntry 2 } + +ipMcastBoundaryAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The group address which, when combined with the + corresponding value of ipMcastBoundaryAddressPrefixLength, + identifies the group range for which the scoped boundary + exists. Scoped IPv4 multicast address ranges must be + prefixed by 239.0.0.0/8. Scoped IPv6 multicast address + ranges are FF0x::/16, where x is a valid RFC 4291 multicast + scope. + + An IPv6 address prefixed by FF1x::/16 is a non-permanently- + assigned address. An IPv6 address prefixed by FF3x::/16 is + a unicast-prefix-based multicast addresses. A zone boundary + for FF0x::/16 implies an identical boundary for these other + prefixes. No separate FF1x::/16 or FF3x::/16 entries exist + in this table. + + This address object is only significant up to + + + + ipMcastBoundaryAddressPrefixLength bits. The remaining + address bits are set to zero. This is especially important + for this index field, which is part of the index of this + entry. Any non-zero bits would signify an entirely + different entry." + ::= { ipMcastBoundaryEntry 3 } + +ipMcastBoundaryAddressPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which when, combined with + the corresponding value of ipMcastBoundaryAddress, + identifies the group range for which the scoped boundary + exists. + + The InetAddressType is given by ipMcastBoundaryAddressType. + For values 'ipv4' and 'ipv4z', this object must be in the + range 4..32. For values 'ipv6' and 'ipv6z', this object + must be set to 16." + ::= { ipMcastBoundaryEntry 4 } + +ipMcastBoundaryTimeStamp OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at which the multicast boundary + information represented by this entry was learned by the + router. + + If this information was present at the most recent re- + initialization of the local management subsystem, then this + object contains a zero value.--IPI Comments: Not Supported" + ::= { ipMcastBoundaryEntry 5 } + +ipMcastBoundaryDroppedMcastOctets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of octets of multicast packets that have been + dropped as a result of this zone boundary configuration. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of boundary + + + + configuration being removed and replaced, which can be + detected by observing the value of + ipMcastBoundaryTimeStamp.--IPI Comments: Not Supported" + ::= { ipMcastBoundaryEntry 6 } + +ipMcastBoundaryDroppedMcastPkts OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of multicast packets that have been dropped as a + result of this zone boundary configuration. + + Discontinuities in this monotonically increasing value + occur at re-initialization of the management system. + Discontinuities can also occur as a result of boundary + configuration being removed and replaced, which can be + detected by observing the value of + ipMcastBoundaryTimeStamp.--IPI Comments: Not Supported" + ::= { ipMcastBoundaryEntry 7 } + +ipMcastBoundaryStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this row, by which rows in this table can + be created and destroyed. + + This status object can be set to active(1) without setting + any other columnar objects in this entry. + + All writeable objects in this entry can be modified when the + status of this entry is active(1).--IPI Comments: Not Supported" + ::= { ipMcastBoundaryEntry 8 } + +ipMcastBoundaryStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row.--IPI Comments: Not Supported" + DEFVAL { nonVolatile } + ::= { ipMcastBoundaryEntry 9 } + +-- + + + +-- The IP Multicast Scope Name Table +-- + +ipMcastScopeNameTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastScopeNameEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing multicast scope names." + REFERENCE "RFC 4007 Section 4" + ::= { ipMcast 8 } + +ipMcastScopeNameEntry OBJECT-TYPE + SYNTAX IpMcastScopeNameEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) that names a multicast address + scope. + + OIDs are limited to 128 sub-identifiers, but this limit + is not enforced by the syntax of this entry. In practice, + this does not present a problem, because IP address types + allowed by conformance statements do not exceed this limit." + REFERENCE "RFC 4007 Section 4" + INDEX { ipMcastScopeNameAddressType, + ipMcastScopeNameAddress, + ipMcastScopeNameAddressPrefixLength, + ipMcastScopeNameLanguage } + ::= { ipMcastScopeNameTable 1 } + +IpMcastScopeNameEntry ::= SEQUENCE { + ipMcastScopeNameAddressType InetAddressType, + ipMcastScopeNameAddress InetAddress, + ipMcastScopeNameAddressPrefixLength InetAddressPrefixLength, + ipMcastScopeNameLanguage LangTag, + ipMcastScopeNameString SnmpAdminString, + ipMcastScopeNameDefault TruthValue, + ipMcastScopeNameStatus RowStatus, + ipMcastScopeNameStorageType StorageType +} + +ipMcastScopeNameAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + + + + contained in ipMcastScopeNameAddress. Legal values + correspond to the subset of address families for which + multicast forwarding is supported." + ::= { ipMcastScopeNameEntry 1 } + +ipMcastScopeNameAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The group address which, when combined with the + corresponding value of ipMcastScopeNameAddressPrefixLength, + identifies the group range associated with the multicast + scope. Scoped IPv4 multicast address ranges must be + prefixed by 239.0.0.0/8. Scoped IPv6 multicast address + ranges are FF0x::/16, where x is a valid RFC 4291 multicast + scope. + + An IPv6 address prefixed by FF1x::/16 is a non-permanently- + assigned address. An IPv6 address prefixed by FF3x::/16 is + a unicast-prefix-based multicast addresses. A scope + FF0x::/16 implies an identical scope name for these other + prefixes. No separate FF1x::/16 or FF3x::/16 entries exist + in this table. + + This address object is only significant up to + ipMcastScopeNameAddressPrefixLength bits. The remaining + address bits are set to zero. This is especially important + for this index field, which is part of the index of this + entry. Any non-zero bits would signify an entirely + different entry." + ::= { ipMcastScopeNameEntry 2 } + +ipMcastScopeNameAddressPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + the corresponding value of ipMcastScopeNameAddress, + identifies the group range associated with the multicast + scope. + + The InetAddressType is given by ipMcastScopeNameAddressType. + For values 'ipv4' and 'ipv4z', this object must be in the + range 4..32. For values 'ipv6' and 'ipv6z', this object + must be set to 16." + ::= { ipMcastScopeNameEntry 3 } + + + +ipMcastScopeNameLanguage OBJECT-TYPE + SYNTAX LangTag + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Language tag associated with the scope name." + REFERENCE "RFC 4646" + ::= { ipMcastScopeNameEntry 4 } + +ipMcastScopeNameString OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The textual name associated with the multicast scope. The + value of this object should be suitable for displaying to + end-users, such as when allocating a multicast address in + this scope. + + When no name is specified, the default value of this object + for IPv4 should be the string 239.x.x.x/y with x and y + replaced with decimal values to describe the address and + mask length associated with the scope. + + When no name is specified, the default value of this object + for IPv6 should be the string FF0x::/16, with x replaced by + the hexadecimal value for the RFC 4291 multicast scope. + + An IPv6 address prefixed by FF1x::/16 is a non-permanently- + assigned address. An IPv6 address prefixed by FF3x::/16 is + a unicast-prefix-based multicast addresses. A scope + FF0x::/16 implies an identical scope name for these other + prefixes. No separate FF1x::/16 or FF3x::/16 entries exist + in this table.--IPI Comments: Not Supported" + REFERENCE "RFC 2365, RFC 3306 Section 4, RFC 4291 Section 2.7" + ::= { ipMcastScopeNameEntry 5 } + +ipMcastScopeNameDefault OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If true, indicates a preference that the name in the + following language should be used by applications if no name + is available in a desired language.--IPI Comments: Not Supported" + DEFVAL { false } + ::= { ipMcastScopeNameEntry 6 } + + + + +ipMcastScopeNameStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The status of this row, by which rows in this table can + be created and destroyed. Before the row can be activated, + the object ipMcastScopeNameString must be set to a valid + value. All writeable objects in this entry can be modified + when the status is active(1).--IPI Comments: Not Supported" + ::= { ipMcastScopeNameEntry 7 } + +ipMcastScopeNameStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this row. Rows having the value + 'permanent' need not allow write-access to any columnar + objects in the row.--IPI Comments: Not Supported" + DEFVAL { nonVolatile } + ::= { ipMcastScopeNameEntry 8 } + +-- +-- The Multicast Listeners Table +-- + +ipMcastLocalListenerTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastLocalListenerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing local applications or + services that have joined multicast groups as listeners. + + Entries exist for all addresses in the multicast range for + all applications and services as they are classified on this + device." + ::= { ipMcast 9 } + +ipMcastLocalListenerEntry OBJECT-TYPE + SYNTAX IpMcastLocalListenerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) identifying a local application + or service that has joined a multicast group as a listener. + + + + + OIDs are limited to 128 sub-identifiers, but this limit + is not enforced by the syntax of this entry. In practice, + this does not present a problem, because IP address types + allowed by conformance statements do not exceed this limit." + INDEX { ipMcastLocalListenerGroupAddressType, + ipMcastLocalListenerGroupAddress, + ipMcastLocalListenerSourceAddressType, + ipMcastLocalListenerSourceAddress, + ipMcastLocalListenerSourcePrefixLength, + ipMcastLocalListenerIfIndex, + ipMcastLocalListenerRunIndex } + ::= { ipMcastLocalListenerTable 1 } + +IpMcastLocalListenerEntry ::= SEQUENCE { + ipMcastLocalListenerGroupAddressType InetAddressType, + ipMcastLocalListenerGroupAddress InetAddress, + ipMcastLocalListenerSourceAddressType InetAddressType, + ipMcastLocalListenerSourceAddress InetAddress, + ipMcastLocalListenerSourcePrefixLength InetAddressPrefixLength, + ipMcastLocalListenerIfIndex InterfaceIndex, + ipMcastLocalListenerRunIndex Unsigned32 +} + +ipMcastLocalListenerGroupAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A value indicating the address family of the address + contained in ipMcastLocalListenerGroupAddress. Legal values + correspond to the subset of address families for which + multicast is supported." + ::= { ipMcastLocalListenerEntry 1 } + +ipMcastLocalListenerGroupAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group for which this entry specifies + locally joined applications or services." + ::= { ipMcastLocalListenerEntry 2 } + +ipMcastLocalListenerSourceAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + + + "A value indicating the address family of the address + contained in ipMcastLocalListenerSource. + + A value of unknown(0) indicates a non-source-specific entry, + corresponding to all sources in the group. Otherwise, the + value MUST be the same as the value of + ipMcastLocalListenerGroupAddressType." + ::= { ipMcastLocalListenerEntry 3 } + +ipMcastLocalListenerSourceAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The network address which, when combined with the + corresponding value of the mask specified in + ipMcastLocalListenerSourcePrefixLength, identifies the + sources for which this entry specifies a local listener. + + This address object is only significant up to + ipMcastLocalListenerSourcePrefixLength bits. The remaining + address bits are set to zero. This is especially important + for this index field, which is part of the index of this + entry. Any non-zero bits would signify an entirely + different entry. + + For addresses of type ipv4z or ipv6z, the appended zone + index is significant even though it lies beyond the prefix + length. The use of these address types indicate that this + listener address applies only within the given zone. Zone + index zero is not valid in this table." + ::= { ipMcastLocalListenerEntry 4 } + +ipMcastLocalListenerSourcePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined with + the corresponding value specified in + ipMcastLocalListenerSource, identifies the sources for which + this entry specifies a local listener. + + The InetAddressType is given by + ipMcastLocalListenerSourceAddressType. For the value + 'unknown', this object must be zero. For values 'ipv4' and + 'ipv4z', this object must be in the range 4..32. For values + 'ipv6' and 'ipv6z', this object must be in the range + + + + 8..128." + ::= { ipMcastLocalListenerEntry 5 } + +ipMcastLocalListenerIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IfIndex value of the interface for which this entry + specifies a local listener." + ::= { ipMcastLocalListenerEntry 6 } + +ipMcastLocalListenerRunIndex OBJECT-TYPE + SYNTAX Unsigned32 (0..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A unique value corresponding to a piece of software running + on this router or host system. Where possible, this should + be the system's native, unique identification number. + + This identifier is platform-specific. It may correspond to + a process ID or application instance number. + + A value of zero indicates that the application instance(s) + cannot be identified. A value of zero indicates that one or + more unidentified applications have joined the specified + multicast groups (for the specified sources) as listeners.--IPI Comments: Not Supported" + REFERENCE "RFC 2287 sysApplRunIndex" + ::= { ipMcastLocalListenerEntry 7 } + +-- +-- The Multicast Zone Table +-- + +ipMcastZoneTable OBJECT-TYPE + SYNTAX SEQUENCE OF IpMcastZoneEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing scope zones on this device." + REFERENCE "RFC 4007 Section 5" + ::= { ipMcast 10 } + +ipMcastZoneEntry OBJECT-TYPE + SYNTAX IpMcastZoneEntry + MAX-ACCESS not-accessible + STATUS current + + + + DESCRIPTION + "An entry (conceptual row) describing a scope zone on this + device." + REFERENCE "RFC 4007 Section 5" + INDEX { ipMcastZoneIndex } + ::= { ipMcastZoneTable 1 } + +IpMcastZoneEntry ::= SEQUENCE { + ipMcastZoneIndex InetZoneIndex, + ipMcastZoneScopeDefaultZoneIndex InetZoneIndex, + ipMcastZoneScopeAddressType InetAddressType, + ipMcastZoneScopeAddress InetAddress, + ipMcastZoneScopeAddressPrefixLength InetAddressPrefixLength +} + +ipMcastZoneIndex OBJECT-TYPE + SYNTAX InetZoneIndex (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This zone index uniquely identifies a zone on a device. + + Each zone is for a given scope. Scope-level information in + this table is for the unique scope that corresponds to this + zone. + + Zero is a special value used to request the default zone for + a given scope. Zero is not a valid value for this object. + + To test whether ipMcastZoneIndex is the default zone for + this scope, test whether ipMcastZoneIndex is equal to + ipMcastZoneScopeDefaultZoneIndex." + ::= { ipMcastZoneEntry 1 } + +ipMcastZoneScopeDefaultZoneIndex OBJECT-TYPE + SYNTAX InetZoneIndex (1..4294967295) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The default zone index for this scope. This is the zone + that this device will use if the default (zero) zone is + requested for this scope. + + Zero is not a valid value for this object.--IPI Comments: Not Supported" + ::= { ipMcastZoneEntry 2 } + +ipMcastZoneScopeAddressType OBJECT-TYPE + SYNTAX InetAddressType + + + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address type for which this scope zone exists.--IPI Comments: Not Supported" + ::= { ipMcastZoneEntry 3 } + +ipMcastZoneScopeAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The multicast group address which, when combined with + ipMcastZoneScopeAddressPrefixLength, gives the multicast + address range for this scope. The InetAddressType is given + by ipMcastZoneScopeAddressType. + + Scoped IPv4 multicast address ranges are prefixed by + 239.0.0.0/8. Scoped IPv6 multicast address ranges are + FF0x::/16, where x is a valid RFC 4291 multicast scope. + + An IPv6 address prefixed by FF1x::/16 is a non-permanently- + assigned address. An IPv6 address prefixed by FF3x::/16 is + a unicast-prefix-based multicast addresses. A scope + FF0x::/16 implies an identical scope for these other + prefixes. No separate FF1x::/16 or FF3x::/16 entries exist + in this table. + + This address object is only significant up to + ipMcastZoneScopeAddressPrefixLength bits. The remaining + address bits are set to zero. --IPI Comments: Not Supported" + REFERENCE "RFC 2365, RFC 3306 Section 4, RFC 4291 Section 2.7" + ::= { ipMcastZoneEntry 4 } + +ipMcastZoneScopeAddressPrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The length in bits of the mask which, when combined + with ipMcastZoneScopeAddress, gives the multicast address + prefix for this scope. + + The InetAddressType is given by ipMcastZoneScopeAddressType. + For values 'ipv4' and 'ipv4z', this object must be in the + range 4..32. For values 'ipv6' and 'ipv6z', this object + must be set to 16.--IPI Comments: Not Supported" + ::= { ipMcastZoneEntry 5 } + + + + +-- +-- Conformance information +-- + +ipMcastMIBConformance + OBJECT IDENTIFIER ::= { ipMcastMIB 2 } +ipMcastMIBCompliances + OBJECT IDENTIFIER ::= { ipMcastMIBConformance 1 } +ipMcastMIBGroups OBJECT IDENTIFIER ::= { ipMcastMIBConformance 2 } + +-- +-- Compliance statements +-- + +ipMcastMIBComplianceHost MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for hosts supporting IPMCAST-MIB. + + Support for either InetAddressType ipv4 or ipv6 is + mandatory; support for both InetAddressTypes ipv4 and ipv6 + is optional. Support for types ipv4z and ipv6z is + optional. + + -- OBJECT ipMcastLocalListenerGroupAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastLocalListenerGroupAddress + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastLocalListenerSourceAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastLocalListenerSourceAddress + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6." + + MODULE -- this module + MANDATORY-GROUPS { ipMcastMIBLocalListenerGroup, + + + + ipMcastMIBBasicGroup } + + OBJECT ipMcastEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastDeviceConfigStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP ipMcastMIBSsmGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteDiagnosticsGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBBoundaryIfGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBScopeNameGroup + DESCRIPTION + "This group is optional." + + ::= { ipMcastMIBCompliances 1 } + +ipMcastMIBComplianceRouter MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for routers supporting + IPMCAST-MIB. + + Support for either InetAddressType ipv4 or ipv6 is + mandatory; support for both InetAddressTypes ipv4 and ipv6 + is optional. Support for types ipv4z and ipv6z is + optional. + + -- OBJECT ipMcastSsmRangeAddressType + -- SYNTAX InetAddressType {ipv4(1), ipv6(2), ipv4z(3), + -- ipv6z(4)} + + + + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastSsmRangeAddress + -- SYNTAX InetAddress (SIZE (4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteGroupAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteGroup + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteSourceAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteSource + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopGroupAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopGroup + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopSourceAddressType + + + + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopSource + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteNextHopAddress + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6." + + MODULE -- this module + MANDATORY-GROUPS { ipMcastMIBRouteProtoGroup, + ipMcastMIBBasicGroup, + ipMcastMIBSsmGroup, + ipMcastMIBRouteGroup } + + OBJECT ipMcastEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastDeviceConfigStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceTtl + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceRateLimit + MIN-ACCESS read-only + + + + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastRouteUpstreamNeighborType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2), + ipv4z(3), ipv6z(4) } + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + or ipv6." + + OBJECT ipMcastRouteUpstreamNeighbor + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + or ipv6." + + OBJECT ipMcastRouteRtAddressType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2), + ipv4z(3), ipv6z(4) } + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + or ipv6." + + OBJECT ipMcastRouteRtAddress + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + or ipv6." + + OBJECT ipMcastSsmRangeRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastSsmRangeStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP ipMcastMIBRouteDiagnosticsGroup + DESCRIPTION + "This group is not mandatory, but SHOULD be supported where + hardware permits." + + + + GROUP ipMcastMIBPktsOutGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBHopCountGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteOctetsGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteBpsGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBLocalListenerGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBBoundaryIfGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBScopeNameGroup + DESCRIPTION + "This group is optional." + + ::= { ipMcastMIBCompliances 2 } + +ipMcastMIBComplianceBorderRouter MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for routers on scope + boundaries supporting IPMCAST-MIB. + + Support for either InetAddressType ipv4z or ipv6z is + mandatory; support for both InetAddressTypes ipv4z and + ipv6z is optional. + + -- OBJECT ipMcastSsmRangeAddressType + -- SYNTAX InetAddressType {ipv4(1), ipv6(2), ipv4z(3), + -- ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastSsmRangeAddress + -- SYNTAX InetAddress (SIZE (4|8|16|20)) + + + + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteGroupAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 or ipv6. + -- + -- OBJECT ipMcastRouteGroup + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteSourceAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteSource + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteNextHopGroupAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteNextHopGroup + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteNextHopSourceAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + + + + -- + -- OBJECT ipMcastRouteNextHopSource + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteNextHopAddressType + -- SYNTAX InetAddressType {unknown(0), ipv4(1), ipv6(2), + -- ipv4z(3), ipv6z(4)} + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastRouteNextHopAddress + -- SYNTAX InetAddress (SIZE (0|4|8|16|20)) + -- DESCRIPTION + -- This compliance requires support for unknown and + -- either ipv4 and ipv4z or ipv6 and ipv6z. + -- + -- OBJECT ipMcastBoundaryAddressType + -- SYNTAX InetAddressType {ipv4(1), ipv6(2)} + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastBoundaryAddress + -- SYNTAX InetAddress (SIZE (4|16) + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastScopeNameAddressType + -- SYNTAX InetAddressType {ipv4(1), ipv6(2)} + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6. + -- + -- OBJECT ipMcastScopeNameAddress + -- SYNTAX InetAddress (SIZE (4|16) + -- DESCRIPTION + -- This compliance requires support for ipv4 or ipv6." + + MODULE -- this module + MANDATORY-GROUPS { ipMcastMIBRouteProtoGroup, + ipMcastMIBBasicGroup, + ipMcastMIBSsmGroup, + ipMcastMIBRouteGroup, + ipMcastMIBBoundaryIfGroup, + ipMcastMIBScopeNameGroup } + + + + + OBJECT ipMcastEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastDeviceConfigStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceTtl + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceRateLimit + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastInterfaceStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastRouteUpstreamNeighborType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2), + ipv4z(3), ipv6z(4) } + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + and ipv4z, or ipv6 and ipv6z." + + OBJECT ipMcastRouteUpstreamNeighbor + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + and ipv4z, or ipv6 and ipv6z." + + OBJECT ipMcastRouteRtAddressType + SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2), + ipv4z(3), ipv6z(4) } + DESCRIPTION + "This compliance requires support for unknown and either ipv4 + and ipv4z, or ipv6 and ipv6z." + + OBJECT ipMcastRouteRtAddress + SYNTAX InetAddress (SIZE (0|4|8|16|20)) + DESCRIPTION + + + + "This compliance requires support for unknown and either ipv4 + and ipv4z, or ipv6 and ipv6z." + + OBJECT ipMcastSsmRangeRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ipMcastSsmRangeStorageType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP ipMcastMIBRouteDiagnosticsGroup + DESCRIPTION + "This group is not mandatory, but SHOULD be supported where + hardware permits." + + GROUP ipMcastMIBPktsOutGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBHopCountGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteOctetsGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBRouteBpsGroup + DESCRIPTION + "This group is optional." + + GROUP ipMcastMIBLocalListenerGroup + DESCRIPTION + "This group is optional." + + OBJECT ipMcastZoneScopeAddressType + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + DESCRIPTION + "This compliance requires support for ipv4 or ipv6." + + OBJECT ipMcastZoneScopeAddress + SYNTAX InetAddress (SIZE (4|16)) + DESCRIPTION + "This compliance requires support for ipv4 or ipv6." + + + + + ::= { ipMcastMIBCompliances 3 } + +-- +-- Units of conformance +-- +ipMcastMIBBasicGroup OBJECT-GROUP + OBJECTS { ipMcastEnabled, + ipMcastRouteEntryCount, + ipMcastDeviceConfigStorageType + } + STATUS current + DESCRIPTION + "A collection of objects to support basic management of IP + Multicast protocols." + ::= { ipMcastMIBGroups 1 } + +ipMcastMIBSsmGroup OBJECT-GROUP + OBJECTS { ipMcastSsmRangeRowStatus, + ipMcastSsmRangeStorageType } + STATUS current + DESCRIPTION + "A collection of objects to support management of Source- + Specific Multicast routing." + ::= { ipMcastMIBGroups 2 } + +ipMcastMIBRouteGroup OBJECT-GROUP + OBJECTS { ipMcastInterfaceTtl, + ipMcastInterfaceRateLimit, + ipMcastInterfaceStorageType, + ipMcastRouteUpstreamNeighborType, + ipMcastRouteUpstreamNeighbor, + ipMcastRouteInIfIndex, + ipMcastRouteTimeStamp, + ipMcastRouteExpiryTime, + ipMcastRouteNextHopState, + ipMcastRouteNextHopTimeStamp, + ipMcastRouteNextHopExpiryTime + } + STATUS current + DESCRIPTION + "A collection of objects to support basic management of IP + Multicast routing." + ::= { ipMcastMIBGroups 3 } + +ipMcastMIBRouteDiagnosticsGroup OBJECT-GROUP + OBJECTS { ipMcastRoutePkts, + ipMcastRouteTtlDropPackets, + ipMcastRouteDifferentInIfPackets + + + + } + STATUS current + DESCRIPTION + "A collection of routing diagnostic packet counters." + ::= { ipMcastMIBGroups 4 } + +ipMcastMIBPktsOutGroup OBJECT-GROUP + OBJECTS { ipMcastRouteNextHopTimeStamp, + ipMcastRouteNextHopPkts } + STATUS current + DESCRIPTION + "A collection of objects to support management of packet + counters for each outgoing interface entry of a route." + ::= { ipMcastMIBGroups 5 } + +ipMcastMIBHopCountGroup OBJECT-GROUP + OBJECTS { ipMcastRouteNextHopClosestMemberHops } + STATUS current + DESCRIPTION + "A collection of objects to support management of the use of + hop counts in IP Multicast routing." + ::= { ipMcastMIBGroups 6 } + +ipMcastMIBRouteOctetsGroup OBJECT-GROUP + OBJECTS { ipMcastRouteTimeStamp, + ipMcastRouteOctets, + ipMcastRouteTtlDropOctets, + ipMcastRouteDifferentInIfOctets, + ipMcastRouteNextHopTimeStamp, + ipMcastRouteNextHopOctets } + STATUS current + DESCRIPTION + "A collection of objects to support management of octet + counters for each forwarding entry." + ::= { ipMcastMIBGroups 7 } + +ipMcastMIBRouteBpsGroup OBJECT-GROUP + OBJECTS { ipMcastRouteBps } + STATUS current + DESCRIPTION + "A collection of objects to support sampling of data rate + in bits per second for each forwarding entry." + ::= { ipMcastMIBGroups 8 } + +ipMcastMIBRouteProtoGroup OBJECT-GROUP + OBJECTS { ipMcastRouteProtocol, ipMcastRouteRtProtocol, + ipMcastRouteRtAddressType, ipMcastRouteRtAddress, + ipMcastRouteRtPrefixLength, ipMcastRouteRtType, + + + + ipMcastRouteNextHopProtocol } + STATUS current + DESCRIPTION + "A collection of objects providing information on the + relationship between multicast routing information and the + IP Forwarding Table." + ::= { ipMcastMIBGroups 9 } + +ipMcastMIBLocalListenerGroup OBJECT-GROUP + OBJECTS { ipMcastLocalListenerRunIndex } + STATUS current + DESCRIPTION + "A collection of objects to support management of local + listeners on hosts or routers." + ::= { ipMcastMIBGroups 10 } + +ipMcastMIBBoundaryIfGroup OBJECT-GROUP + OBJECTS { ipMcastBoundaryTimeStamp, + ipMcastBoundaryDroppedMcastOctets, + ipMcastBoundaryDroppedMcastPkts, + ipMcastBoundaryStatus, + ipMcastBoundaryStorageType, + ipMcastZoneScopeDefaultZoneIndex, + ipMcastZoneScopeAddressType, + ipMcastZoneScopeAddress, + ipMcastZoneScopeAddressPrefixLength + } + STATUS current + DESCRIPTION + "A collection of objects to support management of multicast + scope zone boundaries." + ::= { ipMcastMIBGroups 11 } + +ipMcastMIBScopeNameGroup OBJECT-GROUP + OBJECTS { ipMcastScopeNameString, ipMcastScopeNameDefault, + ipMcastScopeNameStatus, ipMcastScopeNameStorageType } + STATUS current + DESCRIPTION + "A collection of objects to support management of multicast + address scope names." + ::= { ipMcastMIBGroups 12 } + +END \ No newline at end of file diff --git a/mibs/RFC-5519-MGMD-STD-MIB.txt b/mibs/RFC-5519-MGMD-STD-MIB.txt new file mode 100644 index 00000000..8c131998 --- /dev/null +++ b/mibs/RFC-5519-MGMD-STD-MIB.txt @@ -0,0 +1,1656 @@ +MGMD-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, mib-2, Counter32, Gauge32, + Unsigned32, TimeTicks FROM SNMPv2-SMI + InetAddress, InetAddressType FROM INET-ADDRESS-MIB + RowStatus FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF + InterfaceIndexOrZero, + InterfaceIndex FROM IF-MIB; + +mgmdStdMIB MODULE-IDENTITY + LAST-UPDATED "200903300000Z" -- March 30, 2009 + ORGANIZATION "INTERNET ENGINEERING TASK FORCE MULTICAST and + ANYCAST GROUP MEMBERSHIP Working + Group. + www: http://www.ietf.org/html.charters/magma-charter.html + EMail: magma@ietf.org" + CONTACT-INFO + "Julian Chesterfield + University of Cambridge, + Computer Laboratory, + 15 JJ Thompson Avenue, + Cambridge, + CB3 0FD + UK + + EMail: julian.chesterfield@cl.cam.ac.uk" + + DESCRIPTION + "The MIB module for MGMD management. + A new version of MGMD combining RFC 2933 and RFC 3019. + Includes IGMPv3 and MLDv2 source filtering changes. + + Copyright (c) 2009 IETF Trust and the persons + identified as authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the + following conditions are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + + - Neither the name of Internet Society, IETF or IETF Trust, + nor the names of specific contributors, may be used to endorse + or promote products derived from this software without + specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + This version of this MIB module is part of RFC 5519; + see the RFC itself for full legal notices." + + REVISION "200903300000Z" -- March 30, 2009 + DESCRIPTION + "This MIB obsoletes both RFC 2933 and RFC 3019." + + ::= { mib-2 185 } + + +mgmdMIBObjects OBJECT IDENTIFIER ::= { mgmdStdMIB 1 } + +-- +-- The MGMD Host Interface Table +-- + +mgmdHostInterfaceTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdHostInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interfaces on which + IGMP or MLD is enabled." + + ::= { mgmdMIBObjects 1 } + +mgmdHostInterfaceEntry OBJECT-TYPE + SYNTAX MgmdHostInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) representing an interface on + which IGMP or MLD is enabled." + INDEX { mgmdHostInterfaceIfIndex, + mgmdHostInterfaceQuerierType } + + ::= { mgmdHostInterfaceTable 1 } + +MgmdHostInterfaceEntry ::= SEQUENCE { + mgmdHostInterfaceIfIndex InterfaceIndex, + mgmdHostInterfaceQuerierType InetAddressType, + mgmdHostInterfaceQuerier InetAddress, + mgmdHostInterfaceStatus RowStatus, + mgmdHostInterfaceVersion Unsigned32, + mgmdHostInterfaceVersion1QuerierTimer TimeTicks, + mgmdHostInterfaceVersion2QuerierTimer TimeTicks, + mgmdHostInterfaceVersion3Robustness Unsigned32 +} + +mgmdHostInterfaceIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex value of the interface for which IGMP or MLD is + enabled. The table is indexed by the ifIndex value and the + InetAddressType to allow for interfaces that may be + configured in both IPv4 and IPv6 modes." + + ::= { mgmdHostInterfaceEntry 1 } + +mgmdHostInterfaceQuerierType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this interface. This entry along with + the ifIndex value acts as an index to the mgmdHostInterface + table. A physical interface may be configured in multiple + modes concurrently, e.g., in IPv4 and IPv6 modes connected + to the same interface; however, the traffic is considered + to be logically separate." + + ::= { mgmdHostInterfaceEntry 2 } + +mgmdHostInterfaceQuerier OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the IGMP or MLD Querier on the IP subnet to + which this interface is attached. The InetAddressType, + e.g., IPv4 or IPv6, is identified by the + mgmdHostInterfaceQuerierType variable in the + mgmdHostInterface table." + + ::= { mgmdHostInterfaceEntry 3 } + +mgmdHostInterfaceStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The activation of a row enables the host side of IGMP or + MLD on the interface. The destruction of a row disables + the host side of IGMP or MLD on the interface." + + ::= { mgmdHostInterfaceEntry 4 } + +mgmdHostInterfaceVersion OBJECT-TYPE + SYNTAX Unsigned32 (1..3) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The maximum version of MGMD that the host can run on + this interface. A value of 1 is only applicable for IPv4, + and indicates that the host only supports IGMPv1 on the + + interface. A value of 2 indicates that the host also + supports IGMPv2 (for IPv4) or MLDv1 (for IPv6). A value of + 3 indicates that the host also supports IGMPv3 (for IPv4) + or MLDv2 (for IPv6)." + DEFVAL { 3 } + + ::= { mgmdHostInterfaceEntry 5 } + +mgmdHostInterfaceVersion1QuerierTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining until the host assumes that there are + no IGMPv1 routers present on the interface. While this is + non-zero, the host will reply to all queries with version 1 + membership reports. This variable applies to IGMPv2 or 3 + hosts that are forced to run in v1 for compatibility with + v1 routers present on the interface. This object may only + be present when the corresponding value of + mgmdHostInterfaceQuerierType is ipv4." + REFERENCE "RFC 2236, Section 4 and RFC 3376, Section 7.2.1" + DEFVAL { 0 } + + ::= { mgmdHostInterfaceEntry 6 } + +mgmdHostInterfaceVersion2QuerierTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining until the host assumes that there are + no MGMDv2 routers present on the interface. While this is + non-zero, the host will reply to all queries with version 1 + or 2 membership reports. This variable applies to MGMDv3 + hosts that are forced to run in v2 for compatibility with + v2 hosts or routers present on the interface." + REFERENCE "RFC 3376, Section 7.2.1 and RFC 3810, Section 8.2.1" + DEFVAL { 0 } + + ::= { mgmdHostInterfaceEntry 7 } + +mgmdHostInterfaceVersion3Robustness OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + + + + DESCRIPTION + "The robustness variable utilised by an MGMDv3 host in + sending state-change reports for multicast routers. To + ensure the state-change report is not missed, the host + retransmits the state-change report + [mgmdHostInterfaceVersion3Robustness - 1] times. The + variable must be a non-zero value." + REFERENCE "RFC 3376, Section 8.1 and RFC 3810, Section 9.14.1" + DEFVAL { 2 } + + ::= { mgmdHostInterfaceEntry 8 } + +-- +-- The MGMD Router Interface Table +-- + +mgmdRouterInterfaceTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdRouterInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interfaces on which + IGMP or MLD is enabled." + + ::= { mgmdMIBObjects 2 } + +mgmdRouterInterfaceEntry OBJECT-TYPE + SYNTAX MgmdRouterInterfaceEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) representing an interface on + which IGMP or MLD is enabled." + INDEX { mgmdRouterInterfaceIfIndex, + mgmdRouterInterfaceQuerierType } + + ::= { mgmdRouterInterfaceTable 1 } + +MgmdRouterInterfaceEntry ::= SEQUENCE { + mgmdRouterInterfaceIfIndex InterfaceIndex, + mgmdRouterInterfaceQuerierType InetAddressType, + mgmdRouterInterfaceQuerier InetAddress, + mgmdRouterInterfaceQueryInterval Unsigned32, + mgmdRouterInterfaceStatus RowStatus, + mgmdRouterInterfaceVersion Unsigned32, + mgmdRouterInterfaceQueryMaxResponseTime Unsigned32, + mgmdRouterInterfaceQuerierUpTime TimeTicks, + mgmdRouterInterfaceQuerierExpiryTime TimeTicks, + + mgmdRouterInterfaceWrongVersionQueries Counter32, + mgmdRouterInterfaceJoins Counter32, + mgmdRouterInterfaceProxyIfIndex InterfaceIndexOrZero, + mgmdRouterInterfaceGroups Gauge32, + mgmdRouterInterfaceRobustness Unsigned32, + mgmdRouterInterfaceLastMemberQueryInterval Unsigned32, + mgmdRouterInterfaceLastMemberQueryCount Unsigned32, + mgmdRouterInterfaceStartupQueryCount Unsigned32, + mgmdRouterInterfaceStartupQueryInterval Unsigned32 +} + +mgmdRouterInterfaceIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The ifIndex value of the interface for which IGMP or MLD + is enabled. The table is indexed by the ifIndex value and + the InetAddressType to allow for interfaces that may be + configured in both IPv4 and IPv6 modes." + + ::= { mgmdRouterInterfaceEntry 1 } + +mgmdRouterInterfaceQuerierType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of this interface. This entry along with + the ifIndex value acts as the index to the + mgmdRouterInterface table. A physical interface may be + configured in multiple modes concurrently, e.g., in IPv4 + and IPv6 modes connected to the same interface; however, + the traffic is considered to be logically separate." + + ::= { mgmdRouterInterfaceEntry 2 } + +mgmdRouterInterfaceQuerier OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address of the IGMP or MLD Querier on the IP subnet to + which this interface is attached. The InetAddressType, + e.g., IPv4 or IPv6, is identified by the + mgmdRouterInterfaceQuerierType variable in the + mgmdRouterInterface table." + + + ::= { mgmdRouterInterfaceEntry 3 } + +mgmdRouterInterfaceQueryInterval OBJECT-TYPE + SYNTAX Unsigned32 (1..31744) + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The frequency at which IGMP or MLD Host-Query packets are + transmitted on this interface." + DEFVAL { 125 } + + ::= { mgmdRouterInterfaceEntry 4 } + +mgmdRouterInterfaceStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The activation of a row enables the router side of IGMP or + MLD on the interface. The destruction of a row disables + the router side of IGMP or MLD on the interface." + + ::= { mgmdRouterInterfaceEntry 5 } + +mgmdRouterInterfaceVersion OBJECT-TYPE + SYNTAX Unsigned32 (1..3) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The version of MGMD that is running on this interface. + Value 1 applies to IGMPv1 routers only. Value 2 applies + to IGMPv2 and MLDv1 routers, and value 3 applies to IGMPv3 + and MLDv2 routers. + + This object can be used to configure a router capable of + running either version. For IGMP and MLD to function + correctly, all routers on a LAN must be configured to run + the same version on that LAN." + DEFVAL { 3 } + + ::= { mgmdRouterInterfaceEntry 6 } + +mgmdRouterInterfaceQueryMaxResponseTime OBJECT-TYPE + SYNTAX Unsigned32 (0..31744) + UNITS "tenths of seconds" + MAX-ACCESS read-create + STATUS current + + DESCRIPTION + "The maximum query response interval advertised in MGMDv2 + or IGMPv3 queries on this interface." + REFERENCE "RFC 3810, Section 9.3" + DEFVAL { 100 } + + ::= { mgmdRouterInterfaceEntry 7 } + +mgmdRouterInterfaceQuerierUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time since mgmdRouterInterfaceQuerier was last + changed." + + ::= { mgmdRouterInterfaceEntry 8 } + +mgmdRouterInterfaceQuerierExpiryTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The amount of time remaining before the Other Querier + Present Timer expires. If the local system is the querier, + the value of this object is zero." + + ::= { mgmdRouterInterfaceEntry 9 } + +mgmdRouterInterfaceWrongVersionQueries OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of general queries received whose IGMP or MLD + version does not match the equivalent + mgmdRouterInterfaceVersion, over the lifetime of the row + entry. Both IGMP and MLD require that all routers on a LAN + be configured to run the same version. Thus, if any general + queries are received with the wrong version, this indicates + a configuration error." + + ::= { mgmdRouterInterfaceEntry 10 } + +mgmdRouterInterfaceJoins OBJECT-TYPE + SYNTAX Counter32 + + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "The number of times a group membership has been added on + this interface, that is, the number of times an entry for + this interface has been added to the Cache Table. This + object can give an indication of the amount of activity + between samples over time." + + ::= { mgmdRouterInterfaceEntry 11 } + +mgmdRouterInterfaceProxyIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Some devices implement a form of IGMP or MLD proxying + whereby memberships learned on the interface represented by + this row cause Host Membership Reports to be sent on the + interface whose ifIndex value is given by this object. + Such a device would implement the mgmdV2RouterBaseMIBGroup + only on its router interfaces (those interfaces with + non-zero mgmdRouterInterfaceProxyIfIndex). Typically, the + value of this object is 0, indicating that no proxying is + being done." + DEFVAL { 0 } + + ::= { mgmdRouterInterfaceEntry 12 } + +mgmdRouterInterfaceGroups OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current number of entries for this interface in the + mgmdRouterCacheTable." + + ::= { mgmdRouterInterfaceEntry 13 } + +mgmdRouterInterfaceRobustness OBJECT-TYPE + SYNTAX Unsigned32 (1..255) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Robustness Variable allows tuning for the expected + packet loss on a subnet. If a subnet is expected to be + lossy, the Robustness Variable may be increased. IGMP and + MLD are robust to (Robustness Variable-1) packet losses." + DEFVAL { 2 } + + ::= { mgmdRouterInterfaceEntry 14 } + +mgmdRouterInterfaceLastMemberQueryInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..31744) + UNITS "tenths of seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Last Member Query Interval is the Max Query Response + Interval inserted into group-specific queries sent in + response to leave group messages, and is also the amount + of time between group-specific query messages. This value + may be tuned to modify the leave latency of the network. A + reduced value results in reduced time to detect the loss of + the last member of a group. The value of this object is + irrelevant if mgmdRouterInterfaceVersion is 1." + DEFVAL { 10 } + + ::= { mgmdRouterInterfaceEntry 15 } + +mgmdRouterInterfaceLastMemberQueryCount OBJECT-TYPE + SYNTAX Unsigned32 (1..255) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Represents the number of group-specific and group-and- + source-specific queries sent by the router before it assumes + there are no local members." + + ::= { mgmdRouterInterfaceEntry 16 } + +mgmdRouterInterfaceStartupQueryCount OBJECT-TYPE + SYNTAX Unsigned32 (1..255) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Represents the number of Queries sent out on startup, + separated by the Startup Query Interval." + + ::= { mgmdRouterInterfaceEntry 17 } + +mgmdRouterInterfaceStartupQueryInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..31744) + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "This variable represents the interval between General + Queries sent by a Querier on startup." + + ::= { mgmdRouterInterfaceEntry 18 } + +-- +-- The MGMD Host Cache Table +-- + +mgmdHostCacheTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdHostCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the IP multicast groups for + which the host is a member on a particular interface." + + ::= { mgmdMIBObjects 3 } + +mgmdHostCacheEntry OBJECT-TYPE + SYNTAX MgmdHostCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the mgmdHostCacheTable." + INDEX { mgmdHostCacheAddressType, mgmdHostCacheAddress, + mgmdHostCacheIfIndex } + + ::= { mgmdHostCacheTable 1 } + +MgmdHostCacheEntry ::= SEQUENCE { + mgmdHostCacheAddressType InetAddressType, + mgmdHostCacheAddress InetAddress , + mgmdHostCacheIfIndex InterfaceIndex, + mgmdHostCacheUpTime TimeTicks, + mgmdHostCacheLastReporter InetAddress, + mgmdHostCacheSourceFilterMode INTEGER +} + +mgmdHostCacheAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the mgmdHostCacheTable entry. This + value applies to both the mgmdHostCacheAddress and the + mgmdHostCacheLastReporter entries." + + ::= { mgmdHostCacheEntry 1 } + +mgmdHostCacheAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information. The InetAddressType, e.g., IPv4 or + IPv6, is identified by the mgmdHostCacheAddressType variable + in the mgmdHostCache table." + + ::= { mgmdHostCacheEntry 2 } + +mgmdHostCacheIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information + for an IP multicast group address." + + ::= { mgmdHostCacheEntry 3 } + +mgmdHostCacheUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time elapsed since this entry was created." + + ::= { mgmdHostCacheEntry 4 } + +mgmdHostCacheLastReporter OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the source of the last membership report + received for this IP multicast group address on this + interface. If no membership report has been received, this + object has a value of 0. The InetAddressType, e.g., IPv4 or + IPv6, is identified by the mgmdHostCacheAddressType variable + in the mgmdHostCache table." + + ::= { mgmdHostCacheEntry 5 } + +mgmdHostCacheSourceFilterMode OBJECT-TYPE + + SYNTAX INTEGER {include (1), + exclude (2) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state in which the interface is currently set. The + value indicates the relevance of the corresponding source + list entries in the mgmdHostSecListTable for MGMDv3 + interfaces." + + ::= { mgmdHostCacheEntry 6 } + +-- +-- The MGMD Router Cache Table +-- + +mgmdRouterCacheTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdRouterCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the IP multicast groups for + which there are members on a particular router interface." + + ::= { mgmdMIBObjects 4 } + +mgmdRouterCacheEntry OBJECT-TYPE + SYNTAX MgmdRouterCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the mgmdRouterCacheTable." + + INDEX { mgmdRouterCacheAddressType, mgmdRouterCacheAddress, + mgmdRouterCacheIfIndex } + + ::= { mgmdRouterCacheTable 1 } + +MgmdRouterCacheEntry ::= SEQUENCE { + mgmdRouterCacheAddressType InetAddressType, + mgmdRouterCacheAddress InetAddress, + mgmdRouterCacheIfIndex InterfaceIndex, + mgmdRouterCacheLastReporter InetAddress, + mgmdRouterCacheUpTime TimeTicks, + mgmdRouterCacheExpiryTime TimeTicks, + mgmdRouterCacheExcludeModeExpiryTimer + TimeTicks, + mgmdRouterCacheVersion1HostTimer TimeTicks, + + mgmdRouterCacheVersion2HostTimer TimeTicks, + mgmdRouterCacheSourceFilterMode INTEGER +} + +mgmdRouterCacheAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the mgmdRouterCacheTable entry. This + value applies to both the mgmdRouterCacheAddress and the + mgmdRouterCacheLastReporter entries." + + ::= { mgmdRouterCacheEntry 1 } + +mgmdRouterCacheAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information. The InetAddressType, e.g., IPv4 or + IPv6, is identified by the mgmdRouterCacheAddressType + variable in the mgmdRouterCache table." + + ::= { mgmdRouterCacheEntry 2 } + +mgmdRouterCacheIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information + for an IP multicast group address." + + ::= { mgmdRouterCacheEntry 3 } + +mgmdRouterCacheLastReporter OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP address of the source of the last membership report + received for this IP multicast group address on this + interface. If no membership report has been received, this + object has the value 0. The InetAddressType, e.g., IPv4 or + IPv6, is identified by the mgmdRouterCacheAddressType + variable in the mgmdRouterCache table." + + ::= { mgmdRouterCacheEntry 4 } + +mgmdRouterCacheUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time elapsed since this entry was created." + + ::= { mgmdRouterCacheEntry 5 } + +mgmdRouterCacheExpiryTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the time remaining before the Group + Membership Interval state expires. The value must always be + greater than or equal to 1." + + ::= { mgmdRouterCacheEntry 6 } + +mgmdRouterCacheExcludeModeExpiryTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value is applicable only to MGMDv3-compatible nodes + and represents the time remaining before the interface + EXCLUDE state expires and the interface state transitions + to INCLUDE mode. This value can never be greater than + mgmdRouterCacheExpiryTime." + + ::= { mgmdRouterCacheEntry 7 } + +mgmdRouterCacheVersion1HostTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining until the local router will assume that + there are no longer any MGMD version 1 members on the IP + subnet attached to this interface. This entry only applies + to IGMPv1 hosts, and is not implemented for MLD. Upon + hearing any MGMDv1 Membership Report (IGMPv1 only), this + value is reset to the group membership timer. While this + + + + time remaining is non-zero, the local router ignores any + MGMDv2 Leave messages (IGMPv2 only) for this group that it + receives on this interface." + + ::= { mgmdRouterCacheEntry 8 } + +mgmdRouterCacheVersion2HostTimer OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The time remaining until the local router will assume that + there are no longer any MGMD version 2 members on the IP + subnet attached to this interface. This entry applies to + both IGMP and MLD hosts. Upon hearing any MGMDv2 Membership + Report, this value is reset to the group membership timer. + Assuming no MGMDv1 hosts have been detected, the local + router does not ignore any MGMDv2 Leave messages for this + group that it receives on this interface." + + ::= { mgmdRouterCacheEntry 9 } + +mgmdRouterCacheSourceFilterMode OBJECT-TYPE + SYNTAX INTEGER {include (1), + exclude (2) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current cache state, applicable to MGMDv3-compatible + nodes. The value indicates whether the state is INCLUDE or + EXCLUDE." + + ::= { mgmdRouterCacheEntry 10 } + +-- +-- The MGMD Inverse Host interface/cache lookup Table +-- + +mgmdInverseHostCacheTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdInverseHostCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interfaces that are + members of a particular group. This is an inverse lookup + table for entries in the mgmdHostCacheTable." + + ::= { mgmdMIBObjects 5 } + +mgmdInverseHostCacheEntry OBJECT-TYPE + SYNTAX MgmdInverseHostCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the + mgmdInverseHostCacheTable." + INDEX { mgmdInverseHostCacheIfIndex, + mgmdInverseHostCacheAddressType, + mgmdInverseHostCacheAddress} + + ::= { mgmdInverseHostCacheTable 1 } + +MgmdInverseHostCacheEntry ::= SEQUENCE { + mgmdInverseHostCacheIfIndex InterfaceIndex, + mgmdInverseHostCacheAddressType InetAddressType, + mgmdInverseHostCacheAddress InetAddress +} + +mgmdInverseHostCacheIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information." + + ::= { mgmdInverseHostCacheEntry 1 } + +mgmdInverseHostCacheAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the mgmdInverseHostCacheTable entry." + + ::= { mgmdInverseHostCacheEntry 2 } + +mgmdInverseHostCacheAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information about an interface. The + InetAddressType, e.g., IPv4 or IPv6, is identified by the + mgmdInverseHostCacheAddressType variable in the + mgmdInverseHostCache table." + + + ::= { mgmdInverseHostCacheEntry 3 } + +-- +-- The MGMD Inverse Router interface/cache lookup Table +-- + +mgmdInverseRouterCacheTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdInverseRouterCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the interfaces that + are members of a particular group. This is an inverse + lookup table for entries in the mgmdRouterCacheTable." + + ::= { mgmdMIBObjects 6 } + +mgmdInverseRouterCacheEntry OBJECT-TYPE + SYNTAX MgmdInverseRouterCacheEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the + mgmdInverseRouterCacheTable." + INDEX { mgmdInverseRouterCacheIfIndex, + mgmdInverseRouterCacheAddressType, + mgmdInverseRouterCacheAddress } + + ::= { mgmdInverseRouterCacheTable 1 } + +MgmdInverseRouterCacheEntry ::= SEQUENCE { + mgmdInverseRouterCacheIfIndex InterfaceIndex, + mgmdInverseRouterCacheAddressType InetAddressType, + mgmdInverseRouterCacheAddress InetAddress +} + +mgmdInverseRouterCacheIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information + for an IP multicast group address." + + ::= { mgmdInverseRouterCacheEntry 1 } + +mgmdInverseRouterCacheAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the mgmdInverseRouterCacheTable entry." + + ::= { mgmdInverseRouterCacheEntry 2 } + +mgmdInverseRouterCacheAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information. The InetAddressType, e.g., IPv4 or + IPv6, is identified by the mgmdInverseRouterCacheAddressType + variable in the mgmdInverseRouterCache table." + + ::= { mgmdInverseRouterCacheEntry 3 } + +-- +-- The MGMD Host Source list Table +-- + +mgmdHostSrcListTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdHostSrcListEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the Source List entries + corresponding to each interface and multicast group pair + on a host." + + ::= { mgmdMIBObjects 7 } + +mgmdHostSrcListEntry OBJECT-TYPE + SYNTAX MgmdHostSrcListEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the mgmdHostSrcListTable." + INDEX { mgmdHostSrcListAddressType, mgmdHostSrcListAddress, + mgmdHostSrcListIfIndex, mgmdHostSrcListHostAddress } + + ::= { mgmdHostSrcListTable 1 } + +MgmdHostSrcListEntry ::= SEQUENCE { + mgmdHostSrcListAddressType InetAddressType, + mgmdHostSrcListAddress InetAddress, + + mgmdHostSrcListIfIndex InterfaceIndex, + mgmdHostSrcListHostAddress InetAddress, + mgmdHostSrcListExpire TimeTicks +} + +mgmdHostSrcListAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the InetAddress variables in this + table. This value applies to the mgmdHostSrcListHostAddress + and mgmdHostSrcListAddress entries." + + ::= { mgmdHostSrcListEntry 1 } + +mgmdHostSrcListAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information." + + ::= { mgmdHostSrcListEntry 2 } + +mgmdHostSrcListIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information + for an IP multicast group address." + + ::= { mgmdHostSrcListEntry 3 } + +mgmdHostSrcListHostAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The host address to which this entry corresponds. The + mgmdHostCacheSourceFilterMode value for this group address + and interface indicates whether this host address is + included or excluded." + + ::= { mgmdHostSrcListEntry 4 } + + +mgmdHostSrcListExpire OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value indicates the relevance of the SrcList entry, + whereby a non-zero value indicates this is an INCLUDE state + value, and a zero value indicates this to be an EXCLUDE + state value." + + ::= { mgmdHostSrcListEntry 5 } + +-- +-- The MGMD Router Source list Table +-- + +mgmdRouterSrcListTable OBJECT-TYPE + SYNTAX SEQUENCE OF MgmdRouterSrcListEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The (conceptual) table listing the Source List entries + corresponding to each interface and multicast group pair on + a Router." + + ::= { mgmdMIBObjects 8 } + +mgmdRouterSrcListEntry OBJECT-TYPE + SYNTAX MgmdRouterSrcListEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry (conceptual row) in the mgmdRouterSrcListTable." + INDEX { mgmdRouterSrcListAddressType, + mgmdRouterSrcListAddress, + mgmdRouterSrcListIfIndex, + mgmdRouterSrcListHostAddress } + + ::= { mgmdRouterSrcListTable 1 } + +MgmdRouterSrcListEntry ::= SEQUENCE { + mgmdRouterSrcListAddressType InetAddressType, + mgmdRouterSrcListAddress InetAddress, + mgmdRouterSrcListIfIndex InterfaceIndex, + mgmdRouterSrcListHostAddress InetAddress, + mgmdRouterSrcListExpire TimeTicks +} + + +mgmdRouterSrcListAddressType OBJECT-TYPE + SYNTAX InetAddressType { ipv4(1), ipv6(2) } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of the InetAddress variables in this + table. This value applies to the + mgmdRouterSrcListHostAddress and mgmdRouterSrcListAddress + entries." + + ::= { mgmdRouterSrcListEntry 1 } + +mgmdRouterSrcListAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP multicast group address for which this entry + contains information." + + ::= { mgmdRouterSrcListEntry 2 } + +mgmdRouterSrcListIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface for which this entry contains information + for an IP multicast group address." + + ::= { mgmdRouterSrcListEntry 3 } + +mgmdRouterSrcListHostAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE(4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The host address to which this entry corresponds. The + mgmdRouterCacheSourceFilterMode value for this group address + and interface indicates whether this host address is + included or excluded." + + ::= { mgmdRouterSrcListEntry 4 } + +mgmdRouterSrcListExpire OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + + DESCRIPTION + "This value indicates the relevance of the SrcList entry, + whereby a non-zero value indicates this is an INCLUDE state + value, and a zero value indicates this to be an EXCLUDE + state value." + + ::= { mgmdRouterSrcListEntry 5 } + +-- conformance information + +mgmdMIBConformance OBJECT IDENTIFIER ::= { mgmdStdMIB 2 } +mgmdMIBCompliance OBJECT IDENTIFIER ::= { mgmdMIBConformance 1 } +mgmdMIBGroups OBJECT IDENTIFIER ::= { mgmdMIBConformance 2 } + +-- Protocol Version Conformance + +-- Read Compliance statement for IGMPv1 Hosts +-- IGMPv1 only supports the IPv4 Address Family + +mgmdIgmpV1HostReadMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-only compliance statement for hosts running IGMPv1 + [RFC1112] and implementing the MGMD MIB. IGMPv1 hosts must + support the IPv4 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdHostBaseMIBGroup } + + OBJECT mgmdHostInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + OBJECT mgmdHostInterfaceVersion + SYNTAX Unsigned32 (1) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. Only version 1 needs to be + supported." + + GROUP mgmdHostExtendedMIBGroup + DESCRIPTION + "Supporting this group can be especially useful in + an environment with a router that does not support the + MGMD MIB." + + + ::= { mgmdMIBCompliance 1 } + +-- Read Compliance statement for IGMPv1 Routers +-- IGMPv1 only supports the IPv4 Address Family + +mgmdIgmpV1RouterReadMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-only compliance statement for routers running + IGMPv1 [RFC1112] and implementing the MGMD MIB. IGMPv1 + routers only support the IPv4 address type. + + Non-accessible index objects that only need IPv4 + support are: + + OBJECT mgmdRouterCacheAddressType + SYNTAX InetAddressType { ipv4(1) } + + OBJECT mgmdRouterCacheAddress + SYNTAX InetAddress (SIZE(4)) + + OBJECT mgmdRouterInterfaceQuerierType + SYNTAX InetAddressType { ipv4(1) } + + OBJECT mgmdInverseRouterCacheAddressType + SYNTAX InetAddressType { ipv4(1) } + " + + MODULE -- this module + MANDATORY-GROUPS { mgmdRouterBaseMIBGroup } + + OBJECT mgmdRouterCacheLastReporter + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "IGMPv1 routers only support IPv4 addresses." + + OBJECT mgmdRouterInterfaceQuerier + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "IGMPv1 routers only support IPv4 addresses." + + OBJECT mgmdInverseRouterCacheAddress + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "IGMPv1 routers only support IPv4 addresses." + + OBJECT mgmdRouterInterfaceVersion + SYNTAX Unsigned32 (1) + + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. Only version 1 needs to + be supported." + + OBJECT mgmdRouterInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + OBJECT mgmdRouterInterfaceQueryInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + ::= { mgmdMIBCompliance 2 } + +-- Write Compliance statement for IGMPv1 Routers +-- IGMPv1 only supports the IPv4 Address Family + +mgmdIgmpV1RouterWriteMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-create compliance statement for routers running + IGMPv1 [RFC1112] and implementing the MGMD MIB. IGMPv1 + routers only support the IPv4 address type. + + Non-accessible index objects that only need IPv4 + support are: + + OBJECT mgmdRouterCacheAddressType + SYNTAX InetAddressType { ipv4(1) } + + OBJECT mgmdRouterCacheAddress + SYNTAX InetAddress (SIZE(4)) + + OBJECT mgmdRouterInterfaceQuerierType + SYNTAX InetAddressType { ipv4(1) } + + OBJECT mgmdInverseRouterCacheAddressType + SYNTAX InetAddressType { ipv4(1) } + " + MODULE -- this module + MANDATORY-GROUPS { mgmdRouterBaseMIBGroup } + + + + OBJECT mgmdRouterCacheLastReporter + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "Only IPv4 addresses needed for IGMPv1 router support." + + OBJECT mgmdRouterInterfaceQuerier + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "Only IPv4 addresses needed for IGMPv1 router support." + + OBJECT mgmdInverseRouterCacheAddress + SYNTAX InetAddress (SIZE(4)) + DESCRIPTION + "Only IPv4 addresses needed for IGMPv1 router support." + + OBJECT mgmdRouterInterfaceVersion + SYNTAX Unsigned32 (1) + DESCRIPTION + "Write access is not required. Only version 1 needs to + be supported." + + ::= { mgmdMIBCompliance 3 } + +-- Read Compliance statement for IGMPv2 and MLDv1 Hosts +-- IGMPv2 only supports the IPv4 Address Family +-- MLDv1 only supports the IPv6 Address Family + +mgmdIgmpV2MldV1HostReadMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-only compliance statement for hosts running IGMPv2 + [RFC2236] or MLDv1 [RFC2710] and implementing the MGMD + MIB. IGMPv2 hosts only support the IPv4 address type and + MLDv1 hosts only support the IPv6 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdHostBaseMIBGroup, + mgmdV2HostMIBGroup + } + + OBJECT mgmdHostInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + OBJECT mgmdHostInterfaceVersion + SYNTAX Unsigned32 (1..2) + + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. Only versions 1 and 2 need + to be supported." + + GROUP mgmdHostExtendedMIBGroup + DESCRIPTION + "Supporting this group can be especially useful in an + environment with a router that does not support the + MGMD MIB." + + ::= { mgmdMIBCompliance 4 } + +-- Write Compliance statement for IGMPv2 and MLDv1 Hosts +-- IGMPv2 only supports the IPv4 Address Family +-- MLDv1 only supports the IPv6 Address Family + +mgmdIgmpV2MldV1HostWriteMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-create compliance statement for hosts running + IGMPv2 [RFC2236] or MLDv1 [RFC2710] and implementing + the MGMD MIB. IGMPv2 hosts only support the IPv4 address + type and MLDv1 hosts only support the IPv6 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdHostBaseMIBGroup, + mgmdV2HostMIBGroup } + OBJECT mgmdHostInterfaceVersion + SYNTAX Unsigned32 (1..2) + DESCRIPTION + "Only versions 1 and 2 need to be supported." + + ::= { mgmdMIBCompliance 5 } + +-- Read Compliance statement for IGMPv2 and MLDv1 Routers +-- IGMPv2 only supports the IPv4 Address Family +-- MLDv1 only supports the IPv6 Address Family + +mgmdIgmpV2MldV1RouterReadMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-only compliance statement for routers running + IGMPv2 [RFC2236] or MLDv1 [RFC2710] and implementing + the MGMD MIB. IGMPv2 routers only support the IPv4 + address type and MLDv1 routers only support the IPv6 + address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdRouterBaseMIBGroup, + + mgmdV2RouterBaseMIBGroup + } + + OBJECT mgmdRouterInterfaceLastMemberQueryInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceRobustness + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceQueryMaxResponseTime + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceVersion + SYNTAX Unsigned32 (1..2) + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required. Only versions 1 and 2 + need to be supported." + + OBJECT mgmdRouterInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + OBJECT mgmdRouterInterfaceQueryInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP mgmdV2ProxyMIBGroup + DESCRIPTION + "Write access is not required." + + ::= { mgmdMIBCompliance 6 } + +-- Write Compliance statement for IGMPv2, IGMPv3, MLDv1, and MLDv2 +-- Routers +-- IGMPv2 and IGMPv3 only support the IPv4 Address Family +-- MLDv1 and MLDv2 only support the IPv6 Address Family + + +mgmdIgmpV2V3MldV1V2RouterWriteMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "A read-create compliance statement for routers running + IGMPv2 [RFC2236], IGMPv3 [RFC3376], MLDv1 [RFC2710], or + MLDv2 [RFC3810] and implementing the MGMD MIB. IGMPv2 and + IGMPv3 routers only support the IPv4 address type, while + MLDv1 and MLDv2 routers only support the IPv6 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdRouterBaseMIBGroup, + mgmdV2RouterBaseMIBGroup + } + + GROUP mgmdV2ProxyMIBGroup + DESCRIPTION + "Read-create access is required." + + ::= { mgmdMIBCompliance 7 } + +-- Read Compliance statement for IGMPv2, IGMPv3, MLDv1, and MLDv2 Hosts +-- IGMPv2 and IGMPv3 only support the IPv4 Address Family +-- MLDv1 and MLDv2 only support the IPv6 Address Family + +mgmdIgmpV3MldV2HostReadMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for hosts running IGMPv3 + [RFC3376] or MLDv2 [RFC3810] and implementing the + MGMD MIB. IGMPv3 hosts only support the IPv4 address + type and MLDv2 hosts only support the IPv6 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdHostBaseMIBGroup, + mgmdV2HostMIBGroup, + mgmdV3HostMIBGroup + } + + OBJECT mgmdHostInterfaceVersion + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdHostInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + + OBJECT mgmdHostInterfaceVersion3Robustness + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP mgmdHostExtendedMIBGroup + DESCRIPTION + "Supporting this group can be especially useful in + an environment with a router that does not support the + MGMD MIB." + + ::= { mgmdMIBCompliance 8 } + +-- Write Compliance statement for IGMPv2, IGMPv3, MLDv1, and MLDv2 Hosts +-- IGMPv2 and IGMPv3 only support the IPv4 Address Family +-- MLDv1 and MLDv2 only support the IPv6 Address Family + +mgmdIgmpV3MldV2HostWriteMIBCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for hosts running IGMPv3 + [RFC3376] or MLDv2 [RFC3810] and implementing the + MGMD MIB. IGMPv3 hosts only support the IPv4 address + type and MLDv2 hosts only support the IPv6 address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdHostBaseMIBGroup, + mgmdV2HostMIBGroup, + + mgmdV3HostMIBGroup + } + + GROUP mgmdHostExtendedMIBGroup + DESCRIPTION + "Supporting this group can be especially useful in + an environment with a router that does not support the + MGMD MIB." + + ::= { mgmdMIBCompliance 9 } + +-- Read Compliance statement for IGMPv2, IGMPv3, MLDv1, and MLDv2 +-- Routers +-- IGMPv2 and IGMPv3 only support the IPv4 Address Family +-- MLDv1 and MLDv2 only support the IPv6 Address Family + +mgmdIgmpV3MldV2RouterReadMIBCompliance MODULE-COMPLIANCE + STATUS current + + + + DESCRIPTION + "A read-only compliance statement for routers running + IGMPv3 [RFC3376] or MLDv2 [RFC3810] and implementing + the MGMD MIB. IGMPv3 routers only support the IPv4 + address type and MLDv2 routers only support the IPv6 + address type." + MODULE -- this module + MANDATORY-GROUPS { mgmdRouterBaseMIBGroup, + mgmdV2RouterBaseMIBGroup, + mgmdV3RouterMIBGroup + } + + OBJECT mgmdRouterInterfaceLastMemberQueryInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceRobustness + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceQueryMaxResponseTime + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceVersion + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT mgmdRouterInterfaceStatus + SYNTAX RowStatus {active(1)} + MIN-ACCESS read-only + DESCRIPTION + "Read-write or read-create access is not required and only + the value 'active(1)' needs to be supported." + + OBJECT mgmdRouterInterfaceQueryInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + GROUP mgmdV2ProxyMIBGroup + DESCRIPTION + "Write access is not required." + + + ::= { mgmdMIBCompliance 10 } + +-- units of conformance + +mgmdHostBaseMIBGroup OBJECT-GROUP + OBJECTS { mgmdHostInterfaceStatus, + mgmdHostInterfaceVersion + } + STATUS current + DESCRIPTION + "The basic collection of objects providing management of + MGMD version 1, 2, or 3 for hosts." + + ::= { mgmdMIBGroups 1 } + +mgmdRouterBaseMIBGroup OBJECT-GROUP + OBJECTS { mgmdRouterInterfaceStatus, + mgmdRouterInterfaceQueryInterval, + mgmdRouterCacheUpTime, mgmdRouterCacheExpiryTime, + mgmdRouterInterfaceVersion, + mgmdRouterInterfaceJoins, mgmdRouterInterfaceGroups, + mgmdRouterCacheLastReporter, + mgmdRouterInterfaceQuerierUpTime, + mgmdRouterInterfaceQuerierExpiryTime, + mgmdRouterInterfaceQuerier, + mgmdInverseRouterCacheAddress + } + STATUS current + DESCRIPTION + "The basic collection of objects providing management of + MGMD version 1, 2, or 3 for routers." + + ::= { mgmdMIBGroups 2 } + +mgmdV2HostMIBGroup OBJECT-GROUP + OBJECTS { mgmdHostInterfaceVersion1QuerierTimer + } + STATUS current + DESCRIPTION + "A collection of additional read-only objects for management + of IGMP version 2 in hosts for MGMD version 2 compliance." + + ::= { mgmdMIBGroups 3 } + +mgmdHostExtendedMIBGroup OBJECT-GROUP + OBJECTS { mgmdHostCacheLastReporter, mgmdHostCacheUpTime, + mgmdHostInterfaceQuerier, mgmdInverseHostCacheAddress } + STATUS current + + DESCRIPTION + "A collection of optional objects for MGMD hosts." + + ::= { mgmdMIBGroups 4 } + +mgmdV2RouterBaseMIBGroup OBJECT-GROUP + OBJECTS { mgmdRouterInterfaceWrongVersionQueries, + mgmdRouterInterfaceLastMemberQueryCount, + mgmdRouterInterfaceStartupQueryCount, + mgmdRouterInterfaceStartupQueryInterval, + mgmdRouterCacheVersion1HostTimer, + mgmdRouterInterfaceQueryMaxResponseTime, + mgmdRouterInterfaceRobustness, + mgmdRouterInterfaceLastMemberQueryInterval + } + STATUS current + DESCRIPTION + "A collection of additional read-only objects for + management of MGMD version 2 in routers." + + ::= { mgmdMIBGroups 5 } + +mgmdV2ProxyMIBGroup OBJECT-GROUP + OBJECTS { mgmdRouterInterfaceProxyIfIndex } + STATUS current + DESCRIPTION + "A collection of additional read-create objects for + management of MGMD proxy devices." + + ::= { mgmdMIBGroups 6 } + +mgmdV3HostMIBGroup OBJECT-GROUP + OBJECTS { mgmdHostInterfaceVersion2QuerierTimer, + mgmdHostCacheSourceFilterMode, + mgmdHostInterfaceVersion3Robustness, + mgmdHostSrcListExpire + } + STATUS current + DESCRIPTION + "A collection of additional objects for + management of MGMD version 3 in hosts." + + ::= { mgmdMIBGroups 7 } + +mgmdV3RouterMIBGroup OBJECT-GROUP + OBJECTS { mgmdRouterCacheSourceFilterMode, + mgmdRouterCacheVersion2HostTimer, + mgmdRouterCacheExcludeModeExpiryTimer, + + mgmdRouterSrcListExpire + } + STATUS current + DESCRIPTION + "A collection of additional read-only objects for + management of MGMD version 3 in routers." + + ::= { mgmdMIBGroups 8 } + +END \ No newline at end of file diff --git a/mibs/RFC-5601-PW-STD-MIB.txt b/mibs/RFC-5601-PW-STD-MIB.txt new file mode 100644 index 00000000..da719ee8 --- /dev/null +++ b/mibs/RFC-5601-PW-STD-MIB.txt @@ -0,0 +1,2511 @@ + PW-STD-MIB DEFINITIONS ::= BEGIN + + IMPORTS + NOTIFICATION-TYPE, MODULE-IDENTITY, OBJECT-TYPE, + Integer32, Unsigned32, Counter32, Counter64, TimeTicks, + transmission + FROM SNMPv2-SMI -- [RFC2578] + + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF -- [RFC2580] + + TruthValue, RowStatus, StorageType, + TimeStamp + FROM SNMPv2-TC -- [RFC2579] + + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB -- [RFC3411] + + InterfaceIndexOrZero + FROM IF-MIB -- [RFC2863] + + InetAddressType, InetAddress + FROM INET-ADDRESS-MIB -- [RFC4001] + + PerfCurrentCount, PerfIntervalCount + FROM PerfHist-TC-MIB -- [RFC3593] + + HCPerfCurrentCount, HCPerfIntervalCount, HCPerfTimeElapsed, + HCPerfValidIntervals + FROM HC-PerfHist-TC-MIB -- [RFC3705] + + PwIndexType, PwIndexOrZeroType, PwGroupID, PwIDType, + PwOperStatusTC, PwAttachmentIdentifierType, PwCwStatusTC, + PwStatus, PwFragSize, PwFragStatus, PwGenIdType + FROM PW-TC-STD-MIB -- [RFC5542] + IANAPwTypeTC, IANAPwPsnTypeTC, IANAPwCapabilities + FROM IANA-PWE3-MIB -- [RFC5601] + ; + + pwStdMIB MODULE-IDENTITY + LAST-UPDATED "200906110000Z" -- 11 June 2009 00:00:00 GMT + ORGANIZATION "Pseudowire Edge-to-Edge Emulation (PWE3) Working + Group" + CONTACT-INFO + + "David Zelig + Email: davidz@oversi.com + + Thomas D. Nadeau + Email: tom.nadeau@bt.com + + The PWE3 Working Group (email distribution pwe3@ietf.org, + http://www.ietf.org/html.charters/pwe3-charter.html) + " + + DESCRIPTION + "This MIB module contains managed object definitions for + pseudowire operation as in Bryant, S. and P. Pate, 'Pseudo + Wire Emulation Edge-to-Edge (PWE3) Architecture' [RFC3985], + Martini, L., et al, 'Pseudowire Setup and Maintenance Using + the Label Distribution Protocol (LDP)' [RFC4447], and + Townsley, M., et al, 'Layer Two Tunneling Protocol + (Version 3)' [RFC3931]. + + This MIB module enables the use of any underlying packet + switched network (PSN). MIB nodules that will support + PW operations over specific PSN types are defined in + separate memos. + + The indexes for this MIB module are also used to index the + PSN-specific tables and the PW-specific tables. The PW Type + dictates which PW-specific MIB module to use. + + Copyright (c) 2009 IETF Trust and the persons identified + as authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the following + conditions are met: + + - Redistributions of source code must retain the above + copyright notice, this list of conditions and the following + disclaimer. + + - Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + + - Neither the name of Internet Society, IETF or IETF Trust, nor + the names of specific contributors, may be used to endorse or + promote products derived from this software without specific + prior written permission. + + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + This version of this MIB module is part of RFC 5601; + see the RFC itself for full legal notices. + " + + -- Revision history. + REVISION + "200906110000Z" -- 11 June 2009 00:00:00 GMT + DESCRIPTION "Initial version published as part of RFC 5601." + ::= { transmission 246 } + + -- Top-level components of this MIB. + + -- Notifications + pwNotifications OBJECT IDENTIFIER + ::= { pwStdMIB 0 } + -- Tables, Scalars + pwObjects OBJECT IDENTIFIER + ::= { pwStdMIB 1 } + -- Conformance + pwConformance OBJECT IDENTIFIER + ::= { pwStdMIB 2 } + + -- PW Virtual Connection Table + + pwIndexNext OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains an appropriate value to be used for + pwIndex when creating entries in the pwTable. The value 0 + indicates that no unassigned entries are available. To + obtain the value of pwIndex for a new entry in the pwTable, + + the manager issues a management protocol retrieval + operation. The agent will determine through its local policy + when this index value will be made available for reuse." --- IPI Comments:SNMP SET is not supported. + ::= { pwObjects 1 } + + pwTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table specifies information for configuring and + status monitoring that is common to all service types + and PSN types." + ::= { pwObjects 2 } + + pwEntry OBJECT-TYPE + SYNTAX PwEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table represents a pseudowire (PW) virtual + connection across a packet network. It is indexed by + pwIndex, which uniquely identifies a singular + connection. + A row can be created by an operator command from a + management plan of a PE, by signaling, or due to auto- + discovery process. An operator's command can be issued via + a non-SNMP application; in such case, a row will be created + implicitly by the agent. + The read-create objects in this table are divided into + three categories: + 1) Objects that MUST NOT be changed after row activation. + These are objects that define basic properties of the + PW (for example type, destination, etc.). + 2) Objects that MAY be changed when the PW is + defined as not active. A change of these objects involves + re-signaling of the PW or it might be traffic affecting. + PW not active is defined as one of the following + conditions: + a) The pwRowStatus is notInService(2). + b) The pwRowStatus is notReady(3). + c) The pwAdminStatus is down(2). + If the operator needs to change one of the values for an + active row, the operator can either set the pwRowStatus to + notInService(2) or set pwAdminStatus to down(2). + Signaling (or traffic) is initiated again upon setting + the pwRowStatus to active(1) or setting the pwAdminStatus + to up(1) or testing(3), respectively. + + 3) Objects that MAY be changed at any time. + + A PW MAY have an entry in the ifTable in addition to the + entry in this table. In this case, a special ifType for PW + will be set in the ifTable, and the ifIndex in the ifTable + of the PW will be set in the pwIfIndex object in this table. + + By default, all the read-create objects MUST NOT be + changed after row activation, unless specifically indicated + in the individual object description. + + Manual entries in this table SHOULD be preserved after a + reboot; the agent MUST ensure the integrity of those + entries. If the set of entries of a specific row are found + to be inconsistent after reboot, the PW pwOperStatus MUST + be declared as notPresent(5). + " + INDEX { pwIndex } + + ::= { pwTable 1 } + + PwEntry ::= SEQUENCE { + pwIndex PwIndexType, + pwType IANAPwTypeTC, + pwOwner INTEGER, + pwPsnType IANAPwPsnTypeTC, + pwSetUpPriority Integer32, + pwHoldingPriority Integer32, + pwPeerAddrType InetAddressType, + pwPeerAddr InetAddress, + pwAttachedPwIndex PwIndexOrZeroType, + pwIfIndex InterfaceIndexOrZero, + + pwID PwIDType, + pwLocalGroupID PwGroupID, + pwGroupAttachmentID PwAttachmentIdentifierType, + pwLocalAttachmentID PwAttachmentIdentifierType, + pwRemoteAttachmentID PwAttachmentIdentifierType, + + pwCwPreference TruthValue, + pwLocalIfMtu Unsigned32, + + + pwLocalIfString TruthValue, + pwLocalCapabAdvert IANAPwCapabilities, + pwRemoteGroupID PwGroupID, + pwCwStatus PwCwStatusTC, + pwRemoteIfMtu Unsigned32, + + pwRemoteIfString SnmpAdminString, + pwRemoteCapabilities IANAPwCapabilities, + + pwFragmentCfgSize PwFragSize, + pwRmtFragCapability PwFragStatus, + pwFcsRetentionCfg INTEGER, + pwFcsRetentionStatus BITS, + + pwOutboundLabel Unsigned32, + pwInboundLabel Unsigned32, + + pwName SnmpAdminString, + pwDescr SnmpAdminString, + pwCreateTime TimeStamp, + pwUpTime TimeTicks, + pwLastChange TimeTicks, + pwAdminStatus INTEGER, + pwOperStatus PwOperStatusTC, + pwLocalStatus PwStatus, + pwRemoteStatusCapable INTEGER, + pwRemoteStatus PwStatus, + pwTimeElapsed HCPerfTimeElapsed, + pwValidIntervals HCPerfValidIntervals, + pwRowStatus RowStatus, + pwStorageType StorageType, + pwOamEnable TruthValue, + pwGenAGIType PwGenIdType, + pwGenLocalAIIType PwGenIdType, + pwGenRemoteAIIType PwGenIdType + } + + pwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A unique index for the conceptual row identifying a PW within + this table." + ::= { pwEntry 1 } + + pwType OBJECT-TYPE + SYNTAX IANAPwTypeTC + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This value indicates the emulated service to be carried over + this PW. + " + + ::= { pwEntry 2 } + + pwOwner OBJECT-TYPE + SYNTAX INTEGER { + manual (1), + pwIdFecSignaling (2), -- PW signaling with PW ID FEC + genFecSignaling (3), -- Generalized attachment FEC + l2tpControlProtocol (4), + other (5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is set by the operator to indicate the protocol + responsible for establishing this PW. + 'manual' is used in all cases where no maintenance + protocol (PW signaling) is used to set up the PW, i.e., + configuration of entries in the PW tables including + PW labels, etc., is done by setting the MIB fields manually. + 'pwIdFecSignaling' is used in case of signaling with the + Pwid FEC element with LDP signaling. + 'genFecSignaling' is used in case of LDP signaling with + the generalized FEC. + 'l2tpControlProtocol' indicates the use of the L2TP + control protocol. + 'other' is used for other types of signaling." + ::= { pwEntry 3 } + + pwPsnType OBJECT-TYPE + SYNTAX IANAPwPsnTypeTC + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is set by the operator to indicate the PSN type. + Based on this object, the relevant PSN table's entry is + created in the PSN-specific MIB modules. --- IPI Comments : ZebOS supports PSN type MPLS + " + ::= { pwEntry 4 } + + pwSetUpPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object defines the relative priority of the PW + during set-up in a lowest-to-highest fashion, where 0 + is the highest priority. PWs with the same priority + are treated with equal priority. PWs that have not yet + + completed setup will report 'dormant' in the + pwOperStatus. + This value is significant if there are competing resources + among PWs and the implementation supports this feature. + Equal priority handling with competing resources is + implementation specific. + This object MAY be changed at any time." + DEFVAL { 0 } --- IPI Comments : ZebOS doesn't support SetUpPriority + ::= { pwEntry 5 } + + pwHoldingPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object defines the relative holding priority of the + PW in a lowest-to-highest fashion, where 0 is the highest + priority. PWs with the same priority are treated equally. + This value is significant if there are competing resources + among PWs and the implementation supports this feature. + Equal priority handling with competing resources is + implementation specific. + This object MAY be changed only if the PW is not active." + DEFVAL { 0 } --- IPI Comments : ZebOS doesn't support SetUpPriority + ::= { pwEntry 6 } + + pwPeerAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Denotes the address type of the peer node. It should be + set to 'unknown' if PE/PW maintenance protocol is not used + and the address is unknown." + DEFVAL { ipv4 } --- IPI comments : ZebOS supports only IPv4 + ::= { pwEntry 8 } + + pwPeerAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object contains the value of the peer node address + of the PW/PE maintenance protocol entity. This object + SHOULD contain a value of all zeroes if not applicable + (pwPeerAddrType is 'unknown')." + ::= { pwEntry 9 } + + + pwAttachedPwIndex OBJECT-TYPE + SYNTAX PwIndexOrZeroType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the PW is attached to another PW instead of a local + native service, this item indicates the pwIndex of the + attached PW. Otherwise, this object MUST + be set to zero. Attachment to another PW will have no + PW specific entry in any of the service MIB modules." + DEFVAL { 0 } --- IPI comments : Currently its not supported and only accepts default value of '0'. + ::= { pwEntry 10 } + + pwIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the ifIndex of the PW if the PW is + represented in the ifTable. Otherwise, it MUST be set + to zero." + DEFVAL { 0 } --- IPI comments : it will only have default value of 0 + ::= { pwEntry 11 } + + pwID OBJECT-TYPE + SYNTAX PwIDType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Pseudowire identifier. + + If the pwOwner object is 'pwIdFecSignaling' or + 'l2tpControlProtocol', then this object is signaled in the + outgoing PW ID field within the 'Virtual Circuit FEC + Element'. For other values of pwOwner, this object is not + signaled and it MAY be set to zero. + + For implementations that support the pwIndexMappingTable, + a non-zero value is RECOMMENDED, even if this + identifier is not signaled. This is so that reverse + mappings can be provided by pwIndexMappingTable and + pwPeerMappingTable. It is therefore RECOMMENDED that the + value of this pwID be unique (or if pwPeerAddrType is not + 'unknown', at least [pwType, pwID, pwPeerAddrType, pwPeerAddr] + is unique.)" + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + + ::= { pwEntry 12 } + + pwLocalGroupID OBJECT-TYPE + SYNTAX PwGroupID + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Used in the Group ID field sent to the peer PW End Service + within the maintenance protocol used for PW setup. + It SHOULD be set to zero if a maintenance protocol is + not used." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 13 } + + pwGroupAttachmentID OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is an octet string representing the attachment + group identifier (AGI) that this PW belongs to, which + typically identifies the VPN ID. + Applicable if pwOwner equals 'genFecSignaling'." --- IPI Comments : ZebOS doesn't support genFecSignaling (FEC 129) + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 14 } + + pwLocalAttachmentID OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is an octet string representing the local + forwarder attachment individual identifier (AII) to be + used by this PW. It is used as the Source AII (SAII) for + outgoing signaling messages and the Target AII (TAII) in + the incoming messages from the peer. Applicable if + pwOwner equal 'genFecSignaling'." --- IPI Comments : ZebOS doesn't support genFecSignaling (FEC 129) + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 15 } + + + + + pwRemoteAttachmentID OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is an octet string representing the remote + forwarder attachment individual identifier (AII) to be + used by this PW. It is used as the TAII for outgoing + signaling messages and the SAII in the incoming messages + from the peer. + Applicable if pwOwner equals 'genFecSignaling'." --- IPI Comments : ZebOS doesn't support genFecSignaling (FEC 129) + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 16 } + + pwCwPreference OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Defines if the control word will be sent with each packet + by the local node. Some PW types mandate the use of a + control word, and in such cases, the value configured for + this object has no effect on the existence of the control + word. + This object MAY be changed only if the PW is not active." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol.', RFC 4447." + DEFVAL { false } + ::= { pwEntry 17 } + + pwLocalIfMtu OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If not equal to zero, the optional IfMtu object in the + signaling protocol will be sent with this value, which + represents the locally supported MTU size over the + interface (or the virtual interface) associated with the + PW. + This object MAY be changed only if the PW is not active." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + DEFVAL { 0 } + + ::= { pwEntry 18 } + + pwLocalIfString OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A PW MAY be associated to an interface (or a virtual + interface) in the ifTable of the node as part of the + service configuration. This object defines if the + maintenance protocol will send the interface's name + (ifAlias) as it appears in the ifTable. If set to false, + the optional element will not be sent. + This object MAY be changed only if the PW is not active." --- IPI Comments : ZebOS doesnt support sending IF String in the packet. + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447, section 5.5." + DEFVAL { false } + ::= { pwEntry 19 } + + pwLocalCapabAdvert OBJECT-TYPE + SYNTAX IANAPwCapabilities + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If a maintenance protocol is used, it indicates the + capabilities the local node will advertise to the peer. The + operator MAY selectively assign a partial set of + capabilities. In case of manual configuration of the PW, the + operator SHOULD set non-conflicting options (for example, + only a single type of Operations, Administration, and + Management (OAM)) out of the available options in the + implementation. It is possible to change the value of + this object when the PW is not active. The agent MUST + reject any attempt to set a capability that is not + supported. + + The default value MUST be the full set of local node + capabilities." + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 20 } + + pwRemoteGroupID OBJECT-TYPE + SYNTAX PwGroupID + MAX-ACCESS read-only + STATUS current + + DESCRIPTION + "This object is obtained from the Group ID field as + received via the maintenance protocol used for PW setup. + Value of zero will be reported if not used. + Value of 0xFFFFFFFF shall be used if the object is yet to be + defined by the PW maintenance protocol." --- IPI Comments : SNMP set is not supported. + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 21 } + + pwCwStatus OBJECT-TYPE + SYNTAX PwCwStatusTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "If signaling is used for PW establishment, this object + indicates the status of the control word negotiation. + For either signaling or manual configuration, it indicates + if the control word (CW) is to be present for this PW." --- IPI Comments : SNMP set is not supported. + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 22 } + + pwRemoteIfMtu OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The remote interface MTU as (optionally) received from the + remote node via the maintenance protocol. The object SHOULD + report zero if the MTU is not available." --- IPI Comments : SNMP set is not supported. + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 23 } + + pwRemoteIfString OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..80)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the interface description string as received by + the maintenance protocol. It MUST be a NULL string if a + maintenance protocol is not used or the value is not known + yet." --- IPI Comments : SNMP set is not supported. + + + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447, section 5.5." + ::= { pwEntry 24 } + + pwRemoteCapabilities OBJECT-TYPE + SYNTAX IANAPwCapabilities + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the capabilities as received from the peer." --- IPI Comments : SNMP set is not supported. + REFERENCE + "Martini, et al, 'Pseudowire Setup and Maintenance using + the Label Distribution Protocol', RFC 4447." + ::= { pwEntry 25 } + + pwFragmentCfgSize OBJECT-TYPE + SYNTAX PwFragSize + UNITS "bytes" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If set to a value other than zero, indicates that + fragmentation is desired for this PW. + This object MAY be changed only if the PW is not active." --- IPI Comments:ZebOS doesn't support is currently and will always have the default value of 0 + REFERENCE + "Malis A., Townsley M., 'PWE3 Fragmentation and Reassembly', + RFC 4623." + DEFVAL { 0 } -- i.e., fragmentation not desired + ::= { pwEntry 26 } + + pwRmtFragCapability OBJECT-TYPE + SYNTAX PwFragStatus + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The status of the fragmentation based on the local + configuration and the peer capabilities as received from + the peer when a control protocol is used." --- IPI Comments:SNMP set is not supported & ZebOS currently doesnt support & this value will be by default 0. + REFERENCE + "Malis A., Townsley M., 'PWE3 Fragmentation and Reassembly', + RFC 4623." + ::= { pwEntry 27 } + + pwFcsRetentionCfg OBJECT-TYPE + SYNTAX INTEGER { + fcsRetentionDisable (1), + fcsRetentionEnable (2) + + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The local configuration of Frame Check Sequence (FCS) + retention for this PW. FCS retention can be configured for + PW types High-Level Data Link Control (HDLC), Point-to-Point + Protocol (PPP), and Ethernet only. If the implementation + does not support FCS retention, an error MUST be reported in + pwFcsRetentionStatus. This object MAY be changed only if + the PW is not active." --- IPI comments ZebOS currently doesnt support and will be set to fcsRetentionDisable by default. + REFERENCE + "Malis A., et al., 'PWE3 Frame Check Sequence Retention', + RFC 4720." + DEFVAL { fcsRetentionDisable } + ::= { pwEntry 28 } + + pwFcsRetentionStatus OBJECT-TYPE + SYNTAX BITS { + remoteIndicationUnknown (0), + remoteRequestFcsRetention (1), + fcsRetentionEnabled (2), + fcsRetentionDisabled (3), + localFcsRetentionCfgErr (4), + fcsRetentionFcsSizeMismatch (5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The status of the FCS retention negotiation process based on + local configuration and the remote advertisement. + + remoteIndicationUnknown - set if a FEC has not been received + from the remote. + + remoteRequestFcsRetention - indicates that the peer has + requested FCS retention. FCS retention will be used if + the local node is capable and configured to use it for + this PW. + + fcsRetentionEnabled - FCS retention is enabled (both peers + were configured for FCS retention for signaled PW, or the + local node is configured and capable of FCS retention for + manually assigned PWs). + + fcsRetentionDisabled - FCS retention is disabled (not + configured locally or not advertised by the peer). + + + localFcsRetentionCfgErr - set if the local node has been + configured for FCS retention but is not capable to support + it. + + fcsRetentionFcsSizeMismatch - set if there is an FCS size + mismatch between the local and the peer node. ---IPI comments:SNMP set is not supported & ZebOS currently doesnt support & it will always display fcsRetentionDisabled by default. + " + REFERENCE + "Malis A., et al., 'PWE3 Frame Check Sequence Retention', + RFC 4720" + ::= { pwEntry 29 } + + pwOutboundLabel OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The PW label used in the outbound direction (i.e., toward + the PSN). It might be set manually if pwOwner is 'manual'; + otherwise, it is set automatically. + For MPLS, MPLS over IP, or MPLS over Generic Routing + Encapsulation (GRE) PSN, it represents the 20-bit PW tag; + for L2TP, it represents the 32-bit Session ID; and for + IP PSN, it represents the destination UDP port number. + If the label is not yet known (signaling in process), the + object SHOULD return a value of 0xFFFFFFFF. + For manual configuration, this object MAY be changed only + if the PW is not active." + ::= { pwEntry 30 } + + pwInboundLabel OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The PW label used in the inbound direction (i.e., packets + received from the PSN). It may be set manually if pwOwner + is 'manual'; otherwise, it is set automatically. + For MPLS, MPLS over IP, or MPLS over GRE PSN, it represents + the 20-bit PW tag; for L2TP, it represents the 32-bit + Session ID; and for IP PSN, it represents the source + UDP port number. + If the label is not yet known (signaling in process), the + object SHOULD return a value of 0xFFFFFFFF. + For manual configuration, this object MAY be changed only + if the PW is not active." + ::= { pwEntry 31 } + + + pwName OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The canonical name assigned to the PW. This object MAY be + changed at any time." + ::= { pwEntry 32 } + + pwDescr OBJECT-TYPE + SYNTAX SnmpAdminString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A textual string containing information about the PW. + If there is no description, this object contains a zero- + length string. This object MAY be changed at any time." + ::= { pwEntry 33 } + + pwCreateTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time this PW was created." --- IPI Comments : "SNMP set is not supported". + ::= { pwEntry 34 } + + pwUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the time since last change of pwOperStatus to + Up(1)." --- IPI Comments : "SNMP set is not supported". + ::= { pwEntry 35 } + + pwLastChange OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime at the time the PW entered + its current operational state. If the current state was + entered prior to the last re-initialization of the local + network management subsystem, then this object contains a + zero value." --- IPI Comments : "SNMP set is not supported". + ::= { pwEntry 36 } + + + pwAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), -- ready to pass packets + down(2), + testing(3) -- in a test mode + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The desired operational status of this PW. This object MAY + be set at any time." + ::= { pwEntry 37 } + + pwOperStatus OBJECT-TYPE + SYNTAX PwOperStatusTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object indicates the operational status of the PW; it + does not reflect the status of the Customer Edge (CE) bound + interface. It is set to down only if pwNotForwarding, + psnFacingPwRxFault, or psnFacingPwTxFault indications are + set in pwLocalStatus or pwRemoteStatus. + It indicates 'lowerLayerDown' if the only reason for + not being in the 'up' state is that either the outer tunnel + or physical layer of the network side is in the 'down' + state. + All other states are declared based on the description + of the PwOperStatusTC. --- IPI Comments : "SNMP set is not supported". + " + ::= { pwEntry 38 } + + pwLocalStatus OBJECT-TYPE + SYNTAX PwStatus + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the status of the PW in the local node. + The various indications in this object SHOULD be + available independent of the ability of the local node to + advertise them or the remote node to accept these status + indications through the control protocol. --- IPI Comments : "SNMP set is not supported". + " + ::= { pwEntry 39 } + + pwRemoteStatusCapable OBJECT-TYPE + SYNTAX INTEGER { + notApplicable (1), + + notYetKnown (2), + remoteCapable (3), + remoteNotCapable (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the remote node capability to advertise the + PW status notification. + notApplicable SHOULD be reported for a manually set PW, or + if the local node is not capable of accepting the status + notification object. + notYetKnown SHOULD be reported if the signaling protocol + has not yet finished the process of capability + determination. + remoteCapable and remoteNotcapable SHOULD be reported + based on the initial signaling exchange that has + determined the remote node capability. --- IPI Comments : "SNMP set is not supported". + " + ::= { pwEntry 40 } + + pwRemoteStatus OBJECT-TYPE + SYNTAX PwStatus + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the status of the PW as was advertised by the + remote. If the remote is not capable of advertising the + status object, or the local node is not able to accept + the status object through signaling, then the applicable + bit is 'pwNotForwarding', which is set if the remote has + sent label release or label withdraw for this PW. --- IPI Comments : "SNMP set is not supported". + " + ::= { pwEntry 41 } + + pwTimeElapsed OBJECT-TYPE + SYNTAX HCPerfTimeElapsed + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of seconds, including partial seconds, + that have elapsed since the beginning of the current + interval measurement period." --- IPI Comments : "SNMP set is not supported". + ::= { pwEntry 42 } + + pwValidIntervals OBJECT-TYPE + SYNTAX HCPerfValidIntervals + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "The number of previous 15-minute intervals + for which data was collected." --- IPI Comments : "SNMP set is not supported". + ::= { pwEntry 43 } + + pwRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "For creating, modifying, and deleting this row. + This object MAY be changed at any time." + ::= { pwEntry 44 } + + pwStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the storage type for this + object." --- IPI Comments : " ZebOS only supports VOLATILE" + DEFVAL { nonVolatile } + ::= { pwEntry 45 } + + pwOamEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates if OAM is enabled for this + PW. It MAY be changed at any time." + DEFVAL { true } --- IPI Comments : If OAM is enabled for this PW. It always remains enabled. + ::= { pwEntry 46 } + + pwGenAGIType OBJECT-TYPE + SYNTAX PwGenIdType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable indicates the AGI type if generalized FEC + (129) is used for PW signaling or configuration. It SHOULD + return the value of zero otherwise." + DEFVAL { 0 } --- IPI Comments : ZebOS currently doesn't claim support for FEC 129 + ::= { pwEntry 47 } + + pwGenLocalAIIType OBJECT-TYPE + SYNTAX PwGenIdType + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is the type of the local forwarder + attachment individual identifier (AII) to be used + by this PW if generalized FEC (129) is used for PW + signaling or configuration." + DEFVAL { 0 } --- IPI Comments : ZebOS currently doesn't claim support for FEC 129 + ::= { pwEntry 48 } + + pwGenRemoteAIIType OBJECT-TYPE + SYNTAX PwGenIdType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is the type of the remote forwarder + attachment individual identifier (AII) to be used + by this PW if generalized FEC (129) is used for PW + signaling or configuration." + DEFVAL { 0 } --- IPI Comments : ZebOS currently doesn't claim support for FEC 129 + ::= { pwEntry 49 } + + -- End of the PW Virtual Connection Table + + -- PW Performance Table + + pwPerfCurrentTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwPerfCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table provides per-PW performance information for + the current interval." + ::= { pwObjects 3 } + + pwPerfCurrentEntry OBJECT-TYPE + SYNTAX PwPerfCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the agent for + every PW." + INDEX { pwIndex } + ::= { pwPerfCurrentTable 1 } + + PwPerfCurrentEntry ::= SEQUENCE { + pwPerfCurrentInHCPackets HCPerfCurrentCount, + pwPerfCurrentInHCBytes HCPerfCurrentCount, + + pwPerfCurrentOutHCPackets HCPerfCurrentCount, + pwPerfCurrentOutHCBytes HCPerfCurrentCount, + pwPerfCurrentInPackets PerfCurrentCount, + pwPerfCurrentInBytes PerfCurrentCount, + pwPerfCurrentOutPackets PerfCurrentCount, + pwPerfCurrentOutBytes PerfCurrentCount + } + + pwPerfCurrentInHCPackets OBJECT-TYPE + SYNTAX HCPerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of packets received by + the PW (from the PSN) in the current 15-minute + interval. This is the 64-bit version of + pwPerfCurrentInPackets, if pwPerfCurrentInHCPackets + is supported according to the rules spelled out + in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfCurrentEntry 1 } + + pwPerfCurrentInHCBytes OBJECT-TYPE + SYNTAX HCPerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of bytes received by the + PW (from the PSN) in the current 15-minute interval. + This is the 64-bit version of pwPerfCurrentInBytes, if + pwPerfCurrentInHCBytes is supported according to the + rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfCurrentEntry 2 } + + pwPerfCurrentOutHCPackets OBJECT-TYPE + SYNTAX HCPerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of packets forwarded by + the PW (to the PSN) in the current 15-minute interval. + This is the 64-bit version of pwPerfCurrentOutPackets, + if pwPerfCurrentOutHCPackets is supported according to + the rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfCurrentEntry 3 } + + pwPerfCurrentOutHCBytes OBJECT-TYPE + SYNTAX HCPerfCurrentCount + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "High-capacity counter for number of bytes forwarded by + the PW (to the PSN) in the current 15-minute interval. + This is the 64-bit version of pwPerfCurrentOutBytes, + if pwPerfCurrentOutHCBytes is supported according to + the rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfCurrentEntry 4 } + + pwPerfCurrentInPackets OBJECT-TYPE + SYNTAX PerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The counter for number of packets received by the PW (from + the PSN) in the current 15-minute interval. + This is the 32-bit version of pwPerfCurrentInHCPackets, + if pwPerfCurrentInHCPackets is supported according to + the rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfCurrentEntry 5 } + + pwPerfCurrentInBytes OBJECT-TYPE + SYNTAX PerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The counter for number of bytes received by the + PW (from the PSN) in the current 15-minute interval. + It MUST be equal to the least significant 32 bits of + pwPerfCurrentInHCBytes, if pwPerfCurrentInHCBytes is + supported according to the rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfCurrentEntry 6 } + + pwPerfCurrentOutPackets OBJECT-TYPE + SYNTAX PerfCurrentCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The counter for number of packets forwarded by + the PW (to the PSN) in the current 15-minute interval. + It MUST be equal to the least significant 32 bits of + pwPerfCurrentOutHCPackets, if + pwPerfCurrentOutHCPackets is supported according to the + rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfCurrentEntry 7 } + + pwPerfCurrentOutBytes OBJECT-TYPE + SYNTAX PerfCurrentCount + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The counter for number of bytes forwarded by + the PW (to the PSN) in the current 15-minute interval. + It MUST be equal to the least significant 32 bits of + pwPerfCurrentOutHCBytes, if pwPerfCurrentOutHCBytes is + supported according to the rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfCurrentEntry 8 } + + -- End of the PW Performance Current Table + + -- PW Performance Interval Table + + pwPerfIntervalTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwPerfIntervalEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table provides per-PW performance information for + each interval." + ::= { pwObjects 4 } + + pwPerfIntervalEntry OBJECT-TYPE + SYNTAX PwPerfIntervalEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the agent for every + PW." + INDEX { pwIndex, pwPerfIntervalNumber } + ::= { pwPerfIntervalTable 1 } + + PwPerfIntervalEntry ::= SEQUENCE { + pwPerfIntervalNumber Integer32, + pwPerfIntervalValidData TruthValue, + pwPerfIntervalTimeElapsed HCPerfTimeElapsed, + pwPerfIntervalInHCPackets HCPerfIntervalCount, + pwPerfIntervalInHCBytes HCPerfIntervalCount, + pwPerfIntervalOutHCPackets HCPerfIntervalCount, + pwPerfIntervalOutHCBytes HCPerfIntervalCount, + pwPerfIntervalInPackets PerfIntervalCount, + pwPerfIntervalInBytes PerfIntervalCount, + pwPerfIntervalOutPackets PerfIntervalCount, + pwPerfIntervalOutBytes PerfIntervalCount + } + + pwPerfIntervalNumber OBJECT-TYPE + + SYNTAX Integer32 (1..96) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A number N, between 1 and 96, which identifies the + interval for which the set of statistics is available. + The interval identified by 1 is the most recently + completed 15-minute interval, and the interval identified + by N is the interval immediately preceding the one + identified by N-1. + The minimum range of N is 1 through 4. The default range + is 1 to 32. The maximum range of N is 1 through 96." --- IPI Comments : Not Supported + REFERENCE + "Tesink, K. 'Definitions of Managed Objects for the + SONET/SDH Interface Type', RFC 2558" + ::= { pwPerfIntervalEntry 1 } + + pwPerfIntervalValidData OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This variable indicates if the data for this interval + is valid." --- IPI Comments : Not Supported + ::= { pwPerfIntervalEntry 2 } + + pwPerfIntervalTimeElapsed OBJECT-TYPE + SYNTAX HCPerfTimeElapsed + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The duration of this interval in seconds." --- IPI Comments : Not Supported + ::= { pwPerfIntervalEntry 3 } + + pwPerfIntervalInHCPackets OBJECT-TYPE + SYNTAX HCPerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of packets received by + the PW (from the PSN) during the interval. This is the + 64-bit version of pwPerfIntervalInPackets, if + pwPerfIntervalInHCPackets is supported according to the + rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfIntervalEntry 4 } + + pwPerfIntervalInHCBytes OBJECT-TYPE + SYNTAX HCPerfIntervalCount + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of bytes received by the + PW (from the PSN) during the interval. + This is the 64-bit version of pwPerfIntervalInBytes, if + pwPerfIntervalInHCBytes is supported according to the + rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfIntervalEntry 5 } + + pwPerfIntervalOutHCPackets OBJECT-TYPE + SYNTAX HCPerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of packets forwarded by + the PW (to the PSN) during the interval. + This is the 64-bit version of pwPerfIntervalOutPackets, + if pwPerfIntervalOutHCPackets is supported according to + the rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfIntervalEntry 6 } + + pwPerfIntervalOutHCBytes OBJECT-TYPE + SYNTAX HCPerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for number of bytes forwarded by + the PW (to the PSN) during the interval. + This is the 64-bit version of pwPerfIntervalOutBytes, + if pwPerfIntervalOutHCBytes is supported according to + the rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfIntervalEntry 7 } + + pwPerfIntervalInPackets OBJECT-TYPE + SYNTAX PerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the number of packets received + by this PW during the interval. + It MUST be equal to the least significant 32 bits of + pwPerfIntervalInHCPackets, if pwPerfIntervalInHCPackets + is supported according to the rules spelled out in + RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfIntervalEntry 8 } + + pwPerfIntervalInBytes OBJECT-TYPE + + SYNTAX PerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the number of bytes received by + this PW during the interval. It MUST be equal to the + least significant 32 bits of pwPerfIntervalInHCBytes, if + pwPerfIntervalInHCBytes is supported according to the + rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfIntervalEntry 9 } + + pwPerfIntervalOutPackets OBJECT-TYPE + SYNTAX PerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the number of packets sent by this + PW during the interval. + It MUST be equal to the least significant 32 bits of + pwPerfIntervalOutHCPackets, if + pwPerfIntervalOutHCPackets is supported according to the + rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfIntervalEntry 10 } + + pwPerfIntervalOutBytes OBJECT-TYPE + SYNTAX PerfIntervalCount + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the number of bytes sent by this + PW during the interval. + It MUST be equal to the least significant 32 + bits of pwPerfIntervalOutHCBytes, + if pwPerfIntervalOutHCBytes is supported according to + the rules spelled out in RFC 2863." --- IPI Comments : Not Supported + ::= { pwPerfIntervalEntry 11 } + + -- End of the PW Performance Interval Table + + -- PW Performance 1-day Interval Table + + pwPerf1DayIntervalTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwPerf1DayIntervalEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table provides per-PW performance information for + the current day's measurement and the previous day's + + interval." + ::= { pwObjects 5 } + + pwPerf1DayIntervalEntry OBJECT-TYPE + SYNTAX PwPerf1DayIntervalEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the agent for every + PW." + INDEX { pwIndex, pwPerf1DayIntervalNumber } + + ::= { pwPerf1DayIntervalTable 1 } + + PwPerf1DayIntervalEntry ::= SEQUENCE { + pwPerf1DayIntervalNumber Unsigned32, + pwPerf1DayIntervalValidData TruthValue, + pwPerf1DayIntervalTimeElapsed HCPerfTimeElapsed, + pwPerf1DayIntervalInHCPackets Counter64, + pwPerf1DayIntervalInHCBytes Counter64, + pwPerf1DayIntervalOutHCPackets Counter64, + pwPerf1DayIntervalOutHCBytes Counter64 + } + + pwPerf1DayIntervalNumber OBJECT-TYPE + SYNTAX Unsigned32(1..31) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "History Data Interval number. Interval 1 is the current day's + measurement period, interval 2 is the most recent previous + day, and interval 30 is 31 days ago. Intervals 3..31 are + optional." --- IPI Comments : Not Supported + ::= { pwPerf1DayIntervalEntry 1 } + + pwPerf1DayIntervalValidData OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This variable indicates if the data for this interval + is valid." --- IPI Comments : Not Supported + ::= { pwPerf1DayIntervalEntry 2 } + + pwPerf1DayIntervalTimeElapsed OBJECT-TYPE + SYNTAX HCPerfTimeElapsed + UNITS "seconds" + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "The number of seconds in the 1-day interval over which the + performance monitoring information is actually counted. + This value will be the same as the interval duration except + in a situation where performance monitoring data could not + be collected for any reason or where agent clock adjustments + have been made." --- IPI Comments : Not Supported + ::= { pwPerf1DayIntervalEntry 3 } + + pwPerf1DayIntervalInHCPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for the total number of packets + received by the PW (from the PSN)." --- IPI Comments : Not Supported + ::= { pwPerf1DayIntervalEntry 4 } + + pwPerf1DayIntervalInHCBytes OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for the total number of bytes + received by the PW (from the PSN)." --- IPI Comments : Not Supported + ::= { pwPerf1DayIntervalEntry 5 } + + pwPerf1DayIntervalOutHCPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for the total number of packets + forwarded by the PW (to the PSN)." --- IPI Comments : Not Supported + ::= { pwPerf1DayIntervalEntry 6 } + + pwPerf1DayIntervalOutHCBytes OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "High-capacity counter for the total number of bytes + forwarded by the PW (to the PSN)." --- IPI Comments : Not Supported + ::= { pwPerf1DayIntervalEntry 7 } + + -- End of the PW Performance 1-day Interval Table + + + -- Error counter scalar + + pwPerfTotalErrorPackets OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Counter for number of errors at the PW processing level, + for example, packets received with unknown PW label." --- IPI Comments : Not Supported + ::= { pwObjects 6 } + + -- Reverse mapping tables + + -- The PW ID mapping table + pwIndexMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwIndexMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table enables the reverse mapping of the unique + PWid parameters [peer IP, PW type, and PW ID] and the + pwIndex. The table is not applicable for PWs created + manually or by using the generalized FEC." + ::= { pwObjects 7 } + + pwIndexMappingEntry OBJECT-TYPE + SYNTAX PwIndexMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table MUST be created by the agent for + every PW created by the pwTable for which pwOwner + equals pwIdFecSignaling and pwID is not zero. + + Implementers need to be aware that if the value of + the pwIndexMappingPeerAddr (an OID) has more than + 113 sub-identifiers, then OIDs of column instances + in this table will have more than 128 sub-identifiers + and cannot be accessed using SNMPv1, SNMPv2c, or SNMPv3." + INDEX { pwIndexMappingPwType, pwIndexMappingPwID, + pwIndexMappingPeerAddrType, pwIndexMappingPeerAddr + } + ::= { pwIndexMappingTable 1 } + + PwIndexMappingEntry ::= SEQUENCE { + pwIndexMappingPwType IANAPwTypeTC, + pwIndexMappingPwID PwIDType, + pwIndexMappingPeerAddrType InetAddressType, + + pwIndexMappingPeerAddr InetAddress, + pwIndexMappingPwIndex PwIndexType + } + + pwIndexMappingPwType OBJECT-TYPE + SYNTAX IANAPwTypeTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The PW type (indicates the service) of this PW." --- IPI Comments : Not Supported + ::= { pwIndexMappingEntry 1 } + + pwIndexMappingPwID OBJECT-TYPE + SYNTAX PwIDType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The PW ID of this PW. Zero if the PW is configured + manually." --- IPI Comments : Not Supported + ::= { pwIndexMappingEntry 2 } + + pwIndexMappingPeerAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "IP address type of the peer node." --- IPI Comments : Not Supported + ::= { pwIndexMappingEntry 3 } + + pwIndexMappingPeerAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "IP address of the peer node." --- IPI Comments : Not Supported + ::= { pwIndexMappingEntry 4 } + + pwIndexMappingPwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value that represents the PW in the pwTable." --- IPI Comments : Not Supported + ::= { pwIndexMappingEntry 5 } + + -- End of the PW ID mapping table + + -- The peer mapping table + + pwPeerMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwPeerMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table provides reverse mapping of the existing PW + based on PW type and PW ID ordering. This table is + typically useful for the element management system (EMS) + ordered query of existing PWs." + ::= { pwObjects 8 } + + pwPeerMappingEntry OBJECT-TYPE + SYNTAX PwPeerMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table is created by the agent for every + PW entry in the pwTable. + + Implementers need to be aware that if the value of the + pwPeerMappingPeerAddr (an OID) has more than 113 + sub-identifiers, then OIDs of column instances in this + table will have more than 128 sub-identifiers and cannot + be accessed using SNMPv1, SNMPv2c, or SNMPv3." + INDEX { pwPeerMappingPeerAddrType, pwPeerMappingPeerAddr, + pwPeerMappingPwType, pwPeerMappingPwID } + + ::= { pwPeerMappingTable 1 } + + PwPeerMappingEntry ::= SEQUENCE { + pwPeerMappingPeerAddrType InetAddressType, + pwPeerMappingPeerAddr InetAddress, + pwPeerMappingPwType IANAPwTypeTC, + pwPeerMappingPwID PwIDType, + pwPeerMappingPwIndex PwIndexType + } + + pwPeerMappingPeerAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "IP address type of the peer node." --- IPI Comments : Not supported. + ::= { pwPeerMappingEntry 1 } + + pwPeerMappingPeerAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + + STATUS current + DESCRIPTION + "IP address of the peer node." --- IPI Comments : Not supported. + ::= { pwPeerMappingEntry 2 } + + pwPeerMappingPwType OBJECT-TYPE + SYNTAX IANAPwTypeTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The PW type (indicates the emulated service) of this PW." --- IPI Comments : Not supported. + ::= { pwPeerMappingEntry 3 } + + pwPeerMappingPwID OBJECT-TYPE + SYNTAX PwIDType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The PW ID of this PW. Zero if the PW is configured + manually." --- IPI Comments : Not supported. + ::= { pwPeerMappingEntry 4 } + + pwPeerMappingPwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value that represents the PW in the pwTable." --- IPI Comments : Not supported. + ::= { pwPeerMappingEntry 5 } + + -- End of the peer mapping table + + -- End of the reverse mapping tables + + pwUpDownNotifEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If this object is set to true(1), then it enables + the emission of pwUp and pwDown + notifications; otherwise, these notifications are not + emitted." --- IPI Comments : Not supported. + REFERENCE + "See also [RFC3413] for explanation that + notifications are under the ultimate control of the + MIB module in this document." + DEFVAL { false } + + ::= { pwObjects 9 } + + pwDeletedNotifEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "If this object is set to true(1), then it enables the + emission of pwDeleted notification; otherwise, this + notification is not emitted." --- IPI Comments : Not supported. + REFERENCE + "See also [RFC3413] for explanation that + notifications are under the ultimate control of the + MIB module in this document." + DEFVAL { false } + ::= { pwObjects 10 } + + pwNotifRate OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object defines the maximum number of PW notifications + that can be emitted from the device per second." --- IPI Comments : Not supported. + ::= { pwObjects 11 } + + -- The Gen Fec PW ID mapping table + + pwGenFecIndexMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwGenFecIndexMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table enables the reverse mapping of the unique + PWid parameters [GroupAttachmentID, LocalAttachmentID, + and PeerAttachmentID] and the pwIndex. The table is + only applicable for PW using the generalized FEC." + ::= { pwObjects 12 } + + pwGenFecIndexMappingEntry OBJECT-TYPE + SYNTAX PwGenFecIndexMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in this table MUST be created by the agent for + every PW created by the pwTable for which pwOwner + equals genFecSignaling. + + + Implementers need to be aware that if the combined value + of pwGenFecIndexMappingAGI, pwGenFecIndexMappingLocalAII, + and pwGenFecIndexMappingRemoteAII (OIDs) has more than + 113 sub-identifiers, then OIDs of column instances + in this table will have more than 128 sub-identifiers + and cannot be accessed using SNMPv1, SNMPv2c, or SNMPv3." + INDEX { pwGenFecIndexMappingAGIType, + pwGenFecIndexMappingAGI, + pwGenFecIndexMappingLocalAIIType, + pwGenFecIndexMappingLocalAII, + pwGenFecIndexMappingRemoteAIIType, + pwGenFecIndexMappingRemoteAII + } + ::= { pwGenFecIndexMappingTable 1 } + + PwGenFecIndexMappingEntry ::= SEQUENCE { + pwGenFecIndexMappingAGIType PwGenIdType, + pwGenFecIndexMappingAGI PwAttachmentIdentifierType, + pwGenFecIndexMappingLocalAIIType PwGenIdType, + pwGenFecIndexMappingLocalAII PwAttachmentIdentifierType, + pwGenFecIndexMappingRemoteAIIType PwGenIdType, + pwGenFecIndexMappingRemoteAII PwAttachmentIdentifierType, + pwGenFecIndexMappingPwIndex PwIndexType + } + + pwGenFecIndexMappingAGIType OBJECT-TYPE + SYNTAX PwGenIdType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object is the type of the attachment + group identifier (AGI) that this PW belongs to." --- IPI Comments : Not supported. + ::= { pwGenFecIndexMappingEntry 1 } + + pwGenFecIndexMappingAGI OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object is an octet string representing the attachment + group identifier (AGI) that this PW belongs to, + which typically identifies the VPN ID." --- IPI Comments : Not supported. + ::= { pwGenFecIndexMappingEntry 2 } + + pwGenFecIndexMappingLocalAIIType OBJECT-TYPE + SYNTAX PwGenIdType + MAX-ACCESS not-accessible + STATUS current + + DESCRIPTION + "This object is the type of the local forwarder + attachment individual identifier (AII) to be used + by this PW." --- IPI Comments : Not supported. + ::= { pwGenFecIndexMappingEntry 3 } + + pwGenFecIndexMappingLocalAII OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object is an octet string representing the local + forwarder attachment individual identifier (AII) to be used + by this PW. It is used as the SAII for outgoing signaling + messages and the TAII in the incoming messages from the + peer." --- IPI Comments : Not supported. + ::= { pwGenFecIndexMappingEntry 4 } + + pwGenFecIndexMappingRemoteAIIType OBJECT-TYPE + SYNTAX PwGenIdType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object is the type of the remote forwarder + attachment individual identifier (AII) to be used + by this PW." --- IPI Comments : Not supported. + ::= { pwGenFecIndexMappingEntry 5 } + + pwGenFecIndexMappingRemoteAII OBJECT-TYPE + SYNTAX PwAttachmentIdentifierType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object is an octet string representing the peer + forwarder attachment individual identifier (AII) to be used + by this PW. It is used as the TAII for outgoing signaling + messages and the SAII in the incoming messages from the + peer." --- IPI Comments : Not supported. + ::= { pwGenFecIndexMappingEntry 6 } + + pwGenFecIndexMappingPwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value that represents the PW in the pwTable." --- IPI Comments : Not supported. + ::= { pwGenFecIndexMappingEntry 7 } + + + -- End of the Gen Fec PW ID mapping table + + -- Notifications - PW + + pwDown NOTIFICATION-TYPE + OBJECTS { pwOperStatus, --start of range + pwOperStatus --end of range + } + STATUS current + DESCRIPTION + "This notification is generated when the pwOperStatus + object for one or more contiguous entries in the pwTable are + about to enter the down(2) or lowerLayerDown(6) state from + any other state, except for transition from the + notPresent(5) state. For the purpose of deciding when + these notifications occur, the lowerLayerDown(6) state + and the down(2) state are considered to be equivalent; + i.e., there is no notification on transition from + lowerLayerDown(6) into down(2), and there is a trap on + transition from any other state except down(2) (and + notPresent) into lowerLayerDown(6). + + The included values of pwOperStatus MUST each be equal to + down(2) or lowerLayerDown(6). The two instances of + pwOperStatus in this notification indicate the range of + indexes that are affected. Note that all the indexes of + the two ends of the range can be derived from the + instance identifiers of these two objects. For cases + where a contiguous range of cross-connects have + transitioned into the down(2) and lowerLayerDown(6) states + at roughly the same time, the device SHOULD issue a single + notification for each range of contiguous indexes in an + effort to minimize the emission of a large number of + notifications. If a notification has to be issued for + just a single cross-connect entry, then the instance + identifier (and values) of the two pwOperStatus objects + MUST be identical." + ::= { pwNotifications 1 } + + pwUp NOTIFICATION-TYPE + OBJECTS { pwOperStatus, --start of range + pwOperStatus --end of range + } + STATUS current + DESCRIPTION + "This notification is generated when the pwOperStatus + object for one or more contiguous entries in the pwTable are + about to enter the up(1) state from some other state + + except the notPresent(5) state and given that the pwDown + notification been issued for these entries. The included + values of pwOperStatus MUST both be set equal to this + new state (i.e., up(1)). The two instances of pwOperStatus + in this notification indicate the range of indexes that + are affected. Note that all the indexes of the two ends + of the range can be derived from the instance identifiers + of these two objects. For cases where a contiguous range + of cross-connects have transitioned into the up(1) state + at roughly the same time, the device SHOULD issue a single + notification for each range of contiguous indexes in an + effort to minimize the emission of a large number of + notifications. If a notification has to be issued for + just a single cross-connect entry, then the instance + identifier (and values) of the two pwOperStatus objects + MUST be identical." + ::= { pwNotifications 2 } + + pwDeleted NOTIFICATION-TYPE + OBJECTS { pwType, + pwID, + pwPeerAddrType, + pwPeerAddr + } + STATUS current + DESCRIPTION + "This notification is generated when the PW has been + deleted, i.e., when the pwRowStatus has been set to + destroy(6) or the PW has been deleted by a non-MIB + application or due to an auto-discovery process. + " + ::= { pwNotifications 3 } + + -- End of notifications. + + -- Conformance information + + pwGroups OBJECT IDENTIFIER ::= { pwConformance 1 } + pwCompliances OBJECT IDENTIFIER ::= { pwConformance 2 } + + -- Compliance requirement for fully compliant implementations + + pwModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provide full + support for the PW MIB module. Such devices can + then be monitored and configured using + + this MIB module." + + MODULE -- this module + MANDATORY-GROUPS { pwBasicGroup, + pwPerformanceGeneralGroup + } + + GROUP pwNotificationGroup + DESCRIPTION "This group is only mandatory for implementations + that can efficiently implement the notifications + contained in this group. + " + + GROUP pwPwIdGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW ID FEC. + " + + GROUP pwGeneralizedFecGroup + DESCRIPTION "This group is only mandatory for implementations + that support the generalized PW FEC. + " + + GROUP pwFcsGroup + DESCRIPTION "This group is only mandatory for implementations + that support FCS retention." + + GROUP pwFragGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW fragmentation. + " + + GROUP pwPwStatusGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW status notification. + " + + GROUP pwGetNextGroup + DESCRIPTION "This group is only mandatory for implementations + where the pwIndex may be any arbitrary value + and the EMS would require retrieval of the next + free index." + + GROUP pwPriorityGroup + DESCRIPTION "This group is only mandatory for implementations + that support the controlling the PW setup and + holding priority." + + + GROUP pwAttachmentGroup + DESCRIPTION "This group is only mandatory for implementations + that support attachment of two PWs (PW stitching)." + + GROUP pwPeformance1DayIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 1-day + intervals." + + GROUP pwPerformanceIntervalGeneralGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 15- + minute intervals." + + GROUP pwPeformanceIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 15- + minute intervals." + + GROUP pwHCPeformanceIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + where at least one of the interval performance + counters wraps around too quickly based on the + criteria specified in RFC 2863 for high-capacity + counters." + + GROUP pwMappingTablesGroup + DESCRIPTION "This group is only mandatory for implementations + that support reverse mapping of PW indexes to + the pwIndex and the peer mapping table." + + GROUP pwSignalingGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW signaling." + + GROUP pwNotificationControlGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW notifications." + + OBJECT pwAdminStatus + SYNTAX INTEGER { up(1), down(2) } + DESCRIPTION "Support of the value testing(3) is not + required." + + OBJECT pwOperStatus + SYNTAX INTEGER { up(1), down(2), notPresent(5), + lowerLayerDown(6) } + DESCRIPTION "Support of the values testing(3) and dormant(4) + + is not required." + + OBJECT pwRowStatus + SYNTAX RowStatus { active(1), notInService(2), + notReady(3) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + DESCRIPTION "Support for createAndWait is not required. Support + of notReady is not required for implementations + that do not support signaling, or if it is + guaranteed that the conceptual row has all the + required information to create the PW when the + row has been created by the agent or written by + the operator." + + OBJECT pwPeerAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1) } + MIN-ACCESS read-only + DESCRIPTION "Only unknown(0) and ipv4(1) are required. + Implementations that support only IPv4 MAY support + read-only access." + + OBJECT pwPeerAddr + SYNTAX InetAddress (SIZE(0|4)) + DESCRIPTION "An implementation is only required to support + 0, 4 address sizes." + + OBJECT pwStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwNotifRate + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { pwCompliances 1 } + + -- Compliance requirement for read-only compliant implementations + + pwModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provide read- + only support for the PW MIB module. Such devices can + then be monitored but cannot be configured using this + MIB module." + + + MODULE -- this module + MANDATORY-GROUPS { pwBasicGroup + } + + GROUP pwNotificationGroup + DESCRIPTION "This group is only mandatory for implementations + that can efficiently implement the notifications + contained in this group." + + GROUP pwPwIdGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW ID FEC. + " + + GROUP pwGeneralizedFecGroup + DESCRIPTION "This group is only mandatory for implementations + that support the generalized PW FEC. + " + + GROUP pwFcsGroup + DESCRIPTION "This group is only mandatory for implementations + that support FCS retention." + + GROUP pwFragGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW fragmentation. + " + + GROUP pwPwStatusGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW status notification. + " + + GROUP pwGetNextGroup + DESCRIPTION "This group is only mandatory for implementations + where the pwIndex may be any arbitrary value + and the EMS would require retrieval of the next + free index." + + GROUP pwPriorityGroup + DESCRIPTION "This group is only mandatory for implementations + that support the controlling the PW setup and + holding priority." + + GROUP pwAttachmentGroup + DESCRIPTION "This group is only mandatory for implementations + that support attachment of two PWs (PW stitching)." + + + GROUP pwPeformance1DayIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 1-day + intervals." + + GROUP pwPerformanceIntervalGeneralGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 15- + minute intervals." + + GROUP pwPeformanceIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + that support PW performance gathering in 15- + minute intervals." + + GROUP pwHCPeformanceIntervalGroup + DESCRIPTION "This group is only mandatory for implementations + where at least one of the interval performance + counters wraps around too quickly based on the + criteria specified in RFC 2863 for high-capacity + counters." + + GROUP pwMappingTablesGroup + DESCRIPTION "This group is only mandatory for implementations + that support reverse mapping of PW indexes to + the pwIndex and the peer mapping table." + + GROUP pwSignalingGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW signaling." + + GROUP pwNotificationControlGroup + DESCRIPTION "This group is only mandatory for implementations + that support the PW notifications." + + OBJECT pwType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwOwner + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwPsnType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwSetUpPriority + + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwHoldingPriority + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwPeerAddrType + SYNTAX InetAddressType { unknown(0), ipv4(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. Only unknown(0) and + ipv4(1) are required." + + OBJECT pwPeerAddr + SYNTAX InetAddress (SIZE(0|4)) + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. An implementation + is only required to support 0, 4 address sizes." + + OBJECT pwAttachedPwIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwIfIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwLocalGroupID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwGroupAttachmentID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwLocalAttachmentID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwRemoteAttachmentID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwCwPreference + + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwLocalIfMtu + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwLocalIfString + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwLocalCapabAdvert + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwFragmentCfgSize + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwFcsRetentionCfg + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwOutboundLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwInboundLabel + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwName + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwDescr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwAdminStatus + SYNTAX INTEGER { up(1), down(2) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. The support of value + testing(3) is not required." + + OBJECT pwOperStatus + SYNTAX INTEGER { up(1), down(2), notPresent(5), + lowerLayerDown(6) } + + DESCRIPTION "The support of the values testing(3) and dormant(4) + is not required." + + OBJECT pwRowStatus + SYNTAX RowStatus { active(1) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwOamEnable + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwGenAGIType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwGenLocalAIIType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwGenRemoteAIIType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwUpDownNotifEnable + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwDeletedNotifEnable + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwNotifRate + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { pwCompliances 2 } + + -- Units of conformance. + + pwBasicGroup OBJECT-GROUP + OBJECTS { + pwType, + pwOwner, + + pwPsnType, + pwIfIndex, + pwCwPreference, + pwLocalIfMtu, + pwOutboundLabel, + pwInboundLabel, + pwName, + pwDescr, + pwCreateTime, + pwUpTime, + pwLastChange, + pwAdminStatus, + pwOperStatus, + pwLocalStatus, + pwRowStatus, + pwStorageType, + pwOamEnable + } + + STATUS current + DESCRIPTION + "Collection of objects that are required in all + implementations that support the PW MIB module." + ::= { pwGroups 1 } + + pwPwIdGroup OBJECT-GROUP + OBJECTS { + pwID + } + + STATUS current + DESCRIPTION + "Collection of objects required for PW ID configuration + and signaling." + ::= { pwGroups 2 } + + pwGeneralizedFecGroup OBJECT-GROUP + OBJECTS { + pwGroupAttachmentID, + pwLocalAttachmentID, + pwRemoteAttachmentID, + pwGenAGIType, + pwGenLocalAIIType, + pwGenRemoteAIIType + } + STATUS current + DESCRIPTION + "Collection of objects required for generalized FEC + + configuration and signaling." + ::= { pwGroups 3 } + + pwFcsGroup OBJECT-GROUP + OBJECTS { + pwFcsRetentionCfg, + pwFcsRetentionStatus + } + + STATUS current + DESCRIPTION + "Collection of objects required for FCS retention + configuration and signaling." + ::= { pwGroups 4 } + + pwFragGroup OBJECT-GROUP + OBJECTS { + pwFragmentCfgSize, + pwRmtFragCapability + } + + STATUS current + DESCRIPTION + "Collection of objects required for fragmentation + configuration and signaling." + ::= { pwGroups 5 } + + pwPwStatusGroup OBJECT-GROUP + OBJECTS { + pwRemoteCapabilities, + pwRemoteStatusCapable, + pwRemoteStatus + } + + STATUS current + DESCRIPTION + "Collection of objects required for PW status configuration + and signaling." + ::= { pwGroups 6 } + + + pwGetNextGroup OBJECT-GROUP + OBJECTS { + pwIndexNext + } + STATUS current + DESCRIPTION + "Collection of objects for getting the next available + + index." + ::= { pwGroups 7 } + + pwPriorityGroup OBJECT-GROUP + OBJECTS { + pwSetUpPriority, + pwHoldingPriority + } + + STATUS current + DESCRIPTION + "Collection of objects for controlling the PW setup and + holding priority." + ::= { pwGroups 8 } + + pwAttachmentGroup OBJECT-GROUP + OBJECTS { + pwAttachedPwIndex + } + + STATUS current + DESCRIPTION + "Collection of objects for PW configuration as ifIndex." + ::= { pwGroups 9 } + + pwPerformanceGeneralGroup OBJECT-GROUP + OBJECTS { + pwPerfTotalErrorPackets + } + + STATUS current + DESCRIPTION + "Collection of general objects needed for managing the + total running performance parameters." + ::= { pwGroups 10 } + + pwPeformance1DayIntervalGroup OBJECT-GROUP + OBJECTS { + pwPerf1DayIntervalValidData, + pwPerf1DayIntervalTimeElapsed, + pwPerf1DayIntervalInHCPackets, + pwPerf1DayIntervalInHCBytes, + pwPerf1DayIntervalOutHCPackets, + pwPerf1DayIntervalOutHCBytes + } + STATUS current + DESCRIPTION + "Collection of objects needed for a PW running 1-day + + interval performance collection." + ::= { pwGroups 11 } + + pwPerformanceIntervalGeneralGroup OBJECT-GROUP + OBJECTS { + pwTimeElapsed, + pwValidIntervals, + pwPerfIntervalValidData, + pwPerfIntervalTimeElapsed + } + + STATUS current + DESCRIPTION + "Collection of general objects needed for managing the + interval performance parameters." + ::= { pwGroups 12 } + + pwPeformanceIntervalGroup OBJECT-GROUP + OBJECTS { + pwPerfCurrentInPackets, + pwPerfCurrentInBytes, + pwPerfCurrentOutPackets, + pwPerfCurrentOutBytes, + + pwPerfIntervalInPackets, + pwPerfIntervalInBytes, + pwPerfIntervalOutPackets, + pwPerfIntervalOutBytes + } + + STATUS current + DESCRIPTION + "Collection of 32-bit objects needed for PW performance + collection in 15-minute intervals." + ::= { pwGroups 13 } + + pwHCPeformanceIntervalGroup OBJECT-GROUP + OBJECTS { + pwPerfCurrentInHCPackets, + pwPerfCurrentInHCBytes, + pwPerfCurrentOutHCPackets, + pwPerfCurrentOutHCBytes, + + pwPerfIntervalInHCPackets, + pwPerfIntervalInHCBytes, + pwPerfIntervalOutHCPackets, + pwPerfIntervalOutHCBytes + } + + STATUS current + DESCRIPTION + "Collection of HC objects needed for PW performance + collection in 15-minute intervals." + ::= { pwGroups 14 } + + pwMappingTablesGroup OBJECT-GROUP + OBJECTS { + pwIndexMappingPwIndex, + pwPeerMappingPwIndex, + pwGenFecIndexMappingPwIndex + } + + STATUS current + DESCRIPTION + "Collection of objects contained in the reverse + mapping tables." + ::= { pwGroups 15 } + + pwNotificationControlGroup OBJECT-GROUP + OBJECTS { + pwUpDownNotifEnable, + pwDeletedNotifEnable, + pwNotifRate + } + + STATUS current + DESCRIPTION + "Collection of objects for controlling the PW + notifications." + ::= { pwGroups 16 } + + pwNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + pwUp, + pwDown, + pwDeleted + } + + STATUS current + DESCRIPTION + "Collection of PW notifications objects." + ::= { pwGroups 17 } + + pwSignalingGroup OBJECT-GROUP + OBJECTS { + pwPeerAddrType, + pwPeerAddr, + + pwLocalGroupID, + pwLocalIfString, + pwLocalCapabAdvert, + pwRemoteGroupID, + pwCwStatus, + pwRemoteIfMtu, + pwRemoteIfString + } + + STATUS current + DESCRIPTION + "Collection of objects for use in implementations that + support the PW signaling." + ::= { pwGroups 18 } + + END \ No newline at end of file diff --git a/mibs/RFC-5602-PW-MPLS-STD-MIB.txt b/mibs/RFC-5602-PW-MPLS-STD-MIB.txt new file mode 100644 index 00000000..6e0c21af --- /dev/null +++ b/mibs/RFC-5602-PW-MPLS-STD-MIB.txt @@ -0,0 +1,952 @@ + pwMplsExpBitsMode + PW-MPLS-STD-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, mib-2 + FROM SNMPv2-SMI -- [RFC2578] + + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF -- [RFC2580] + + StorageType + FROM SNMPv2-TC -- [RFC2579] + + InterfaceIndexOrZero + FROM IF-MIB -- [RFC2863] + + MplsTunnelIndex, MplsTunnelInstanceIndex, + MplsLdpIdentifier, MplsLsrIdentifier + FROM MPLS-TC-STD-MIB -- [RFC3811] + + MplsIndexType + FROM MPLS-LSR-STD-MIB -- [RFC3813] + + PwIndexType + FROM PW-TC-STD-MIB -- [RFC5542] + + + pwIndex -- [RFC5601] + FROM PW-STD-MIB + ; + + pwMplsStdMIB MODULE-IDENTITY + LAST-UPDATED "200906120000Z" -- 12 June 2009 00:00:00 GMT + ORGANIZATION "Pseudowire Emulation Edge-to-Edge (PWE3) Working + Group." + CONTACT-INFO + " + David Zelig, Editor + Email: davidz@corrigent.com + + Thomas D. Nadeau, Editor + Email: tom.nadeau@bt.com + + The PWE3 Working Group (email distribution pwe3@ietf.org, + http://www.ietf.org/html.charters/pwe3-charter.html) + " + DESCRIPTION + "This MIB module complements the PW-STD-MIB module for PW + operation over MPLS. + + Copyright (c) 2009 IETF Trust and the persons identified as + authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the + following conditions are met: + + - Redistributions of source code must retain the above + copyright notice, this list of conditions and the + following disclaimer. + + - Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + + - Neither the name of Internet Society, IETF or IETF Trust, + nor the names of specific contributors, may be used to + endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + This version of this MIB module is part of RFC 5602; + see the RFC itself for full legal notices. + " + + -- Revision history. + REVISION "200906120000Z" -- 12 June 2009 00:00:00 GMT + DESCRIPTION + "First published as RFC 5602. " + + ::= { mib-2 181 } + + -- Top-level components of this MIB. + + -- Notifications + pwMplsNotifications OBJECT IDENTIFIER + ::= { pwMplsStdMIB 0 } + + -- Tables, Scalars + pwMplsObjects OBJECT IDENTIFIER + ::= { pwMplsStdMIB 1 } + -- Conformance + pwMplsConformance OBJECT IDENTIFIER + ::= { pwMplsStdMIB 2 } + + -- PW MPLS table + + pwMplsTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwMplsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table controls MPLS-specific parameters when the PW is + going to be carried over MPLS PSN." + ::= { pwMplsObjects 1 } + + pwMplsEntry OBJECT-TYPE + SYNTAX PwMplsEntry + MAX-ACCESS not-accessible + + STATUS current + DESCRIPTION + "A row in this table represents parameters specific to MPLS + PSN for a pseudowire (PW). The row is created + automatically by the local agent if the pwPsnType is + mpls(1). It is indexed by pwIndex, which uniquely + identifies a singular PW. + Manual entries in this table SHOULD be preserved after a + reboot, and the agent MUST ensure the integrity of those + entries. + If the set of entries of a specific row were found to be + nonconsistent after reboot, the PW pwOperStatus MUST be + declared as down(2). + Any read-write object in this table MAY be changed at any + time; however, change of some objects (for example, + pwMplsMplsType) during PW forwarding state MAY cause traffic + disruption." + + INDEX { pwIndex } + + ::= { pwMplsTable 1 } + + PwMplsEntry ::= SEQUENCE { + pwMplsMplsType BITS, + pwMplsExpBitsMode INTEGER, + pwMplsExpBits Unsigned32, + pwMplsTtl Unsigned32, + pwMplsLocalLdpID MplsLdpIdentifier, + pwMplsLocalLdpEntityIndex Unsigned32, + pwMplsPeerLdpID MplsLdpIdentifier, + pwMplsStorageType StorageType + } + + pwMplsMplsType OBJECT-TYPE + SYNTAX BITS { + mplsTe (0), + mplsNonTe (1), + pwOnly (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is set by the operator to indicate the outer + tunnel types, if existing. mplsTe(0) is used if the outer + tunnel is set up by MPLS-TE, and mplsNonTe(1) is used if the + outer tunnel is set up by LDP or manually. A combination of + mplsTe(0) and mplsNonTe(1) MAY exist. + pwOnly(2) is used if there is no outer tunnel label, i.e., + + in static provisioning without an MPLS tunnel. pwOnly(2) + cannot be combined with mplsNonTe(1) or mplsTe(0). + An implementation that can identify automatically that the + peer node is directly connected MAY support the bit + pwOnly(2) as read-only. + " + DEFVAL { { mplsNonTe } } + ::= { pwMplsEntry 1 } + + pwMplsExpBitsMode OBJECT-TYPE + SYNTAX INTEGER { + outerTunnel (1), + specifiedValue (2), + serviceDependant (3) + } + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is set by the operator to determine the PW shim + label EXP bits. The value of outerTunnel(1) is used where + there is an outer tunnel -- pwMplsMplsType equals to + mplsTe(0) or mplsNonTe(1). Note that in this case, there + is no need to mark the PW label with the EXP bits, since the + PW label is not visible to the intermediate nodes. + If there is no outer tunnel, specifiedValue(2) SHOULD be used + to indicate that the value is specified by pwMplsExpBits. + Setting serviceDependant(3) indicates that the EXP bits are + set based on a rule that is implementation specific." --- IPI Comments : This object is set by the operator to determine the PW shim label EXP bits. + + DEFVAL { outerTunnel } + ::= { pwMplsEntry 2 } + + pwMplsExpBits OBJECT-TYPE + SYNTAX Unsigned32 (0..7) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is set by the operator if pwMplsExpBitsMode is + set to specifiedValue(2) to indicate the MPLS EXP bits to + be used on the PW shim label. Otherwise, it SHOULD be set + to zero." --- IPI Comments : ZebOS doesnt support this and so this value is set to 0 & this value is set to 0. + DEFVAL { 0 } + ::= { pwMplsEntry 3 } + + pwMplsTtl OBJECT-TYPE + SYNTAX Unsigned32 (0..255) + MAX-ACCESS read-write + + STATUS current + DESCRIPTION + "This object is set by the operator to indicate the PW TTL + value to be used on the PW shim label." --- IPI Comments : ZebOS doesnt support this and so the value is set to default value of 2. + DEFVAL { 2 } + ::= { pwMplsEntry 4 } + + pwMplsLocalLdpID OBJECT-TYPE + SYNTAX MplsLdpIdentifier + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The LDP identifier of the LDP entity that creates + this PW in the local node. As the PW labels are always + set from the per-platform label space, the last two octets + in the LDP ID MUST always both be zeros." --- IPI Comments : SNMP set is not supported. + REFERENCE + "'LDP specifications', RFC 3036, section 2.2.2." + ::= { pwMplsEntry 5 } + + pwMplsLocalLdpEntityIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The local node LDP Entity Index of the LDP entity creating + this PW." --- IPI Comments : SNMP set is not supported. + ::= { pwMplsEntry 6 } + + pwMplsPeerLdpID OBJECT-TYPE + SYNTAX MplsLdpIdentifier + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The peer LDP identifier of the LDP session. This object + SHOULD return the value zero if LDP is not used or if the + value is not yet known." --- IPI Comments : SNMP set is not supported. + ::= { pwMplsEntry 7 } + + pwMplsStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This variable indicates the storage type for this row." --- IPI Comments : ZebOS only supports Volatile though default in is nonVolatile. + DEFVAL { nonVolatile } + ::= { pwMplsEntry 8 } + + + -- End of PW MPLS Table + + -- Pseudowire MPLS Outbound Tunnel Table + + pwMplsOutboundTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwMplsOutboundEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table reports and configures the current outbound MPLS + tunnels (i.e., toward the PSN) or the physical interface in + the case of a PW label only that carries the PW traffic. It + also reports the current outer tunnel and LSP that forward + the PW traffic." + ::= { pwMplsObjects 2 } + + pwMplsOutboundEntry OBJECT-TYPE + SYNTAX PwMplsOutboundEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table configures the outer tunnel used for + carrying the PW traffic toward the PSN. + In the case of PW label only, it configures the interface + that will carry the PW traffic. + + An entry in this table augments the pwMplsEntry, and is + created automatically when the corresponding row has been + created by the agent in the pwMplsEntry. + + This table points to the appropriate MPLS MIB module: + + In the MPLS-TE case, the three objects relevant to the + indexing of a TE tunnel head-end (as used in the + MPLS-TE-STD-MIB) are to be configured, and the tunnel + instance indicates the LSP that is currently in use for + forwarding the traffic. + + In the case of signaled non-TE MPLS (an outer tunnel label + assigned by LDP), the table points to the XC entry in the + LSR-STD-MIB. If the non-TE MPLS tunnel is manually + configured, the operator configures the XC pointer to this + tunnel. + + In the case of PW label only (no outer tunnel), the ifIndex + of the port to carry the PW is configured here. + + + + It is possible to associate a PW to one TE tunnel head-end + and a non-TE tunnel together. An indication in this table + will report the currently active one. In addition, in the + TE case, the table reports the active tunnel instance + (i.e., the specific LSP in use). + Any read-write object in this table MAY be changed at any + time; however, change of some objects (for example, + MPLS-TE indexes) during PW forwarding state MAY cause traffic + disruption." + + AUGMENTS { pwMplsEntry } + + ::= { pwMplsOutboundTable 1 } + + PwMplsOutboundEntry ::= SEQUENCE { + pwMplsOutboundLsrXcIndex MplsIndexType, + pwMplsOutboundTunnelIndex MplsTunnelIndex, + pwMplsOutboundTunnelInstance MplsTunnelInstanceIndex, + pwMplsOutboundTunnelLclLSR MplsLsrIdentifier, + pwMplsOutboundTunnelPeerLSR MplsLsrIdentifier, + pwMplsOutboundIfIndex InterfaceIndexOrZero, + pwMplsOutboundTunnelTypeInUse INTEGER + } + + pwMplsOutboundLsrXcIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType mplsNonTe(1) + bit is set, and MUST return a value of zero otherwise. + If the outer tunnel is signaled, the object is read-only + and indicates the XC index in the MPLS-LSR-STD-MIB of the + outer tunnel toward the peer. Otherwise (tunnel is set up + manually), the operator defines the XC index of the manually + created outer tunnel through this object. + " + ::= { pwMplsOutboundEntry 1 } + + + pwMplsOutboundTunnelIndex OBJECT-TYPE + SYNTAX MplsTunnelIndex + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType mplsTe(0) + bit is set, and MUST return a value of zero otherwise. + It is part of the set of indexes for the outbound tunnel. + + The operator sets this object to represent the desired + tunnel head-end toward the peer for carrying the PW + traffic. + " + ::= { pwMplsOutboundEntry 2 } + + pwMplsOutboundTunnelInstance OBJECT-TYPE + SYNTAX MplsTunnelInstanceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType mplsTe(0) + bit is set, and MUST return a value of zero otherwise. + It indicates the actual tunnel instance that is currently + active and carrying the PW traffic. It SHOULD return the + value zero if the information from the MPLS-TE + application is not yet known. --- IPI Comments : Not supported. + " + ::= { pwMplsOutboundEntry 3 } + + pwMplsOutboundTunnelLclLSR OBJECT-TYPE + SYNTAX MplsLsrIdentifier + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType mplsTe(0) + bit is set, and MUST return a value of all zeros otherwise. + It is part of the set of indexes for the outbound tunnel. + The operator sets this object to represent the desired + tunnel head-end toward the peer for carrying the PW + traffic. --- IPI Comments : Not supported. + " + ::= { pwMplsOutboundEntry 4 } + + pwMplsOutboundTunnelPeerLSR OBJECT-TYPE + SYNTAX MplsLsrIdentifier + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType mplsTe(0) + bit is set, and MUST return a value of zero otherwise. + It is part of the set of indexes for the outbound tunnel. + Note that in most cases, it equals to pwPeerAddr. --- IPI Comments : Not supported. + " + ::= { pwMplsOutboundEntry 5 } + + pwMplsOutboundIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is applicable if the pwMplsMplsType pwOnly(0) + bit is set, and MUST return a value of zero otherwise. + The operator configures the ifIndex of the outbound port + in this case. --- IPI Comments : This object is applicable if the pwMplsMplsType pwOnly(0) bit is set, and MUST return a value of zero + " + ::= { pwMplsOutboundEntry 6 } + + pwMplsOutboundTunnelTypeInUse OBJECT-TYPE + SYNTAX INTEGER { + notYetKnown (1), + mplsTe (2), + mplsNonTe (3), + pwOnly (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object indicates the current tunnel that is carrying + the PW traffic. + The value of notYetKnown(1) should be used if the agent is + currently unable to determine which tunnel or interface is + carrying the PW, for example, because both tunnels are in + operational status down. --- IPI Comments : SNMP SET is Not supported. + " + ::= { pwMplsOutboundEntry 7 } + + -- End of PW MPLS Outbound Tunnel table + + -- PW MPLS inbound table + + pwMplsInboundTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwMplsInboundEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table indicates the PW LDP XC entry in the + MPLS-LSR-STD-MIB for signaled PWs. + " + ::= { pwMplsObjects 3 } + + pwMplsInboundEntry OBJECT-TYPE + SYNTAX PwMplsInboundEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + "A row in this table is created by the agent + for each signaled PW, and shows the XC index related to + the PW signaling in the inbound direction in the + MPLS-LSR-STD-MIB that controls and display the information + for all the LDP signaling processes in the local node. + " + INDEX { pwIndex } + + ::= { pwMplsInboundTable 1 } + + PwMplsInboundEntry ::= SEQUENCE { + pwMplsInboundXcIndex MplsIndexType + } + + pwMplsInboundXcIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The XC index representing this PW in the inbound + direction. It MUST return the value zero if the + information is not yet known." --- IPI Comments: SNMP SET not supported. + ::= { pwMplsInboundEntry 1 } + + -- End of PW MPLS inbound table + + -- PW to Non-TE mapping Table. + + pwMplsNonTeMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwMplsNonTeMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table indicates the PW association to the outbound + tunnel in non-TE applications, maps the PW to its (inbound) + XC entry, and indicates the PW-to-physical interface mapping + for a PW without an outer tunnel. + " + ::= { pwMplsObjects 4 } + + pwMplsNonTeMappingEntry OBJECT-TYPE + SYNTAX PwMplsNonTeMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table displays the association + between the PW and + - its non-TE MPLS outbound outer tunnel, + + - its XC entry in the MPLS-LSR-STD-MIB, or + - its physical interface if there is no outer tunnel + (PW label only) and manual configuration. + + Rows are created in this table by the agent depending on + the setting of pwMplsMplsType: + + - If the pwMplsMplsType mplsNonTe(1) bit is set, the agent + creates a row for the outbound direction + (pwMplsNonTeMappingDirection set to psnBound(1)). + The pwMplsNonTeMappingXcIndex holds the XC index in the + MPLS-LSR-STD-MIB of the PSN-bound outer tunnel. + pwMplsNonTeMappingIfIndex MUST be zero for this row. + + - If the pwMplsMplsType pwOnly(2) bit is set, the agent + creates a row for the outbound direction + (pwMplsNonTeMappingDirection set to psnBound(1)). + The pwMplsNonTeMappingIfIndex holds the ifIndex of the + physical port this PW will use in the outbound direction. + pwMplsNonTeMappingXcIndex MUST be zero for this row. + + - If the PW has been set up by a signaling protocol (i.e., + pwOwner equal pwIdFecSignaling(2) or + genFecSignaling(3)), the agent creates a row for the + inbound direction (pwMplsNonTeMappingDirection set to + fromPsn(2)). + The pwMplsNonTeMappingXcIndex holds the XC index in the + MPLS-LSR-STD-MIB of the PW LDP-generated XC entry. + pwMplsNonTeMappingIfIndex MUST be zero for this row. + + An application can use this table to quickly retrieve the + PW carried over specific non-TE MPLS outer tunnel or + physical interface. + " + + INDEX { pwMplsNonTeMappingDirection, + pwMplsNonTeMappingXcIndex, + pwMplsNonTeMappingIfIndex, + pwMplsNonTeMappingPwIndex } + + ::= { pwMplsNonTeMappingTable 1 } + + PwMplsNonTeMappingEntry ::= SEQUENCE { + pwMplsNonTeMappingDirection INTEGER, + pwMplsNonTeMappingXcIndex MplsIndexType, + pwMplsNonTeMappingIfIndex InterfaceIndexOrZero, + pwMplsNonTeMappingPwIndex PwIndexType + } + + pwMplsNonTeMappingDirection OBJECT-TYPE + SYNTAX INTEGER { + psnBound (1), + fromPsn (2) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Index for the conceptual XC row identifying the tunnel-to-PW + mappings, indicating the direction of the packet flow for + this entry. + psnBound(1) indicates that the entry is related to + packets toward the PSN. + fromPsn(2) indicates that the entry is related to + packets coming from the PSN. --- IPI Comments: Not supported + " + ::= { pwMplsNonTeMappingEntry 1 } + + pwMplsNonTeMappingXcIndex OBJECT-TYPE + SYNTAX MplsIndexType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "See the description clause of pwMplsNonTeMappingEntry for + the usage guidelines of this object." --- IPI Comments: Not supported + ::= { pwMplsNonTeMappingEntry 2 } + + pwMplsNonTeMappingIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "See the description clause of pwMplsNonTeMappingEntry for + the usage guidelines of this object." --- IPI Comments: Not supported + ::= { pwMplsNonTeMappingEntry 3 } + + pwMplsNonTeMappingPwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value that represents the PW in the pwTable." --- IPI Comments: Not supported + ::= { pwMplsNonTeMappingEntry 4 } + + -- End of PW to Non-TE mapping Table. + + + -- PW to TE MPLS tunnels mapping Table. + + pwMplsTeMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwMplsTeMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table reports the PW association to the + outbound MPLS tunnel for MPLS-TE applications." + ::= { pwMplsObjects 5 } + + pwMplsTeMappingEntry OBJECT-TYPE + SYNTAX PwMplsTeMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A row in this table represents the association + between a PW and its MPLS-TE outer (head-end) tunnel. + + An application can use this table to quickly retrieve the + list of the PWs that are configured on a specific MPLS-TE + outer tunnel. + + The pwMplsTeMappingTunnelInstance reports the actual + LSP out of the tunnel head-end that is currently + forwarding the traffic. + + The table is indexed by the head-end indexes of a TE + tunnel and the PW index. + " + + INDEX { pwMplsTeMappingTunnelIndex, + pwMplsTeMappingTunnelInstance, + pwMplsTeMappingTunnelPeerLsrID, + pwMplsTeMappingTunnelLocalLsrID, + pwMplsTeMappingPwIndex } + + ::= { pwMplsTeMappingTable 1 } + + PwMplsTeMappingEntry ::= SEQUENCE { + pwMplsTeMappingTunnelIndex MplsTunnelIndex, + pwMplsTeMappingTunnelInstance MplsTunnelInstanceIndex, + pwMplsTeMappingTunnelPeerLsrID MplsLsrIdentifier, + pwMplsTeMappingTunnelLocalLsrID MplsLsrIdentifier, + pwMplsTeMappingPwIndex PwIndexType + } + + + + + + pwMplsTeMappingTunnelIndex OBJECT-TYPE + SYNTAX MplsTunnelIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Primary index for the conceptual row identifying the + MPLS-TE tunnel that is carrying the PW traffic." --- IPI Comments: Not supported + ::= { pwMplsTeMappingEntry 1 } + + pwMplsTeMappingTunnelInstance OBJECT-TYPE + SYNTAX MplsTunnelInstanceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object identifies the MPLS-TE LSP that is carrying the + PW traffic. It MUST return the value zero if the + information of the specific LSP is not yet known. + Note that based on the recommendation in the + MPLS-TC-STD-MIB, instance index 0 should refer to the + configured tunnel interface." --- IPI Comments: Not supported + ::= { pwMplsTeMappingEntry 2 } + + pwMplsTeMappingTunnelPeerLsrID OBJECT-TYPE + SYNTAX MplsLsrIdentifier + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object identifies the peer LSR when the outer tunnel + is MPLS-TE." --- IPI Comments: Not supported + ::= { pwMplsTeMappingEntry 3 } + + pwMplsTeMappingTunnelLocalLsrID OBJECT-TYPE + SYNTAX MplsLsrIdentifier + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object identifies the local LSR." --- IPI Comments: Not supported + ::= { pwMplsTeMappingEntry 4 } + + pwMplsTeMappingPwIndex OBJECT-TYPE + SYNTAX PwIndexType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object returns the value that represents the PW in the + pwTable." --- IPI Comments: Not supported + ::= { pwMplsTeMappingEntry 5 } + + + -- End of PW to TE MPLS tunnels mapping Table. + + -- conformance information + + pwMplsGroups OBJECT IDENTIFIER ::= { pwMplsConformance 1 } + pwMplsCompliances OBJECT IDENTIFIER ::= { pwMplsConformance 2 } + + -- Compliance requirement for fully compliant implementations. + + pwMplsModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provide full + support for the PW-MPLS-STD-MIB module. Such devices + can then be monitored and also be configured using + this MIB module." + + MODULE -- this module + MANDATORY-GROUPS { pwMplsGroup, + pwMplsOutboundMainGroup, + pwMplsInboundGroup, + pwMplsMappingGroup + } + + GROUP pwMplsOutboundTeGroup + DESCRIPTION "This group MUST be supported if the implementation + allows MPLS-TE tunnels to carry PW traffic. + " + + OBJECT pwMplsMplsType + DESCRIPTION "Support of pwOnly(2) is not required. At least one + of mplsTe(0) or mplsNonTe(1) MUST be supported if + signaling of PW is supported. + " + + OBJECT pwMplsExpBitsMode + DESCRIPTION "Support of specifiedValue(2) and + serviceDependant(3) is optional. + " + + OBJECT pwMplsLocalLdpID + MIN-ACCESS read-only + DESCRIPTION "A read-write access is required if the + implementation supports more than one LDP entity + identifier for PW signaling. + " + + OBJECT pwMplsLocalLdpEntityIndex + + MIN-ACCESS read-only + DESCRIPTION "A read-write access is required if the + implementation supports more than one LDP entity + index for PW signaling. + " + + OBJECT pwMplsOutboundLsrXcIndex + MIN-ACCESS read-only + DESCRIPTION "A value other than zero MUST be supported if the + implementation supports non-TE signaling of the + outer tunnel. + A read-write access MUST be supported if the + implementation supports PW label manual setting + and carrying them over non-TE tunnels. + " + + OBJECT pwMplsOutboundIfIndex + MIN-ACCESS read-only + DESCRIPTION "A value other than zero and read-write operations + MUST be supported if the implementation supports + manually configured PW without MPLS outer tunnel. + " + ::= { pwMplsCompliances 1 } + + -- Compliance requirement for Read Only compliant implementations. + + pwMplsModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provide read- + only support for the PW-MPLS-STD-MIB module. Such + devices can then be monitored but cannot be configured + using this MIB module." + + MODULE -- this module + MANDATORY-GROUPS { pwMplsGroup, + pwMplsOutboundMainGroup, + pwMplsInboundGroup, + pwMplsMappingGroup + } + + GROUP pwMplsOutboundTeGroup + DESCRIPTION "This group MUST be supported if the implementation + allows MPLS-TE tunnels to carry PW traffic. + " + + OBJECT pwMplsMplsType + MIN-ACCESS read-only + + DESCRIPTION "Write access is not required. + Support of pwOnly(2) is not required. At least one + of mplsTe(0) or mplsNonTe(1) MUST be supported if + signaling of PW is supported. + " + + OBJECT pwMplsExpBitsMode + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + Support of specifiedValue(2) and serviceDependant(3) + is optional. + " + OBJECT pwMplsExpBits + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + OBJECT pwMplsTtl + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsLocalLdpID + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsLocalLdpEntityIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsStorageType + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsOutboundLsrXcIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + A value other than zero MUST be supported if the + implementation supports non-TE signaling of the + outer tunnel. + " + + OBJECT pwMplsOutboundTunnelIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsOutboundTunnelLclLSR + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsOutboundTunnelPeerLSR + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + " + + OBJECT pwMplsOutboundIfIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. + A value other than zero MUST be supported if the + implementation supports manually configured PW + without MPLS outer tunnel. + " + ::= { pwMplsCompliances 2 } + + -- Units of conformance. + + pwMplsGroup OBJECT-GROUP + OBJECTS { + pwMplsMplsType, + pwMplsExpBitsMode, + pwMplsExpBits, + pwMplsTtl, + pwMplsLocalLdpID, + pwMplsLocalLdpEntityIndex, + pwMplsPeerLdpID, + pwMplsStorageType + } + + STATUS current + DESCRIPTION + "Collection of objects needed for PW over MPLS PSN + configuration." + ::= { pwMplsGroups 1 } + + pwMplsOutboundMainGroup OBJECT-GROUP + OBJECTS { + pwMplsOutboundLsrXcIndex, + pwMplsOutboundIfIndex, + pwMplsOutboundTunnelTypeInUse + } + + STATUS current + DESCRIPTION + + "Collection of objects needed for outbound association of + PW and MPLS tunnel." + ::= { pwMplsGroups 2 } + + pwMplsOutboundTeGroup OBJECT-GROUP + OBJECTS { + pwMplsOutboundTunnelIndex, + pwMplsOutboundTunnelInstance, + pwMplsOutboundTunnelLclLSR, + pwMplsOutboundTunnelPeerLSR + } + + STATUS current + DESCRIPTION + "Collection of objects needed for outbound association of + PW and MPLS-TE tunnel." + ::= { pwMplsGroups 3 } + + pwMplsInboundGroup OBJECT-GROUP + OBJECTS { + pwMplsInboundXcIndex + } + + STATUS current + DESCRIPTION + "Collection of objects needed for inbound PW presentation. + This group MUST be supported if PW signaling through LDP is + used." + ::= { pwMplsGroups 4 } + + pwMplsMappingGroup OBJECT-GROUP + OBJECTS { + pwMplsNonTeMappingPwIndex, + pwMplsTeMappingPwIndex + } + + STATUS current + DESCRIPTION + "Collection of objects needed for mapping association of + PW and MPLS tunnel." + ::= { pwMplsGroups 5 } + + END \ No newline at end of file diff --git a/mibs/RFC-5603-PW-ENET-STD-MIB.txt b/mibs/RFC-5603-PW-ENET-STD-MIB.txt new file mode 100644 index 00000000..f65208ab --- /dev/null +++ b/mibs/RFC-5603-PW-ENET-STD-MIB.txt @@ -0,0 +1,504 @@ +PW-ENET-STD-MIB DEFINITIONS ::= BEGIN + +IMPORTS + OBJECT-TYPE, MODULE-IDENTITY, Unsigned32, mib-2 + FROM SNMPv2-SMI -- [RFC2578] + + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF -- [RFC2580] + + StorageType, RowStatus + FROM SNMPv2-TC -- [RFC2579] + + InterfaceIndexOrZero + FROM IF-MIB -- [RFC2863] + + ZeroBasedCounter32 + FROM RMON2-MIB -- [RFC4502] + + pwIndex + FROM PW-STD-MIB -- [RFC5601] + + VlanIdOrAnyOrNone + FROM Q-BRIDGE-MIB; -- [RFC4363] + +pwEnetStdMIB MODULE-IDENTITY + LAST-UPDATED "200906150000Z" -- 15 June 2009 00:00:00 GMT + + ORGANIZATION "Pseudowire Edge-to-Edge Emulation (PWE3) Working + Group" + + CONTACT-INFO + "David Zelig + Email: davidz@oversi.com + + Thomas D. Nadeau + Email: tom.nadeau@bt.com + " + DESCRIPTION + "This MIB module describes a model for managing Ethernet + point-to-point pseudowire services over a Packet + Switched Network (PSN). + + Copyright (c) 2009 IETF Trust and the persons identified + as authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the following + conditions are met: + + - Redistributions of source code must retain the above + copyright notice, this list of conditions and the following + disclaimer. + + - Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + + - Neither the name of Internet Society, IETF or IETF Trust, nor + the names of specific contributors, may be used to endorse or + promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + This version of this MIB module is part of RFC 5603; + + see the RFC itself for full legal notices." + + -- Revision history + REVISION "200906150000Z" -- 15 June 2009 00:00:00 GMT + DESCRIPTION "Initial version published as part of RFC 5603." + + ::= { mib-2 180 } + +pwEnetObjects OBJECT IDENTIFIER ::= { pwEnetStdMIB 1 } +pwEnetConformance OBJECT IDENTIFIER ::= { pwEnetStdMIB 2 } + +-- +-- Ethernet PW table +-- + +pwEnetTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwEnetEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains the index to the Ethernet tables + associated with this Ethernet PW, the VLAN configuration, + and the VLAN mode." + ::= { pwEnetObjects 1 } + +pwEnetEntry OBJECT-TYPE + SYNTAX PwEnetEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is indexed by the same index that was created + for the associated entry in the PW generic table in the + + PW-STD-MIB module. + The pwIndex and the pwEnetPwInstance are used as indexes + to allow multiple VLANs to exist on the same PW. + + An entry is created in this table by the agent for every + entry in the pwTable with a pwType of 'ethernetTagged' + or 'ethernet'. Additional rows may be created by the + operator or the agent if multiple entries are required for + the same PW. + + The value of pwEnetPwInstance can be arbitrarily selected + to make the row unique; however, implementations that know + the VLAN field value when the row is created MAY use the + value of the VLAN itself for better readability and + backward compatibility with older versions of this MIB + + module. + + This table provides Ethernet port mapping and VLAN + configuration for each Ethernet PW. + + All read-create objects in this table MAY be changed at any + time; however, change of some objects (for example, + pwEnetVlanMode) during the PW forwarding state MAY cause traffic + disruption. + + Manual entries in this table SHOULD be preserved after a + reboot, and the agent MUST ensure the integrity of those + entries. If the set of entries of a specific row is found to + be inconsistent after reboot, the PW pwOperStatus MUST be + declared as notPresent(5). + " + + INDEX { pwIndex, pwEnetPwInstance } + ::= { pwEnetTable 1 } + +PwEnetEntry ::= SEQUENCE { + pwEnetPwInstance Unsigned32, + pwEnetPwVlan VlanIdOrAnyOrNone, + pwEnetVlanMode INTEGER, + pwEnetPortVlan VlanIdOrAnyOrNone, + + pwEnetPortIfIndex InterfaceIndexOrZero, + pwEnetPwIfIndex InterfaceIndexOrZero, + + pwEnetRowStatus RowStatus, + pwEnetStorageType StorageType + } + +pwEnetPwInstance OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "If multiple rows are mapped to the same PW, this index is + used to uniquely identify the individual row. + If the value of the VLAN field is known at the time of + row creation, the value of pwEnetPwVlan MAY be used + for better readability and backward compatibility with + older versions of this MIB module. Otherwise, the value + 1 SHOULD be set to the first row for each pwIndex + for better readability and in order that the management + application will know in advance how to access the + first row when it was created by the agent. --- IPI Comments : Not supported. + + " + ::= { pwEnetEntry 1 } + +pwEnetPwVlan OBJECT-TYPE + SYNTAX VlanIdOrAnyOrNone + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object defines the (service-delimiting) VLAN field + value on the PW. The value 4095 MUST be used if the + object is not applicable, for example, when mapping all + packets from an Ethernet port to this PW (raw mode). + The value 0 MUST be set to indicate untagged frames + (from the PW point of view), i.e., when pwEnetVlanMode + equals 'noChange' and pwEnetPortVlan equals 0." + ::= { pwEnetEntry 2 } + +pwEnetVlanMode OBJECT-TYPE + SYNTAX INTEGER { + other(0), + portBased(1), + noChange(2), + changeVlan(3), + addVlan(4), + removeVlan(5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the mode of VLAN handling between the + port or the virtual port associated with the PW and the + PW encapsulation. + + - 'other' indicates an operation that is not defined by + this MIB module. + + - 'portBased' indicates that the forwarder will forward + packets between the port and the PW independent of their + structure (i.e., there are no service-delimiting VLAN tags + from the PE standpoint). + + - 'noChange' indicates that the PW contains the original + user VLAN, as specified in pwEnetPortVlan; i.e., the + VLAN on the PE-CE link is the service-delimiting tag + and is kept 'as is' on the PW. + + - 'changeVlan' indicates that the VLAN field on the PW + may be different than the VLAN field on the user's + + port. The VLAN on the PE-CE link is the service-delimiting + tag but has a different value on the PW. + + - 'addVlan' indicates that a VLAN field will be added + on the PSN-bound direction (i.e., on the PW). pwEnetPwVlan + indicates the value that will be added. + + - 'removeVlan' indicates that the encapsulation on the + PW does not include the service-delimiting VLAN field. + Note that PRI bits transparency is lost in this case. + + - Implementation of 'portsbased', 'removeVlan', 'addVlan' + 'other', and 'changeVlan' is OPTIONAL. + " + DEFVAL { noChange } + ::= { pwEnetEntry 3 } + +pwEnetPortVlan OBJECT-TYPE + SYNTAX VlanIdOrAnyOrNone + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object defines if the mapping between the original port + (physical port or VPLS virtual port) to the PW is VLAN based + or not. In case of VLAN mapping, this object indicates the + VLAN value on the original port. + + The value of '4095' MUST be used if the whole original port + traffic is mapped to the same PW. Note that a pwType of + 'ethernetTagged' can still be used if service-delimiting tag + is added on the PW (pwEnetVlanMode equals 'addVlan'). + + This object MUST be equal to pwEnetPwVlan if pwEnetVlanMode + equals 'noChange'. + + The value 0 indicates that packets without a VLAN field + (i.e., untagged frames) on the port are associated to this + PW. This allows the same behavior as assigning 'Default + VLAN' to untagged frames. + " + DEFVAL { 4095 } + ::= { pwEnetEntry 4 } + +pwEnetPortIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + "This object is used to specify the ifIndex of the Ethernet + port associated with this PW for point-to-point Ethernet + service, or the ifIndex of the virtual interface of the + VPLS instance associated with the PW if the service is + VPLS. Two rows in this table can point to the same ifIndex + only if there is no overlap of VLAN values specified in + pwEnetPortVlan that are associated with this port. + + A value of zero indicates that association to an ifIndex is + not yet known." + + ::= { pwEnetEntry 5 } + +pwEnetPwIfIndex OBJECT-TYPE + SYNTAX InterfaceIndexOrZero + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "If the PW is modeled as an ifIndex in the ifTable, this + object indicates the value of the ifIndex representing the + Ethernet PW on the PSN side in the Etherlike-MIB. Note that + this value may be different from the value of pwIfIndex + that represents the ifIndex of the PW for ifType 'pw'." --- IPI Comments : ZebOS doesnt support this model hence value will be set to 0. + DEFVAL { 0 } + ::= { pwEnetEntry 6 } + +pwEnetRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object enables creating, deleting, and modifying this + row." + ::= { pwEnetEntry 7 } + +pwEnetStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the storage type of this row." --- IPI Comments : ZebOS only supports Volatile however default is non-volatile + DEFVAL { nonVolatile } + ::= { pwEnetEntry 8 } + +-- +-- Ethernet PW Statistics Table +-- + + +pwEnetStatsTable OBJECT-TYPE + SYNTAX SEQUENCE OF PwEnetStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains statistical counters specific for + Ethernet PW." + ::= { pwEnetObjects 2 } + +pwEnetStatsEntry OBJECT-TYPE + SYNTAX PwEnetStatsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry represents the statistics gathered for the + PW carrying the Ethernet." + INDEX { pwIndex } + ::= { pwEnetStatsTable 1 } + + +PwEnetStatsEntry ::= SEQUENCE { + pwEnetStatsIllegalVlan ZeroBasedCounter32, + pwEnetStatsIllegalLength ZeroBasedCounter32 +} + +pwEnetStatsIllegalVlan OBJECT-TYPE + SYNTAX ZeroBasedCounter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets received (from the PSN) on this PW + with either an illegal VLAN field, a missing VLAN field + when one was expected, or an excessive VLAN field when + it was not expected. This counter may not be applicable + in some cases, and MUST return the value of zero in + such a case." --- IPI Comments : Not supported. + ::= { pwEnetStatsEntry 1 } + +pwEnetStatsIllegalLength OBJECT-TYPE + SYNTAX ZeroBasedCounter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of packets that were received with an illegal + Ethernet packet length on this PW. An illegal length is + defined as being greater than the value in the advertised + MTU supported, or shorter than the allowed Ethernet packet + size." --- IPI Comments : Not supported. + + ::= { pwEnetStatsEntry 2 } + +--- +--- Conformance description +--- + +pwEnetGroups OBJECT IDENTIFIER ::= { pwEnetConformance 1 } +pwEnetCompliances OBJECT IDENTIFIER ::= { pwEnetConformance 2 } + +-- Compliance requirement for fully compliant implementations + +pwEnetModuleFullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provides full + support for the PW-ENET-STD-MIB module. Such devices + can then be monitored and also be configured using + this MIB module." + MODULE -- this module + MANDATORY-GROUPS { + pwEnetGroup, + pwEnetStatsGroup + } + + OBJECT pwEnetVlanMode + DESCRIPTION "An implementation MUST support at least the value + noChange(2)." + + OBJECT pwEnetPwIfIndex + MIN-ACCESS read-only + DESCRIPTION "Write access and values other than zero are + required only for implementations that support + modeling the Ethernet PW in the Etherlike-MIB." + OBJECT pwEnetRowStatus + SYNTAX RowStatus { active(1), notInService(2), + notReady(3) } + WRITE-SYNTAX RowStatus { active(1), notInService(2), + createAndGo(4), destroy(6) + } + MIN-ACCESS read-only + DESCRIPTION "Support for createAndWait is not required. Support + of notReady is not required for implementations that + do not support signaling. + Support of read-write is not required for + implementations that do not support more than one + VLAN mapping to the same PW." + ::= { pwEnetCompliances 1 } + + +-- Compliance requirement for read-only compliant implementations + +pwEnetModuleReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for agents that provide read- + only support for the PW-ENET-STD-MIB module. Such + devices can then be monitored but cannot be configured + using this MIB module." + + MODULE -- this module + MANDATORY-GROUPS { pwEnetGroup, + pwEnetStatsGroup + } + + OBJECT pwEnetPwVlan + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwEnetVlanMode + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. An implementation + MUST support at least the value noChange(2)." + + OBJECT pwEnetPortVlan + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwEnetPortIfIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT pwEnetPwIfIndex + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. Values other than + zero are required only for implementations that + support modeling the Ethernet PW in the + Etherlike-MIB." + + OBJECT pwEnetRowStatus + SYNTAX RowStatus { active(1), notInService(2), + notReady(3) } + MIN-ACCESS read-only + DESCRIPTION "Write access is not required. Support + of notReady is not required for implementations that + do not support signaling." + + OBJECT pwEnetStorageType + + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { pwEnetCompliances 2 } + +-- Units of conformance + +pwEnetGroup OBJECT-GROUP + OBJECTS { + pwEnetPwVlan, + pwEnetVlanMode, + pwEnetPortVlan, + pwEnetPortIfIndex, + pwEnetPwIfIndex, + pwEnetRowStatus, + pwEnetStorageType + } + STATUS current + DESCRIPTION + "Collection of objects for basic Ethernet PW configuration." + ::= { pwEnetGroups 1 } + +pwEnetStatsGroup OBJECT-GROUP + OBJECTS { + pwEnetStatsIllegalVlan, + pwEnetStatsIllegalLength + } + STATUS current + DESCRIPTION + "Collection of objects counting various PW level errors." + ::= { pwEnetGroups 2 } + +END \ No newline at end of file diff --git a/mibs/RFC-5643-OSPFV3-MIB.txt b/mibs/RFC-5643-OSPFV3-MIB.txt new file mode 100644 index 00000000..3a122724 --- /dev/null +++ b/mibs/RFC-5643-OSPFV3-MIB.txt @@ -0,0 +1,4075 @@ + OSPFV3-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, mib-2, + Counter32, Gauge32, Integer32, Unsigned32 + FROM SNMPv2-SMI + TEXTUAL-CONVENTION, TruthValue, RowStatus, TimeStamp + FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF + InterfaceIndex + FROM IF-MIB + InetAddressType, InetAddress, InetAddressPrefixLength, + InetAddressIPv6 + FROM INET-ADDRESS-MIB + Metric, BigMetric, Status, + HelloRange, DesignatedRouterPriority + FROM OSPF-MIB; + + ospfv3MIB MODULE-IDENTITY + LAST-UPDATED "200908130000Z" + ORGANIZATION "IETF OSPF Working Group" + CONTACT-INFO + "WG E-Mail: ospf@ietf.org + WG Chairs: Acee Lindem + acee@redback.com + + Abhay Roy + akr@cisco.com + + Editors: Dan Joyal + Nortel + 600 Technology Park Drive + Billerica, MA 01821, USA + djoyal@nortel.com + + Vishwas Manral + IP Infusion + Almora, Uttarakhand + India + vishwas@ipinfusion.com" + + DESCRIPTION + "The MIB module for OSPF version 3. + + Copyright (c) 2009 IETF Trust and the persons + identified as authors of the code. All rights + reserved. + + Redistribution and use in source and binary forms, with + or without modification, are permitted provided that + the following conditions are met: + + - Redistributions of source code must retain the above + copyright notice, this list of conditions and the + following disclaimer. + + - Redistributions in binary form must reproduce the + above copyright notice, this list of conditions and + the following disclaimer in the documentation and/or + other materials provided with the distribution. + + - Neither the name of Internet Society, IETF or IETF + Trust, nor the names of specific contributors, may be + used to endorse or promote products derived from this + software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED + WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF + USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER + IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE + USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + + This version of this MIB module is part of RFC 5643; + see the RFC itself for full legal notices." + + REVISION "200908130000Z" + DESCRIPTION + "Initial version, published as RFC 5643" + ::= { mib-2 191 } + + -- Textual conventions + + Ospfv3UpToRefreshIntervalTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "The values one might be able to configure for + variables bounded by the Refresh Interval." + REFERENCE + "OSPF Version 2, Appendix B, Architectural Constants" + SYNTAX Unsigned32 (1..1800) + + Ospfv3DeadIntervalRangeTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "The range, in seconds, of dead interval value." + REFERENCE + "OSPF for IPv6, Appendix C.3, Router Interface + Parameters" + SYNTAX Unsigned32 (1..'FFFF'h) + + Ospfv3RouterIdTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "A 32-bit, unsigned integer uniquely identifying the + router in the Autonomous System. To ensure + uniqueness, this may default to the value of one of + the router's IPv4 host addresses if IPv4 is + configured on the router." + REFERENCE + "OSPF for IPv6, Appendix C.1, Global Parameters" + SYNTAX Unsigned32 (1..'FFFFFFFF'h) + + Ospfv3LsIdTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "A unique 32-bit identifier of the piece of the + routing domain that is being described by a link + state advertisement. In contrast to OSPFv2, the + Link State ID (LSID) has no addressing semantics." + REFERENCE + "OSPF Version 2, Section 12.1.4, Link State ID" + SYNTAX Unsigned32 (1..'FFFFFFFF'h) + + Ospfv3AreaIdTC ::= TEXTUAL-CONVENTION + + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "An OSPFv3 Area Identifier. A value of zero + identifies the backbone area." + REFERENCE + "OSPF for IPv6, Appendix C.3 Router Interface + Parameters" + SYNTAX Unsigned32 (0..'FFFFFFFF'h) + + Ospfv3IfInstIdTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "An OSPFv3 Interface Instance ID." + REFERENCE + "OSPF for IPv6, Appendix C.3, Router Interface + Parameters" + SYNTAX Unsigned32 (0..255) + + Ospfv3LsaSequenceTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It is used to detect old and duplicate + link state advertisements. The space of + sequence numbers is linearly ordered. The + larger the sequence number, the more recent the + advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6, LS sequence + number" + SYNTAX Integer32 + + Ospfv3LsaAgeTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "The age of the link state advertisement in + seconds. The high-order bit of the LS age + field is considered the DoNotAge bit for + support of on-demand circuits." + REFERENCE + "OSPF Version 2, Section 12.1.1, LS age; + Extending OSPF to Support Demand Circuits, + Section 2.2, The LS age field" + SYNTAX Unsigned32 (0..3600 | 32768..36368) + + + + -- Top-level structure of MIB + ospfv3Notifications OBJECT IDENTIFIER ::= { ospfv3MIB 0 } + ospfv3Objects OBJECT IDENTIFIER ::= { ospfv3MIB 1 } + ospfv3Conformance OBJECT IDENTIFIER ::= { ospfv3MIB 2 } + + -- OSPFv3 General Variables + + -- These parameters apply globally to the Router's + -- OSPFv3 Process. + + ospfv3GeneralGroup OBJECT IDENTIFIER ::= { ospfv3Objects 1 } + + ospfv3RouterId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A 32-bit unsigned integer uniquely identifying + the router in the Autonomous System. To ensure + uniqueness, this may default to the 32-bit + unsigned integer representation of one of + the router's IPv4 interface addresses (if IPv4 + is configured on the router). + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF for IPv6, Appendix C.1, Global Parameters" + ::= { ospfv3GeneralGroup 1 } + + ospfv3AdminStatus OBJECT-TYPE + SYNTAX Status + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative status of OSPFv3 in the + router. The value 'enabled' denotes that the + OSPFv3 Process is active on at least one + interface; 'disabled' disables it on all + interfaces. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + ::= { ospfv3GeneralGroup 2 } + + ospfv3VersionNumber OBJECT-TYPE + SYNTAX INTEGER { version3 (3) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The version number of OSPF for IPv6 is 3." + ::= { ospfv3GeneralGroup 3 } + + ospfv3AreaBdrRtrStatus OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A flag to denote whether this router is an area + border router. The value of this object is true (1) + when the router is an area border router." + REFERENCE + "OSPF Version 2, Section 3, Splitting the AS into + Areas" + ::= { ospfv3GeneralGroup 4 } + + ospfv3ASBdrRtrStatus OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A flag to note whether this router is + configured as an Autonomous System border router. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Section 3.3, Classification of + routers" + ::= { ospfv3GeneralGroup 5 } + + ospfv3AsScopeLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of AS-scope (e.g., AS-External) link state + advertisements in the link state database." + ::= { ospfv3GeneralGroup 6 } + + ospfv3AsScopeLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the LS checksums of + the AS-scoped link state advertisements + contained in the link state database. This sum + can be used to determine if there has been a + change in a router's link state database or + to compare the link state database of two + routers." + ::= { ospfv3GeneralGroup 7 } + + ospfv3OriginateNewLsas OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of new link state advertisements + that have been originated. This number is + incremented each time the router originates a new + LSA. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3GeneralGroup 8 } + + ospfv3RxNewLsas OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of link state advertisements + received that are determined to be new + instantiations. This number does not include + newer instantiations of self-originated link state + advertisements. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3GeneralGroup 9 } + + ospfv3ExtLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "The number of External (LS type 0x4005) in the + link state database." + ::= { ospfv3GeneralGroup 10 } + + ospfv3ExtAreaLsdbLimit OBJECT-TYPE + SYNTAX Integer32 (-1..'7FFFFFFF'h) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The maximum number of non-default + AS-external-LSA entries that can be stored in the + link state database. If the value is -1, then + there is no limit. + + When the number of non-default AS-external-LSAs + in a router's link state database reaches + ospfv3ExtAreaLsdbLimit, the router enters Overflow + state. The router never holds more than + ospfv3ExtAreaLsdbLimit non-default AS-external-LSAs + in its database. ospfv3ExtAreaLsdbLimit MUST be set + identically in all routers attached to the OSPFv3 + backbone and/or any regular OSPFv3 area (i.e., + OSPFv3 stub areas and not-so-stubby-areas (NSSAs) + are excluded). + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + ::= { ospfv3GeneralGroup 11 } + + ospfv3ExitOverflowInterval OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The number of seconds that, after entering + Overflow state, a router will attempt to leave + Overflow state. This allows the router to again + originate non-default, AS-External-LSAs. When + set to 0, the router will not leave Overflow + state until restarted. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + + ::= { ospfv3GeneralGroup 12 } + + ospfv3DemandExtensions OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The router's support for demand circuits. + The value of this object is true (1) when + demand circuits are supported. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2; Extending OSPF to Support Demand + Circuits" + ::= { ospfv3GeneralGroup 13 } + + ospfv3ReferenceBandwidth OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "kilobits per second" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Reference bandwidth in kilobits per second for + calculating default interface metrics. The + default value is 100,000 KBPS (100 MBPS). + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Version 2, Appendix C.3, Router interface + parameters" + DEFVAL { 100000 } + ::= { ospfv3GeneralGroup 14 } + + ospfv3RestartSupport OBJECT-TYPE + SYNTAX INTEGER { none(1), + plannedOnly(2), + plannedAndUnplanned(3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The router's support for OSPF graceful restart. + Options include no restart support, only planned + + restarts, or both planned and unplanned restarts. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE "Graceful OSPF Restart, Appendix B.1, Global + Parameters (Minimum subset)" + ::= { ospfv3GeneralGroup 15 } + + ospfv3RestartInterval OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Configured OSPF graceful restart timeout interval. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + REFERENCE "Graceful OSPF Restart, Appendix B.1, Global + Parameters (Minimum subset)" + DEFVAL { 120 } + ::= { ospfv3GeneralGroup 16 } + + ospfv3RestartStrictLsaChecking OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates if strict LSA checking is enabled for + graceful restart. A value of true (1) indicates that + strict LSA checking is enabled. + + This object is persistent, and when written, + the entity SHOULD save the change to non-volatile + storage." + REFERENCE "Graceful OSPF Restart, Appendix B.2, Global + Parameters (Optional)" + DEFVAL { true } + ::= { ospfv3GeneralGroup 17 } + + ospfv3RestartStatus OBJECT-TYPE + SYNTAX INTEGER { notRestarting(1), + plannedRestart(2), + unplannedRestart(3) + } + MAX-ACCESS read-only + + STATUS current + DESCRIPTION + "The current status of OSPF graceful restart capability." + ::= { ospfv3GeneralGroup 18 } + + ospfv3RestartAge OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in the current OSPF graceful restart + interval." + ::= { ospfv3GeneralGroup 19 } + + ospfv3RestartExitReason OBJECT-TYPE + SYNTAX INTEGER { none(1), + inProgress(2), + completed(3), + timedOut(4), + topologyChanged(5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Describes the outcome of the last attempt at a + graceful restart. + + none: no restart has yet been attempted. + inProgress: a restart attempt is currently underway. + completed: the last restart completed successfully. + timedOut: the last restart timed out. + topologyChanged: the last restart was aborted due to + a topology change." + ::= { ospfv3GeneralGroup 20 } + + ospfv3NotificationEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object provides a coarse level of control + over the generation of OSPFv3 notifications. + + If this object is set to true (1), then it enables + the generation of OSPFv3 notifications. If it is + set to false (2), these notifications are not + generated. + + This object is persistent, and when written, the + entity SHOULD save the change to non-volatile + storage." + ::= { ospfv3GeneralGroup 21 } + + ospfv3StubRouterSupport OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The router's support for stub router functionality. An + object value of true (1) indicates that stub router + functionality is supported." + REFERENCE + "OSPF Stub Router Advertisement" + ::= { ospfv3GeneralGroup 22 } + + ospfv3StubRouterAdvertisement OBJECT-TYPE + SYNTAX INTEGER { + doNotAdvertise(1), + advertise(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object controls the advertisement of + stub LSAs by the router. The value + doNotAdvertise (1) will result in the advertisement + of standard LSAs and is the default value. + + This object is persistent, and when written, + the entity SHOULD save the change to non-volatile + storage." + REFERENCE + "OSPF Stub Router Advertisement, Section 2, Proposed + Solution" + DEFVAL { doNotAdvertise } + ::= { ospfv3GeneralGroup 23 } + + ospfv3DiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which any one of this MIB's counters suffered + a discontinuity. + + + If no such discontinuities have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." + ::= { ospfv3GeneralGroup 24 } + + ospfv3RestartTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion + at which the ospfv3RestartExitReason was updated." + ::= { ospfv3GeneralGroup 25 } + + -- The OSPFv3 Area Data Structure contains information + -- regarding the various areas. The interfaces and + -- virtual links are configured as part of these areas. + -- Area 0, by definition, is the backbone area. + + ospfv3AreaTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3AreaEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information describing the configured + parameters and cumulative statistics of the router's + attached areas. The interfaces and + virtual links are configured as part of these areas. + Area 0, by definition, is the backbone area." + REFERENCE + "OSPF Version 2, Section 6, The Area Data + Structure" + ::= { ospfv3Objects 2 } + + ospfv3AreaEntry OBJECT-TYPE + SYNTAX Ospfv3AreaEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information describing the configured + parameters and cumulative statistics of one of the + router's attached areas. + + The information in this table is persistent, + and when written, the entity SHOULD save the a + change to non-volatile storage." + INDEX { ospfv3AreaId } + ::= { ospfv3AreaTable 1 } + + Ospfv3AreaEntry ::= SEQUENCE { + ospfv3AreaId + Ospfv3AreaIdTC, + ospfv3AreaImportAsExtern + INTEGER, + ospfv3AreaSpfRuns + Counter32, + ospfv3AreaBdrRtrCount + Gauge32, + ospfv3AreaAsBdrRtrCount + Gauge32, + ospfv3AreaScopeLsaCount + Gauge32, + ospfv3AreaScopeLsaCksumSum + Unsigned32, + ospfv3AreaSummary + INTEGER, + ospfv3AreaRowStatus + RowStatus, + ospfv3AreaStubMetric + BigMetric, + ospfv3AreaNssaTranslatorRole + INTEGER, + ospfv3AreaNssaTranslatorState + INTEGER, + ospfv3AreaNssaTranslatorStabInterval + Unsigned32, + ospfv3AreaNssaTranslatorEvents + Counter32, + ospfv3AreaStubMetricType + INTEGER, + ospfv3AreaTEEnabled + TruthValue + } + + ospfv3AreaId OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A 32-bit unsigned integer uniquely identifying an area. + Area ID 0 is used for the OSPFv3 backbone." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + ::= { ospfv3AreaEntry 1 } + + + + + ospfv3AreaImportAsExtern OBJECT-TYPE + SYNTAX INTEGER { + importExternal(1), -- normal area + importNoExternal(2), -- stub area + importNssa(3) -- not-so-stubby-area + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether an area is a stub area, NSSA, or + standard area. AS-scope LSAs are not imported into stub + areas or NSSAs. NSSAs import AS-External data as NSSA + LSAs that have Area-scope." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + DEFVAL { importExternal } + ::= { ospfv3AreaEntry 2 } + + ospfv3AreaSpfRuns OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times that the intra-area route + table has been calculated using this area's + link state database. This is typically done + using Dijkstra's algorithm. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3AreaEntry 3 } + + ospfv3AreaBdrRtrCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of area border routers + reachable within this area. This is initially zero, + and is calculated in each Shortest Path First (SPF) + pass." + DEFVAL { 0 } + ::= { ospfv3AreaEntry 4 } + + + + + ospfv3AreaAsBdrRtrCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of Autonomous System border + routers reachable within this area. This is + initially zero, and is calculated in each SPF + pass." + DEFVAL { 0 } + ::= { ospfv3AreaEntry 5 } + + ospfv3AreaScopeLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of Area-scope link state + advertisements in this area's link state + database." + DEFVAL { 0 } + ::= { ospfv3AreaEntry 6 } + + ospfv3AreaScopeLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the Area-scope link state + advertisements' LS checksums contained in this + area's link state database. The sum can be used + to determine if there has been a change in a + router's link state database or to compare the + link state database of two routers." + ::= { ospfv3AreaEntry 7 } + + ospfv3AreaSummary OBJECT-TYPE + SYNTAX INTEGER { + noAreaSummary(1), + sendAreaSummary(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The variable ospfv3AreaSummary controls the + import of Inter-Area LSAs into stub and + NSSA areas. It has no effect on other areas. + + + If it is noAreaSummary, the router will neither + originate nor propagate Inter-Area LSAs into the + stub or NSSA area. It will only advertise a + default route. + + If it is sendAreaSummary, the router will both + summarize and propagate Inter-Area LSAs." + DEFVAL { sendAreaSummary } + ::= { ospfv3AreaEntry 8 } + + ospfv3AreaRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3AreaEntry 9 } + + ospfv3AreaStubMetric OBJECT-TYPE + SYNTAX BigMetric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric value advertised for the default route + into stub and NSSA areas. By default, this equals the + least metric among the interfaces to other areas." + ::= { ospfv3AreaEntry 10 } + + ospfv3AreaNssaTranslatorRole OBJECT-TYPE + SYNTAX INTEGER { always(1), candidate(2) } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates an NSSA border router's policy to + perform NSSA translation of NSSA-LSAs into + AS-External-LSAs." + DEFVAL { candidate } + ::= { ospfv3AreaEntry 11 } + + ospfv3AreaNssaTranslatorState OBJECT-TYPE + SYNTAX INTEGER { + enabled(1), + + elected(2), + disabled(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates if and how an NSSA border router is + performing NSSA translation of NSSA-LSAs into + AS-External-LSAs. When this object is set to + 'enabled', the NSSA border router's + ospfv3AreaNssaTranslatorRole has been set to 'always'. + When this object is set to 'elected', a candidate + NSSA border router is translating NSSA-LSAs into + AS-External-LSAs. When this object is set to + 'disabled', a candidate NSSA Border router is NOT + translating NSSA-LSAs into AS-External-LSAs." + ::= { ospfv3AreaEntry 12 } + + ospfv3AreaNssaTranslatorStabInterval OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The stability interval defined as the number of + seconds after an elected translator determines its + services are no longer required that it should + continue to perform its translation duties." + DEFVAL { 40 } + ::= { ospfv3AreaEntry 13 } + + ospfv3AreaNssaTranslatorEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the number of Translator state changes + that have occurred since the last start-up of the + OSPFv3 routing process. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3AreaEntry 14 } + + + + + ospfv3AreaStubMetricType OBJECT-TYPE + SYNTAX INTEGER { + ospfv3Metric(1), -- OSPF Metric + comparableCost(2), -- external type 1 + nonComparable(3) -- external type 2 + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This variable assigns the type of metric + advertised as a default route." + DEFVAL { ospfv3Metric } + ::= { ospfv3AreaEntry 15 } + + ospfv3AreaTEEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether or not traffic engineering + is enabled in the area. The object is set + to the value true (1) to enable traffic engineering. + Traffic engineering is disabled by default." + DEFVAL { false } + ::= { ospfv3AreaEntry 16 } + + -- OSPFv3 AS-Scope Link State Database + + ospfv3AsLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3AsLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Process's AS-scope link state database + (LSDB). The LSDB contains the AS-scope link state + advertisements from throughout the areas that the + device is attached to." + ::= { ospfv3Objects 3 } + + ospfv3AsLsdbEntry OBJECT-TYPE + SYNTAX Ospfv3AsLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single AS-scope link state advertisement." + INDEX { ospfv3AsLsdbType, + ospfv3AsLsdbRouterId, + ospfv3AsLsdbLsid } + + ::= { ospfv3AsLsdbTable 1 } + + Ospfv3AsLsdbEntry ::= SEQUENCE { + ospfv3AsLsdbType + Unsigned32, + ospfv3AsLsdbRouterId + Ospfv3RouterIdTC, + ospfv3AsLsdbLsid + Ospfv3LsIdTC, + ospfv3AsLsdbSequence + Ospfv3LsaSequenceTC, + ospfv3AsLsdbAge + Ospfv3LsaAgeTC, + ospfv3AsLsdbChecksum + Integer32, + ospfv3AsLsdbAdvertisement + OCTET STRING, + ospfv3AsLsdbTypeKnown + TruthValue + } + + ospfv3AsLsdbType OBJECT-TYPE + SYNTAX Unsigned32(0..'FFFFFFFF'h) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format. AS-scope LSAs not recognized + by the router may be stored in the database." + ::= { ospfv3AsLsdbEntry 1 } + + ospfv3AsLsdbRouterId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1, Global parameters" + ::= { ospfv3AsLsdbEntry 2 } + + ospfv3AsLsdbLsid OBJECT-TYPE + SYNTAX Ospfv3LsIdTC + MAX-ACCESS not-accessible + STATUS current + + + DESCRIPTION + "The Link State ID is an LS type-specific field + containing a unique identifier; + it identifies the piece of the routing domain + that is being described by the advertisement. + In contrast to OSPFv2, the LSID has no + addressing semantics." + ::= { ospfv3AsLsdbEntry 3 } + + -- Note that the OSPF sequence number is a 32-bit signed + -- integer. It starts with the value '80000001'h + -- or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + -- Thus, a typical sequence number will be very negative. + + ospfv3AsLsdbSequence OBJECT-TYPE + SYNTAX Ospfv3LsaSequenceTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It is used to detect old and duplicate + link state advertisements. The space of + sequence numbers is linearly ordered. The + larger the sequence number, the more recent the + advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6, LS sequence + number" + ::= { ospfv3AsLsdbEntry 4 } + + ospfv3AsLsdbAge OBJECT-TYPE + SYNTAX Ospfv3LsaAgeTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds. The high-order bit + of the LS age field is considered the DoNotAge + bit for support of on-demand circuits." + REFERENCE + "OSPF Version 2, Section 12.1.1, LS age; + Extending OSPF to Support Demand Circuits, + Section 2.2, The LS age field." + ::= { ospfv3AsLsdbEntry 5 } + + + + + ospfv3AsLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly + referred to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7, LS checksum" + ::= { ospfv3AsLsdbEntry 6 } + + ospfv3AsLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + ::= { ospfv3AsLsdbEntry 7 } + + ospfv3AsLsdbTypeKnown OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value true (1) indicates that the LSA type + is recognized by this router." + ::= { ospfv3AsLsdbEntry 8 } + + -- OSPFv3 Area-Scope Link State Database + + ospfv3AreaLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3AreaLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Process's Area-scope LSDB. + The LSDB contains the Area-scope link state + advertisements from throughout the area that the + device is attached to." + ::= { ospfv3Objects 4 } + + + ospfv3AreaLsdbEntry OBJECT-TYPE + SYNTAX Ospfv3AreaLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single Area-scope link state advertisement." + INDEX { ospfv3AreaLsdbAreaId, + ospfv3AreaLsdbType, + ospfv3AreaLsdbRouterId, + ospfv3AreaLsdbLsid } + ::= { ospfv3AreaLsdbTable 1 } + + Ospfv3AreaLsdbEntry ::= SEQUENCE { + ospfv3AreaLsdbAreaId + Ospfv3AreaIdTC, + ospfv3AreaLsdbType + Unsigned32, + ospfv3AreaLsdbRouterId + Ospfv3RouterIdTC, + ospfv3AreaLsdbLsid + Ospfv3LsIdTC, + ospfv3AreaLsdbSequence + Ospfv3LsaSequenceTC, + ospfv3AreaLsdbAge + Ospfv3LsaAgeTC, + ospfv3AreaLsdbChecksum + Integer32, + ospfv3AreaLsdbAdvertisement + OCTET STRING, + ospfv3AreaLsdbTypeKnown + TruthValue + } + + ospfv3AreaLsdbAreaId OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit identifier of the Area from which the + LSA was received." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + ::= { ospfv3AreaLsdbEntry 1 } + + ospfv3AreaLsdbType OBJECT-TYPE + SYNTAX Unsigned32(0..'FFFFFFFF'h) + MAX-ACCESS not-accessible + STATUS current + + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format. Area-scope LSAs unrecognized + by the router are also stored in this database." + ::= { ospfv3AreaLsdbEntry 2 } + + ospfv3AreaLsdbRouterId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1, Global parameters" + ::= { ospfv3AreaLsdbEntry 3 } + + ospfv3AreaLsdbLsid OBJECT-TYPE + SYNTAX Ospfv3LsIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS type-specific field + containing a unique identifier; + it identifies the piece of the routing domain + that is being described by the advertisement. + In contrast to OSPFv2, the LSID has no + addressing semantics." + ::= { ospfv3AreaLsdbEntry 4 } + + -- Note that the OSPF sequence number is a 32-bit signed + -- integer. It starts with the value '80000001'h + -- or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + -- Thus, a typical sequence number will be very negative. + + ospfv3AreaLsdbSequence OBJECT-TYPE + SYNTAX Ospfv3LsaSequenceTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It is used to detect old and + duplicate link state advertisements. The space + of sequence numbers is linearly ordered. The + larger the sequence number, the more recent the + advertisement." + + + REFERENCE + "OSPF Version 2, Section 12.1.6, LS sequence + number" + ::= { ospfv3AreaLsdbEntry 5 } + + ospfv3AreaLsdbAge OBJECT-TYPE + SYNTAX Ospfv3LsaAgeTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds. The high-order bit + of the LS age field is considered the DoNotAge + bit for support of on-demand circuits." + REFERENCE + "OSPF Version 2, Section 12.1.1, LS age; + Extending OSPF to Support Demand Circuits, + Section 2.2, The LS age field." + ::= { ospfv3AreaLsdbEntry 6 } + + ospfv3AreaLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly + referred to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7, LS checksum" + ::= { ospfv3AreaLsdbEntry 7 } + + ospfv3AreaLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + ::= { ospfv3AreaLsdbEntry 8 } + + + + ospfv3AreaLsdbTypeKnown OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value true (1) indicates that the LSA type is + recognized by this router." + ::= { ospfv3AreaLsdbEntry 9 } + + -- OSPFv3 Link-Scope Link State Database, for non-virtual interfaces + + ospfv3LinkLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3LinkLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Process's Link-scope LSDB for non-virtual + interfaces. The LSDB contains the Link-scope link + state advertisements from the interfaces that the + device is attached to." + ::= { ospfv3Objects 5 } + + ospfv3LinkLsdbEntry OBJECT-TYPE + SYNTAX Ospfv3LinkLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single Link-scope link state advertisement." + INDEX { ospfv3LinkLsdbIfIndex, + ospfv3LinkLsdbIfInstId, + ospfv3LinkLsdbType, + ospfv3LinkLsdbRouterId, + ospfv3LinkLsdbLsid } + ::= { ospfv3LinkLsdbTable 1 } + + Ospfv3LinkLsdbEntry ::= SEQUENCE { + ospfv3LinkLsdbIfIndex + InterfaceIndex, + ospfv3LinkLsdbIfInstId + Ospfv3IfInstIdTC, + ospfv3LinkLsdbType + Unsigned32, + ospfv3LinkLsdbRouterId + Ospfv3RouterIdTC, + ospfv3LinkLsdbLsid + Ospfv3LsIdTC, + ospfv3LinkLsdbSequence + Ospfv3LsaSequenceTC, + + ospfv3LinkLsdbAge + Ospfv3LsaAgeTC, + ospfv3LinkLsdbChecksum + Integer32, + ospfv3LinkLsdbAdvertisement + OCTET STRING, + ospfv3LinkLsdbTypeKnown + TruthValue + } + + ospfv3LinkLsdbIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The identifier of the link from which the LSA + was received." + ::= { ospfv3LinkLsdbEntry 1 } + + ospfv3LinkLsdbIfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The identifier of the interface instance from + which the LSA was received." + ::= { ospfv3LinkLsdbEntry 2 } + + ospfv3LinkLsdbType OBJECT-TYPE + SYNTAX Unsigned32(0..'FFFFFFFF'h) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format. Link-scope LSAs unrecognized + by the router are also stored in this database." + ::= { ospfv3LinkLsdbEntry 3 } + + ospfv3LinkLsdbRouterId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1, Global parameters" + + ::= { ospfv3LinkLsdbEntry 4 } + + ospfv3LinkLsdbLsid OBJECT-TYPE + SYNTAX Ospfv3LsIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS type-specific field + containing a unique identifier; + it identifies the piece of the routing domain + that is being described by the advertisement. + In contrast to OSPFv2, the LSID has no + addressing semantics. However, in OSPFv3 + the Link State ID always contains the flooding + scope of the LSA." + ::= { ospfv3LinkLsdbEntry 5 } + + -- Note that the OSPF sequence number is a 32-bit signed + -- integer. It starts with the value '80000001'h + -- or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + -- Thus, a typical sequence number will be very negative. + + ospfv3LinkLsdbSequence OBJECT-TYPE + SYNTAX Ospfv3LsaSequenceTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It is used to detect old and duplicate + link state advertisements. The space of + sequence numbers is linearly ordered. The + larger the sequence number, the more recent the + advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6, LS sequence + number" + ::= { ospfv3LinkLsdbEntry 6 } + + ospfv3LinkLsdbAge OBJECT-TYPE + SYNTAX Ospfv3LsaAgeTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds. The high-order bit + of the LS age field is considered the DoNotAge + bit for support of on-demand circuits." + + REFERENCE + "OSPF Version 2, Section 12.1.1, LS age; + Extending OSPF to Support Demand Circuits, + Section 2.2, The LS age field." + ::= { ospfv3LinkLsdbEntry 7 } + + ospfv3LinkLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly + referred to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7, LS checksum" + ::= { ospfv3LinkLsdbEntry 8 } + + ospfv3LinkLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + ::= { ospfv3LinkLsdbEntry 9 } + + ospfv3LinkLsdbTypeKnown OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value true (1) indicates that the LSA type is + recognized by this router." + ::= { ospfv3LinkLsdbEntry 10 } + + -- OSPF Host Table + + ospfv3HostTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3HostEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + "The Host/Metric Table indicates what hosts are + directly attached to the router and their + corresponding metrics." + REFERENCE + "OSPF Version 2, Appendix C.7, Host route + parameters" + ::= { ospfv3Objects 6 } + + ospfv3HostEntry OBJECT-TYPE + SYNTAX Ospfv3HostEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A metric to be advertised when a given host is + reachable. + + The information in this table is persistent, and + when written, the entity SHOULD save the change + to non-volatile storage." + INDEX { ospfv3HostAddressType, + ospfv3HostAddress } + ::= { ospfv3HostTable 1 } + + Ospfv3HostEntry ::= SEQUENCE { + ospfv3HostAddressType + InetAddressType, + ospfv3HostAddress + InetAddress, + ospfv3HostMetric + Metric, + ospfv3HostRowStatus + RowStatus, + ospfv3HostAreaID + Ospfv3AreaIdTC + } + + ospfv3HostAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The address type of ospfv3HostAddress. Only IPv6 + global address type is expected." + REFERENCE + "OSPF Version 2, Appendix C.7, Host route + parameters" + ::= { ospfv3HostEntry 1 } + + + ospfv3HostAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IPv6 address of the host. Must be an + IPv6 global address." + REFERENCE + "OSPF Version 2, Appendix C.7, Host route + parameters" + ::= { ospfv3HostEntry 2 } + + ospfv3HostMetric OBJECT-TYPE + SYNTAX Metric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric to be advertised." + REFERENCE + "OSPF Version 2, Appendix C.7, Host route + parameters" + ::= { ospfv3HostEntry 3 } + + ospfv3HostRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3HostEntry 4 } + + ospfv3HostAreaID OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The Area the host entry is to be found within. + By default, the area for the subsuming OSPFv3 + interface, or Area 0 if there is no subsuming + interface." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + + ::= { ospfv3HostEntry 5 } + + -- OSPFv3 Interface Table + + ospfv3IfTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3IfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Interface Table describes the + interfaces from the viewpoint of OSPFv3." + REFERENCE + "OSPF for IPv6, Appendix C.3, Router Interface + Parameters" + ::= { ospfv3Objects 7 } + + ospfv3IfEntry OBJECT-TYPE + SYNTAX Ospfv3IfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Interface Entry describes one + interface from the viewpoint of OSPFv3. + + The information in this table is persistent, + and when written, the entity SHOULD save the + change to non-volatile storage." + INDEX { ospfv3IfIndex, + ospfv3IfInstId } + ::= { ospfv3IfTable 1 } + + Ospfv3IfEntry ::= SEQUENCE { + ospfv3IfIndex + InterfaceIndex, + ospfv3IfInstId + Ospfv3IfInstIdTC, + ospfv3IfAreaId + Ospfv3AreaIdTC, + ospfv3IfType + INTEGER, + ospfv3IfAdminStatus + Status, + ospfv3IfRtrPriority + DesignatedRouterPriority, + ospfv3IfTransitDelay + Ospfv3UpToRefreshIntervalTC, + ospfv3IfRetransInterval + Ospfv3UpToRefreshIntervalTC, + + ospfv3IfHelloInterval + HelloRange, + ospfv3IfRtrDeadInterval + Ospfv3DeadIntervalRangeTC, + ospfv3IfPollInterval + Unsigned32, + ospfv3IfState + INTEGER, + ospfv3IfDesignatedRouter + Ospfv3RouterIdTC, + ospfv3IfBackupDesignatedRouter + Ospfv3RouterIdTC, + ospfv3IfEvents + Counter32, + ospfv3IfRowStatus + RowStatus, + ospfv3IfDemand + TruthValue, + ospfv3IfMetricValue + Metric, + ospfv3IfLinkScopeLsaCount + Gauge32, + ospfv3IfLinkLsaCksumSum + Unsigned32, + ospfv3IfDemandNbrProbe + TruthValue, + ospfv3IfDemandNbrProbeRetransLimit + Unsigned32, + ospfv3IfDemandNbrProbeInterval + Unsigned32, + ospfv3IfTEDisabled + TruthValue, + ospfv3IfLinkLSASuppression + TruthValue + } + + ospfv3IfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface index of this OSPFv3 interface. + It corresponds to the interface index of the + IPv6 interface on which OSPFv3 is configured." + ::= { ospfv3IfEntry 1 } + + + + + ospfv3IfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Enables multiple interface instances of OSPFv3 + to be run over a single link. Each interface + instance would be assigned a separate ID. This ID + has local link significance only." + ::= { ospfv3IfEntry 2 } + + ospfv3IfAreaId OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying the area + to which the interface connects. Area ID + 0 is used for the OSPFv3 backbone." + DEFVAL { 0 } + ::= { ospfv3IfEntry 3 } + + ospfv3IfType OBJECT-TYPE + SYNTAX INTEGER { + broadcast(1), + nbma(2), + pointToPoint(3), + pointToMultipoint(5) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The OSPFv3 interface type." + ::= { ospfv3IfEntry 4 } + + ospfv3IfAdminStatus OBJECT-TYPE + SYNTAX Status + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The OSPFv3 interface's administrative status. + The value formed on the interface; the interface + will be advertised as an internal route to some + area. The value 'disabled' denotes that the + interface is external to OSPFv3. + + + + + Note that a value of 'disabled' for the object + ospfv3AdminStatus will override a value of + 'enabled' for the interface." + DEFVAL { enabled } + ::= { ospfv3IfEntry 5 } + + ospfv3IfRtrPriority OBJECT-TYPE + SYNTAX DesignatedRouterPriority + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The priority of this interface. Used in + multi-access networks, this field is used in + the designated-router election algorithm. The + value 0 signifies that the router is not + eligible to become the Designated Router on this + particular network. In the event of a tie in + this value, routers will use their Router ID as + a tie breaker." + DEFVAL { 1 } + ::= { ospfv3IfEntry 6 } + + ospfv3IfTransitDelay OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The estimated number of seconds it takes to transmit + a Link State Update packet over this interface. LSAs + contained in the update packet must have their age + incremented by this amount before transmission. This + value should take into account the transmission and + propagation delays of the interface." + REFERENCE + "OSPF for IPv6, Appendix C.3, Router Interface + Parameters." + DEFVAL { 1 } + ::= { ospfv3IfEntry 7 } + + ospfv3IfRetransInterval OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds between link state + advertisement retransmissions for adjacencies + + belonging to this interface. This value is + also used when retransmitting database + description and Link State Request packets." + DEFVAL { 5 } + ::= { ospfv3IfEntry 8 } + + ospfv3IfHelloInterval OBJECT-TYPE + SYNTAX HelloRange + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The length of time, in seconds, between the + Hello packets that the router sends on the + interface. This value must be the same for all + routers attached to a common network." + DEFVAL { 10 } + ::= { ospfv3IfEntry 9 } + + ospfv3IfRtrDeadInterval OBJECT-TYPE + SYNTAX Ospfv3DeadIntervalRangeTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds that a router's Hello + packets have not been seen before its + neighbors declare the router down on the interface. + This should be some multiple of the Hello interval. + This value must be the same for all routers attached + to a common network." + DEFVAL { 40 } + ::= { ospfv3IfEntry 10 } + + ospfv3IfPollInterval OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The larger time interval, in seconds, between + the Hello packets sent to an inactive, + non-broadcast multi-access neighbor." + DEFVAL { 120 } + ::= { ospfv3IfEntry 11 } + + + + + ospfv3IfState OBJECT-TYPE + SYNTAX INTEGER { + down(1), + loopback(2), + waiting(3), + pointToPoint(4), + designatedRouter(5), + backupDesignatedRouter(6), + otherDesignatedRouter(7), + standby(8) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The OSPFv3 interface state. An interface may be + in standby state if there are multiple interfaces + on the link and another interface is active. The + interface may be in Down state if the underlying + IPv6 interface is down or if the admin status is + 'disabled' either globally or for the interface." + ::= { ospfv3IfEntry 12 } + + ospfv3IfDesignatedRouter OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Router ID of the Designated Router." + ::= { ospfv3IfEntry 13 } + + ospfv3IfBackupDesignatedRouter OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Router ID of the Backup Designated + Router." + ::= { ospfv3IfEntry 14 } + + ospfv3IfEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this OSPFv3 interface has + changed its state or an error has occurred. + + + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3IfEntry 15 } + + ospfv3IfRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3IfEntry 16 } + + ospfv3IfDemand OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether Demand OSPFv3 procedures + (Hello suppression to FULL neighbors and + setting the DoNotAge flag on propagated LSAs) + should be performed on this interface." + DEFVAL { false } + ::= { ospfv3IfEntry 17 } + + ospfv3IfMetricValue OBJECT-TYPE + SYNTAX Metric + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The metric assigned to this interface. + The default value of the metric is + 'Reference Bandwidth / ifSpeed'. The value + of the reference bandwidth can be set + in the ospfv3ReferenceBandwidth object." + ::= { ospfv3IfEntry 18 } + + ospfv3IfLinkScopeLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + + DESCRIPTION + "The total number of Link-scope link state + advertisements in this link's link state + database." + ::= { ospfv3IfEntry 19 } + + ospfv3IfLinkLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the Link-scope link state + advertisements' LS checksums contained in this + link's link state database. The sum can be used + to determine if there has been a change in a + router's link state database or to compare the + link state database of two routers." + ::= { ospfv3IfEntry 20 } + + ospfv3IfDemandNbrProbe OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether or not neighbor probing is + enabled to determine whether or not the neighbor + is inactive. Neighbor probing is disabled by + default." + DEFVAL { false } + ::= { ospfv3IfEntry 21 } + + ospfv3IfDemandNbrProbeRetransLimit OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of consecutive LSA retransmissions before + the neighbor is deemed inactive and the neighbor + adjacency is brought down." + DEFVAL { 10 } + ::= { ospfv3IfEntry 22} + + ospfv3IfDemandNbrProbeInterval OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + + + DESCRIPTION + "Defines how often the neighbor will be probed." + DEFVAL { 120 } + ::= { ospfv3IfEntry 23 } + + ospfv3IfTEDisabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Indicates whether or not traffic engineering + is disabled on the interface when traffic + engineering is enabled in the area where the + interface is attached. The object is set + to the value true (1) to disable traffic engineering + on the interface. Traffic engineering is enabled + by default on the interface when traffic engineering + is enabled in the area where the interface is + attached." + DEFVAL { false } + ::= { ospfv3IfEntry 24 } + + ospfv3IfLinkLSASuppression OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Specifies whether or not link LSA origination is + suppressed for broadcast or NBMA interface types. + The object is set to value true (1) to suppress + the origination." + REFERENCE + "OSPF for IPv6, Appendix C.3, Router Interface + Parameters" + DEFVAL { false } + ::= { ospfv3IfEntry 25 } + + -- OSPFv3 Virtual Interface Table + + ospfv3VirtIfTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3VirtIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about this router's virtual + interfaces that the OSPFv3 Process is configured + to carry on." + + + REFERENCE + "OSPF for IPv6, Appendix C.4, Virtual Link + Parameters" + ::= { ospfv3Objects 8 } + + ospfv3VirtIfEntry OBJECT-TYPE + SYNTAX Ospfv3VirtIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a single virtual interface. + + The information in this table is persistent, + and when written, the entity SHOULD save the + change to non-volatile storage." + INDEX { ospfv3VirtIfAreaId, + ospfv3VirtIfNeighbor } + ::= { ospfv3VirtIfTable 1 } + + Ospfv3VirtIfEntry ::= SEQUENCE { + ospfv3VirtIfAreaId + Ospfv3AreaIdTC, + ospfv3VirtIfNeighbor + Ospfv3RouterIdTC, + ospfv3VirtIfIndex + InterfaceIndex, + ospfv3VirtIfInstId + Ospfv3IfInstIdTC, + ospfv3VirtIfTransitDelay + Ospfv3UpToRefreshIntervalTC, + ospfv3VirtIfRetransInterval + Ospfv3UpToRefreshIntervalTC, + ospfv3VirtIfHelloInterval + HelloRange, + ospfv3VirtIfRtrDeadInterval + Ospfv3DeadIntervalRangeTC, + ospfv3VirtIfState + INTEGER, + ospfv3VirtIfEvents + Counter32, + ospfv3VirtIfRowStatus + RowStatus, + ospfv3VirtIfLinkScopeLsaCount + Gauge32, + ospfv3VirtIfLinkLsaCksumSum + Unsigned32 + } + + + ospfv3VirtIfAreaId OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The transit area that the virtual link + traverses. By definition, this is not + Area 0." + ::= { ospfv3VirtIfEntry 1 } + + ospfv3VirtIfNeighbor OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Router ID of the virtual neighbor." + ::= { ospfv3VirtIfEntry 2 } + + ospfv3VirtIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local interface index assigned by the + OSPFv3 Process to this OSPFv3 virtual interface. + It is advertised in Hellos sent over the virtual + link and in the router's router-LSAs." + ::= { ospfv3VirtIfEntry 3 } + + ospfv3VirtIfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local Interface Instance ID assigned by the + OSPFv3 Process to this OSPFv3 virtual interface." + ::= { ospfv3VirtIfEntry 4 } + + ospfv3VirtIfTransitDelay OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The estimated number of seconds it takes to + transmit a Link State Update packet over this + interface." + DEFVAL { 1 } + + ::= { ospfv3VirtIfEntry 5 } + + ospfv3VirtIfRetransInterval OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds between link state + advertisement retransmissions for adjacencies + belonging to this interface. This value is + also used when retransmitting database + description and Link State Request packets. This + value should be well over the expected + round-trip time." + DEFVAL { 5 } + ::= { ospfv3VirtIfEntry 6 } + + ospfv3VirtIfHelloInterval OBJECT-TYPE + SYNTAX HelloRange + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The length of time, in seconds, between the + Hello packets that the router sends on the + interface. This value must be the same for the + virtual neighbor." + DEFVAL { 10 } + ::= { ospfv3VirtIfEntry 7 } + + ospfv3VirtIfRtrDeadInterval OBJECT-TYPE + SYNTAX Ospfv3DeadIntervalRangeTC + UNITS "seconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The number of seconds that a router's Hello + packets have not been seen before its + neighbors declare the router down. This should + be some multiple of the Hello interval. This + value must be the same for the virtual + neighbor." + DEFVAL { 60 } + ::= { ospfv3VirtIfEntry 8 } + + + + + ospfv3VirtIfState OBJECT-TYPE + SYNTAX INTEGER { + down(1), + pointToPoint(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "OSPF virtual interface states. The same encoding + as the ospfV3IfTable is used." + ::= { ospfv3VirtIfEntry 9 } + + ospfv3VirtIfEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of state changes or error events on + this virtual link. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3VirtIfEntry 10 } + + ospfv3VirtIfRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3VirtIfEntry 11 } + + ospfv3VirtIfLinkScopeLsaCount OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of Link-scope link state + advertisements in this virtual link's link state + database." + + ::= { ospfv3VirtIfEntry 12 } + + ospfv3VirtIfLinkLsaCksumSum OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The 32-bit unsigned sum of the Link-scope link state + advertisements' LS checksums contained in this + virtual link's link state database. The sum can be used + to determine if there has been a change in a + router's link state database or to compare the + link state database of two routers." + ::= { ospfv3VirtIfEntry 13 } + + -- OSPFv3 Neighbor Table + + ospfv3NbrTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3NbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table describing all neighbors in the + locality of the OSPFv3 router." + REFERENCE + "OSPF Version 2, Section 10, The Neighbor Data + Structure" + ::= { ospfv3Objects 9 } + + ospfv3NbrEntry OBJECT-TYPE + SYNTAX Ospfv3NbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The information regarding a single neighbor." + REFERENCE + "OSPF Version 2, Section 10, The Neighbor Data + Structure" + INDEX { ospfv3NbrIfIndex, + ospfv3NbrIfInstId, + ospfv3NbrRtrId } + ::= { ospfv3NbrTable 1 } + + Ospfv3NbrEntry ::= SEQUENCE { + ospfv3NbrIfIndex + InterfaceIndex, + ospfv3NbrIfInstId + Ospfv3IfInstIdTC, + + ospfv3NbrRtrId + Ospfv3RouterIdTC, + ospfv3NbrAddressType + InetAddressType, + ospfv3NbrAddress + InetAddress, + ospfv3NbrOptions + Integer32, + ospfv3NbrPriority + DesignatedRouterPriority, + ospfv3NbrState + INTEGER, + ospfv3NbrEvents + Counter32, + ospfv3NbrLsRetransQLen + Gauge32, + ospfv3NbrHelloSuppressed + TruthValue, + ospfv3NbrIfId + InterfaceIndex, + ospfv3NbrRestartHelperStatus + INTEGER, + ospfv3NbrRestartHelperAge + Ospfv3UpToRefreshIntervalTC, + ospfv3NbrRestartHelperExitReason + INTEGER + } + + ospfv3NbrIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Local Link ID of the link over which the + neighbor can be reached." + ::= { ospfv3NbrEntry 1 } + + ospfv3NbrIfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Interface instance over which the neighbor + can be reached. This ID has local link + significance only." + ::= { ospfv3NbrEntry 2 } + + + + ospfv3NbrRtrId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A 32-bit unsigned integer uniquely identifying the + neighboring router in the Autonomous System." + ::= { ospfv3NbrEntry 3 } + + ospfv3NbrAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of ospfv3NbrAddress. Only IPv6 + addresses without zone index are expected." + ::= { ospfv3NbrEntry 4 } + + ospfv3NbrAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The IPv6 address of the neighbor associated with + the local link." + ::= { ospfv3NbrEntry 5 } + + ospfv3NbrOptions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A bit mask corresponding to the neighbor's + options field." + REFERENCE + "OSPF for IPv6, Appendix A.2, The Options Field" + ::= { ospfv3NbrEntry 6 } + + ospfv3NbrPriority OBJECT-TYPE + SYNTAX DesignatedRouterPriority + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The priority of this neighbor in the designated- + router election algorithm. The value 0 signifies + that the neighbor is not eligible to become the + Designated Router on this particular network." + ::= { ospfv3NbrEntry 7 } + + ospfv3NbrState OBJECT-TYPE + SYNTAX INTEGER { + down(1), + attempt(2), + init(3), + twoWay(4), + exchangeStart(5), + exchange(6), + loading(7), + full(8) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the relationship with this + neighbor." + REFERENCE + "OSPF Version 2, Section 10.1, Neighbor states" + ::= { ospfv3NbrEntry 8 } + + ospfv3NbrEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this neighbor relationship + has changed state or an error has occurred. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3NbrEntry 9 } + + ospfv3NbrLsRetransQLen OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current length of the retransmission + queue." + ::= { ospfv3NbrEntry 10 } + + ospfv3NbrHelloSuppressed OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + + + DESCRIPTION + "Indicates whether Hellos are being suppressed + to the neighbor." + ::= { ospfv3NbrEntry 11 } + + ospfv3NbrIfId OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Interface ID that the neighbor advertises + in its Hello packets on this link, that is, the + neighbor's local interface index." + ::= { ospfv3NbrEntry 12 } + + ospfv3NbrRestartHelperStatus OBJECT-TYPE + SYNTAX INTEGER { notHelping(1), + helping(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether the router is acting + as a graceful restart helper for the neighbor." + ::= { ospfv3NbrEntry 13 } + + ospfv3NbrRestartHelperAge OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in current OSPF graceful restart + interval, if the router is acting as a restart + helper for the neighbor." + ::= { ospfv3NbrEntry 14 } + + ospfv3NbrRestartHelperExitReason OBJECT-TYPE + SYNTAX INTEGER { none(1), + inProgress(2), + completed(3), + timedOut(4), + topologyChanged(5) + } + MAX-ACCESS read-only + STATUS current + + + + DESCRIPTION + "Describes the outcome of the last attempt at acting + as a graceful restart helper for the neighbor. + + none: no restart has yet been attempted. + inProgress: a restart attempt is currently underway. + completed: the last restart completed successfully. + timedOut: the last restart timed out. + topologyChanged: the last restart was aborted due to + a topology change." + ::= { ospfv3NbrEntry 15 } + + -- OSPFv3 Configured Neighbor Table + + ospfv3CfgNbrTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3CfgNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table describing all configured neighbors. + + The Configured Neighbors table just gives + OSPFv3 information for sending OSPFv3 packets + to potential neighbors and is typically used + on NBMA and Point-to-Multipoint networks. + Once a Hello is received from a neighbor in + the Configured Neighbor table, an entry for + that neighbor is created in the Neighbor table + and adjacency state is maintained there. + Neighbors on multi-access or Point-to-Point + networks can use multicast addressing, so only + Neighbor table entries are created for them." + REFERENCE + "OSPF Version 2, Section 10, The Neighbor Data + Structure" + ::= { ospfv3Objects 10 } + + ospfv3CfgNbrEntry OBJECT-TYPE + SYNTAX Ospfv3CfgNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The information regarding a single configured + neighbor. + + The information in this table is persistent, + and when written, the entity SHOULD save the + change to non-volatile storage." + + REFERENCE + "OSPF Version 2, Section 10, The Neighbor Data + Structure" + INDEX { ospfv3CfgNbrIfIndex, + ospfv3CfgNbrIfInstId, + ospfv3CfgNbrAddressType, + ospfv3CfgNbrAddress } + ::= { ospfv3CfgNbrTable 1 } + + Ospfv3CfgNbrEntry ::= SEQUENCE { + ospfv3CfgNbrIfIndex + InterfaceIndex, + ospfv3CfgNbrIfInstId + Ospfv3IfInstIdTC, + ospfv3CfgNbrAddressType + InetAddressType, + ospfv3CfgNbrAddress + InetAddress, + ospfv3CfgNbrPriority + DesignatedRouterPriority, + ospfv3CfgNbrRowStatus + RowStatus + } + + ospfv3CfgNbrIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Local Link ID of the link over which the + neighbor can be reached." + ::= { ospfv3CfgNbrEntry 1 } + + ospfv3CfgNbrIfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Interface instance over which the neighbor + can be reached. This ID has local link + significance only." + ::= { ospfv3CfgNbrEntry 2 } + + ospfv3CfgNbrAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + + + DESCRIPTION + "The address type of ospfv3NbrAddress. Only IPv6 + addresses without zone index are expected." + ::= { ospfv3CfgNbrEntry 3 } + + ospfv3CfgNbrAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IPv6 address of the neighbor associated with + the local link." + ::= { ospfv3CfgNbrEntry 4 } + + ospfv3CfgNbrPriority OBJECT-TYPE + SYNTAX DesignatedRouterPriority + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The priority of this neighbor in the designated- + router election algorithm. The value 0 signifies + that the neighbor is not eligible to become the + Designated Router on this particular network." + DEFVAL { 1 } + ::= { ospfv3CfgNbrEntry 5 } + + ospfv3CfgNbrRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3CfgNbrEntry 6 } + + -- OSPFv3 Virtual Neighbor Table + + ospfv3VirtNbrTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3VirtNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table describing all virtual neighbors." + + REFERENCE + "OSPF Version 2, Section 15, Virtual Links" + ::= { ospfv3Objects 11 } + + ospfv3VirtNbrEntry OBJECT-TYPE + SYNTAX Ospfv3VirtNbrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Virtual neighbor information." + INDEX { ospfv3VirtNbrArea, + ospfv3VirtNbrRtrId } + ::= { ospfv3VirtNbrTable 1 } + + Ospfv3VirtNbrEntry ::= SEQUENCE { + ospfv3VirtNbrArea + Ospfv3AreaIdTC, + ospfv3VirtNbrRtrId + Ospfv3RouterIdTC, + ospfv3VirtNbrIfIndex + InterfaceIndex, + ospfv3VirtNbrIfInstId + Ospfv3IfInstIdTC, + ospfv3VirtNbrAddressType + InetAddressType, + ospfv3VirtNbrAddress + InetAddress, + ospfv3VirtNbrOptions + Integer32, + ospfv3VirtNbrState + INTEGER, + ospfv3VirtNbrEvents + Counter32, + ospfv3VirtNbrLsRetransQLen + Gauge32, + ospfv3VirtNbrHelloSuppressed + TruthValue, + ospfv3VirtNbrIfId + InterfaceIndex, + ospfv3VirtNbrRestartHelperStatus + INTEGER, + ospfv3VirtNbrRestartHelperAge + Ospfv3UpToRefreshIntervalTC, + ospfv3VirtNbrRestartHelperExitReason + INTEGER + } + + + + ospfv3VirtNbrArea OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The transit area Identifier." + ::= { ospfv3VirtNbrEntry 1 } + + ospfv3VirtNbrRtrId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A 32-bit integer uniquely identifying the + neighboring router in the Autonomous System." + ::= { ospfv3VirtNbrEntry 2 } + + ospfv3VirtNbrIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The local Interface ID for the virtual link over + which the neighbor can be reached." + ::= { ospfv3VirtNbrEntry 3 } + + ospfv3VirtNbrIfInstId OBJECT-TYPE + SYNTAX Ospfv3IfInstIdTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The interface instance for the virtual link over + which the neighbor can be reached." + ::= { ospfv3VirtNbrEntry 4 } + + ospfv3VirtNbrAddressType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The address type of ospfv3VirtNbrAddress. Only IPv6 + addresses without zone index are expected." + ::= { ospfv3VirtNbrEntry 5 } + + ospfv3VirtNbrAddress OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + + DESCRIPTION + "The IPv6 address advertised by this virtual neighbor. + It must be a global scope address." + ::= { ospfv3VirtNbrEntry 6 } + + ospfv3VirtNbrOptions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A bit mask corresponding to the neighbor's options + field." + REFERENCE + "OSPF for IPv6, Appendix A.2, The Options Field" + ::= { ospfv3VirtNbrEntry 7 } + + ospfv3VirtNbrState OBJECT-TYPE + SYNTAX INTEGER { + down(1), + attempt(2), + init(3), + twoWay(4), + exchangeStart(5), + exchange(6), + loading(7), + full(8) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the virtual neighbor relationship." + ::= { ospfv3VirtNbrEntry 8 } + + ospfv3VirtNbrEvents OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of times this virtual link has + changed its state or an error has occurred. + + Discontinuities in the value of this counter + can occur at re-initialization of the management + system and at other times as indicated by the + value of ospfv3DiscontinuityTime." + ::= { ospfv3VirtNbrEntry 9 } + + + + ospfv3VirtNbrLsRetransQLen OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current length of the retransmission + queue." + ::= { ospfv3VirtNbrEntry 10 } + + ospfv3VirtNbrHelloSuppressed OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether Hellos are being suppressed + to the neighbor." + ::= { ospfv3VirtNbrEntry 11 } + + ospfv3VirtNbrIfId OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The Interface ID that the neighbor advertises + in its Hello packets on this virtual link, that is, + the neighbor's local Interface ID." + ::= { ospfv3VirtNbrEntry 12 } + + ospfv3VirtNbrRestartHelperStatus OBJECT-TYPE + SYNTAX INTEGER { notHelping(1), + helping(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether the router is acting + as a graceful restart helper for the neighbor." + ::= { ospfv3VirtNbrEntry 13 } + + ospfv3VirtNbrRestartHelperAge OBJECT-TYPE + SYNTAX Ospfv3UpToRefreshIntervalTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Remaining time in the current OSPF graceful restart + interval, if the router is acting as a restart + helper for the neighbor." + + ::= { ospfv3VirtNbrEntry 14 } + + ospfv3VirtNbrRestartHelperExitReason OBJECT-TYPE + SYNTAX INTEGER { none(1), + inProgress(2), + completed(3), + timedOut(4), + topologyChanged(5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Describes the outcome of the last attempt at acting + as a graceful restart helper for the neighbor. + + none: no restart has yet been attempted. + inProgress: a restart attempt is currently underway. + completed: the last restart completed successfully. + timedOut: the last restart timed out. + topologyChanged: the last restart was aborted due to + a topology change." + ::= { ospfv3VirtNbrEntry 15 } + + -- + -- The OSPFv3 Area Aggregate Table + -- + + ospfv3AreaAggregateTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3AreaAggregateEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Area Aggregate Table acts as an adjunct + to the Area Table. It describes those address + aggregates that are configured to be propagated + from an area. Its purpose is to reduce the amount + of information that is known beyond an area's + borders. + + A range of IPv6 prefixes specified by a + prefix / prefix length pair. Note that if + ranges are configured such that one range + subsumes another range, the most specific + match is the preferred one." + ::= { ospfv3Objects 12 } + + + + + ospfv3AreaAggregateEntry OBJECT-TYPE + SYNTAX Ospfv3AreaAggregateEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single area aggregate entry. + + Information in this table is persistent, and + when this object is written, the entity SHOULD + save the change to non-volatile storage." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + INDEX { ospfv3AreaAggregateAreaID, + ospfv3AreaAggregateAreaLsdbType, + ospfv3AreaAggregatePrefixType, + ospfv3AreaAggregatePrefix, + ospfv3AreaAggregatePrefixLength } + ::= { ospfv3AreaAggregateTable 1 } + + Ospfv3AreaAggregateEntry ::= SEQUENCE { + ospfv3AreaAggregateAreaID + Ospfv3AreaIdTC, + ospfv3AreaAggregateAreaLsdbType + INTEGER, + ospfv3AreaAggregatePrefixType + InetAddressType, + ospfv3AreaAggregatePrefix + InetAddress, + ospfv3AreaAggregatePrefixLength + InetAddressPrefixLength, + ospfv3AreaAggregateRowStatus + RowStatus, + ospfv3AreaAggregateEffect + INTEGER, + ospfv3AreaAggregateRouteTag + Unsigned32 + } + + ospfv3AreaAggregateAreaID OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The area the Address Aggregate is to be found + within." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + ::= { ospfv3AreaAggregateEntry 1 } + + ospfv3AreaAggregateAreaLsdbType OBJECT-TYPE + SYNTAX INTEGER { + interAreaPrefixLsa(8195), -- 0x2003 + nssaExternalLsa(8199) -- 0x2007 + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the Address Aggregate. This field + specifies the Area LSDB type that this Address + Aggregate applies to." + REFERENCE + "OSPF Version 2, Appendix A.4.1, The LSA header" + ::= { ospfv3AreaAggregateEntry 2 } + + ospfv3AreaAggregatePrefixType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The prefix type of ospfv3AreaAggregatePrefix. Only + IPv6 addresses are expected." + ::= { ospfv3AreaAggregateEntry 3 } + + ospfv3AreaAggregatePrefix OBJECT-TYPE + SYNTAX InetAddress (SIZE (0..16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IPv6 prefix." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + ::= { ospfv3AreaAggregateEntry 4 } + + ospfv3AreaAggregatePrefixLength OBJECT-TYPE + SYNTAX InetAddressPrefixLength (3..128) + UNITS "bits" + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The length of the prefix (in bits). A prefix can + not be shorter than 3 bits." + REFERENCE + "OSPF Version 2, Appendix C.2, Area parameters" + ::= { ospfv3AreaAggregateEntry 5 } + + ospfv3AreaAggregateRowStatus OBJECT-TYPE + SYNTAX RowStatus + + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object permits management of the table by + facilitating actions such as row creation, + construction, and destruction. + + The value of this object has no effect on + whether other objects in this conceptual row can be + modified." + ::= { ospfv3AreaAggregateEntry 6 } + + ospfv3AreaAggregateEffect OBJECT-TYPE + SYNTAX INTEGER { + advertiseMatching(1), + doNotAdvertiseMatching(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Prefixes subsumed by ranges will either trigger the + advertisement of the indicated aggregate + (advertiseMatching) or result in the prefix not + being advertised at all outside the area." + DEFVAL { advertiseMatching } + ::= { ospfv3AreaAggregateEntry 7 } + + ospfv3AreaAggregateRouteTag OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This tag is advertised only in the summarized + As-External LSA when summarizing from NSSA-LSAs to + AS-External-LSAs." + DEFVAL { 0 } + ::= { ospfv3AreaAggregateEntry 8 } + + -- OSPFv3 Link-Scope Link State Database, for virtual interfaces + + ospfv3VirtLinkLsdbTable OBJECT-TYPE + SYNTAX SEQUENCE OF Ospfv3VirtLinkLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The OSPFv3 Process's Link-scope LSDB for virtual + interfaces. The LSDB contains the Link-scope link + state advertisements from virtual interfaces." + + ::= { ospfv3Objects 13 } + + ospfv3VirtLinkLsdbEntry OBJECT-TYPE + SYNTAX Ospfv3VirtLinkLsdbEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A single Link-scope link state advertisement + for a virtual interface." + INDEX { ospfv3VirtLinkLsdbIfAreaId, + ospfv3VirtLinkLsdbIfNeighbor, + ospfv3VirtLinkLsdbType, + ospfv3VirtLinkLsdbRouterId, + ospfv3VirtLinkLsdbLsid } + ::= { ospfv3VirtLinkLsdbTable 1 } + + Ospfv3VirtLinkLsdbEntry ::= SEQUENCE { + ospfv3VirtLinkLsdbIfAreaId + Ospfv3AreaIdTC, + ospfv3VirtLinkLsdbIfNeighbor + Ospfv3RouterIdTC, + ospfv3VirtLinkLsdbType + Unsigned32, + ospfv3VirtLinkLsdbRouterId + Ospfv3RouterIdTC, + ospfv3VirtLinkLsdbLsid + Ospfv3LsIdTC, + ospfv3VirtLinkLsdbSequence + Ospfv3LsaSequenceTC, + ospfv3VirtLinkLsdbAge + Ospfv3LsaAgeTC, + ospfv3VirtLinkLsdbChecksum + Integer32, + ospfv3VirtLinkLsdbAdvertisement + OCTET STRING, + ospfv3VirtLinkLsdbTypeKnown + TruthValue + } + + ospfv3VirtLinkLsdbIfAreaId OBJECT-TYPE + SYNTAX Ospfv3AreaIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The transit area that the virtual link + traverses. By definition, this is not + Area 0." + ::= { ospfv3VirtLinkLsdbEntry 1 } + + ospfv3VirtLinkLsdbIfNeighbor OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Router ID of the virtual neighbor." + ::= { ospfv3VirtLinkLsdbEntry 2 } + + ospfv3VirtLinkLsdbType OBJECT-TYPE + SYNTAX Unsigned32(0..'FFFFFFFF'h) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The type of the link state advertisement. + Each link state type has a separate + advertisement format. Link-scope LSAs unrecognized + by the router are also stored in this database." + ::= { ospfv3VirtLinkLsdbEntry 3 } + + ospfv3VirtLinkLsdbRouterId OBJECT-TYPE + SYNTAX Ospfv3RouterIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The 32-bit number that uniquely identifies the + originating router in the Autonomous System." + REFERENCE + "OSPF Version 2, Appendix C.1, Global parameters" + ::= { ospfv3VirtLinkLsdbEntry 4 } + + ospfv3VirtLinkLsdbLsid OBJECT-TYPE + SYNTAX Ospfv3LsIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The Link State ID is an LS type-specific field + containing a unique identifier; + it identifies the piece of the routing domain + that is being described by the advertisement. + In contrast to OSPFv2, the LSID has no + addressing semantics." + ::= { ospfv3VirtLinkLsdbEntry 5 } + + -- Note that the OSPF sequence number is a 32-bit signed + -- integer. It starts with the value '80000001'h + -- or -'7FFFFFFF'h, and increments until '7FFFFFFF'h. + -- Thus, a typical sequence number will be very negative. + + + ospfv3VirtLinkLsdbSequence OBJECT-TYPE + SYNTAX Ospfv3LsaSequenceTC + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sequence number field is a signed 32-bit + integer. It is used to detect old and duplicate + link state advertisements. The space of + sequence numbers is linearly ordered. The + larger the sequence number, the more recent the + advertisement." + REFERENCE + "OSPF Version 2, Section 12.1.6, LS sequence + number" + ::= { ospfv3VirtLinkLsdbEntry 6 } + + ospfv3VirtLinkLsdbAge OBJECT-TYPE + SYNTAX Ospfv3LsaAgeTC + UNITS "seconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the age of the link state + advertisement in seconds. The high-order bit + of the LS age field is considered the DoNotAge + bit for support of on-demand circuits." + REFERENCE + "OSPF Version 2, Section 12.1.1, LS age; + Extending OSPF to Support Demand Circuits, + Section 2.2, The LS age field." + ::= { ospfv3VirtLinkLsdbEntry 7 } + + ospfv3VirtLinkLsdbChecksum OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This field is the checksum of the complete + contents of the advertisement, excepting the + age field. The age field is excepted so that + an advertisement's age can be incremented + without updating the checksum. The checksum + used is the same that is used for ISO + connectionless datagrams; it is commonly + referred to as the Fletcher checksum." + REFERENCE + "OSPF Version 2, Section 12.1.7, LS checksum" + ::= { ospfv3VirtLinkLsdbEntry 8 } + + ospfv3VirtLinkLsdbAdvertisement OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..65535)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entire link state advertisement, including + its header." + ::= { ospfv3VirtLinkLsdbEntry 9 } + + ospfv3VirtLinkLsdbTypeKnown OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value true (1) indicates that the LSA type is + recognized by this router." + ::= { ospfv3VirtLinkLsdbEntry 10 } + + -- The Ospfv3 Notification Table + + -- The Ospfv3 Notification Table records fields that are + -- required for notifications. + + ospfv3NotificationEntry OBJECT IDENTIFIER + ::= { ospfv3Objects 14 } + + ospfv3ConfigErrorType OBJECT-TYPE + SYNTAX INTEGER { + badVersion(1), + areaMismatch(2), + unknownNbmaNbr(3), -- Router is DR eligible + unknownVirtualNbr(4), + helloIntervalMismatch(5), + deadIntervalMismatch(6), + optionMismatch(7), + mtuMismatch(8), + duplicateRouterId(9), + noError(10) } + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Potential types of configuration conflicts. + Used by the ospfv3ConfigError and + ospfv3ConfigVirtError notifications." + ::= { ospfv3NotificationEntry 1 } + + + + + ospfv3PacketType OBJECT-TYPE + SYNTAX INTEGER { + hello(1), + dbDescript(2), + lsReq(3), + lsUpdate(4), + lsAck(5), + nullPacket(6) } + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "OSPFv3 packet types." + ::= { ospfv3NotificationEntry 2 } + + ospfv3PacketSrc OBJECT-TYPE + SYNTAX InetAddressIPv6 + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "The IPv6 address of an inbound packet that cannot + be identified by a neighbor instance. + + Only IPv6 addresses without zone index are expected." + ::= { ospfv3NotificationEntry 3 } + + -- Notification Definitions + + -- The notifications need to be throttled so as to not overwhelm the + -- management agent in case of rapid changes to the OSPFv3 module. + + ospfv3VirtIfStateChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3VirtIfState -- The new state + } + STATUS current + DESCRIPTION + "An ospfv3VirtIfStateChange notification signifies that + there has been a change in the state of an OSPFv3 virtual + interface. + + This notification should be generated when the interface + state regresses (e.g., goes from Point-to-Point to Down) + or progresses to a terminal state (i.e., Point-to-Point)." + ::= { ospfv3Notifications 1 } + + ospfv3NbrStateChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3NbrState -- The new state + + } + STATUS current + DESCRIPTION + "An ospfv3NbrStateChange notification signifies that + there has been a change in the state of a + non-virtual OSPFv3 neighbor. This notification should be + generated when the neighbor state regresses + (e.g., goes from Attempt or Full to 1-Way or + Down) or progresses to a terminal state (e.g., + 2-Way or Full). When a neighbor transitions + from or to Full on non-broadcast multi-access + and broadcast networks, the notification should be + generated by the Designated Router. A Designated + Router transitioning to Down will be noted by + ospfIfStateChange." + ::= { ospfv3Notifications 2 } + + ospfv3VirtNbrStateChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3VirtNbrState -- The new state + } + STATUS current + DESCRIPTION + "An ospfv3VirtNbrStateChange notification signifies + that there has been a change in the state of an OSPFv3 + virtual neighbor. This notification should be generated + when the neighbor state regresses (e.g., goes + from Attempt or Full to 1-Way or Down) or + progresses to a terminal state (e.g., Full)." + ::= { ospfv3Notifications 3 } + + ospfv3IfConfigError NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3IfState, -- State of the interface + ospfv3PacketSrc, -- IPv6 address of source + ospfv3ConfigErrorType, -- Type of error + ospfv3PacketType -- Type of packet + } + STATUS current + DESCRIPTION + "An ospfv3IfConfigError notification signifies that a + packet has been received on a non-virtual + interface from a router whose configuration + parameters conflict with this router's + configuration parameters. Note that the event + optionMismatch should cause a notification only if it + prevents an adjacency from forming." + ::= { ospfv3Notifications 4 } + + ospfv3VirtIfConfigError NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3VirtIfState, -- State of the interface + ospfv3ConfigErrorType, -- Type of error + ospfv3PacketType + } + STATUS current + DESCRIPTION + "An ospfv3VirtIfConfigError notification signifies that a + packet has been received on a virtual interface + from a router whose configuration parameters + conflict with this router's configuration + parameters. Note that the event optionMismatch + should cause a notification only if it prevents an + adjacency from forming." + ::= { ospfv3Notifications 5 } + + ospfv3IfRxBadPacket NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3IfState, -- State of the interface + ospfv3PacketSrc, -- The source IPv6 address + ospfv3PacketType -- Type of packet + } + STATUS current + DESCRIPTION + "An ospfv3IfRxBadPacket notification signifies that an + OSPFv3 packet that cannot be parsed has been received on a + non-virtual interface." + ::= { ospfv3Notifications 6 } + + ospfv3VirtIfRxBadPacket NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3VirtIfState, -- State of the interface + ospfv3PacketType -- Type of packet + } + STATUS current + DESCRIPTION + "An ospfv3VirtIfRxBadPacket notification signifies + that an OSPFv3 packet that cannot be parsed has been + received on a virtual interface." + ::= { ospfv3Notifications 7 } + + ospfv3LsdbOverflow NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3ExtAreaLsdbLimit -- Limit on External LSAs + } + STATUS current + + + DESCRIPTION + "An ospfv3LsdbOverflow notification signifies that the + number of LSAs in the router's link state + database has exceeded ospfv3ExtAreaLsdbLimit." + ::= { ospfv3Notifications 8 } + + ospfv3LsdbApproachingOverflow NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3ExtAreaLsdbLimit + } + STATUS current + DESCRIPTION + "An ospfv3LsdbApproachingOverflow notification signifies + that the number of LSAs in the router's + link state database has exceeded ninety percent of + ospfv3ExtAreaLsdbLimit." + ::= { ospfv3Notifications 9 } + + ospfv3IfStateChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3IfState -- The new state + } + STATUS current + DESCRIPTION + "An ospfv3IfStateChange notification signifies that there + has been a change in the state of a non-virtual + OSPFv3 interface. This notification should be generated + when the interface state regresses (e.g., goes + from DR to Down) or progresses to a terminal + state (i.e., Point-to-Point, DR Other, DR, or + Backup)." + ::= { ospfv3Notifications 10 } + + ospfv3NssaTranslatorStatusChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3AreaNssaTranslatorState -- new state + } + STATUS current + DESCRIPTION + "An ospfv3NssaTranslatorStatusChange notification + indicates that there has been a change in the router's + ability to translate OSPFv3 NSSA LSAs into OSPFv3 External + LSAs. This notification should be generated when the + Translator Status transitions from or to any defined + status on a per-area basis." + ::= { ospfv3Notifications 11 } + + + + ospfv3RestartStatusChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3RestartStatus, -- new status + ospfv3RestartInterval, + ospfv3RestartExitReason + } + STATUS current + DESCRIPTION + "An ospfv3RestartStatusChange notification signifies that + there has been a change in the graceful restart + state for the router. This notification should be + generated when the router restart status + changes." + ::= { ospfv3Notifications 12 } + + ospfv3NbrRestartHelperStatusChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3NbrRestartHelperStatus, -- new status + ospfv3NbrRestartHelperAge, + ospfv3NbrRestartHelperExitReason + } + STATUS current + DESCRIPTION + "An ospfv3NbrRestartHelperStatusChange notification + signifies that there has been a change in the + graceful restart helper state for the neighbor. + This notification should be generated when the + neighbor restart helper status transitions for a neighbor." + ::= { ospfv3Notifications 13 } + + ospfv3VirtNbrRestartHelperStatusChange NOTIFICATION-TYPE + OBJECTS { ospfv3RouterId, -- The originator of the notification + ospfv3VirtNbrRestartHelperStatus, -- new status + ospfv3VirtNbrRestartHelperAge, + ospfv3VirtNbrRestartHelperExitReason + } + STATUS current + DESCRIPTION + "An ospfv3VirtNbrRestartHelperStatusChange + notification signifies that there has been a + change in the graceful restart helper state for + the virtual neighbor. This notification should be + generated when the virtual neighbor restart helper status + transitions for a virtual neighbor." + ::= { ospfv3Notifications 14 } + + -- Conformance Information + + + ospfv3Groups OBJECT IDENTIFIER ::= { ospfv3Conformance 1 } + ospfv3Compliances OBJECT IDENTIFIER ::= { ospfv3Conformance 2 } + + -- Compliance Statements + + ospfv3FullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION "The compliance statement" + MODULE -- this module + MANDATORY-GROUPS { + ospfv3BasicGroup, + ospfv3AreaGroup, + ospfv3IfGroup, + ospfv3VirtIfGroup, + ospfv3NbrGroup, + ospfv3CfgNbrGroup, + ospfv3VirtNbrGroup, + ospfv3AreaAggregateGroup + } + + GROUP ospfv3AsLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their AS-scope link state database." + + GROUP ospfv3AreaLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Area-scope link state database." + + GROUP ospfv3LinkLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Link-scope link state database + for non-virtual interfaces." + + GROUP ospfv3VirtLinkLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Link-scope link state database + for virtual interfaces." + + GROUP ospfv3HostGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support attached hosts." + + + + GROUP ospfv3NotificationObjectGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support OSPFv3 notifications." + + GROUP ospfv3NotificationGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support OSPFv3 notifications." + + OBJECT ospfv3NbrAddressType + SYNTAX InetAddressType { ipv6(2) } + DESCRIPTION + "An implementation is only required to support IPv6 + address without zone index." + + OBJECT ospfv3NbrAddress + SYNTAX InetAddress (SIZE (16)) + DESCRIPTION + "An implementation is only required to support IPv6 + address without zone index." + + OBJECT ospfv3VirtNbrAddressType + SYNTAX InetAddressType { ipv6(2) } + DESCRIPTION + "An implementation is only required to support IPv6 + address without zone index." + + OBJECT ospfv3VirtNbrAddress + SYNTAX InetAddress (SIZE (16)) + DESCRIPTION + "An implementation is only required to support IPv6 + address without zone index." + + ::= { ospfv3Compliances 1 } + + ospfv3ReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "When this MIB module is implemented without + support for read-create (i.e., in read-only + mode), the implementation can claim read-only + compliance. Such a device can then be monitored, + but cannot be configured with this MIB." + + MODULE -- this module + MANDATORY-GROUPS { + ospfv3BasicGroup, + + ospfv3AreaGroup, + ospfv3IfGroup, + ospfv3VirtIfGroup, + ospfv3NbrGroup, + ospfv3CfgNbrGroup, + ospfv3VirtNbrGroup, + ospfv3AreaAggregateGroup + } + + GROUP ospfv3AsLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their AS-scope link state database." + + GROUP ospfv3AreaLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Area-scope link state database." + + GROUP ospfv3LinkLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Link-scope link state database + for non-virtual interfaces." + + GROUP ospfv3VirtLinkLsdbGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + display their Link-scope link state database + for virtual interfaces." + + GROUP ospfv3HostGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support attached hosts." + + GROUP ospfv3NotificationObjectGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support OSPFv3 notifications." + + GROUP ospfv3NotificationGroup + DESCRIPTION + "This group is required for OSPFv3 systems that + support OSPFv3 notifications." + + OBJECT ospfv3RouterId + MIN-ACCESS read-only + + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AdminStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3ExtAreaLsdbLimit + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3ExitOverflowInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3DemandExtensions + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3ReferenceBandwidth + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3RestartSupport + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3RestartInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3RestartStrictLsaChecking + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3NotificationEnable + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + OBJECT ospfv3StubRouterAdvertisement + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaImportAsExtern + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaSummary + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaStubMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaNssaTranslatorRole + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaNssaTranslatorStabInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaStubMetricType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaTEEnabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + + OBJECT ospfv3HostMetric + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3HostRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3HostAreaID + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfAreaId + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfType + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfAdminStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfRtrPriority + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfTransitDelay + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfRetransInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + + OBJECT ospfv3IfHelloInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfRtrDeadInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfPollInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfDemand + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfMetricValue + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfDemandNbrProbe + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfDemandNbrProbeRetransLimit + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfDemandNbrProbeInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + + OBJECT ospfv3IfTEDisabled + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3IfLinkLSASuppression + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3VirtIfTransitDelay + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3VirtIfRetransInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3VirtIfHelloInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3VirtIfRtrDeadInterval + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3VirtIfRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3CfgNbrPriority + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3CfgNbrRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + + + + + OBJECT ospfv3AreaAggregateRowStatus + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaAggregateEffect + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + + OBJECT ospfv3AreaAggregateRouteTag + MIN-ACCESS read-only + DESCRIPTION + "Write access is not required." + ::= { ospfv3Compliances 2 } + + -- units of conformance + + ospfv3BasicGroup OBJECT-GROUP + OBJECTS { + ospfv3RouterId, + ospfv3AdminStatus, + ospfv3VersionNumber, + ospfv3AreaBdrRtrStatus, + ospfv3ASBdrRtrStatus, + ospfv3AsScopeLsaCount, + ospfv3AsScopeLsaCksumSum, + ospfv3OriginateNewLsas, + ospfv3RxNewLsas, + ospfv3ExtLsaCount, + ospfv3ExtAreaLsdbLimit, + ospfv3ExitOverflowInterval, + ospfv3DemandExtensions, + ospfv3ReferenceBandwidth, + ospfv3RestartSupport, + ospfv3RestartInterval, + ospfv3RestartStrictLsaChecking, + ospfv3RestartStatus, + ospfv3RestartAge, + ospfv3RestartExitReason, + ospfv3NotificationEnable, + ospfv3StubRouterSupport, + ospfv3StubRouterAdvertisement, + ospfv3DiscontinuityTime, + ospfv3RestartTime + } + STATUS current + + + DESCRIPTION + "These objects are used for managing/monitoring + OSPFv3 global parameters." + ::= { ospfv3Groups 1 } + + ospfv3AreaGroup OBJECT-GROUP + OBJECTS { + ospfv3AreaImportAsExtern, + ospfv3AreaSpfRuns, + ospfv3AreaBdrRtrCount, + ospfv3AreaAsBdrRtrCount, + ospfv3AreaScopeLsaCount, + ospfv3AreaScopeLsaCksumSum, + ospfv3AreaSummary, + ospfv3AreaRowStatus, + ospfv3AreaStubMetric, + ospfv3AreaNssaTranslatorRole, + ospfv3AreaNssaTranslatorState, + ospfv3AreaNssaTranslatorStabInterval, + ospfv3AreaNssaTranslatorEvents, + ospfv3AreaStubMetricType, + ospfv3AreaTEEnabled + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + supporting areas." + ::= { ospfv3Groups 2 } + + ospfv3AsLsdbGroup OBJECT-GROUP + OBJECTS { + ospfv3AsLsdbSequence, + ospfv3AsLsdbAge, + ospfv3AsLsdbChecksum, + ospfv3AsLsdbAdvertisement, + ospfv3AsLsdbTypeKnown + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + that display their AS-scope link state database." + ::= { ospfv3Groups 3 } + + ospfv3AreaLsdbGroup OBJECT-GROUP + OBJECTS { + ospfv3AreaLsdbSequence, + ospfv3AreaLsdbAge, + ospfv3AreaLsdbChecksum, + + ospfv3AreaLsdbAdvertisement, + ospfv3AreaLsdbTypeKnown + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + that display their Area-scope link state database." + ::= { ospfv3Groups 4 } + + ospfv3LinkLsdbGroup OBJECT-GROUP + OBJECTS { + ospfv3LinkLsdbSequence, + ospfv3LinkLsdbAge, + ospfv3LinkLsdbChecksum, + ospfv3LinkLsdbAdvertisement, + ospfv3LinkLsdbTypeKnown + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + that display their Link-scope link state database + for non-virtual interfaces." + ::= { ospfv3Groups 5 } + + ospfv3HostGroup OBJECT-GROUP + OBJECTS { + ospfv3HostMetric, + ospfv3HostRowStatus, + ospfv3HostAreaID + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + that support attached hosts." + ::= { ospfv3Groups 6 } + + ospfv3IfGroup OBJECT-GROUP + OBJECTS { + ospfv3IfAreaId, + ospfv3IfType, + ospfv3IfAdminStatus, + ospfv3IfRtrPriority, + ospfv3IfTransitDelay, + ospfv3IfRetransInterval, + ospfv3IfHelloInterval, + ospfv3IfRtrDeadInterval, + ospfv3IfPollInterval, + ospfv3IfState, + + ospfv3IfDesignatedRouter, + ospfv3IfBackupDesignatedRouter, + ospfv3IfEvents, + ospfv3IfRowStatus, + ospfv3IfDemand, + ospfv3IfMetricValue, + ospfv3IfLinkScopeLsaCount, + ospfv3IfLinkLsaCksumSum, + ospfv3IfDemandNbrProbe, + ospfv3IfDemandNbrProbeRetransLimit, + ospfv3IfDemandNbrProbeInterval, + ospfv3IfTEDisabled, + ospfv3IfLinkLSASuppression + } + STATUS current + DESCRIPTION + "These interface objects are used for + managing/monitoring OSPFv3 interfaces." + ::= { ospfv3Groups 7 } + + ospfv3VirtIfGroup OBJECT-GROUP + OBJECTS { + ospfv3VirtIfIndex, + ospfv3VirtIfInstId, + ospfv3VirtIfTransitDelay, + ospfv3VirtIfRetransInterval, + ospfv3VirtIfHelloInterval, + ospfv3VirtIfRtrDeadInterval, + ospfv3VirtIfState, + ospfv3VirtIfEvents, + ospfv3VirtIfRowStatus, + ospfv3VirtIfLinkScopeLsaCount, + ospfv3VirtIfLinkLsaCksumSum + } + STATUS current + DESCRIPTION + "These virtual interface objects are used for + managing/monitoring OSPFv3 virtual interfaces." + ::= { ospfv3Groups 8 } + + ospfv3NbrGroup OBJECT-GROUP + OBJECTS { + ospfv3NbrAddressType, + ospfv3NbrAddress, + ospfv3NbrOptions, + ospfv3NbrPriority, + ospfv3NbrState, + ospfv3NbrEvents, + + ospfv3NbrLsRetransQLen, + ospfv3NbrHelloSuppressed, + ospfv3NbrIfId, + ospfv3NbrRestartHelperStatus, + ospfv3NbrRestartHelperAge, + ospfv3NbrRestartHelperExitReason + } + STATUS current + DESCRIPTION + "These neighbor objects are used for + managing/monitoring OSPFv3 neighbors." + ::= { ospfv3Groups 9 } + + ospfv3CfgNbrGroup OBJECT-GROUP + OBJECTS { + ospfv3CfgNbrPriority, + ospfv3CfgNbrRowStatus + } + STATUS current + DESCRIPTION + "These configured neighbor objects are used for + managing/monitoring OSPFv3-configured neighbors." + ::= { ospfv3Groups 10 } + + ospfv3VirtNbrGroup OBJECT-GROUP + OBJECTS { + ospfv3VirtNbrIfIndex, + ospfv3VirtNbrIfInstId, + ospfv3VirtNbrAddressType, + ospfv3VirtNbrAddress, + ospfv3VirtNbrOptions, + ospfv3VirtNbrState, + ospfv3VirtNbrEvents, + ospfv3VirtNbrLsRetransQLen, + ospfv3VirtNbrHelloSuppressed, + ospfv3VirtNbrIfId, + ospfv3VirtNbrRestartHelperStatus, + ospfv3VirtNbrRestartHelperAge, + ospfv3VirtNbrRestartHelperExitReason + } + STATUS current + DESCRIPTION + "These virtual neighbor objects are used for + managing/monitoring OSPFv3 virtual neighbors." + ::= { ospfv3Groups 11 } + + + + + ospfv3AreaAggregateGroup OBJECT-GROUP + OBJECTS { + ospfv3AreaAggregateRowStatus, + ospfv3AreaAggregateEffect, + ospfv3AreaAggregateRouteTag + } + STATUS current + DESCRIPTION + "These area aggregate objects are required for + aggregating OSPFv3 prefixes for summarization + across areas." + ::= { ospfv3Groups 12 } + + ospfv3VirtLinkLsdbGroup OBJECT-GROUP + OBJECTS { + ospfv3VirtLinkLsdbSequence, + ospfv3VirtLinkLsdbAge, + ospfv3VirtLinkLsdbChecksum, + ospfv3VirtLinkLsdbAdvertisement, + ospfv3VirtLinkLsdbTypeKnown + } + STATUS current + DESCRIPTION + "These objects are used for OSPFv3 systems + that display their Link-scope link state database + for virtual interfaces." + ::= { ospfv3Groups 13 } + + ospfv3NotificationObjectGroup OBJECT-GROUP + OBJECTS { + ospfv3ConfigErrorType, + ospfv3PacketType, + ospfv3PacketSrc + } + STATUS current + DESCRIPTION + "These objects are used to record notification + parameters." + ::= { ospfv3Groups 14 } + + ospfv3NotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { + ospfv3VirtIfStateChange, + ospfv3NbrStateChange, + ospfv3VirtNbrStateChange, + ospfv3IfConfigError, + ospfv3VirtIfConfigError, + ospfv3IfRxBadPacket, + + ospfv3VirtIfRxBadPacket, + ospfv3LsdbOverflow, + ospfv3LsdbApproachingOverflow, + ospfv3IfStateChange, + ospfv3NssaTranslatorStatusChange, + ospfv3RestartStatusChange, + ospfv3NbrRestartHelperStatusChange, + ospfv3VirtNbrRestartHelperStatusChange + } + STATUS current + DESCRIPTION + "This group is used for OSPFv3 notifications." + ::= { ospfv3Groups 15 } + + END \ No newline at end of file diff --git a/mibs/RFC-6527-VRRPV3-MIB.txt b/mibs/RFC-6527-VRRPV3-MIB.txt new file mode 100644 index 00000000..1ad95b71 --- /dev/null +++ b/mibs/RFC-6527-VRRPV3-MIB.txt @@ -0,0 +1,976 @@ + VRRPV3-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, + NOTIFICATION-TYPE, Counter32, + Integer32, mib-2, Unsigned32, + Counter64, TimeTicks + FROM SNMPv2-SMI -- RFC2578 + + TEXTUAL-CONVENTION, RowStatus, + MacAddress, TruthValue, TimeStamp, + TimeInterval + FROM SNMPv2-TC -- RFC2579 + + MODULE-COMPLIANCE, OBJECT-GROUP, + NOTIFICATION-GROUP + FROM SNMPv2-CONF -- RFC2580 + + + ifIndex + FROM IF-MIB -- RFC2863 + InetAddressType, InetAddress + + FROM INET-ADDRESS-MIB; -- RFC4001 + + vrrpv3MIB MODULE-IDENTITY + LAST-UPDATED "201202130000Z" -- Feb 13, 2012 + ORGANIZATION "IETF VRRP Working Group" + CONTACT-INFO + "WG E-Mail: vrrp@ietf.org + + Editor: Kalyan Tata + Nokia + 313 Fairchild Dr, + Mountain View, CA 94043 + Tata_kalyan@yahoo.com" + + DESCRIPTION + "This MIB describes objects used for managing Virtual + Router Redundancy Protocol version 3 (VRRPv3). + + Copyright (c) 2012 IETF Trust and the persons + identified as authors of the code. All rights + reserved. + + Redistribution and use in source and binary forms, + with or without modification, is permitted pursuant + to, and subject to the license terms contained in, + the Simplified BSD License set forth in Section + 4.c of the IETF Trust's Legal Provisions Relating + to IETF Documents + (http://trustee.ietf.org/license-info). + + This version of the MIB module is part of RFC 6527. + Please see the RFC for full legal notices." + + REVISION "201202120000Z" -- Feb 13, 2012 + DESCRIPTION "Initial version as published in RFC 6527." + + ::= { mib-2 207 } + + -- Textual Conventions + + Vrrpv3VrIdTC ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + + "The value of the Virtual Router Identifier noted as + (VRID) in RFC 5798. This, along with interface index + (ifIndex) and IP version, serves to uniquely identify + a virtual router on a given VRRP router." + REFERENCE "RFC 5798 (Sections 3 and 5.2.3)" + SYNTAX Integer32 (1..255) + + -- VRRPv3 MIB Groups + + vrrpv3Notifications OBJECT IDENTIFIER ::= { vrrpv3MIB 0 } + vrrpv3Objects OBJECT IDENTIFIER ::= { vrrpv3MIB 1 } + vrrpv3Conformance OBJECT IDENTIFIER ::= { vrrpv3MIB 2 } + + -- VRRPv3 MIB Objects + + vrrpv3Operations OBJECT IDENTIFIER ::= { vrrpv3Objects 1 } + vrrpv3Statistics OBJECT IDENTIFIER ::= { vrrpv3Objects 2 } + + -- VRRPv3 Operations Table + + vrrpv3OperationsTable OBJECT-TYPE + SYNTAX SEQUENCE OF Vrrpv3OperationsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Unified Operations table for a VRRP router that + consists of a sequence (i.e., one or more conceptual + rows) of 'vrrpv3OperationsEntry' items each of which + describe the operational characteristics of a virtual + router." + + ::= { vrrpv3Operations 1 } + + vrrpv3OperationsEntry OBJECT-TYPE + SYNTAX Vrrpv3OperationsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in the vrrpv3OperationsTable containing the + operational characteristics of a virtual router. + On a VRRP router, a given virtual router is + identified by a combination of ifIndex, VRID, and + the IP version. ifIndex represents an interface of + the router. + + A row must be created with vrrpv3OperationsStatus + set to initialize(1) and cannot transition to + backup(2) or master(3) until + + vrrpv3OperationsRowStatus is transitioned to + active(1). + + The information in this table is persistent and when + written the entity SHOULD save the change to non- + volatile storage." + + INDEX { ifIndex, vrrpv3OperationsVrId, + vrrpv3OperationsInetAddrType + } + ::= { vrrpv3OperationsTable 1 } + + Vrrpv3OperationsEntry ::= + + SEQUENCE { + vrrpv3OperationsVrId + Vrrpv3VrIdTC, + vrrpv3OperationsInetAddrType + InetAddressType, + vrrpv3OperationsMasterIpAddr + InetAddress, + vrrpv3OperationsPrimaryIpAddr + InetAddress, + vrrpv3OperationsVirtualMacAddr + MacAddress, + vrrpv3OperationsStatus + INTEGER, + vrrpv3OperationsPriority + Unsigned32, + vrrpv3OperationsAddrCount + Integer32, + vrrpv3OperationsAdvInterval + TimeInterval, + vrrpv3OperationsPreemptMode + TruthValue, + vrrpv3OperationsAcceptMode + TruthValue, + vrrpv3OperationsUpTime + TimeTicks, + vrrpv3OperationsRowStatus + RowStatus + } + vrrpv3OperationsVrId OBJECT-TYPE + SYNTAX Vrrpv3VrIdTC + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + + + "This object contains the Virtual Router Identifier + (VRID)." + REFERENCE "RFC 4001" + ::= { vrrpv3OperationsEntry 1 } + + vrrpv3OperationsInetAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The IP address type of Vrrpv3OperationsEntry and + Vrrpv3AssociatedIpAddrEntry. This value determines + the type for vrrpv3OperationsMasterIpAddr, + vrrpv3OperationsPrimaryIpAddr, and + vrrpv3AssociatedIpAddrAddress. + + ipv4(1) and ipv6(2) are the only two values supported + in this MIB module." + REFERENCE "RFC 4001" + ::= { vrrpv3OperationsEntry 2 } + + vrrpv3OperationsMasterIpAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The master router's real IP address. The master router + would set this address to vrrpv3OperationsPrimaryIpAddr + while transitioning to master state. For backup + routers, this is the IP address listed as the source in + the VRRP advertisement last received by this virtual + router." + REFERENCE "RFC 5798" + ::= { vrrpv3OperationsEntry 3 } + + vrrpv3OperationsPrimaryIpAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "In the case where there is more than one IP + Address (associated IP addresses) for a given + 'ifIndex', this object is used to specify the IP + address that will become the + vrrpv3OperationsMasterIpAddr', should the virtual + router transition from backup state to master." + ::= { vrrpv3OperationsEntry 4 } + + + vrrpv3OperationsVirtualMacAddr OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The virtual MAC address of the virtual router. + Although this object can be derived from the + 'vrrpv3OperationsVrId' object, it is defined so that it + is easily obtainable by a management application and + can be included in VRRP-related SNMP notifications." + ::= { vrrpv3OperationsEntry 5 } + + vrrpv3OperationsStatus OBJECT-TYPE + SYNTAX INTEGER { + initialize(1), + backup(2), + master(3) + } + MAX-ACCESS read-only + STATUS current + + DESCRIPTION + "The current state of the virtual router. This object + has three defined values: + + - 'initialize', which indicates that the + virtual router is waiting for a startup event. + + - 'backup', which indicates that the virtual router is + monitoring the availability of the master router. + + - 'master', which indicates that the virtual router + is forwarding packets for IP addresses that are + associated with this router." + REFERENCE "RFC 5798" + ::= { vrrpv3OperationsEntry 6 } + + vrrpv3OperationsPriority OBJECT-TYPE + SYNTAX Unsigned32 (0..255) + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object specifies the priority to be used for the + virtual router master election process; higher values + imply higher priority. + + A priority of '0', although not settable, is sent by + the master router to indicate that this router has + + ceased to participate in VRRP, and a backup virtual + router should transition to become a new master. + + A priority of 255 is used for the router that owns the + associated IP address(es) for VRRP over IPv4 and hence + is not settable. + + Setting the values of this object to 0 or 255 should be + rejected by the agents implementing this MIB module. + For example, an SNMP agent would return 'badValue(3)' + when a user tries to set the values 0 or 255 for this + object." + + REFERENCE "RFC 5798, Section 6.1" + DEFVAL { 100 } + ::= { vrrpv3OperationsEntry 7 } + + vrrpv3OperationsAddrCount OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of IP addresses that are associated with + this virtual router. This number is equal to the + number of rows in the vrrpv3AssociatedAddrTable that + correspond to a given ifIndex/VRID/IP version." + REFERENCE "RFC 5798, Section 6.1" + ::= { vrrpv3OperationsEntry 8 } + + vrrpv3OperationsAdvInterval OBJECT-TYPE + SYNTAX TimeInterval (1..4095) + UNITS "centiseconds" + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The time interval, in centiseconds, between sending + advertisement messages. Only the master router sends + VRRP advertisements." + REFERENCE "RFC 5798, Section 6.1" + DEFVAL { 100} + ::= { vrrpv3OperationsEntry 9 } + + vrrpv3OperationsPreemptMode OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + + + "Controls whether a higher priority virtual router will + preempt a lower priority master." + REFERENCE "RFC 5798, Section 6.1" + DEFVAL { true } + ::= { vrrpv3OperationsEntry 10 } + + vrrpv3OperationsAcceptMode OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Controls whether a virtual router in master state + will accept packets addressed to the address owner's + IPv6 address as its own if it is not the IPv6 address + owner. Default is false(2). + This object is not relevant for rows representing VRRP + over IPv4 and should be set to false(2)." + DEFVAL { false } + ::= { vrrpv3OperationsEntry 11 } + + vrrpv3OperationsUpTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This value represents the amount of time, in + TimeTicks (hundredth of a second), since this virtual + router (i.e., the 'vrrpv3OperationsStatus') + transitioned out of 'initialize'." + REFERENCE "RFC 5798, Section 6.1" + ::= { vrrpv3OperationsEntry 12 } + + vrrpv3OperationsRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The RowStatus variable should be used in accordance to + installation and removal conventions for conceptual + rows. + + To create a row in this table, a manager sets this + object to either createAndGo(4) or createAndWait(5). + Until instances of all corresponding columns are + appropriately configured, the value of the + corresponding instance of the + 'vrrpv3OperationsRowStatus' column will be read as + notReady(3). + + In particular, a newly created row cannot be made + active(1) until (minimally) the corresponding instance + of vrrpv3OperationsInetAddrType, vrrpv3OperationsVrId, + and vrrpv3OperationsPrimaryIpAddr has been set, and + there is at least one active row in the + 'vrrpv3AssociatedIpAddrTable' defining an associated + IP address. + + notInService(2) should be used to administratively + bring the row down. + + A typical order of operation to add a row is: + 1. Create a row in vrrpv3OperationsTable with + createAndWait(5). + 2. Create one or more corresponding rows in + vrrpv3AssociatedIpAddrTable. + 3. Populate the vrrpv3OperationsEntry. + 4. Set vrrpv3OperationsRowStatus to active(1). + + A typical order of operation to delete an entry is: + 1. Set vrrpv3OperationsRowStatus to notInService(2). + 2. Set the corresponding rows in + vrrpv3AssociatedIpAddrTable to destroy(6) to delete + the entry. + 3. Set vrrpv3OperationsRowStatus to destroy(6) to + delete the entry." + ::= { vrrpv3OperationsEntry 13 } + + -- VRRP Associated Address Table + + vrrpv3AssociatedIpAddrTable OBJECT-TYPE + SYNTAX SEQUENCE OF Vrrpv3AssociatedIpAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The table of addresses associated with each virtual + router." + ::= { vrrpv3Operations 2 } + + vrrpv3AssociatedIpAddrEntry OBJECT-TYPE + SYNTAX Vrrpv3AssociatedIpAddrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in the table contains an IP address that is + associated with a virtual router. The number of rows + for a given IP version, VrID, and ifIndex will equal + the number of IP addresses associated (e.g., backed up) + + by the virtual router (equivalent to + 'vrrpv3OperationsIpAddrCount'). + + Rows in the table cannot be modified unless the value + of 'vrrpv3OperationsStatus' for the corresponding entry + in the vrrpv3OperationsTable has transitioned to + initialize(1). + + The information in this table is persistent and when + written the entity SHOULD save the change to non- + volatile storage." + + INDEX { ifIndex, vrrpv3OperationsVrId, + vrrpv3OperationsInetAddrType, + vrrpv3AssociatedIpAddrAddress } + + ::= { vrrpv3AssociatedIpAddrTable 1 } + + Vrrpv3AssociatedIpAddrEntry ::= + SEQUENCE { + vrrpv3AssociatedIpAddrAddress + + InetAddress, + vrrpv3AssociatedIpAddrRowStatus + RowStatus + } + + vrrpv3AssociatedIpAddrAddress OBJECT-TYPE + SYNTAX InetAddress (SIZE (0|4|16)) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The assigned IP addresses that a virtual router is + responsible for backing up. + + The IP address type is determined by the value of + vrrpv3OperationsInetAddrType in the index of this + row." + REFERENCE "RFC 5798" + ::= { vrrpv3AssociatedIpAddrEntry 1 } + + vrrpv3AssociatedIpAddrRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The row status variable, used according to + installation and removal conventions for conceptual + + rows. To create a row in this table, a manager sets + this object to either createAndGo(4) or + createAndWait(5). Setting this object to active(1) + results in the addition of an associated address for a + virtual router. Setting this object to notInService(2) + results in administratively bringing down the row. + + Destroying the entry or setting it to destroy(6) + removes the associated address from the virtual router. + The use of other values is implementation-dependent. + + Implementations should not allow deletion of the last + row corresponding to an active row in + vrrpv3OperationsTable. + + Refer to the description of vrrpv3OperationsRowStatus + for typical row creation and deletion scenarios." + ::= { vrrpv3AssociatedIpAddrEntry 2 } + + -- VRRP Router Statistics + + vrrpv3RouterChecksumErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP packets received with an + invalid VRRP checksum value. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3GlobalStatisticsDiscontinuityTime." + + REFERENCE "RFC 5798, Section 5.2.8" + ::= { vrrpv3Statistics 1 } + + vrrpv3RouterVersionErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP packets received with an + unknown or unsupported version number. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + + + other times as indicated by the value of + vrrpv3GlobalStatisticsDiscontinuityTime." + + REFERENCE "RFC 5798, Section 5.2.1" + ::= { vrrpv3Statistics 2 } + + vrrpv3RouterVrIdErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP packets received with a + VRID that is not valid for any virtual router on this + router. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3GlobalStatisticsDiscontinuityTime." + + REFERENCE "RFC 5798, Section 5.2.3" + ::= { vrrpv3Statistics 3 } + + vrrpv3GlobalStatisticsDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion at + which one of vrrpv3RouterChecksumErrors, + vrrpv3RouterVersionErrors, and vrrpv3RouterVrIdErrors + suffered a discontinuity. + + If no such discontinuities have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." + + ::= { vrrpv3Statistics 4 } + + -- VRRP Router Statistics Table + + vrrpv3StatisticsTable OBJECT-TYPE + SYNTAX SEQUENCE OF Vrrpv3StatisticsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Table of virtual router statistics." + ::= { vrrpv3Statistics 5 } + + vrrpv3StatisticsEntry OBJECT-TYPE + SYNTAX Vrrpv3StatisticsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry in the table containing statistics + information about a given virtual router." + AUGMENTS { vrrpv3OperationsEntry } + ::= { vrrpv3StatisticsTable 1 } + + Vrrpv3StatisticsEntry ::= + SEQUENCE { + vrrpv3StatisticsMasterTransitions + Counter32, + vrrpv3StatisticsNewMasterReason + INTEGER, + vrrpv3StatisticsRcvdAdvertisements + Counter64, + vrrpv3StatisticsAdvIntervalErrors + Counter64, + vrrpv3StatisticsIpTtlErrors + Counter64, + vrrpv3StatisticsProtoErrReason + INTEGER, + vrrpv3StatisticsRcvdPriZeroPackets + Counter64, + vrrpv3StatisticsSentPriZeroPackets + Counter64, + vrrpv3StatisticsRcvdInvalidTypePackets + Counter64, + vrrpv3StatisticsAddressListErrors + Counter64, + vrrpv3StatisticsPacketLengthErrors + Counter64, + vrrpv3StatisticsRowDiscontinuityTime + TimeStamp, + vrrpv3StatisticsRefreshRate + Unsigned32 + } + + vrrpv3StatisticsMasterTransitions OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of times that this virtual router's + state has transitioned to master state. + + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + ::= { vrrpv3StatisticsEntry 1 } + + vrrpv3StatisticsNewMasterReason OBJECT-TYPE + SYNTAX INTEGER { + notMaster (0), + priority (1), + preempted (2), + masterNoResponse (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This indicates the reason for the virtual router to + transition to master state. If the virtual router + never transitioned to master state, the value of this + object is notMaster(0). Otherwise, this indicates the + reason this virtual router transitioned to master + state the last time. Used by vrrpv3NewMaster + notification." + ::= { vrrpv3StatisticsEntry 2 } + + vrrpv3StatisticsRcvdAdvertisements OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP advertisements received by + this virtual router. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + + ::= { vrrpv3StatisticsEntry 3 } + + vrrpv3StatisticsAdvIntervalErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP advertisement packets + received for which the advertisement interval is + + + different from the vrrpv3OperationsAdvInterval + configured on this virtual router. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + + ::= { vrrpv3StatisticsEntry 4 } + + vrrpv3StatisticsIpTtlErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP packets received by the + virtual router with IPv4 TTL (for VRRP over IPv4) or + IPv6 Hop Limit (for VRRP over IPv6) not equal to 255. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + REFERENCE "RFC 5798, Section 5.1.1.3" + ::= { vrrpv3StatisticsEntry 5 } + + vrrpv3StatisticsProtoErrReason OBJECT-TYPE + SYNTAX INTEGER { + noError (0), + ipTtlError (1), + versionError (2), + checksumError (3), + vrIdError(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This indicates the reason for the last protocol + error. This SHOULD be set to noError(0) when no + protocol errors are encountered. Used by + vrrpv3ProtoError notification." + ::= { vrrpv3StatisticsEntry 6 } + + vrrpv3StatisticsRcvdPriZeroPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + + "The total number of VRRP packets received by the + virtual router with a priority of '0'. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + REFERENCE "RFC 5798, Section 5.2.4" + ::= { vrrpv3StatisticsEntry 7 } + + vrrpv3StatisticsSentPriZeroPackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of VRRP packets sent by the virtual + router with a priority of '0'. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + REFERENCE "RFC 5798, Section 5.2.4" + ::= { vrrpv3StatisticsEntry 8 } + + vrrpv3StatisticsRcvdInvalidTypePackets OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of VRRP packets received by the virtual + router with an invalid value in the 'type' field. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + ::= { vrrpv3StatisticsEntry 9 } + + vrrpv3StatisticsAddressListErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of packets received for which the + address list does not match the locally configured + list for the virtual router. + + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + ::= { vrrpv3StatisticsEntry 10 } + + vrrpv3StatisticsPacketLengthErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The total number of packets received with a packet + length less than the length of the VRRP header. + + Discontinuities in the value of this counter can occur + at re-initialization of the management system, and at + other times as indicated by the value of + vrrpv3StatisticsRowDiscontinuityTime." + ::= { vrrpv3StatisticsEntry 11 } + + vrrpv3StatisticsRowDiscontinuityTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime on the most recent occasion at + which any one or more of this entry's counters + suffered a discontinuity. + + If no such discontinuities have occurred since the last + re-initialization of the local management subsystem, + then this object contains a zero value." + ::= { vrrpv3StatisticsEntry 12 } + + vrrpv3StatisticsRefreshRate OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "milliseconds" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The minimum reasonable polling interval for this entry. + This object provides an indication of the minimum + amount of time required to update the counters in this + entry." + ::= { vrrpv3StatisticsEntry 13 } + + -- Notification Definitions + -- Notifications may be controlled using SNMP-NOTIFICATION-MIB + + vrrpv3NewMaster NOTIFICATION-TYPE + OBJECTS { + vrrpv3OperationsMasterIpAddr, + vrrpv3StatisticsNewMasterReason + } + STATUS current + DESCRIPTION + "The newMaster notification indicates that the sending + agent has transitioned to master state." + ::= { vrrpv3Notifications 1 } + + vrrpv3ProtoError NOTIFICATION-TYPE + OBJECTS { + vrrpv3StatisticsProtoErrReason + } + STATUS current + DESCRIPTION + "The notification indicates that the sending agent has + encountered the protocol error indicated by + vrrpv3StatisticsProtoErrReason." + ::= { vrrpv3Notifications 2 } + + -- Conformance Information + + vrrpv3Compliances OBJECT IDENTIFIER ::= { vrrpv3Conformance 1 } + vrrpv3Groups OBJECT IDENTIFIER ::= { vrrpv3Conformance 2 } + + -- Compliance Statements + + vrrpv3FullCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement" + MODULE -- this module + MANDATORY-GROUPS { + vrrpv3OperationsGroup, + vrrpv3StatisticsGroup, + vrrpv3InfoGroup, + vrrpv3NotificationsGroup + } + OBJECT vrrpv3OperationsPriority + WRITE-SYNTAX Unsigned32 (1..254) + DESCRIPTION "Setable values are from 1 to 254." + ::= { vrrpv3Compliances 1 } + + vrrpv3ReadOnlyCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + + "When this MIB module is implemented without support + for read-create (i.e., in read-only mode), then such + an implementation can claim read-only compliance. + Such a device can then be monitored, but cannot be + configured with this MIB." + + MODULE -- this module + MANDATORY-GROUPS { + vrrpv3OperationsGroup, + vrrpv3StatisticsGroup, + vrrpv3StatisticsDiscontinuityGroup, + vrrpv3InfoGroup, + vrrpv3NotificationsGroup + } + + OBJECT vrrpv3OperationsPriority + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT vrrpv3OperationsPrimaryIpAddr + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + OBJECT vrrpv3OperationsAdvInterval + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT vrrpv3OperationsPreemptMode + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT vrrpv3OperationsAcceptMode + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT vrrpv3OperationsRowStatus + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + OBJECT vrrpv3AssociatedIpAddrRowStatus + MIN-ACCESS read-only + DESCRIPTION "Write access is not required." + + ::= { vrrpv3Compliances 2 } + + -- Conformance Groups + + vrrpv3OperationsGroup OBJECT-GROUP + OBJECTS { + + vrrpv3OperationsVirtualMacAddr, + vrrpv3OperationsStatus, + vrrpv3OperationsPriority, + vrrpv3OperationsMasterIpAddr, + vrrpv3OperationsAdvInterval, + vrrpv3OperationsPreemptMode, + vrrpv3OperationsAcceptMode, + vrrpv3OperationsUpTime, + vrrpv3OperationsRowStatus, + vrrpv3OperationsAddrCount, + vrrpv3OperationsPrimaryIpAddr, + vrrpv3AssociatedIpAddrRowStatus + } + STATUS current + DESCRIPTION + "Conformance group for VRRPv3 operations." + ::= { vrrpv3Groups 1 } + + vrrpv3StatisticsGroup OBJECT-GROUP + OBJECTS { + vrrpv3RouterChecksumErrors, + vrrpv3RouterVersionErrors, + vrrpv3RouterVrIdErrors, + vrrpv3StatisticsMasterTransitions, + vrrpv3StatisticsNewMasterReason, + vrrpv3StatisticsRcvdAdvertisements, + vrrpv3StatisticsAdvIntervalErrors, + vrrpv3StatisticsRcvdPriZeroPackets, + vrrpv3StatisticsSentPriZeroPackets, + vrrpv3StatisticsRcvdInvalidTypePackets, + vrrpv3StatisticsIpTtlErrors, + vrrpv3StatisticsProtoErrReason, + vrrpv3StatisticsAddressListErrors, + vrrpv3StatisticsPacketLengthErrors, + vrrpv3StatisticsRowDiscontinuityTime, + vrrpv3StatisticsRefreshRate + } + STATUS current + DESCRIPTION + "Conformance group for VRRPv3 statistics." + ::= { vrrpv3Groups 2 } + + vrrpv3StatisticsDiscontinuityGroup OBJECT-GROUP + OBJECTS { + vrrpv3GlobalStatisticsDiscontinuityTime + } + STATUS current + DESCRIPTION + + "Objects providing information about counter + discontinuities." + ::= { vrrpv3Groups 3 } + + vrrpv3InfoGroup OBJECT-GROUP + OBJECTS { + vrrpv3StatisticsProtoErrReason, + vrrpv3StatisticsNewMasterReason + } + STATUS current + DESCRIPTION + "Conformance group for objects contained in VRRPv3 + notifications." + ::= { vrrpv3Groups 4 } + + vrrpv3NotificationsGroup NOTIFICATION-GROUP + NOTIFICATIONS { + vrrpv3NewMaster, + vrrpv3ProtoError + } + STATUS current + DESCRIPTION + "The VRRP MIB Notification Group." + ::= { vrrpv3Groups 5 } + + END \ No newline at end of file diff --git a/mibs/RSTP-MIB.txt b/mibs/RSTP-MIB.txt index 715a17d5..8b00576c 100644 --- a/mibs/RSTP-MIB.txt +++ b/mibs/RSTP-MIB.txt @@ -288,7 +288,7 @@ rstpBridgeGroup OBJECT-GROUP } STATUS current DESCRIPTION - "Rapid Spanning Tree information for the bridge.--IPI Comments: Not Supported" + "Rapid Spanning Tree information for the bridge." ::= { rstpGroups 1 } rstpPortGroup OBJECT-GROUP @@ -302,7 +302,7 @@ rstpPortGroup OBJECT-GROUP } STATUS current DESCRIPTION - "Rapid Spanning Tree information for individual ports.--IPI Comments: Not Supported" + "Rapid Spanning Tree information for individual ports." ::= { rstpGroups 2 } -- ------------------------------------------------------------- @@ -316,7 +316,7 @@ rstpCompliance MODULE-COMPLIANCE DESCRIPTION "The compliance statement for device support of Rapid - Spanning Tree Protocol (RSTP) bridging services.--IPI Comments: Not Supported" + Spanning Tree Protocol (RSTP) bridging services." MODULE MANDATORY-GROUPS { rstpBridgeGroup, From 86aa995180c193c1c91f8eb99c3447daf7dfa8b8 Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Tue, 23 Aug 2016 16:17:27 +0530 Subject: [PATCH 06/12] yang file updates for OcNOS 1.2.1 --- yang-files/ZebOS.yang | 14 +- yang-files/bgp.yang | 2430 +++++++++++++--------- yang-files/bridge.yang | 29 + yang-files/cml_data_types.yang | 2215 ++++++++++++++++++++ yang-files/interface.yang | 2 + yang-files/{nsmLACP.yang => lacp.yang} | 6 +- yang-files/{layer2LACP.yang => lag.yang} | 4 +- yang-files/lldpv2.yang | 24 + yang-files/mstp.yang | 6 + yang-files/{oamBfd.yang => oambfd.yang} | 18 +- yang-files/ospf.yang | 497 +++-- yang-files/ospf6.yang | 190 +- yang-files/vlan.yang | 4 +- yang-files/vlaninterface.yang | 4 + yang-files/vr.yang | 20 +- 15 files changed, 4240 insertions(+), 1223 deletions(-) create mode 100644 yang-files/cml_data_types.yang rename yang-files/{nsmLACP.yang => lacp.yang} (95%) rename yang-files/{layer2LACP.yang => lag.yang} (98%) rename yang-files/{oamBfd.yang => oambfd.yang} (95%) diff --git a/yang-files/ZebOS.yang b/yang-files/ZebOS.yang index 87a3a30c..79ff8cf6 100644 --- a/yang-files/ZebOS.yang +++ b/yang-files/ZebOS.yang @@ -18,20 +18,20 @@ module ZebOS { namespace "http://www.ipinfusion.com/CMLSchema/ZebOS"; prefix "ZebOS"; - include nsmLACP; - include oamBfd; include bridge; - include ospf; include vlan; + include oambfd; + include ospf; + include lag; include mstp; - include layer2LACP; - include bgp; + include lacp; include vr; include vrf; include interface; include lldpv2; include ospf6; include rib; + include bgp; include vlaninterface; @@ -56,9 +56,11 @@ module ZebOS { uses lacpSystemPriority-grouping; uses systemDetail-grouping; uses ospfGlobal-grouping; - uses hashTableInfo-grouping; uses vr-grouping; uses ospf6Global-grouping; + uses bgpGlobal-grouping; + uses bgpDebug-grouping; + uses hashTableSize-grouping; rpc ospf-clear-ip-ospf-process { input { diff --git a/yang-files/bgp.yang b/yang-files/bgp.yang index 1cb4035e..d30699eb 100644 --- a/yang-files/bgp.yang +++ b/yang-files/bgp.yang @@ -24,8 +24,8 @@ submodule bgp { prefix cml_data_types; } - revision "2015-04-25" { - description "Revisied on 2015-04-25."; } + revision "2016-06-30" { + description "Revisied on 2016-06-30."; } @@ -55,13 +55,6 @@ submodule bgp { config true; } // END of bgpAs definition. - leaf vrfName { - mandatory false; - type leafref { - path "/vr/vrf/vrfName"; - } - } // END of vrfName definition. - leaf bgpTableVersion { mandatory false; type cml_data_types:CML_INT32_T; @@ -74,19 +67,6 @@ submodule bgp { config false; } // END of ntwkPrefixCount definition. - leaf ibgpMetric { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of ibgpMetric definition. - - leaf pathAttrBest { - mandatory false; - type cml_data_types:CML_INT32_T; - default "1"; - config false; - } // END of pathAttrBest definition. - leaf routerIpAddr { mandatory false; type cml_data_types:CML_IPV4_ADDR_T; @@ -99,12 +79,6 @@ submodule bgp { config true; } // END of clusterId definition. - leaf clusterList { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of clusterList definition. - leaf routerRunIpAddr { mandatory false; type cml_data_types:CML_STRING_T; @@ -117,6 +91,7 @@ submodule bgp { range "1..4294967295"; } config true; + description "bgp cluster-id in digits"; } // END of clusterIdDigit definition. leaf confedId { @@ -151,6 +126,7 @@ submodule bgp { } default "90"; config true; + description "holdtime"; } // END of holdTime definition. leaf localPref { @@ -216,26 +192,23 @@ submodule bgp { mandatory false; type cml_data_types:CML_IPV4_PREFIX_T; config true; + description "administrative distance for ip source prefix"; } // END of distanceSrcIp definition. leaf distanceACLName { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "administrative distance with access list name"; } // END of distanceACLName definition. leaf setMplsResolution { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "mpls lsp resolution"; } // END of setMplsResolution definition. - leaf setTimersDisallow { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of setTimersDisallow definition. - leaf restartTime { mandatory false; type cml_data_types:CML_UINT32_T { @@ -297,6 +270,7 @@ submodule bgp { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "bgp bestpath as-path ignore"; } // END of bestpathAspath definition. leaf bestpathCompareConfed { @@ -329,12 +303,6 @@ submodule bgp { config false; } // END of bgpShowTypeStr definition. - leaf bgpShowType { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpShowType definition. - leaf autoSummary { mandatory false; type cml_data_types:CML_BOOL_T; @@ -353,18 +321,13 @@ submodule bgp { config true; } // END of setNwSyncFlag definition. - leaf setLocalAsCount { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of setLocalAsCount definition. - leaf localAsCount { mandatory false; type cml_data_types:CML_UINT8_T { range "2..64"; } config true; + description "bgp as-local-count"; } // END of localAsCount definition. leaf grstSet { @@ -392,6 +355,7 @@ submodule bgp { } default "15"; config true; + description "bgp route dampening reachability half-life time"; } // END of halfLife definition. leaf reusePenalty { @@ -416,6 +380,7 @@ submodule bgp { range "1..255"; } config true; + description "bgp route dampening to start suppressing a route"; } // END of maxSuppress definition. leaf unreachHalfLife { @@ -424,6 +389,7 @@ submodule bgp { range "1..45"; } config true; + description "BGP route dampening Un-reachability Half-life time"; } // END of unreachHalfLife definition. leaf dampeningRmapName { @@ -469,6 +435,7 @@ submodule bgp { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "bgp bestpath med confed missing-as-worst"; } // END of medConfedMissingAsWorst definition. leaf medMissingAsWorstConfed { @@ -508,6 +475,7 @@ submodule bgp { } default "200"; config true; + description "distance bgp"; } // END of distanceLocal definition. leaf multipathRelax { @@ -516,6 +484,20 @@ submodule bgp { config true; } // END of multipathRelax definition. + leaf tableMap { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + description "bgp table-map"; + } // END of tableMap definition. + + leaf tableMapFilter { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "bgp table-map filter"; + } // END of tableMapFilter definition. + list multipath { @@ -550,6 +532,7 @@ submodule bgp { range "2..64"; } config true; + description "multipath ecmp numbers for ibgp or ebgp"; } // END of multipathsNum definition. } // End of multipathType-list @@ -575,20 +558,9 @@ submodule bgp { mandatory false; type cml_data_types:CML_IPV4_ADDR_T; config true; + description "network address with mask"; } // END of localAddrMask definition. - leaf rfdFlapCount { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of rfdFlapCount definition. - - leaf localPort { - mandatory false; - type cml_data_types:CML_INT32_T; - config true; - } // END of localPort definition. - leaf networkRmapName { mandatory false; type cml_data_types:CML_STRING_T; @@ -600,6 +572,7 @@ submodule bgp { type cml_data_types:CML_BOOL_T; default false; config true; + description "network address with backdoor"; } // END of backdoor definition. } // End of bgpNetworkList-list @@ -626,17 +599,11 @@ submodule bgp { config false; } // END of bgpLongerPrefixCmd definition. - leaf lastUpdate { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of lastUpdate definition. - - leaf routeGetReuseTime { + leaf rfdFlapCount { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_INT32_T; config false; - } // END of routeGetReuseTime definition. + } // END of rfdFlapCount definition. leaf dampInfoTimes { mandatory false; @@ -644,126 +611,6 @@ submodule bgp { config false; } // END of dampInfoTimes definition. - leaf routeGetPenalty { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of routeGetPenalty definition. - - leaf routeGetFlapCount { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of routeGetFlapCount definition. - - leaf bgpInfoSelected { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpInfoSelected definition. - - leaf atomicAggregate { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of atomicAggregate definition. - - leaf multiInstalled { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of multiInstalled definition. - - leaf ecmpMultiCandidate { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of ecmpMultiCandidate definition. - - leaf bgpInfoType { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpInfoType definition. - - leaf bgpInfoSubType { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpInfoSubType definition. - - leaf bgpConfedPeer { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpConfedPeer definition. - - leaf bgpInfoStale { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpInfoStale definition. - - leaf routeValidState { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of routeValidState definition. - - leaf briLabel { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of briLabel definition. - - leaf ntwkBgpOrigin { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of ntwkBgpOrigin definition. - - leaf networkRemoteAddr { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of networkRemoteAddr definition. - - leaf originatorId { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of originatorId definition. - - leaf ibgpMetric { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of ibgpMetric definition. - - leaf nhopValid { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of nhopValid definition. - - leaf history { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of history definition. - - leaf reflectorClient { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of reflectorClient definition. - - leaf ntwkPathCount { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of ntwkPathCount definition. - leaf showBgpNtwkCmd { mandatory false; type cml_data_types:CML_INT32_T; @@ -812,11 +659,11 @@ submodule bgp { config false; } // END of dampTimeToReuse definition. - leaf ntwkPrefixBestPathCount { + leaf ipv4Cmd { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of ntwkPrefixBestPathCount definition. + } // END of ipv4Cmd definition. leaf checkCidr { mandatory false; @@ -848,17 +695,17 @@ submodule bgp { config false; } // END of bgpAttrNextHop definition. - leaf bgpAttrNextHopLen { + leaf bgpAttrMpNexthopGlobal { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of bgpAttrNextHopLen definition. + } // END of bgpAttrMpNexthopGlobal definition. - leaf bgpAttrMpNexthopGlobal { + leaf bgpAttrNextHopLen { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of bgpAttrMpNexthopGlobal definition. + } // END of bgpAttrNextHopLen definition. leaf bgpAttrMpNexthopLocal { mandatory false; @@ -908,132 +755,403 @@ submodule bgp { config false; } // END of bgpAsPath4BOrigin definition. - - list advPeerList { - - - description - "advPeerList"; - - config false; - key "advPeerAddr"; - - - leaf advPeerAddr { - mandatory true; - type cml_data_types:CML_STRING_T; - config false; - } // END of advPeerAddr definition. - - leaf advNonPeerGroup { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of advNonPeerGroup definition. - - } // End of advPeerList-list - - list advPeerGroupList { - - - description - "advPeerGroupList"; - - config false; - key "advPeerGroupName"; - - - leaf advPeerGroupName { - mandatory true; - type cml_data_types:CML_STRING_T; - config false; - } // END of advPeerGroupName definition. - - leaf advNonPeerGroup { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of advNonPeerGroup definition. - - } // End of advPeerGroupList-list } // End of networkList-list - list bgpAggregateAddrList { + list bgpShowRoute { description - "bgpAggregateAddrList"; + "bgpShowRoute"; - config true; - key "aggregateAddr"; + config false; + key "networkAddrRoute"; - leaf aggregateAddr { - mandatory true; - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - } // END of aggregateAddr definition. - - leaf aggregateAsSet { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of aggregateAsSet definition. - - leaf aggregateSummOnly { + leaf networkAddrRoute { mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of aggregateSummOnly definition. + type cml_data_types:CML_STRING_T; + config false; + } // END of networkAddrRoute definition. - leaf aggregateAs { + leaf ntwkPathCountRoute { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of aggregateAs definition. + } // END of ntwkPathCountRoute definition. - leaf aggregateAs4 { + leaf ntwkPrefixBestPathCountRoute { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of aggregateAs4 definition. + } // END of ntwkPrefixBestPathCountRoute definition. - } // End of bgpAggregateAddrList-list + leaf noAdvertiseRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of noAdvertiseRoute definition. - list bgpRedistList { - + leaf noExportRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of noExportRoute definition. - description - "bgpRedistList"; + leaf localAsRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of localAsRoute definition. - config true; - key "redistType"; + leaf suppressRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of suppressRoute definition. - - leaf redistType { - mandatory true; - type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; - config true; - } // END of redistType definition. + leaf advPeerGroupRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advPeerGroupRoute definition. - leaf redistRmapName { + leaf advPeerAddrRoute { mandatory false; type cml_data_types:CML_STRING_T; - config true; - } // END of redistRmapName definition. + config false; + } // END of advPeerAddrRoute definition. - leaf redistOspfNo { + leaf advNonPeerGroupRoute { mandatory false; - type cml_data_types:CML_UINT32_T { + type cml_data_types:CML_INT32_T; + config false; + } // END of advNonPeerGroupRoute definition. + + leaf advPeerGroupNameRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of advPeerGroupNameRoute definition. + + container routeShowVtyOut { + + config false; + + description + "routeShowVtyOut"; + + leaf ibgpMetricRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ibgpMetricRoute definition. + + leaf routeBgpAsPathRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeBgpAsPathRoute definition. + + leaf aggregateAsRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of aggregateAsRoute definition. + + leaf aggregatorAddrRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of aggregatorAddrRoute definition. + + leaf reflectorClientRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of reflectorClientRoute definition. + + leaf routeDampeningFlagRoute { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of routeDampeningFlagRoute definition. + + leaf historyRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of historyRoute definition. + + leaf routeAttrMpNexthopGlobalInRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeAttrMpNexthopGlobalInRoute definition. + + leaf routeAttrNextHopRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeAttrNextHopRoute definition. + + leaf routeAttrMpNexthopGlobalRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeAttrMpNexthopGlobalRoute definition. + + leaf routeAttrMpNexthopLocalRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeAttrMpNexthopLocalRoute definition. + + leaf routeAttrMpNexthopLocal1Route { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeAttrMpNexthopLocal1Route definition. + + leaf nhopValidRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of nhopValidRoute definition. + + leaf routePeerAddrRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routePeerAddrRoute definition. + + leaf originatorIdRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of originatorIdRoute definition. + + leaf originatorId1Route { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of originatorId1Route definition. + + leaf networkRemoteAddrRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of networkRemoteAddrRoute definition. + + leaf ntwkBgpOriginRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of ntwkBgpOriginRoute definition. + + leaf routeMedFlagTypeRoute { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of routeMedFlagTypeRoute definition. + + leaf routeMedValRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeMedValRoute definition. + + leaf routeLocalPrefRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeLocalPrefRoute definition. + + leaf routeWeightRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeWeightRoute definition. + + leaf briLabelRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of briLabelRoute definition. + + leaf routeValidStateRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeValidStateRoute definition. + + leaf bgpInfoStaleRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpInfoStaleRoute definition. + + leaf routePeerLocalAsRoute { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of routePeerLocalAsRoute definition. + + leaf bgpConfedPeerRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpConfedPeerRoute definition. + + leaf bgpInfoTypeRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of bgpInfoTypeRoute definition. + + leaf ecmpMultiCandidateRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ecmpMultiCandidateRoute definition. + + leaf multiInstalledRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of multiInstalledRoute definition. + + leaf routeSyncFlagRoute { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of routeSyncFlagRoute definition. + + leaf atomicAggregateRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of atomicAggregateRoute definition. + + leaf bgpInfoSelectedRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpInfoSelectedRoute definition. + + leaf routeCommNameRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeCommNameRoute definition. + + leaf clusterListRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of clusterListRoute definition. + + leaf routeGetPenaltyRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeGetPenaltyRoute definition. + + leaf routRecordTimeRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routRecordTimeRoute definition. + + leaf routeGetFlapCountRoute { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of routeGetFlapCountRoute definition. + + leaf routeGetReuseTimeRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeGetReuseTimeRoute definition. + + leaf lastUpdateRoute { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of lastUpdateRoute definition. + + } // END of routeShowVtyOut-container definition. + } // End of bgpShowRoute-list + + list bgpAggregateAddrList { + + + description + "bgpAggregateAddrList"; + + config true; + key "aggregateAddr"; + + + leaf aggregateAddr { + mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + description "aggregate prefix"; + } // END of aggregateAddr definition. + + leaf aggregateAsSet { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of aggregateAsSet definition. + + leaf aggregateSummOnly { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + description "aggregate-address summary-only"; + } // END of aggregateSummOnly definition. + + } // End of bgpAggregateAddrList-list + + list bgpRedistList { + + + description + "bgpRedistList"; + + config true; + key "redistType"; + + + leaf redistType { + mandatory true; + type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; + config true; + } // END of redistType definition. + + leaf redistRmapName { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + description "redistribute route map reference"; + } // END of redistRmapName definition. + + leaf redistOspfNo { + mandatory false; + type cml_data_types:CML_UINT32_T { range "0..65535"; } config true; + description "redistribute with ospf proc Id"; } // END of redistOspfNo definition. leaf redistOspfRmap { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "redistribute with ospf proc Id and route map reference"; } // END of redistOspfRmap definition. } // End of bgpRedistList-list @@ -1058,14 +1176,9 @@ submodule bgp { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor peer-group"; } // END of peerGroupStr definition. - leaf advPeerGroup { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of advPeerGroup definition. - } // End of bgpPeerGroup-list list bgpAddressFamily { @@ -1108,58 +1221,6 @@ submodule bgp { } } // END of vrfName definition. - leaf setGshutAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of setGshutAf definition. - - leaf setGshutCapableAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of setGshutCapableAf definition. - - leaf gshutLocalPrefAf { - mandatory false; - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - default "0"; - config true; - } // END of gshutLocalPrefAf definition. - - leaf bgpTypeAf { - mandatory false; - type cml_data_types:CML_BGP_MAXPATH_T; - config true; - } // END of bgpTypeAf definition. - - leaf multipathsNumAf { - mandatory false; - type cml_data_types:CML_INT32_T { - range "2..64"; - } - default "2"; - config true; - } // END of multipathsNumAf definition. - - leaf confedIdAf { - mandatory false; - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - config true; - } // END of confedIdAf definition. - - leaf peerConfedIdAf { - mandatory false; - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - config true; - } // END of peerConfedIdAf definition. - } // End of bgpSubAddressFamily-list } // End of bgpAddressFamily-list @@ -1177,6 +1238,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "neighbor"; } // END of peerAddr definition. leaf peerAs { @@ -1185,18 +1247,28 @@ submodule bgp { range "1..4294967295"; } config true; + description "Neighbors AS number"; } // END of peerAs definition. + leaf setGracefulShut { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor g-shut"; + } // END of setGracefulShut definition. + leaf bgpPeerBfd { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "fall-over detection"; } // END of bgpPeerBfd definition. leaf peerBfdMh { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "bfd multihop"; } // END of peerBfdMh definition. leaf gshutTimer { @@ -1205,6 +1277,7 @@ submodule bgp { range "10..65535"; } config true; + description "neighbor g-shut-timer"; } // END of gshutTimer definition. leaf peerRestartTime { @@ -1213,45 +1286,44 @@ submodule bgp { range "1..3600"; } config true; + description "neighbor restart-time"; } // END of peerRestartTime definition. - leaf-list ifName { - - type leafref { - path "/vr/interface/ifName"; - } - } // END of ifName definition. - leaf peerLocalAs { mandatory false; type cml_data_types:CML_UINT32_T { range "1..4294967295"; } config true; + description "neighbor local-as"; } // END of peerLocalAs definition. leaf neighborAttrUnchangedAsPath { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor attribute-unchanged as-path"; } // END of neighborAttrUnchangedAsPath definition. leaf neighborAttrUnchangedNexthop { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor attribute-unchanged next-hop"; } // END of neighborAttrUnchangedNexthop definition. leaf neighborAttrUnchangedMed { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor attribute-unchanged med"; } // END of neighborAttrUnchangedMed definition. leaf neighborCapabilityGrst { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor capability graceful-restart"; } // END of neighborCapabilityGrst definition. leaf maxPathIbgp { @@ -1285,12 +1357,6 @@ submodule bgp { config false; } // END of cfgMaxPathIbgp definition. - leaf bgpVrfName { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpVrfName definition. - leaf bgpRouterId { mandatory false; type cml_data_types:CML_STRING_T; @@ -1627,12 +1693,6 @@ submodule bgp { config false; } // END of peerDefHoldTimeConf definition. - leaf nhopValid { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of nhopValid definition. - leaf keepAliveIn { mandatory false; type cml_data_types:CML_INT32_T; @@ -1783,30 +1843,35 @@ submodule bgp { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor remove-private-AS"; } // END of peerRemovePvtAs definition. leaf sendCommunity { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor send-community"; } // END of sendCommunity definition. leaf sendCommunityType { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_BGP_SEND_COMMU_TYPE_T; config true; + description "neighbor send-community attribute"; } // END of sendCommunityType definition. leaf neighborRouteServerClient { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor route-server-client"; } // END of neighborRouteServerClient definition. leaf peerRouteReflector { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor route-reflector-client"; } // END of peerRouteReflector definition. leaf prefixListName { @@ -2193,12 +2258,6 @@ submodule bgp { config false; } // END of bpfEstUpTime definition. - leaf bpfEstDownTime { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of bpfEstDownTime definition. - leaf lastReadTime { mandatory false; type cml_data_types:CML_STRING_T; @@ -2351,15 +2410,9 @@ submodule bgp { } default "120"; config true; + description "neighbor connection-retry-time"; } // END of connRetryInterval definition. - leaf holdTimeConf { - mandatory false; - type cml_data_types:CML_INT32_T; - default "90"; - config true; - } // END of holdTimeConf definition. - leaf peerHoldTimeRun { mandatory false; type cml_data_types:CML_INT32_T; @@ -2378,59 +2431,46 @@ submodule bgp { config false; } // END of neighborCap definition. - leaf keepAliveConf { - mandatory false; - type cml_data_types:CML_INT32_T; - default "30"; - config true; - } // END of keepAliveConf definition. - - leaf minAsOrigInterval { - mandatory false; - type cml_data_types:CML_INT32_T; - config true; - } // END of minAsOrigInterval definition. - - leaf minRouteAdInterval { - mandatory false; - type cml_data_types:CML_INT32_T; - config true; - } // END of minRouteAdInterval definition. - leaf peerDesc { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "neighbor description"; } // END of peerDesc definition. leaf transparentAs { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor transparent-as"; } // END of transparentAs definition. leaf transparentNexthop { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor transparent-nexthop"; } // END of transparentNexthop definition. leaf sendLabel { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor send-label"; } // END of sendLabel definition. leaf sendLabelExplicitNull { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor send-label explicit-null"; } // END of sendLabelExplicitNull definition. leaf timeToLive { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor ebgp-multihop"; } // END of timeToLive definition. leaf maxHopCount { @@ -2440,6 +2480,7 @@ submodule bgp { } default "255"; config true; + description "neighbor ebgp-multihop maximum hop count"; } // END of maxHopCount definition. leaf peerConnectInterval { @@ -2449,6 +2490,7 @@ submodule bgp { } default "1"; config true; + description "neighbor timers"; } // END of peerConnectInterval definition. leaf peerAsorigInterval { @@ -2458,6 +2500,7 @@ submodule bgp { } default "1"; config true; + description "neighbor as-origination-interval"; } // END of peerAsorigInterval definition. leaf peerRaInterval { @@ -2467,6 +2510,7 @@ submodule bgp { } default "0"; config true; + description "neighbor advertisement-interval"; } // END of peerRaInterval definition. leaf password { @@ -2474,12 +2518,14 @@ submodule bgp { type cml_data_types:CML_STRING_T; default "NULL"; config true; + description "neighbor password"; } // END of password definition. leaf dynamicCapability { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor capability dynamic"; } // END of dynamicCapability definition. leaf advertisedCapability { @@ -2504,6 +2550,7 @@ submodule bgp { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor capability route-refresh"; } // END of capabilityRouteRefresh definition. leaf advCapabilityRefresh { @@ -2540,6 +2587,7 @@ submodule bgp { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor collide-established"; } // END of collideEstablished definition. leaf sourceId { @@ -2547,48 +2595,56 @@ submodule bgp { type cml_data_types:CML_STRING_T; default "NULL"; config true; + description "neighbor update-source"; } // END of sourceId definition. leaf enforceMultihop { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor enforce-multihop"; } // END of enforceMultihop definition. leaf neighborOverrideCapability { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor override-capability"; } // END of neighborOverrideCapability definition. leaf neighborStrictCapability { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor strict-capability-match"; } // END of neighborStrictCapability definition. leaf disallowHoldtimer { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor disallow-infinite-holdtime"; } // END of disallowHoldtimer definition. leaf dontCapabilityNegotiate { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor dont-capability-negotiate"; } // END of dontCapabilityNegotiate definition. leaf transportConnectionPassive { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor passive"; } // END of transportConnectionPassive definition. leaf peerShutdown { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor shutdown"; } // END of peerShutdown definition. leaf noIfBinding { @@ -2604,6 +2660,7 @@ submodule bgp { } default "179"; config true; + description "neighbor port"; } // END of bgpPort definition. leaf bgpVersion { @@ -2611,18 +2668,21 @@ submodule bgp { type cml_data_types:CML_UINT8_T; default "4"; config true; + description "neighbor version"; } // END of bgpVersion definition. leaf peerIfName { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "neighbor interface"; } // END of peerIfName definition. leaf softReconfigInbound { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor soft-reconfiguration inbound"; } // END of softReconfigInbound definition. leaf weight { @@ -2632,6 +2692,7 @@ submodule bgp { } default "0"; config true; + description "neighbor weight"; } // END of weight definition. leaf maxPrefixes { @@ -2640,12 +2701,14 @@ submodule bgp { range "1..4294967295"; } config true; + description "neighbor maximum-prefix"; } // END of maxPrefixes definition. leaf maxPrefixeWarning { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor maximum-prefix warning"; } // END of maxPrefixeWarning definition. leaf threshold { @@ -2654,12 +2717,14 @@ submodule bgp { range "1..100"; } config true; + description "neighbor maximum-prefix threshold value percent"; } // END of threshold definition. leaf warning { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor maximum-prefix threshold warning"; } // END of warning definition. leaf allowAsNum { @@ -2669,6 +2734,7 @@ submodule bgp { } default "3"; config true; + description "neighbor allowas-in"; } // END of allowAsNum definition. leaf aclInfo { @@ -2681,6 +2747,7 @@ submodule bgp { mandatory false; type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; + description "neighbor distribute-list"; } // END of distributeListDirection definition. leaf prefixListAclInfo { @@ -2693,6 +2760,7 @@ submodule bgp { mandatory false; type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; + description "neighbor prefix-list"; } // END of prefixListDirection definition. leaf asListAclInfo { @@ -2705,36 +2773,42 @@ submodule bgp { mandatory false; type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; + description "neighbor filter-list"; } // END of asListDirection definition. leaf peerGroupTag { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "to add a neighbor to an existing peer-group"; } // END of peerGroupTag definition. leaf peerActivate { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor activate"; } // END of peerActivate definition. leaf unSuppressAclInfo { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "neighbor unsuppress-map"; } // END of unSuppressAclInfo definition. leaf peerRmapOriName { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "neighbor default-originate router-map"; } // END of peerRmapOriName definition. leaf defaultPeerRmapName { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor default-originate"; } // END of defaultPeerRmapName definition. leaf orfPrefixOpt { @@ -2747,6 +2821,7 @@ submodule bgp { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor orf prefix-list"; } // END of setNcpFlag definition. leaf peerRmapName { @@ -2759,6 +2834,7 @@ submodule bgp { mandatory false; type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; + description "neighbor route-map"; } // END of peerRmapDirection definition. leaf peerKeepAlive { @@ -2777,12 +2853,14 @@ submodule bgp { } default "90"; config true; + description "neighbor Keepalive and Holdtime"; } // END of peerHoldTime definition. leaf nextHopSelf { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor next-hop-self"; } // END of nextHopSelf definition. @@ -2982,142 +3060,17 @@ submodule bgp { leaf safi { - mandatory true; - type cml_data_types:CML_SAFI_TYPE_T; - config true; - } // END of safi definition. - - leaf aclInfoAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of aclInfoAf definition. - - leaf distributeListDirectionAf { - mandatory false; - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - } // END of distributeListDirectionAf definition. - - leaf prefixListAclInfoAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of prefixListAclInfoAf definition. - - leaf prefixListDirectionAf { - mandatory false; - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - } // END of prefixListDirectionAf definition. - - leaf asListAclInfoAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of asListAclInfoAf definition. - - leaf asListDirectionAf { - mandatory false; - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - } // END of asListDirectionAf definition. - - leaf maxPrefixesAf { - mandatory false; - type cml_data_types:CML_UINT32_T; - config true; - } // END of maxPrefixesAf definition. - - leaf thresholdAf { - mandatory false; - type cml_data_types:CML_UINT8_T; - config true; - } // END of thresholdAf definition. - - leaf warningAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of warningAf definition. - - leaf nextHopSelfAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of nextHopSelfAf definition. - - leaf allowAsNumAf { - mandatory false; - type cml_data_types:CML_UINT32_T { - range "1..10"; - } - default "3"; - config true; - } // END of allowAsNumAf definition. - - leaf unSuppressAclInfoAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of unSuppressAclInfoAf definition. - - leaf defaultPeerRmapNameAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of defaultPeerRmapNameAf definition. - - leaf peerRmapOriNameAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of peerRmapOriNameAf definition. - - leaf softReconfigInboundAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of softReconfigInboundAf definition. - - leaf weightAf { - mandatory false; - type cml_data_types:CML_UINT16_T { - range "0..65535"; - } - default "0"; - config true; - } // END of weightAf definition. - - leaf neighborRouteServerClientAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of neighborRouteServerClientAf definition. - - leaf peerRouteReflectorAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of peerRouteReflectorAf definition. - - leaf peerRemovePvtAsAf { - mandatory false; - type cml_data_types:CML_BOOL_T; + mandatory true; + type cml_data_types:CML_SAFI_TYPE_T; config true; - } // END of peerRemovePvtAsAf definition. + } // END of safi definition. - leaf sendCommunityAf { + leaf nextHopSelfAf { mandatory false; type cml_data_types:CML_BOOL_T; config true; - } // END of sendCommunityAf definition. - - leaf sendCommunityTypeAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of sendCommunityTypeAf definition. + description "neighbor next-hop-self for address family"; + } // END of nextHopSelfAf definition. leaf peerHoldTimeRunAf { mandatory false; @@ -3353,66 +3306,6 @@ submodule bgp { config false; } // END of sendExtCommunityAf definition. - leaf neighborAttrUnchangedAsPathAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of neighborAttrUnchangedAsPathAf definition. - - leaf neighborAttrUnchangedNexthopAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of neighborAttrUnchangedNexthopAf definition. - - leaf neighborAttrUnchangedMedAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of neighborAttrUnchangedMedAf definition. - - leaf orfPrefixOptAf { - mandatory false; - type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; - config true; - } // END of orfPrefixOptAf definition. - - leaf setNcpFlagAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of setNcpFlagAf definition. - - leaf peerGroupTagAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of peerGroupTagAf definition. - - leaf peerRmapNameAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of peerRmapNameAf definition. - - leaf peerRmapDirectionAf { - mandatory false; - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - } // END of peerRmapDirectionAf definition. - - leaf setGracefulShut { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of setGracefulShut definition. - - leaf neighborCapabilityGrstAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of neighborCapabilityGrstAf definition. - leaf maxPrefixesWarningAf { mandatory false; type cml_data_types:CML_INT32_T; @@ -3923,12 +3816,6 @@ submodule bgp { config false; } // END of bpfEstUpTimeAf definition. - leaf bpfEstDownTimeAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of bpfEstDownTimeAf definition. - leaf lastReadTimeAf { mandatory false; type cml_data_types:CML_STRING_T; @@ -4134,22 +4021,185 @@ submodule bgp { } } // END of vrfName definition. + leaf peerAsAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + config true; + description "neighbor autonomous system number (ASN) for address family"; + } // END of peerAsAf definition. + + leaf bgpVersionAf { + mandatory false; + type cml_data_types:CML_UINT8_T; + default "4"; + config true; + description "neighbor version for Address Family"; + } // END of bgpVersionAf definition. + + leaf peerConnectIntervalAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + config true; + description "neighbor timers for address-family"; + } // END of peerConnectIntervalAf definition. + + leaf peerKeepAliveAf { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "30"; + config true; + } // END of peerKeepAliveAf definition. + + leaf peerHoldTimeAf { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "90"; + config true; + description "neighbor Keepalive and Holdtime for address-family"; + } // END of peerHoldTimeAf definition. + + leaf enforceMultihopAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor enforce-multihop for address-family"; + } // END of enforceMultihopAf definition. + + leaf peerShutdownAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor shutdown for address-family"; + } // END of peerShutdownAf definition. + + leaf bgpPortAf { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "179"; + config true; + description "neighbor port for address-family"; + } // END of bgpPortAf definition. + + leaf peerGroupStrAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor peer-group for address family"; + } // END of peerGroupStrAf definition. + + leaf passwordAf { + mandatory false; + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + description "neighbor password for address-family"; + } // END of passwordAf definition. + + leaf transportConnectionPassiveAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor passive for address-family"; + } // END of transportConnectionPassiveAf definition. + + leaf maxHopCountAf { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "255"; + config true; + description "neighbor max ebgp-multihop for address-family"; + } // END of maxHopCountAf definition. + + leaf timeToLiveAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor ebgp-multihop for address-family"; + } // END of timeToLiveAf definition. + + leaf dontCapabilityNegotiateAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor dont-capability-negotiate for address-family"; + } // END of dontCapabilityNegotiateAf definition. + + leaf connRetryIntervalAf { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + default "120"; + config true; + description "neighbor connection-retry-time for address-family"; + } // END of connRetryIntervalAf definition. + + leaf capabilityRouteRefreshAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor capability route-refresh for address-family"; + } // END of capabilityRouteRefreshAf definition. + + leaf dynamicCapabilityAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor capability dynamic for address-family"; + } // END of dynamicCapabilityAf definition. + + leaf peerRaIntervalAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + default "0"; + config true; + description "neighbor advertisement-interval for address-family"; + } // END of peerRaIntervalAf definition. + + leaf peerAsorigIntervalAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + config true; + description "neighbor as-origination-interval for address-family"; + } // END of peerAsorigIntervalAf definition. + leaf neighborAsOverrideAf { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "neighbor asoverride for address family"; } // END of neighborAsOverrideAf definition. leaf peerIfNameAf { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "neighbor interface for address family"; } // END of peerIfNameAf definition. leaf peerDescAf { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "neighbor description for address family"; } // END of peerDescAf definition. leaf peerRestartTimeAf { @@ -4158,39 +4208,261 @@ submodule bgp { range "1..3600"; } config true; + description "neighbor restart-time for address-family"; } // END of peerRestartTimeAf definition. leaf peerActivateAf { mandatory false; - type cml_data_types:CML_BOOL_T; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor activate for address family"; + } // END of peerActivateAf definition. + + leaf defaultPeerRmapNameAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor default-originate for address family"; + } // END of defaultPeerRmapNameAf definition. + + leaf peerRmapOriNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + description "neighbor default-originate router-map for address-family"; + } // END of peerRmapOriNameAf definition. + + leaf softReconfigInboundAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor soft-reconfiguration inbound for address family"; + } // END of softReconfigInboundAf definition. + + leaf weightAf { + mandatory false; + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "0"; + config true; + description "neighbor weight for address family"; + } // END of weightAf definition. + + leaf neighborRouteServerClientAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor route-server-client for address family"; + } // END of neighborRouteServerClientAf definition. + + leaf peerRouteReflectorAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor route-reflector-client for address family"; + } // END of peerRouteReflectorAf definition. + + leaf peerRemovePvtAsAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor remove-private-AS for address family"; + } // END of peerRemovePvtAsAf definition. + + leaf sendCommunityAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor send-community for address family"; + } // END of sendCommunityAf definition. + + leaf sendCommunityTypeAf { + mandatory false; + type cml_data_types:CML_BGP_SEND_COMMU_TYPE_T; + config true; + description "neighbor send-community attribute for address family"; + } // END of sendCommunityTypeAf definition. + + leaf neighborAttrUnchangedAsPathAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor attribute-unchanged as-path for address family"; + } // END of neighborAttrUnchangedAsPathAf definition. + + leaf neighborAttrUnchangedNexthopAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor attribute-unchanged next-hop for address family"; + } // END of neighborAttrUnchangedNexthopAf definition. + + leaf neighborAttrUnchangedMedAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor attribute-unchanged med for address family"; + } // END of neighborAttrUnchangedMedAf definition. + + leaf orfPrefixOptAf { + mandatory false; + type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; + config true; + description "orf prefix-list "; + } // END of orfPrefixOptAf definition. + + leaf setNcpFlagAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor orf prefix-list for address family"; + } // END of setNcpFlagAf definition. + + leaf siteOriginIdAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + description "neighbor site of origin for address family"; + } // END of siteOriginIdAf definition. + + leaf peerAllowEbgpVpnAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor allow-ebgp-vpn for address family"; + } // END of peerAllowEbgpVpnAf definition. + + leaf allowAsNumAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..10"; + } + default "3"; + config true; + description "neighbor allowas-in for address family"; + } // END of allowAsNumAf definition. + + leaf neighborCapabilityGrstAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor capability graceful-restart for address family"; + } // END of neighborCapabilityGrstAf definition. + + leaf aclInfoAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of aclInfoAf definition. + + leaf distributeListDirectionAf { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + description "neighbor distribute-list for address family"; + } // END of distributeListDirectionAf definition. + + leaf asListAclInfoAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of asListAclInfoAf definition. + + leaf asListDirectionAf { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + description "neighbor filter-list for address family"; + } // END of asListDirectionAf definition. + + leaf peerGroupTagAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + description "to add a neighbor to an existing peer-group for address family"; + } // END of peerGroupTagAf definition. + + leaf prefixListAclInfoAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of prefixListAclInfoAf definition. + + leaf prefixListDirectionAf { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + description "neighbor prefix-list for address family"; + } // END of prefixListDirectionAf definition. + + leaf peerRmapNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of peerRmapNameAf definition. + + leaf peerRmapDirectionAf { + mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + config true; + description "neighbor route-map for address family"; + } // END of peerRmapDirectionAf definition. + + leaf setGracefulShutAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor g-shut for address-family"; + } // END of setGracefulShutAf definition. + + leaf gshutTimerAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "10..65535"; + } config true; - } // END of peerActivateAf definition. + description "neighbor g-shut-timer for address-family"; + } // END of gshutTimerAf definition. - leaf peerAsAf { + leaf maxPrefixesAf { mandatory false; type cml_data_types:CML_UINT32_T { range "1..4294967295"; } config true; - } // END of peerAsAf definition. + description "neighbor maximum-prefix for address-family"; + } // END of maxPrefixesAf definition. - leaf siteOriginIdAf { + leaf maxPrefixeWarningAf { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_BOOL_T; config true; - } // END of siteOriginIdAf definition. + description "neighbor maximum-prefix warning for address-family"; + } // END of maxPrefixeWarningAf definition. - leaf peerAllowEbgpVpnAf { + leaf thresholdAf { mandatory false; - type cml_data_types:CML_BOOL_T; + type cml_data_types:CML_UINT8_T { + range "1..100"; + } config true; - } // END of peerAllowEbgpVpnAf definition. + description "neighbor maximum-prefix threshold for address-family"; + } // END of thresholdAf definition. - leaf peerGroupStrAf { + leaf warningAf { mandatory false; type cml_data_types:CML_BOOL_T; config true; - } // END of peerGroupStrAf definition. + description "neighbor maximum-prefix threshold warning for address-family"; + } // END of warningAf definition. + + leaf unSuppressAclInfoAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + description "neighbor unsuppress-map for address-family"; + } // END of unSuppressAclInfoAf definition. } // End of vrfobj-list @@ -4353,11 +4625,11 @@ submodule bgp { } // End of bgpPeerAddressFamily-list } // End of bgpPeer-list - list netwAddrFamily { + list addrFamily { description - "netwAddrFamily"; + "addrFamily"; config true; key "afi"; @@ -4370,11 +4642,11 @@ submodule bgp { } // END of afi definition. - list netwSubAddrFamily { + list subAddrFamily { description - "netwSubAddrFamily"; + "subAddrFamily"; config true; key "safi"; @@ -4386,18 +4658,12 @@ submodule bgp { config true; } // END of safi definition. - leaf vrfName { - mandatory false; - type leafref { - path "/vr/vrf/vrfName"; - } - } // END of vrfName definition. - - leaf autoSummaryAf { + leaf setClientReflectAf { mandatory false; type cml_data_types:CML_BOOL_T; config true; - } // END of autoSummaryAf definition. + description "bgp client-to-client reflection for address-family"; + } // END of setClientReflectAf definition. leaf ntwkPrefixCountAf { mandatory false; @@ -4417,98 +4683,6 @@ submodule bgp { config false; } // END of bgpTableVersionAf definition. - leaf setSyncFlagAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of setSyncFlagAf definition. - - leaf setNwSyncFlagAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of setNwSyncFlagAf definition. - - leaf distanceEbgpAf { - mandatory false; - type cml_data_types:CML_UINT8_T { - range "1..255"; - } - default "20"; - config true; - } // END of distanceEbgpAf definition. - - leaf distanceIbgpAf { - mandatory false; - type cml_data_types:CML_UINT8_T { - range "1..255"; - } - default "200"; - config true; - } // END of distanceIbgpAf definition. - - leaf distanceLocalAf { - mandatory false; - type cml_data_types:CML_UINT8_T { - range "1..255"; - } - default "200"; - config true; - } // END of distanceLocalAf definition. - - leaf setDampeningFlagAf { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of setDampeningFlagAf definition. - - leaf halfLifeAf { - mandatory false; - type cml_data_types:CML_UINT32_T { - range "1..45"; - } - default "15"; - config true; - } // END of halfLifeAf definition. - - leaf reusePenaltyAf { - mandatory false; - type cml_data_types:CML_UINT32_T { - range "1..20000"; - } - config true; - } // END of reusePenaltyAf definition. - - leaf suppressPenaltyAf { - mandatory false; - type cml_data_types:CML_UINT32_T { - range "1..20000"; - } - config true; - } // END of suppressPenaltyAf definition. - - leaf maxSuppressAf { - mandatory false; - type cml_data_types:CML_UINT32_T { - range "1..255"; - } - config true; - } // END of maxSuppressAf definition. - - leaf unreachHalfLifeAf { - mandatory false; - type cml_data_types:CML_UINT32_T { - range "1..45"; - } - config true; - } // END of unreachHalfLifeAf definition. - - leaf dampeningRmapNameAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of dampeningRmapNameAf definition. - list bgpAddressFamilyAggregateAddrList { @@ -4524,38 +4698,30 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "aggregate-address for address-family"; } // END of aggregateAddrAf definition. leaf aggregateTypeAf { mandatory false; type cml_data_types:CML_BGP_AGGREGATE_ADDR_TYPE_T; config true; + description "aggregate-address-type for address-family"; } // END of aggregateTypeAf definition. leaf aggregateAsSetAf { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "redistribute as-set for address family"; } // END of aggregateAsSetAf definition. leaf aggregateSummOnlyAf { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "redistribute summary-only for address family"; } // END of aggregateSummOnlyAf definition. - leaf aggregateAs { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of aggregateAs definition. - - leaf aggregateAs4 { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of aggregateAs4 definition. - } // End of bgpAddressFamilyAggregateAddrList-list list networkListAf { @@ -4592,23 +4758,11 @@ submodule bgp { config false; } // END of bgpShowTypeStrAf definition. - leaf bgpLongerPrefixCmd { + leaf bgpLongerPrefixCmdAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of bgpLongerPrefixCmd definition. - - leaf lastUpdateAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of lastUpdateAf definition. - - leaf routeGetReuseTimeAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of routeGetReuseTimeAf definition. + } // END of bgpLongerPrefixCmdAf definition. leaf dampInfoTimesAf { mandatory false; @@ -4616,126 +4770,18 @@ submodule bgp { config false; } // END of dampInfoTimesAf definition. - leaf routeGetPenaltyAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of routeGetPenaltyAf definition. - leaf routeGetFlapCountAf { mandatory false; type cml_data_types:CML_INT32_T; config false; } // END of routeGetFlapCountAf definition. - leaf bgpInfoSelectedAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpInfoSelectedAf definition. - - leaf atomicAggregateAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of atomicAggregateAf definition. - - leaf multiInstalledAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of multiInstalledAf definition. - - leaf ecmpMultiCandidateAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of ecmpMultiCandidateAf definition. - - leaf bgpInfoTypeAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpInfoTypeAf definition. - - leaf bgpInfoSubTypeAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpInfoSubTypeAf definition. - - leaf bgpConfedPeerAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpConfedPeerAf definition. - leaf peerLocalAsAf { mandatory false; type cml_data_types:CML_INT32_T; config false; } // END of peerLocalAsAf definition. - leaf bgpInfoStaleAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpInfoStaleAf definition. - - leaf routeValidStateAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of routeValidStateAf definition. - - leaf briLabelAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of briLabelAf definition. - - leaf ntwkBgpOriginAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of ntwkBgpOriginAf definition. - - leaf networkRemoteAddrAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of networkRemoteAddrAf definition. - - leaf originatorIdAf { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of originatorIdAf definition. - - leaf ibgpMetricAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of ibgpMetricAf definition. - - leaf nhopValidAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of nhopValidAf definition. - - leaf historyAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of historyAf definition. - - leaf reflectorClientAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of reflectorClientAf definition. - leaf ntwkPathCountAf { mandatory false; type cml_data_types:CML_INT32_T; @@ -4766,23 +4812,23 @@ submodule bgp { config false; } // END of flapRecordDurationAf definition. - leaf bgpDampPathCmd { + leaf bgpDampPathCmdAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of bgpDampPathCmd definition. + } // END of bgpDampPathCmdAf definition. - leaf bgpDampFlapCmd { + leaf bgpDampFlapCmdAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of bgpDampFlapCmd definition. + } // END of bgpDampFlapCmdAf definition. - leaf bgpIncosistentAsCmd { + leaf bgpIncosistentAsCmdAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of bgpIncosistentAsCmd definition. + } // END of bgpIncosistentAsCmdAf definition. leaf dampTimeToReuseAf { mandatory false; @@ -4796,17 +4842,17 @@ submodule bgp { config false; } // END of ntwkPrefixBestPathCountAf definition. - leaf checkCidr { + leaf checkCidrAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of checkCidr definition. + } // END of checkCidrAf definition. - leaf bgpCommunityCmd { + leaf bgpCommunityCmdAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of bgpCommunityCmd definition. + } // END of bgpCommunityCmdAf definition. leaf bgpInfoFlagAf { mandatory false; @@ -4826,17 +4872,17 @@ submodule bgp { config false; } // END of bgpAttrNextHopAf definition. - leaf bgpAttrNextHopLenAf { + leaf bgpAttrMpNexthopGlobalAf { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of bgpAttrNextHopLenAf definition. + } // END of bgpAttrMpNexthopGlobalAf definition. - leaf bgpAttrMpNexthopGlobalAf { + leaf bgpAttrNextHopLenAf { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of bgpAttrMpNexthopGlobalAf definition. + } // END of bgpAttrNextHopLenAf definition. leaf bgpAttrMpNexthopLocalAf { mandatory false; @@ -4886,258 +4932,567 @@ submodule bgp { config false; } // END of bgpAsPath4BOriginAf definition. + } // End of networkListAf-list - list advPeerListAf { - + list bgpShowRouteAf { + - description - "advPeerListAf"; + description + "bgpShowRouteAf"; + + config false; + key "networkAddrRouteAf"; + + leaf networkAddrRouteAf { + mandatory true; + type cml_data_types:CML_STRING_T; config false; - key "advPeerAddrAf"; + } // END of networkAddrRouteAf definition. - - leaf advPeerAddrAf { - mandatory true; - type cml_data_types:CML_STRING_T; - config false; - } // END of advPeerAddrAf definition. + leaf ntwkPathCountRouteAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkPathCountRouteAf definition. - leaf advNonPeerGroupAf { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of advNonPeerGroupAf definition. + leaf ntwkPrefixBestPathCountRouteAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkPrefixBestPathCountRouteAf definition. - } // End of advPeerListAf-list + leaf noAdvertiseRouteAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of noAdvertiseRouteAf definition. - list advPeerGroupListAf { - + leaf noExportRouteAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of noExportRouteAf definition. - description - "advPeerGroupListAf"; + leaf localAsRouteAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of localAsRouteAf definition. + + leaf suppressRouteAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of suppressRouteAf definition. + + leaf advPeerGroupRouteAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advPeerGroupRouteAf definition. + + leaf advPeerAddrRouteAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of advPeerAddrRouteAf definition. + + leaf advNonPeerGroupRouteAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of advNonPeerGroupRouteAf definition. + leaf advPeerGroupNameRouteAf { + mandatory false; + type cml_data_types:CML_STRING_T; config false; - key "advPeerGroupNameAf"; + } // END of advPeerGroupNameRouteAf definition. + container routeShowVtyOut { - leaf advPeerGroupNameAf { - mandatory true; - type cml_data_types:CML_STRING_T; - config false; - } // END of advPeerGroupNameAf definition. + config false; + + description + "routeShowVtyOut"; - leaf advNonPeerGroupAf { + leaf ibgpMetricRouteAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of advNonPeerGroupAf definition. - - } // End of advPeerGroupListAf-list - } // End of networkListAf-list + } // END of ibgpMetricRouteAf definition. - list vrfobj { - + leaf routeBgpAsPathRouteAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeBgpAsPathRouteAf definition. - description - "vrfobj"; + leaf aggregateAsRouteAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of aggregateAsRouteAf definition. - config true; - key "vrfName"; + leaf aggregatorAddrRouteAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of aggregatorAddrRouteAf definition. - - leaf vrfName { - mandatory true; - type leafref { - path "/vr/vrf/vrfName"; - } - } // END of vrfName definition. + leaf reflectorClientRouteAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of reflectorClientRouteAf definition. + leaf routeDampeningFlagRouteAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of routeDampeningFlagRouteAf definition. - list bgpAddressFamilyNetworkList { - + leaf historyRouteAf { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of historyRouteAf definition. - description - "bgpAddressFamilyNetworkList"; + leaf routeAttrMpNexthopGlobalInRouteAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeAttrMpNexthopGlobalInRouteAf definition. - config true; - key "localAddrAf"; + leaf routeAttrNextHopRouteAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeAttrNextHopRouteAf definition. - - leaf localAddrAf { - mandatory true; - type cml_data_types:CML_IP_PREFIX_ADDR_T; - config true; - } // END of localAddrAf definition. + leaf routeAttrMpNexthopGlobalRouteAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of routeAttrMpNexthopGlobalRouteAf definition. - leaf localAddrMaskAf { + leaf routeAttrMpNexthopLocalRouteAf { mandatory false; - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of localAddrMaskAf definition. + type cml_data_types:CML_STRING_T; + config false; + } // END of routeAttrMpNexthopLocalRouteAf definition. - leaf networkRmapNameAf { + leaf routeAttrMpNexthopLocal1RouteAf { mandatory false; type cml_data_types:CML_STRING_T; - config true; - } // END of networkRmapNameAf definition. + config false; + } // END of routeAttrMpNexthopLocal1RouteAf definition. - leaf backdoorAf { + leaf nhopValidRouteAf { mandatory false; - type cml_data_types:CML_BOOL_T; - default false; - config true; - } // END of backdoorAf definition. + type cml_data_types:CML_INT32_T; + config false; + } // END of nhopValidRouteAf definition. - leaf rfdGetRecordDuraion { + leaf routePeerAddrRouteAf { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of rfdGetRecordDuraion definition. + } // END of routePeerAddrRouteAf definition. - leaf timeCal { + leaf originatorIdRouteAf { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of timeCal definition. + } // END of originatorIdRouteAf definition. - leaf rfdGetRecordDuration { + leaf originatorId1RouteAf { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of rfdGetRecordDuration definition. + } // END of originatorId1RouteAf definition. - leaf bgpInfoState { + leaf networkRemoteAddrRouteAf { mandatory false; - type cml_data_types:CML_INT32_T; + type cml_data_types:CML_STRING_T; config false; - } // END of bgpInfoState definition. + } // END of networkRemoteAddrRouteAf definition. - leaf peerRemoteAddr { + leaf ntwkBgpOriginRouteAf { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of peerRemoteAddr definition. + } // END of ntwkBgpOriginRouteAf definition. + + leaf routeMedFlagTypeRouteAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of routeMedFlagTypeRouteAf definition. - leaf nhopValid { + leaf routeMedValRouteAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of nhopValid definition. + } // END of routeMedValRouteAf definition. - leaf peerSelf { + leaf routeLocalPrefRouteAf { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_INT32_T; config false; - } // END of peerSelf definition. + } // END of routeLocalPrefRouteAf definition. - leaf ntwkPrefixBestPathCountAf { + leaf routeWeightRouteAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of ntwkPrefixBestPathCountAf definition. + } // END of routeWeightRouteAf definition. - leaf noAdvertise { + leaf briLabelRouteAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of noAdvertise definition. + } // END of briLabelRouteAf definition. - leaf noExport { + leaf routeValidStateRouteAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of noExport definition. + } // END of routeValidStateRouteAf definition. - leaf localAs { + leaf bgpInfoStaleRouteAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of localAs definition. + } // END of bgpInfoStaleRouteAf definition. + + leaf routePeerLocalAsRouteAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of routePeerLocalAsRouteAf definition. - leaf suppress { + leaf bgpConfedPeerRouteAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of suppress definition. + } // END of bgpConfedPeerRouteAf definition. - leaf bgpInfoFlag { + leaf bgpInfoTypeRouteAf { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of bgpInfoFlag definition. + } // END of bgpInfoTypeRouteAf definition. - leaf bgpAttrMpNexthopGlobalIn { + leaf ecmpMultiCandidateRouteAf { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_INT32_T; config false; - } // END of bgpAttrMpNexthopGlobalIn definition. + } // END of ecmpMultiCandidateRouteAf definition. - leaf bgpAttrNextHop { + leaf multiInstalledRouteAf { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_INT32_T; config false; - } // END of bgpAttrNextHop definition. + } // END of multiInstalledRouteAf definition. - leaf bgpAttrNextHopLen { + leaf routeSyncFlagRouteAf { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_BOOL_T; config false; - } // END of bgpAttrNextHopLen definition. + } // END of routeSyncFlagRouteAf definition. - leaf bgpAttrMpNexthopGlobal { + leaf atomicAggregateRouteAf { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_INT32_T; config false; - } // END of bgpAttrMpNexthopGlobal definition. + } // END of atomicAggregateRouteAf definition. - leaf bgpAttrMpNexthopLocal { + leaf bgpInfoSelectedRouteAf { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_INT32_T; config false; - } // END of bgpAttrMpNexthopLocal definition. + } // END of bgpInfoSelectedRouteAf definition. - leaf bgpUpTime { + leaf routeCommNameRouteAf { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of bgpUpTime definition. + } // END of routeCommNameRouteAf definition. - leaf medFlagType { + leaf clusterListRouteAf { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of medFlagType definition. + } // END of clusterListRouteAf definition. - leaf bgpMedVal { + leaf routeGetPenaltyRouteAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of bgpMedVal definition. + } // END of routeGetPenaltyRouteAf definition. - leaf bgpAsPathCount { + leaf routRecordTimeRouteAf { mandatory false; - type cml_data_types:CML_INT32_T; + type cml_data_types:CML_STRING_T; config false; - } // END of bgpAsPathCount definition. + } // END of routRecordTimeRouteAf definition. - leaf bgpAsPath4BCount { + leaf routeGetFlapCountRouteAf { mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of bgpAsPath4BCount definition. + } // END of routeGetFlapCountRouteAf definition. - leaf bgpAsPathOrigin { + leaf routeGetReuseTimeRouteAf { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of bgpAsPathOrigin definition. + } // END of routeGetReuseTimeRouteAf definition. - leaf bgpAsPath4BOrigin { + leaf lastUpdateRouteAf { mandatory false; type cml_data_types:CML_STRING_T; config false; - } // END of bgpAsPath4BOrigin definition. + } // END of lastUpdateRouteAf definition. + + } // END of routeShowVtyOut-container definition. + } // End of bgpShowRouteAf-list + + list vrfobj { + + + description + "vrfobj"; + + config true; + key "vrfName"; + + + leaf vrfName { + mandatory true; + type leafref { + path "/vr/vrf/vrfName"; + } + } // END of vrfName definition. + + leaf autoSummaryAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "auto-summary for address-family"; + } // END of autoSummaryAf definition. + + leaf setNwSyncFlagAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "network synchronization for address-family"; + } // END of setNwSyncFlagAf definition. + + leaf halfLifeAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..45"; + } + default "15"; + config true; + description "bgp route dampening reachability half-life time for address family"; + } // END of halfLifeAf definition. + + leaf reusePenaltyAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..20000"; + } + config true; + } // END of reusePenaltyAf definition. + + leaf suppressPenaltyAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..20000"; + } + config true; + } // END of suppressPenaltyAf definition. + + leaf maxSuppressAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..255"; + } + config true; + description "bgp route dampening to start suppressing a route for address family"; + } // END of maxSuppressAf definition. + + leaf unreachHalfLifeAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..45"; + } + config true; + description "bgp route dampening Un-reachability Half-life time for address family"; + } // END of unreachHalfLifeAf definition. + + leaf dampeningRmapNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + description "bgp dampening route-map for address-family"; + } // END of dampeningRmapNameAf definition. + + leaf tableMapAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + description "bgp table-map for address-family"; + } // END of tableMapAf definition. + + leaf tableMapFilterAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "bgp table-map filter for address-family"; + } // END of tableMapFilterAf definition. + + leaf setDampeningFlagAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "bgp dampening for address-family"; + } // END of setDampeningFlagAf definition. + + leaf distanceEbgpAf { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "20"; + config true; + } // END of distanceEbgpAf definition. + + leaf distanceIbgpAf { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "200"; + config true; + } // END of distanceIbgpAf definition. + + leaf distanceLocalAf { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "200"; + config true; + description "administrative distance for address-family"; + } // END of distanceLocalAf definition. + + leaf setSyncFlagAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "synchronization for address-family"; + } // END of setSyncFlagAf definition. + + leaf setGshutAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "bgp g-shut for address family"; + } // END of setGshutAf definition. + + leaf setGshutCapableAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + description "bgp g-shut-capable for address-family"; + } // END of setGshutCapableAf definition. + + leaf gshutLocalPrefAf { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + config true; + description "bgp g-shut-local-preference for address-family"; + } // END of gshutLocalPrefAf definition. + + leaf bgpTypeAf { + mandatory false; + type cml_data_types:CML_BGP_MAXPATH_T; + config true; + } // END of bgpTypeAf definition. + + leaf multipathsNumAf { + mandatory false; + type cml_data_types:CML_INT32_T { + range "2..64"; + } + default "2"; + config true; + description "multipath ECMP numbers for eBGP or iBGP address family"; + } // END of multipathsNumAf definition. + + leaf confedIdAf { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + description "bgp confederation identifier in digits for address-family"; + } // END of confedIdAf definition. + + leaf peerConfedIdAf { + mandatory false; + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + description "bgp confederation peers for address-family"; + } // END of peerConfedIdAf definition. + + + list bgpAddressFamilyNetworkList { + + + description + "bgpAddressFamilyNetworkList"; + + config true; + key "localAddrAf"; + + + leaf localAddrAf { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of localAddrAf definition. + + leaf localAddrMaskAf { + mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + description "network address with mask for address family"; + } // END of localAddrMaskAf definition. + + leaf networkRmapNameAf { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of networkRmapNameAf definition. + + leaf backdoorAf { + mandatory false; + type cml_data_types:CML_BOOL_T; + default false; + config true; + description "network address with backdoor for address family"; + } // END of backdoorAf definition. } // End of bgpAddressFamilyNetworkList-list @@ -5155,12 +5510,14 @@ submodule bgp { mandatory true; type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; config true; + description "redistribute for address-family"; } // END of redistTypeAf definition. leaf redistRmapNameAf { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "redistribute route map reference for address family"; } // END of redistRmapNameAf definition. leaf redistOspfNoAf { @@ -5169,18 +5526,20 @@ submodule bgp { range "0..65535"; } config true; + description "redistribute with ospf proc Id for address family"; } // END of redistOspfNoAf definition. leaf redistOspfRmapAf { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "redistribute with ospf proc Id and route map reference for address family"; } // END of redistOspfRmapAf definition. } // End of bgpAddressFamilyRedistList-list } // End of vrfobj-list - } // End of netwSubAddrFamily-list - } // End of netwAddrFamily-list + } // End of subAddrFamily-list + } // End of addrFamily-list } // End of bgp-list } // END of bgp-grouping definition. @@ -5198,45 +5557,50 @@ submodule bgp { leaf vrId { mandatory true; - type leafref { - path "/vr/vrId"; - } + type cml_data_types:CML_UINT32_T; + config true; } // END of vrId definition. leaf snmpRestart { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "snmp restart bgp"; } // END of snmpRestart definition. leaf aggNexthop { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "bgp aggregate-nexthop-check"; } // END of aggNexthop definition. leaf pathSelect { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "bgp rfc1771-path-select"; } // END of pathSelect definition. leaf setDisableAdjOut { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "bgp disable-adj-out"; } // END of setDisableAdjOut definition. leaf setExtAsnCap { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "bgp extended-asn-cap"; } // END of setExtAsnCap definition. leaf setNexthopTriggerEnable { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "bgp nexthop-trigger enable"; } // END of setNexthopTriggerEnable definition. leaf delayInterval { @@ -5246,30 +5610,35 @@ submodule bgp { } default "5"; config true; + description "bgp nexthop-trigger delay"; } // END of delayInterval definition. leaf rfc1771StrictSet { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "bgp rfc1771-strict"; } // END of rfc1771StrictSet definition. leaf multiInstance { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "bgp multiple-instance"; } // END of multiInstance definition. leaf allowSamePeer { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "bgp multiple-instance allow-same-peer"; } // END of allowSamePeer definition. leaf configType { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "bgp config-type"; } // END of configType definition. @@ -5321,6 +5690,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "community-list"; } // END of commListValue definition. } // End of commListVal-list @@ -5360,6 +5730,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; + description "action type for community-list number"; } // END of action definition. @@ -5377,6 +5748,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "community-list number"; } // END of commListValue definition. } // End of commListVal-list @@ -5414,6 +5786,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; + description "action type for standard community name"; } // END of action definition. @@ -5431,6 +5804,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "standard community name"; } // END of commListValue definition. } // End of commListVal-list @@ -5487,6 +5861,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "expanded community-list number"; } // END of regExpList definition. } // End of commListVal-list @@ -5541,6 +5916,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "community-list expanded"; } // END of regExpList definition. } // End of commListVal-list @@ -5597,6 +5973,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "standard extended community list number"; } // END of extCommListValue definition. } // End of extCommListVal-list @@ -5674,6 +6051,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "standard extended-community list for rt or soo"; } // END of extCommListValue definition. } // End of extCommListVal-list @@ -5731,6 +6109,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "extended community list number"; } // END of extCommListValue definition. } // End of extCommListVal-list @@ -5785,6 +6164,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "expanded community list number"; } // END of extCommListValue definition. } // End of extCommListVal-list @@ -5839,6 +6219,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "ip as-path access-list"; } // END of bgpRegExp definition. } // End of bgpRegExp-list @@ -5861,9 +6242,8 @@ submodule bgp { leaf vrId { mandatory true; - type leafref { - path "/vr/vrId"; - } + type cml_data_types:CML_UINT32_T; + config true; } // END of vrId definition. leaf debugFlag { @@ -5890,55 +6270,57 @@ submodule bgp { } // END of bgpDebug-grouping definition. - grouping hashTableInfo-grouping { - list hashTableInfo { + grouping hashTableSize-grouping { + list hashTableSize { description - "hashTableInfo"; + "hashTableSize"; config false; - key "hashBacket"; + key "hashSize"; - leaf hashBacket { + leaf hashSize { mandatory true; - type cml_data_types:CML_STRING_T; - config false; - } // END of hashBacket definition. - - leaf hashRefCnt { - mandatory false; type cml_data_types:CML_INT32_T; config false; - } // END of hashRefCnt definition. + } // END of hashSize definition. - leaf hashAsStr { - mandatory false; - type cml_data_types:CML_STRING_T; + container hashTableInfo { + config false; - } // END of hashAsStr definition. - leaf hashComStr { - mandatory false; - type cml_data_types:CML_STRING_T; - config false; - } // END of hashComStr definition. + description + "hashTableInfo"; - leaf bgpPathCmd { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpPathCmd definition. + leaf hashBacket { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of hashBacket definition. - leaf bgpComInfoCmd { - mandatory false; - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpComInfoCmd definition. + leaf hashRefCnt { + mandatory false; + type cml_data_types:CML_INT32_T; + config false; + } // END of hashRefCnt definition. + + leaf hashAsStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of hashAsStr definition. + + leaf hashComStr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of hashComStr definition. - } // End of hashTableInfo-list - } // END of hashTableInfo-grouping definition. + } // END of hashTableInfo-container definition. + } // End of hashTableSize-list + } // END of hashTableSize-grouping definition. grouping vrfTable-grouping { @@ -5969,6 +6351,7 @@ submodule bgp { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "route distinguisher"; } // END of rdStr definition. @@ -5992,6 +6375,7 @@ submodule bgp { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "route distinguisher"; } // END of rtRdStr definition. } // End of routeTarget-list diff --git a/yang-files/bridge.yang b/yang-files/bridge.yang index 6d0a110b..558614d8 100644 --- a/yang-files/bridge.yang +++ b/yang-files/bridge.yang @@ -75,6 +75,7 @@ submodule bridge { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "bridge address"; } // END of macAddr definition. leaf discardForward { @@ -106,6 +107,7 @@ submodule bridge { mandatory false; type cml_data_types:CML_BRIDGE_AGEING_STATE; config true; + description "bridge ageing"; } // END of ageingStatus definition. leaf learning { @@ -113,6 +115,7 @@ submodule bridge { type cml_data_types:CML_BOOL_T; default false; config true; + description "bridge acquire"; } // END of learning definition. leaf ageingTime { @@ -122,6 +125,7 @@ submodule bridge { } default "300"; config true; + description "bridge ageing time"; } // END of ageingTime definition. leaf mstpEnabled { @@ -129,6 +133,7 @@ submodule bridge { type cml_data_types:CML_ENABLE_DISABLE_T; default "disable"; config true; + description "bridge multiple-spanning-tree"; } // END of mstpEnabled definition. leaf helloTime { @@ -138,6 +143,7 @@ submodule bridge { } default "2"; config true; + description "bridge hello-time"; } // END of helloTime definition. leaf maxAge { @@ -147,6 +153,7 @@ submodule bridge { } default "20"; config true; + description "bridge max-age"; } // END of maxAge definition. leaf priority { @@ -156,6 +163,7 @@ submodule bridge { } default "32768"; config true; + description "bridge priority"; } // END of priority definition. leaf forwardDelay { @@ -165,6 +173,7 @@ submodule bridge { } default "15"; config true; + description "bridge forward-time"; } // END of forwardDelay definition. leaf transmitHoldCount { @@ -174,6 +183,7 @@ submodule bridge { } default "6"; config true; + description "bridge transmit-holdcount"; } // END of transmitHoldCount definition. leaf bpduguardEnable { @@ -181,6 +191,7 @@ submodule bridge { type cml_data_types:CML_BOOL_T; default false; config true; + description "bridge spanning-tree portfast bpdu-guard"; } // END of bpduguardEnable definition. leaf errdisableTimeoutEnable { @@ -188,6 +199,7 @@ submodule bridge { type cml_data_types:CML_BOOL_T; default false; config true; + description "bridge spanning-tree errdisable-timeout"; } // END of errdisableTimeoutEnable definition. leaf errdisableTimeoutInterval { @@ -197,6 +209,7 @@ submodule bridge { } default "300"; config true; + description "bridge spanning-tree errdisable-timeout interval"; } // END of errdisableTimeoutInterval definition. leaf revisionLevel { @@ -205,6 +218,7 @@ submodule bridge { range "0..65535"; } config true; + description "bridge revision"; } // END of revisionLevel definition. leaf maxHops { @@ -214,6 +228,7 @@ submodule bridge { } default "20"; config true; + description "bridge max-hops"; } // END of maxHops definition. leaf regionName { @@ -221,6 +236,7 @@ submodule bridge { type cml_data_types:CML_STRING_T; default "Default"; config true; + description "bridge region"; } // END of regionName definition. leaf bpduFilter { @@ -247,6 +263,7 @@ submodule bridge { type cml_data_types:CML_ENABLE_DISABLE_T; default "disable"; config true; + description "bridge cisco-interoperability"; } // END of adminCisco definition. leaf pathCostMethod { @@ -263,6 +280,7 @@ submodule bridge { } default "0"; config true; + description "bridge spanning-tree force-version"; } // END of forceVersion definition. leaf vId { @@ -473,6 +491,7 @@ submodule bridge { mandatory true; type cml_data_types:CML_SPANNINGTREE_ENABLE_DISABLE_T; config true; + description "bridge-group spanning-tree"; } // END of spanningTreeDisable definition. leaf p2pMac { @@ -480,6 +499,7 @@ submodule bridge { type cml_data_types:CML_LINK_TYPE_T; default "point-to-point"; config true; + description "spanning-tree link-type"; } // END of p2pMac definition. leaf portPriority { @@ -489,6 +509,7 @@ submodule bridge { } default "128"; config true; + description "bridge-group priority"; } // END of portPriority definition. leaf portedgeEnable { @@ -496,6 +517,7 @@ submodule bridge { type cml_data_types:CML_PORTEDGE_T; default "portfast"; config true; + description "spanning-tree edgeport"; } // END of portedgeEnable definition. leaf restrictedDomainRole { @@ -503,6 +525,7 @@ submodule bridge { type cml_data_types:CML_BOOL_T; default false; config true; + description "spanning-tree restricted-domain-role"; } // END of restrictedDomainRole definition. leaf autoEdge { @@ -510,6 +533,7 @@ submodule bridge { type cml_data_types:CML_BOOL_T; default false; config true; + description "spanning-tree autoedge"; } // END of autoEdge definition. leaf adminBpduguard { @@ -534,6 +558,7 @@ submodule bridge { range "1..200000000"; } config true; + description "bridge-group pathcost"; } // END of pathCost definition. leaf restrictedRole { @@ -541,6 +566,7 @@ submodule bridge { type cml_data_types:CML_BOOL_T; default false; config true; + description "spanning-tree restricted-role"; } // END of restrictedRole definition. leaf restrictedTCN { @@ -548,6 +574,7 @@ submodule bridge { type cml_data_types:CML_BOOL_T; default false; config true; + description "spanning-tree restricted-tcn"; } // END of restrictedTCN definition. leaf adminRootGuard { @@ -555,6 +582,7 @@ submodule bridge { type cml_data_types:CML_UINT8_T; default "1"; config true; + description "spanning-tree guard root"; } // END of adminRootGuard definition. leaf adminBpdufilter { @@ -562,6 +590,7 @@ submodule bridge { type cml_data_types:CML_BPDU_T; default "default"; config true; + description "bridge spanning-tree portfast bpdu-filter"; } // END of adminBpdufilter definition. leaf enableBpduRx { diff --git a/yang-files/cml_data_types.yang b/yang-files/cml_data_types.yang new file mode 100644 index 00000000..bac75f90 --- /dev/null +++ b/yang-files/cml_data_types.yang @@ -0,0 +1,2215 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : cml_data_types.yang +* +*/ + +module cml_data_types { + + namespace "http://www.ipinfusion.com/CMLSchema/cml_data_types"; + + prefix "cml_data_types"; + + + import ietf-inet-types { + prefix inet; + } + + organization + "http://www.ipinfusion.com/CMLSchema"; + + contact + "http://www.ipinfusion.com/CMLSchema"; + + description + "YANG version of the cml_data_types"; + + + revision "2016-08-19" { + description "Module in progress."; } + + + + typedef CML_INT32_T{ + type int32; + } + + typedef CML_UINT32_T{ + type uint32; + } + + typedef CML_STRING_T{ + type string; + } + + typedef CML_HOST_STRING_T{ + type string; + } + + typedef CML_UINT8_T{ + type uint8; + } + + typedef CML_INT8_T{ + type int8; + } + + typedef CML_UINT16_T{ + type uint16; + } + + typedef CML_BITMAP_T{ + type uint32; + } + + typedef CML_INT16_T{ + type int16; + } + + typedef CML_UINT64_T{ + type uint64; + } + + typedef CML_INT64_T{ + type int64; + } + + typedef CML_BOOL_T{ + type boolean; + } + + typedef CML_IPV4_ADDR_T{ + type inet:ipv4-address; + } + + typedef CML_IPV6_ADDR_T{ + type inet:ipv6-address; + } + + typedef CML_IPV4_PREFIX_T{ + type inet:ipv4-prefix; + } + + typedef CML_IPV6_PREFIX_T{ + type inet:ipv6-prefix; + } + + typedef CML_MAC_ADDR_T{ + type string; + } + + typedef CML_EMPTY_T{ + type empty; + } + + typedef CML_HOSTNAME_T{ + type union{ + + type CML_IP_ADDR_T { + + } + type CML_STRING_T { + + } + } + } + + typedef CML_HOSTPNAME_T{ + type union{ + + type CML_IP_ADDR_T { + + } + type CML_HOST_STRING_T { + + } + } + } + + typedef CML_IP_ADDR_T{ + type union{ + + type CML_IPV4_ADDR_T { + + } + type CML_IPV6_ADDR_T { + + } + } + } + + typedef CML_IP_PREFIX_ADDR_T{ + type union{ + + type CML_IPV4_PREFIX_T { + + } + type CML_IPV6_PREFIX_T { + + } + } + } + + typedef CML_ACCESS_LIST_T{ + type union{ + + type CML_INT32_T { + range "1..99 | 1300..1999"; + + } + type CML_STRING_T { + length "5..10"; + + } + } + } + + typedef CML_ACL_PACKET_DIR_T{ + type enumeration { + enum in { value 0; } + enum out { value 1; } + enum forward { value 2; } + } + } + + typedef CML_MAC_ETH_TYPE_T{ + type union{ + + type CML_ETH_TYPE_T { + + } + type CML_STRING_T { + + } + } + } + + typedef CML_ETH_TYPE_T{ + type enumeration { + enum ip4 { value 0; } + enum ip6 { value 1; } + enum mpls { value 2; } + } + } + + typedef CML_VLAN_TYPE_T{ + type enumeration { + enum custmor { value 0; } + enum service { value 1; } + } + } + + typedef CML_FACILITY_T{ + type enumeration { + enum local0 { value 0; } + enum local1 { value 1; } + enum local2 { value 2; } + enum local3 { value 3; } + enum local4 { value 4; } + enum local5 { value 5; } + enum local6 { value 6; } + enum local7 { value 7; } + enum user { value 8; } + } + } + + typedef CML_HOSTT_T{ + type enumeration { + enum emergencies { value 0; } + enum alerts { value 1; } + enum critical { value 2; } + enum errors { value 3; } + enum warnings { value 4; } + enum notifications { value 5; } + enum informational { value 6; } + enum debugging { value 7; } + } + } + + typedef CML_DISCARDFORWARD_T{ + type enumeration { + enum discard { value 0; } + enum forward { value 1; } + } + } + + typedef CML_VLAN_PORT_MODE_T{ + type enumeration { + enum access { value 1; } + enum hybrid { value 2; } + enum trunk { value 3; } + } + } + + typedef CML_VLAN_FRAME_TYPE_T{ + type enumeration { + enum vlan-tagged { value 1; } + enum all { value 2; } + } + } + + typedef CML_OSPF6_CSPF_TYPE_T{ + type enumeration { + enum random { value 0; } + enum most-fill { value 1; } + enum least-fill { value 2; } + } + } + + typedef CML_OSPF6_ABR_TYPE_T{ + type enumeration { + enum standard { value 1; } + enum cisco { value 2; } + enum ibm { value 3; } + } + } + + typedef CML_OSPF6_TRANSLATOR_ROLE_T{ + type enumeration { + enum always { value 1; } + enum candidate { value 2; } + } + } + + typedef CML_OSPF6_NETWORK_T{ + type enumeration { + enum point-to-point { value 1; } + enum broadcast { value 2; } + enum non-broadcast { value 3; } + enum point-to-multipoint { value 4; } + } + } + + typedef CML_OSPF6_LSA_SUPRESSION_STATE_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_OSPF6_RESTART_HELPER_T{ + type enumeration { + enum restart { value 1; } + enum hitless-restart { value 2; } + } + } + + typedef CML_OSPF6_ROUTE_SOURCE_TYPE_T{ + type enumeration { + enum kernel { value 1; } + enum connected { value 2; } + enum static { value 3; } + enum rip { value 4; } + enum ospf { value 7; } + enum bgp { value 8; } + enum isis { value 9; } + } + } + + typedef CML_OSPF6_DIST_ROUTE_SOURCE_TYPE_T{ + type enumeration { + enum kernel { value 1; } + enum connected { value 2; } + enum static { value 3; } + enum rip { value 4; } + enum bgp { value 8; } + enum isis { value 9; } + } + } + + typedef CML_OSPF6_AF_ROUTE_SOURCE_TYPE_T{ + type enumeration { + enum kernel { value 1; } + enum connected { value 2; } + enum static { value 3; } + enum rip { value 4; } + enum ospf { value 6; } + enum bgp { value 8; } + enum isis { value 9; } + } + } + + typedef CML_OSPF6_AREA_RANGE_T{ + type enumeration { + enum not-advertise { value 0; } + enum advertise { value 1; } + } + } + + typedef CML_OSPF_ACTION_TYPE_T{ + type enumeration { + enum soft { value 1; } + enum hard { value 2; } + } + } + + typedef CML_OSPF_TELINK_LOCAL_T{ + type enumeration { + enum disable-te-link-local { value 0; } + enum enable-te-link-local { value 1; } + } + } + + typedef CML_OSPF_ROUTE_SOURCE_TYPE_T{ + type enumeration { + enum kernel { value 1; } + enum connected { value 2; } + enum static { value 3; } + enum rip { value 4; } + enum ospf { value 6; } + enum bgp { value 8; } + enum isis { value 9; } + } + } + + typedef CML_OSPF_DIST_ROUTE_SOURCE_TYPE_T{ + type enumeration { + enum kernel { value 1; } + enum connected { value 2; } + enum static { value 3; } + enum rip { value 4; } + enum bgp { value 8; } + enum isis { value 9; } + } + } + + typedef CML_OSPF6_DEBUG_T{ + type enumeration { + enum all { value 0; } + enum ifsm { value 1; } + } + } + + typedef CML_OSPF6_DEBUG_PACKET_TYPE_T{ + type enumeration { + enum hello { value 1; } + enum dd { value 2; } + enum ls-request { value 3; } + enum ls-update { value 4; } + enum ls-ack { value 5; } + enum send { value 6; } + enum recv { value 7; } + enum detail { value 8; } + } + } + + typedef CML_BRIDGE_PROTOCOL_T{ + type enumeration { + enum ieee { value 1; } + enum ieee-vlan-bridge { value 2; } + enum rstp { value 3; } + enum rstp-vlan-bridge { value 4; } + enum mstp { value 5; } + enum rpvst+ { value 8; } + enum trill { value 10; } + } + } + + typedef CML_BRIDGE_TYPE_T{ + type enumeration { + enum ieee { value 1; } + enum rstp { value 3; } + enum mstp { value 5; } + } + } + + typedef CML_OVERMACTYPE_T{ + type enumeration { + enum static { value 1; } + enum static-priority-override { value 2; } + enum static-mgmt { value 3; } + enum static-mgmt-priority-overide { value 4; } + } + } + + typedef CML_ENABLE_DISABLE_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_VLANSTATE_T{ + type enumeration { + enum disable { value 1; } + enum enable { value 2; } + } + } + + typedef CML_PBRINTERFACE_T{ + type enumeration { + enum null0 { value 0; } + enum tunnel-te { value 1; } + } + } + + typedef CML_ROUTEMAP_LIST_T{ + type union{ + + type CML_INT32_T { + range "1..199 | 1300..2699"; + + } + type CML_STRING_T { + + } + } + } + + typedef CML_SPANNINGTREE_ENABLE_DISABLE_T{ + type enumeration { + enum enable { value 0; } + enum disable { value 1; } + } + } + + typedef CML_PATHCOST_METHOD_T{ + type enumeration { + enum short { value 0; } + enum long { value 1; } + enum default { value 2; } + } + } + + typedef CML_LINK_TYPE_T{ + type enumeration { + enum shared { value 0; } + enum point-to-point { value 1; } + enum auto { value 2; } + } + } + + typedef CML_PORTEDGE_T{ + type enumeration { + enum portfast { value 1; } + enum edgeport { value 2; } + } + } + + typedef CML_BPDU_T{ + type enumeration { + enum enable { value 0; } + enum disable { value 1; } + enum default { value 2; } + } + } + + typedef CML_BRIDGE_TOPOLOGY_T{ + type enumeration { + enum ring { value 1; } + } + } + + typedef CML_BRIDGE_FORWARDING_SET_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_BRIDGE_MSTPENABLE_T{ + type enumeration { + enum enable { value 1; } + } + } + + typedef CML_BRIDGE_AGEING_STATE{ + type enumeration { + enum disable { value 0; } + } + } + + typedef CML_OSPF_DOMAIN_TYPE_T{ + type enumeration { + enum type-as { value 1; } + enum type-as4 { value 2; } + enum type-back-comp { value 3; } + } + } + + typedef CML_OSPF_ABR_TYPE_T{ + type enumeration { + enum standard { value 1; } + enum cisco { value 2; } + enum ibm { value 3; } + enum shortcut { value 4; } + } + } + + typedef CML_OSPF_AREA_AUTH_TYPE_T{ + type enumeration { + enum simple { value 1; } + enum message-digest { value 2; } + } + } + + typedef CML_OSPF_AREA_SHORTCUT_TYPE_T{ + type enumeration { + enum default { value 0; } + enum enable { value 1; } + enum disable { value 2; } + } + } + + typedef CML_OSPF_TRANSLATOR_ROLE_T{ + type enumeration { + enum never { value 0; } + enum always { value 1; } + enum candidate { value 2; } + } + } + + typedef CML_OSPF_NSSA_TRANSLATOR_ROLE_T{ + type enumeration { + enum translate-never { value 0; } + enum translate-always { value 1; } + enum translate-candidate { value 2; } + } + } + + typedef CML_OSPF6_NSSA_TRANSLATOR_ROLE_T{ + type enumeration { + enum translate-never { value 0; } + enum translate-always { value 1; } + enum translate-candidate { value 2; } + } + } + + typedef CML_OSPF_AREA_FILTER_TYPE_T{ + type enumeration { + enum access { value 0; } + enum prefix { value 1; } + } + } + + typedef CML_OSPF_AREA_FILTER_LIST_PREFIX_T{ + type enumeration { + enum in { value 0; } + enum out { value 1; } + } + } + + typedef CML_OSPF_VIRT_AUTH_KEY_T{ + type enumeration { + enum null { value 0; } + enum PASSWORD { value 1; } + } + } + + typedef CML_OSPF_VIRT_AUTH_TYPE_T{ + type enumeration { + enum null { value 0; } + enum simple { value 1; } + enum message-digest { value 2; } + } + } + + typedef CML_OSPF_RESTART_METHOD_T{ + type enumeration { + enum graceful { value 1; } + enum signaling { value 2; } + } + } + + typedef CML_CSPF_TIE_BREAK_T{ + type enumeration { + enum least-fill { value 1; } + enum most-fill { value 2; } + enum random { value 3; } + } + } + + typedef CML_OSPF_METRIC_TYPE_T{ + type enumeration { + enum 1 { value 1; } + enum 2 { value 2; } + } + } + + typedef CML_OSPF_NETWORK_T{ + type enumeration { + enum point-to-point { value 1; } + enum broadcast { value 2; } + enum non-broadcast { value 3; } + enum point-to-multipoint { value 4; } + } + } + + typedef CML_OSPF_AUTH_TYPE_T{ + type enumeration { + enum null { value 0; } + enum simple { value 1; } + enum message-digest { value 2; } + } + } + + typedef CML_OSPF_RESTART_HELPER_T{ + type enumeration { + enum restart { value 1; } + enum hitless-restart { value 2; } + } + } + + typedef CML_OSPF_DEBUG_T{ + type enumeration { + enum all { value 0; } + enum ifsm { value 1; } + } + } + + typedef CML_OSPF_DEBUG_PACKET_TYPE_T{ + type enumeration { + enum detail { value 0; } + enum hello { value 1; } + enum dd { value 2; } + enum ls-request { value 3; } + enum ls-update { value 4; } + enum ls-ack { value 5; } + } + } + + typedef CML_OSPF_DEBUG_PACKET_MODE_T{ + type enumeration { + enum send { value 1; } + enum recv { value 2; } + } + } + + typedef CML_LDP_HELPER_MODE_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_OSPF_FRR_TIE_BREAK_VAL_T{ + type enumeration { + enum primary-path { value 1; } + enum interface-disjoint { value 2; } + enum node-protecting { value 3; } + enum broadcast-interface-disjoint { value 4; } + } + } + + typedef CML_LDP_ADVERTISE_MODE_T{ + type enumeration { + enum downstream-unsolicited { value 0; } + enum downstream-on-demand { value 1; } + } + } + + typedef CML_LDP_CONTROLMODE_T{ + type enumeration { + enum independent { value 0; } + enum ordered { value 1; } + } + } + + typedef CML_LDP_LABEL_T{ + type enumeration { + enum conservative { value 0; } + enum liberal { value 1; } + } + } + + typedef CML_LDP_MERGE_CAPABLE_T{ + type enumeration { + enum merge-capable { value 0; } + enum non-merge-capable { value 1; } + } + } + + typedef CML_PIM_MODE_TYPE_T{ + type enumeration { + enum dense-mode { value 1; } + enum sparse-mode { value 2; } + enum sparse-dense-mode { value 3; } + } + } + + typedef CML_PIM_IP_TYPE_T{ + type enumeration { + enum ip { value 1; } + } + } + + typedef CML_PIM_IPV6_TYPE_T{ + type enumeration { + enum ipv6 { value 0; } + } + } + + typedef CML_MRIB_IP_TYPE_T{ + type enumeration { + enum ip { value 1; } + } + } + + typedef CML_MRIB_IPV6_TYPE_T{ + type enumeration { + enum ipv6 { value 0; } + } + } + + typedef CML_MAUTYPE_T{ + type enumeration { + enum dot3MauType10BaseTHD { value 10; } + enum dot3MauType10BaseTFD { value 11; } + enum dot3MauType100BaseTXHD { value 15; } + enum dot3MauType100BaseTXFD { value 16; } + enum dot3MauType1000BaseXHD { value 21; } + enum dot3MauType1000BaseXFD { value 22; } + enum dot3MauType10GigBaseCX4 { value 41; } + enum dot3MauType10GbaseKX4 { value 57; } + enum dot3MauType10GbaseKR { value 58; } + enum dot3MauType40GbaseCR4 { value 71; } + enum dot3MauType0dot0 { value 255; } + } + } + + typedef CML_DUPLEX_T{ + type enumeration { + enum half { value 0; } + enum full { value 1; } + enum auto { value 2; } + } + } + + typedef CML_BANDWIDTHCONSTRAINTMODE_T{ + type enumeration { + enum MAM { value 0; } + enum RSDL { value 1; } + enum MAR { value 2; } + } + } + + typedef CML_AFI_TYPE_T{ + type enumeration { + enum ipv4 { value 1; } + enum ipv6 { value 2; } + enum vpnv4 { value 3; } + enum vpnv6 { value 4; } + enum rtfilter { value 5; } + enum l2vpn { value 25; } + } + } + + typedef CML_SAFI_TYPE_T{ + type enumeration { + enum unicast { value 1; } + enum multicast { value 2; } + enum labeled-unicast { value 4; } + enum l2vpn-vpls { value 65; } + enum evpn { value 70; } + enum vpn-unicast { value 128; } + enum rtfilter-unicast { value 132; } + } + } + + typedef CML_BGP_MED_TYPE_T{ + type enumeration { + enum confed { value 0; } + enum missing-as-worst { value 1; } + enum remove-recv-med { value 2; } + enum remove-send-med { value 3; } + } + } + + typedef CML_BGP_ORF_PREFIX_TYPE_T{ + type enumeration { + enum both { value 0; } + enum receive { value 1; } + enum send { value 2; } + } + } + + typedef CML_BGP_COMMUNITY_LIST_ACTION_T{ + type enumeration { + enum deny { value 1; } + enum permit { value 2; } + } + } + + typedef CML_RMAP_PERMIT_T{ + type enumeration { + enum permit { value 0; } + enum deny { value 1; } + } + } + + typedef CML_BGP_SEND_COMMU_TYPE_T{ + type bits { + bit standard { position 1; } + bit extended { position 2; } + bit both { position 3; } + } + } + + typedef CML_BGP_UPDATE_DEBUG_TYPE_T{ + type bits { + bit in { position 8; } + bit out { position 9; } + } + } + + typedef CML_BGP_DEBUG_TYPE_T{ + type bits { + bit all { position 0; } + bit nht { position 1; } + bit nsm { position 2; } + bit fsm { position 3; } + bit events { position 4; } + bit filters { position 5; } + bit keepalives { position 6; } + bit dampening { position 10; } + bit bfd { position 11; } + } + } + + typedef CML_BGP_MAXPATH_T{ + type enumeration { + enum ibgp { value 0; } + enum ebgp { value 1; } + } + } + + typedef CML_BGP_DISTRIBUTE_LIST_ACTION_T{ + type enumeration { + enum in { value 0; } + enum out { value 1; } + } + } + + typedef CML_BGP_REDISTRIBUTE_TYPE_T{ + type enumeration { + enum kernel { value 0; } + enum connected { value 1; } + enum static { value 2; } + enum rip { value 3; } + enum ospf { value 4; } + enum isis { value 5; } + } + } + + typedef CML_BGP_COMMUNITY_LIST_ENTRY_T{ + type enumeration { + enum standard { value 0; } + enum expanded { value 1; } + enum default { value 2; } + } + } + + typedef CML_BGP_AGGREGATE_ADDR_TYPE_T{ + type enumeration { + enum summary-only { value 1; } + enum as-set { value 2; } + } + } + + typedef CML_RSVP_PATH_TYPE_T{ + type enumeration { + enum mpls { value 0; } + enum gmpls { value 1; } + } + } + + typedef CML_RSVP_TRUNK_TYPE_T{ + type enumeration { + enum ipv4 { value 0; } + enum ipv6 { value 1; } + enum gmpls { value 2; } + } + } + + typedef CML_RSVP_RESTART_STATUS_T{ + type enumeration { + enum enable { value 0; } + enum disable { value 1; } + } + } + + typedef CML_RSVP_DETOUR_IDEN_T{ + type enumeration { + enum sender-template { value 1; } + enum path { value 2; } + } + } + + typedef CML_RSVP_P2MP_ADDR_T{ + type enumeration { + enum ipv4 { value 1; } + enum ipv6 { value 2; } + } + } + + typedef CML_RSVP_CSPF_TYPE_T{ + type enumeration { + enum no-cspf { value 0; } + enum cspf { value 1; } + } + } + + typedef CML_MPLS_MODULE_T{ + type enumeration { + enum rsvp { value 0; } + enum ldp { value 1; } + enum bgp { value 4; } + } + } + + typedef CML_NSM_VPLS_TYPE_T{ + type enumeration { + enum vlan { value 4; } + enum ethernet { value 5; } + } + } + + typedef CML_NSM_VPLS_VC_SPOKE_TYPE_T{ + type enumeration { + enum vlan { value 4; } + enum ethernet { value 5; } + } + } + + typedef CML_NSM_VPLS_PEER_TUNNEL_DIR_T{ + type enumeration { + enum forward { value 0; } + enum reverse { value 1; } + } + } + + typedef CML_NSM_VPLS_PEER_TYPE_T{ + type enumeration { + enum manual { value 1; } + } + } + + typedef CML_NSM_VPLS_FTN_ENTRY_T{ + type enumeration { + enum secondary { value 0; } + enum primary { value 1; } + } + } + + typedef CML_NSM_VPLS_OPCODE_T{ + type enumeration { + enum swap { value 3; } + enum vpnpop { value 4; } + } + } + + typedef CML_VPLS_VC_STYLE1_T{ + type enumeration { + enum peer { value 2; } + } + } + + typedef CML_VPLS_VC_STYLE2_T{ + type enumeration { + enum spoke-vc { value 3; } + } + } + + typedef CML_RSVP_PATH_STATUS_T{ + type enumeration { + enum loose { value 0; } + enum strict { value 1; } + } + } + + typedef CML_RSVP_PROT_STATUS_T{ + type enumeration { + enum one-to-one { value 1; } + enum facility { value 2; } + } + } + + typedef CML_RSVP_IP_ADDR_T{ + type union{ + + type CML_IPV4_ADDR_T { + + } + type CML_IPV6_ADDR_T { + + } + } + } + + typedef CML_RSVP_FRR_ADMIN_TYPE_T{ + type enumeration { + enum exclude-any { value 0; } + enum include-any { value 1; } + enum include-all { value 2; } + } + } + + typedef CML_RSVP_TRAFFIC_TYPE_T{ + type enumeration { + enum controlled-load { value 1; } + enum guaranteed { value 2; } + } + } + + typedef CML_RSVP_UPDATE_TYPE_T{ + type enumeration { + enum break-before-make { value 1; } + enum make-before-break { value 2; } + } + } + + typedef CML_RSVP_CAPABILITY_TYPE_T{ + type enumeration { + enum psc-1 { value 1; } + enum psc-2 { value 2; } + enum psc-3 { value 4; } + enum psc-4 { value 8; } + } + } + + typedef CML_RSVP_DIRECTION_TYPE_T{ + type enumeration { + enum unidirectional { value 0; } + enum bidirectional { value 1; } + } + } + + typedef CML_RSVP_GPID_TYPE_T{ + type enumeration { + enum ethernet { value 33; } + enum ipv4 { value 2048; } + } + } + + typedef CML_RSVP_EXPLICIT_LABEL_TYPE_T{ + type enumeration { + enum forward { value 1; } + enum reverse { value 2; } + } + } + + typedef CML_RSVP_FILTER_TYPE_T{ + type enumeration { + enum default { value 0; } + enum fixed { value 1; } + enum shared-explicit { value 2; } + } + } + + typedef CML_RSVP_PROTECTION_TYPE_T{ + type enumeration { + enum extra-traffic { value 1; } + enum unprotected { value 2; } + enum shared { value 4; } + enum dedicated-one-to-one { value 8; } + enum dedicated-one-plus-one { value 16; } + enum enhanced { value 32; } + } + } + + typedef CML_RSVP_EXCLUDE_ADDR_TYPE_T{ + type enumeration { + enum link { value 1; } + enum node { value 2; } + } + } + + typedef CML_IS_TYPE_T{ + type enumeration { + enum level-1 { value 1; } + enum level-2-only { value 2; } + enum level-1-2 { value 3; } + } + } + + typedef CML_IS_TYPE2_T{ + type enumeration { + enum level-1 { value 1; } + enum level-2 { value 2; } + enum level-1-2 { value 3; } + } + } + + typedef CML_ISIS_LEVEL_T{ + type enumeration { + enum level-1 { value 1; } + enum level-2 { value 2; } + } + } + + typedef CML_ISIS_NETWORK_T{ + type enumeration { + enum broadcast { value 1; } + enum point-to-point { value 2; } + } + } + + typedef CML_METRIC_STYLE_T{ + type enumeration { + enum narrow { value 1; } + enum wide { value 2; } + enum transition { value 3; } + } + } + + typedef CML_TRANSITION_METRIC_STYLE_T{ + type enumeration { + enum narrow { value 1; } + enum wide { value 2; } + } + } + + typedef CML_ISIS_AUTH_MODE_T{ + type enumeration { + enum md5 { value 1; } + enum text { value 2; } + } + } + + typedef CML_ISIS_ROUTE_T{ + type enumeration { + enum redistribution { value 0; } + enum all { value 1; } + } + } + + typedef CML_ISIS_SNP_T{ + type enumeration { + enum send-only { value 1; } + enum validate { value 2; } + } + } + + typedef CML_ISIS_LIFETIME_T{ + type enumeration { + enum accept-lifetime { value 1; } + enum send-lifetime { value 2; } + } + } + + typedef CML_ISIS_REDISTRIBUTE_T{ + type enumeration { + enum kernel { value 1; } + enum connected { value 2; } + enum static { value 3; } + enum rip { value 4; } + enum ospf { value 5; } + enum bgp { value 6; } + } + } + + typedef CML_ISIS_DEBUG_T{ + type bits { + bit ifsm { position 0; } + bit nfsm { position 1; } + bit pdu { position 2; } + bit lsp { position 3; } + bit spf { position 4; } + bit events { position 5; } + bit nsm { position 6; } + bit checksum { position 7; } + bit authentication { position 8; } + bit local-updates { position 9; } + bit protocol-errors { position 10; } + bit hello { position 11; } + bit bfd { position 12; } + bit mpls { position 13; } + } + } + + typedef CML_PASSWORD_T{ + type string; + } + + typedef CML_SYSTEM_HOSTNAME_T{ + type string; + } + + typedef CML_USERNAME_T{ + type string; + } + + typedef CML_WRAP_T{ + type enumeration { + enum off { value 0; } + enum on { value 1; } + } + } + + typedef CML_LDP_TDP_PROTOCOL_T{ + type enumeration { + enum both { value 0; } + enum ldp { value 1; } + enum tdp { value 2; } + } + } + + typedef CML_INTERFACE_T{ + type enumeration { + enum interface { value 0; } + } + } + + typedef CML_LDP_DISCOVERY_ADDRESS_T{ + type union{ + + type CML_INTERFACE_T { + + } + type CML_IPV4_ADDR_T { + + } + } + } + + typedef CML_MTU_T{ + type union{ + + type CML_UINT16_T { + + } + type CML_UINT16_T { + + } + type CML_UINT16_T { + + } + } + } + + typedef CML_AREA_T{ + type union{ + + type CML_UINT32_T { + range "0..4294967295"; + + } + type CML_IPV4_ADDR_T { + + } + } + } + + typedef CML_SELF_TEST_T{ + type enumeration { + enum extended { value 0; } + enum fast { value 1; } + enum none { value 2; } + } + } + + typedef CML_BAUD_RATE_T{ + type enumeration { + enum 9600 { value 9600; } + enum 19200 { value 19200; } + enum 38400 { value 38400; } + enum 115200 { value 115200; } + } + } + + typedef CML_OSPF6_INSTANCE_T{ + type union{ + + type CML_UINT8_T { + + } + type CML_UINT8_T { + + } + } + } + + typedef CML_ACCESS_GROUP_DIRECTION_T{ + type enumeration { + enum in { value 0; } + enum out { value 1; } + } + } + + typedef CML_VLAN_ID_T{ + type uint16; + } + + typedef CML_ADDR_OR_SCRIPT_T{ + type union{ + + type CML_IPV4_ADDR_T { + + } + type CML_STRING_T { + + } + } + } + + typedef CML_GI_MEDIA_T{ + type enumeration { + enum 10-full { value 0; } + enum 10-half { value 1; } + enum 100-auto { value 2; } + enum 100-full { value 3; } + enum 100-half { value 4; } + enum 1000-full { value 5; } + enum 1000-half { value 6; } + enum auto { value 7; } + } + } + + typedef CML_TE_MEDIA_T{ + type enumeration { + enum 1000-full { value 0; } + enum 10000-full { value 1; } + enum auto { value 2; } + } + } + + typedef CML_PORT_TYPE_T{ + type enumeration { + enum nni { value 0; } + } + } + + typedef CML_MODE_T{ + type enumeration { + enum active { value 0; } + enum auto { value 1; } + enum desirable { value 2; } + enum on { value 3; } + enum passive { value 4; } + } + } + + typedef CML_CHANNEL_PROTOCOL_T{ + type enumeration { + enum lacp { value 0; } + enum pagp { value 1; } + } + } + + typedef CML_ENCAPSULATION_T{ + type enumeration { + enum mpls { value 0; } + enum l2tpv3 { value 1; } + } + } + + typedef CML_SEQUENCE_T{ + type enumeration { + enum both { value 0; } + enum receive { value 1; } + enum transmit { value 2; } + } + } + + typedef CML_GROUP_ENUM_T{ + type enumeration { + enum global { value 0; } + } + } + + typedef CML_GROUP_T{ + type union{ + + type CML_GROUP_ENUM_T { + + } + type CML_STRING_T { + + } + } + } + + typedef CML_RATE_TYPE_T{ + type uint32; + } + + typedef CML_IP_RATE_T{ + type union{ + + type CML_RATE_TYPE_T { + + } + type CML_STRING_T { + + } + } + } + + typedef CML_SPT_NAME_T{ + type enumeration { + enum mst { value 0; } + } + } + + typedef CML_ACL_FILTER_ACTION_T{ + type enumeration { + enum deny { value 0; } + enum permit { value 1; } + } + } + + typedef CML_ACL_ANY_T{ + type enumeration { + enum any { value 0; } + } + } + + typedef CML_ACL_ANY_ADDR_T{ + type union{ + + type CML_ACL_ANY_T { + + } + type CML_IPV4_PREFIX_T { + + } + } + } + + typedef CML_ACL_ANY_PORT_T{ + type union{ + + type CML_ACL_ANY_T { + + } + type CML_UINT16_T { + + } + } + } + + typedef CML_ACL_PROTOS_T{ + type enumeration { + enum ether { value 0; } + enum ip { value 1; } + enum ipv6 { value 2; } + enum ipip { value 3; } + enum icmp { value 4; } + enum igmp { value 5; } + enum tcp { value 6; } + enum tcp6 { value 7; } + enum egp { value 8; } + enum udp { value 9; } + enum udp6 { value 10; } + enum rsvp { value 11; } + enum gre { value 12; } + enum esp { value 13; } + enum ah { value 14; } + enum icmp6 { value 15; } + enum ospf { value 16; } + enum pim { value 17; } + enum sctp { value 18; } + } + } + + typedef CML_ACL_IP_PROTOS_T{ + type enumeration { + enum ipip { value 0; } + enum icmp { value 1; } + enum igmp { value 2; } + enum tcp { value 3; } + enum tcp6 { value 4; } + enum egp { value 5; } + enum udp { value 6; } + enum udp6 { value 7; } + enum rsvp { value 8; } + enum gre { value 9; } + enum esp { value 10; } + enum ah { value 11; } + enum icmp6 { value 12; } + enum ospf { value 13; } + enum pim { value 14; } + enum sctp { value 15; } + } + } + + typedef CML_ACL_IP_PROTO_T{ + type union{ + + type CML_ACL_IP_PROTOS_T { + + } + type CML_UINT8_T { + + } + } + } + + typedef CML_ACL_PROTO_T{ + type union{ + + type CML_ACL_PROTOS_T { + + } + type CML_UINT8_T { + + } + } + } + + typedef CML_ACL_ICMP_OPTIONS_T{ + type enumeration { + enum echo-reply { value 0; } + enum unreachable { value 1; } + enum source-quench { value 2; } + enum redirect { value 3; } + enum echo { value 4; } + enum router-advert { value 5; } + enum router-solicit { value 6; } + enum time-exceed { value 7; } + enum param-prob { value 8; } + enum timestamp { value 9; } + enum timestamp-reply { value 10; } + enum info-req { value 11; } + enum info-reply { value 12; } + enum mask-req { value 13; } + enum mask-reply { value 14; } + } + } + + typedef CML_ACL_UNREACH_VAL_T{ + type enumeration { + enum net { value 0; } + enum host { value 1; } + enum protocol { value 2; } + enum port { value 3; } + enum need-frag { value 4; } + enum source-fail { value 5; } + enum net-unknown { value 6; } + enum host-unknown { value 7; } + enum isolated { value 8; } + enum net-prohibit { value 9; } + enum host-prohibit { value 10; } + enum net-tos { value 11; } + enum host-tos { value 12; } + enum admin-prohibit { value 13; } + } + } + + typedef CML_ACL_REDIR_VAL_T{ + type enumeration { + enum net { value 0; } + enum host { value 1; } + enum net-tos { value 2; } + enum host-tos { value 3; } + } + } + + typedef CML_ACL_TCP_FLAGS_T{ + type enumeration { + enum fin { value 0; } + enum syn { value 1; } + enum rst { value 2; } + enum ack { value 3; } + enum urg { value 4; } + } + } + + typedef CML_ACL_ACTION_T{ + type enumeration { + enum permit { value 0; } + enum deny { value 1; } + enum reject { value 2; } + } + } + + typedef CML_ACL_ANY_MAC_ADDR_T{ + type union{ + + type CML_ACL_ANY_T { + + } + type CML_MAC_ADDR_T { + + } + } + } + + typedef CML_ACL_RULE_OPTS_T{ + type enumeration { + enum log { value 0; } + enum count { value 1; } + enum shortcut { value 2; } + } + } + + typedef CML_OSPF_ROUTE_T{ + type enumeration { + enum connected { value 0; } + enum kernel { value 1; } + enum static { value 2; } + } + } + + typedef CML_POLICY_MAP_T{ + type enumeration { + enum ether-type { value 0; } + enum port { value 1; } + enum snpa { value 2; } + enum vid { value 3; } + } + } + + typedef CML_POLICY_MAP_ID_T{ + type union{ + + type CML_IP_PREFIX_ADDR_T { + + } + type CML_POLICY_MAP_T { + + } + } + } + + typedef CML_ETHER_VALS_T{ + type enumeration { + enum ipv4 { value 0; } + enum ipv6 { value 1; } + enum mpls-unicast { value 2; } + enum mpls-multicast { value 3; } + enum arp { value 4; } + enum ppoe-discover { value 5; } + enum ppoe-session { value 6; } + } + } + + typedef CML_ACL_ETHER_TYPE_T{ + type union{ + + type CML_ETHER_VALS_T { + + } + type CML_UINT16_T { + + } + } + } + + typedef CML_ENDIS_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_ROUTE_MAP_TYPE_T{ + type enumeration { + enum client { value 0; } + enum ip { value 1; } + enum tag { value 2; } + } + } + + typedef CML_MIRROR_DIRECTION_T{ + type enumeration { + enum bidir { value 0; } + enum in { value 1; } + enum out { value 2; } + } + } + + typedef CML_ROUTE_MAP_ACTION_T{ + type enumeration { + enum deny { value 0; } + enum permit { value 1; } + } + } + + typedef CML_QUEUES_COUNT_T{ + type enumeration { + enum 256 { value 256; } + enum 512 { value 512; } + enum 1024 { value 1024; } + enum 2048 { value 2048; } + } + } + + typedef CML_RT_T{ + type enumeration { + enum import { value 0; } + enum export { value 1; } + enum both { value 2; } + } + } + + typedef CML_RIP_DIRECTION_T{ + type enumeration { + enum in { value 0; } + enum out { value 1; } + } + } + + typedef CML_RIP_DIST_TYPE_T{ + type enumeration { + enum in { value 0; } + enum out { value 1; } + } + } + + typedef CML_RIP_METRIC_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_RIP_AUTHMODE_T{ + type enumeration { + enum md5 { value 2; } + enum text { value 3; } + } + } + + typedef CML_RIP_ORIGIN_T{ + type enumeration { + enum always { value 1; } + } + } + + typedef CML_VERSION_TYPE_T{ + type enumeration { + enum 1 { value 1; } + enum 2 { value 2; } + } + } + + typedef CML_COMPATIBLE_VERSION_TYPE_T{ + type enumeration { + enum 1 { value 1; } + enum 2 { value 2; } + enum 1-compatible { value 4; } + } + } + + typedef CML_RIP_REDIST_PROTOS_T{ + type enumeration { + enum kernel { value 0; } + enum connected { value 1; } + enum static { value 2; } + enum ospf { value 3; } + enum isis { value 4; } + enum bgp { value 5; } + } + } + + typedef CML_RSVP_ADDR_T{ + type enumeration { + enum p2mp { value 1; } + } + } + + typedef CML_HOSTP_KEY_TYPE_T{ + type enumeration { + enum 0 { value 0; } + enum 7 { value 1; } + } + } + + typedef CML_HOSTP_LOCAL_NONE_TYPE_T{ + type enumeration { + enum local { value 0; } + enum none { value 1; } + } + } + + typedef CML_HOSTP_LOCAL_TYPE_T{ + type enumeration { + enum local { value 0; } + enum default { value 1; } + } + } + + typedef CML_SNMP_OID_TREE_T{ + type enumeration { + enum included { value 1; } + enum excluded { value 2; } + } + } + + typedef CML_SNMP_LINK_TYPE_T{ + type enumeration { + enum linkUp { value 1; } + enum linkDown { value 2; } + } + } + + typedef CML_SNMP_USER_T{ + type enumeration { + enum network-operator { value 1; } + enum network-admin { value 2; } + } + } + + typedef CML_OSPF6_METRIC_TYPE_T{ + type enumeration { + enum 1 { value 1; } + enum 2 { value 2; } + } + } + + typedef CML_UDLD_MODE_TYPE_T{ + type enumeration { + enum normal { value 0; } + enum aggressive { value 1; } + } + } + + typedef CML_UDLD_STATE_TYPE_T{ + type enumeration { + enum enable { value 0; } + enum disable { value 1; } + } + } + + typedef CML_UDLD_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_SNMP_AUTH_T{ + type enumeration { + enum md5 { value 1; } + enum sha { value 2; } + } + } + + typedef CML_SNMP_PRIV_T{ + type enumeration { + enum des { value 1; } + enum aes { value 2; } + } + } + + typedef CML_SNMP_VERSION_T{ + type enumeration { + enum 1 { value 1; } + enum 2c { value 2; } + } + } + + typedef CML_SNMP_TYPE_T{ + type enumeration { + enum traps { value 1; } + enum informs { value 2; } + } + } + + typedef CML_VERSION3_T{ + type enumeration { + enum noauth { value 1; } + enum auth { value 2; } + enum priv { value 3; } + } + } + + typedef CML_SNMP_ACCESS_T{ + type enumeration { + enum ro { value 1; } + enum rw { value 2; } + } + } + + typedef CML_BFD_GTSM_STATE_T{ + type enumeration { + enum enable { value 1; } + enum disable { value 2; } + } + } + + typedef CML_BFD_MULTIHOP_AUTH_TYPE_T{ + type enumeration { + enum simple { value 1; } + enum keyed-md5 { value 2; } + enum meticulous-keyed-md5 { value 3; } + enum keyed-sha1 { value 4; } + enum meticulous-keyed-sha1 { value 5; } + } + } + + typedef CML_BFD_SESSION_STATE_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_VRRP_VMAC_T{ + type enumeration { + enum enable { value 1; } + enum disable { value 2; } + } + } + + typedef CML_VRRP_ACCEPT_MODE_T{ + type enumeration { + enum true { value 1; } + enum false { value 2; } + } + } + + typedef CML_VRRP_PREEMPT_MODE_T{ + type enumeration { + enum true { value 1; } + enum false { value 2; } + } + } + + typedef CML_LLDP_ADMIN_STATUS_T{ + type enumeration { + enum rxonly { value 2; } + enum txonly { value 4; } + enum txrx { value 8; } + } + } + + typedef CML_LLDP_MEDDEV_T{ + type enumeration { + enum ep-class1 { value 1; } + enum ep-class2 { value 2; } + enum ep-class3 { value 3; } + enum net-connect { value 4; } + } + } + + typedef CML_LLDP_CHASSIS_ID_T{ + type enumeration { + enum chassis-component { value 0; } + enum if-alias { value 1; } + enum port-component { value 2; } + enum mac-address { value 3; } + enum ip-address { value 4; } + enum if-name { value 5; } + enum local { value 6; } + } + } + + typedef CML_LLDP_PORT_ID_T{ + type enumeration { + enum if-alias { value 0; } + enum port-component { value 1; } + enum mac-address { value 2; } + enum ip-address { value 3; } + enum if-name { value 4; } + enum agent-circuit-id { value 5; } + enum local { value 6; } + } + } + + typedef CML_LLDP_PORT_ADDR_T{ + type enumeration { + enum mac-address { value 1; } + enum ip-address { value 2; } + } + } + + typedef CML_LLDP_SET_STATE_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_LLDP_TLV_MODE_T{ + type enumeration { + enum manual { value 1; } + enum auto { value 2; } + } + } + + typedef CML_LLDP_IEEE_8023_T{ + type enumeration { + enum mac-phy { value 0; } + enum max-mtu-size { value 1; } + enum power-via-mdi { value 2; } + } + } + + typedef CML_LLDP_IEEE_8021_T{ + type enumeration { + enum port-vlanid { value 0; } + enum port-ptcl-vlanid { value 1; } + enum vlan-name { value 2; } + enum ptcl-identity { value 3; } + enum vid-digest { value 4; } + enum mgmt-vid { value 5; } + enum link-agg { value 6; } + enum data-center-bridging { value 7; } + } + } + + typedef CML_LLDP_BASIC_T{ + type enumeration { + enum port-description { value 0; } + enum system-name { value 1; } + enum system-description { value 2; } + enum system-capabilities { value 3; } + enum management-address { value 4; } + } + } + + typedef CML_LLDP_AGENT_T{ + type enumeration { + enum non-tpmr-bridge { value 0; } + enum customer-bridge { value 1; } + enum default { value 2; } + } + } + + typedef CML_LLDP_MED_T{ + type enumeration { + enum network-policy { value 0; } + enum location { value 1; } + enum extended-power-via-mdi { value 2; } + enum inventory { value 3; } + enum media-capabilities { value 4; } + } + } + + typedef CML_LLDP_ENABLE_T{ + type enumeration { + enum rxonly { value 2; } + enum txonly { value 4; } + enum txrx { value 8; } + } + } + + typedef CML_LLDP_MGMT_ADDR_T{ + type enumeration { + enum mac-address { value 1; } + enum ip-address { value 2; } + } + } + + typedef CML_LLDP_CHASSIS_T{ + type enumeration { + enum if-alias { value 0; } + enum ip-address { value 1; } + enum mac-address { value 2; } + enum if-name { value 3; } + enum locally-assigned { value 4; } + } + } + + typedef CML_LLDP_PORT_T{ + type enumeration { + enum if-alias { value 1; } + enum mac-address { value 2; } + enum ip-address { value 3; } + enum if-name { value 4; } + enum agt-circuit-id { value 5; } + enum locally-assigned { value 6; } + } + } + + typedef CML_LACP_TIMEOUT_T{ + type enumeration { + enum long { value 0; } + enum short { value 1; } + } + } + + typedef CML_LACP_MODE_T{ + type enumeration { + enum passive { value 0; } + enum active { value 1; } + enum on { value 2; } + } + } + + typedef CML_LACP_PSC_T{ + type enumeration { + enum dst-mac { value 1; } + enum src-mac { value 2; } + enum src-dst-mac { value 3; } + enum src-ip { value 4; } + enum dst-ip { value 5; } + enum src-dst-ip { value 6; } + enum src-port { value 7; } + enum dst-port { value 8; } + enum src-dst-port { value 9; } + enum rtag7 { value 12; } + } + } + + typedef CML_SSH_KEY_RSA_DSA_T{ + type enumeration { + enum dsa { value 1; } + enum rsa { value 2; } + } + } + + typedef CML_LLDP_TVL_FLAG_T{ + type enumeration { + enum ieee-8021-org-specific { value 32; } + enum ieee-8023-org-specific { value 64; } + enum basic-mgmt { value 128; } + } + } + + typedef CML_NSM_MPLS_LOG_T{ + type enumeration { + enum error { value 1; } + enum warning { value 2; } + enum debug { value 4; } + enum notice { value 8; } + enum all { value 16; } + } + } + + typedef CML_LDP_ENABLE_TYPE_T{ + type enumeration { + enum ipv4 { value 1; } + enum ipv6 { value 2; } + enum both { value 3; } + } + } + + typedef CML_NSM_CONTAINER_ETHERNET_TYPE_T{ + type enumeration { + enum ethernet { value 0; } + } + } + + typedef CML_INTERFACE_ADMIN_STATE_T{ + type enumeration { + enum up { value 0; } + enum down { value 1; } + enum administratively-down { value 2; } + } + } + + typedef CML_NSM_TUNNEL_DIRECTION_TYPE_T{ + type enumeration { + enum forward { value 0; } + enum reverse { value 1; } + } + } + + typedef CML_LACP_BRIDGETYPE_T{ + type enumeration { + enum customer-bridge-group-address { value 0; } + enum multicast-group-address { value 1; } + enum non-tmpr-group-address { value 2; } + } + } + + typedef CML_LACP_DISCARD_CONV_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + +} \ No newline at end of file diff --git a/yang-files/interface.yang b/yang-files/interface.yang index 01a097be..42ef74d2 100644 --- a/yang-files/interface.yang +++ b/yang-files/interface.yang @@ -76,6 +76,7 @@ submodule interface { type cml_data_types:CML_STRING_T; default "NULL"; config true; + description "ip address A.B.C.D/M"; } // END of ipAddr definition. leaf prefixlen { @@ -89,6 +90,7 @@ submodule interface { type cml_data_types:CML_STRING_T; default "NULL"; config true; + description "ip label"; } // END of ipLabel definition. leaf vrfName { diff --git a/yang-files/nsmLACP.yang b/yang-files/lacp.yang similarity index 95% rename from yang-files/nsmLACP.yang rename to yang-files/lacp.yang index a3f7792b..7664d7db 100644 --- a/yang-files/nsmLACP.yang +++ b/yang-files/lacp.yang @@ -9,11 +9,11 @@ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. -* File name : nsmLACP.yang +* File name : lacp.yang * */ -submodule nsmLACP { +submodule lacp { belongs-to ZebOS { prefix ZebOS; } include interface; @@ -69,6 +69,7 @@ submodule nsmLACP { mandatory true; type cml_data_types:CML_LACP_MODE_T; config true; + description "channel-group"; } // END of modeOperation definition. } // End of nsmlacpInterface-list @@ -106,6 +107,7 @@ submodule nsmLACP { range "1..12"; } config true; + description "static channel group"; } // END of static-channel-group definition. } // End of nsmportInterface-list diff --git a/yang-files/layer2LACP.yang b/yang-files/lag.yang similarity index 98% rename from yang-files/layer2LACP.yang rename to yang-files/lag.yang index 4826cf8c..e8c91202 100644 --- a/yang-files/layer2LACP.yang +++ b/yang-files/lag.yang @@ -9,11 +9,11 @@ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. -* File name : layer2LACP.yang +* File name : lag.yang * */ -submodule layer2LACP { +submodule lag { belongs-to ZebOS { prefix ZebOS; } include interface; diff --git a/yang-files/lldpv2.yang b/yang-files/lldpv2.yang index 72633843..56a6eb5a 100644 --- a/yang-files/lldpv2.yang +++ b/yang-files/lldpv2.yang @@ -62,6 +62,7 @@ submodule lldpv2 { type cml_data_types:CML_STRING_T; default "NULL"; config true; + description "lldp port-description"; } // END of lldpPortDescription definition. leaf lldpAgtCircuitId { @@ -69,12 +70,14 @@ submodule lldpv2 { type cml_data_types:CML_STRING_T; default "NULL"; config true; + description "lldp agt-circuit-id"; } // END of lldpAgtCircuitId definition. leaf lldpmedDevType { mandatory false; type cml_data_types:CML_LLDP_MEDDEV_T; config true; + description "lldp med-devtype"; } // END of lldpmedDevType definition. leaf localName { @@ -82,6 +85,7 @@ submodule lldpv2 { type cml_data_types:CML_STRING_T; default "NULL"; config true; + description "lldp locally-assigned"; } // END of localName definition. @@ -106,18 +110,21 @@ submodule lldpv2 { type cml_data_types:CML_LLDP_ENABLE_T; default "rxonly"; config true; + description "lldp enable"; } // END of lldpEnable definition. leaf lldpDisable { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "lldp disable"; } // END of lldpDisable definition. leaf reinitDelay { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "lldp reinitDelay timer"; } // END of reinitDelay definition. leaf MsgTxInterval { @@ -127,12 +134,14 @@ submodule lldpv2 { } default "30"; config true; + description "lldp timer msg-tx-interval"; } // END of MsgTxInterval definition. leaf MsgTxValue { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "lldp msg-tx-hold"; } // END of MsgTxValue definition. leaf MsgFastTx { @@ -142,6 +151,7 @@ submodule lldpv2 { } default "1"; config true; + description "lldp msg-fast-tx timer"; } // END of MsgFastTx definition. leaf neighborLimit { @@ -158,6 +168,7 @@ submodule lldpv2 { range "1..65535"; } config true; + description "lldp too-many-neighbors received-info"; } // END of neighborTimer definition. leaf portLimit { @@ -166,6 +177,7 @@ submodule lldpv2 { range "1..65535"; } config true; + description "lldp too-many-neighbors existing-info"; } // END of portLimit definition. leaf portMac { @@ -180,6 +192,7 @@ submodule lldpv2 { range "1..65535"; } config true; + description "lldp too-many-neighbors existing-info"; } // END of portTimer definition. leaf TxMaxCredit { @@ -189,6 +202,7 @@ submodule lldpv2 { } default "5"; config true; + description "lldp tx-max-credit"; } // END of TxMaxCredit definition. leaf TxFastInit { @@ -198,6 +212,7 @@ submodule lldpv2 { } default "4"; config true; + description "lldp tx-fast-init"; } // END of TxFastInit definition. leaf portAddr { @@ -205,6 +220,7 @@ submodule lldpv2 { type cml_data_types:CML_LLDP_MGMT_ADDR_T; default "mac-address"; config true; + description "lldp management-address-tlv"; } // END of portAddr definition. leaf chassisId { @@ -212,6 +228,7 @@ submodule lldpv2 { type cml_data_types:CML_LLDP_CHASSIS_T; default "mac-address"; config true; + description "lldp chassis-id-tlv"; } // END of chassisId definition. leaf portId { @@ -219,12 +236,14 @@ submodule lldpv2 { type cml_data_types:CML_LLDP_PORT_T; default "mac-address"; config true; + description "lldp port-id-tlv"; } // END of portId definition. leaf tlvFlag { mandatory false; type cml_data_types:CML_LLDP_TVL_FLAG_T; config true; + description "lldp tlv-select"; } // END of tlvFlag definition. leaf TlvSelect { @@ -243,6 +262,7 @@ submodule lldpv2 { mandatory false; type cml_data_types:CML_LLDP_BASIC_T; config true; + description "lldp tlv-select basic-mgmt"; } // END of TlvSelectBasic definition. leaf tlvMed { @@ -250,6 +270,7 @@ submodule lldpv2 { type cml_data_types:CML_LLDP_MED_T; default "media-capabilities"; config true; + description "lldp tlv-select med"; } // END of tlvMed definition. } // End of lldpAgent-list @@ -269,6 +290,7 @@ submodule lldpv2 { type cml_data_types:CML_STRING_T; default "NULL"; config true; + description "lldp system-name"; } // END of SystemName definition. leaf lldpRun { @@ -282,6 +304,7 @@ submodule lldpv2 { type cml_data_types:CML_STRING_T; default "NULL"; config true; + description "lldp system-description"; } // END of lldpSystemDescription definition. leaf locallyAssigned { @@ -289,6 +312,7 @@ submodule lldpv2 { type cml_data_types:CML_STRING_T; default "NULL"; config true; + description "lldp chassis locally-assigned"; } // END of locallyAssigned definition. } // END of systemDetail-container definition. diff --git a/yang-files/mstp.yang b/yang-files/mstp.yang index 392c7caa..4f4a7d57 100644 --- a/yang-files/mstp.yang +++ b/yang-files/mstp.yang @@ -64,6 +64,7 @@ submodule mstp { range "1..63"; } config true; + description "bridge instance "; } // END of instanceId definition. leaf instPriority { @@ -73,6 +74,7 @@ submodule mstp { } default "32768"; config true; + description "bridge instance priority"; } // END of instPriority definition. leaf-list vlanId { @@ -401,6 +403,7 @@ submodule mstp { } default "128"; config true; + description "bridge-group instance priority"; } // END of instportPriority definition. leaf mstppathCost { @@ -410,6 +413,7 @@ submodule mstp { } default "20000000"; config true; + description "bridge-group instance path-cost"; } // END of mstppathCost definition. leaf cistAdminedge { @@ -675,6 +679,7 @@ submodule mstp { type cml_data_types:CML_BOOL_T; default false; config true; + description "spanning-tree instance restricted-tcn"; } // END of restrictedTCN definition. leaf restrictedRole { @@ -682,6 +687,7 @@ submodule mstp { type cml_data_types:CML_BOOL_T; default false; config true; + description "spanning-tree instance restricted-role"; } // END of restrictedRole definition. } // End of mstp_interface-list diff --git a/yang-files/oamBfd.yang b/yang-files/oambfd.yang similarity index 95% rename from yang-files/oamBfd.yang rename to yang-files/oambfd.yang index 9fc85ff9..cecb2502 100644 --- a/yang-files/oamBfd.yang +++ b/yang-files/oambfd.yang @@ -9,11 +9,11 @@ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. -* File name : oamBfd.yang +* File name : oambfd.yang * */ -submodule oamBfd { +submodule oambfd { belongs-to ZebOS { prefix ZebOS; } include interface; @@ -56,18 +56,21 @@ submodule oamBfd { mandatory false; type cml_data_types:CML_BFD_GTSM_STATE_T; config true; + description "bfd Gtsm(Generalized TTL Security Mechanism)"; } // END of bfdGtsmState definition. leaf bfdNotificationState { mandatory false; type cml_data_types:CML_BFD_SESSION_STATE_T; config true; + description "BFD Notification State"; } // END of bfdNotificationState definition. leaf bfdEchoState { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "BFD Echo State"; } // END of bfdEchoState definition. leaf bfdGtsmTtl { @@ -77,6 +80,7 @@ submodule oamBfd { } default "255"; config true; + description "bfd GTSM TTL"; } // END of bfdGtsmTtl definition. leaf bfdSlowTimer { @@ -169,18 +173,21 @@ submodule oamBfd { mandatory true; type cml_data_types:CML_IP_ADDR_T; config true; + description "BFD multihop-peer"; } // END of bfdMultihopAddr definition. leaf bfdAuthType { mandatory true; type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; config true; + description "BFD Authentication Type"; } // END of bfdAuthType definition. leaf bfdKeyChain { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "BFD key-chain"; } // END of bfdKeyChain definition. } // End of bfdMultihopKeyChain-list @@ -261,6 +268,7 @@ submodule oamBfd { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "BFD ipv4 State"; } // END of bfdIpv4State definition. leaf bfdMinTx { @@ -270,6 +278,7 @@ submodule oamBfd { } default "250"; config true; + description "bfd interval"; } // END of bfdMinTx definition. leaf bfdMinRx { @@ -288,6 +297,7 @@ submodule oamBfd { } default "3"; config true; + description "bfd Interval Multiplier"; } // END of bfdIntervalMultiplier definition. leaf bfdEchoInterval { @@ -314,6 +324,7 @@ submodule oamBfd { mandatory true; type cml_data_types:CML_IPV4_ADDR_T; config true; + description "bfd ipv4 User Session"; } // END of bfdUserSrcAddr definition. leaf bfdUserDestAddr { @@ -362,6 +373,7 @@ submodule oamBfd { mandatory true; type cml_data_types:CML_IPV6_ADDR_T; config true; + description "bfd ipv6 User Session"; } // END of bfdIpv6UserSrcAddr definition. leaf bfdIpv6UserDestAddr { @@ -466,12 +478,14 @@ submodule oamBfd { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "mpls ping request"; } // END of pingRequest definition. leaf pingReply { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "mpls ping reply"; } // END of pingReply definition. } // END of oamMpls-container definition. diff --git a/yang-files/ospf.yang b/yang-files/ospf.yang index f38066ed..59abc64c 100644 --- a/yang-files/ospf.yang +++ b/yang-files/ospf.yang @@ -28,8 +28,8 @@ submodule ospf { "Layer-3 ospf configurations"; - revision "2015-04-25" { - description "Revisied on 2015-04-25."; } + revision "2016-08-10" { + description "Revisied on 2016-08-10."; } @@ -59,6 +59,13 @@ submodule ospf { config true; } // END of ospfProcessId definition. + leaf vrfName { + mandatory true; + type leafref { + path "/vr/vrf/vrfName"; + } + } // END of vrfName definition. + leaf ospfShutDown { mandatory false; type cml_data_types:CML_BOOL_T; @@ -75,6 +82,7 @@ submodule ospf { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "domain-id"; } // END of nullDomainValue definition. leaf domainValue { @@ -89,24 +97,6 @@ submodule ospf { config true; } // END of isPrimaryDomainId definition. - leaf passiveIfName { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of passiveIfName definition. - - leaf isPassiveInterface { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of isPassiveInterface definition. - - leaf passiveIfIpAddr { - mandatory false; - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of passiveIfIpAddr definition. - leaf isPassiveIfDefault { mandatory false; type cml_data_types:CML_BOOL_T; @@ -142,6 +132,7 @@ submodule ospf { } default "5000"; config true; + description "timers spf exp"; } // END of spfMaxDelay definition. leaf throttleTimersStartDelay { @@ -169,6 +160,7 @@ submodule ospf { } default "5000"; config true; + description "timers throttle lsa"; } // END of throttleTimersMaxDelay definition. leaf lsaMinArrival { @@ -232,6 +224,7 @@ submodule ospf { } default "0"; config true; + description "overflow database external"; } // END of exitOverflowInterval definition. leaf metricValue { @@ -250,6 +243,7 @@ submodule ospf { } default "110"; config true; + description "admin distance"; } // END of adminDistance definition. leaf restartMethod { @@ -311,6 +305,7 @@ submodule ospf { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "overflow database"; } // END of isLsdbLimit definition. leaf tieBreakField { @@ -373,6 +368,7 @@ submodule ospf { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "capability te/traffic-engineering"; } // END of isTE definition. leaf isEnableTE { @@ -385,12 +381,14 @@ submodule ospf { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "capability opaque"; } // END of isOpaqueLsa definition. leaf checkOpaqueLsa { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "opaque-lsa-capable"; } // END of checkOpaqueLsa definition. leaf refreshTimer { @@ -424,6 +422,7 @@ submodule ospf { type cml_data_types:CML_OSPF_DIST_ROUTE_SOURCE_TYPE_T; config true; + description "distribute-list"; } // END of routeSourceDistType definition. leaf-list secondaryOspfProcId { @@ -432,12 +431,14 @@ submodule ospf { range "1..65535"; } config true; + description "distribute-list ospf"; } // END of secondaryOspfProcId definition. leaf isDistributeListIn { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "distribute-list"; } // END of isDistributeListIn definition. leaf opaqueAsDesc { @@ -1554,6 +1555,7 @@ submodule ospf { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "distance Access List Name"; } // END of distanceAccessListName definition. leaf sourceIpAddr { @@ -1586,6 +1588,7 @@ submodule ospf { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "log-adjacency-changes"; } // END of isLogAdjSet definition. leaf isFrrSet { @@ -1619,24 +1622,53 @@ submodule ospf { } // END of mlinkNbr definition. - list ospfVrf { + list passiveIf { description - "ospfVrf"; + "passiveIf"; config true; - key "vrfName"; + key "passiveIfName"; - leaf vrfName { + leaf passiveIfName { mandatory true; - type leafref { - path "/vr/vrf/vrfName"; - } - } // END of vrfName definition. + type cml_data_types:CML_STRING_T; + config true; + } // END of passiveIfName definition. + + leaf passiveIfIpAddr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of passiveIfIpAddr definition. + + } // End of passiveIf-list - } // End of ospfVrf-list + list noPassiveIfRun { + + + description + "noPassiveIfRun"; + + config false; + key "noPassiveIfName"; + + + leaf noPassiveIfName { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of noPassiveIfName definition. + + leaf noPassiveIfIpAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of noPassiveIfIpAddr definition. + + } // End of noPassiveIfRun-list list ospfDefaultInformation { @@ -1652,6 +1684,7 @@ submodule ospf { mandatory true; type cml_data_types:CML_BOOL_T; config true; + description "default-information originate"; } // END of defaultOrigin definition. leaf defaultAlways { @@ -1750,6 +1783,7 @@ submodule ospf { range "0..4294967295"; } config true; + description "summary-address with tag Value"; } // END of addressTag definition. } // End of summaryAddress-list @@ -1785,6 +1819,7 @@ submodule ospf { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "host Area"; } // END of hostAreaId definition. leaf hostEntryCost { @@ -1793,6 +1828,7 @@ submodule ospf { range "0..65535"; } config true; + description "host Area Cost"; } // END of hostEntryCost definition. } // End of hostArea-list @@ -1854,6 +1890,7 @@ submodule ospf { type cml_data_types:CML_OSPF_AREA_SHORTCUT_TYPE_T; default "default"; config true; + description "area shortcut"; } // END of areaShortcutType definition. leaf addrAggrType { @@ -1936,7 +1973,7 @@ submodule ospf { leaf spfLastExec { mandatory false; - type cml_data_types:CML_UINT32_T; + type cml_data_types:CML_STRING_T; config false; } // END of spfLastExec definition. @@ -1996,6 +2033,7 @@ submodule ospf { mandatory true; type cml_data_types:CML_OSPF_AREA_FILTER_LIST_PREFIX_T; config true; + description "area filter-list"; } // END of prefixType definition. } // End of filterPrefixType-list @@ -2051,24 +2089,28 @@ submodule ospf { mandatory true; type cml_data_types:CML_IPV4_PREFIX_T; config true; + description "ospf Area Range"; } // END of ospfAreaRange definition. leaf isAreaRangeAdvertise { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "area range as advertise"; } // END of isAreaRangeAdvertise definition. leaf isAreaRangeNotAdvertise { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "area range as not-advertise"; } // END of isAreaRangeNotAdvertise definition. leaf substituteAddr { mandatory false; type cml_data_types:CML_IPV4_PREFIX_T; config true; + description "area range with substitute"; } // END of substituteAddr definition. } // End of rangeArea-list @@ -2104,18 +2146,21 @@ submodule ospf { mandatory true; type cml_data_types:CML_IPV4_ADDR_T; config true; + description "area range with mask"; } // END of areaRangeMask definition. leaf rangeMaskAdvertise { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "area range with mask as advertise"; } // END of rangeMaskAdvertise definition. leaf rangeMaskNotAdvertise { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "area range with mask as not-advertise"; } // END of rangeMaskNotAdvertise definition. } // End of rangeMaskLenArea-list @@ -2204,6 +2249,7 @@ submodule ospf { mandatory false; type cml_data_types:CML_OSPF_NSSA_TRANSLATOR_ROLE_T; config true; + description "area nssa"; } // END of nssaAreaTranslatorRole definition. } // END of nssaAreaTranslator-container definition. @@ -2223,12 +2269,14 @@ submodule ospf { mandatory true; type cml_data_types:CML_BOOL_T; config true; + description "area stub"; } // END of isStubArea definition. leaf stubAreaNoSummary { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "area stub no-summary"; } // END of stubAreaNoSummary definition. } // End of stubArea-list @@ -2247,6 +2295,7 @@ submodule ospf { mandatory true; type cml_data_types:CML_IPV4_ADDR_T; config true; + description "area virtual-link"; } // END of peerId definition. leaf virtMsgDigestKeyId { @@ -2399,6 +2448,7 @@ submodule ospf { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "network area"; } // END of networkAreaId definition. leaf ospfInterfaceInstanceId { @@ -2426,6 +2476,7 @@ submodule ospf { mandatory true; type cml_data_types:CML_IPV4_ADDR_T; config true; + description "Network Area with Mask"; } // END of ospfNetAddrMask definition. leaf netMask { @@ -2686,6 +2737,7 @@ submodule ospf { mandatory true; type cml_data_types:CML_IPV4_ADDR_T; config true; + description "Neighbor Addr"; } // END of neighborIpAddr definition. leaf neighborStaticPriority { @@ -2713,6 +2765,7 @@ submodule ospf { } default "10"; config true; + description "neighbor area with Cost,poll-interval"; } // END of neighborCost definition. } // End of neighbor-list @@ -2782,11 +2835,13 @@ submodule ospf { mandatory true; type cml_data_types:CML_OSPF_ROUTE_SOURCE_TYPE_T; config true; + description "Ospf redistribute"; } // END of routeSourceType definition. leaf redistMetricType { mandatory false; type cml_data_types:CML_OSPF_METRIC_TYPE_T; + default "2"; config true; } // END of redistMetricType definition. @@ -2795,6 +2850,7 @@ submodule ospf { type cml_data_types:CML_INT32_T { range "0..16777214"; } + default "0"; config true; } // END of redistMetricValue definition. @@ -2803,6 +2859,7 @@ submodule ospf { type cml_data_types:CML_UINT32_T { range "0..4294967295"; } + default "0"; config true; } // END of redistTag definition. @@ -2810,6 +2867,7 @@ submodule ospf { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "Ospf redistribute with metric-type,route-map"; } // END of routeMapName definition. } // End of redistribute-list @@ -2845,6 +2903,7 @@ submodule ospf { } default "110"; config true; + description "external Distance"; } // END of externalDistance definition. } // END of distanceTypes-container definition. @@ -2870,6 +2929,33 @@ submodule ospf { } } // END of ifName definition. + leaf ifBfdSet { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifBfdSet definition. + + leaf ifBfdDisable { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifBfdDisable definition. + + leaf holdDownTimer { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..2147483"; + } + default "70000"; + config true; + } // END of holdDownTimer definition. + + leaf fastRerouteIfSet { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of fastRerouteIfSet definition. + leaf ifNetworkType { mandatory false; type cml_data_types:CML_OSPF_NETWORK_T; @@ -2890,29 +2976,18 @@ submodule ospf { config true; } // END of ifAuthType definition. - leaf ipOspfAddr { - mandatory false; - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of ipOspfAddr definition. - - leaf ifPriority { + leaf ifAuthKeyEncryption { mandatory false; - type cml_data_types:CML_UINT8_T { - range "0..255"; - } - default "1"; + type cml_data_types:CML_BOOL_T; config true; - } // END of ifPriority definition. + } // END of ifAuthKeyEncryption definition. - leaf ifMtu { + leaf ifAuthKey { mandatory false; - type cml_data_types:CML_UINT16_T { - range "576..65535"; - } - default "576"; + type cml_data_types:CML_STRING_T; config true; - } // END of ifMtu definition. + description "ospf authentication-key with IP address of the interface."; + } // END of ifAuthKey definition. leaf ifCost { mandatory false; @@ -2923,20 +2998,23 @@ submodule ospf { config true; } // END of ifCost definition. - leaf fastRerouteIfSet { + leaf ifDeadInterval { mandatory false; - type cml_data_types:CML_BOOL_T; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "40"; config true; - } // END of fastRerouteIfSet definition. + } // END of ifDeadInterval definition. - leaf holdDownTimer { + leaf ifHelloInterval { mandatory false; type cml_data_types:CML_UINT32_T { - range "1..2147483"; + range "1..65535"; } - default "70000"; + default "10"; config true; - } // END of holdDownTimer definition. + } // END of ifHelloInterval definition. leaf isMtuIgnore { mandatory false; @@ -2953,11 +3031,14 @@ submodule ospf { config true; } // END of ifTransmitDelay definition. - leaf ifDisableAll { + leaf ifPriority { mandatory false; - type cml_data_types:CML_BOOL_T; + type cml_data_types:CML_UINT8_T { + range "0..255"; + } + default "1"; config true; - } // END of ifDisableAll definition. + } // END of ifPriority definition. leaf ifRetransmitInterval { mandatory false; @@ -2968,61 +3049,26 @@ submodule ospf { config true; } // END of ifRetransmitInterval definition. - leaf ifHelloInterval { - mandatory false; - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "10"; - config true; - } // END of ifHelloInterval definition. - - leaf ifDeadInterval { - mandatory false; - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "40"; - config true; - } // END of ifDeadInterval definition. - - leaf ifAuthKeyEncryption { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of ifAuthKeyEncryption definition. - - leaf ifAuthKey { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of ifAuthKey definition. - leaf ifDatabaseFilter { mandatory false; type cml_data_types:CML_BOOL_T; config true; } // END of ifDatabaseFilter definition. - leaf msgDigestKeyId { + leaf ifMtu { mandatory false; - type cml_data_types:CML_UINT32_T { - range "1..255"; + type cml_data_types:CML_UINT16_T { + range "576..65535"; } + default "576"; config true; - } // END of msgDigestKeyId definition. + } // END of ifMtu definition. - leaf msgDigestKeyEncryption { + leaf ifDisableAll { mandatory false; type cml_data_types:CML_BOOL_T; config true; - } // END of msgDigestKeyEncryption definition. - - leaf msgifAuthKey { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of msgifAuthKey definition. + } // END of ifDisableAll definition. leaf ifTEMetric { mandatory false; @@ -3042,31 +3088,11 @@ submodule ospf { config true; } // END of ifResyncTimeout definition. - leaf ifOpsfProcId { - mandatory false; - type cml_data_types:CML_INT32_T { - range "0..65535"; - } - config true; - } // END of ifOpsfProcId definition. - - leaf ifOspfAreaId { - mandatory false; - type cml_data_types:CML_STRING_T; - config true; - } // END of ifOspfAreaId definition. - - leaf ifBfdSet { - mandatory false; - type cml_data_types:CML_BOOL_T; - config true; - } // END of ifBfdSet definition. - - leaf ifBfdDisable { + leaf ifDna { mandatory false; type cml_data_types:CML_BOOL_T; config true; - } // END of ifBfdDisable definition. + } // END of ifDna definition. leaf isIfRunning { mandatory false; @@ -3394,7 +3420,7 @@ submodule ospf { leaf multiIfDbFilterGetState { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_INT32_T; config false; } // END of multiIfDbFilterGetState definition. @@ -3488,12 +3514,226 @@ submodule ospf { config false; } // END of multiIfMtu definition. - leaf ifDna { - mandatory false; - type cml_data_types:CML_BOOL_T; + + list ospfMultiAreaIf { + + + description + "ospfMultiAreaIf"; + config true; - } // END of ifDna definition. + key "ifOpsfProcId"; + + + leaf ifOpsfProcId { + mandatory true; + type cml_data_types:CML_INT32_T { + range "0..65535"; + } + config true; + } // END of ifOpsfProcId definition. + + + list ospfMultiAreaId { + + + description + "ospfMultiAreaId"; + + config true; + key "ifOspfAreaId"; + + + leaf ifOspfAreaId { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ifOspfAreaId definition. + + leaf ifOspfNbrId { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of ifOspfNbrId definition. + + } // End of ospfMultiAreaId-list + } // End of ospfMultiAreaIf-list + + list ospfCryptKey { + + + description + "ospfCryptKey"; + + config true; + key "msgDigestKeyId"; + + + leaf msgDigestKeyId { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..255"; + } + config true; + } // END of msgDigestKeyId definition. + + leaf msgDigestKeyEncryption { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of msgDigestKeyEncryption definition. + + leaf msgifAuthKey { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of msgifAuthKey definition. + + } // End of ospfCryptKey-list + + list ospfInterfaceParamsAddrList { + + + description + "ospfInterfaceParamsAddrList"; + + config true; + key "ipOspfAddr"; + + + leaf ipOspfAddr { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of ipOspfAddr definition. + + leaf ifAuthTypeAddr { + mandatory false; + type cml_data_types:CML_OSPF_AUTH_TYPE_T; + default "simple"; + config true; + } // END of ifAuthTypeAddr definition. + + leaf ifAuthKeyEncryptionAddr { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifAuthKeyEncryptionAddr definition. + + leaf ifAuthKeyAddr { + mandatory false; + type cml_data_types:CML_STRING_T; + config true; + } // END of ifAuthKeyAddr definition. + + leaf ifCostAddr { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "10"; + config true; + } // END of ifCostAddr definition. + + leaf ifDeadIntervalAddr { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "40"; + config true; + } // END of ifDeadIntervalAddr definition. + + leaf ifHelloIntervalAddr { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "10"; + config true; + } // END of ifHelloIntervalAddr definition. + + leaf isMtuIgnoreAddr { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isMtuIgnoreAddr definition. + + leaf ifTransmitDelayAddr { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..3600"; + } + default "1"; + config true; + } // END of ifTransmitDelayAddr definition. + + leaf ifPriorityAddr { + mandatory false; + type cml_data_types:CML_UINT8_T { + range "0..255"; + } + default "1"; + config true; + } // END of ifPriorityAddr definition. + + leaf ifRetransmitIntervalAddr { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "5"; + config true; + } // END of ifRetransmitIntervalAddr definition. + + leaf ifDatabaseFilterAddr { + mandatory false; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifDatabaseFilterAddr definition. + + leaf ifResyncTimeoutAddr { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "40"; + config true; + } // END of ifResyncTimeoutAddr definition. + + + list ospfCryptKeyAddr { + + + description + "ospfCryptKeyAddr"; + + config true; + key "msgDigestKeyIdAddr"; + + + leaf msgDigestKeyIdAddr { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..255"; + } + config true; + } // END of msgDigestKeyIdAddr definition. + + leaf msgDigestKeyEncryptionAddr { + mandatory true; + type cml_data_types:CML_BOOL_T; + config true; + } // END of msgDigestKeyEncryptionAddr definition. + + leaf msgifAuthKeyAddr { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of msgifAuthKeyAddr definition. + } // End of ospfCryptKeyAddr-list + } // End of ospfInterfaceParamsAddrList-list } // End of ospfInterface-list } // END of ospfInterface-grouping definition. @@ -3604,6 +3844,7 @@ submodule ospf { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "ospf hitless-restart helper"; } // END of never definition. leaf nbrRouterId { @@ -3673,6 +3914,7 @@ submodule ospf { mandatory false; type cml_data_types:CML_OSPF_TELINK_LOCAL_T; config true; + description "te-link"; } // END of linkLocalEnable definition. leaf teFloodOspfId { @@ -3688,6 +3930,7 @@ submodule ospf { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "Te Flood Ospf Id"; } // END of teFloodareaId definition. } // End of teLinkOspf-list diff --git a/yang-files/ospf6.yang b/yang-files/ospf6.yang index 38e16f91..577a3476 100644 --- a/yang-files/ospf6.yang +++ b/yang-files/ospf6.yang @@ -28,8 +28,8 @@ submodule ospf6 { "Layer-3 ospf configurations"; - revision "2015-04-25" { - description "Revisied on 2015-04-25."; } + revision "2016-08-08" { + description "Revisied on 2016-08-08."; } @@ -55,6 +55,7 @@ submodule ospf6 { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "router ipv6 ospf"; } // END of ospf6ProcessTag definition. leaf ospf6logAdjacency { @@ -146,6 +147,7 @@ submodule ospf6 { } default "50000"; config true; + description "timers spf exp"; } // END of maxDelay definition. leaf ospf6ShutdownStatus { @@ -160,12 +162,6 @@ submodule ospf6 { config true; } // END of ospf6FRKeepAllPath definition. - leaf-list passiveIfName { - - type cml_data_types:CML_STRING_T; - config true; - } // END of passiveIfName definition. - leaf isPassiveIfDefault { mandatory false; type cml_data_types:CML_BOOL_T; @@ -287,7 +283,7 @@ submodule ospf6 { leaf teNeighborInterfaceId { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_INT32_T; config false; } // END of teNeighborInterfaceId definition. @@ -347,7 +343,7 @@ submodule ospf6 { leaf teMaxResBW { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_INT32_T; config false; } // END of teMaxResBW definition. @@ -359,7 +355,7 @@ submodule ospf6 { leaf teMaxBW { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_INT32_T; config false; } // END of teMaxBW definition. @@ -557,7 +553,7 @@ submodule ospf6 { leaf lspAdmControl { mandatory false; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_INT32_T; config false; } // END of lspAdmControl definition. @@ -787,21 +783,61 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "distribute-list in"; } // END of ospf6DistIn definition. leaf-list ospf6RedistProtocolDist { type cml_data_types:CML_OSPF6_DIST_ROUTE_SOURCE_TYPE_T; config true; + description "distribute-list out"; } // END of ospf6RedistProtocolDist definition. leaf-list ospf6DistributeTag { type cml_data_types:CML_STRING_T; config true; + description "distribute-list out ospf"; } // END of ospf6DistributeTag definition. + list passiveIf { + + + description + "passiveIf"; + + config true; + key "passiveIfName"; + + + leaf passiveIfName { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + description "passive-interface with interface name"; + } // END of passiveIfName definition. + + } // End of passiveIf-list + + list noPassiveIf { + + + description + "noPassiveIf"; + + config false; + key "noPassiveIfName"; + + + leaf noPassiveIfName { + mandatory true; + type cml_data_types:CML_STRING_T; + config false; + } // END of noPassiveIfName definition. + + } // End of noPassiveIf-list + list neighborRun { @@ -968,6 +1004,7 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "summary-address with not-advertise"; } // END of addressNotMask6len definition. leaf summaryRoute6Tag { @@ -976,6 +1013,7 @@ submodule ospf6 { range "0..4294967295"; } config true; + description "summary-address with all-tag "; } // END of summaryRoute6Tag definition. leaf summaryRoute6TranslateTag { @@ -984,6 +1022,7 @@ submodule ospf6 { range "0..4294967295"; } config true; + description "summary-address with translate-tag"; } // END of summaryRoute6TranslateTag definition. } // End of summaryAddress-list @@ -1011,6 +1050,7 @@ submodule ospf6 { } default "1"; config true; + description "area default-cost"; } // END of defaultCost definition. leaf isAreaType { @@ -1172,12 +1212,14 @@ submodule ospf6 { mandatory true; type cml_data_types:CML_BOOL_T; config true; + description "area stub"; } // END of isAreaStub definition. leaf ospf6AreaSummary { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "area stub no-summary"; } // END of ospf6AreaSummary definition. } // End of areaStub-list @@ -1196,6 +1238,7 @@ submodule ospf6 { mandatory true; type cml_data_types:CML_IPV4_ADDR_T; config true; + description "area virtual-link"; } // END of peerId definition. leaf virtualLinkRetransmitInterval { @@ -1255,6 +1298,7 @@ submodule ospf6 { } default "0"; config true; + description "area virtual-link options"; } // END of VirtualLinkInstanceId definition. } // End of areaVlink-list @@ -1329,6 +1373,7 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "area nssa"; } // END of NssaRouteMapName definition. container nssaAreaTranslator { @@ -1342,6 +1387,7 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_OSPF6_NSSA_TRANSLATOR_ROLE_T; config true; + description "area nssa"; } // END of nssaAreaTranslatorRole definition. } // END of nssaAreaTranslator-container definition. @@ -1361,6 +1407,7 @@ submodule ospf6 { mandatory true; type cml_data_types:CML_IPV6_PREFIX_T; config true; + description "area range"; } // END of areaRangeAddr definition. leaf ospf6AreaRangeStatus { @@ -1416,6 +1463,7 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "redistribute ospf options"; } // END of ospf6RouteMapName definition. } // End of redistributeProc-list @@ -1464,6 +1512,7 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "redistribute options"; } // END of ospf6RouteMapName definition. } // End of redistribute-list @@ -1482,6 +1531,7 @@ submodule ospf6 { mandatory true; type cml_data_types:CML_BOOL_T; config true; + description "default-information originate"; } // END of ospf6RedistDefaultOrigin definition. leaf ospf6RedistDefaultOriginAlways { @@ -1508,6 +1558,7 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "default-information originate options"; } // END of routeMapName definition. } // End of ospf6DefaultInformation-list @@ -1560,6 +1611,7 @@ submodule ospf6 { mandatory true; type cml_data_types:CML_IPV4_PREFIX_T; config true; + description "area range for address-family ipv4"; } // END of areaRangeIpv4Addr definition. leaf ospfAreaRangeStatus { @@ -1585,6 +1637,7 @@ submodule ospf6 { mandatory true; type cml_data_types:CML_OSPF6_AF_ROUTE_SOURCE_TYPE_T; config true; + description "redistribute for address-family ipv4"; } // END of ospfRedistProtocol definition. leaf ospfRedistMetricType { @@ -1616,6 +1669,7 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "redistribute options for address-family ipv4"; } // END of ospfRouteMapName definition. } // End of addressRedistribute-list @@ -1636,6 +1690,7 @@ submodule ospf6 { range "1..65535"; } config true; + description "redistribute ospf for address-family ipv4"; } // END of sourceOspfTag definition. leaf ospfRedistMetricType { @@ -1667,6 +1722,7 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "redistribute ospf options for address-family ipv4"; } // END of ospfRouteMapName definition. } // End of addressRedistributeProc-list @@ -1685,6 +1741,7 @@ submodule ospf6 { mandatory true; type cml_data_types:CML_IPV4_PREFIX_T; config true; + description "summary-address for ipv4 address-family"; } // END of summaryIpv4Addr definition. leaf summaryRouteTag { @@ -1693,12 +1750,14 @@ submodule ospf6 { range "0..4294967295"; } config true; + description "summary-address with tag for ipv4 address-family"; } // END of summaryRouteTag definition. leaf addressNotMask4len { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "summary-address with not-advertise for ipv4 address-family"; } // END of addressNotMask4len definition. } // End of summaryAddressIpv4-list @@ -1717,6 +1776,7 @@ submodule ospf6 { mandatory true; type cml_data_types:CML_BOOL_T; config true; + description "default-information originate for address-family ipv4"; } // END of ospf6FamRedistDefaultOrigin definition. leaf ospf6FamRedistDefaultOriginAlways { @@ -1743,6 +1803,7 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "default-information originate options for address-family ipv4"; } // END of ospf6FamRouteMapName definition. } // End of ospf6FamilyDefaultInformation-list @@ -1779,6 +1840,7 @@ submodule ospf6 { } default "110"; config true; + description "distance ospfv3"; } // END of externalDistance definition. } // END of distanceTypes-container definition. @@ -1817,12 +1879,6 @@ submodule ospf6 { config true; } // END of bfdDisable definition. - leaf isIfLoopBackType { - mandatory false; - type cml_data_types:CML_BOOL_T; - config false; - } // END of isIfLoopBackType definition. - list ospf6IfinstanceId { @@ -1930,37 +1986,6 @@ submodule ospf6 { config true; } // END of ospf6LsaSuppressionValue definition. - leaf ospf6NeighborAddr { - mandatory false; - type cml_data_types:CML_IPV6_ADDR_T; - config true; - } // END of ospf6NeighborAddr definition. - - leaf ospf6IfNbrCost { - mandatory false; - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "10"; - config true; - } // END of ospf6IfNbrCost definition. - - leaf ospf6IfNbrPollInterval { - mandatory false; - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - config true; - } // END of ospf6IfNbrPollInterval definition. - - leaf ospf6IfNbrPriority { - mandatory false; - type cml_data_types:CML_INT32_T { - range "0..255"; - } - config true; - } // END of ospf6IfNbrPriority definition. - leaf fastRerouteIfSet { mandatory false; type cml_data_types:CML_BOOL_T; @@ -1978,6 +2003,7 @@ submodule ospf6 { type cml_data_types:CML_STRING_T; default ""; config true; + description "ipv6 router ospf"; } // END of ifProcessTag definition. leaf ifProcessTagPresent { @@ -2154,6 +2180,64 @@ submodule ospf6 { config false; } // END of isInterfaceType definition. + leaf isIfLoopBackType { + mandatory false; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isIfLoopBackType definition. + + leaf intName { + mandatory false; + type cml_data_types:CML_STRING_T; + config false; + } // END of intName definition. + + + list ospf6InterfaceNbrStatic { + + + description + "ospf6InterfaceNbrStatic"; + + config true; + key "ospf6NeighborAddr"; + + + leaf ospf6NeighborAddr { + mandatory true; + type cml_data_types:CML_IPV6_ADDR_T; + config true; + } // END of ospf6NeighborAddr definition. + + leaf ospf6IfNbrCost { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "10"; + config true; + description "ipv6 ospf neighbor cost"; + } // END of ospf6IfNbrCost definition. + + leaf ospf6IfNbrPollInterval { + mandatory false; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + description "ipv6 ospf neighbor poll-interval"; + } // END of ospf6IfNbrPollInterval definition. + + leaf ospf6IfNbrPriority { + mandatory false; + type cml_data_types:CML_INT32_T { + range "0..255"; + } + config true; + description "ipv6 ospf neighbor priority"; + } // END of ospf6IfNbrPriority definition. + + } // End of ospf6InterfaceNbrStatic-list } // End of ospf6IfinstanceId-list } // End of ospf6Interface-list } // END of ospf6Interface-grouping definition. @@ -2183,12 +2267,14 @@ submodule ospf6 { } default "120"; config true; + description "ipv6 ospf restart"; } // END of gracePeriod definition. leaf gracefulRestartPlanned { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "graceful-restart ospfv3 planned-only"; } // END of gracefulRestartPlanned definition. leaf ospf6RouterSingleline { @@ -2232,18 +2318,21 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "ipv6 ospf restart helper never"; } // END of never definition. leaf nbrRouterId { mandatory false; type cml_data_types:CML_STRING_T; config true; + description "ipv6 ospf restart helper never router-id"; } // END of nbrRouterId definition. leaf restartAll { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "ipv6 ospf restart helper never router-id all"; } // END of restartAll definition. } // END of restartConfig-container definition. @@ -2258,12 +2347,14 @@ submodule ospf6 { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "ipv6 ospf restart helper only-reload"; } // END of onlyReload definition. leaf onlyUpgrade { mandatory false; type cml_data_types:CML_BOOL_T; config true; + description "ipv6 ospf restart helper only-upgrade"; } // END of onlyUpgrade definition. leaf restartHelperPeriod { @@ -2273,6 +2364,7 @@ submodule ospf6 { } default "120"; config true; + description "ipv6 ospf restart helper max-grace-period"; } // END of restartHelperPeriod definition. } // END of restartAllConfig-container definition. diff --git a/yang-files/vlan.yang b/yang-files/vlan.yang index de3b0f8e..fdf552f0 100644 --- a/yang-files/vlan.yang +++ b/yang-files/vlan.yang @@ -71,11 +71,13 @@ submodule vlan { mandatory true; type cml_data_types:CML_VLANSTATE_T; config true; + description "vlan state"; } // END of vlanState definition. leaf vlanType { - mandatory true; + mandatory false; type cml_data_types:CML_VLAN_TYPE_T; + default "custmor"; config true; } // END of vlanType definition. diff --git a/yang-files/vlaninterface.yang b/yang-files/vlaninterface.yang index b0941b3d..a51b95ef 100644 --- a/yang-files/vlaninterface.yang +++ b/yang-files/vlaninterface.yang @@ -66,6 +66,7 @@ submodule vlaninterface { type cml_data_types:CML_ENABLE_DISABLE_T; default "enable"; config true; + description "switchport mode hybrid ingress-filter"; } // END of vlanPortIngressFilter definition. leaf frameType { @@ -73,6 +74,7 @@ submodule vlaninterface { type cml_data_types:CML_VLAN_FRAME_TYPE_T; default "all"; config true; + description "switchport mode hybrid acceptable-frame-type"; } // END of frameType definition. @@ -105,6 +107,7 @@ submodule vlaninterface { mandatory true; type cml_data_types:CML_STRING_T; config true; + description "mac Address"; } // END of macAddr definition. leaf discardForward { @@ -168,6 +171,7 @@ submodule vlaninterface { mandatory true; type cml_data_types:CML_UINT16_T; config true; + description "switchport allowed (hybrid|trunk)"; } // END of allowedVlanId definition. leaf vlanPortMode { diff --git a/yang-files/vr.yang b/yang-files/vr.yang index 99a72ca2..32689532 100644 --- a/yang-files/vr.yang +++ b/yang-files/vr.yang @@ -17,16 +17,16 @@ submodule vr { belongs-to ZebOS { prefix ZebOS; } include interface; - include nsmLACP; - include oamBfd; include bridge; + include oambfd; include ospf; - include layer2LACP; - include bgp; + include lag; + include lacp; include vrf; include lldpv2; include ospf6; include rib; + include bgp; include vlaninterface; @@ -76,19 +76,15 @@ submodule vr { config true; } // END of ipv6Protocol definition. - uses nsmlacpInterface-grouping; - uses nsmportInterface-grouping; + uses bridge-grouping; uses bfd-grouping; uses bfdInterface-grouping; - uses bridge-grouping; uses ospf-grouping; uses ospfInterface-grouping; uses teLinkOspf-grouping; uses lacpInterface-grouping; - uses bgp-grouping; - uses bgpGlobal-grouping; - uses bgpDebug-grouping; - uses vrfTable-grouping; + uses nsmlacpInterface-grouping; + uses nsmportInterface-grouping; uses vrf-grouping; uses interface-grouping; uses lldpv2Interface-grouping; @@ -98,6 +94,8 @@ submodule vr { uses rib-grouping; uses ribipv6-grouping; uses mroute-grouping; + uses bgp-grouping; + uses vrfTable-grouping; uses vlaninterface-grouping; } // End of vr-list } // END of vr-grouping definition. From 55c92fc468ebeacb891eadbd90582d60d2bb3b8e Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Wed, 24 Aug 2016 08:45:50 +0530 Subject: [PATCH 07/12] Updated Ansible DHCP file with IPI custom code --- ansible/roles/dhcp/templates/dhcp.j2 | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ansible/roles/dhcp/templates/dhcp.j2 b/ansible/roles/dhcp/templates/dhcp.j2 index f4755cf4..02f69fa8 100644 --- a/ansible/roles/dhcp/templates/dhcp.j2 +++ b/ansible/roles/dhcp/templates/dhcp.j2 @@ -1,5 +1,7 @@ default-lease-time 600; max-lease-time 7200; +option ocnos-provision-url code 250 = text; +option ocnos-license-url code 251 = text; option subnet-mask 255.255.255.0; option broadcast-address 10.10.100.255; option routers 10.10.100.250; @@ -16,4 +18,4 @@ range 10.10.100.1 10.10.100.200; } {% endfor %} -} +} \ No newline at end of file From f9a64a349eb2dfb3bb80dadb923690bb4d95445e Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Tue, 30 Aug 2016 15:13:42 +0530 Subject: [PATCH 08/12] New MIBs supported by OcNOS 1.2.1 Internal SHA1 : 8053c13b3b0f69228217c89e93b26f27ffa79e8a --- mibs/BGP4-MIB.txt | 72 +++++++++++++++++++++++------------ mibs/IF-MIB.txt | 28 +++++++------- mibs/P-BRIDGE-MIB.txt | 87 ++++++++++++++++++++++++++++--------------- mibs/Q-BRIDGE-MIB.txt | 58 ++++++++++++++--------------- mibs/RSTP-MIB.txt | 6 +-- 5 files changed, 152 insertions(+), 99 deletions(-) diff --git a/mibs/BGP4-MIB.txt b/mibs/BGP4-MIB.txt index 23154413..94654e0b 100644 --- a/mibs/BGP4-MIB.txt +++ b/mibs/BGP4-MIB.txt @@ -455,7 +455,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The BGP Received Path Attribute Table contains information about paths to destination networks received from all - peers running BGP version 3 or less." + peers running BGP version 3 or less. + --IPI Comments: Not Supported" ::= { bgp 5 } bgpPathAttrEntry OBJECT-TYPE @@ -463,7 +464,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN MAX-ACCESS not-accessible STATUS obsolete DESCRIPTION - "Information about a path to a network." + "Information about a path to a network. + --IPI Comments: Not Supported" INDEX { bgpPathAttrDestNetwork, bgpPathAttrPeer } ::= { bgpRcvdPathAttrTable 1 } @@ -489,7 +491,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN STATUS obsolete DESCRIPTION "The IP address of the peer where the path - information was learned." + information was learned. + --IPI Comments: Not Supported" ::= { bgpPathAttrEntry 1 } bgpPathAttrDestNetwork OBJECT-TYPE @@ -497,7 +500,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN MAX-ACCESS read-only STATUS obsolete DESCRIPTION - "The address of the destination network." + "The address of the destination network. + --IPI Comments: Not Supported" ::= { bgpPathAttrEntry 2 } bgpPathAttrOrigin OBJECT-TYPE @@ -509,7 +513,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN MAX-ACCESS read-only STATUS obsolete DESCRIPTION - "The ultimate origin of the path information." + "The ultimate origin of the path information. + --IPI Comments: Not Supported" ::= { bgpPathAttrEntry 3 } bgpPathAttrASPath OBJECT-TYPE @@ -526,7 +531,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN according to the following algorithm: first-byte-of-pair = ASNumber / 256; - second-byte-of-pair = ASNumber & 255;" + second-byte-of-pair = ASNumber & 255; + --IPI Comments: Not Supported" ::= { bgpPathAttrEntry 4 } bgpPathAttrNextHop OBJECT-TYPE @@ -536,7 +542,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN DESCRIPTION "The address of the border router that should be used for the destination - network." + network. + --IPI Comments: Not Supported" ::= { bgpPathAttrEntry 5 } bgpPathAttrInterASMetric OBJECT-TYPE @@ -546,7 +553,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN DESCRIPTION "The optional inter-AS metric. If this attribute has not been provided for this - route, the value for this object is 0." + route, the value for this object is 0. + --IPI Comments: Not Supported" ::= { bgpPathAttrEntry 6 } @@ -563,7 +571,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The BGP-4 Received Path Attribute Table contains information about paths to destination networks received from all - BGP4 peers." + BGP4 peers. + --IPI Comments: Not Supported" ::= { bgp 6 } bgp4PathAttrEntry OBJECT-TYPE @@ -571,7 +580,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN MAX-ACCESS not-accessible STATUS current DESCRIPTION - "Information about a path to a network." + "Information about a path to a network. + --IPI Comments: Not Supported" INDEX { bgp4PathAttrIpAddrPrefix, bgp4PathAttrIpAddrPrefixLen, bgp4PathAttrPeer } @@ -615,7 +625,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN STATUS current DESCRIPTION "The IP address of the peer where the path - information was learned." + information was learned. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 1 } bgp4PathAttrIpAddrPrefixLen OBJECT-TYPE @@ -625,7 +636,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN DESCRIPTION "Length in bits of the IP address prefix in the Network Layer Reachability - Information field." + Information field. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 2 } bgp4PathAttrIpAddrPrefix OBJECT-TYPE @@ -639,7 +651,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN length specified by bgp4PathAttrIpAddrPrefixLen. Any bits beyond the length specified by - bgp4PathAttrIpAddrPrefixLen are zeroed." + bgp4PathAttrIpAddrPrefixLen are zeroed. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 3 } bgp4PathAttrOrigin OBJECT-TYPE @@ -653,7 +666,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN STATUS current DESCRIPTION "The ultimate origin of the path - information." + information. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 4 } bgp4PathAttrASPathSegment OBJECT-TYPE @@ -682,7 +696,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN string as a pair of octets according to the following algorithm: first-byte-of-pair = ASNumber / 256; - second-byte-of-pair = ASNumber & 255;" + second-byte-of-pair = ASNumber & 255; + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 5 } bgp4PathAttrNextHop OBJECT-TYPE @@ -692,7 +707,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN DESCRIPTION "The address of the border router that should be used for the destination - network." + network. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 6 } bgp4PathAttrMultiExitDisc OBJECT-TYPE @@ -703,7 +719,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN "This metric is used to discriminate between multiple exit points to an adjacent autonomous system. A value of -1 - indicates the absence of this attribute." + indicates the absence of this attribute. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 7 } bgp4PathAttrLocalPref OBJECT-TYPE @@ -714,7 +731,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The originating BGP4 speaker's degree of preference for an advertised route. A value of -1 indicates the absence of this - attribute." + attribute. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 8 } bgp4PathAttrAtomicAggregate OBJECT-TYPE @@ -727,7 +745,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN DESCRIPTION "Whether or not the local system has selected a less specific route without - selecting a more specific route." + selecting a more specific route. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 9 } bgp4PathAttrAggregatorAS OBJECT-TYPE @@ -738,7 +757,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The AS number of the last BGP4 speaker that performed route aggregation. A value of zero (0) indicates the absence of this - attribute." + attribute. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 10 } bgp4PathAttrAggregatorAddr OBJECT-TYPE @@ -749,7 +769,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The IP address of the last BGP4 speaker that performed route aggregation. A value of 0.0.0.0 indicates the absence of this - attribute." + attribute. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 11 } bgp4PathAttrCalcLocalPref OBJECT-TYPE @@ -760,7 +781,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN "The degree of preference calculated by the receiving BGP4 speaker for an advertised route. A value of -1 indicates the - absence of this attribute." + absence of this attribute. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 12 } bgp4PathAttrBest OBJECT-TYPE @@ -772,7 +794,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN STATUS current DESCRIPTION "An indication of whether or not this route - was chosen as the best BGP4 route." + was chosen as the best BGP4 route. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 13 } bgp4PathAttrUnknown OBJECT-TYPE @@ -785,7 +808,8 @@ BGP4-MIB DEFINITIONS ::= BEGIN indicates the absence of such attribute(s). Octets beyond the maximum size, if any, are not recorded by this - object." + object. + --IPI Comments: Not Supported" ::= { bgp4PathAttrEntry 14 } diff --git a/mibs/IF-MIB.txt b/mibs/IF-MIB.txt index 87138943..80132033 100644 --- a/mibs/IF-MIB.txt +++ b/mibs/IF-MIB.txt @@ -1124,7 +1124,7 @@ ifRcvAddressStatus OBJECT-TYPE STATUS current DESCRIPTION "This object is used to create and delete rows in the - ifRcvAddressTable." + ifRcvAddressTable.--IPI Comments: Not Supported" ::= { ifRcvAddressEntry 2 } @@ -1147,7 +1147,7 @@ ifRcvAddressType OBJECT-TYPE saved, so that will not exist after the next restart of the managed system. Entries having the value other(1) are valid and exist but are not classified as to whether they will - continue to exist after the next restart." + continue to exist after the next restart.--IPI Comments: Not Supported" DEFVAL { volatile } ::= { ifRcvAddressEntry 3 } @@ -1306,7 +1306,7 @@ ifGeneralInformationGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing information applicable to - all network interfaces." + all network interfaces.--IPI Comments: Not Supported" ::= { ifGroups 10 } -- the following five groups are mutually exclusive; at most @@ -1350,7 +1350,7 @@ ifPacketGroup OBJECT-GROUP "A collection of objects providing information specific to non-high speed (non-high speed interfaces transmit and receive at speeds less than or equal to 20,000,000 - bits/second) packet-oriented network interfaces." + bits/second) packet-oriented network interfaces.--IPI Comments: Not Supported" ::= { ifGroups 4 } ifHCPacketGroup OBJECT-GROUP @@ -1396,7 +1396,7 @@ ifRcvAddressGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing information on the - multiple addresses which an interface receives." + multiple addresses which an interface receives.--IPI Comments: Not Supported" ::= { ifGroups 7 } ifStackGroup2 OBJECT-GROUP @@ -1404,7 +1404,7 @@ ifStackGroup2 OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing information on the - layering of MIB-II interfaces." + layering of MIB-II interfaces.--IPI Comments: Not Supported" ::= { ifGroups 11 } ifCounterDiscontinuityGroup OBJECT-GROUP @@ -1412,7 +1412,7 @@ ifCounterDiscontinuityGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing information specific to - interface counter discontinuities." + interface counter discontinuities.--IPI Comments: Not Supported" ::= { ifGroups 13 } linkUpDownNotificationsGroup NOTIFICATION-GROUP @@ -1420,7 +1420,7 @@ linkUpDownNotificationsGroup NOTIFICATION-GROUP STATUS current DESCRIPTION "The notifications which indicate specific changes in the - value of ifOperStatus." + value of ifOperStatus.--IPI Comments: Not Supported" ::= { ifGroups 14 } -- Deprecated Definitions - Objects @@ -1597,7 +1597,7 @@ ifTestId OBJECT-TYPE STATUS deprecated DESCRIPTION "This object identifies the current invocation of the - interface's test." + interface's test.--IPI Comments: Not Supported" ::= { ifTestEntry 1 } ifTestStatus OBJECT-TYPE @@ -1610,7 +1610,7 @@ ifTestStatus OBJECT-TYPE this interface. A write to this object is only successful when it changes its value from 'notInUse(1)' to 'inUse(2)'. After completion of a test, the agent resets the value back - to 'notInUse(1)'." + to 'notInUse(1)'.--IPI Comments: Not Supported" ::= { ifTestEntry 2 } ifTestType OBJECT-TYPE @@ -1638,7 +1638,7 @@ ifTestType OBJECT-TYPE When read, this object always returns the most recent value that ifTestType was set to. If it has not been set since the last initialization of the network management subsystem - on the agent, a value of noTest is returned." + on the agent, a value of noTest is returned.--IPI Comments: Not Supported" ::= { ifTestEntry 3 } ifTestResult OBJECT-TYPE @@ -1659,7 +1659,7 @@ ifTestResult OBJECT-TYPE requested since the last reset. Note that this facility provides no provision for saving the results of one test when starting another, as could be required if used by - multiple managers concurrently." + multiple managers concurrently.--IPI Comments: Not Supported" ::= { ifTestEntry 4 } ifTestCode OBJECT-TYPE @@ -1678,7 +1678,7 @@ ifTestCode OBJECT-TYPE testCodeUnknown OBJECT IDENTIFIER ::= { 0 0 } is defined for use if no additional result code is - available." + available.--IPI Comments: Not Supported" ::= { ifTestEntry 5 } @@ -1688,7 +1688,7 @@ ifTestOwner OBJECT-TYPE STATUS deprecated DESCRIPTION "The entity which currently has the 'ownership' required to - invoke a test on this interface." + invoke a test on this interface.--IPI Comments: Not Supported" ::= { ifTestEntry 6 } -- Deprecated Definitions - Groups diff --git a/mibs/P-BRIDGE-MIB.txt b/mibs/P-BRIDGE-MIB.txt index 6a58a012..72a4de18 100644 --- a/mibs/P-BRIDGE-MIB.txt +++ b/mibs/P-BRIDGE-MIB.txt @@ -195,7 +195,8 @@ dot1dTrafficClassesEnabled OBJECT-TYPE operates with a single priority level for all traffic. The value of this object MUST be retained across - reinitializations of the management system." + reinitializations of the management system. + --IPI Comments: Not Supported" DEFVAL { true } @@ -219,7 +220,8 @@ dot1dGmrpStatus OBJECT-TYPE machines on all ports. The value of this object MUST be retained across - reinitializations of the management system." + reinitializations of the management system. + --IPI Comments: Not Supported" DEFVAL { enabled } ::= { dot1dExtBase 3 } @@ -332,7 +334,8 @@ dot1dPortDefaultUserPriority OBJECT-TYPE support native User Priority. The value of this object MUST be retained across - reinitializations of the management system." + reinitializations of the management system. + --IPI Comments: Not Supported" ::= { dot1dPortPriorityEntry 1 } dot1dPortNumTrafficClasses OBJECT-TYPE @@ -344,7 +347,8 @@ dot1dPortNumTrafficClasses OBJECT-TYPE port. This object may optionally be read-only. The value of this object MUST be retained across - reinitializations of the management system." + reinitializations of the management system. + --IPI Comments: Not Supported" ::= { dot1dPortPriorityEntry 2 } -- ------------------------------------------------------------- @@ -392,7 +396,8 @@ dot1dUserPriority OBJECT-TYPE MAX-ACCESS not-accessible STATUS current DESCRIPTION - "The User Priority for a frame received on this port." + "The User Priority for a frame received on this port. + --IPI Comments: Not Supported" ::= { dot1dUserPriorityRegenEntry 1 } dot1dRegenUserPriority OBJECT-TYPE @@ -407,7 +412,8 @@ dot1dRegenUserPriority OBJECT-TYPE Priority is mapped to for this port. The value of this object MUST be retained across - reinitializations of the management system." + reinitializations of the management system. + --IPI Comments: Not Supported" ::= { dot1dUserPriorityRegenEntry 2 } -- ------------------------------------------------------------- @@ -461,7 +467,8 @@ dot1dTrafficClassPriority OBJECT-TYPE For untagged frames received from non-Ethernet media, this value is equal to the dot1dRegenUserPriority value - for the ingress port and media-specific user priority." + for the ingress port and media-specific user priority. + --IPI Comments: Not Supported" ::= { dot1dTrafficClassEntry 1 } dot1dTrafficClass OBJECT-TYPE @@ -472,7 +479,8 @@ dot1dTrafficClass OBJECT-TYPE "The Traffic Class the received frame is mapped to. The value of this object MUST be retained across - reinitializations of the management system." + reinitializations of the management system. + --IPI Comments: Not Supported" ::= { dot1dTrafficClassEntry 2 } -- ------------------------------------------------------------- @@ -516,7 +524,8 @@ dot1dPortOutboundAccessPriority OBJECT-TYPE STATUS current DESCRIPTION "The Outbound Access Priority the received frame is - mapped to." + mapped to. + --IPI Comments: Not Supported" ::= { dot1dPortOutboundAccessPriorityEntry 1 } -- ------------------------------------------------------------- @@ -565,7 +574,8 @@ dot1dPortGarpJoinTime OBJECT-TYPE "The GARP Join time, in centiseconds. The value of this object MUST be retained across - reinitializations of the management system." + reinitializations of the management system. + --IPI Comments: Not Supported" DEFVAL { 20 } ::= { dot1dPortGarpEntry 1 } @@ -577,7 +587,8 @@ dot1dPortGarpLeaveTime OBJECT-TYPE "The GARP Leave time, in centiseconds. The value of this object MUST be retained across - reinitializations of the management system." + reinitializations of the management system. + --IPI Comments: Not Supported" DEFVAL { 60 } ::= { dot1dPortGarpEntry 2 } @@ -589,7 +600,8 @@ dot1dPortGarpLeaveAllTime OBJECT-TYPE "The GARP LeaveAll time, in centiseconds. The value of this object MUST be retained across - reinitializations of the management system." + reinitializations of the management system. + --IPI Comments: Not Supported" DEFVAL { 1000 } ::= { dot1dPortGarpEntry 3 } @@ -649,7 +661,8 @@ dot1dPortGmrpStatus OBJECT-TYPE cause a reset of all GMRP state machines on this port. The value of this object MUST be retained across - reinitializations of the management system." + reinitializations of the management system. + --IPI Comments: Not Supported" DEFVAL { enabled } ::= { dot1dPortGmrpEntry 1 } @@ -662,7 +675,8 @@ dot1dPortGmrpFailedRegistrations OBJECT-TYPE STATUS current DESCRIPTION "The total number of failed GMRP registrations, for any - reason, in all VLANs, on this port." + reason, in all VLANs, on this port. + --IPI Comments: Not Supported" ::= { dot1dPortGmrpEntry 2 } dot1dPortGmrpLastPduOrigin OBJECT-TYPE @@ -671,7 +685,8 @@ dot1dPortGmrpLastPduOrigin OBJECT-TYPE STATUS current DESCRIPTION "The Source MAC Address of the last GMRP message - received on this port." + received on this port. + --IPI Comments: Not Supported" ::= { dot1dPortGmrpEntry 3 } dot1dPortRestrictedGroupRegistration OBJECT-TYPE @@ -882,7 +897,8 @@ pBridgeExtCapGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects indicating the optional - capabilities of the device." + capabilities of the device. + --IPI Comments: Not Supported" ::= { pBridgeGroups 1 } pBridgeDeviceGmrpGroup OBJECT-GROUP @@ -892,7 +908,8 @@ pBridgeDeviceGmrpGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing device-level control - for the Multicast Filtering extended bridge services." + for the Multicast Filtering extended bridge services. + --IPI Comments: Not Supported" ::= { pBridgeGroups 2 } pBridgeDevicePriorityGroup OBJECT-GROUP @@ -902,7 +919,8 @@ pBridgeDevicePriorityGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing device-level control - for the Priority services." + for the Priority services. + --IPI Comments: Not Supported" ::= { pBridgeGroups 3 } pBridgeDefaultPriorityGroup OBJECT-GROUP @@ -916,7 +934,8 @@ pBridgeDefaultPriorityGroup OBJECT-GROUP "A collection of objects defining the User Priority applicable to each port for media that do not support - native User Priority." + native User Priority. + --IPI Comments: Not Supported" ::= { pBridgeGroups 4 } pBridgeRegenPriorityGroup OBJECT-GROUP @@ -927,7 +946,8 @@ pBridgeRegenPriorityGroup OBJECT-GROUP DESCRIPTION "A collection of objects defining the User Priorities applicable to each port for media that support native - User Priority." + User Priority. + --IPI Comments: Not Supported" ::= { pBridgeGroups 5 } pBridgePriorityGroup OBJECT-GROUP @@ -938,7 +958,8 @@ pBridgePriorityGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects defining the traffic classes - within a bridge for each evaluated User Priority." + within a bridge for each evaluated User Priority. + --IPI Comments: Not Supported" ::= { pBridgeGroups 6 } pBridgeAccessPriorityGroup OBJECT-GROUP @@ -948,7 +969,8 @@ pBridgeAccessPriorityGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects defining the media-dependent - outbound access level for each priority." + outbound access level for each priority. + --IPI Comments: Not Supported" ::= { pBridgeGroups 7 } pBridgePortGarpGroup OBJECT-GROUP @@ -960,7 +982,8 @@ pBridgePortGarpGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing port level control - and status information for GARP operation." + and status information for GARP operation. + --IPI Comments: Not Supported" ::= { pBridgeGroups 8 } @@ -974,7 +997,8 @@ pBridgePortGmrpGroup OBJECT-GROUP STATUS deprecated DESCRIPTION "A collection of objects providing port level control - and status information for GMRP operation." + and status information for GMRP operation. + --IPI Comments: Not Supported" ::= { pBridgeGroups 9 } pBridgeHCPortGroup OBJECT-GROUP @@ -986,7 +1010,8 @@ pBridgeHCPortGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing 64-bit statistics - counters for high-capacity bridge ports." + counters for high-capacity bridge ports. + --IPI Comments: Not Supported" ::= { pBridgeGroups 10 } pBridgePortOverflowGroup OBJECT-GROUP @@ -998,7 +1023,8 @@ pBridgePortOverflowGroup OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing overflow statistics - counters for high-capacity bridge ports." + counters for high-capacity bridge ports. + --IPI Comments: Not Supported" ::= { pBridgeGroups 11 } pBridgePortGmrpGroup2 OBJECT-GROUP @@ -1011,7 +1037,8 @@ pBridgePortGmrpGroup2 OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing port level control - and status information for GMRP operation." + and status information for GMRP operation. + --IPI Comments: Not Supported" ::= { pBridgeGroups 12 } @@ -1024,7 +1051,8 @@ pBridgeCompliance MODULE-COMPLIANCE STATUS deprecated DESCRIPTION "The compliance statement for device support of Priority - and Multicast Filtering extended bridging services." + and Multicast Filtering extended bridging services. + --IPI Comments: Not Supported" MODULE MANDATORY-GROUPS { pBridgeExtCapGroup } @@ -1122,7 +1150,8 @@ pBridgeCompliance2 MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for device support of Priority - and Multicast Filtering extended bridging services." + and Multicast Filtering extended bridging services. + --IPI Comments: Not Supported" MODULE MANDATORY-GROUPS { pBridgeExtCapGroup } diff --git a/mibs/Q-BRIDGE-MIB.txt b/mibs/Q-BRIDGE-MIB.txt index 1eac823d..16aad75a 100644 --- a/mibs/Q-BRIDGE-MIB.txt +++ b/mibs/Q-BRIDGE-MIB.txt @@ -195,7 +195,7 @@ dot1qGvrpStatus OBJECT-TYPE forwarded transparently. This object affects all GVRP Applicant and Registrar state machines. A transition from disabled(2) to enabled(1) will cause a reset of all - GVRP state machines on all ports." + GVRP state machines on all ports." --- IPI Comments: Not Supported DEFVAL { enabled } ::= { dot1qBase 5 } @@ -224,7 +224,7 @@ dot1qFdbEntry OBJECT-TYPE STATUS current DESCRIPTION "Information about a specific Filtering Database." - INDEX { dot1qFdbId } + INDEX { dot1qFdbId } ----IPI Comments: Not Supported ::= { dot1qFdbTable 1 } Dot1qFdbEntry ::= @@ -283,7 +283,7 @@ dot1qTpFdbEntry OBJECT-TYPE "Information about a specific unicast MAC address for which the device has some forwarding and/or filtering information." - INDEX { dot1qFdbId, dot1qTpFdbAddress } + INDEX { dot1qFdbId, dot1qTpFdbAddress } -- IPI Comments: Not Supported ::= { dot1qTpFdbTable 1 } Dot1qTpFdbEntry ::= @@ -387,7 +387,7 @@ dot1qTpGroupEntry OBJECT-TYPE a specific Group destination address, are allowed to be forwarded. The subset of these ports learnt dynamically is also provided." - INDEX { dot1qVlanIndex, dot1qTpGroupAddress } + INDEX { dot1qVlanIndex, dot1qTpGroupAddress } --- IPI Comments: Not Supported ::= { dot1qTpGroupTable 1 } Dot1qTpGroupEntry ::= @@ -418,7 +418,7 @@ dot1qTpGroupEgressPorts OBJECT-TYPE frames destined for this Group MAC address are currently being explicitly forwarded. This does not include ports for which this address is only implicitly forwarded, in - the dot1qForwardAllPorts list." + the dot1qForwardAllPorts list." --- IPI Comments: Not Supported ::= { dot1qTpGroupEntry 2 } dot1qTpGroupLearnt OBJECT-TYPE @@ -428,7 +428,7 @@ dot1qTpGroupLearnt OBJECT-TYPE DESCRIPTION "The subset of ports in dot1qTpGroupEgressPorts which were learnt by GMRP or some other dynamic mechanism, in - this Filtering database." + this Filtering database." --- IPI Comments: Not Supported ::= { dot1qTpGroupEntry 3 } -- ------------------------------------------------------------- @@ -500,7 +500,7 @@ dot1qForwardAllStaticPorts OBJECT-TYPE set of ports in dot1qForwardAllForbiddenPorts. The default value is a string of ones of appropriate length, to indicate standard non-EFS behaviour, i.e. forward - all multicasts to all ports." + all multicasts to all ports." -- IPI Comments: Not Supported ::= { dot1qForwardAllEntry 2 } dot1qForwardAllForbiddenPorts OBJECT-TYPE @@ -515,7 +515,7 @@ dot1qForwardAllForbiddenPorts OBJECT-TYPE reset. A port may not be added in this set if it is already a member of the set of ports in dot1qForwardAllStaticPorts. The default value is a - string of zeros of appropriate length." + string of zeros of appropriate length." --- IPI Comments: Not Supported ::= { dot1qForwardAllEntry 3 } dot1qForwardUnregisteredTable OBJECT-TYPE @@ -567,7 +567,7 @@ dot1qForwardUnregisteredPorts OBJECT-TYPE more specific forwarding information will be forwarded. This includes ports for which this need has been determined dynamically by GMRP, or configured statically - by management." + by management." IPI Comments: Not Supported ::= { dot1qForwardUnregisteredEntry 1 } dot1qForwardUnregisteredStaticPorts OBJECT-TYPE @@ -586,7 +586,7 @@ dot1qForwardUnregisteredStaticPorts OBJECT-TYPE of ports in dot1qForwardUnregisteredForbiddenPorts. The default value is a string of zeros of appropriate length, although this has no effect with the default - value of dot1qForwardAllStaticPorts." + value of dot1qForwardAllStaticPorts." --- IPI Comments: Not Supported ::= { dot1qForwardUnregisteredEntry 2 } dot1qForwardUnregisteredForbiddenPorts OBJECT-TYPE @@ -601,7 +601,7 @@ dot1qForwardUnregisteredForbiddenPorts OBJECT-TYPE the device is reset. A port may not be added in this set if it is already a member of the set of ports in dot1qForwardUnregisteredStaticPorts. The default value - is a string of zeros of appropriate length." + is a string of zeros of appropriate length." --- IPI Comments: Not Supported ::= { dot1qForwardUnregisteredEntry 3 } -- ------------------------------------------------------------- @@ -666,7 +666,7 @@ dot1qStaticUnicastAddress OBJECT-TYPE DESCRIPTION "The destination MAC address in a frame to which this entry's filtering information applies. This object must - take the value of a unicast address." + take the value of a unicast address." --- IPI Comments: Not Supported ::= { dot1qStaticUnicastEntry 1 } dot1qStaticUnicastReceivePort OBJECT-TYPE @@ -678,7 +678,7 @@ dot1qStaticUnicastReceivePort OBJECT-TYPE from which a frame must be received in order for this entry's filtering information to apply. A value of zero indicates that this entry applies on all ports of the - device for which there is no other applicable entry." + device for which there is no other applicable entry." --- IPI Comments: Not Supported ::= { dot1qStaticUnicastEntry 2 } dot1qStaticUnicastAllowedToGoTo OBJECT-TYPE @@ -696,7 +696,7 @@ dot1qStaticUnicastAllowedToGoTo OBJECT-TYPE the port the address has been seen on. This only applies to ports that are members of the VLAN, defined by dot1qVlanCurrentEgressPorts. The default value of - this object is a string of ones of appropriate length." + this object is a string of ones of appropriate length." --- IPI Comments: Not Supported REFERENCE "IEEE 802.1Q/D11 Table 8-5, ISO/IEC 15802-3 Table 7-5" ::= { dot1qStaticUnicastEntry 3 } @@ -726,7 +726,7 @@ dot1qStaticUnicastStatus OBJECT-TYPE reset of the bridge. deleteOnTimeout(5) - this entry is currently in - use and will remain so until it is aged out." + use and will remain so until it is aged out." --- IPI Comments: Not Supported DEFVAL { permanent } ::= { dot1qStaticUnicastEntry 4 } @@ -790,7 +790,7 @@ dot1qStaticMulticastAddress OBJECT-TYPE DESCRIPTION "The destination MAC address in a frame to which this entry's filtering information applies. This object must - take the value of a Multicast or Broadcast address." + take the value of a Multicast or Broadcast address." --- IPI Comments: Not Supported ::= { dot1qStaticMulticastEntry 1 } dot1qStaticMulticastReceivePort OBJECT-TYPE @@ -802,7 +802,7 @@ dot1qStaticMulticastReceivePort OBJECT-TYPE from which a frame must be received in order for this entry's filtering information to apply. A value of zero indicates that this entry applies on all ports of the - device for which there is no other applicable entry." + device for which there is no other applicable entry." --- IPI Comments: Not Supported ::= { dot1qStaticMulticastEntry 2 } dot1qStaticMulticastStaticEgressPorts OBJECT-TYPE @@ -817,7 +817,7 @@ dot1qStaticMulticastStaticEgressPorts OBJECT-TYPE be added in this set if it is already a member of the set of ports in dot1qStaticMulticastForbiddenEgressPorts. The default value of this object is a string of ones of - appropriate length." + appropriate length." --- IPI Comments: Not Supported ::= { dot1qStaticMulticastEntry 3 } dot1qStaticMulticastForbiddenEgressPorts OBJECT-TYPE @@ -832,7 +832,7 @@ dot1qStaticMulticastForbiddenEgressPorts OBJECT-TYPE not be added in this set if it is already a member of the set of ports in dot1qStaticMulticastStaticEgressPorts. The default value of this object is a string of zeros of - appropriate length." + appropriate length." --- IPI Comments: Not Supported ::= { dot1qStaticMulticastEntry 4 } dot1qStaticMulticastStatus OBJECT-TYPE @@ -854,13 +854,13 @@ dot1qStaticMulticastStatus OBJECT-TYPE removes the corresponding entry. permanent(3) - this entry is currently in use and will remain so after the next reset of - the bridge. + the bridge. deleteOnReset(4) - this entry is currently in use and will remain so until the next reset of the bridge. deleteOnTimeout(5) - this entry is currently in - use and will remain so until it is aged out." + use and will remain so until it is aged out." --- IPI Comments: Not Supported DEFVAL { permanent } ::= { dot1qStaticMulticastEntry 5 } @@ -925,7 +925,7 @@ dot1qVlanTimeMark OBJECT-TYPE STATUS current DESCRIPTION "A TimeFilter for this entry. See the TimeFilter - textual convention to see how this works." + textual convention to see how this works." --- IPI Comments: Not Supported ::= { dot1qVlanCurrentEntry 1 } dot1qVlanIndex OBJECT-TYPE @@ -933,8 +933,8 @@ dot1qVlanIndex OBJECT-TYPE MAX-ACCESS not-accessible STATUS current DESCRIPTION - "The VLAN-ID or other identifier refering to this VLAN." - ::= { dot1qVlanCurrentEntry 2 } + "The VLAN-ID or other identifier refering to this VLAN." --- IPI Comments: Not Supported + ::= { dot1qVlanCurrentEntry 2 } dot1qVlanFdbId OBJECT-TYPE SYNTAX Unsigned32 @@ -1249,7 +1249,7 @@ dot1qPortGvrpStatus OBJECT-TYPE ports. This object affects all GVRP Applicant and Registrar state machines on this port. A transition from disabled(2) to enabled(1) will cause a reset of all - GVRP state machines on this port." + GVRP state machines on this port." --- IPI Comments: Not Supported DEFVAL { enabled } ::= { dot1qPortVlanEntry 4 } @@ -1259,7 +1259,7 @@ dot1qPortGvrpFailedRegistrations OBJECT-TYPE STATUS current DESCRIPTION "The total number of failed GVRP registrations, for any - reason, on this port." + reason, on this port." --- IPI Comments: Not Supported ::= { dot1qPortVlanEntry 5 } dot1qPortGvrpLastPduOrigin OBJECT-TYPE @@ -1268,7 +1268,7 @@ dot1qPortGvrpLastPduOrigin OBJECT-TYPE STATUS current DESCRIPTION "The Source MAC Address of the last GVRP message - received on this port." + received on this port." --- IPI Comments: Not Supported ::= { dot1qPortVlanEntry 6 } -- ------------------------------------------------------------- @@ -1544,7 +1544,7 @@ dot1qConstraintType OBJECT-TYPE dot1qConstraintSet. shared(2) - the VLAN, dot1qConstraintVlan, shares the same filtering database as all other VLANs - in the same set, defined by dot1qConstraintSet." + in the same set, defined by dot1qConstraintSet." --- IPI Comments: Not Supported ::= { dot1qLearningConstraintsEntry 3 } dot1qConstraintStatus OBJECT-TYPE @@ -1562,7 +1562,7 @@ dot1qConstraintSetDefault OBJECT-TYPE DESCRIPTION "The identity of the constraint set to which a VLAN belongs, if there is not an explicit entry for that VLAN - in dot1qLearningConstraintsTable." + in dot1qLearningConstraintsTable." --- IPI Comments: Not Supported ::= { dot1qVlan 9 } dot1qConstraintTypeDefault OBJECT-TYPE diff --git a/mibs/RSTP-MIB.txt b/mibs/RSTP-MIB.txt index 8b00576c..715a17d5 100644 --- a/mibs/RSTP-MIB.txt +++ b/mibs/RSTP-MIB.txt @@ -288,7 +288,7 @@ rstpBridgeGroup OBJECT-GROUP } STATUS current DESCRIPTION - "Rapid Spanning Tree information for the bridge." + "Rapid Spanning Tree information for the bridge.--IPI Comments: Not Supported" ::= { rstpGroups 1 } rstpPortGroup OBJECT-GROUP @@ -302,7 +302,7 @@ rstpPortGroup OBJECT-GROUP } STATUS current DESCRIPTION - "Rapid Spanning Tree information for individual ports." + "Rapid Spanning Tree information for individual ports.--IPI Comments: Not Supported" ::= { rstpGroups 2 } -- ------------------------------------------------------------- @@ -316,7 +316,7 @@ rstpCompliance MODULE-COMPLIANCE DESCRIPTION "The compliance statement for device support of Rapid - Spanning Tree Protocol (RSTP) bridging services." + Spanning Tree Protocol (RSTP) bridging services.--IPI Comments: Not Supported" MODULE MANDATORY-GROUPS { rstpBridgeGroup, From 11cf89ee9bc3b70f1bf61872a98ec21dd21cbb19 Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Mon, 7 Nov 2016 16:08:23 +0530 Subject: [PATCH 09/12] Updated file for fixes till OcNOS-1.2.1.119 build --- yang-files/ZebOS.yang | 4 +- yang-files/bgp.yang | 1736 ++++++++++++++++---------------- yang-files/bridge.yang | 385 ++++--- yang-files/cml_data_types.yang | 4 +- yang-files/interface.yang | 182 ++-- yang-files/lacp.yang | 26 +- yang-files/lag.yang | 17 +- yang-files/lldpv2.yang | 78 +- yang-files/mstp.yang | 128 ++- yang-files/oambfd.yang | 79 +- yang-files/ospf.yang | 1048 ++++++++++--------- yang-files/ospf6.yang | 615 ++++++----- yang-files/rib.yang | 44 +- yang-files/vlan.yang | 37 +- yang-files/vlaninterface.yang | 62 +- yang-files/vr.yang | 8 +- yang-files/vrf.yang | 18 +- 17 files changed, 2225 insertions(+), 2246 deletions(-) diff --git a/yang-files/ZebOS.yang b/yang-files/ZebOS.yang index 79ff8cf6..1b7c1fa8 100644 --- a/yang-files/ZebOS.yang +++ b/yang-files/ZebOS.yang @@ -48,8 +48,8 @@ module ZebOS { "ZebOS Managed Object"; - revision "2015-10-08" { - description "Revisied on 2015-10-08."; } + revision "2016-09-15" { + description "Revisied on 2016-09-15."; } uses oamMpls-grouping; diff --git a/yang-files/bgp.yang b/yang-files/bgp.yang index d30699eb..5faa5ef7 100644 --- a/yang-files/bgp.yang +++ b/yang-files/bgp.yang @@ -41,14 +41,13 @@ submodule bgp { leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_UINT32_T; + config true; } // END of vrId definition. leaf bgpAs { - mandatory true; + type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -56,37 +55,37 @@ submodule bgp { } // END of bgpAs definition. leaf bgpTableVersion { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpTableVersion definition. leaf ntwkPrefixCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ntwkPrefixCount definition. leaf routerIpAddr { - mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of routerIpAddr definition. leaf clusterId { - mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of clusterId definition. leaf routerRunIpAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routerRunIpAddr definition. leaf clusterIdDigit { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -95,7 +94,7 @@ submodule bgp { } // END of clusterIdDigit definition. leaf confedId { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -103,7 +102,7 @@ submodule bgp { } // END of confedId definition. leaf peerConfedId { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -111,7 +110,7 @@ submodule bgp { } // END of peerConfedId definition. leaf keepAlive { - mandatory false; + type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -120,7 +119,7 @@ submodule bgp { } // END of keepAlive definition. leaf holdTime { - mandatory false; + type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -130,7 +129,7 @@ submodule bgp { } // END of holdTime definition. leaf localPref { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -139,19 +138,19 @@ submodule bgp { } // END of localPref definition. leaf setGshutCapable { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of setGshutCapable definition. leaf setGshut { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of setGshut definition. leaf gshutLocalPref { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -160,19 +159,19 @@ submodule bgp { } // END of gshutLocalPref definition. leaf setInboundRouteFilter { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of setInboundRouteFilter definition. leaf setLogNbrChanges { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of setLogNbrChanges definition. leaf scanInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..60"; } @@ -181,7 +180,7 @@ submodule bgp { } // END of scanInterval definition. leaf distance { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -189,28 +188,28 @@ submodule bgp { } // END of distance definition. leaf distanceSrcIp { - mandatory false; + type cml_data_types:CML_IPV4_PREFIX_T; config true; description "administrative distance for ip source prefix"; } // END of distanceSrcIp definition. leaf distanceACLName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "administrative distance with access list name"; } // END of distanceACLName definition. leaf setMplsResolution { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "mpls lsp resolution"; } // END of setMplsResolution definition. leaf restartTime { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -219,7 +218,7 @@ submodule bgp { } // END of restartTime definition. leaf stalepathTime { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -228,7 +227,7 @@ submodule bgp { } // END of stalepathTime definition. leaf deferTime { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -237,92 +236,92 @@ submodule bgp { } // END of deferTime definition. leaf bestpathDontCompareOriginator { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of bestpathDontCompareOriginator definition. leaf bestpathTieBreak { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of bestpathTieBreak definition. leaf ipv4Unicast { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ipv4Unicast definition. leaf deterministicMed { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of deterministicMed definition. leaf compareMed { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of compareMed definition. leaf bestpathAspath { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp bestpath as-path ignore"; } // END of bestpathAspath definition. leaf bestpathCompareConfed { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of bestpathCompareConfed definition. leaf bestpathCompareRouterId { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of bestpathCompareRouterId definition. leaf enforceFirst { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of enforceFirst definition. leaf externalFailover { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of externalFailover definition. leaf bgpShowTypeStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpShowTypeStr definition. leaf autoSummary { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of autoSummary definition. leaf setSyncFlag { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of setSyncFlag definition. leaf setNwSyncFlag { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of setNwSyncFlag definition. leaf localAsCount { - mandatory false; + type cml_data_types:CML_UINT8_T { range "2..64"; } @@ -331,25 +330,25 @@ submodule bgp { } // END of localAsCount definition. leaf grstSet { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of grstSet definition. leaf setClientReflect { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of setClientReflect definition. leaf setDampeningFlag { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of setDampeningFlag definition. leaf halfLife { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..45"; } @@ -359,7 +358,7 @@ submodule bgp { } // END of halfLife definition. leaf reusePenalty { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..20000"; } @@ -367,7 +366,7 @@ submodule bgp { } // END of reusePenalty definition. leaf suppressPenalty { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..20000"; } @@ -375,7 +374,7 @@ submodule bgp { } // END of suppressPenalty definition. leaf maxSuppress { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..255"; } @@ -384,7 +383,7 @@ submodule bgp { } // END of maxSuppress definition. leaf unreachHalfLife { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..45"; } @@ -393,65 +392,65 @@ submodule bgp { } // END of unreachHalfLife definition. leaf dampeningRmapName { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; } // END of dampeningRmapName definition. leaf rfdMaxPenaltyCeil { - mandatory false; + type cml_data_types:CML_INT32_T; default "0"; config false; } // END of rfdMaxPenaltyCeil definition. leaf rfdMinPenaltyFloor { - mandatory false; + type cml_data_types:CML_INT32_T; default "0"; config false; } // END of rfdMinPenaltyFloor definition. leaf dampeningStr { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of dampeningStr definition. leaf rfdCbStr { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of rfdCbStr definition. leaf medType { - mandatory false; + type cml_data_types:CML_BGP_MED_TYPE_T; config true; } // END of medType definition. leaf medConfedMissingAsWorst { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp bestpath med confed missing-as-worst"; } // END of medConfedMissingAsWorst definition. leaf medMissingAsWorstConfed { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of medMissingAsWorstConfed definition. leaf gracefulReset { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of gracefulReset definition. leaf distanceEbgp { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -460,7 +459,7 @@ submodule bgp { } // END of distanceEbgp definition. leaf distanceIbgp { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -469,7 +468,7 @@ submodule bgp { } // END of distanceIbgp definition. leaf distanceLocal { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -479,20 +478,20 @@ submodule bgp { } // END of distanceLocal definition. leaf multipathRelax { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of multipathRelax definition. leaf tableMap { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "bgp table-map"; } // END of tableMap definition. leaf tableMapFilter { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp table-map filter"; @@ -510,7 +509,7 @@ submodule bgp { leaf bgpType { - mandatory true; + type cml_data_types:CML_BGP_MAXPATH_T; config true; } // END of bgpType definition. @@ -527,7 +526,7 @@ submodule bgp { leaf multipathsNum { - mandatory true; + type cml_data_types:CML_INT32_T { range "2..64"; } @@ -549,26 +548,26 @@ submodule bgp { leaf localAddr { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of localAddr definition. leaf localAddrMask { - mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; config true; description "network address with mask"; } // END of localAddrMask definition. leaf networkRmapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of networkRmapName definition. leaf backdoor { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; @@ -588,169 +587,169 @@ submodule bgp { leaf networkAddr { - mandatory true; + type cml_data_types:CML_STRING_T; config false; } // END of networkAddr definition. leaf bgpLongerPrefixCmd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpLongerPrefixCmd definition. leaf rfdFlapCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of rfdFlapCount definition. leaf dampInfoTimes { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of dampInfoTimes definition. leaf showBgpNtwkCmd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of showBgpNtwkCmd definition. leaf peerNtwkWeight { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerNtwkWeight definition. leaf flapTimeReuseList { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of flapTimeReuseList definition. leaf flapRecordDuration { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of flapRecordDuration definition. leaf bgpDampPathCmd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpDampPathCmd definition. leaf bgpDampFlapCmd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpDampFlapCmd definition. leaf bgpIncosistentAsCmd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpIncosistentAsCmd definition. leaf dampTimeToReuse { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of dampTimeToReuse definition. leaf ipv4Cmd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ipv4Cmd definition. leaf checkCidr { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of checkCidr definition. leaf bgpCommunityCmd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpCommunityCmd definition. leaf bgpInfoFlag { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoFlag definition. leaf bgpAttrMpNexthopGlobalIn { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopGlobalIn definition. leaf bgpAttrNextHop { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrNextHop definition. leaf bgpAttrMpNexthopGlobal { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopGlobal definition. leaf bgpAttrNextHopLen { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrNextHopLen definition. leaf bgpAttrMpNexthopLocal { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopLocal definition. leaf bgpUpTime { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpUpTime definition. leaf medFlagType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of medFlagType definition. leaf bgpMedVal { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpMedVal definition. leaf bgpAsPathStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPathStr definition. leaf bgpAsPath4BStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPath4BStr definition. leaf bgpAsPathOrigin { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPathOrigin definition. leaf bgpAsPath4BOrigin { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPath4BOrigin definition. @@ -768,67 +767,67 @@ submodule bgp { leaf networkAddrRoute { - mandatory true; + type cml_data_types:CML_STRING_T; config false; } // END of networkAddrRoute definition. leaf ntwkPathCountRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ntwkPathCountRoute definition. leaf ntwkPrefixBestPathCountRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ntwkPrefixBestPathCountRoute definition. leaf noAdvertiseRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of noAdvertiseRoute definition. leaf noExportRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of noExportRoute definition. leaf localAsRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of localAsRoute definition. leaf suppressRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of suppressRoute definition. leaf advPeerGroupRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advPeerGroupRoute definition. leaf advPeerAddrRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of advPeerAddrRoute definition. leaf advNonPeerGroupRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advNonPeerGroupRoute definition. leaf advPeerGroupNameRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of advPeerGroupNameRoute definition. @@ -841,241 +840,241 @@ submodule bgp { "routeShowVtyOut"; leaf ibgpMetricRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ibgpMetricRoute definition. leaf routeBgpAsPathRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeBgpAsPathRoute definition. leaf aggregateAsRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of aggregateAsRoute definition. leaf aggregatorAddrRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of aggregatorAddrRoute definition. leaf reflectorClientRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of reflectorClientRoute definition. leaf routeDampeningFlagRoute { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of routeDampeningFlagRoute definition. leaf historyRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of historyRoute definition. leaf routeAttrMpNexthopGlobalInRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopGlobalInRoute definition. leaf routeAttrNextHopRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeAttrNextHopRoute definition. leaf routeAttrMpNexthopGlobalRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopGlobalRoute definition. leaf routeAttrMpNexthopLocalRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopLocalRoute definition. leaf routeAttrMpNexthopLocal1Route { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopLocal1Route definition. leaf nhopValidRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of nhopValidRoute definition. leaf routePeerAddrRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routePeerAddrRoute definition. leaf originatorIdRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of originatorIdRoute definition. leaf originatorId1Route { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of originatorId1Route definition. leaf networkRemoteAddrRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of networkRemoteAddrRoute definition. leaf ntwkBgpOriginRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ntwkBgpOriginRoute definition. leaf routeMedFlagTypeRoute { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of routeMedFlagTypeRoute definition. leaf routeMedValRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeMedValRoute definition. leaf routeLocalPrefRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeLocalPrefRoute definition. leaf routeWeightRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeWeightRoute definition. leaf briLabelRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of briLabelRoute definition. leaf routeValidStateRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeValidStateRoute definition. leaf bgpInfoStaleRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoStaleRoute definition. leaf routePeerLocalAsRoute { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of routePeerLocalAsRoute definition. leaf bgpConfedPeerRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpConfedPeerRoute definition. leaf bgpInfoTypeRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoTypeRoute definition. leaf ecmpMultiCandidateRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ecmpMultiCandidateRoute definition. leaf multiInstalledRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiInstalledRoute definition. leaf routeSyncFlagRoute { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of routeSyncFlagRoute definition. leaf atomicAggregateRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of atomicAggregateRoute definition. leaf bgpInfoSelectedRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoSelectedRoute definition. leaf routeCommNameRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeCommNameRoute definition. leaf clusterListRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of clusterListRoute definition. leaf routeGetPenaltyRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeGetPenaltyRoute definition. leaf routRecordTimeRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routRecordTimeRoute definition. leaf routeGetFlapCountRoute { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeGetFlapCountRoute definition. leaf routeGetReuseTimeRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeGetReuseTimeRoute definition. leaf lastUpdateRoute { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lastUpdateRoute definition. @@ -1094,7 +1093,7 @@ submodule bgp { leaf aggregateAddr { - mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; config true; description "aggregate prefix"; @@ -1126,20 +1125,20 @@ submodule bgp { leaf redistType { - mandatory true; + type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; config true; } // END of redistType definition. leaf redistRmapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "redistribute route map reference"; } // END of redistRmapName definition. leaf redistOspfNo { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -1148,7 +1147,7 @@ submodule bgp { } // END of redistOspfNo definition. leaf redistOspfRmap { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "redistribute with ospf proc Id and route map reference"; @@ -1167,13 +1166,13 @@ submodule bgp { leaf peerGroupName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of peerGroupName definition. leaf peerGroupStr { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor peer-group"; @@ -1192,7 +1191,7 @@ submodule bgp { leaf afi { - mandatory true; + type cml_data_types:CML_AFI_TYPE_T; config true; } // END of afi definition. @@ -1209,16 +1208,16 @@ submodule bgp { leaf safi { - mandatory true; + type cml_data_types:CML_SAFI_TYPE_T; config true; } // END of safi definition. leaf vrfName { - mandatory false; - type leafref { - path "/vr/vrf/vrfName"; - } + + type cml_data_types:CML_STRING_T; + default "default"; + config true; } // END of vrfName definition. } // End of bgpSubAddressFamily-list @@ -1235,7 +1234,7 @@ submodule bgp { leaf peerAddr { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "neighbor"; @@ -1251,28 +1250,28 @@ submodule bgp { } // END of peerAs definition. leaf setGracefulShut { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor g-shut"; } // END of setGracefulShut definition. leaf bgpPeerBfd { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "fall-over detection"; } // END of bgpPeerBfd definition. leaf peerBfdMh { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bfd multihop"; } // END of peerBfdMh definition. leaf gshutTimer { - mandatory false; + type cml_data_types:CML_UINT32_T { range "10..65535"; } @@ -1281,7 +1280,7 @@ submodule bgp { } // END of gshutTimer definition. leaf peerRestartTime { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -1290,7 +1289,7 @@ submodule bgp { } // END of peerRestartTime definition. leaf peerLocalAs { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -1299,1112 +1298,1112 @@ submodule bgp { } // END of peerLocalAs definition. leaf neighborAttrUnchangedAsPath { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged as-path"; } // END of neighborAttrUnchangedAsPath definition. leaf neighborAttrUnchangedNexthop { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged next-hop"; } // END of neighborAttrUnchangedNexthop definition. leaf neighborAttrUnchangedMed { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged med"; } // END of neighborAttrUnchangedMed definition. leaf neighborCapabilityGrst { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor capability graceful-restart"; } // END of neighborCapabilityGrst definition. leaf maxPathIbgp { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of maxPathIbgp definition. leaf asLocalCount { - mandatory false; + type cml_data_types:CML_INT32_T; default "1"; config false; } // END of asLocalCount definition. leaf cfgMaxPathEbgp { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of cfgMaxPathEbgp definition. leaf maxPathEbgp { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of maxPathEbgp definition. leaf cfgMaxPathIbgp { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of cfgMaxPathIbgp definition. leaf bgpRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpRouterId definition. leaf bgpCommunityCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpCommunityCount definition. leaf checkAfc { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of checkAfc definition. leaf peerConfedIdCheck { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerConfedIdCheck definition. leaf peerAdvExtAsnCap { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerAdvExtAsnCap definition. leaf peerAndExtAsnCap { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerAndExtAsnCap definition. leaf peerRecvExtAsnCap { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerRecvExtAsnCap definition. leaf peerVrfName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerVrfName definition. leaf addFamilystring { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilystring definition. leaf safiUnicastAdv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastAdv definition. leaf safiUnicastAnd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastAnd definition. leaf safiUnicastRecv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastRecv definition. leaf addFamilyMultiString { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyMultiString definition. leaf safiMulticastAdv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastAdv definition. leaf safiMulticastAnd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastAnd definition. leaf safiMulticastRecv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastRecv definition. leaf addFamilyVPN4String { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyVPN4String definition. leaf safiVPNv4Adv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4Adv definition. leaf safiVPNv4And { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4And definition. leaf safiVPNv4Recv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4Recv definition. leaf addFamilyIPV6String { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyIPV6String definition. leaf safiIPV6UnicastAdv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastAdv definition. leaf safiIPV6UnicastAnd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastAnd definition. leaf safiIPV6UnicastRecv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastRecv definition. leaf addFamilyMultiIPV6Str { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyMultiIPV6Str definition. leaf safiIPV6MulticastAdv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastAdv definition. leaf safiIPV6MulticastAnd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastAnd definition. leaf safiIPV6MulticastRecv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastRecv definition. leaf addFamilyVPNv6Str { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyVPNv6Str definition. leaf safiVPNv6Adv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6Adv definition. leaf safiVPNV6And { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNV6And definition. leaf safiVPNv6Recv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6Recv definition. leaf safiVPNv6Unicast { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6Unicast definition. leaf safiVPNv4Unicast { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4Unicast definition. leaf addFamilyLabeledStr { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyLabeledStr definition. leaf safiLabeledAdv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledAdv definition. leaf safiLabeledAnd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledAnd definition. leaf safiLabeledRecv { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledRecv definition. leaf hashCommListName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of hashCommListName definition. leaf attrInfoCmd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of attrInfoCmd definition. leaf hashWeight { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of hashWeight definition. leaf hashMedVal { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of hashMedVal definition. leaf hashLocalPref { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of hashLocalPref definition. leaf hashAsPathOrigin { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of hashAsPathOrigin definition. leaf attrAspathLength { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of attrAspathLength definition. leaf attrAspathStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of attrAspathStr definition. leaf attrAspath4BLength { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of attrAspath4BLength definition. leaf attrAspath4BStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of attrAspath4BStr definition. leaf hashNtwkRefcnt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of hashNtwkRefcnt definition. leaf peerKeepAliveTime { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerKeepAliveTime definition. leaf peerKeepAliveConf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerKeepAliveConf definition. leaf peerDefKeepAlive { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerDefKeepAlive definition. leaf peerDefKeepAliveConf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerDefKeepAliveConf definition. leaf peerHoldTimeConf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerHoldTimeConf definition. leaf peerDefHoldTime { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerDefHoldTime definition. leaf peerDefHoldTimeConf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerDefHoldTimeConf definition. leaf keepAliveIn { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of keepAliveIn definition. leaf keepAliveOut { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of keepAliveOut definition. leaf openMsgIn { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of openMsgIn definition. leaf openMsgOut { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of openMsgOut definition. leaf bgpAsPathCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpAsPathCount definition. leaf bgpAsPath4BCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpAsPath4BCount definition. leaf updateMsgIn { - mandatory false; + type cml_data_types:CML_INT32_T; default "0"; config false; } // END of updateMsgIn definition. leaf updateMsgOut { - mandatory false; + type cml_data_types:CML_INT32_T; default "0"; config false; } // END of updateMsgOut definition. leaf nextHopGlobal { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of nextHopGlobal definition. leaf nextHopLocal { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of nextHopLocal definition. leaf peerRemotePort { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerRemotePort definition. leaf peerRemoteAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerRemoteAddr definition. leaf peerLocalHost { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerLocalHost definition. leaf nextHop { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of nextHop definition. leaf peerLocalPort { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerLocalPort definition. leaf routeValidState { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeValidState definition. leaf atomicAggregate { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of atomicAggregate definition. leaf bgpInfoState { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoState definition. leaf bgpInfoSelected { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoSelected definition. leaf briLabel { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of briLabel definition. leaf originatorId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of originatorId definition. leaf bgpOrigin { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpOrigin definition. leaf nonPeer { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of nonPeer definition. leaf peerBfd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerBfd definition. leaf peerRemovePvtAs { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor remove-private-AS"; } // END of peerRemovePvtAs definition. leaf sendCommunity { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor send-community"; } // END of sendCommunity definition. leaf sendCommunityType { - mandatory false; + type cml_data_types:CML_BGP_SEND_COMMU_TYPE_T; config true; description "neighbor send-community attribute"; } // END of sendCommunityType definition. leaf neighborRouteServerClient { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor route-server-client"; } // END of neighborRouteServerClient definition. leaf peerRouteReflector { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor route-reflector-client"; } // END of peerRouteReflector definition. leaf prefixListName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of prefixListName definition. leaf prefixListCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of prefixListCount definition. leaf InboundPathPolicyConf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of InboundPathPolicyConf definition. leaf OutboundPathPolicyConf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of OutboundPathPolicyConf definition. leaf filterInPlistName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterInPlistName definition. leaf filterOutPlistName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterOutPlistName definition. leaf filterInDlistName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterInDlistName definition. leaf filterOutDlistName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterOutDlistName definition. leaf filterInAslistName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterInAslistName definition. leaf filterOutAslistName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterOutAslistName definition. leaf filterInMaplistName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterInMaplistName definition. leaf filterOutMaplistName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterOutMaplistName definition. leaf filterUsmapName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterUsmapName definition. leaf peerAsPathUnchanged { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerAsPathUnchanged definition. leaf defaultSent { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of defaultSent definition. leaf defaultNotSent { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of defaultNotSent definition. leaf orfPrefixStr { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixStr definition. leaf orfPrefixSend { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixSend definition. leaf orfPrefixCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixCount definition. leaf orfWaitRefresh { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of orfWaitRefresh definition. leaf reflectorClient { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of reflectorClient definition. leaf reserverClient { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of reserverClient definition. leaf softReconfig { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of softReconfig definition. leaf removePrivateAs { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of removePrivateAs definition. leaf advSmcap { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advSmcap definition. leaf rcvSmcap { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of rcvSmcap definition. leaf advRmcap { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advRmcap definition. leaf rcvRmcap { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of rcvRmcap definition. leaf afDependentCap { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of afDependentCap definition. leaf peerIndex { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerIndex definition. leaf peerOffset { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerOffset definition. leaf peerMask { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerMask definition. leaf bgpInfoType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoType definition. leaf bgpInfoSubType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoSubType definition. leaf ecmpMultiCandidate { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ecmpMultiCandidate definition. leaf multiInstalled { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiInstalled definition. leaf flapCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of flapCount definition. leaf peerGrstRestartOn { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerGrstRestartOn definition. leaf peerPrefixCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixCount definition. leaf peerSendPrefixCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerSendPrefixCount definition. leaf peerFlagShutDown { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerFlagShutDown definition. leaf peerStatusFlag { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerStatusFlag definition. leaf peerCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerCount definition. leaf brdAs { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of brdAs definition. leaf brdAsNum { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of brdAsNum definition. leaf brdAs4 { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of brdAs4 definition. leaf brdAsNum4 { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of brdAsNum4 definition. leaf brdIp { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of brdIp definition. leaf brdIpNum { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of brdIpNum definition. leaf peerNotifyInfo { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerNotifyInfo definition. leaf peerNotifyDirect { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerNotifyDirect definition. leaf peerNotifyLastReset { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerNotifyLastReset definition. leaf notifyCodeStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of notifyCodeStr definition. leaf notifySubCodeStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of notifySubCodeStr definition. leaf bgpConnection { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpConnection definition. leaf nextConnectTimer { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of nextConnectTimer definition. leaf peerStatusGrstRestartOn { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerStatusGrstRestartOn definition. leaf peerStatusRestartOn { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerStatusRestartOn definition. leaf conEstCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of conEstCount definition. leaf conDroppedCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of conDroppedCount definition. leaf peerPrefixOverflow { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixOverflow definition. leaf updateIf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of updateIf definition. leaf updateSource { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of updateSource definition. leaf bpfEstUpTime { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bpfEstUpTime definition. leaf lastReadTime { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lastReadTime definition. leaf bpfState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bpfState definition. leaf bgpLinkType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpLinkType definition. leaf hopAwayCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of hopAwayCount definition. leaf peerState { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerState definition. leaf peerTableVersion { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerTableVersion definition. leaf peerLocalAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerLocalAddr definition. leaf bgpConfedPeer { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpConfedPeer definition. leaf peerRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerRouterId definition. leaf recvPacketCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of recvPacketCount definition. leaf notificationIn { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of notificationIn definition. leaf notificationOut { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of notificationOut definition. leaf pktInQue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of pktInQue definition. leaf sentPacketCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of sentPacketCount definition. leaf refreshRecvPacketCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of refreshRecvPacketCount definition. leaf refreshSentPacketCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of refreshSentPacketCount definition. leaf advertisementInterval { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advertisementInterval definition. leaf peerInTotalMsg { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerInTotalMsg definition. leaf peerOutTotalMsg { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerOutTotalMsg definition. leaf peerLastError { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerLastError definition. leaf estTxns { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of estTxns definition. leaf estTime { - mandatory false; + type cml_data_types:CML_INT32_T; default "0"; config false; } // END of estTime definition. leaf inUpdateElaps { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of inUpdateElaps definition. leaf peerAdminFlag { - mandatory false; + type cml_data_types:CML_INT32_T; config true; } // END of peerAdminFlag definition. leaf connRetryInterval { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -2414,67 +2413,67 @@ submodule bgp { } // END of connRetryInterval definition. leaf peerHoldTimeRun { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerHoldTimeRun definition. leaf peerKeepAliveRun { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerKeepAliveRun definition. leaf neighborCap { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of neighborCap definition. leaf peerDesc { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "neighbor description"; } // END of peerDesc definition. leaf transparentAs { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor transparent-as"; } // END of transparentAs definition. leaf transparentNexthop { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor transparent-nexthop"; } // END of transparentNexthop definition. leaf sendLabel { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor send-label"; } // END of sendLabel definition. leaf sendLabelExplicitNull { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor send-label explicit-null"; } // END of sendLabelExplicitNull definition. leaf timeToLive { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor ebgp-multihop"; } // END of timeToLive definition. leaf maxHopCount { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -2484,7 +2483,7 @@ submodule bgp { } // END of maxHopCount definition. leaf peerConnectInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -2494,7 +2493,7 @@ submodule bgp { } // END of peerConnectInterval definition. leaf peerAsorigInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -2504,7 +2503,7 @@ submodule bgp { } // END of peerAsorigInterval definition. leaf peerRaInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -2514,7 +2513,7 @@ submodule bgp { } // END of peerRaInterval definition. leaf password { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -2522,76 +2521,76 @@ submodule bgp { } // END of password definition. leaf dynamicCapability { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor capability dynamic"; } // END of dynamicCapability definition. leaf advertisedCapability { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advertisedCapability definition. leaf andCapability { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of andCapability definition. leaf receivedCapability { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of receivedCapability definition. leaf capabilityRouteRefresh { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor capability route-refresh"; } // END of capabilityRouteRefresh definition. leaf advCapabilityRefresh { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advCapabilityRefresh definition. leaf andCapabilityRefresh { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of andCapabilityRefresh definition. leaf recvCapabilityRefresh { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of recvCapabilityRefresh definition. leaf oldCapabilityRefresh { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of oldCapabilityRefresh definition. leaf newCapabilityRefresh { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of newCapabilityRefresh definition. leaf collideEstablished { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor collide-established"; } // END of collideEstablished definition. leaf sourceId { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -2599,62 +2598,62 @@ submodule bgp { } // END of sourceId definition. leaf enforceMultihop { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor enforce-multihop"; } // END of enforceMultihop definition. leaf neighborOverrideCapability { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor override-capability"; } // END of neighborOverrideCapability definition. leaf neighborStrictCapability { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor strict-capability-match"; } // END of neighborStrictCapability definition. leaf disallowHoldtimer { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor disallow-infinite-holdtime"; } // END of disallowHoldtimer definition. leaf dontCapabilityNegotiate { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor dont-capability-negotiate"; } // END of dontCapabilityNegotiate definition. leaf transportConnectionPassive { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor passive"; } // END of transportConnectionPassive definition. leaf peerShutdown { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor shutdown"; } // END of peerShutdown definition. leaf noIfBinding { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of noIfBinding definition. leaf bgpPort { - mandatory false; + type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -2664,7 +2663,7 @@ submodule bgp { } // END of bgpPort definition. leaf bgpVersion { - mandatory false; + type cml_data_types:CML_UINT8_T; default "4"; config true; @@ -2672,21 +2671,21 @@ submodule bgp { } // END of bgpVersion definition. leaf peerIfName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "neighbor interface"; } // END of peerIfName definition. leaf softReconfigInbound { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor soft-reconfiguration inbound"; } // END of softReconfigInbound definition. leaf weight { - mandatory false; + type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -2696,7 +2695,7 @@ submodule bgp { } // END of weight definition. leaf maxPrefixes { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -2705,14 +2704,14 @@ submodule bgp { } // END of maxPrefixes definition. leaf maxPrefixeWarning { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor maximum-prefix warning"; } // END of maxPrefixeWarning definition. leaf threshold { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..100"; } @@ -2721,14 +2720,14 @@ submodule bgp { } // END of threshold definition. leaf warning { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor maximum-prefix threshold warning"; } // END of warning definition. leaf allowAsNum { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..10"; } @@ -2738,107 +2737,107 @@ submodule bgp { } // END of allowAsNum definition. leaf aclInfo { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of aclInfo definition. leaf distributeListDirection { - mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor distribute-list"; } // END of distributeListDirection definition. leaf prefixListAclInfo { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of prefixListAclInfo definition. leaf prefixListDirection { - mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor prefix-list"; } // END of prefixListDirection definition. leaf asListAclInfo { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of asListAclInfo definition. leaf asListDirection { - mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor filter-list"; } // END of asListDirection definition. leaf peerGroupTag { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "to add a neighbor to an existing peer-group"; } // END of peerGroupTag definition. leaf peerActivate { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor activate"; } // END of peerActivate definition. leaf unSuppressAclInfo { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "neighbor unsuppress-map"; } // END of unSuppressAclInfo definition. leaf peerRmapOriName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "neighbor default-originate router-map"; } // END of peerRmapOriName definition. leaf defaultPeerRmapName { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor default-originate"; } // END of defaultPeerRmapName definition. leaf orfPrefixOpt { - mandatory false; + type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; config true; } // END of orfPrefixOpt definition. leaf setNcpFlag { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor orf prefix-list"; } // END of setNcpFlag definition. leaf peerRmapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of peerRmapName definition. leaf peerRmapDirection { - mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor route-map"; } // END of peerRmapDirection definition. leaf peerKeepAlive { - mandatory false; + type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -2847,7 +2846,7 @@ submodule bgp { } // END of peerKeepAlive definition. leaf peerHoldTime { - mandatory false; + type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -2857,7 +2856,7 @@ submodule bgp { } // END of peerHoldTime definition. leaf nextHopSelf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor next-hop-self"; @@ -2875,31 +2874,31 @@ submodule bgp { leaf prefixEntrySeq { - mandatory true; + type cml_data_types:CML_INT32_T; config false; } // END of prefixEntrySeq definition. leaf prefixEntryType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of prefixEntryType definition. leaf prefixEntryGe { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of prefixEntryGe definition. leaf prefixEntryLe { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of prefixEntryLe definition. leaf peerPrefixLen { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixLen definition. @@ -2917,115 +2916,115 @@ submodule bgp { leaf peerNetworkAddr { - mandatory true; + type cml_data_types:CML_STRING_T; config false; } // END of peerNetworkAddr definition. leaf adjRouteOutCmd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of adjRouteOutCmd definition. leaf adjRouteInCmd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of adjRouteInCmd definition. leaf peerFlapCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerFlapCount definition. leaf peerBgpTableVersion { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpTableVersion definition. leaf peerBgpInfoFlag { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpInfoFlag definition. leaf peerBgpAttrMpNexthopGlobalIn { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopGlobalIn definition. leaf peerBgpAttrNextHop { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrNextHop definition. leaf peerBgpAttrNextHopLen { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrNextHopLen definition. leaf peerBgpAttrMpNexthopGlobal { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopGlobal definition. leaf peerBgpAttrMpNexthopLocal { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopLocal definition. leaf peerBgpUpTime { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpUpTime definition. leaf peerMedFlagType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerMedFlagType definition. leaf peerBgpMedVal { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerBgpMedVal definition. leaf peerBgpAsPathStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPathStr definition. leaf peerBgpAsPath4BStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPath4BStr definition. leaf peerBgpAsPathOrigin { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPathOrigin definition. leaf peerBgpAsPath4BOrigin { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPath4BOrigin definition. leaf peerNetwkWeight { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerNetwkWeight definition. @@ -3043,7 +3042,7 @@ submodule bgp { leaf afi { - mandatory true; + type cml_data_types:CML_AFI_TYPE_T; config true; } // END of afi definition. @@ -3060,945 +3059,945 @@ submodule bgp { leaf safi { - mandatory true; + type cml_data_types:CML_SAFI_TYPE_T; config true; } // END of safi definition. leaf nextHopSelfAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor next-hop-self for address family"; } // END of nextHopSelfAf definition. leaf peerHoldTimeRunAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerHoldTimeRunAf definition. leaf peerKeepAliveRunAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerKeepAliveRunAf definition. leaf noIfBindingAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of noIfBindingAf definition. leaf peerConfedIdCheckAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerConfedIdCheckAf definition. leaf peerAdvExtAsnCapAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerAdvExtAsnCapAf definition. leaf peerAndExtAsnCapAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerAndExtAsnCapAf definition. leaf peerRecvExtAsnCapAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerRecvExtAsnCapAf definition. leaf addFamilystringAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilystringAf definition. leaf safiUnicastAdvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastAdvAf definition. leaf safiUnicastAndAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastAndAf definition. leaf safiUnicastRecvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastRecvAf definition. leaf addFamilyMultiStringAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyMultiStringAf definition. leaf safiMulticastAdvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastAdvAf definition. leaf safiMulticastAndAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastAndAf definition. leaf safiMulticastRecvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastRecvAf definition. leaf addFamilyVPN4StringAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyVPN4StringAf definition. leaf safiVPNv4AdvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4AdvAf definition. leaf safiVPNv4AndAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4AndAf definition. leaf safiVPNv4RecvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4RecvAf definition. leaf addFamilyIPV6StringAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyIPV6StringAf definition. leaf safiIPV6UnicastAdvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastAdvAf definition. leaf safiIPV6UnicastAndAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastAndAf definition. leaf safiIPV6UnicastRecvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastRecvAf definition. leaf addFamilyMultiIPV6StrAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyMultiIPV6StrAf definition. leaf safiIPV6MulticastAdvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastAdvAf definition. leaf safiIPV6MulticastAndAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastAndAf definition. leaf safiIPV6MulticastRecvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastRecvAf definition. leaf addFamilyVPNv6StrAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyVPNv6StrAf definition. leaf safiVPNv6AdvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6AdvAf definition. leaf safiVPNV6AndAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNV6AndAf definition. leaf safiVPNv6RecvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6RecvAf definition. leaf safiVPNv6UnicastAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6UnicastAf definition. leaf safiVPNv4UnicastAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4UnicastAf definition. leaf addFamilyLabeledStrAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of addFamilyLabeledStrAf definition. leaf safiLabeledAdvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledAdvAf definition. leaf safiLabeledAndAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledAndAf definition. leaf safiLabeledRecvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledRecvAf definition. leaf peerVrfNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerVrfNameAf definition. leaf sendExtCommunityAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of sendExtCommunityAf definition. leaf maxPrefixesWarningAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of maxPrefixesWarningAf definition. leaf fwdStatusPreserveAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of fwdStatusPreserveAf definition. leaf grstRestartAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of grstRestartAf definition. leaf grstAdvAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of grstAdvAf definition. leaf grstRecvAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of grstRecvAf definition. leaf peerBgpTableVersionAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpTableVersionAf definition. leaf checkAfcAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of checkAfcAf definition. leaf keepAliveInAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of keepAliveInAf definition. leaf keepAliveOutAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of keepAliveOutAf definition. leaf openMsgInAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of openMsgInAf definition. leaf openMsgOutAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of openMsgOutAf definition. leaf updateMsgInAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of updateMsgInAf definition. leaf updateMsgOutAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of updateMsgOutAf definition. leaf nextHopGlobalAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of nextHopGlobalAf definition. leaf nextHopLocalAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of nextHopLocalAf definition. leaf peerRemotePortAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerRemotePortAf definition. leaf peerRemoteAddrAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerRemoteAddrAf definition. leaf peerLocalHostAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerLocalHostAf definition. leaf nextHopAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of nextHopAf definition. leaf peerLocalPortAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerLocalPortAf definition. leaf bgpInfoStateAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoStateAf definition. leaf briLabelAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of briLabelAf definition. leaf bgpOriginAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpOriginAf definition. leaf advNonPeerGroupAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advNonPeerGroupAf definition. leaf peerBfdAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerBfdAf definition. leaf prefixListNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of prefixListNameAf definition. leaf prefixListCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of prefixListCountAf definition. leaf InboundPathPolicyConfAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of InboundPathPolicyConfAf definition. leaf OutboundPathPolicyConfAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of OutboundPathPolicyConfAf definition. leaf filterInPlistNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterInPlistNameAf definition. leaf filterOutPlistNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterOutPlistNameAf definition. leaf filterInDlistNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterInDlistNameAf definition. leaf filterOutDlistNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterOutDlistNameAf definition. leaf filterInAslistNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterInAslistNameAf definition. leaf filterOutAslistNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterOutAslistNameAf definition. leaf filterInMaplistNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterInMaplistNameAf definition. leaf filterOutMaplistNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterOutMaplistNameAf definition. leaf filterUsmapNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of filterUsmapNameAf definition. leaf peerAsPathUnchangedAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerAsPathUnchangedAf definition. leaf defaultSentAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of defaultSentAf definition. leaf defaultNotSentAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of defaultNotSentAf definition. leaf orfPrefixStrAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixStrAf definition. leaf orfPrefixSendAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixSendAf definition. leaf orfPrefixCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixCountAf definition. leaf orfWaitRefreshAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of orfWaitRefreshAf definition. leaf routeReflectorClientAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeReflectorClientAf definition. leaf reserverClientAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of reserverClientAf definition. leaf softReconfigAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of softReconfigAf definition. leaf removePrivateAsAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of removePrivateAsAf definition. leaf advSmcapAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advSmcapAf definition. leaf rcvSmcapAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of rcvSmcapAf definition. leaf advRmcapAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advRmcapAf definition. leaf rcvRmcapAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of rcvRmcapAf definition. leaf afDependentCapAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of afDependentCapAf definition. leaf peerIndexAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerIndexAf definition. leaf peerOffsetAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerOffsetAf definition. leaf peerMaskAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerMaskAf definition. leaf flapCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of flapCountAf definition. leaf peerGrstRestartOnAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerGrstRestartOnAf definition. leaf peerPrefixCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixCountAf definition. leaf peerSendPrefixCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerSendPrefixCountAf definition. leaf peerFlagShutDownAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerFlagShutDownAf definition. leaf peerStatusFlagAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerStatusFlagAf definition. leaf peerCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerCountAf definition. leaf brdAsAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of brdAsAf definition. leaf brdAsNumAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of brdAsNumAf definition. leaf brdAs4Af { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of brdAs4Af definition. leaf brdAsNum4Af { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of brdAsNum4Af definition. leaf brdIpAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of brdIpAf definition. leaf brdIpNumAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of brdIpNumAf definition. leaf peerNotifyInfoAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerNotifyInfoAf definition. leaf peerNotifyDirectAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerNotifyDirectAf definition. leaf peerNotifyLastResetAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerNotifyLastResetAf definition. leaf notifyCodeStrAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of notifyCodeStrAf definition. leaf notifySubCodeStrAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of notifySubCodeStrAf definition. leaf bgpConnectionAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpConnectionAf definition. leaf nextConnectTimerAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of nextConnectTimerAf definition. leaf peerStatusGrstRestartOnAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerStatusGrstRestartOnAf definition. leaf peerStatusRestartOnAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerStatusRestartOnAf definition. leaf conEstCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of conEstCountAf definition. leaf conDroppedCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of conDroppedCountAf definition. leaf peerPrefixOverflowAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixOverflowAf definition. leaf updateIfAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of updateIfAf definition. leaf updateSourceAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of updateSourceAf definition. leaf bpfEstUpTimeAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bpfEstUpTimeAf definition. leaf lastReadTimeAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lastReadTimeAf definition. leaf bpfStateAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bpfStateAf definition. leaf bgpLinkTypeAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpLinkTypeAf definition. leaf hopAwayCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of hopAwayCountAf definition. leaf peerStateAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerStateAf definition. leaf peerTableVersionAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerTableVersionAf definition. leaf peerLocalAddrAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerLocalAddrAf definition. leaf peerRouterIdAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerRouterIdAf definition. leaf recvPacketCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of recvPacketCountAf definition. leaf notificationInAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of notificationInAf definition. leaf notificationOutAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of notificationOutAf definition. leaf pktInQueAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of pktInQueAf definition. leaf sentPacketCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of sentPacketCountAf definition. leaf refreshRecvPacketCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of refreshRecvPacketCountAf definition. leaf refreshSentPacketCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of refreshSentPacketCountAf definition. leaf advertisementIntervalAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advertisementIntervalAf definition. leaf peerInTotalMsgAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerInTotalMsgAf definition. leaf peerOutTotalMsgAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerOutTotalMsgAf definition. leaf peerLastErrorAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerLastErrorAf definition. leaf estTxnsAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of estTxnsAf definition. leaf estTimeAf { - mandatory false; + type cml_data_types:CML_INT32_T; default "0"; config false; } // END of estTimeAf definition. leaf inUpdateElapsAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of inUpdateElapsAf definition. leaf neighborCapAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of neighborCapAf definition. leaf advertisedCapabilityAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advertisedCapabilityAf definition. leaf andCapabilityAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of andCapabilityAf definition. leaf receivedCapabilityAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of receivedCapabilityAf definition. leaf advCapabilityRefreshAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advCapabilityRefreshAf definition. leaf andCapabilityRefreshAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of andCapabilityRefreshAf definition. leaf recvCapabilityRefreshAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of recvCapabilityRefreshAf definition. leaf oldCapabilityRefreshAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of oldCapabilityRefreshAf definition. leaf newCapabilityRefreshAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of newCapabilityRefreshAf definition. @@ -4015,14 +4014,13 @@ submodule bgp { leaf vrfName { - mandatory true; - type leafref { - path "/vr/vrf/vrfName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of vrfName definition. leaf peerAsAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -4031,7 +4029,7 @@ submodule bgp { } // END of peerAsAf definition. leaf bgpVersionAf { - mandatory false; + type cml_data_types:CML_UINT8_T; default "4"; config true; @@ -4039,7 +4037,7 @@ submodule bgp { } // END of bgpVersionAf definition. leaf peerConnectIntervalAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -4049,7 +4047,7 @@ submodule bgp { } // END of peerConnectIntervalAf definition. leaf peerKeepAliveAf { - mandatory false; + type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -4058,7 +4056,7 @@ submodule bgp { } // END of peerKeepAliveAf definition. leaf peerHoldTimeAf { - mandatory false; + type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -4068,21 +4066,21 @@ submodule bgp { } // END of peerHoldTimeAf definition. leaf enforceMultihopAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor enforce-multihop for address-family"; } // END of enforceMultihopAf definition. leaf peerShutdownAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor shutdown for address-family"; } // END of peerShutdownAf definition. leaf bgpPortAf { - mandatory false; + type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -4092,14 +4090,14 @@ submodule bgp { } // END of bgpPortAf definition. leaf peerGroupStrAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor peer-group for address family"; } // END of peerGroupStrAf definition. leaf passwordAf { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -4107,14 +4105,14 @@ submodule bgp { } // END of passwordAf definition. leaf transportConnectionPassiveAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor passive for address-family"; } // END of transportConnectionPassiveAf definition. leaf maxHopCountAf { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -4124,21 +4122,21 @@ submodule bgp { } // END of maxHopCountAf definition. leaf timeToLiveAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor ebgp-multihop for address-family"; } // END of timeToLiveAf definition. leaf dontCapabilityNegotiateAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor dont-capability-negotiate for address-family"; } // END of dontCapabilityNegotiateAf definition. leaf connRetryIntervalAf { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -4148,21 +4146,21 @@ submodule bgp { } // END of connRetryIntervalAf definition. leaf capabilityRouteRefreshAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor capability route-refresh for address-family"; } // END of capabilityRouteRefreshAf definition. leaf dynamicCapabilityAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor capability dynamic for address-family"; } // END of dynamicCapabilityAf definition. leaf peerRaIntervalAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -4172,7 +4170,7 @@ submodule bgp { } // END of peerRaIntervalAf definition. leaf peerAsorigIntervalAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -4182,28 +4180,28 @@ submodule bgp { } // END of peerAsorigIntervalAf definition. leaf neighborAsOverrideAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor asoverride for address family"; } // END of neighborAsOverrideAf definition. leaf peerIfNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "neighbor interface for address family"; } // END of peerIfNameAf definition. leaf peerDescAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "neighbor description for address family"; } // END of peerDescAf definition. leaf peerRestartTimeAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -4212,35 +4210,35 @@ submodule bgp { } // END of peerRestartTimeAf definition. leaf peerActivateAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor activate for address family"; } // END of peerActivateAf definition. leaf defaultPeerRmapNameAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor default-originate for address family"; } // END of defaultPeerRmapNameAf definition. leaf peerRmapOriNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "neighbor default-originate router-map for address-family"; } // END of peerRmapOriNameAf definition. leaf softReconfigInboundAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor soft-reconfiguration inbound for address family"; } // END of softReconfigInboundAf definition. leaf weightAf { - mandatory false; + type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -4250,91 +4248,91 @@ submodule bgp { } // END of weightAf definition. leaf neighborRouteServerClientAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor route-server-client for address family"; } // END of neighborRouteServerClientAf definition. leaf peerRouteReflectorAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor route-reflector-client for address family"; } // END of peerRouteReflectorAf definition. leaf peerRemovePvtAsAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor remove-private-AS for address family"; } // END of peerRemovePvtAsAf definition. leaf sendCommunityAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor send-community for address family"; } // END of sendCommunityAf definition. leaf sendCommunityTypeAf { - mandatory false; + type cml_data_types:CML_BGP_SEND_COMMU_TYPE_T; config true; description "neighbor send-community attribute for address family"; } // END of sendCommunityTypeAf definition. leaf neighborAttrUnchangedAsPathAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged as-path for address family"; } // END of neighborAttrUnchangedAsPathAf definition. leaf neighborAttrUnchangedNexthopAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged next-hop for address family"; } // END of neighborAttrUnchangedNexthopAf definition. leaf neighborAttrUnchangedMedAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged med for address family"; } // END of neighborAttrUnchangedMedAf definition. leaf orfPrefixOptAf { - mandatory false; + type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; config true; description "orf prefix-list "; } // END of orfPrefixOptAf definition. leaf setNcpFlagAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor orf prefix-list for address family"; } // END of setNcpFlagAf definition. leaf siteOriginIdAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "neighbor site of origin for address family"; } // END of siteOriginIdAf definition. leaf peerAllowEbgpVpnAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor allow-ebgp-vpn for address family"; } // END of peerAllowEbgpVpnAf definition. leaf allowAsNumAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..10"; } @@ -4344,80 +4342,80 @@ submodule bgp { } // END of allowAsNumAf definition. leaf neighborCapabilityGrstAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor capability graceful-restart for address family"; } // END of neighborCapabilityGrstAf definition. leaf aclInfoAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of aclInfoAf definition. leaf distributeListDirectionAf { - mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor distribute-list for address family"; } // END of distributeListDirectionAf definition. leaf asListAclInfoAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of asListAclInfoAf definition. leaf asListDirectionAf { - mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor filter-list for address family"; } // END of asListDirectionAf definition. leaf peerGroupTagAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "to add a neighbor to an existing peer-group for address family"; } // END of peerGroupTagAf definition. leaf prefixListAclInfoAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of prefixListAclInfoAf definition. leaf prefixListDirectionAf { - mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor prefix-list for address family"; } // END of prefixListDirectionAf definition. leaf peerRmapNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of peerRmapNameAf definition. leaf peerRmapDirectionAf { - mandatory false; + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor route-map for address family"; } // END of peerRmapDirectionAf definition. leaf setGracefulShutAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor g-shut for address-family"; } // END of setGracefulShutAf definition. leaf gshutTimerAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "10..65535"; } @@ -4426,7 +4424,7 @@ submodule bgp { } // END of gshutTimerAf definition. leaf maxPrefixesAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -4435,14 +4433,14 @@ submodule bgp { } // END of maxPrefixesAf definition. leaf maxPrefixeWarningAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor maximum-prefix warning for address-family"; } // END of maxPrefixeWarningAf definition. leaf thresholdAf { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..100"; } @@ -4451,14 +4449,14 @@ submodule bgp { } // END of thresholdAf definition. leaf warningAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "neighbor maximum-prefix threshold warning for address-family"; } // END of warningAf definition. leaf unSuppressAclInfoAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "neighbor unsuppress-map for address-family"; @@ -4477,31 +4475,31 @@ submodule bgp { leaf prefixEntrySeqAf { - mandatory true; + type cml_data_types:CML_INT32_T; config false; } // END of prefixEntrySeqAf definition. leaf prefixEntryTypeAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of prefixEntryTypeAf definition. leaf prefixEntryGeAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of prefixEntryGeAf definition. leaf prefixEntryLeAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of prefixEntryLeAf definition. leaf peerPrefixLenAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixLenAf definition. @@ -4519,103 +4517,103 @@ submodule bgp { leaf peerNetworkAddrAf { - mandatory true; + type cml_data_types:CML_STRING_T; config false; } // END of peerNetworkAddrAf definition. leaf peerFlapCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerFlapCountAf definition. leaf peerNetwkWeightAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerNetwkWeightAf definition. leaf peerBgpTableVersionAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpTableVersionAf definition. leaf peerBgpInfoFlagAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpInfoFlagAf definition. leaf peerBgpAttrMpNexthopGlobalInAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopGlobalInAf definition. leaf peerBgpAttrNextHopAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrNextHopAf definition. leaf peerBgpAttrNextHopLenAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrNextHopLenAf definition. leaf peerBgpAttrMpNexthopGlobalAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopGlobalAf definition. leaf peerBgpAttrMpNexthopLocalAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopLocalAf definition. leaf peerBgpUpTimeAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpUpTimeAf definition. leaf peerMedFlagTypeAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerMedFlagTypeAf definition. leaf peerBgpMedValAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerBgpMedValAf definition. leaf peerBgpAsPathStrAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPathStrAf definition. leaf peerBgpAsPath4BStrAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPath4BStrAf definition. leaf peerBgpAsPathOriginAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPathOriginAf definition. leaf peerBgpAsPath4BOriginAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPath4BOriginAf definition. @@ -4636,7 +4634,7 @@ submodule bgp { leaf afi { - mandatory true; + type cml_data_types:CML_AFI_TYPE_T; config true; } // END of afi definition. @@ -4653,32 +4651,32 @@ submodule bgp { leaf safi { - mandatory true; + type cml_data_types:CML_SAFI_TYPE_T; config true; } // END of safi definition. leaf setClientReflectAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp client-to-client reflection for address-family"; } // END of setClientReflectAf definition. leaf ntwkPrefixCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ntwkPrefixCountAf definition. leaf ntwkRouterIpAddrAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ntwkRouterIpAddrAf definition. leaf bgpTableVersionAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpTableVersionAf definition. @@ -4695,28 +4693,28 @@ submodule bgp { leaf aggregateAddrAf { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "aggregate-address for address-family"; } // END of aggregateAddrAf definition. leaf aggregateTypeAf { - mandatory false; + type cml_data_types:CML_BGP_AGGREGATE_ADDR_TYPE_T; config true; description "aggregate-address-type for address-family"; } // END of aggregateTypeAf definition. leaf aggregateAsSetAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "redistribute as-set for address family"; } // END of aggregateAsSetAf definition. leaf aggregateSummOnlyAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "redistribute summary-only for address family"; @@ -4735,199 +4733,199 @@ submodule bgp { leaf networkAddrAf { - mandatory true; + type cml_data_types:CML_STRING_T; config false; } // END of networkAddrAf definition. leaf ipv6Cmd { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ipv6Cmd definition. leaf ntwkLocalPrefAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ntwkLocalPrefAf definition. leaf bgpShowTypeStrAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpShowTypeStrAf definition. leaf bgpLongerPrefixCmdAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpLongerPrefixCmdAf definition. leaf dampInfoTimesAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of dampInfoTimesAf definition. leaf routeGetFlapCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeGetFlapCountAf definition. leaf peerLocalAsAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerLocalAsAf definition. leaf ntwkPathCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ntwkPathCountAf definition. leaf showBgpNtwkCmdAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of showBgpNtwkCmdAf definition. leaf peerNtwkWeightAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of peerNtwkWeightAf definition. leaf flapTimeReuseListAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of flapTimeReuseListAf definition. leaf flapRecordDurationAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of flapRecordDurationAf definition. leaf bgpDampPathCmdAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpDampPathCmdAf definition. leaf bgpDampFlapCmdAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpDampFlapCmdAf definition. leaf bgpIncosistentAsCmdAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpIncosistentAsCmdAf definition. leaf dampTimeToReuseAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of dampTimeToReuseAf definition. leaf ntwkPrefixBestPathCountAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ntwkPrefixBestPathCountAf definition. leaf checkCidrAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of checkCidrAf definition. leaf bgpCommunityCmdAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpCommunityCmdAf definition. leaf bgpInfoFlagAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoFlagAf definition. leaf bgpAttrMpNexthopGlobalInAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopGlobalInAf definition. leaf bgpAttrNextHopAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrNextHopAf definition. leaf bgpAttrMpNexthopGlobalAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopGlobalAf definition. leaf bgpAttrNextHopLenAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrNextHopLenAf definition. leaf bgpAttrMpNexthopLocalAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopLocalAf definition. leaf bgpUpTimeAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpUpTimeAf definition. leaf medFlagTypeAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of medFlagTypeAf definition. leaf bgpMedValAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpMedValAf definition. leaf bgpAsPathStrAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPathStrAf definition. leaf bgpAsPath4BStrAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPath4BStrAf definition. leaf bgpAsPathOriginAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPathOriginAf definition. leaf bgpAsPath4BOriginAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPath4BOriginAf definition. @@ -4945,67 +4943,67 @@ submodule bgp { leaf networkAddrRouteAf { - mandatory true; + type cml_data_types:CML_STRING_T; config false; } // END of networkAddrRouteAf definition. leaf ntwkPathCountRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ntwkPathCountRouteAf definition. leaf ntwkPrefixBestPathCountRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ntwkPrefixBestPathCountRouteAf definition. leaf noAdvertiseRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of noAdvertiseRouteAf definition. leaf noExportRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of noExportRouteAf definition. leaf localAsRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of localAsRouteAf definition. leaf suppressRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of suppressRouteAf definition. leaf advPeerGroupRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advPeerGroupRouteAf definition. leaf advPeerAddrRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of advPeerAddrRouteAf definition. leaf advNonPeerGroupRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of advNonPeerGroupRouteAf definition. leaf advPeerGroupNameRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of advPeerGroupNameRouteAf definition. @@ -5018,241 +5016,241 @@ submodule bgp { "routeShowVtyOut"; leaf ibgpMetricRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ibgpMetricRouteAf definition. leaf routeBgpAsPathRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeBgpAsPathRouteAf definition. leaf aggregateAsRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of aggregateAsRouteAf definition. leaf aggregatorAddrRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of aggregatorAddrRouteAf definition. leaf reflectorClientRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of reflectorClientRouteAf definition. leaf routeDampeningFlagRouteAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of routeDampeningFlagRouteAf definition. leaf historyRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of historyRouteAf definition. leaf routeAttrMpNexthopGlobalInRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopGlobalInRouteAf definition. leaf routeAttrNextHopRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeAttrNextHopRouteAf definition. leaf routeAttrMpNexthopGlobalRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopGlobalRouteAf definition. leaf routeAttrMpNexthopLocalRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopLocalRouteAf definition. leaf routeAttrMpNexthopLocal1RouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopLocal1RouteAf definition. leaf nhopValidRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of nhopValidRouteAf definition. leaf routePeerAddrRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routePeerAddrRouteAf definition. leaf originatorIdRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of originatorIdRouteAf definition. leaf originatorId1RouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of originatorId1RouteAf definition. leaf networkRemoteAddrRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of networkRemoteAddrRouteAf definition. leaf ntwkBgpOriginRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ntwkBgpOriginRouteAf definition. leaf routeMedFlagTypeRouteAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of routeMedFlagTypeRouteAf definition. leaf routeMedValRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeMedValRouteAf definition. leaf routeLocalPrefRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeLocalPrefRouteAf definition. leaf routeWeightRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeWeightRouteAf definition. leaf briLabelRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of briLabelRouteAf definition. leaf routeValidStateRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeValidStateRouteAf definition. leaf bgpInfoStaleRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoStaleRouteAf definition. leaf routePeerLocalAsRouteAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of routePeerLocalAsRouteAf definition. leaf bgpConfedPeerRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpConfedPeerRouteAf definition. leaf bgpInfoTypeRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoTypeRouteAf definition. leaf ecmpMultiCandidateRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ecmpMultiCandidateRouteAf definition. leaf multiInstalledRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiInstalledRouteAf definition. leaf routeSyncFlagRouteAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of routeSyncFlagRouteAf definition. leaf atomicAggregateRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of atomicAggregateRouteAf definition. leaf bgpInfoSelectedRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoSelectedRouteAf definition. leaf routeCommNameRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeCommNameRouteAf definition. leaf clusterListRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of clusterListRouteAf definition. leaf routeGetPenaltyRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeGetPenaltyRouteAf definition. leaf routRecordTimeRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routRecordTimeRouteAf definition. leaf routeGetFlapCountRouteAf { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of routeGetFlapCountRouteAf definition. leaf routeGetReuseTimeRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of routeGetReuseTimeRouteAf definition. leaf lastUpdateRouteAf { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lastUpdateRouteAf definition. @@ -5271,28 +5269,27 @@ submodule bgp { leaf vrfName { - mandatory true; - type leafref { - path "/vr/vrf/vrfName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of vrfName definition. leaf autoSummaryAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "auto-summary for address-family"; } // END of autoSummaryAf definition. leaf setNwSyncFlagAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "network synchronization for address-family"; } // END of setNwSyncFlagAf definition. leaf halfLifeAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..45"; } @@ -5302,7 +5299,7 @@ submodule bgp { } // END of halfLifeAf definition. leaf reusePenaltyAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..20000"; } @@ -5310,7 +5307,7 @@ submodule bgp { } // END of reusePenaltyAf definition. leaf suppressPenaltyAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..20000"; } @@ -5318,7 +5315,7 @@ submodule bgp { } // END of suppressPenaltyAf definition. leaf maxSuppressAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..255"; } @@ -5327,7 +5324,7 @@ submodule bgp { } // END of maxSuppressAf definition. leaf unreachHalfLifeAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..45"; } @@ -5336,35 +5333,35 @@ submodule bgp { } // END of unreachHalfLifeAf definition. leaf dampeningRmapNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "bgp dampening route-map for address-family"; } // END of dampeningRmapNameAf definition. leaf tableMapAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "bgp table-map for address-family"; } // END of tableMapAf definition. leaf tableMapFilterAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp table-map filter for address-family"; } // END of tableMapFilterAf definition. leaf setDampeningFlagAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp dampening for address-family"; } // END of setDampeningFlagAf definition. leaf distanceEbgpAf { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -5373,7 +5370,7 @@ submodule bgp { } // END of distanceEbgpAf definition. leaf distanceIbgpAf { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -5382,7 +5379,7 @@ submodule bgp { } // END of distanceIbgpAf definition. leaf distanceLocalAf { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -5392,28 +5389,28 @@ submodule bgp { } // END of distanceLocalAf definition. leaf setSyncFlagAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "synchronization for address-family"; } // END of setSyncFlagAf definition. leaf setGshutAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp g-shut for address family"; } // END of setGshutAf definition. leaf setGshutCapableAf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp g-shut-capable for address-family"; } // END of setGshutCapableAf definition. leaf gshutLocalPrefAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -5423,13 +5420,13 @@ submodule bgp { } // END of gshutLocalPrefAf definition. leaf bgpTypeAf { - mandatory false; + type cml_data_types:CML_BGP_MAXPATH_T; config true; } // END of bgpTypeAf definition. leaf multipathsNumAf { - mandatory false; + type cml_data_types:CML_INT32_T { range "2..64"; } @@ -5439,7 +5436,7 @@ submodule bgp { } // END of multipathsNumAf definition. leaf confedIdAf { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -5448,7 +5445,7 @@ submodule bgp { } // END of confedIdAf definition. leaf peerConfedIdAf { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -5468,26 +5465,26 @@ submodule bgp { leaf localAddrAf { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of localAddrAf definition. leaf localAddrMaskAf { - mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; config true; description "network address with mask for address family"; } // END of localAddrMaskAf definition. leaf networkRmapNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of networkRmapNameAf definition. leaf backdoorAf { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; @@ -5507,21 +5504,21 @@ submodule bgp { leaf redistTypeAf { - mandatory true; + type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; config true; description "redistribute for address-family"; } // END of redistTypeAf definition. leaf redistRmapNameAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "redistribute route map reference for address family"; } // END of redistRmapNameAf definition. leaf redistOspfNoAf { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -5530,7 +5527,7 @@ submodule bgp { } // END of redistOspfNoAf definition. leaf redistOspfRmapAf { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "redistribute with ospf proc Id and route map reference for address family"; @@ -5556,55 +5553,55 @@ submodule bgp { leaf vrId { - mandatory true; + type cml_data_types:CML_UINT32_T; config true; } // END of vrId definition. leaf snmpRestart { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "snmp restart bgp"; } // END of snmpRestart definition. leaf aggNexthop { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp aggregate-nexthop-check"; } // END of aggNexthop definition. leaf pathSelect { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp rfc1771-path-select"; } // END of pathSelect definition. leaf setDisableAdjOut { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp disable-adj-out"; } // END of setDisableAdjOut definition. leaf setExtAsnCap { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp extended-asn-cap"; } // END of setExtAsnCap definition. leaf setNexthopTriggerEnable { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp nexthop-trigger enable"; } // END of setNexthopTriggerEnable definition. leaf delayInterval { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..100"; } @@ -5614,28 +5611,28 @@ submodule bgp { } // END of delayInterval definition. leaf rfc1771StrictSet { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp rfc1771-strict"; } // END of rfc1771StrictSet definition. leaf multiInstance { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp multiple-instance"; } // END of multiInstance definition. leaf allowSamePeer { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "bgp multiple-instance allow-same-peer"; } // END of allowSamePeer definition. leaf configType { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "bgp config-type"; @@ -5653,7 +5650,7 @@ submodule bgp { leaf commListName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of commListName definition. @@ -5670,7 +5667,7 @@ submodule bgp { leaf action { - mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of action definition. @@ -5687,7 +5684,7 @@ submodule bgp { leaf commListValue { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "community-list"; @@ -5708,7 +5705,7 @@ submodule bgp { leaf commListStandNo { - mandatory true; + type cml_data_types:CML_UINT32_T { range "1..99"; } @@ -5727,7 +5724,7 @@ submodule bgp { leaf action { - mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; description "action type for community-list number"; @@ -5745,7 +5742,7 @@ submodule bgp { leaf commListValue { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "community-list number"; @@ -5766,7 +5763,7 @@ submodule bgp { leaf commListName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of commListName definition. @@ -5783,7 +5780,7 @@ submodule bgp { leaf action { - mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; description "action type for standard community name"; @@ -5801,7 +5798,7 @@ submodule bgp { leaf commListValue { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "standard community name"; @@ -5822,7 +5819,7 @@ submodule bgp { leaf commListNo { - mandatory true; + type cml_data_types:CML_UINT32_T { range "100..500"; } @@ -5841,7 +5838,7 @@ submodule bgp { leaf action { - mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of action definition. @@ -5858,7 +5855,7 @@ submodule bgp { leaf regExpList { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "expanded community-list number"; @@ -5879,7 +5876,7 @@ submodule bgp { leaf commListExpName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of commListExpName definition. @@ -5896,7 +5893,7 @@ submodule bgp { leaf action { - mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of action definition. @@ -5913,7 +5910,7 @@ submodule bgp { leaf regExpList { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "community-list expanded"; @@ -5934,7 +5931,7 @@ submodule bgp { leaf extCommListStandNo { - mandatory true; + type cml_data_types:CML_UINT32_T { range "1..99"; } @@ -5953,7 +5950,7 @@ submodule bgp { leaf extAction { - mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of extAction definition. @@ -5970,7 +5967,7 @@ submodule bgp { leaf extCommListValue { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "standard extended community list number"; @@ -5991,7 +5988,7 @@ submodule bgp { leaf extCommListName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of extCommListName definition. @@ -6014,7 +6011,7 @@ submodule bgp { leaf extAction { - mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of extAction definition. @@ -6031,7 +6028,7 @@ submodule bgp { leaf rtSoo { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of rtSoo definition. @@ -6048,7 +6045,7 @@ submodule bgp { leaf extCommListValue { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "standard extended-community list for rt or soo"; @@ -6070,7 +6067,7 @@ submodule bgp { leaf extCommListNo { - mandatory true; + type cml_data_types:CML_UINT32_T { range "100..500"; } @@ -6089,7 +6086,7 @@ submodule bgp { leaf extAction { - mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of extAction definition. @@ -6106,7 +6103,7 @@ submodule bgp { leaf extCommListValue { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "extended community list number"; @@ -6127,7 +6124,7 @@ submodule bgp { leaf extCommListExpName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of extCommListExpName definition. @@ -6144,7 +6141,7 @@ submodule bgp { leaf extAction { - mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of extAction definition. @@ -6161,7 +6158,7 @@ submodule bgp { leaf extCommListValue { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "expanded community list number"; @@ -6182,7 +6179,7 @@ submodule bgp { leaf accessListName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of accessListName definition. @@ -6199,7 +6196,7 @@ submodule bgp { leaf accessListDirection { - mandatory true; + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of accessListDirection definition. @@ -6216,7 +6213,7 @@ submodule bgp { leaf bgpRegExp { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "ip as-path access-list"; @@ -6241,27 +6238,27 @@ submodule bgp { leaf vrId { - mandatory true; + type cml_data_types:CML_UINT32_T; config true; } // END of vrId definition. leaf debugFlag { - mandatory false; + type cml_data_types:CML_BGP_DEBUG_TYPE_T; default "all"; config true; } // END of debugFlag definition. leaf undebugFlag { - mandatory false; + type cml_data_types:CML_BGP_DEBUG_TYPE_T; default "all"; config true; } // END of undebugFlag definition. leaf debugUpdateFlag { - mandatory false; + type cml_data_types:CML_BGP_UPDATE_DEBUG_TYPE_T; config true; } // END of debugUpdateFlag definition. @@ -6282,7 +6279,7 @@ submodule bgp { leaf hashSize { - mandatory true; + type cml_data_types:CML_INT32_T; config false; } // END of hashSize definition. @@ -6295,25 +6292,25 @@ submodule bgp { "hashTableInfo"; leaf hashBacket { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of hashBacket definition. leaf hashRefCnt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of hashRefCnt definition. leaf hashAsStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of hashAsStr definition. leaf hashComStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of hashComStr definition. @@ -6335,20 +6332,19 @@ submodule bgp { leaf vrfName { - mandatory true; - type leafref { - path "/vr/vrf/vrfName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of vrfName definition. leaf importMap { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of importMap definition. leaf rdStr { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "route distinguisher"; @@ -6372,7 +6368,7 @@ submodule bgp { } // END of direct definition. leaf rtRdStr { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "route distinguisher"; diff --git a/yang-files/bridge.yang b/yang-files/bridge.yang index 558614d8..3b73bbec 100644 --- a/yang-files/bridge.yang +++ b/yang-files/bridge.yang @@ -46,14 +46,14 @@ submodule bridge { leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_UINT32_T; + default "0"; + config true; } // END of vrId definition. leaf bridgeId { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of bridgeId definition. @@ -65,53 +65,52 @@ submodule bridge { } // END of bridgeType definition. leaf topologyType { - mandatory false; + type cml_data_types:CML_BRIDGE_TOPOLOGY_T; default "ring"; config true; } // END of topologyType definition. leaf macAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "bridge address"; } // END of macAddr definition. leaf discardForward { - mandatory false; + type cml_data_types:CML_DISCARDFORWARD_T; config true; } // END of discardForward definition. leaf ifName { - mandatory false; - type leafref { - path "/vr/interface/ifName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of ifName definition. leaf bridgeForward { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of bridgeForward definition. leaf forward { - mandatory false; + type cml_data_types:CML_BRIDGE_FORWARDING_SET_T; config true; } // END of forward definition. leaf ageingStatus { - mandatory false; + type cml_data_types:CML_BRIDGE_AGEING_STATE; config true; description "bridge ageing"; } // END of ageingStatus definition. leaf learning { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; @@ -119,7 +118,7 @@ submodule bridge { } // END of learning definition. leaf ageingTime { - mandatory false; + type cml_data_types:CML_INT32_T { range "10..1000000"; } @@ -129,7 +128,7 @@ submodule bridge { } // END of ageingTime definition. leaf mstpEnabled { - mandatory false; + type cml_data_types:CML_ENABLE_DISABLE_T; default "disable"; config true; @@ -137,7 +136,7 @@ submodule bridge { } // END of mstpEnabled definition. leaf helloTime { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..10"; } @@ -147,7 +146,7 @@ submodule bridge { } // END of helloTime definition. leaf maxAge { - mandatory false; + type cml_data_types:CML_INT32_T { range "6..40"; } @@ -157,7 +156,7 @@ submodule bridge { } // END of maxAge definition. leaf priority { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..61440"; } @@ -167,7 +166,7 @@ submodule bridge { } // END of priority definition. leaf forwardDelay { - mandatory false; + type cml_data_types:CML_INT32_T { range "4..30"; } @@ -177,7 +176,7 @@ submodule bridge { } // END of forwardDelay definition. leaf transmitHoldCount { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..10"; } @@ -187,7 +186,7 @@ submodule bridge { } // END of transmitHoldCount definition. leaf bpduguardEnable { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; @@ -195,7 +194,7 @@ submodule bridge { } // END of bpduguardEnable definition. leaf errdisableTimeoutEnable { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; @@ -203,7 +202,7 @@ submodule bridge { } // END of errdisableTimeoutEnable definition. leaf errdisableTimeoutInterval { - mandatory false; + type cml_data_types:CML_INT32_T { range "10..1000000"; } @@ -213,7 +212,7 @@ submodule bridge { } // END of errdisableTimeoutInterval definition. leaf revisionLevel { - mandatory false; + type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -222,7 +221,7 @@ submodule bridge { } // END of revisionLevel definition. leaf maxHops { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..40"; } @@ -232,7 +231,7 @@ submodule bridge { } // END of maxHops definition. leaf regionName { - mandatory false; + type cml_data_types:CML_STRING_T; default "Default"; config true; @@ -240,26 +239,26 @@ submodule bridge { } // END of regionName definition. leaf bpduFilter { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; } // END of bpduFilter definition. leaf debug { - mandatory false; + type cml_data_types:CML_UINT32_T; config true; } // END of debug definition. leaf debugStatus { - mandatory false; + type cml_data_types:CML_INT32_T; config true; } // END of debugStatus definition. leaf adminCisco { - mandatory false; + type cml_data_types:CML_ENABLE_DISABLE_T; default "disable"; config true; @@ -267,14 +266,14 @@ submodule bridge { } // END of adminCisco definition. leaf pathCostMethod { - mandatory false; + type cml_data_types:CML_PATHCOST_METHOD_T; default "default"; config true; } // END of pathCostMethod definition. leaf forceVersion { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..4"; } @@ -284,187 +283,187 @@ submodule bridge { } // END of forceVersion definition. leaf vId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vId definition. leaf svId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of svId definition. leaf bridgePort { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bridgePort definition. leaf cistbridgePriority { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of cistbridgePriority definition. leaf topologyChange { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of topologyChange definition. leaf externalrootPathcost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of externalrootPathcost definition. leaf bridgeEnabled { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bridgeEnabled definition. leaf topologychangeDetected { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of topologychangeDetected definition. leaf cistmstpBridge { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistmstpBridge definition. leaf cistRootPort { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of cistRootPort definition. leaf cistdesignatedRoot { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistdesignatedRoot definition. leaf cistBridgeid { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistBridgeid definition. leaf totalnumberTopologychange { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of totalnumberTopologychange definition. leaf cistregisteredRoot { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistregisteredRoot definition. leaf maxAgeCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of maxAgeCount definition. leaf bridgeHelloTime { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bridgeHelloTime definition. leaf bridgeForwardDelay { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bridgeForwardDelay definition. leaf bridgeTopologyChange { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bridgeTopologyChange definition. leaf topologyChangeCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of topologyChangeCount definition. leaf topologyChangeLastRecv { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of topologyChangeLastRecv definition. leaf addressFlag { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of addressFlag definition. leaf bridgeMaxAge { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bridgeMaxAge definition. leaf lasttimeTopologychange { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lasttimeTopologychange definition. leaf configFormat { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of configFormat definition. leaf configName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of configName definition. leaf configRevision { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of configRevision definition. leaf configDigest { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of configDigest definition. leaf brType { - mandatory false; + type cml_data_types:CML_BRIDGE_TYPE_T; config true; } // END of brType definition. leaf cistrootportIfindex { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of cistrootportIfindex definition. leaf forwarddelayTimer { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of forwarddelayTimer definition. leaf messageageTimer { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of messageageTimer definition. @@ -481,10 +480,10 @@ submodule bridge { leaf ifName { - mandatory true; - type leafref { - path "/vr/interface/ifName"; - } + + type cml_data_types:CML_STRING_T; + config true; + description "bridge-group"; } // END of ifName definition. leaf spanningTreeDisable { @@ -495,7 +494,7 @@ submodule bridge { } // END of spanningTreeDisable definition. leaf p2pMac { - mandatory false; + type cml_data_types:CML_LINK_TYPE_T; default "point-to-point"; config true; @@ -503,7 +502,7 @@ submodule bridge { } // END of p2pMac definition. leaf portPriority { - mandatory false; + type cml_data_types:CML_INT16_T { range "0..240"; } @@ -513,7 +512,7 @@ submodule bridge { } // END of portPriority definition. leaf portedgeEnable { - mandatory false; + type cml_data_types:CML_PORTEDGE_T; default "portfast"; config true; @@ -521,7 +520,7 @@ submodule bridge { } // END of portedgeEnable definition. leaf restrictedDomainRole { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; @@ -529,7 +528,7 @@ submodule bridge { } // END of restrictedDomainRole definition. leaf autoEdge { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; @@ -537,14 +536,14 @@ submodule bridge { } // END of autoEdge definition. leaf adminBpduguard { - mandatory false; + type cml_data_types:CML_BPDU_T; default "default"; config true; } // END of adminBpduguard definition. leaf portHelloTime { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..10"; } @@ -553,7 +552,7 @@ submodule bridge { } // END of portHelloTime definition. leaf pathCost { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..200000000"; } @@ -562,7 +561,7 @@ submodule bridge { } // END of pathCost definition. leaf restrictedRole { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; @@ -570,7 +569,7 @@ submodule bridge { } // END of restrictedRole definition. leaf restrictedTCN { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; @@ -578,7 +577,7 @@ submodule bridge { } // END of restrictedTCN definition. leaf adminRootGuard { - mandatory false; + type cml_data_types:CML_UINT8_T; default "1"; config true; @@ -586,7 +585,7 @@ submodule bridge { } // END of adminRootGuard definition. leaf adminBpdufilter { - mandatory false; + type cml_data_types:CML_BPDU_T; default "default"; config true; @@ -594,386 +593,386 @@ submodule bridge { } // END of adminBpdufilter definition. leaf enableBpduRx { - mandatory false; + type cml_data_types:CML_INT32_T; default "0"; config true; } // END of enableBpduRx definition. leaf overMacType { - mandatory false; + type cml_data_types:CML_INT32_T; config true; } // END of overMacType definition. leaf priorityOverWrite { - mandatory false; + type cml_data_types:CML_UINT8_T; config true; } // END of priorityOverWrite definition. leaf cistbridgePriority { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of cistbridgePriority definition. leaf topologyChange { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of topologyChange definition. leaf externalrootPathcost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of externalrootPathcost definition. leaf bridgeEnabled { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bridgeEnabled definition. leaf cistmstpBridge { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistmstpBridge definition. leaf cistdesignatedRoot { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistdesignatedRoot definition. leaf cistBridgeid { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistBridgeid definition. leaf totalnumberTopologychange { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of totalnumberTopologychange definition. leaf cistregisteredRoot { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistregisteredRoot definition. leaf maxAgeCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of maxAgeCount definition. leaf bridgeHelloTime { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bridgeHelloTime definition. leaf bridgeForwardDelay { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of bridgeForwardDelay definition. leaf bridgeTopologyChange { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bridgeTopologyChange definition. leaf topologyChangeCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of topologyChangeCount definition. leaf topologyChangeLastRecv { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of topologyChangeLastRecv definition. leaf portName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of portName definition. leaf portNumber { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of portNumber definition. leaf portIfindex { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of portIfindex definition. leaf cistPortid { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of cistPortid definition. leaf mstipathCost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of mstipathCost definition. leaf designatedPortid { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of designatedPortid definition. leaf cistpathCost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of cistpathCost definition. leaf portdesignatedCost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of portdesignatedCost definition. leaf cistDesignatedportId { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of cistDesignatedportId definition. leaf cistPortState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistPortState definition. leaf cistPriority { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of cistPriority definition. leaf mstiInstanceRoot { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of mstiInstanceRoot definition. leaf messageAge { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of messageAge definition. leaf maxAgePort { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of maxAgePort definition. leaf cisthelloTime { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of cisthelloTime definition. leaf helloTimePort { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of helloTimePort definition. leaf cistforwardDelay { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of cistforwardDelay definition. leaf topologyChangeTimer { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of topologyChangeTimer definition. leaf cistforwardTransition { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of cistforwardTransition definition. leaf cistPortFast { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistPortFast definition. leaf bpduGuardState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bpduGuardState definition. leaf operBpduGuardState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of operBpduGuardState definition. leaf bpduFilterState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bpduFilterState definition. leaf operBpduFilterState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of operBpduFilterState definition. leaf rootGuardConfigState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of rootGuardConfigState definition. leaf rootGuardState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of rootGuardState definition. leaf cistPortrole { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistPortrole definition. leaf portType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of portType definition. leaf portRefCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of portRefCount definition. leaf version { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of version definition. leaf portRecieved { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of portRecieved definition. leaf portSend { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of portSend definition. leaf portFastCfg { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of portFastCfg definition. leaf portFastState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of portFastState definition. leaf pToPstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of pToPstate definition. leaf pToPCurrentstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of pToPCurrentstate definition. leaf autoEdgePCfg { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of autoEdgePCfg definition. leaf autoEdgetstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of autoEdgetstate definition. leaf bridgeDesignatedRoot { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bridgeDesignatedRoot definition. leaf bridgeDesignated { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bridgeDesignated definition. leaf nextMsg { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of nextMsg definition. leaf mstiRoot { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of mstiRoot definition. leaf designatedBridge { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of designatedBridge definition. leaf helloTimer { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of helloTimer definition. leaf hwAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of hwAddr definition. leaf forwardState { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of forwardState definition. @@ -990,7 +989,7 @@ submodule bridge { leaf instanceId { - mandatory true; + type cml_data_types:CML_INT32_T { range "1..63"; } @@ -998,211 +997,211 @@ submodule bridge { } // END of instanceId definition. leaf cistPortrole { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistPortrole definition. leaf portName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of portName definition. leaf portNumber { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of portNumber definition. leaf cistpathCost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of cistpathCost definition. leaf cistPriority { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of cistPriority definition. leaf cisthelloTime { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of cisthelloTime definition. leaf cistforwardDelay { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of cistforwardDelay definition. leaf portspanningTree { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of portspanningTree definition. leaf portconfbpduSent { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of portconfbpduSent definition. leaf configPending { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of configPending definition. leaf porttopChangeack { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of porttopChangeack definition. leaf portconfbpduRecieved { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of portconfbpduRecieved definition. leaf porttcnbpduSent { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of porttcnbpduSent definition. leaf porttcnbpduRecieved { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of porttcnbpduRecieved definition. leaf portForwardTransition { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of portForwardTransition definition. leaf helloTimerstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of helloTimerstate definition. leaf helloTimervalue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of helloTimervalue definition. leaf forwardTimerstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of forwardTimerstate definition. leaf forwardTimervalue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of forwardTimervalue definition. leaf messageTimerstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of messageTimerstate definition. leaf topologychangeTimerstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of topologychangeTimerstate definition. leaf topologychangeTimervalue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of topologychangeTimervalue definition. leaf holdTimerstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of holdTimerstate definition. leaf holdTimervalue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of holdTimervalue definition. leaf messageageExpiry { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of messageageExpiry definition. leaf similarbpduCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of similarbpduCount definition. leaf sourcemacCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of sourcemacCount definition. leaf totalsourcemacRecieved { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of totalsourcemacRecieved definition. leaf porttopologyChangetime { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of porttopologyChangetime definition. leaf designatedrootPathcost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of designatedrootPathcost definition. leaf designatedInsPortid { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of designatedInsPortid definition. leaf mstiInstancedesignatedRoot { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of mstiInstancedesignatedRoot definition. leaf mstiInstanceBridgeId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of mstiInstanceBridgeId definition. leaf stpMultiCastAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of stpMultiCastAddr definition. leaf instanceBridgeMacAddress { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of instanceBridgeMacAddress definition. @@ -1226,37 +1225,37 @@ submodule bridge { } // END of instlastTopologychangerecievedfrom definition. leaf mstirootportIfindex { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of mstirootportIfindex definition. leaf mstiPriority { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of mstiPriority definition. leaf instancemaxAge { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of instancemaxAge definition. leaf mstibridgePriority { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of mstibridgePriority definition. leaf internalrootPathcost { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of internalrootPathcost definition. leaf messageAgeIns { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of messageAgeIns definition. @@ -1316,31 +1315,31 @@ submodule bridge { } // END of configFormat definition. leaf messageageTimervalue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of messageageTimervalue definition. leaf instanceMstiporttopologyChangetime { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of instanceMstiporttopologyChangetime definition. leaf instancePortNextState { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of instancePortNextState definition. leaf instanceTopologuChangeCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of instanceTopologuChangeCount definition. leaf mstipathCost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of mstipathCost definition. diff --git a/yang-files/cml_data_types.yang b/yang-files/cml_data_types.yang index bac75f90..e1bef533 100644 --- a/yang-files/cml_data_types.yang +++ b/yang-files/cml_data_types.yang @@ -34,8 +34,8 @@ module cml_data_types { "YANG version of the cml_data_types"; - revision "2016-08-19" { - description "Module in progress."; } + revision "2016-09-29" { + description "Revisied on 2016-09-29."; } diff --git a/yang-files/interface.yang b/yang-files/interface.yang index 42ef74d2..51a449c0 100644 --- a/yang-files/interface.yang +++ b/yang-files/interface.yang @@ -27,8 +27,8 @@ submodule interface { "Interface"; - revision "2015-10-08" { - description "Revisied on 2015-10-08."; } + revision "2016-09-15" { + description "Revisied on 2016-09-15."; } @@ -44,20 +44,20 @@ submodule interface { leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_INT32_T; + default "0"; + config true; } // END of vrId definition. leaf ifName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of ifName definition. leaf mtu { - mandatory false; + type cml_data_types:CML_INT32_T { range "64..65536"; } @@ -66,13 +66,13 @@ submodule interface { } // END of mtu definition. leaf macAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of macAddr definition. leaf ipAddr { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -80,13 +80,13 @@ submodule interface { } // END of ipAddr definition. leaf prefixlen { - mandatory false; + type cml_data_types:CML_UINT8_T; config true; } // END of prefixlen definition. leaf ipLabel { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -94,452 +94,452 @@ submodule interface { } // END of ipLabel definition. leaf vrfName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of vrfName definition. leaf ipForwarding { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ipForwarding definition. leaf ipv6Forwarding { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ipv6Forwarding definition. leaf mauType { - mandatory false; + type cml_data_types:CML_MAUTYPE_T; default "dot3MauType0dot0"; config true; } // END of mauType definition. leaf duplex { - mandatory false; + type cml_data_types:CML_DUPLEX_T; default "auto"; config true; } // END of duplex definition. leaf maxBandwidthStr { - mandatory false; + type cml_data_types:CML_STRING_T; default "0"; config true; } // END of maxBandwidthStr definition. leaf reservableBandwidthStr { - mandatory false; + type cml_data_types:CML_STRING_T; default "0"; config true; } // END of reservableBandwidthStr definition. leaf adminGrpName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of adminGrpName definition. leaf bandwidthConstraintMode { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of bandwidthConstraintMode definition. leaf linkStatus { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; } // END of linkStatus definition. leaf switchportStatus { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; } // END of switchportStatus definition. leaf adminState { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; } // END of adminState definition. leaf multicast { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of multicast definition. leaf labelSwitching { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of labelSwitching definition. leaf isRunning { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of isRunning definition. leaf rpfType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of rpfType definition. leaf adminRunState { - mandatory false; + type cml_data_types:CML_INTERFACE_ADMIN_STATE_T; config false; } // END of adminRunState definition. leaf dhcpConfigured { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of dhcpConfigured definition. leaf gmplsType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of gmplsType definition. leaf vrfId { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of vrfId definition. leaf multipathNum { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multipathNum definition. leaf routeTotal { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of routeTotal definition. leaf counterFib { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of counterFib definition. leaf ip6Addr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ip6Addr definition. leaf ingressfilterStatus { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ingressfilterStatus definition. leaf frameTypes { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of frameTypes definition. leaf nativeVlan { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of nativeVlan definition. leaf defaultVlan { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of defaultVlan definition. leaf confVlan { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of confVlan definition. leaf vId { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of vId definition. leaf transvId { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of transvId definition. leaf hwType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of hwType definition. leaf hwAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of hwAddr definition. leaf staticFlag { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of staticFlag definition. leaf interfaceDesc { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of interfaceDesc definition. leaf autoNeg { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of autoNeg definition. leaf vrxFlag { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vrxFlag definition. leaf maxlabelValue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of maxlabelValue definition. leaf ifoutputErrors { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifoutputErrors definition. leaf ifCollisions { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifCollisions definition. leaf servString { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of servString definition. leaf vcgroupName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vcgroupName definition. leaf bwconstraintMode { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bwconstraintMode definition. leaf classtypeNumber { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of classtypeNumber definition. leaf teclpriorityBw { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teclpriorityBw definition. leaf ifinputStats { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifinputStats definition. leaf ifoutputStats { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifoutputStats definition. leaf ifinputErrors { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifinputErrors definition. leaf ifIndex { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ifIndex definition. leaf ifMetric { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ifMetric definition. leaf arpageingTimeout { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of arpageingTimeout definition. leaf labelSpace { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of labelSpace definition. leaf minlabelValue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of minlabelValue definition. leaf fromLabel { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of fromLabel definition. leaf toLabel { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of toLabel definition. leaf vplsName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vplsName definition. leaf vcName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vcName definition. leaf vcType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vcType definition. leaf mplsClassTypeName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of mplsClassTypeName definition. leaf mplsclasstypeNumber { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of mplsclasstypeNumber definition. leaf mplsPriority { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of mplsPriority definition. leaf mplsteclassId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of mplsteclassId definition. leaf ifinputPkts { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifinputPkts definition. leaf ifinputOctets { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifinputOctets definition. leaf ifinputDrops { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifinputDrops definition. leaf ifinputmcastPkts { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifinputmcastPkts definition. leaf ifbadCrc { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifbadCrc definition. leaf ifundersizedPkts { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifundersizedPkts definition. leaf ifoutputPkts { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifoutputPkts definition. leaf ifoutputOctets { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifoutputOctets definition. leaf ifoutputDrops { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifoutputDrops definition. leaf ifoutputBcastPkts { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifoutputBcastPkts definition. leaf ifoversizedPkts { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifoversizedPkts definition. leaf ifoutputmcastPkts { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifoutputmcastPkts definition. @@ -556,7 +556,7 @@ submodule interface { leaf secIpAddr { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of secIpAddr definition. @@ -586,7 +586,7 @@ submodule interface { leaf constraintName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of constraintName definition. @@ -612,7 +612,7 @@ submodule interface { leaf ipv6Addr { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of ipv6Addr definition. @@ -636,13 +636,13 @@ submodule interface { leaf routeType { - mandatory true; + type cml_data_types:CML_STRING_T; config false; } // END of routeType definition. leaf counterType { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of counterType definition. diff --git a/yang-files/lacp.yang b/yang-files/lacp.yang index 7664d7db..261ae8c1 100644 --- a/yang-files/lacp.yang +++ b/yang-files/lacp.yang @@ -44,17 +44,16 @@ submodule lacp { leaf ifName { - mandatory true; - type leafref { - path "/vr/interface/ifName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of ifName definition. leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_INT32_T; + default "0"; + config true; } // END of vrId definition. leaf channelGroup { @@ -88,21 +87,20 @@ submodule lacp { leaf ifName { - mandatory true; - type leafref { - path "/vr/interface/ifName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of ifName definition. leaf psc { - mandatory false; + type cml_data_types:CML_LACP_PSC_T; default "src-dst-mac"; config true; } // END of psc definition. leaf static-channel-group { - mandatory false; + type cml_data_types:CML_UINT16_T { range "1..12"; } diff --git a/yang-files/lag.yang b/yang-files/lag.yang index e8c91202..9bf515ac 100644 --- a/yang-files/lag.yang +++ b/yang-files/lag.yang @@ -44,14 +44,13 @@ submodule lag { leaf ifName { - mandatory true; - type leafref { - path "/vr/interface/ifName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of ifName definition. leaf portPriority { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -60,21 +59,21 @@ submodule lag { } // END of portPriority definition. leaf TimeOut { - mandatory false; + type cml_data_types:CML_LACP_TIMEOUT_T; default "long"; config true; } // END of TimeOut definition. leaf bridgeType { - mandatory false; + type cml_data_types:CML_LACP_BRIDGETYPE_T; default "multicast-group-address"; config true; } // END of bridgeType definition. leaf discardConv { - mandatory false; + type cml_data_types:CML_LACP_DISCARD_CONV_T; default "disable"; config true; @@ -92,7 +91,7 @@ submodule lag { "lacpSystemPriority"; leaf systemPriority { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } diff --git a/yang-files/lldpv2.yang b/yang-files/lldpv2.yang index 56a6eb5a..c57c9fef 100644 --- a/yang-files/lldpv2.yang +++ b/yang-files/lldpv2.yang @@ -27,8 +27,8 @@ submodule lldpv2 { "Link Layer Discovery Protocol"; - revision "2015-10-08" { - description "Revisied on 2015-10-08."; } + revision "2016-09-15" { + description "Revisied on 2016-09-15."; } @@ -44,21 +44,19 @@ submodule lldpv2 { leaf ifName { - mandatory true; - type leafref { - path "/vr/interface/ifName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of ifName definition. leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_INT32_T; + config true; } // END of vrId definition. leaf lldpPortDescription { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -66,7 +64,7 @@ submodule lldpv2 { } // END of lldpPortDescription definition. leaf lldpAgtCircuitId { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -74,14 +72,14 @@ submodule lldpv2 { } // END of lldpAgtCircuitId definition. leaf lldpmedDevType { - mandatory false; + type cml_data_types:CML_LLDP_MEDDEV_T; config true; description "lldp med-devtype"; } // END of lldpmedDevType definition. leaf localName { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -100,13 +98,13 @@ submodule lldpv2 { leaf lldpAgent { - mandatory true; + type cml_data_types:CML_LLDP_AGENT_T; config true; } // END of lldpAgent definition. leaf lldpEnable { - mandatory false; + type cml_data_types:CML_LLDP_ENABLE_T; default "rxonly"; config true; @@ -114,21 +112,21 @@ submodule lldpv2 { } // END of lldpEnable definition. leaf lldpDisable { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "lldp disable"; } // END of lldpDisable definition. leaf reinitDelay { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "lldp reinitDelay timer"; } // END of reinitDelay definition. leaf MsgTxInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "5..3600"; } @@ -138,14 +136,14 @@ submodule lldpv2 { } // END of MsgTxInterval definition. leaf MsgTxValue { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "lldp msg-tx-hold"; } // END of MsgTxValue definition. leaf MsgFastTx { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -155,7 +153,7 @@ submodule lldpv2 { } // END of MsgFastTx definition. leaf neighborLimit { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -163,7 +161,7 @@ submodule lldpv2 { } // END of neighborLimit definition. leaf neighborTimer { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -172,7 +170,7 @@ submodule lldpv2 { } // END of neighborTimer definition. leaf portLimit { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -181,13 +179,13 @@ submodule lldpv2 { } // END of portLimit definition. leaf portMac { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of portMac definition. leaf portTimer { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -196,7 +194,7 @@ submodule lldpv2 { } // END of portTimer definition. leaf TxMaxCredit { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..10"; } @@ -206,7 +204,7 @@ submodule lldpv2 { } // END of TxMaxCredit definition. leaf TxFastInit { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..8"; } @@ -216,7 +214,7 @@ submodule lldpv2 { } // END of TxFastInit definition. leaf portAddr { - mandatory false; + type cml_data_types:CML_LLDP_MGMT_ADDR_T; default "mac-address"; config true; @@ -224,7 +222,7 @@ submodule lldpv2 { } // END of portAddr definition. leaf chassisId { - mandatory false; + type cml_data_types:CML_LLDP_CHASSIS_T; default "mac-address"; config true; @@ -232,7 +230,7 @@ submodule lldpv2 { } // END of chassisId definition. leaf portId { - mandatory false; + type cml_data_types:CML_LLDP_PORT_T; default "mac-address"; config true; @@ -240,33 +238,33 @@ submodule lldpv2 { } // END of portId definition. leaf tlvFlag { - mandatory false; + type cml_data_types:CML_LLDP_TVL_FLAG_T; config true; description "lldp tlv-select"; } // END of tlvFlag definition. leaf TlvSelect { - mandatory false; + type cml_data_types:CML_LLDP_IEEE_8023_T; config true; } // END of TlvSelect definition. leaf TlvSelectIeee { - mandatory false; + type cml_data_types:CML_LLDP_IEEE_8021_T; config true; } // END of TlvSelectIeee definition. leaf TlvSelectBasic { - mandatory false; + type cml_data_types:CML_LLDP_BASIC_T; config true; description "lldp tlv-select basic-mgmt"; } // END of TlvSelectBasic definition. leaf tlvMed { - mandatory false; + type cml_data_types:CML_LLDP_MED_T; default "media-capabilities"; config true; @@ -286,7 +284,7 @@ submodule lldpv2 { "systemDetail"; leaf SystemName { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -294,13 +292,13 @@ submodule lldpv2 { } // END of SystemName definition. leaf lldpRun { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of lldpRun definition. leaf lldpSystemDescription { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -308,7 +306,7 @@ submodule lldpv2 { } // END of lldpSystemDescription definition. leaf locallyAssigned { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; diff --git a/yang-files/mstp.yang b/yang-files/mstp.yang index 4f4a7d57..cf120ae2 100644 --- a/yang-files/mstp.yang +++ b/yang-files/mstp.yang @@ -45,21 +45,20 @@ submodule mstp { leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_UINT32_T; + default "0"; + config true; } // END of vrId definition. leaf bridgeId { - mandatory false; - type leafref { - path "/vr/bridge/bridgeId"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of bridgeId definition. leaf instanceId { - mandatory true; + type cml_data_types:CML_INT32_T { range "1..63"; } @@ -68,7 +67,7 @@ submodule mstp { } // END of instanceId definition. leaf instPriority { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..61440"; } @@ -79,9 +78,8 @@ submodule mstp { leaf-list vlanId { - type leafref { - path "/vr/bridge/vlan/vlanId"; - } + type cml_data_types:CML_UINT16_T; + config true; } // END of vlanId definition. leaf bridgeEnabled { @@ -355,25 +353,25 @@ submodule mstp { } // END of configDigest definition. leaf instanceMstiporttopologyChangetime { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of instanceMstiporttopologyChangetime definition. leaf instancePortNextState { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of instancePortNextState definition. leaf instanceTopologuChangeCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of instanceTopologuChangeCount definition. leaf mstiInstancedesignatedRoot { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of mstiInstancedesignatedRoot definition. @@ -390,14 +388,14 @@ submodule mstp { leaf ifName { - mandatory true; - type leafref { - path "/vr/interface/ifName"; - } + + type cml_data_types:CML_STRING_T; + config true; + description "bridge-group instance"; } // END of ifName definition. leaf instportPriority { - mandatory false; + type cml_data_types:CML_INT16_T { range "0..240"; } @@ -407,7 +405,7 @@ submodule mstp { } // END of instportPriority definition. leaf mstppathCost { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..20000000"; } @@ -417,235 +415,235 @@ submodule mstp { } // END of mstppathCost definition. leaf cistAdminedge { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistAdminedge definition. leaf cistOperedge { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistOperedge definition. leaf cistPortrole { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of cistPortrole definition. leaf portName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of portName definition. leaf portNumber { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of portNumber definition. leaf cistpathCost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of cistpathCost definition. leaf cistPriority { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of cistPriority definition. leaf cisthelloTime { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of cisthelloTime definition. leaf cistforwardDelay { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of cistforwardDelay definition. leaf portspanningTree { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of portspanningTree definition. leaf porttopChangeack { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of porttopChangeack definition. leaf configPending { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of configPending definition. leaf portconfbpduSent { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of portconfbpduSent definition. leaf portconfbpduRecieved { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of portconfbpduRecieved definition. leaf porttcnbpduSent { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of porttcnbpduSent definition. leaf porttcnbpduRecieved { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of porttcnbpduRecieved definition. leaf portForwardTransition { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of portForwardTransition definition. leaf helloTimerstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of helloTimerstate definition. leaf helloTimervalue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of helloTimervalue definition. leaf forwardTimerstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of forwardTimerstate definition. leaf forwardTimervalue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of forwardTimervalue definition. leaf messageTimerstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of messageTimerstate definition. leaf messageageTimervalue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of messageageTimervalue definition. leaf topologychangeTimerstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of topologychangeTimerstate definition. leaf topologychangeTimervalue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of topologychangeTimervalue definition. leaf holdTimerstate { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of holdTimerstate definition. leaf holdTimervalue { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of holdTimervalue definition. leaf messageageExpiry { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of messageageExpiry definition. leaf similarbpduCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of similarbpduCount definition. leaf sourcemacCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of sourcemacCount definition. leaf totalsourcemacRecieved { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of totalsourcemacRecieved definition. leaf portcistnextState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of portcistnextState definition. leaf porttopologyChangetime { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of porttopologyChangetime definition. leaf designatedrootPathcost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of designatedrootPathcost definition. leaf designatedInsPortid { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of designatedInsPortid definition. leaf mstiInstancedesignatedRoot { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of mstiInstancedesignatedRoot definition. leaf mstiInstanceBridgeId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of mstiInstanceBridgeId definition. leaf stpMultiCastAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of stpMultiCastAddr definition. leaf instanceBridgeMacAddress { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of instanceBridgeMacAddress definition. @@ -669,13 +667,13 @@ submodule mstp { } // END of instlastTopologychangerecievedfrom definition. leaf runtimevlanId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of runtimevlanId definition. leaf restrictedTCN { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; @@ -683,7 +681,7 @@ submodule mstp { } // END of restrictedTCN definition. leaf restrictedRole { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; diff --git a/yang-files/oambfd.yang b/yang-files/oambfd.yang index cecb2502..26caf763 100644 --- a/yang-files/oambfd.yang +++ b/yang-files/oambfd.yang @@ -23,8 +23,8 @@ submodule oambfd { prefix cml_data_types; } - revision "2015-10-08" { - description "Revisied on 2015-10-08."; } + revision "2016-09-15" { + description "Revisied on 2016-09-15."; } @@ -40,41 +40,40 @@ submodule oambfd { leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_INT32_T; + config true; } // END of vrId definition. leaf bfdProcessId { - mandatory true; + type cml_data_types:CML_BOOL_T; config true; } // END of bfdProcessId definition. leaf bfdGtsmState { - mandatory false; + type cml_data_types:CML_BFD_GTSM_STATE_T; config true; description "bfd Gtsm(Generalized TTL Security Mechanism)"; } // END of bfdGtsmState definition. leaf bfdNotificationState { - mandatory false; + type cml_data_types:CML_BFD_SESSION_STATE_T; config true; description "BFD Notification State"; } // END of bfdNotificationState definition. leaf bfdEchoState { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "BFD Echo State"; } // END of bfdEchoState definition. leaf bfdGtsmTtl { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -84,7 +83,7 @@ submodule oambfd { } // END of bfdGtsmTtl definition. leaf bfdSlowTimer { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1000..30000"; } @@ -99,7 +98,7 @@ submodule oambfd { } // END of bfdMultihopIntervalIpv4Addr definition. leaf bfdIpv4MultihopMinTx { - mandatory false; + type cml_data_types:CML_UINT32_T { range "50..999"; } @@ -108,7 +107,7 @@ submodule oambfd { } // END of bfdIpv4MultihopMinTx definition. leaf bfdIpv4MultihopMinRx { - mandatory false; + type cml_data_types:CML_UINT32_T { range "50..999"; } @@ -117,7 +116,7 @@ submodule oambfd { } // END of bfdIpv4MultihopMinRx definition. leaf bfdIpv4MultihopMulti { - mandatory false; + type cml_data_types:CML_UINT32_T { range "3..50"; } @@ -126,13 +125,13 @@ submodule oambfd { } // END of bfdIpv4MultihopMulti definition. leaf bfdMultihopIntervalIpv6Addr { - mandatory false; + type cml_data_types:CML_IPV6_ADDR_T; config true; } // END of bfdMultihopIntervalIpv6Addr definition. leaf bfdIpv6MultihopMinTx { - mandatory false; + type cml_data_types:CML_UINT32_T { range "50..999"; } @@ -141,7 +140,7 @@ submodule oambfd { } // END of bfdIpv6MultihopMinTx definition. leaf bfdIpv6MultihopMinRx { - mandatory false; + type cml_data_types:CML_UINT32_T { range "50..999"; } @@ -150,7 +149,7 @@ submodule oambfd { } // END of bfdIpv6MultihopMinRx definition. leaf bfdIpv6MultihopMulti { - mandatory false; + type cml_data_types:CML_UINT32_T { range "3..50"; } @@ -170,7 +169,7 @@ submodule oambfd { leaf bfdMultihopAddr { - mandatory true; + type cml_data_types:CML_IP_ADDR_T; config true; description "BFD multihop-peer"; @@ -203,7 +202,7 @@ submodule oambfd { leaf bfdMultihopAddr { - mandatory true; + type cml_data_types:CML_IP_ADDR_T; config true; } // END of bfdMultihopAddr definition. @@ -245,34 +244,32 @@ submodule oambfd { leaf ifName { - mandatory true; - type leafref { - path "/vr/interface/ifName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of ifName definition. leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_INT32_T; + config true; } // END of vrId definition. leaf bfdSessionState { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of bfdSessionState definition. leaf bfdIpv4State { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "BFD ipv4 State"; } // END of bfdIpv4State definition. leaf bfdMinTx { - mandatory false; + type cml_data_types:CML_UINT32_T { range "50..999"; } @@ -282,7 +279,7 @@ submodule oambfd { } // END of bfdMinTx definition. leaf bfdMinRx { - mandatory false; + type cml_data_types:CML_UINT32_T { range "50..999"; } @@ -291,7 +288,7 @@ submodule oambfd { } // END of bfdMinRx definition. leaf bfdIntervalMultiplier { - mandatory false; + type cml_data_types:CML_UINT32_T { range "3..50"; } @@ -301,7 +298,7 @@ submodule oambfd { } // END of bfdIntervalMultiplier definition. leaf bfdEchoInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..4294967"; } @@ -321,7 +318,7 @@ submodule oambfd { leaf bfdUserSrcAddr { - mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; config true; description "bfd ipv4 User Session"; @@ -370,7 +367,7 @@ submodule oambfd { leaf bfdIpv6UserSrcAddr { - mandatory true; + type cml_data_types:CML_IPV6_ADDR_T; config true; description "bfd ipv6 User Session"; @@ -419,7 +416,7 @@ submodule oambfd { leaf bfdIfAuthType { - mandatory true; + type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; config true; } // END of bfdIfAuthType definition. @@ -443,7 +440,7 @@ submodule oambfd { leaf bfdIfAuthType { - mandatory true; + type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; config true; } // END of bfdIfAuthType definition. @@ -475,14 +472,14 @@ submodule oambfd { "oamMpls"; leaf pingRequest { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "mpls ping request"; } // END of pingRequest definition. leaf pingReply { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "mpls ping reply"; diff --git a/yang-files/ospf.yang b/yang-files/ospf.yang index 59abc64c..f6e3c2d8 100644 --- a/yang-files/ospf.yang +++ b/yang-files/ospf.yang @@ -45,14 +45,14 @@ submodule ospf { leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_UINT32_T; + default "0"; + config true; } // END of vrId definition. leaf ospfProcessId { - mandatory true; + type cml_data_types:CML_INT32_T { range "0..65535"; } @@ -61,63 +61,62 @@ submodule ospf { leaf vrfName { mandatory true; - type leafref { - path "/vr/vrf/vrfName"; - } + type cml_data_types:CML_STRING_T; + config true; } // END of vrfName definition. leaf ospfShutDown { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospfShutDown definition. leaf domainType { - mandatory false; + type cml_data_types:CML_OSPF_DOMAIN_TYPE_T; config true; } // END of domainType definition. leaf nullDomainValue { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "domain-id"; } // END of nullDomainValue definition. leaf domainValue { - mandatory false; + type cml_data_types:CML_INT32_T; config true; } // END of domainValue definition. leaf isPrimaryDomainId { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isPrimaryDomainId definition. leaf isPassiveIfDefault { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isPassiveIfDefault definition. leaf areaBorderType { - mandatory false; + type cml_data_types:CML_OSPF_ABR_TYPE_T; default "cisco"; config true; } // END of areaBorderType definition. leaf spfStartDelay { - mandatory false; + type cml_data_types:CML_UINT32_T; config true; } // END of spfStartDelay definition. leaf spfMinDelay { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..2147483647"; } @@ -126,7 +125,7 @@ submodule ospf { } // END of spfMinDelay definition. leaf spfMaxDelay { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..2147483647"; } @@ -136,7 +135,7 @@ submodule ospf { } // END of spfMaxDelay definition. leaf throttleTimersStartDelay { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..600000"; } @@ -145,7 +144,7 @@ submodule ospf { } // END of throttleTimersStartDelay definition. leaf holdInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..600000"; } @@ -154,7 +153,7 @@ submodule ospf { } // END of holdInterval definition. leaf throttleTimersMaxDelay { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..600000"; } @@ -164,7 +163,7 @@ submodule ospf { } // END of throttleTimersMaxDelay definition. leaf lsaMinArrival { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..600000"; } @@ -173,7 +172,7 @@ submodule ospf { } // END of lsaMinArrival definition. leaf referenceBandwidth { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..4294967"; } @@ -182,7 +181,7 @@ submodule ospf { } // END of referenceBandwidth definition. leaf maxDBDescriptor { - mandatory false; + type cml_data_types:CML_UINT16_T { range "1..65535"; } @@ -191,7 +190,7 @@ submodule ospf { } // END of maxDBDescriptor definition. leaf maxUnusePackets { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -200,7 +199,7 @@ submodule ospf { } // END of maxUnusePackets definition. leaf maxLsaPacket { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -209,7 +208,7 @@ submodule ospf { } // END of maxLsaPacket definition. leaf lsdbExternalLimit { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..2147483647"; } @@ -218,7 +217,7 @@ submodule ospf { } // END of lsdbExternalLimit definition. leaf exitOverflowInterval { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..65535"; } @@ -228,7 +227,7 @@ submodule ospf { } // END of exitOverflowInterval definition. leaf metricValue { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..16777214"; } @@ -237,7 +236,7 @@ submodule ospf { } // END of metricValue definition. leaf adminDistance { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..255"; } @@ -247,26 +246,26 @@ submodule ospf { } // END of adminDistance definition. leaf restartMethod { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of restartMethod definition. leaf restartMethodLls { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of restartMethodLls definition. leaf logAdjacencyDebugType { - mandatory false; + type cml_data_types:CML_STRING_T; default "breif"; config true; } // END of logAdjacencyDebugType definition. leaf maxAreaLimit { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..4294967294"; } @@ -274,19 +273,19 @@ submodule ospf { } // END of maxAreaLimit definition. leaf trapFlagBit { - mandatory false; + type cml_data_types:CML_INT32_T; config true; } // END of trapFlagBit definition. leaf bandwidthType { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of bandwidthType definition. leaf lsdbLimit { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967294"; } @@ -295,35 +294,35 @@ submodule ospf { } // END of lsdbLimit definition. leaf actionType { - mandatory false; + type cml_data_types:CML_OSPF_ACTION_TYPE_T; default "soft"; config true; } // END of actionType definition. leaf isLsdbLimit { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "overflow database"; } // END of isLsdbLimit definition. leaf tieBreakField { - mandatory false; + type cml_data_types:CML_STRING_T; default "random"; config true; } // END of tieBreakField definition. leaf cspfTieBreakField { - mandatory false; + type cml_data_types:CML_STRING_T; default "random"; config true; } // END of cspfTieBreakField definition. leaf retryInterval { - mandatory false; + type cml_data_types:CML_UINT16_T { range "1..3600"; } @@ -332,7 +331,7 @@ submodule ospf { } // END of retryInterval definition. leaf cspfRetryInterval { - mandatory false; + type cml_data_types:CML_UINT16_T { range "1..3600"; } @@ -341,58 +340,58 @@ submodule ospf { } // END of cspfRetryInterval definition. leaf isCompitableRfc1583 { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isCompitableRfc1583 definition. leaf checkCompatibleRfc1583 { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of checkCompatibleRfc1583 definition. leaf isCSPF { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isCSPF definition. leaf isEnableCSPF { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isEnableCSPF definition. leaf isTE { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "capability te/traffic-engineering"; } // END of isTE definition. leaf isEnableTE { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isEnableTE definition. leaf isOpaqueLsa { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "capability opaque"; } // END of isOpaqueLsa definition. leaf checkOpaqueLsa { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "opaque-lsa-capable"; } // END of checkOpaqueLsa definition. leaf refreshTimer { - mandatory false; + type cml_data_types:CML_UINT32_T { range "10..1800"; } @@ -401,19 +400,19 @@ submodule ospf { } // END of refreshTimer definition. leaf dbSummaryOpt { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of dbSummaryOpt definition. leaf capabilityVrfLite { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of capabilityVrfLite definition. leaf accessListName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of accessListName definition. @@ -435,1137 +434,1137 @@ submodule ospf { } // END of secondaryOspfProcId definition. leaf isDistributeListIn { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "distribute-list"; } // END of isDistributeListIn definition. leaf opaqueAsDesc { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of opaqueAsDesc definition. leaf opaqueAsIfName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of opaqueAsIfName definition. leaf opaqueAsAdvRouter { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of opaqueAsAdvRouter definition. leaf opaqueAsType { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of opaqueAsType definition. leaf opaqueAsId { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of opaqueAsId definition. leaf opaqueAsLength { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of opaqueAsLength definition. leaf opaqueAreaDesc { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of opaqueAreaDesc definition. leaf opaqueAreaIfName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of opaqueAreaIfName definition. leaf opaqueAreaAdvRouter { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of opaqueAreaAdvRouter definition. leaf opaqueAreaType { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of opaqueAreaType definition. leaf opaqueAreaId { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of opaqueAreaId definition. leaf opaqueAreaLength { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of opaqueAreaLength definition. leaf opaqueLinkDesc { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of opaqueLinkDesc definition. leaf opaqueLinkIfName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of opaqueLinkIfName definition. leaf opaqueLinkAdvRouter { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of opaqueLinkAdvRouter definition. leaf opaqueLinkType { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of opaqueLinkType definition. leaf opaqueLinkId { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of opaqueLinkId definition. leaf opaqueLinkLength { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of opaqueLinkLength definition. leaf teUnResBWState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teUnResBWState definition. leaf teUnResBWPrio { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teUnResBWPrio definition. leaf teResourceColorState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teResourceColorState definition. leaf teResourceColorVal { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teResourceColorVal definition. leaf teRemoteId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teRemoteId definition. leaf teLocalId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teLocalId definition. leaf teLinkLocalRemoteIdState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLinkLocalRemoteIdState definition. leaf teLinkSwitchCapState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLinkSwitchCapState definition. leaf teSwitchCap { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teSwitchCap definition. leaf teEncodeType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teEncodeType definition. leaf teMaxLspBWPriCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teMaxLspBWPriCount definition. leaf teMaxLspBWPri { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teMaxLspBWPri definition. leaf teMinLspBW { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teMinLspBW definition. leaf teCapMtu { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teCapMtu definition. leaf teRiskGrpState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teRiskGrpState definition. leaf teProtectionState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teProtectionState definition. leaf teProtectionType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teProtectionType definition. leaf teRiskGrpVal { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of teRiskGrpVal definition. leaf vrfIfName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vrfIfName definition. leaf vrfIvName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vrfIvName definition. leaf igpShortcutDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of igpShortcutDetail definition. leaf igpShortcutLspDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of igpShortcutLspDetail definition. leaf lspP2mpId { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lspP2mpId definition. leaf lspId { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lspId definition. leaf lspIngress { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspIngress definition. leaf lspEgress { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspEgress definition. leaf lspExTunnelId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspExTunnelId definition. leaf lspType { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspType definition. leaf lspClientId { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspClientId definition. leaf lspState { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspState definition. leaf lspSetupPri { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspSetupPri definition. leaf lspHoldPri { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspHoldPri definition. leaf lspBidirectionalStatus { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspBidirectionalStatus definition. leaf lspBandwidth { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspBandwidth definition. leaf lspBWStat { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspBWStat definition. leaf lspHopLimit { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspHopLimit definition. leaf lspAdmControl { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspAdmControl definition. leaf lspIncludeMask { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lspIncludeMask definition. leaf lspExcludeMask { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lspExcludeMask definition. leaf lspAttrRetry { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspAttrRetry definition. leaf lspRetryInt { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of lspRetryInt definition. leaf lspRetryLimit { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of lspRetryLimit definition. leaf lspTeMetric { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lspTeMetric definition. leaf lspPathStat { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspPathStat definition. leaf lspPathDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspPathDetail definition. leaf lspExcludePathStat { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspExcludePathStat definition. leaf lspExcludePathDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspExcludePathDetail definition. leaf lspSwitchCapStat { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspSwitchCapStat definition. leaf lspSwitchCapEncodeType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspSwitchCapEncodeType definition. leaf lspSwitchCap { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspSwitchCap definition. leaf lspProtectionRev { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspProtectionRev definition. leaf lspProtectionFwd { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspProtectionFwd definition. leaf lspAttrProtectionStat { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspAttrProtectionStat definition. leaf lspRouteStat { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspRouteStat definition. leaf lspRouteDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspRouteDetail definition. leaf lspSrlgDetail { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lspSrlgDetail definition. leaf lspSrlgStat { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspSrlgStat definition. leaf multiAreaIfName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiAreaIfName definition. leaf multiAreaNbrAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiAreaNbrAddr definition. leaf isMultiIpv4Num { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isMultiIpv4Num definition. leaf multiIdentAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiIdentAddr definition. leaf multiAreaDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiAreaDetail definition. leaf multiMtuVal { - mandatory false; + type cml_data_types:CML_INT8_T; config false; } // END of multiMtuVal definition. leaf multiNetworkMsg { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiNetworkMsg definition. leaf multiOutputCost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of multiOutputCost definition. leaf transmitInt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of transmitInt definition. leaf multiTransmitState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiTransmitState definition. leaf multiTeMetric { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of multiTeMetric definition. leaf dbFilterGetState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of dbFilterGetState definition. leaf multiHelloInt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiHelloInt definition. leaf multiDeadInt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiDeadInt definition. leaf multiRetransmitInt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiRetransmitInt definition. leaf restartMethodTypeState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of restartMethodTypeState definition. leaf restartOOBResyncTimeout { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of restartOOBResyncTimeout definition. leaf multiIfTypeLoopbackState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of multiIfTypeLoopbackState definition. leaf ifPassiveState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of ifPassiveState definition. leaf multiHelloTimeDueIn { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiHelloTimeDueIn definition. leaf multiNbrCountAll { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiNbrCountAll definition. leaf multiAdjacentNbrCountAll { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiAdjacentNbrCountAll definition. leaf multiCrypto { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of multiCrypto definition. leaf multiHelloPacketDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiHelloPacketDetail definition. leaf multiLSReqDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiLSReqDetail definition. leaf multiLSAckDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiLSAckDetail definition. leaf teDBRTAddrLsaAge { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teDBRTAddrLsaAge definition. leaf teDBLinkLsaAge { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teDBLinkLsaAge definition. leaf teOpaqueType { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teOpaqueType definition. leaf teLsaHeaderTypeMsg { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teLsaHeaderTypeMsg definition. leaf teLsaHeaderType { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of teLsaHeaderType definition. leaf teLsaOptions { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of teLsaOptions definition. leaf teInstance { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teInstance definition. leaf teAdvrRouter { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teAdvrRouter definition. leaf teLSSeqNum { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teLSSeqNum definition. leaf teLSChecksum { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of teLSChecksum definition. leaf teLength { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of teLength definition. leaf teRouterState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teRouterState definition. leaf teRouterAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teRouterAddr definition. leaf teLinkTypeState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLinkTypeState definition. leaf teLinkType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teLinkType definition. leaf teLinkIdState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLinkIdState definition. leaf teLinkId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teLinkId definition. leaf teLocalInterfaceState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLocalInterfaceState definition. leaf teLocalInterfaceAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teLocalInterfaceAddr definition. leaf teRemoteInterfaceState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teRemoteInterfaceState definition. leaf teRemoteInterfaceAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teRemoteInterfaceAddr definition. leaf teLinkMetricState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLinkMetricState definition. leaf teLinkMetric { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of teLinkMetric definition. leaf teMaxResBWState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teMaxResBWState definition. leaf teMaxResBW { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teMaxResBW definition. leaf teMaxBWState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teMaxBWState definition. leaf teMaxBW { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teMaxBW definition. leaf teLinkAttrBc { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLinkAttrBc definition. leaf teBWConsModel { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of teBWConsModel definition. leaf teBWCons { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teBWCons definition. leaf teBWCtr { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teBWCtr definition. leaf ibufSize { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ibufSize definition. leaf lsaunuseCount { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of lsaunuseCount definition. leaf lsaunuseMax { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of lsaunuseMax definition. leaf opunuseMax { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of opunuseMax definition. leaf opunuseCount { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of opunuseCount definition. leaf obufSize { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of obufSize definition. leaf lbufSize { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lbufSize definition. leaf abrDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of abrDetail definition. leaf asbrDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of asbrDetail definition. leaf isOspfPathTypeTwo { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isOspfPathTypeTwo definition. leaf isOspfPathDiscard { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isOspfPathDiscard definition. leaf isOspfNextHopCon { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isOspfNextHopCon definition. leaf isOspfPathCodeArea { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isOspfPathCodeArea definition. leaf ospfPathAreaDetails { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ospfPathAreaDetails definition. leaf ospfPathIfName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ospfPathIfName definition. leaf ospfPathNbrId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ospfPathNbrId definition. leaf ospfPathCodeStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ospfPathCodeStr definition. leaf ospfPathCodeNStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ospfPathCodeNStr definition. leaf ospfPathCodePrefix { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ospfPathCodePrefix definition. leaf ospfPathCodeCostPrefix { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ospfPathCodeCostPrefix definition. leaf areaCount { - mandatory false; + type cml_data_types:CML_INT8_T; config false; } // END of areaCount definition. leaf vrfNameStat { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vrfNameStat definition. leaf lttMaxDelayMic { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lttMaxDelayMic definition. leaf lttHoldIntMic { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lttHoldIntMic definition. leaf lttStartDelayMic { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lttStartDelayMic definition. leaf lttArivalDelayMic { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lttArivalDelayMic definition. leaf abrType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of abrType definition. leaf isAbrType { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isAbrType definition. leaf lttArivalDelay { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lttArivalDelay definition. leaf lttMaxDelay { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lttMaxDelay definition. leaf lttHoldInt { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lttHoldInt definition. leaf lttStartDelay { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lttStartDelay definition. leaf maxSpfDelay { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of maxSpfDelay definition. leaf minSpfDelay { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of minSpfDelay definition. leaf processUpTime { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of processUpTime definition. leaf restartMethodType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of restartMethodType definition. leaf dbOverFlow { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of dbOverFlow definition. leaf tOverFlowExit { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of tOverFlowExit definition. leaf ddReceived { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of ddReceived definition. leaf outDdSent { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of outDdSent definition. leaf externalLsaCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of externalLsaCount definition. leaf externalLsaChecksum { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of externalLsaChecksum definition. leaf nonDefaultExternalLsa { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of nonDefaultExternalLsa definition. leaf isLsdbLimitR { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isLsdbLimitR definition. leaf isLsdbExtLimit { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isLsdbExtLimit definition. leaf isVrfEnabled { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isVrfEnabled definition. leaf asbrType { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of asbrType definition. leaf lsdbExtLimit { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lsdbExtLimit definition. leaf restartType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of restartType definition. leaf lsdbLimitR { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lsdbLimitR definition. leaf lsaOriginateCount { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lsaOriginateCount definition. leaf refreshInterval { - mandatory false; + type cml_data_types:CML_INT16_T; config false; } // END of refreshInterval definition. leaf rxLsaCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of rxLsaCount definition. leaf distanceAccessListName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "distance Access List Name"; } // END of distanceAccessListName definition. leaf sourceIpAddr { - mandatory false; + type cml_data_types:CML_IPV4_PREFIX_T; config true; } // END of sourceIpAddr definition. leaf isAllDistance { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..255"; } @@ -1573,50 +1572,50 @@ submodule ospf { } // END of isAllDistance definition. leaf routerId { - mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of routerId definition. leaf ospfRouterId { - mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of ospfRouterId definition. leaf isLogAdjSet { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "log-adjacency-changes"; } // END of isLogAdjSet definition. leaf isFrrSet { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isFrrSet definition. leaf isDna { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isDna definition. leaf cspfProctectionType { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of cspfProctectionType definition. leaf isBfdIfSet { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isBfdIfSet definition. leaf mlinkNbr { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of mlinkNbr definition. @@ -1633,7 +1632,7 @@ submodule ospf { leaf passiveIfName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of passiveIfName definition. @@ -1657,13 +1656,13 @@ submodule ospf { leaf noPassiveIfName { - mandatory true; + type cml_data_types:CML_STRING_T; config false; } // END of noPassiveIfName definition. leaf noPassiveIfIpAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of noPassiveIfIpAddr definition. @@ -1681,20 +1680,20 @@ submodule ospf { leaf defaultOrigin { - mandatory true; + type cml_data_types:CML_BOOL_T; config true; description "default-information originate"; } // END of defaultOrigin definition. leaf defaultAlways { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of defaultAlways definition. leaf defaultMetric { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..16777214"; } @@ -1703,14 +1702,14 @@ submodule ospf { } // END of defaultMetric definition. leaf defaultMetricType { - mandatory false; + type cml_data_types:CML_OSPF_METRIC_TYPE_T; default "2"; config true; } // END of defaultMetricType definition. leaf redistRouteMapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of redistRouteMapName definition. @@ -1728,7 +1727,7 @@ submodule ospf { leaf frrTieBreakVal { - mandatory true; + type cml_data_types:CML_OSPF_FRR_TIE_BREAK_VAL_T; config true; } // END of frrTieBreakVal definition. @@ -1760,7 +1759,7 @@ submodule ospf { leaf summaryAddr { - mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; config true; } // END of summaryAddr definition. @@ -1772,13 +1771,13 @@ submodule ospf { } // END of summaryAddrMask definition. leaf summaryAddressNotAdvertise { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of summaryAddressNotAdvertise definition. leaf addressTag { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -1799,7 +1798,7 @@ submodule ospf { leaf hostIpAddr { - mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of hostIpAddr definition. @@ -1816,14 +1815,14 @@ submodule ospf { leaf hostAreaId { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "host Area"; } // END of hostAreaId definition. leaf hostEntryCost { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..65535"; } @@ -1845,39 +1844,39 @@ submodule ospf { leaf areaId { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of areaId definition. leaf areaAuthType { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of areaAuthType definition. leaf areaAuthMsgType { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of areaAuthMsgType definition. leaf exportListName { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; } // END of exportListName definition. leaf importListName { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; } // END of importListName definition. leaf areaCost { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..16777215"; } @@ -1886,7 +1885,7 @@ submodule ospf { } // END of areaCost definition. leaf areaShortcutType { - mandatory false; + type cml_data_types:CML_OSPF_AREA_SHORTCUT_TYPE_T; default "default"; config true; @@ -1894,109 +1893,109 @@ submodule ospf { } // END of areaShortcutType definition. leaf addrAggrType { - mandatory false; + type cml_data_types:CML_INT32_T; config true; } // END of addrAggrType definition. leaf mask { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of mask definition. leaf areaAggrStatus { - mandatory false; + type cml_data_types:CML_INT32_T; config true; } // END of areaAggrStatus definition. leaf areaAggrEffect { - mandatory false; + type cml_data_types:CML_INT32_T; config true; } // END of areaAggrEffect definition. leaf routeTag { - mandatory false; + type cml_data_types:CML_UINT32_T; config true; } // END of routeTag definition. leaf isAreaBackbone { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isAreaBackbone definition. leaf isAreaActive { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isAreaActive definition. leaf areaIdStr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of areaIdStr definition. leaf areaIfCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of areaIfCount definition. leaf activeIfCount { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of activeIfCount definition. leaf fullVirtNbrCount { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of fullVirtNbrCount definition. leaf checkSumLsa { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of checkSumLsa definition. leaf countLsa { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of countLsa definition. leaf spfLastExec { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of spfLastExec definition. leaf nssaTransState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of nssaTransState definition. leaf nssaTransEventCount { - mandatory false; + type cml_data_types:CML_INT8_T; config false; } // END of nssaTransEventCount definition. leaf fullAdjacentNbr { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of fullAdjacentNbr definition. leaf spfExecutionCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of spfExecutionCount definition. @@ -2013,7 +2012,7 @@ submodule ospf { leaf prefixName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of prefixName definition. @@ -2030,7 +2029,7 @@ submodule ospf { leaf prefixType { - mandatory true; + type cml_data_types:CML_OSPF_AREA_FILTER_LIST_PREFIX_T; config true; description "area filter-list"; @@ -2050,7 +2049,7 @@ submodule ospf { leaf accessName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of accessName definition. @@ -2067,7 +2066,7 @@ submodule ospf { leaf accessType { - mandatory true; + type cml_data_types:CML_OSPF_AREA_FILTER_LIST_PREFIX_T; config true; } // END of accessType definition. @@ -2086,28 +2085,28 @@ submodule ospf { leaf ospfAreaRange { - mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; config true; description "ospf Area Range"; } // END of ospfAreaRange definition. leaf isAreaRangeAdvertise { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "area range as advertise"; } // END of isAreaRangeAdvertise definition. leaf isAreaRangeNotAdvertise { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "area range as not-advertise"; } // END of isAreaRangeNotAdvertise definition. leaf substituteAddr { - mandatory false; + type cml_data_types:CML_IPV4_PREFIX_T; config true; description "area range with substitute"; @@ -2126,7 +2125,7 @@ submodule ospf { leaf areaRange { - mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of areaRange definition. @@ -2143,21 +2142,21 @@ submodule ospf { leaf areaRangeMask { - mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; config true; description "area range with mask"; } // END of areaRangeMask definition. leaf rangeMaskAdvertise { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "area range with mask as advertise"; } // END of rangeMaskAdvertise definition. leaf rangeMaskNotAdvertise { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "area range with mask as not-advertise"; @@ -2177,13 +2176,13 @@ submodule ospf { leaf isNssaArea { - mandatory true; + type cml_data_types:CML_BOOL_T; config true; } // END of isNssaArea definition. leaf nssaStabilityInterval { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..2147483647"; } @@ -2192,13 +2191,13 @@ submodule ospf { } // END of nssaStabilityInterval definition. leaf nssaTranslatorRole { - mandatory false; + type cml_data_types:CML_OSPF_TRANSLATOR_ROLE_T; config true; } // END of nssaTranslatorRole definition. leaf nssaDefaultOriginMetric { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..16777214"; } @@ -2207,7 +2206,7 @@ submodule ospf { } // END of nssaDefaultOriginMetric definition. leaf nssaDefaultOriginMetricType { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..2"; } @@ -2215,25 +2214,25 @@ submodule ospf { } // END of nssaDefaultOriginMetricType definition. leaf isNssaNoDist { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isNssaNoDist definition. leaf isNssaDefaultOriginate { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isNssaDefaultOriginate definition. leaf nssaAreaNoSummary { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of nssaAreaNoSummary definition. leaf nssaRouteMapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of nssaRouteMapName definition. @@ -2246,7 +2245,7 @@ submodule ospf { "nssaAreaTranslator"; leaf nssaAreaTranslatorRole { - mandatory false; + type cml_data_types:CML_OSPF_NSSA_TRANSLATOR_ROLE_T; config true; description "area nssa"; @@ -2266,14 +2265,14 @@ submodule ospf { leaf isStubArea { - mandatory true; + type cml_data_types:CML_BOOL_T; config true; description "area stub"; } // END of isStubArea definition. leaf stubAreaNoSummary { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "area stub no-summary"; @@ -2292,14 +2291,14 @@ submodule ospf { leaf peerId { - mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; config true; description "area virtual-link"; } // END of peerId definition. leaf virtMsgDigestKeyId { - mandatory false; + type cml_data_types:CML_UINT8_T { range "0..255"; } @@ -2307,19 +2306,19 @@ submodule ospf { } // END of virtMsgDigestKeyId definition. leaf virtMsgDigestKeyStr { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of virtMsgDigestKeyStr definition. leaf ifVirtAuthKey { - mandatory false; + type cml_data_types:CML_OSPF_VIRT_AUTH_KEY_T; config true; } // END of ifVirtAuthKey definition. leaf virtIfRetransIntvl { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..3600"; } @@ -2328,7 +2327,7 @@ submodule ospf { } // END of virtIfRetransIntvl definition. leaf ifVirtTransmitDelay { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..3600"; } @@ -2337,7 +2336,7 @@ submodule ospf { } // END of ifVirtTransmitDelay definition. leaf ifVirtHelloInterval { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -2346,7 +2345,7 @@ submodule ospf { } // END of ifVirtHelloInterval definition. leaf ifVirtDeadInterval { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -2355,61 +2354,61 @@ submodule ospf { } // END of ifVirtDeadInterval definition. leaf ifVirtAuthType { - mandatory false; + type cml_data_types:CML_OSPF_VIRT_AUTH_TYPE_T; config true; } // END of ifVirtAuthType definition. leaf vlinkName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkName definition. leaf vlinkStat { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkStat definition. leaf vlinkInterface { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkInterface definition. leaf vlinkIdentAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkIdentAddr definition. leaf vlinkRemoteAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkRemoteAddr definition. leaf vlinkTransDelayState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkTransDelayState definition. leaf vlinkHelloTimeDump { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkHelloTimeDump definition. leaf vlinkNbrState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkNbrState definition. leaf isVlinkBfdSet { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isVlinkBfdSet definition. @@ -2428,7 +2427,7 @@ submodule ospf { leaf ospfNetAddr { - mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; config true; } // END of ospfNetAddr definition. @@ -2445,7 +2444,7 @@ submodule ospf { leaf networkAreaId { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "network area"; @@ -2473,7 +2472,7 @@ submodule ospf { leaf ospfNetAddrMask { - mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; config true; description "Network Area with Mask"; @@ -2512,211 +2511,211 @@ submodule ospf { leaf neighborViaInterfaceName { - mandatory true; + type cml_data_types:CML_STRING_T; config false; } // END of neighborViaInterfaceName definition. leaf neighborDownState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of neighborDownState definition. leaf neighborPri { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of neighborPri definition. leaf neighborInstanceId { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of neighborInstanceId definition. leaf neighborState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborState definition. leaf neighborInterfaceAddress { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborInterfaceAddress definition. leaf neighborViaInterfaceNamePvt { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborViaInterfaceNamePvt definition. leaf neighborId { - mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; config false; } // END of neighborId definition. leaf neighborInterfaceInputAddress { - mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; config false; } // END of neighborInterfaceInputAddress definition. leaf neighborDeadTimeDueIn { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborDeadTimeDueIn definition. leaf neighborRetransmitCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of neighborRetransmitCount definition. leaf neighborRequestCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of neighborRequestCount definition. leaf neighborDbSummaryCount { - mandatory false; + type cml_data_types:CML_INT8_T; config false; } // END of neighborDbSummaryCount definition. leaf neighborArea { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborArea definition. leaf neighborChangeState { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of neighborChangeState definition. leaf neighborDRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborDRouterId definition. leaf neighborBDRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborBDRouterId definition. leaf neighborOptions { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of neighborOptions definition. leaf neighborOptionDump { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborOptionDump definition. leaf neighborExtendedOptions { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of neighborExtendedOptions definition. leaf neighborExtendedOptionDump { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborExtendedOptionDump definition. leaf restartState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of restartState definition. leaf neighborUptime { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborUptime definition. leaf neighborOOBResyncState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of neighborOOBResyncState definition. leaf neighborLastOOBState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of neighborLastOOBState definition. leaf neighborTResyncState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of neighborTResyncState definition. leaf neighborTResync { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborTResync definition. leaf neighborOOBUptime { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborOOBUptime definition. leaf neighborPollDueIn { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborPollDueIn definition. leaf cryptSeqNum { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of cryptSeqNum definition. leaf neighborThreadInactivityTimer { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborThreadInactivityTimer definition. leaf neighborThreadDBDescriptionRetransmition { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborThreadDBDescriptionRetransmition definition. leaf neighborLsRequestRetransmition { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborLsRequestRetransmition definition. leaf neighborLsUpdateRetransmition { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborLsUpdateRetransmition definition. leaf neighborThreadPolltimer { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborThreadPolltimer definition. @@ -2734,14 +2733,14 @@ submodule ospf { leaf neighborIpAddr { - mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; config true; description "Neighbor Addr"; } // END of neighborIpAddr definition. leaf neighborStaticPriority { - mandatory false; + type cml_data_types:CML_UINT8_T { range "0..255"; } @@ -2750,7 +2749,7 @@ submodule ospf { } // END of neighborStaticPriority definition. leaf nbrPollInterval { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..2147483647"; } @@ -2759,7 +2758,7 @@ submodule ospf { } // END of nbrPollInterval definition. leaf neighborCost { - mandatory false; + type cml_data_types:CML_UINT16_T { range "1..65535"; } @@ -2781,7 +2780,7 @@ submodule ospf { leaf secondaryOspfProcessId { - mandatory true; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -2789,14 +2788,14 @@ submodule ospf { } // END of secondaryOspfProcessId definition. leaf redistMetricType { - mandatory false; + type cml_data_types:CML_OSPF_METRIC_TYPE_T; default "2"; config true; } // END of redistMetricType definition. leaf redistMetricValue { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..16777214"; } @@ -2805,7 +2804,7 @@ submodule ospf { } // END of redistMetricValue definition. leaf redistTag { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -2814,7 +2813,7 @@ submodule ospf { } // END of redistTag definition. leaf routeMapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of routeMapName definition. @@ -2832,21 +2831,21 @@ submodule ospf { leaf routeSourceType { - mandatory true; + type cml_data_types:CML_OSPF_ROUTE_SOURCE_TYPE_T; config true; description "Ospf redistribute"; } // END of routeSourceType definition. leaf redistMetricType { - mandatory false; + type cml_data_types:CML_OSPF_METRIC_TYPE_T; default "2"; config true; } // END of redistMetricType definition. leaf redistMetricValue { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..16777214"; } @@ -2855,7 +2854,7 @@ submodule ospf { } // END of redistMetricValue definition. leaf redistTag { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -2864,7 +2863,7 @@ submodule ospf { } // END of redistTag definition. leaf routeMapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "Ospf redistribute with metric-type,route-map"; @@ -2879,7 +2878,7 @@ submodule ospf { "distanceTypes"; leaf intraAreaDistance { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..255"; } @@ -2888,7 +2887,7 @@ submodule ospf { } // END of intraAreaDistance definition. leaf interAreaDistance { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..255"; } @@ -2897,7 +2896,7 @@ submodule ospf { } // END of interAreaDistance definition. leaf externalDistance { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..255"; } @@ -2923,26 +2922,25 @@ submodule ospf { leaf ifName { - mandatory true; - type leafref { - path "/vr/interface/ifName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of ifName definition. leaf ifBfdSet { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ifBfdSet definition. leaf ifBfdDisable { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ifBfdDisable definition. leaf holdDownTimer { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..2147483"; } @@ -2951,46 +2949,46 @@ submodule ospf { } // END of holdDownTimer definition. leaf fastRerouteIfSet { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of fastRerouteIfSet definition. leaf ifNetworkType { - mandatory false; + type cml_data_types:CML_OSPF_NETWORK_T; default "point-to-point"; config true; } // END of ifNetworkType definition. leaf isNetworkP2mp { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isNetworkP2mp definition. leaf ifAuthType { - mandatory false; + type cml_data_types:CML_OSPF_AUTH_TYPE_T; default "simple"; config true; } // END of ifAuthType definition. leaf ifAuthKeyEncryption { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ifAuthKeyEncryption definition. leaf ifAuthKey { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "ospf authentication-key with IP address of the interface."; } // END of ifAuthKey definition. leaf ifCost { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -2999,7 +2997,7 @@ submodule ospf { } // END of ifCost definition. leaf ifDeadInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3008,7 +3006,7 @@ submodule ospf { } // END of ifDeadInterval definition. leaf ifHelloInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3017,13 +3015,13 @@ submodule ospf { } // END of ifHelloInterval definition. leaf isMtuIgnore { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isMtuIgnore definition. leaf ifTransmitDelay { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -3032,7 +3030,7 @@ submodule ospf { } // END of ifTransmitDelay definition. leaf ifPriority { - mandatory false; + type cml_data_types:CML_UINT8_T { range "0..255"; } @@ -3041,7 +3039,7 @@ submodule ospf { } // END of ifPriority definition. leaf ifRetransmitInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3050,13 +3048,13 @@ submodule ospf { } // END of ifRetransmitInterval definition. leaf ifDatabaseFilter { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ifDatabaseFilter definition. leaf ifMtu { - mandatory false; + type cml_data_types:CML_UINT16_T { range "576..65535"; } @@ -3065,13 +3063,13 @@ submodule ospf { } // END of ifMtu definition. leaf ifDisableAll { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ifDisableAll definition. leaf ifTEMetric { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3080,7 +3078,7 @@ submodule ospf { } // END of ifTEMetric definition. leaf ifResyncTimeout { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3089,427 +3087,427 @@ submodule ospf { } // END of ifResyncTimeout definition. leaf ifDna { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ifDna definition. leaf isIfRunning { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isIfRunning definition. leaf inputIfName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of inputIfName definition. leaf intName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of intName definition. leaf ifIdentAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifIdentAddr definition. leaf ifpCost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifpCost definition. leaf isIpv4Unnumbered { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isIpv4Unnumbered definition. leaf isIfPriStatus { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isIfPriStatus definition. leaf isMultiIf { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isMultiIf definition. leaf isMultiIfPriStatus { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isMultiIfPriStatus definition. leaf ifAreaDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifAreaDetail definition. leaf ifProcId { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of ifProcId definition. leaf ifRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifRouterId definition. leaf ifIntNetworkType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifIntNetworkType definition. leaf ifTransDelayGet { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifTransDelayGet definition. leaf ifTransDelayState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifTransDelayState definition. leaf multiIfTeMetric { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiIfTeMetric definition. leaf ifIdentPriority { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ifIdentPriority definition. leaf isLdpIgpSync { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isLdpIgpSync definition. leaf isLdpIgpHoldDown { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isLdpIgpHoldDown definition. leaf LdpIgpHoldDownVal { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of LdpIgpHoldDownVal definition. leaf isInterfaceType { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isInterfaceType definition. leaf interfaceDRDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of interfaceDRDetail definition. leaf ifDbFilterGetState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifDbFilterGetState definition. leaf ifHelloInt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ifHelloInt definition. leaf ifDeadInt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ifDeadInt definition. leaf ifRetransmitInt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ifRetransmitInt definition. leaf ifRestartMethodTypeState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of ifRestartMethodTypeState definition. leaf ifRestartOOBResyncTimeout { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifRestartOOBResyncTimeout definition. leaf ifTypeLoopbackState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of ifTypeLoopbackState definition. leaf ifIntPassiveState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of ifIntPassiveState definition. leaf ifHelloTimeDueIn { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifHelloTimeDueIn definition. leaf ifNbrCountAll { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ifNbrCountAll definition. leaf ifAdjacentNbrCountAll { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of ifAdjacentNbrCountAll definition. leaf ifCrypto { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifCrypto definition. leaf ifHelloPacketDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifHelloPacketDetail definition. leaf ifLSReqDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifLSReqDetail definition. leaf ifLSAckDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifLSAckDetail definition. leaf intIfMtu { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of intIfMtu definition. leaf multiIfIdentAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiIfIdentAddr definition. leaf multiIfpCost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of multiIfpCost definition. leaf multiIsIpv4Unnumbered { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of multiIsIpv4Unnumbered definition. leaf multiIfAreaDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiIfAreaDetail definition. leaf multiIfProcId { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of multiIfProcId definition. leaf multiIfRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiIfRouterId definition. leaf multiIfNetworkType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiIfNetworkType definition. leaf multiIfTransDelayGet { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of multiIfTransDelayGet definition. leaf multiIfTransDelayState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiIfTransDelayState definition. leaf multiIfIdentPriority { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiIfIdentPriority definition. leaf isIfSyncParams { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isIfSyncParams definition. leaf multiIsLdpIgpSync { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of multiIsLdpIgpSync definition. leaf multiIsLdpIgpHoldDown { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of multiIsLdpIgpHoldDown definition. leaf multiLdpIgpHoldDownVal { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiLdpIgpHoldDownVal definition. leaf multiIsInterfaceType { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of multiIsInterfaceType definition. leaf multiinterfaceDRDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiinterfaceDRDetail definition. leaf multiIfDbFilterGetState { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiIfDbFilterGetState definition. leaf multiIfHelloInt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiIfHelloInt definition. leaf multiIfDeadInt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiIfDeadInt definition. leaf multiIfRetransmitInt { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiIfRetransmitInt definition. leaf multiIfRestartMethodTypeState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of multiIfRestartMethodTypeState definition. leaf multiIfRestartOOBResyncTimeout { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of multiIfRestartOOBResyncTimeout definition. leaf multiIsIfTypeLoopbackState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of multiIsIfTypeLoopbackState definition. leaf multiIfIntPassiveState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of multiIfIntPassiveState definition. leaf multiIfHelloTimeDueIn { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiIfHelloTimeDueIn definition. leaf multiIfNbrCountAll { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiIfNbrCountAll definition. leaf multiIfAdjacentNbrCountAll { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiIfAdjacentNbrCountAll definition. leaf multiIfCrypto { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of multiIfCrypto definition. leaf multiIfHelloPacketDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiIfHelloPacketDetail definition. leaf multiIfLSReqDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiIfLSReqDetail definition. leaf multiIfLSAckDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of multiIfLSAckDetail definition. leaf multiIfMtu { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of multiIfMtu definition. @@ -3526,7 +3524,7 @@ submodule ospf { leaf ifOpsfProcId { - mandatory true; + type cml_data_types:CML_INT32_T { range "0..65535"; } @@ -3545,7 +3543,7 @@ submodule ospf { leaf ifOspfAreaId { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of ifOspfAreaId definition. @@ -3570,7 +3568,7 @@ submodule ospf { leaf msgDigestKeyId { - mandatory true; + type cml_data_types:CML_UINT32_T { range "1..255"; } @@ -3602,32 +3600,32 @@ submodule ospf { leaf ipOspfAddr { - mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of ipOspfAddr definition. leaf ifAuthTypeAddr { - mandatory false; + type cml_data_types:CML_OSPF_AUTH_TYPE_T; default "simple"; config true; } // END of ifAuthTypeAddr definition. leaf ifAuthKeyEncryptionAddr { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ifAuthKeyEncryptionAddr definition. leaf ifAuthKeyAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of ifAuthKeyAddr definition. leaf ifCostAddr { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3636,7 +3634,7 @@ submodule ospf { } // END of ifCostAddr definition. leaf ifDeadIntervalAddr { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3645,7 +3643,7 @@ submodule ospf { } // END of ifDeadIntervalAddr definition. leaf ifHelloIntervalAddr { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3654,13 +3652,13 @@ submodule ospf { } // END of ifHelloIntervalAddr definition. leaf isMtuIgnoreAddr { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isMtuIgnoreAddr definition. leaf ifTransmitDelayAddr { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -3669,7 +3667,7 @@ submodule ospf { } // END of ifTransmitDelayAddr definition. leaf ifPriorityAddr { - mandatory false; + type cml_data_types:CML_UINT8_T { range "0..255"; } @@ -3678,7 +3676,7 @@ submodule ospf { } // END of ifPriorityAddr definition. leaf ifRetransmitIntervalAddr { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3687,13 +3685,13 @@ submodule ospf { } // END of ifRetransmitIntervalAddr definition. leaf ifDatabaseFilterAddr { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ifDatabaseFilterAddr definition. leaf ifResyncTimeoutAddr { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3713,7 +3711,7 @@ submodule ospf { leaf msgDigestKeyIdAddr { - mandatory true; + type cml_data_types:CML_UINT32_T { range "1..255"; } @@ -3750,43 +3748,43 @@ submodule ospf { leaf vrId { - mandatory true; + type cml_data_types:CML_UINT32_T; config true; } // END of vrId definition. leaf isEnableExtMultiInst { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isEnableExtMultiInst definition. leaf debug { - mandatory false; + type cml_data_types:CML_OSPF_DEBUG_T; config true; } // END of debug definition. leaf packetType { - mandatory false; + type cml_data_types:CML_OSPF_DEBUG_PACKET_TYPE_T; config true; } // END of packetType definition. leaf debugMode { - mandatory false; + type cml_data_types:CML_OSPF_DEBUG_PACKET_MODE_T; config true; } // END of debugMode definition. leaf debugDetail { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of debugDetail definition. leaf restartSeconds { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..1800"; } @@ -3795,7 +3793,7 @@ submodule ospf { } // END of restartSeconds definition. leaf hitlessRestartSeconds { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..1800"; } @@ -3804,31 +3802,31 @@ submodule ospf { } // END of hitlessRestartSeconds definition. leaf isDebug { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isDebug definition. leaf isDebugPacket { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isDebugPacket definition. leaf isCspfeventDebug { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isCspfeventDebug definition. leaf isCspfhexdumpDebug { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isCspfhexdumpDebug definition. leaf gracefulRestartPlanned { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of gracefulRestartPlanned definition. @@ -3841,20 +3839,20 @@ submodule ospf { "restartConfig"; leaf never { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "ospf hitless-restart helper"; } // END of never definition. leaf nbrRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of nbrRouterId definition. leaf restartAll { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of restartAll definition. @@ -3868,19 +3866,19 @@ submodule ospf { "restartAllConfig"; leaf onlyReload { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of onlyReload definition. leaf onlyUpgrade { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of onlyUpgrade definition. leaf restartHelperPeriod { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..1800"; } @@ -3905,20 +3903,20 @@ submodule ospf { leaf teLinkName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of teLinkName definition. leaf linkLocalEnable { - mandatory false; + type cml_data_types:CML_OSPF_TELINK_LOCAL_T; config true; description "te-link"; } // END of linkLocalEnable definition. leaf teFloodOspfId { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..65535"; } @@ -3927,7 +3925,7 @@ submodule ospf { } // END of teFloodOspfId definition. leaf teFloodareaId { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "Te Flood Ospf Id"; diff --git a/yang-files/ospf6.yang b/yang-files/ospf6.yang index 577a3476..38bfb284 100644 --- a/yang-files/ospf6.yang +++ b/yang-files/ospf6.yang @@ -45,33 +45,33 @@ submodule ospf6 { leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_UINT32_T; + default "0"; + config true; } // END of vrId definition. leaf ospf6ProcessTag { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "router ipv6 ospf"; } // END of ospf6ProcessTag definition. leaf ospf6logAdjacency { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of ospf6logAdjacency definition. leaf ospf6RouterId { - mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of ospf6RouterId definition. leaf ospf6ReferenceBandWidth { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..4294967"; } @@ -80,7 +80,7 @@ submodule ospf6 { } // END of ospf6ReferenceBandWidth definition. leaf maxDBDescriptor { - mandatory false; + type cml_data_types:CML_UINT16_T { range "1..65535"; } @@ -89,7 +89,7 @@ submodule ospf6 { } // END of maxDBDescriptor definition. leaf maxUnusePkt { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -98,7 +98,7 @@ submodule ospf6 { } // END of maxUnusePkt definition. leaf maxUnuseLsa { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -107,7 +107,7 @@ submodule ospf6 { } // END of maxUnuseLsa definition. leaf ospf6DefaultMetric { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..16777214"; } @@ -116,14 +116,14 @@ submodule ospf6 { } // END of ospf6DefaultMetric definition. leaf abrType { - mandatory false; + type cml_data_types:CML_OSPF6_ABR_TYPE_T; default "cisco"; config true; } // END of abrType definition. leaf ospf6AdminDistance { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..254"; } @@ -132,7 +132,7 @@ submodule ospf6 { } // END of ospf6AdminDistance definition. leaf minDelay { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..2147483647"; } @@ -141,7 +141,7 @@ submodule ospf6 { } // END of minDelay definition. leaf maxDelay { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..2147483647"; } @@ -151,56 +151,56 @@ submodule ospf6 { } // END of maxDelay definition. leaf ospf6ShutdownStatus { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6ShutdownStatus definition. leaf ospf6FRKeepAllPath { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6FRKeepAllPath definition. leaf isPassiveIfDefault { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isPassiveIfDefault definition. leaf ospf6CapabilityTE { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6CapabilityTE definition. leaf ospf6CspfCapability { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6CspfCapability definition. leaf ospf6EnableCspf { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6EnableCspf definition. leaf ospf6EnableDBSummary { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6EnableDBSummary definition. leaf tieBreak { - mandatory false; + type cml_data_types:CML_OSPF6_CSPF_TYPE_T; default "random"; config true; } // END of tieBreak definition. leaf cspfInterval { - mandatory false; + type cml_data_types:CML_UINT16_T { range "1..3600"; } @@ -209,578 +209,578 @@ submodule ospf6 { } // END of cspfInterval definition. leaf ospf6CapabilityRestartMethod { - mandatory false; + type cml_data_types:CML_BOOL_T; default true; config true; } // END of ospf6CapabilityRestartMethod definition. leaf bfdAllInterface { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of bfdAllInterface definition. leaf teDBRTAddrLsaAge { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teDBRTAddrLsaAge definition. leaf teLsaHeaderMsgType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teLsaHeaderMsgType definition. leaf teLsaHeaderType { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of teLsaHeaderType definition. leaf teInstance { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teInstance definition. leaf teAdvrRouter { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teAdvrRouter definition. leaf teLSSeqNum { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teLSSeqNum definition. leaf teLSChecksum { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of teLSChecksum definition. leaf teLength { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of teLength definition. leaf teRouterState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teRouterState definition. leaf teNeighborState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teNeighborState definition. leaf teNeighborInterfaceId { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teNeighborInterfaceId definition. leaf teNeighborRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teNeighborRouterId definition. leaf teRouterAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teRouterAddr definition. leaf teLocalInterfaceState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLocalInterfaceState definition. leaf teLocalInterfaceAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teLocalInterfaceAddr definition. leaf teRemoteInterfaceState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teRemoteInterfaceState definition. leaf teRemoteInterfaceAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teRemoteInterfaceAddr definition. leaf teLinkMetricState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLinkMetricState definition. leaf teLinkMetric { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of teLinkMetric definition. leaf teMaxResBWState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teMaxResBWState definition. leaf teMaxResBW { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teMaxResBW definition. leaf teMaxBWState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teMaxBWState definition. leaf teMaxBW { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teMaxBW definition. leaf teLinkAttrBc { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLinkAttrBc definition. leaf teBWConsModel { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of teBWConsModel definition. leaf teUnResBWState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teUnResBWState definition. leaf teUnResBWPrio { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teUnResBWPrio definition. leaf teResourceColorState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teResourceColorState definition. leaf teResourceColorVal { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teResourceColorVal definition. leaf teBWCons { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teBWCons definition. leaf teBWCtr { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of teBWCtr definition. leaf teLinkStateType { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLinkStateType definition. leaf teLinkType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teLinkType definition. leaf teLinkStateID { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of teLinkStateID definition. leaf teLinkId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of teLinkId definition. leaf pathCode { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of pathCode definition. leaf pathCost { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of pathCost definition. leaf nextHop { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of nextHop definition. leaf ifPathCode { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifPathCode definition. leaf areaTransit { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of areaTransit definition. leaf nhAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of nhAddr definition. leaf lspP2mpId { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lspP2mpId definition. leaf lspId { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lspId definition. leaf lspIngress { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspIngress definition. leaf lspEgress { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspEgress definition. leaf lspExTunnelId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspExTunnelId definition. leaf lspType { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspType definition. leaf lspClientId { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspClientId definition. leaf lspState { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspState definition. leaf lspSetupPri { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspSetupPri definition. leaf lspHoldPri { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspHoldPri definition. leaf lspBidirectionalStatus { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspBidirectionalStatus definition. leaf lspBandwidth { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspBandwidth definition. leaf lspBWStat { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspBWStat definition. leaf lspHopLimit { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of lspHopLimit definition. leaf lspAdmControl { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of lspAdmControl definition. leaf lspIncludeMask { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lspIncludeMask definition. leaf lspExcludeMask { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lspExcludeMask definition. leaf lspAttrRetry { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspAttrRetry definition. leaf lspRetryInt { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of lspRetryInt definition. leaf lspRetryLimit { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of lspRetryLimit definition. leaf lspTeMetric { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lspTeMetric definition. leaf lspPathStat { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspPathStat definition. leaf lspPathDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspPathDetail definition. leaf lspExcludePathStat { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspExcludePathStat definition. leaf lspExcludePathDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspExcludePathDetail definition. leaf lspRouteStat { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of lspRouteStat definition. leaf lspRouteDetail { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of lspRouteDetail definition. leaf isAbrType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of isAbrType definition. leaf isAbrStateType { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of isAbrStateType definition. leaf vrfIfName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vrfIfName definition. leaf vrfIvName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vrfIvName definition. leaf asbrSet { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of asbrSet definition. leaf spfMinDelay { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of spfMinDelay definition. leaf spfMaxDelay { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of spfMaxDelay definition. leaf ddCountIn { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of ddCountIn definition. leaf ddCountOut { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of ddCountOut definition. leaf externalLsa { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of externalLsa definition. leaf checksum { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of checksum definition. leaf unknownLsa { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of unknownLsa definition. leaf selfLsa { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of selfLsa definition. leaf recvLsa { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of recvLsa definition. leaf processUpTime { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of processUpTime definition. leaf restartMethodType { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of restartMethodType definition. leaf areaCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of areaCount definition. leaf obufSize { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of obufSize definition. leaf lbufSize { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of lbufSize definition. leaf ibufSize { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ibufSize definition. leaf opunuseMax { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of opunuseMax definition. leaf opunuseCount { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of opunuseCount definition. leaf lsaunuseCount { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of lsaunuseCount definition. leaf lsaunuseMax { - mandatory false; + type cml_data_types:CML_UINT16_T; config false; } // END of lsaunuseMax definition. leaf accessListName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of accessListName definition. leaf ospf6DistIn { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "distribute-list in"; @@ -812,7 +812,7 @@ submodule ospf6 { leaf passiveIfName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "passive-interface with interface name"; @@ -831,7 +831,7 @@ submodule ospf6 { leaf noPassiveIfName { - mandatory true; + type cml_data_types:CML_STRING_T; config false; } // END of noPassiveIfName definition. @@ -849,103 +849,103 @@ submodule ospf6 { leaf neighborIf { - mandatory true; + type cml_data_types:CML_STRING_T; config false; } // END of neighborIf definition. leaf neighborPriority { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of neighborPriority definition. leaf neighborDownState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of neighborDownState definition. leaf neighborRetransmitCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of neighborRetransmitCount definition. leaf neighborRequestCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of neighborRequestCount definition. leaf neighborDbSummaryCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of neighborDbSummaryCount definition. leaf neighborChangeState { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of neighborChangeState definition. leaf neighborArea { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborArea definition. leaf neighborInterfaceAddress { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborInterfaceAddress definition. leaf neighborDRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborDRouterId definition. leaf neighborBDRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborBDRouterId definition. leaf neighborOptions { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of neighborOptions definition. leaf neighborOptionDump { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborOptionDump definition. leaf neighborState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborState definition. leaf neighborDeadTime { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborDeadTime definition. leaf neighborId { - mandatory false; + type cml_data_types:CML_IPV4_ADDR_T; config false; } // END of neighborId definition. leaf neighborInst { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of neighborInst definition. @@ -963,7 +963,7 @@ submodule ospf6 { leaf frrTieBreakVal { - mandatory true; + type cml_data_types:CML_OSPF_FRR_TIE_BREAK_VAL_T; config true; } // END of frrTieBreakVal definition. @@ -995,20 +995,20 @@ submodule ospf6 { leaf summaryIpv6Addr { - mandatory true; + type cml_data_types:CML_IPV6_PREFIX_T; config true; } // END of summaryIpv6Addr definition. leaf addressNotMask6len { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "summary-address with not-advertise"; } // END of addressNotMask6len definition. leaf summaryRoute6Tag { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -1017,7 +1017,7 @@ submodule ospf6 { } // END of summaryRoute6Tag definition. leaf summaryRoute6TranslateTag { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -1038,13 +1038,13 @@ submodule ospf6 { leaf areaId { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of areaId definition. leaf defaultCost { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..16777215"; } @@ -1054,145 +1054,145 @@ submodule ospf6 { } // END of defaultCost definition. leaf isAreaType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of isAreaType definition. leaf isAreaActive { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of isAreaActive definition. leaf activeIfCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of activeIfCount definition. leaf areaIfCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of areaIfCount definition. leaf spfCalcCount { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of spfCalcCount definition. leaf areaLsdbCountAll { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of areaLsdbCountAll definition. leaf areaChecksum { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of areaChecksum definition. leaf areaStrId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of areaStrId definition. leaf isAreaDefault { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of isAreaDefault definition. leaf isAreaNssa { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of isAreaNssa definition. leaf areaUnknownLsa { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of areaUnknownLsa definition. leaf isNssaDisabled { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of isNssaDisabled definition. leaf vlinkName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkName definition. leaf transitArea { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of transitArea definition. leaf authEnabled { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of authEnabled definition. leaf authStateEnabled { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of authStateEnabled definition. leaf localAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of localAddr definition. leaf remoteAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of remoteAddr definition. leaf ifFsmState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifFsmState definition. leaf helloDueIn { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of helloDueIn definition. leaf ifPassiveState { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of ifPassiveState definition. leaf vlinkAdjState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkAdjState definition. leaf vlinkState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkState definition. leaf vlinkInterface { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlinkInterface definition. @@ -1209,14 +1209,14 @@ submodule ospf6 { leaf isAreaStub { - mandatory true; + type cml_data_types:CML_BOOL_T; config true; description "area stub"; } // END of isAreaStub definition. leaf ospf6AreaSummary { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "area stub no-summary"; @@ -1235,14 +1235,14 @@ submodule ospf6 { leaf peerId { - mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; config true; description "area virtual-link"; } // END of peerId definition. leaf virtualLinkRetransmitInterval { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..1800"; } @@ -1251,7 +1251,7 @@ submodule ospf6 { } // END of virtualLinkRetransmitInterval definition. leaf virtualLinkTransmitDelay { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..1800"; } @@ -1260,7 +1260,7 @@ submodule ospf6 { } // END of virtualLinkTransmitDelay definition. leaf virtualLinkHelloInterval { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -1269,7 +1269,7 @@ submodule ospf6 { } // END of virtualLinkHelloInterval definition. leaf virtualLinkDeadInterval { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -1278,13 +1278,13 @@ submodule ospf6 { } // END of virtualLinkDeadInterval definition. leaf areaVlinkTimer { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of areaVlinkTimer definition. leaf virtualLinkSeconds { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -1292,7 +1292,7 @@ submodule ospf6 { } // END of virtualLinkSeconds definition. leaf VirtualLinkInstanceId { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..255"; } @@ -1314,13 +1314,13 @@ submodule ospf6 { leaf ospf6Nssa { - mandatory true; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6Nssa definition. leaf stabilityInterval { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..2147483647"; } @@ -1329,20 +1329,20 @@ submodule ospf6 { } // END of stabilityInterval definition. leaf nssaAreaSummary { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of nssaAreaSummary definition. leaf ospf6AreaNssaTransRole { - mandatory false; + type cml_data_types:CML_OSPF6_TRANSLATOR_ROLE_T; default "candidate"; config true; } // END of ospf6AreaNssaTransRole definition. leaf ospf6DefaultOriginMetric { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..16777214"; } @@ -1351,26 +1351,26 @@ submodule ospf6 { } // END of ospf6DefaultOriginMetric definition. leaf ospf6DefaultOriginMetricType { - mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; config true; } // END of ospf6DefaultOriginMetricType definition. leaf ospf6NssaRedist { - mandatory false; + type cml_data_types:CML_BOOL_T; default true; config true; } // END of ospf6NssaRedist definition. leaf ospf6NssaDefaultInfo { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6NssaDefaultInfo definition. leaf NssaRouteMapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "area nssa"; @@ -1384,7 +1384,7 @@ submodule ospf6 { "nssaAreaTranslator"; leaf nssaAreaTranslatorRole { - mandatory false; + type cml_data_types:CML_OSPF6_NSSA_TRANSLATOR_ROLE_T; config true; description "area nssa"; @@ -1404,7 +1404,7 @@ submodule ospf6 { leaf areaRangeAddr { - mandatory true; + type cml_data_types:CML_IPV6_PREFIX_T; config true; description "area range"; @@ -1430,20 +1430,20 @@ submodule ospf6 { leaf sourceOspf6Tag { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of sourceOspf6Tag definition. leaf ospf6RedistMetricType { - mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; default "2"; config true; } // END of ospf6RedistMetricType definition. leaf ospf6RedistMetricValue { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..16777214"; } @@ -1451,7 +1451,7 @@ submodule ospf6 { } // END of ospf6RedistMetricValue definition. leaf ospf6RedistTagVal { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -1460,7 +1460,7 @@ submodule ospf6 { } // END of ospf6RedistTagVal definition. leaf ospf6RouteMapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "redistribute ospf options"; @@ -1479,20 +1479,20 @@ submodule ospf6 { leaf ospf6RedistProtocol { - mandatory true; + type cml_data_types:CML_OSPF6_ROUTE_SOURCE_TYPE_T; config true; } // END of ospf6RedistProtocol definition. leaf ospf6RedistMetricType { - mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; default "2"; config true; } // END of ospf6RedistMetricType definition. leaf ospf6RedistMetricValue { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..16777214"; } @@ -1500,7 +1500,7 @@ submodule ospf6 { } // END of ospf6RedistMetricValue definition. leaf ospf6RedistTagVal { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -1509,7 +1509,7 @@ submodule ospf6 { } // END of ospf6RedistTagVal definition. leaf ospf6RouteMapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "redistribute options"; @@ -1528,26 +1528,26 @@ submodule ospf6 { leaf ospf6RedistDefaultOrigin { - mandatory true; + type cml_data_types:CML_BOOL_T; config true; description "default-information originate"; } // END of ospf6RedistDefaultOrigin definition. leaf ospf6RedistDefaultOriginAlways { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6RedistDefaultOriginAlways definition. leaf ospf6RedistDefaultMetric { - mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; config true; } // END of ospf6RedistDefaultMetric definition. leaf ospf6RedistDefaultMetricValue { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..16777214"; } @@ -1555,7 +1555,7 @@ submodule ospf6 { } // END of ospf6RedistDefaultMetricValue definition. leaf routeMapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "default-information originate options"; @@ -1574,7 +1574,7 @@ submodule ospf6 { leaf addFamily { - mandatory true; + type cml_data_types:CML_BOOL_T; config true; } // END of addFamily definition. @@ -1591,7 +1591,7 @@ submodule ospf6 { leaf areaId { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of areaId definition. @@ -1608,7 +1608,7 @@ submodule ospf6 { leaf areaRangeIpv4Addr { - mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; config true; description "area range for address-family ipv4"; @@ -1634,21 +1634,21 @@ submodule ospf6 { leaf ospfRedistProtocol { - mandatory true; + type cml_data_types:CML_OSPF6_AF_ROUTE_SOURCE_TYPE_T; config true; description "redistribute for address-family ipv4"; } // END of ospfRedistProtocol definition. leaf ospfRedistMetricType { - mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; default "2"; config true; } // END of ospfRedistMetricType definition. leaf ospfRedistMetricValue { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..16777214"; } @@ -1657,7 +1657,7 @@ submodule ospf6 { } // END of ospfRedistMetricValue definition. leaf ospfRedistTagVal { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -1666,7 +1666,7 @@ submodule ospf6 { } // END of ospfRedistTagVal definition. leaf ospfRouteMapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "redistribute options for address-family ipv4"; @@ -1685,7 +1685,7 @@ submodule ospf6 { leaf sourceOspfTag { - mandatory true; + type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -1694,14 +1694,14 @@ submodule ospf6 { } // END of sourceOspfTag definition. leaf ospfRedistMetricType { - mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; default "2"; config true; } // END of ospfRedistMetricType definition. leaf ospfRedistMetricValue { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..16777214"; } @@ -1710,7 +1710,7 @@ submodule ospf6 { } // END of ospfRedistMetricValue definition. leaf ospfRedistTagVal { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -1719,7 +1719,7 @@ submodule ospf6 { } // END of ospfRedistTagVal definition. leaf ospfRouteMapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "redistribute ospf options for address-family ipv4"; @@ -1738,14 +1738,14 @@ submodule ospf6 { leaf summaryIpv4Addr { - mandatory true; + type cml_data_types:CML_IPV4_PREFIX_T; config true; description "summary-address for ipv4 address-family"; } // END of summaryIpv4Addr definition. leaf summaryRouteTag { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -1754,7 +1754,7 @@ submodule ospf6 { } // END of summaryRouteTag definition. leaf addressNotMask4len { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "summary-address with not-advertise for ipv4 address-family"; @@ -1773,26 +1773,26 @@ submodule ospf6 { leaf ospf6FamRedistDefaultOrigin { - mandatory true; + type cml_data_types:CML_BOOL_T; config true; description "default-information originate for address-family ipv4"; } // END of ospf6FamRedistDefaultOrigin definition. leaf ospf6FamRedistDefaultOriginAlways { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6FamRedistDefaultOriginAlways definition. leaf ospf6FamRedistDefaultMetric { - mandatory false; + type cml_data_types:CML_OSPF6_METRIC_TYPE_T; config true; } // END of ospf6FamRedistDefaultMetric definition. leaf ospf6FamRedistDefaultMetricValue { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..16777214"; } @@ -1800,7 +1800,7 @@ submodule ospf6 { } // END of ospf6FamRedistDefaultMetricValue definition. leaf ospf6FamRouteMapName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "default-information originate options for address-family ipv4"; @@ -1816,7 +1816,7 @@ submodule ospf6 { "distanceTypes"; leaf intraDistance { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..254"; } @@ -1825,7 +1825,7 @@ submodule ospf6 { } // END of intraDistance definition. leaf interDistance { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..254"; } @@ -1834,7 +1834,7 @@ submodule ospf6 { } // END of interDistance definition. leaf externalDistance { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..254"; } @@ -1860,20 +1860,19 @@ submodule ospf6 { leaf ifName { - mandatory true; - type leafref { - path "/vr/interface/ifName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of ifName definition. leaf isDisable { - mandatory false; + type cml_data_types:CML_INT32_T; config true; } // END of isDisable definition. leaf bfdDisable { - mandatory false; + type cml_data_types:CML_BOOL_T; default false; config true; @@ -1891,7 +1890,7 @@ submodule ospf6 { leaf instanceId { - mandatory true; + type cml_data_types:CML_INT32_T { range "0..31 | 64..95"; } @@ -1899,19 +1898,19 @@ submodule ospf6 { } // END of instanceId definition. leaf ospf6IfType { - mandatory false; + type cml_data_types:CML_OSPF6_NETWORK_T; config true; } // END of ospf6IfType definition. leaf ospf6IfMultiType { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6IfMultiType definition. leaf ospf6IfPriority { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..255"; } @@ -1920,13 +1919,13 @@ submodule ospf6 { } // END of ospf6IfPriority definition. leaf ifMtuIgnore { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ifMtuIgnore definition. leaf ospf6IfCost { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -1935,7 +1934,7 @@ submodule ospf6 { } // END of ospf6IfCost definition. leaf transmitDelay { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..1800"; } @@ -1944,7 +1943,7 @@ submodule ospf6 { } // END of transmitDelay definition. leaf retransmitInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..1800"; } @@ -1953,7 +1952,7 @@ submodule ospf6 { } // END of retransmitInterval definition. leaf helloInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -1962,7 +1961,7 @@ submodule ospf6 { } // END of helloInterval definition. leaf deadInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -1971,7 +1970,7 @@ submodule ospf6 { } // END of deadInterval definition. leaf ospf6TeMetric { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -1980,26 +1979,26 @@ submodule ospf6 { } // END of ospf6TeMetric definition. leaf ospf6LsaSuppressionValue { - mandatory false; + type cml_data_types:CML_OSPF6_LSA_SUPRESSION_STATE_T; default "enable"; config true; } // END of ospf6LsaSuppressionValue definition. leaf fastRerouteIfSet { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of fastRerouteIfSet definition. leaf ifAreaId { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of ifAreaId definition. leaf ifProcessTag { - mandatory false; + type cml_data_types:CML_STRING_T; default ""; config true; @@ -2007,187 +2006,187 @@ submodule ospf6 { } // END of ifProcessTag definition. leaf ifProcessTagPresent { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ifProcessTagPresent definition. leaf ifState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ifState definition. leaf ifIndex { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of ifIndex definition. leaf ipAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ipAddr definition. leaf ipLinkLocalAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ipLinkLocalAddr definition. leaf ipLinkAddr { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of ipLinkAddr definition. leaf interfaceProcessTag { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of interfaceProcessTag definition. leaf interfaceAreaId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of interfaceAreaId definition. leaf interfaceRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of interfaceRouterId definition. leaf interfaceInstanceId { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of interfaceInstanceId definition. leaf stateChange { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of stateChange definition. leaf neighborCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of neighborCount definition. leaf adjNeighborCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of adjNeighborCount definition. leaf designatedRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of designatedRouterId definition. leaf backupDesignatedRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of backupDesignatedRouterId definition. leaf interfaceIfType { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of interfaceIfType definition. leaf interfaceIfCost { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of interfaceIfCost definition. leaf interfaceTeMetric { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of interfaceTeMetric definition. leaf interfaceTransmitDelay { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of interfaceTransmitDelay definition. leaf interfaceFsmState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of interfaceFsmState definition. leaf interfaceIfPriority { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of interfaceIfPriority definition. leaf interfaceHelloInterval { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of interfaceHelloInterval definition. leaf interfaceIfPassiveState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of interfaceIfPassiveState definition. leaf interfaceDeadInterval { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of interfaceDeadInterval definition. leaf interfaceRetransmitInterval { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of interfaceRetransmitInterval definition. leaf interfaceHelloDueIn { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of interfaceHelloDueIn definition. leaf interfaceStateChange { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of interfaceStateChange definition. leaf interfaceNeighborCount { - mandatory false; + type cml_data_types:CML_INT32_T; config false; } // END of interfaceNeighborCount definition. leaf isInterfaceType { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isInterfaceType definition. leaf isIfLoopBackType { - mandatory false; + type cml_data_types:CML_BOOL_T; config false; } // END of isIfLoopBackType definition. leaf intName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of intName definition. @@ -2204,13 +2203,13 @@ submodule ospf6 { leaf ospf6NeighborAddr { - mandatory true; + type cml_data_types:CML_IPV6_ADDR_T; config true; } // END of ospf6NeighborAddr definition. leaf ospf6IfNbrCost { - mandatory false; + type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -2220,7 +2219,7 @@ submodule ospf6 { } // END of ospf6IfNbrCost definition. leaf ospf6IfNbrPollInterval { - mandatory false; + type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -2229,7 +2228,7 @@ submodule ospf6 { } // END of ospf6IfNbrPollInterval definition. leaf ospf6IfNbrPriority { - mandatory false; + type cml_data_types:CML_INT32_T { range "0..255"; } @@ -2255,13 +2254,13 @@ submodule ospf6 { leaf vrId { - mandatory true; + type cml_data_types:CML_UINT32_T; config true; } // END of vrId definition. leaf gracePeriod { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..1800"; } @@ -2271,38 +2270,38 @@ submodule ospf6 { } // END of gracePeriod definition. leaf gracefulRestartPlanned { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "graceful-restart ospfv3 planned-only"; } // END of gracefulRestartPlanned definition. leaf ospf6RouterSingleline { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6RouterSingleline definition. leaf ospf6Debug { - mandatory false; + type cml_data_types:CML_OSPF6_DEBUG_T; config true; } // END of ospf6Debug definition. leaf isDebug { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of isDebug definition. leaf ospf6Packet { - mandatory false; + type cml_data_types:CML_OSPF6_DEBUG_PACKET_TYPE_T; config true; } // END of ospf6Packet definition. leaf ospf6PacketDebug { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; } // END of ospf6PacketDebug definition. @@ -2315,21 +2314,21 @@ submodule ospf6 { "restartConfig"; leaf never { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "ipv6 ospf restart helper never"; } // END of never definition. leaf nbrRouterId { - mandatory false; + type cml_data_types:CML_STRING_T; config true; description "ipv6 ospf restart helper never router-id"; } // END of nbrRouterId definition. leaf restartAll { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "ipv6 ospf restart helper never router-id all"; @@ -2344,21 +2343,21 @@ submodule ospf6 { "restartAllConfig"; leaf onlyReload { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "ipv6 ospf restart helper only-reload"; } // END of onlyReload definition. leaf onlyUpgrade { - mandatory false; + type cml_data_types:CML_BOOL_T; config true; description "ipv6 ospf restart helper only-upgrade"; } // END of onlyUpgrade definition. leaf restartHelperPeriod { - mandatory false; + type cml_data_types:CML_INT32_T { range "1..1800"; } @@ -2384,17 +2383,15 @@ submodule ospf6 { leaf vrId { - mandatory true; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_UINT32_T; + config true; } // END of vrId definition. leaf vrfName { - mandatory false; - type leafref { - path "/vr/vrf/vrfName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of vrfName definition. } // End of ospf6Vrf-list diff --git a/yang-files/rib.yang b/yang-files/rib.yang index c40afb70..74191c70 100644 --- a/yang-files/rib.yang +++ b/yang-files/rib.yang @@ -23,8 +23,8 @@ submodule rib { prefix cml_data_types; } - revision "2015-10-08" { - description "Revisied on 2015-10-08."; } + revision "2016-09-15" { + description "Revisied on 2016-09-15."; } @@ -41,13 +41,12 @@ submodule rib { leaf vrId { mandatory true; - type leafref { - path "/vr/vrId"; - } + type cml_data_types:CML_INT32_T; + config true; } // END of vrId definition. leaf ipv4DestinationPrefixAddr { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of ipv4DestinationPrefixAddr definition. @@ -64,7 +63,7 @@ submodule rib { leaf ipGatewayStr { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of ipGatewayStr definition. @@ -104,7 +103,7 @@ submodule rib { leaf ifName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of ifName definition. @@ -149,13 +148,12 @@ submodule rib { leaf vrId { mandatory true; - type leafref { - path "/vr/vrId"; - } + type cml_data_types:CML_INT32_T; + config true; } // END of vrId definition. leaf ipv6DestinationPrefixAddr { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of ipv6DestinationPrefixAddr definition. @@ -172,7 +170,7 @@ submodule rib { leaf ipv6GatewayStr { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of ipv6GatewayStr definition. @@ -198,7 +196,7 @@ submodule rib { leaf ifName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of ifName definition. @@ -229,20 +227,18 @@ submodule rib { leaf vrId { mandatory true; - type leafref { - path "/vr/vrId"; - } + type cml_data_types:CML_INT32_T; + config true; } // END of vrId definition. leaf vrfName { - mandatory true; - type leafref { - path "/vr/vrf/vrfName"; - } + + type cml_data_types:CML_STRING_T; + config true; } // END of vrfName definition. leaf mrouteIfIndex { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of mrouteIfIndex definition. @@ -259,7 +255,7 @@ submodule rib { leaf mrouteIpv4Prefix { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of mrouteIpv4Prefix definition. @@ -303,7 +299,7 @@ submodule rib { leaf mrouteIpv6Prefix { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of mrouteIpv6Prefix definition. diff --git a/yang-files/vlan.yang b/yang-files/vlan.yang index fdf552f0..dedb7026 100644 --- a/yang-files/vlan.yang +++ b/yang-files/vlan.yang @@ -22,8 +22,8 @@ submodule vlan { prefix cml_data_types; } - revision "2015-10-08" { - description "Revisied on 2015-10-08."; } + revision "2016-09-15" { + description "Revisied on 2016-09-15."; } @@ -39,21 +39,22 @@ submodule vlan { leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_INT32_T; + default "0"; + config true; } // END of vrId definition. leaf bridgeId { - mandatory false; - type leafref { - path "/vr/bridge/bridgeId"; + + type cml_data_types:CML_STRING_T { + length "1..32"; } + config true; } // END of bridgeId definition. leaf vlanId { - mandatory true; + type cml_data_types:CML_UINT16_T { range "2..4094"; } @@ -61,7 +62,7 @@ submodule vlan { } // END of vlanId definition. leaf vlanName { - mandatory false; + type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -75,45 +76,45 @@ submodule vlan { } // END of vlanState definition. leaf vlanType { - mandatory false; + type cml_data_types:CML_VLAN_TYPE_T; default "custmor"; config true; } // END of vlanType definition. leaf mtuVal { - mandatory false; + type cml_data_types:CML_UINT32_T; default "1500"; config true; } // END of mtuVal definition. leaf bridgeName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of bridgeName definition. leaf vlanRuntimeName { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlanRuntimeName definition. leaf vlanRuntimeState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlanRuntimeState definition. leaf vlanHwState { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of vlanHwState definition. leaf taggedInterface { - mandatory false; + type cml_data_types:CML_STRING_T; config false; } // END of taggedInterface definition. diff --git a/yang-files/vlaninterface.yang b/yang-files/vlaninterface.yang index a51b95ef..8e2a5a46 100644 --- a/yang-files/vlaninterface.yang +++ b/yang-files/vlaninterface.yang @@ -25,8 +25,8 @@ submodule vlaninterface { prefix cml_data_types; } - revision "2015-10-08" { - description "Revisied on 2015-10-08."; } + revision "2016-09-15" { + description "Revisied on 2016-09-15."; } @@ -42,17 +42,17 @@ submodule vlaninterface { leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_INT32_T; + default "0"; + config true; } // END of vrId definition. leaf ifName { - mandatory true; - type leafref { - path "/vr/interface/ifName"; - } + + type cml_data_types:CML_STRING_T; + config true; + description "switchport mode"; } // END of ifName definition. leaf vlanPortMode { @@ -62,7 +62,7 @@ submodule vlaninterface { } // END of vlanPortMode definition. leaf vlanPortIngressFilter { - mandatory false; + type cml_data_types:CML_ENABLE_DISABLE_T; default "enable"; config true; @@ -70,7 +70,7 @@ submodule vlaninterface { } // END of vlanPortIngressFilter definition. leaf frameType { - mandatory false; + type cml_data_types:CML_VLAN_FRAME_TYPE_T; default "all"; config true; @@ -89,7 +89,7 @@ submodule vlaninterface { leaf vlanIdMac { - mandatory false; + type cml_data_types:CML_UINT16_T { range "2..4096"; } @@ -97,27 +97,29 @@ submodule vlaninterface { } // END of vlanIdMac definition. leaf bridgeId { - mandatory false; - type leafref { - path "/vr/bridge/bridgeId"; + + type cml_data_types:CML_STRING_T { + length "1..32"; } + config true; + description "mac Address"; } // END of bridgeId definition. leaf macAddr { - mandatory true; + type cml_data_types:CML_STRING_T; config true; description "mac Address"; } // END of macAddr definition. leaf discardForward { - mandatory false; + type cml_data_types:CML_DISCARDFORWARD_T; config true; } // END of discardForward definition. leaf priorityOverWrite { - mandatory false; + type cml_data_types:CML_UINT8_T { range "0..7"; } @@ -125,7 +127,7 @@ submodule vlaninterface { } // END of priorityOverWrite definition. leaf overMacType { - mandatory false; + type cml_data_types:CML_OVERMACTYPE_T; config true; } // END of overMacType definition. @@ -143,10 +145,10 @@ submodule vlaninterface { leaf vlanId { - mandatory true; - type leafref { - path "/vr/bridge/vlan/vlanId"; - } + + type cml_data_types:CML_UINT16_T; + config true; + description "switchport (access|hybrid|native trunk)"; } // END of vlanId definition. leaf vlanPortMode { @@ -168,7 +170,7 @@ submodule vlaninterface { leaf allowedVlanId { - mandatory true; + type cml_data_types:CML_UINT16_T; config true; description "switchport allowed (hybrid|trunk)"; @@ -181,7 +183,7 @@ submodule vlaninterface { } // END of vlanPortMode definition. leaf egrType { - mandatory false; + type cml_data_types:CML_ENABLE_DISABLE_T; config true; } // END of egrType definition. @@ -199,7 +201,7 @@ submodule vlaninterface { leaf excludeVlanId { - mandatory true; + type cml_data_types:CML_UINT16_T; config true; } // END of excludeVlanId definition. @@ -223,7 +225,7 @@ submodule vlaninterface { leaf userPriority { - mandatory true; + type cml_data_types:CML_UINT8_T { range "0..7"; } @@ -251,7 +253,7 @@ submodule vlaninterface { leaf userPriority { - mandatory true; + type cml_data_types:CML_UINT8_T { range "0..7"; } @@ -259,7 +261,7 @@ submodule vlaninterface { } // END of userPriority definition. leaf trafficClass { - mandatory false; + type cml_data_types:CML_UINT8_T { range "1..8"; } diff --git a/yang-files/vr.yang b/yang-files/vr.yang index 32689532..d95102d6 100644 --- a/yang-files/vr.yang +++ b/yang-files/vr.yang @@ -51,7 +51,7 @@ submodule vr { leaf vrId { - mandatory true; + type cml_data_types:CML_UINT32_T { range "0..255"; } @@ -59,19 +59,19 @@ submodule vr { } // END of vrId definition. leaf vrName { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of vrName definition. leaf protocol { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of protocol definition. leaf ipv6Protocol { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of ipv6Protocol definition. diff --git a/yang-files/vrf.yang b/yang-files/vrf.yang index 451ddde2..2de2e3ed 100644 --- a/yang-files/vrf.yang +++ b/yang-files/vrf.yang @@ -39,38 +39,38 @@ submodule vrf { leaf vrId { - mandatory false; - type leafref { - path "/vr/vrId"; - } + + type cml_data_types:CML_UINT32_T; + default "0"; + config true; } // END of vrId definition. leaf vrfName { - mandatory true; + type cml_data_types:CML_STRING_T; config true; } // END of vrfName definition. leaf vrfId { - mandatory false; + type cml_data_types:CML_UINT32_T; config false; } // END of vrfId definition. leaf fibId { - mandatory false; + type cml_data_types:CML_UINT8_T; config false; } // END of fibId definition. leaf description { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of description definition. leaf routerId { - mandatory false; + type cml_data_types:CML_STRING_T; config true; } // END of routerId definition. From 248d2f094448b8af182a687b63952c18c91cdf38 Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Thu, 15 Dec 2016 10:48:23 +0530 Subject: [PATCH 10/12] Updates for 1.2.4 --- mibs/CMM-CHASSIS-MIB.txt | 404 ++++++++++++++++++++++++++++----------- 1 file changed, 289 insertions(+), 115 deletions(-) diff --git a/mibs/CMM-CHASSIS-MIB.txt b/mibs/CMM-CHASSIS-MIB.txt index 016ec1e5..d54ffeed 100644 --- a/mibs/CMM-CHASSIS-MIB.txt +++ b/mibs/CMM-CHASSIS-MIB.txt @@ -124,13 +124,16 @@ cmmStackUnitPartNum DisplayString, cmmStackLabelRevision DisplayString, cmmStackUnitCountryCode OCTET STRING, - cmmStackUnitNum10GigEtherPorts INTEGER, - cmmStackUnitNumGigEtherPorts INTEGER, - cmmStackUnitNumFastEtherPorts INTEGER, cmmStackUnitNumFanTrays INTEGER, cmmStackUnitNumPowerSupplies INTEGER, cmmStackUnitNumPluggableModules INTEGER, + cmmStackUnitNumFastEtherPorts INTEGER, + cmmStackUnitNumGigEtherPorts INTEGER, + cmmStackUnitNum10GigEtherPorts INTEGER, + cmmStackUnitNum25GigEtherPorts INTEGER, cmmStackUnitNum40GigEtherPorts INTEGER, + cmmStackUnitNum50GigEtherPorts INTEGER, + cmmStackUnitNum100GigEtherPorts INTEGER, cmmStackUnitServiceTag DisplayString, cmmStackPlatformName DisplayString, cmmStackOnieVersion DisplayString, @@ -217,60 +220,69 @@ code" ::= { cmmStackUnitEntry 9 } - cmmStackUnitNum10GigEtherPorts OBJECT-TYPE + cmmStackUnitNumFanTrays OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION - "The number of 10G Ethernet/802.3 interfaces - in this unit." + "The number of fan trays + on the unit." ::= { cmmStackUnitEntry 10 } - cmmStackUnitNumGigEtherPorts OBJECT-TYPE + cmmStackUnitNumPowerSupplies OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION - "The number of 1G Ethernet/802.3 interfaces - in this unit." + "The number of power supplies available + to the unit." ::= { cmmStackUnitEntry 11 } - cmmStackUnitNumFastEtherPorts OBJECT-TYPE + cmmStackUnitNumPluggableModules OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION - "The number of 10/100 Ethernet/802.3 interfaces - in this unit." + "The number of pluggable modules + in the stack." ::= { cmmStackUnitEntry 12 } - cmmStackUnitNumFanTrays OBJECT-TYPE + cmmStackUnitNumFastEtherPorts OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION - "The number of fan trays - on the unit." + "The number of 100M Ethernet/802.3 interfaces + in this unit." ::= { cmmStackUnitEntry 13 } - cmmStackUnitNumPowerSupplies OBJECT-TYPE + cmmStackUnitNumGigEtherPorts OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION - "The number of power supplies available - to the unit." + "The number of 1G Ethernet/802.3 interfaces + in this unit." ::= { cmmStackUnitEntry 14 } - - cmmStackUnitNumPluggableModules OBJECT-TYPE + + cmmStackUnitNum10GigEtherPorts OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION - "The number of pluggable modules - in the stack." + "The number of 10G Ethernet/802.3 interfaces + in this unit." ::= { cmmStackUnitEntry 15 } + cmmStackUnitNum25GigEtherPorts OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of 25G Ethernet/802.3 interfaces + in this unit." + ::= { cmmStackUnitEntry 16 } + cmmStackUnitNum40GigEtherPorts OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only @@ -278,7 +290,25 @@ DESCRIPTION "The number of 40G Ethernet/802.3 interfaces in this unit." - ::= { cmmStackUnitEntry 16 } + ::= { cmmStackUnitEntry 17 } + + cmmStackUnitNum50GigEtherPorts OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of 50G Ethernet/802.3 interfaces + in this unit." + ::= { cmmStackUnitEntry 18 } + + cmmStackUnitNum100GigEtherPorts OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of 100G Ethernet/802.3 interfaces + in this unit." + ::= { cmmStackUnitEntry 19 } cmmStackUnitServiceTag OBJECT-TYPE SYNTAX DisplayString (SIZE (0..7)) @@ -286,7 +316,7 @@ STATUS current DESCRIPTION "The unit's service tag." - ::= { cmmStackUnitEntry 17 } + ::= { cmmStackUnitEntry 20 } cmmStackPlatformName OBJECT-TYPE SYNTAX DisplayString @@ -294,7 +324,7 @@ STATUS current DESCRIPTION "The unit's Platform Name." - ::= { cmmStackUnitEntry 18 } + ::= { cmmStackUnitEntry 21 } cmmStackOnieVersion OBJECT-TYPE SYNTAX DisplayString @@ -302,7 +332,7 @@ STATUS current DESCRIPTION "The unit's ONIE Version." - ::= { cmmStackUnitEntry 19 } + ::= { cmmStackUnitEntry 22 } cmmStackMfg OBJECT-TYPE SYNTAX DisplayString @@ -310,7 +340,7 @@ STATUS current DESCRIPTION "The unit's Manufacturer Name." - ::= { cmmStackUnitEntry 20 } + ::= { cmmStackUnitEntry 23 } cmmStackVendorName OBJECT-TYPE SYNTAX DisplayString @@ -318,7 +348,7 @@ STATUS current DESCRIPTION "The unit's Vendor Name." - ::= { cmmStackUnitEntry 21 } + ::= { cmmStackUnitEntry 24 } cmmStackDiagVersion OBJECT-TYPE SYNTAX DisplayString @@ -326,7 +356,7 @@ STATUS current DESCRIPTION "The unit's Diagnostic Version." - ::= { cmmStackUnitEntry 22 } + ::= { cmmStackUnitEntry 25 } cmmStackCrc32 OBJECT-TYPE SYNTAX DisplayString @@ -334,7 +364,7 @@ STATUS current DESCRIPTION "The unit's Cyclic Redundancy Check 32 Bit value." - ::= { cmmStackUnitEntry 23 } + ::= { cmmStackUnitEntry 26 } @@ -854,7 +884,7 @@ STATUS current DESCRIPTION " - Temperature value of the system + Internally measured temperature in transceiver " ::= { cmmSysPortEntry 38 } @@ -876,7 +906,7 @@ STATUS current DESCRIPTION " - Internally measured TX Bias Current. + Internally measured TX Bias Current in transceiver. " ::= { cmmSysPortEntry 40 } @@ -887,7 +917,7 @@ STATUS current DESCRIPTION " - Measured TX output power. + Measured TX output power in transceiver " ::= { cmmSysPortEntry 41 } @@ -898,7 +928,7 @@ STATUS current DESCRIPTION " - Measured RX input power. + Measured RX input power in transceiver " ::= { cmmSysPortEntry 42 } @@ -924,7 +954,8 @@ SEQUENCE { cmmSysRamFreeMem INTEGER, cmmSysRamAvailableMem INTEGER, - cmmSysRamThreshold INTEGER + cmmSysRamThreshold INTEGER, + cmmSysRamUsedMem INTEGER } cmmSysRamFreeMem OBJECT-TYPE SYNTAX INTEGER @@ -939,7 +970,7 @@ MAX-ACCESS read-only STATUS current DESCRIPTION - "CPU RAM's total memory in Kbytes." + "CPU RAM's total available memory in Kbytes." ::= { cmmSysRamEntry 2 } cmmSysRamThreshold OBJECT-TYPE @@ -953,7 +984,14 @@ and when it rises to 10% above the configured threshold.CPU utilization in percentage for last 1 minute." ::= { cmmSysRamEntry 3 } - + cmmSysRamUsedMem OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "CPU RAM's total used memory in Kbytes." + ::= { cmmSysRamEntry 4 } + cmmStackUnitUtilTable OBJECT-TYPE SYNTAX SEQUENCE OF CmmStackUnitUtilEntry @@ -974,21 +1012,22 @@ CmmStackUnitUtilEntry ::= SEQUENCE { - cmmStackUnitCpuType DisplayString, - cmmStackUnitCpuUtil1Min DisplayString, - cmmStackUnitCpuUtil5Min DisplayString, - cmmStackUnitCpuUtil15Min DisplayString, - cmmSysCpuThresholdInterval INTEGER, - cmmSysCpuThreshold INTEGER, - cmmStackUnitCpuUtilization DisplayString, + cmmStackUnitCpuProcessor DisplayString, + cmmStackUnitCpuUtil1Min DisplayString, + cmmStackUnitCpuUtil5Min DisplayString, + cmmStackUnitCpuUtil15Min DisplayString, + cmmSysCpuThresholdInterval INTEGER, + cmmSysCpuThreshold INTEGER, + cmmStackUnitCpuUtilization DisplayString, + cmmStackUnitCpuProcessorModelName DisplayString, } - cmmStackUnitCpuType OBJECT-TYPE + cmmStackUnitCpuProcessor OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION - "The type of module running on the Processor" + "The number of Online Processors Available" ::= { cmmStackUnitUtilEntry 1 } cmmStackUnitCpuUtil1Min OBJECT-TYPE @@ -996,7 +1035,7 @@ MAX-ACCESS read-only STATUS current DESCRIPTION - "CPU utilization in percentage for last 5 seconds" + "CPU utilization in percentage for last 1 minute" ::= { cmmStackUnitUtilEntry 2 } cmmStackUnitCpuUtil5Min OBJECT-TYPE @@ -1004,7 +1043,7 @@ MAX-ACCESS read-only STATUS current DESCRIPTION - "CPU utilization in percentage for last 1 minute" + "CPU utilization in percentage for last 5 minutes" ::= { cmmStackUnitUtilEntry 3 } cmmStackUnitCpuUtil15Min OBJECT-TYPE @@ -1012,7 +1051,7 @@ MAX-ACCESS read-only STATUS current DESCRIPTION - "CPU utilization in percentage for last 5 minutes." + "CPU utilization in percentage for last 15 minutes." ::= { cmmStackUnitUtilEntry 4 } cmmSysCpuThresholdInterval OBJECT-TYPE @@ -1043,6 +1082,15 @@ "Total memory usage in percentage" ::= {cmmStackUnitUtilEntry 7 } + cmmStackUnitCpuProcessorModelName OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Displays CPU processor Model Name" + ::= { cmmStackUnitUtilEntry 8 } + + -- ### Power Supply Table cmmSysPowerSupplyTable OBJECT-TYPE @@ -1091,7 +1139,15 @@ cmmSysPowerSupplyOperStatus DisplayString, cmmSysPowerSupplyType DisplayString, cmmSysHotSwapStat DisplayString, - cmmSysPSConsumption DisplayString + cmmSysPSConsumption DisplayString, + cmmSysInputPower DisplayString, + cmmSysInputVoltage DisplayString, + cmmSysOutputVoltage DisplayString, + cmmSysInputCurrent DisplayString, + cmmSysOutputCurrent DisplayString, + cmmSysPSTemperature DisplayString, + cmmSysPSFanRpm DisplayString, + cmmSysVCCAVS1V DisplayString } @@ -1297,6 +1353,70 @@ "Output Power of Power supply" ::= { cmmSysPowerSupplyEntry 25 } + cmmSysInputPower OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Input Power of Power supply" + ::= { cmmSysPowerSupplyEntry 26 } + + cmmSysInputVoltage OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Input Voltage of Power supply" + ::= { cmmSysPowerSupplyEntry 27 } + + cmmSysOutputVoltage OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Output Voltage of Power supply" + ::= { cmmSysPowerSupplyEntry 28 } + + cmmSysInputCurrent OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Input Current of Power supply" + ::= { cmmSysPowerSupplyEntry 29 } + + cmmSysOutputCurrent OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Output Current of Power supply" + ::= { cmmSysPowerSupplyEntry 30 } + + cmmSysPSTemperature OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Temperature of Power supply" + ::= { cmmSysPowerSupplyEntry 31 } + + cmmSysPSFanRpm OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Fan rpm of Power supply" + ::= { cmmSysPowerSupplyEntry 32 } + + cmmSysVCCAVS1V OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Power status of VCCAVS1V" + ::= { cmmSysPowerSupplyEntry 33 } + -- ## Fan Tray Table cmmSysFanTable OBJECT-TYPE @@ -1509,7 +1629,7 @@ MAX-ACCESS read-only STATUS current DESCRIPTION - "Status of Power led " + "Status of Locater led " ::= { cmmSysLedEntry 2 } cmmSysMasterLed OBJECT-TYPE @@ -1517,7 +1637,7 @@ MAX-ACCESS read-only STATUS current DESCRIPTION - "Status of Locator led " + "Status of Master led " ::= { cmmSysLedEntry 3 } cmmSysSystemLed OBJECT-TYPE @@ -1591,6 +1711,60 @@ module." ::= { cmmSysSwModuleEntry 2 } + + + +-- ## Stack Chip Temperature Table + cmmSysChipTemperatureTable OBJECT-TYPE + SYNTAX SEQUENCE OF CmmSysChipTemperatureEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of Temperature Entities inside board chip" + ::= { cmmSysObjects 10 } + + cmmSysChipTemperatureEntry OBJECT-TYPE + SYNTAX CmmSysChipTemperatureEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A temperature entry containing objects related to particular temp monitor in chip" + INDEX { cmmStackUnitIndex, + cmmSysChipTemperatureSensorIndex } + ::= { cmmSysChipTemperatureTable 1 } + + CmmSysChipTemperatureEntry ::= + SEQUENCE { + cmmSysChipTemperatureSensorIndex INTEGER, + cmmSysChipTemperatureValue DisplayString, + cmmSysChipTempPeakValue DisplayString + } + + cmmSysChipTemperatureSensorIndex OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents Temperature Monitor Index inside chip" + ::= { cmmSysChipTemperatureEntry 1 } + + cmmSysChipTemperatureValue OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents Temperature monitor value" + ::= { cmmSysChipTemperatureEntry 2 } + + cmmSysChipTempPeakValue OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value represents Temperature monitor peak value since last reading" + ::= { cmmSysChipTemperatureEntry 3 } + + -- -- ## Notifications -- @@ -1648,7 +1822,7 @@ } STATUS current DESCRIPTION - "Set when internal temperature exceeds high alarm level. + "Set when internal temperature of transceiver exceeds high alarm level. " ::= { cmmAlarmMibNotifications 3 } @@ -1660,7 +1834,7 @@ } STATUS current DESCRIPTION - "Set when internal temperature is below low alarm level. + "Set when internal temperature of transceiver is below low alarm level. " ::= { cmmAlarmMibNotifications 4 } @@ -1673,7 +1847,7 @@ STATUS current DESCRIPTION - "Set when internal temperature exceeds high warning level. + "Set when internal temperature of transceiver exceeds high warning level. " ::= { cmmAlarmMibNotifications 5 } @@ -1685,7 +1859,7 @@ } STATUS current DESCRIPTION - "Set when internal temperature is below low warning level + "Set when internal temperature of transceiver is below low warning level " ::= { cmmAlarmMibNotifications 6 } @@ -1697,9 +1871,9 @@ } STATUS current DESCRIPTION - "Set when internal supply voltage exceeds high alarm level. + "Set when internal supply voltage of transceiver exceeds high alarm level. " - ::= { cmmAlarmMibNotifications 7 } + ::= { cmmAlarmMibNotifications 11 } cmmAlarmVoltageLow NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1709,9 +1883,9 @@ } STATUS current DESCRIPTION - "Set when internal supply voltage is below low alarm level. + "Set when internal supply voltage of transceiver is below low alarm level. " - ::= { cmmAlarmMibNotifications 8 } + ::= { cmmAlarmMibNotifications 12 } cmmWarningVoltageHigh NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1722,9 +1896,9 @@ STATUS current DESCRIPTION - "Set when internal supply voltage exceeds high warning level. + "Set when internal supply voltage of transceiver exceeds high warning level. " - ::= { cmmAlarmMibNotifications 9 } + ::= { cmmAlarmMibNotifications 13 } cmmWarningVoltageLow NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1735,9 +1909,9 @@ STATUS current DESCRIPTION - "Set when internal supply voltage is below low warning level + "Set when internal supply voltage of transceiver is below low warning level " - ::= { cmmAlarmMibNotifications 10 } + ::= { cmmAlarmMibNotifications 14 } cmmAlarmBiasHigh NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1748,9 +1922,9 @@ STATUS current DESCRIPTION - "Set when TX Bias current exceeds high alarm level. + "Set when TX Bias current of transceiver exceeds high alarm level. " - ::= { cmmAlarmMibNotifications 11 } + ::= { cmmAlarmMibNotifications 19 } cmmAlarmBiasLow NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1761,9 +1935,9 @@ STATUS current DESCRIPTION - "Set when TX Bias current is below low alarm level. + "Set when TX Bias current of transceiver is below low alarm level. " - ::= { cmmAlarmMibNotifications 12 } + ::= { cmmAlarmMibNotifications 20 } cmmWarningBiashigh NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1774,9 +1948,9 @@ STATUS current DESCRIPTION - "Set when TX Bias current exceeds high warning level. + "Set when TX Bias current of transceiver exceeds high warning level. " - ::= { cmmAlarmMibNotifications 13 } + ::= { cmmAlarmMibNotifications 21 } cmmWarningBiasLow NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1787,9 +1961,9 @@ STATUS current DESCRIPTION - "Set when TX Bias current is below low warning level. + "Set when TX Bias current of transceiver is below low warning level. " - ::= { cmmAlarmMibNotifications 14 } + ::= { cmmAlarmMibNotifications 22 } cmmAlarmRxPowerHigh NOTIFICATION-TYPE @@ -1800,9 +1974,9 @@ } STATUS current DESCRIPTION - "Set when Received Power exceeds high alarm level. + "Set when Received Power of transceiver exceeds high alarm level. " - ::= { cmmAlarmMibNotifications 15 } + ::= { cmmAlarmMibNotifications 27 } cmmAlarmRxPowerLow NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1812,9 +1986,9 @@ } STATUS current DESCRIPTION - "Set when Received Power is below low alarm level. + "Set when Received Power of transceiver is below low alarm level. " - ::= { cmmAlarmMibNotifications 16 } + ::= { cmmAlarmMibNotifications 28 } cmmWarningRxPowerHigh NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1826,7 +2000,7 @@ DESCRIPTION "Set when Received Power exceeds high warning level. " - ::= { cmmAlarmMibNotifications 17 } + ::= { cmmAlarmMibNotifications 29 } cmmWarningRxPowerLow NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1836,9 +2010,9 @@ } STATUS current DESCRIPTION - "Set when Received Power is below low warning level. + "Set when Received Power of transceiver is below low warning level. " - ::= { cmmAlarmMibNotifications 18 } + ::= { cmmAlarmMibNotifications 30 } cmmAlarmTemperatureTooHigh NOTIFICATION-TYPE OBJECTS {cmmSysTemperatureSensorIndex, @@ -1848,7 +2022,7 @@ STATUS current DESCRIPTION "Set when Temperature will be above threshold for sensor" - ::= { cmmAlarmMibNotifications 19 } + ::= { cmmAlarmMibNotifications 35 } cmmWarningPsuInserted NOTIFICATION-TYPE OBJECTS { @@ -1858,7 +2032,7 @@ STATUS current DESCRIPTION "Set when Power supply unit is inserted" - ::= { cmmAlarmMibNotifications 20 } + ::= { cmmAlarmMibNotifications 36 } cmmWarningPsuRemoved NOTIFICATION-TYPE OBJECTS { @@ -1868,7 +2042,7 @@ STATUS current DESCRIPTION "Set when Power supply unit is Removed" - ::= { cmmAlarmMibNotifications 21 } + ::= { cmmAlarmMibNotifications 37 } cmmWarningPsuFaulty NOTIFICATION-TYPE OBJECTS { @@ -1878,7 +2052,7 @@ STATUS current DESCRIPTION "Set when Power supply unit is Faulty" - ::= { cmmAlarmMibNotifications 22 } + ::= { cmmAlarmMibNotifications 38 } cmmWarningFanTrayInserted NOTIFICATION-TYPE OBJECTS { @@ -1889,7 +2063,7 @@ STATUS current DESCRIPTION "Set when fan tray is inserted" - ::= { cmmAlarmMibNotifications 23 } + ::= { cmmAlarmMibNotifications 43 } cmmWarningFanTrayRemoved NOTIFICATION-TYPE OBJECTS { @@ -1899,8 +2073,29 @@ STATUS current DESCRIPTION "Set when fan tray is Removed" - ::= { cmmAlarmMibNotifications 24 } + ::= { cmmAlarmMibNotifications 44 } + cmmWarningFanTrayFaulty NOTIFICATION-TYPE + OBJECTS {cmmSysFanTrayNumber, + cmmSysFanIndex, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Given Fan Tray Faulty. + " + ::= { cmmAlarmMibNotifications 45 } + + cmmWarningFanTrayRecovered NOTIFICATION-TYPE + OBJECTS {cmmSysFanTrayNumber, + cmmSysFanIndex, + cmmAlarmVarString + } + STATUS current + DESCRIPTION + "Set when Given Fan Tray is recovered. + " + ::= { cmmAlarmMibNotifications 46 } cmmAlarmPowerExceed NOTIFICATION-TYPE OBJECTS { @@ -1910,7 +2105,7 @@ STATUS current DESCRIPTION "Set when Power will be above threshold" - ::= { cmmAlarmMibNotifications 25 } + ::= { cmmAlarmMibNotifications 51 } cmmAlarmTxPowerHigh NOTIFICATION-TYPE @@ -1921,9 +2116,9 @@ } STATUS current DESCRIPTION - "Set when Transferred Power exceeds high alarm level. + "Set when Transferred Power of transceiver exceeds high alarm level. " - ::= { cmmAlarmMibNotifications 26 } + ::= { cmmAlarmMibNotifications 52 } cmmAlarmTxPowerLow NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1933,9 +2128,9 @@ } STATUS current DESCRIPTION - "Set when Transferred Power is below low alarm level. + "Set when Transferred Power of transceiver is below low alarm level. " - ::= { cmmAlarmMibNotifications 27 } + ::= { cmmAlarmMibNotifications 53 } cmmWarningTxPowerHigh NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1945,9 +2140,9 @@ } STATUS current DESCRIPTION - "Set when Transferred Power exceeds high warning level. + "Set when Transferred Power of transceiver exceeds high warning level. " - ::= { cmmAlarmMibNotifications 28 } + ::= { cmmAlarmMibNotifications 54 } cmmWarningTxPowerLow NOTIFICATION-TYPE OBJECTS {cmmSysPortIndex, @@ -1957,31 +2152,10 @@ } STATUS current DESCRIPTION - "Set when Transferred Power is below low warning level. + "Set when Transferred Power of transceiver is below low warning level. " - ::= { cmmAlarmMibNotifications 29 } + ::= { cmmAlarmMibNotifications 55 } - cmmWarningFanTrayFaulty NOTIFICATION-TYPE - OBJECTS {cmmSysFanTrayNumber, - cmmSysFanIndex, - cmmAlarmVarString - } - STATUS current - DESCRIPTION - "Set when Given Fan Tray Faulty. - " - ::= { cmmAlarmMibNotifications 30 } - - cmmWarningFanTrayRecovered NOTIFICATION-TYPE - OBJECTS {cmmSysFanTrayNumber, - cmmSysFanIndex, - cmmAlarmVarString - } - STATUS current - DESCRIPTION - "Set when Given Fan Tray is recovered. - " - ::= { cmmAlarmMibNotifications 31 } END From cb91f4841c18ac32140c4de5229014dffeab57d1 Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Fri, 16 Dec 2016 15:47:56 +0530 Subject: [PATCH 11/12] Yuma file updates for 1.2.4; Build tag#OcNOS-1.2.4.142 --- yang-files/ZebOS.yang | 273 +++++- yang-files/bgp.yang | 1311 +++++++-------------------- yang-files/bridge.yang | 229 +---- yang-files/cml_data_types.yang | 240 ++++- yang-files/feature_list.yang | 166 ++++ yang-files/interface.yang | 129 +-- yang-files/l3vrrp.yang | 682 ++++++++++++++ yang-files/lacp.yang | 14 +- yang-files/lag.yang | 18 +- yang-files/lldpv2.yang | 64 +- yang-files/mstp.yang | 155 +--- yang-files/oambfd.yang | 96 +- yang-files/ospf.yang | 604 +------------ yang-files/ospfv3.yang | 1560 ++++++++++++++++++++++++++++++++ yang-files/rib.yang | 960 ++++++++++++++++---- yang-files/vlan.yang | 19 +- yang-files/vlaninterface.yang | 41 +- yang-files/vr.yang | 28 +- yang-files/vrf.yang | 11 +- 19 files changed, 4182 insertions(+), 2418 deletions(-) create mode 100644 yang-files/feature_list.yang create mode 100644 yang-files/l3vrrp.yang create mode 100644 yang-files/ospfv3.yang diff --git a/yang-files/ZebOS.yang b/yang-files/ZebOS.yang index 1b7c1fa8..e1543a7b 100644 --- a/yang-files/ZebOS.yang +++ b/yang-files/ZebOS.yang @@ -19,25 +19,27 @@ module ZebOS { prefix "ZebOS"; include bridge; - include vlan; + include ospfv3; include oambfd; - include ospf; + include rib; include lag; include mstp; + include l3vrrp; include lacp; include vr; include vrf; include interface; include lldpv2; - include ospf6; - include rib; + include ospf; include bgp; + include vlan; include vlaninterface; import cml_data_types { prefix cml_data_types; } + organization "http://www.ipinfusion.com/CMLSchema"; @@ -48,20 +50,275 @@ module ZebOS { "ZebOS Managed Object"; - revision "2016-09-15" { - description "Revisied on 2016-09-15."; } + revision "2016-10-20" { + description "Revisied on 2016-10-20."; + } uses oamMpls-grouping; uses lacpSystemPriority-grouping; + uses vrrp-grouping; + uses VrrpDebug-grouping; uses systemDetail-grouping; - uses ospfGlobal-grouping; + uses ospf6_master-grouping; + uses rib-grouping; uses vr-grouping; - uses ospf6Global-grouping; + uses ospfGlobal-grouping; uses bgpGlobal-grouping; uses bgpDebug-grouping; uses hashTableSize-grouping; + rpc ospfv3-ospf-clear { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf ospfProcess { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc ospfv3-ospf-restart-hitless { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf gracePeriod { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc ospfv3-ospf-restart { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf gracePeriod { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc ospfv3-ospf-snmp-restart { + input { + } + } + + rpc rib-clearIpRouteKernel { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc rib-clearIpKernelRoute { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc rib-clearIpv6RouteKernel { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc rib-clearIpRouteAll { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf starPrint { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rib-clearIpRoutePrefix { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf prefixAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rib-clearIpv4RouteAll { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf starPrint { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rib-clearIpv4RoutePrefix { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf prefixAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rib-clearIpv6RouteAll { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf starPrint { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rib-clearIpv6RoutePrefix { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf prefixIpv6Addr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rib-clearIpVrfRouteAll { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf starPrint { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rib-clearIpVrfRoutePrefix { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf prefixAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rib-clearIpv4VrfRouteAll { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf starPrint { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rib-clearIpv4VrfRoutePrefix { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf prefixAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rib-clearIpv6VrdRouteAll { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf starPrint { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rib-clearIpv6RoutePrefixVrf { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf prefixIpv6Addr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + rpc ospf-clear-ip-ospf-process { input { leaf vrId { diff --git a/yang-files/bgp.yang b/yang-files/bgp.yang index 5faa5ef7..0b7f3ff3 100644 --- a/yang-files/bgp.yang +++ b/yang-files/bgp.yang @@ -24,15 +24,20 @@ submodule bgp { prefix cml_data_types; } - revision "2016-06-30" { - description "Revisied on 2016-06-30."; } + import feature_list { + prefix feature_list; + } + + + revision "2016-09-15" { + description "Revisied on 2016-09-15."; + } grouping bgp-grouping { list bgp { - description "bgp"; @@ -41,13 +46,11 @@ submodule bgp { leaf vrId { - type cml_data_types:CML_UINT32_T; config true; } // END of vrId definition. leaf bgpAs { - type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -55,62 +58,38 @@ submodule bgp { } // END of bgpAs definition. leaf bgpTableVersion { - type cml_data_types:CML_INT32_T; config false; } // END of bgpTableVersion definition. leaf ntwkPrefixCount { - type cml_data_types:CML_INT32_T; config false; } // END of ntwkPrefixCount definition. leaf routerIpAddr { - type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of routerIpAddr definition. - leaf clusterId { - - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of clusterId definition. - leaf routerRunIpAddr { - type cml_data_types:CML_STRING_T; config false; } // END of routerRunIpAddr definition. - leaf clusterIdDigit { - - type cml_data_types:CML_UINT32_T { - range "1..4294967295"; - } + leaf clusterId { + type cml_data_types:CML_CLUSTER_ID_T; config true; - description "bgp cluster-id in digits"; - } // END of clusterIdDigit definition. + } // END of clusterId definition. leaf confedId { - type cml_data_types:CML_INT32_T { range "1..65535"; } config true; } // END of confedId definition. - leaf peerConfedId { - - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - config true; - } // END of peerConfedId definition. - leaf keepAlive { - type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -119,7 +98,6 @@ submodule bgp { } // END of keepAlive definition. leaf holdTime { - type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -129,7 +107,6 @@ submodule bgp { } // END of holdTime definition. leaf localPref { - type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -138,19 +115,16 @@ submodule bgp { } // END of localPref definition. leaf setGshutCapable { - type cml_data_types:CML_BOOL_T; config true; } // END of setGshutCapable definition. leaf setGshut { - type cml_data_types:CML_BOOL_T; config true; } // END of setGshut definition. leaf gshutLocalPref { - type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -159,19 +133,17 @@ submodule bgp { } // END of gshutLocalPref definition. leaf setInboundRouteFilter { - + if-feature feature_list:HAVE_VRF; type cml_data_types:CML_BOOL_T; config true; } // END of setInboundRouteFilter definition. leaf setLogNbrChanges { - type cml_data_types:CML_BOOL_T; config true; } // END of setLogNbrChanges definition. leaf scanInterval { - type cml_data_types:CML_UINT32_T { range "0..60"; } @@ -180,7 +152,6 @@ submodule bgp { } // END of scanInterval definition. leaf distance { - type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -188,28 +159,26 @@ submodule bgp { } // END of distance definition. leaf distanceSrcIp { - type cml_data_types:CML_IPV4_PREFIX_T; config true; description "administrative distance for ip source prefix"; } // END of distanceSrcIp definition. leaf distanceACLName { - type cml_data_types:CML_STRING_T; config true; description "administrative distance with access list name"; } // END of distanceACLName definition. leaf setMplsResolution { - + if-feature feature_list:HAVE_MPLS; type cml_data_types:CML_BOOL_T; config true; description "mpls lsp resolution"; } // END of setMplsResolution definition. leaf restartTime { - + if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -218,7 +187,7 @@ submodule bgp { } // END of restartTime definition. leaf stalepathTime { - + if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -227,7 +196,7 @@ submodule bgp { } // END of stalepathTime definition. leaf deferTime { - + if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -236,92 +205,77 @@ submodule bgp { } // END of deferTime definition. leaf bestpathDontCompareOriginator { - type cml_data_types:CML_BOOL_T; config true; } // END of bestpathDontCompareOriginator definition. leaf bestpathTieBreak { - type cml_data_types:CML_BOOL_T; config true; } // END of bestpathTieBreak definition. leaf ipv4Unicast { - type cml_data_types:CML_BOOL_T; config true; } // END of ipv4Unicast definition. leaf deterministicMed { - type cml_data_types:CML_BOOL_T; config true; } // END of deterministicMed definition. leaf compareMed { - type cml_data_types:CML_BOOL_T; config true; } // END of compareMed definition. leaf bestpathAspath { - type cml_data_types:CML_BOOL_T; config true; description "bgp bestpath as-path ignore"; } // END of bestpathAspath definition. leaf bestpathCompareConfed { - type cml_data_types:CML_BOOL_T; config true; } // END of bestpathCompareConfed definition. leaf bestpathCompareRouterId { - type cml_data_types:CML_BOOL_T; config true; } // END of bestpathCompareRouterId definition. leaf enforceFirst { - type cml_data_types:CML_BOOL_T; config true; } // END of enforceFirst definition. leaf externalFailover { - type cml_data_types:CML_BOOL_T; config true; } // END of externalFailover definition. leaf bgpShowTypeStr { - type cml_data_types:CML_STRING_T; config false; } // END of bgpShowTypeStr definition. leaf autoSummary { - type cml_data_types:CML_BOOL_T; config true; } // END of autoSummary definition. leaf setSyncFlag { - type cml_data_types:CML_BOOL_T; config true; } // END of setSyncFlag definition. leaf setNwSyncFlag { - type cml_data_types:CML_BOOL_T; config true; } // END of setNwSyncFlag definition. leaf localAsCount { - type cml_data_types:CML_UINT8_T { range "2..64"; } @@ -330,25 +284,22 @@ submodule bgp { } // END of localAsCount definition. leaf grstSet { - + if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_BOOL_T; config true; } // END of grstSet definition. leaf setClientReflect { - type cml_data_types:CML_BOOL_T; config true; } // END of setClientReflect definition. leaf setDampeningFlag { - type cml_data_types:CML_BOOL_T; config true; } // END of setDampeningFlag definition. leaf halfLife { - type cml_data_types:CML_UINT32_T { range "1..45"; } @@ -358,7 +309,6 @@ submodule bgp { } // END of halfLife definition. leaf reusePenalty { - type cml_data_types:CML_UINT32_T { range "1..20000"; } @@ -366,7 +316,6 @@ submodule bgp { } // END of reusePenalty definition. leaf suppressPenalty { - type cml_data_types:CML_UINT32_T { range "1..20000"; } @@ -374,7 +323,6 @@ submodule bgp { } // END of suppressPenalty definition. leaf maxSuppress { - type cml_data_types:CML_UINT32_T { range "1..255"; } @@ -383,7 +331,6 @@ submodule bgp { } // END of maxSuppress definition. leaf unreachHalfLife { - type cml_data_types:CML_UINT32_T { range "1..45"; } @@ -392,65 +339,55 @@ submodule bgp { } // END of unreachHalfLife definition. leaf dampeningRmapName { - type cml_data_types:CML_STRING_T; default "NULL"; config true; } // END of dampeningRmapName definition. leaf rfdMaxPenaltyCeil { - type cml_data_types:CML_INT32_T; default "0"; config false; } // END of rfdMaxPenaltyCeil definition. leaf rfdMinPenaltyFloor { - type cml_data_types:CML_INT32_T; default "0"; config false; } // END of rfdMinPenaltyFloor definition. leaf dampeningStr { - type cml_data_types:CML_INT32_T; config false; } // END of dampeningStr definition. leaf rfdCbStr { - type cml_data_types:CML_INT32_T; config false; } // END of rfdCbStr definition. leaf medType { - type cml_data_types:CML_BGP_MED_TYPE_T; config true; } // END of medType definition. leaf medConfedMissingAsWorst { - type cml_data_types:CML_BOOL_T; config true; description "bgp bestpath med confed missing-as-worst"; } // END of medConfedMissingAsWorst definition. leaf medMissingAsWorstConfed { - type cml_data_types:CML_BOOL_T; config true; } // END of medMissingAsWorstConfed definition. leaf gracefulReset { - type cml_data_types:CML_BOOL_T; config true; } // END of gracefulReset definition. leaf distanceEbgp { - type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -459,7 +396,6 @@ submodule bgp { } // END of distanceEbgp definition. leaf distanceIbgp { - type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -468,7 +404,6 @@ submodule bgp { } // END of distanceIbgp definition. leaf distanceLocal { - type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -478,29 +413,68 @@ submodule bgp { } // END of distanceLocal definition. leaf multipathRelax { - type cml_data_types:CML_BOOL_T; config true; } // END of multipathRelax definition. leaf tableMap { - + if-feature feature_list:HAVE_BGP_TABLE_MAP; type cml_data_types:CML_STRING_T; config true; description "bgp table-map"; } // END of tableMap definition. leaf tableMapFilter { - + if-feature feature_list:HAVE_BGP_TABLE_MAP; type cml_data_types:CML_BOOL_T; config true; description "bgp table-map filter"; } // END of tableMapFilter definition. + leaf additionalPaths { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:BGP_ADDITIONAL_PATH_TYPE_T; + config true; + description "additional paths"; + } // END of additionalPaths definition. - list multipath { + leaf addPathSelectAll { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_BOOL_T; + config true; + description "select all path"; + } // END of addPathSelectAll definition. + + leaf bestCount { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_UINT8_T { + range "2..3"; + } + config true; + description "select best path"; + } // END of bestCount definition. + + + list bgpConfed { + description + "bgpConfed"; + + config true; + key "peerConfedId"; + + + leaf peerConfedId { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + } // END of peerConfedId definition. + } // End of bgpConfed-list + + list multipath { + description "multipath"; @@ -509,37 +483,23 @@ submodule bgp { leaf bgpType { - type cml_data_types:CML_BGP_MAXPATH_T; config true; } // END of bgpType definition. - - list multipathType { - - - description - "multipathType"; - + leaf multipathsNum { + mandatory true; + type cml_data_types:CML_INT32_T { + range "2..64"; + } config true; - key "multipathsNum"; - - - leaf multipathsNum { - - type cml_data_types:CML_INT32_T { - range "2..64"; - } - config true; - description "multipath ecmp numbers for ibgp or ebgp"; - } // END of multipathsNum definition. + description "multipath ecmp numbers for ibgp or ebgp"; + } // END of multipathsNum definition. - } // End of multipathType-list } // End of multipath-list list bgpNetworkList { - description "bgpNetworkList"; @@ -548,26 +508,22 @@ submodule bgp { leaf localAddr { - type cml_data_types:CML_STRING_T; config true; } // END of localAddr definition. leaf localAddrMask { - type cml_data_types:CML_IPV4_ADDR_T; config true; description "network address with mask"; } // END of localAddrMask definition. leaf networkRmapName { - type cml_data_types:CML_STRING_T; config true; } // END of networkRmapName definition. leaf backdoor { - type cml_data_types:CML_BOOL_T; default false; config true; @@ -578,7 +534,6 @@ submodule bgp { list networkList { - description "networkList"; @@ -587,169 +542,141 @@ submodule bgp { leaf networkAddr { - type cml_data_types:CML_STRING_T; config false; } // END of networkAddr definition. leaf bgpLongerPrefixCmd { - type cml_data_types:CML_INT32_T; config false; } // END of bgpLongerPrefixCmd definition. leaf rfdFlapCount { - type cml_data_types:CML_INT32_T; config false; } // END of rfdFlapCount definition. leaf dampInfoTimes { - type cml_data_types:CML_STRING_T; config false; } // END of dampInfoTimes definition. leaf showBgpNtwkCmd { - type cml_data_types:CML_INT32_T; config false; } // END of showBgpNtwkCmd definition. leaf peerNtwkWeight { - type cml_data_types:CML_INT32_T; config false; } // END of peerNtwkWeight definition. leaf flapTimeReuseList { - type cml_data_types:CML_STRING_T; config false; } // END of flapTimeReuseList definition. leaf flapRecordDuration { - type cml_data_types:CML_STRING_T; config false; } // END of flapRecordDuration definition. leaf bgpDampPathCmd { - type cml_data_types:CML_INT32_T; config false; } // END of bgpDampPathCmd definition. leaf bgpDampFlapCmd { - type cml_data_types:CML_INT32_T; config false; } // END of bgpDampFlapCmd definition. leaf bgpIncosistentAsCmd { - type cml_data_types:CML_INT32_T; config false; } // END of bgpIncosistentAsCmd definition. leaf dampTimeToReuse { - type cml_data_types:CML_STRING_T; config false; } // END of dampTimeToReuse definition. leaf ipv4Cmd { - type cml_data_types:CML_INT32_T; config false; } // END of ipv4Cmd definition. leaf checkCidr { - type cml_data_types:CML_INT32_T; config false; } // END of checkCidr definition. leaf bgpCommunityCmd { - type cml_data_types:CML_INT32_T; config false; } // END of bgpCommunityCmd definition. leaf bgpInfoFlag { - type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoFlag definition. leaf bgpAttrMpNexthopGlobalIn { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopGlobalIn definition. leaf bgpAttrNextHop { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrNextHop definition. leaf bgpAttrMpNexthopGlobal { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopGlobal definition. leaf bgpAttrNextHopLen { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrNextHopLen definition. leaf bgpAttrMpNexthopLocal { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopLocal definition. leaf bgpUpTime { - type cml_data_types:CML_STRING_T; config false; } // END of bgpUpTime definition. leaf medFlagType { - type cml_data_types:CML_STRING_T; config false; } // END of medFlagType definition. leaf bgpMedVal { - type cml_data_types:CML_INT32_T; config false; } // END of bgpMedVal definition. leaf bgpAsPathStr { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPathStr definition. leaf bgpAsPath4BStr { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPath4BStr definition. leaf bgpAsPathOrigin { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPathOrigin definition. leaf bgpAsPath4BOrigin { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPath4BOrigin definition. @@ -758,7 +685,6 @@ submodule bgp { list bgpShowRoute { - description "bgpShowRoute"; @@ -767,314 +693,262 @@ submodule bgp { leaf networkAddrRoute { - type cml_data_types:CML_STRING_T; config false; } // END of networkAddrRoute definition. leaf ntwkPathCountRoute { - type cml_data_types:CML_INT32_T; config false; } // END of ntwkPathCountRoute definition. leaf ntwkPrefixBestPathCountRoute { - type cml_data_types:CML_INT32_T; config false; } // END of ntwkPrefixBestPathCountRoute definition. leaf noAdvertiseRoute { - type cml_data_types:CML_INT32_T; config false; } // END of noAdvertiseRoute definition. leaf noExportRoute { - type cml_data_types:CML_INT32_T; config false; } // END of noExportRoute definition. leaf localAsRoute { - type cml_data_types:CML_INT32_T; config false; } // END of localAsRoute definition. leaf suppressRoute { - type cml_data_types:CML_INT32_T; config false; } // END of suppressRoute definition. leaf advPeerGroupRoute { - type cml_data_types:CML_INT32_T; config false; } // END of advPeerGroupRoute definition. leaf advPeerAddrRoute { - type cml_data_types:CML_STRING_T; config false; } // END of advPeerAddrRoute definition. leaf advNonPeerGroupRoute { - type cml_data_types:CML_INT32_T; config false; } // END of advNonPeerGroupRoute definition. leaf advPeerGroupNameRoute { - type cml_data_types:CML_STRING_T; config false; } // END of advPeerGroupNameRoute definition. container routeShowVtyOut { - - config false; + config false; description "routeShowVtyOut"; leaf ibgpMetricRoute { - type cml_data_types:CML_INT32_T; config false; } // END of ibgpMetricRoute definition. leaf routeBgpAsPathRoute { - type cml_data_types:CML_STRING_T; config false; } // END of routeBgpAsPathRoute definition. leaf aggregateAsRoute { - type cml_data_types:CML_INT32_T; config false; } // END of aggregateAsRoute definition. leaf aggregatorAddrRoute { - type cml_data_types:CML_STRING_T; config false; } // END of aggregatorAddrRoute definition. leaf reflectorClientRoute { - type cml_data_types:CML_INT32_T; config false; } // END of reflectorClientRoute definition. leaf routeDampeningFlagRoute { - type cml_data_types:CML_BOOL_T; config false; } // END of routeDampeningFlagRoute definition. leaf historyRoute { - type cml_data_types:CML_INT32_T; config false; } // END of historyRoute definition. leaf routeAttrMpNexthopGlobalInRoute { - type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopGlobalInRoute definition. leaf routeAttrNextHopRoute { - type cml_data_types:CML_STRING_T; config false; } // END of routeAttrNextHopRoute definition. leaf routeAttrMpNexthopGlobalRoute { - type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopGlobalRoute definition. leaf routeAttrMpNexthopLocalRoute { - type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopLocalRoute definition. leaf routeAttrMpNexthopLocal1Route { - type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopLocal1Route definition. leaf nhopValidRoute { - type cml_data_types:CML_INT32_T; config false; } // END of nhopValidRoute definition. leaf routePeerAddrRoute { - type cml_data_types:CML_STRING_T; config false; } // END of routePeerAddrRoute definition. leaf originatorIdRoute { - type cml_data_types:CML_STRING_T; config false; } // END of originatorIdRoute definition. leaf originatorId1Route { - type cml_data_types:CML_STRING_T; config false; } // END of originatorId1Route definition. leaf networkRemoteAddrRoute { - type cml_data_types:CML_STRING_T; config false; } // END of networkRemoteAddrRoute definition. leaf ntwkBgpOriginRoute { - type cml_data_types:CML_STRING_T; config false; } // END of ntwkBgpOriginRoute definition. leaf routeMedFlagTypeRoute { - type cml_data_types:CML_BOOL_T; config false; } // END of routeMedFlagTypeRoute definition. leaf routeMedValRoute { - type cml_data_types:CML_INT32_T; config false; } // END of routeMedValRoute definition. leaf routeLocalPrefRoute { - type cml_data_types:CML_INT32_T; config false; } // END of routeLocalPrefRoute definition. leaf routeWeightRoute { - type cml_data_types:CML_INT32_T; config false; } // END of routeWeightRoute definition. leaf briLabelRoute { - type cml_data_types:CML_INT32_T; config false; } // END of briLabelRoute definition. leaf routeValidStateRoute { - type cml_data_types:CML_INT32_T; config false; } // END of routeValidStateRoute definition. leaf bgpInfoStaleRoute { - type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoStaleRoute definition. leaf routePeerLocalAsRoute { - type cml_data_types:CML_BOOL_T; config false; } // END of routePeerLocalAsRoute definition. leaf bgpConfedPeerRoute { - type cml_data_types:CML_INT32_T; config false; } // END of bgpConfedPeerRoute definition. leaf bgpInfoTypeRoute { - type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoTypeRoute definition. leaf ecmpMultiCandidateRoute { - type cml_data_types:CML_INT32_T; config false; } // END of ecmpMultiCandidateRoute definition. leaf multiInstalledRoute { - type cml_data_types:CML_INT32_T; config false; } // END of multiInstalledRoute definition. leaf routeSyncFlagRoute { - type cml_data_types:CML_BOOL_T; config false; } // END of routeSyncFlagRoute definition. leaf atomicAggregateRoute { - type cml_data_types:CML_INT32_T; config false; } // END of atomicAggregateRoute definition. leaf bgpInfoSelectedRoute { - type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoSelectedRoute definition. leaf routeCommNameRoute { - type cml_data_types:CML_STRING_T; config false; } // END of routeCommNameRoute definition. leaf clusterListRoute { - type cml_data_types:CML_STRING_T; config false; } // END of clusterListRoute definition. leaf routeGetPenaltyRoute { - type cml_data_types:CML_INT32_T; config false; } // END of routeGetPenaltyRoute definition. leaf routRecordTimeRoute { - type cml_data_types:CML_STRING_T; config false; } // END of routRecordTimeRoute definition. leaf routeGetFlapCountRoute { - type cml_data_types:CML_INT32_T; config false; } // END of routeGetFlapCountRoute definition. leaf routeGetReuseTimeRoute { - type cml_data_types:CML_STRING_T; config false; } // END of routeGetReuseTimeRoute definition. leaf lastUpdateRoute { - type cml_data_types:CML_STRING_T; config false; } // END of lastUpdateRoute definition. @@ -1084,7 +958,6 @@ submodule bgp { list bgpAggregateAddrList { - description "bgpAggregateAddrList"; @@ -1093,20 +966,19 @@ submodule bgp { leaf aggregateAddr { - type cml_data_types:CML_IPV4_PREFIX_T; config true; description "aggregate prefix"; } // END of aggregateAddr definition. leaf aggregateAsSet { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of aggregateAsSet definition. leaf aggregateSummOnly { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; description "aggregate-address summary-only"; @@ -1116,7 +988,6 @@ submodule bgp { list bgpRedistList { - description "bgpRedistList"; @@ -1125,20 +996,39 @@ submodule bgp { leaf redistType { - type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; config true; } // END of redistType definition. - leaf redistRmapName { - - type cml_data_types:CML_STRING_T; + + list bgpRmap { + + description + "bgpRmap"; + config true; - description "redistribute route map reference"; - } // END of redistRmapName definition. + key "redistRmapName"; - leaf redistOspfNo { + leaf redistRmapName { + type cml_data_types:CML_STRING_T; + config true; + description "redistribute route map reference"; + } // END of redistRmapName definition. + + } // End of bgpRmap-list + } // End of bgpRedistList-list + + list bgpRedistOspf { + + description + "bgpRedistOspf"; + + config true; + key "redistOspfNo"; + + + leaf redistOspfNo { type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -1146,18 +1036,27 @@ submodule bgp { description "redistribute with ospf proc Id"; } // END of redistOspfNo definition. - leaf redistOspfRmap { - - type cml_data_types:CML_STRING_T; + + list bgpRmap { + + description + "bgpRmap"; + config true; - description "redistribute with ospf proc Id and route map reference"; - } // END of redistOspfRmap definition. + key "redistOspfRmap"; - } // End of bgpRedistList-list + + leaf redistOspfRmap { + type cml_data_types:CML_STRING_T; + config true; + description "redistribute with ospf proc Id and route map reference"; + } // END of redistOspfRmap definition. + + } // End of bgpRmap-list + } // End of bgpRedistOspf-list list bgpPeerGroup { - description "bgpPeerGroup"; @@ -1166,23 +1065,15 @@ submodule bgp { leaf peerGroupName { - type cml_data_types:CML_STRING_T; config true; - } // END of peerGroupName definition. - - leaf peerGroupStr { - - type cml_data_types:CML_BOOL_T; - config true; description "neighbor peer-group"; - } // END of peerGroupStr definition. + } // END of peerGroupName definition. } // End of bgpPeerGroup-list list bgpAddressFamily { - description "bgpAddressFamily"; @@ -1191,7 +1082,6 @@ submodule bgp { leaf afi { - type cml_data_types:CML_AFI_TYPE_T; config true; } // END of afi definition. @@ -1199,7 +1089,6 @@ submodule bgp { list bgpSubAddressFamily { - description "bgpSubAddressFamily"; @@ -1208,13 +1097,11 @@ submodule bgp { leaf safi { - type cml_data_types:CML_SAFI_TYPE_T; config true; } // END of safi definition. leaf vrfName { - type cml_data_types:CML_STRING_T; default "default"; config true; @@ -1225,7 +1112,6 @@ submodule bgp { list bgpPeer { - description "bgpPeer"; @@ -1234,14 +1120,13 @@ submodule bgp { leaf peerAddr { - type cml_data_types:CML_STRING_T; config true; description "neighbor"; } // END of peerAddr definition. leaf peerAs { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -1249,29 +1134,48 @@ submodule bgp { description "Neighbors AS number"; } // END of peerAs definition. + leaf peerAdditionalPaths { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:BGP_PEER_ADDITIONAL_PATH_TYPE_T; + config true; + description "additional paths"; + } // END of peerAdditionalPaths definition. + + leaf peerAddPathSelectAll { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_BOOL_T; + config true; + description "Advertise additional path"; + } // END of peerAddPathSelectAll definition. + + leaf peerBestCount { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_UINT8_T { + range "2..3"; + } + config true; + description "Advertise best additional path"; + } // END of peerBestCount definition. + leaf setGracefulShut { - type cml_data_types:CML_BOOL_T; config true; description "neighbor g-shut"; } // END of setGracefulShut definition. leaf bgpPeerBfd { - type cml_data_types:CML_BOOL_T; config true; description "fall-over detection"; } // END of bgpPeerBfd definition. leaf peerBfdMh { - type cml_data_types:CML_BOOL_T; config true; description "bfd multihop"; } // END of peerBfdMh definition. leaf gshutTimer { - type cml_data_types:CML_UINT32_T { range "10..65535"; } @@ -1280,7 +1184,7 @@ submodule bgp { } // END of gshutTimer definition. leaf peerRestartTime { - + if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -1289,7 +1193,6 @@ submodule bgp { } // END of peerRestartTime definition. leaf peerLocalAs { - type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -1297,1113 +1200,937 @@ submodule bgp { description "neighbor local-as"; } // END of peerLocalAs definition. + leaf neighborAttrUnchanged { + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor attribute-unchanged"; + } // END of neighborAttrUnchanged definition. + leaf neighborAttrUnchangedAsPath { - type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged as-path"; } // END of neighborAttrUnchangedAsPath definition. leaf neighborAttrUnchangedNexthop { - type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged next-hop"; } // END of neighborAttrUnchangedNexthop definition. leaf neighborAttrUnchangedMed { - type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged med"; } // END of neighborAttrUnchangedMed definition. leaf neighborCapabilityGrst { - + if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_BOOL_T; config true; description "neighbor capability graceful-restart"; } // END of neighborCapabilityGrst definition. leaf maxPathIbgp { - type cml_data_types:CML_INT32_T; config false; } // END of maxPathIbgp definition. leaf asLocalCount { - type cml_data_types:CML_INT32_T; default "1"; config false; } // END of asLocalCount definition. leaf cfgMaxPathEbgp { - type cml_data_types:CML_INT32_T; config false; } // END of cfgMaxPathEbgp definition. leaf maxPathEbgp { - type cml_data_types:CML_INT32_T; config false; } // END of maxPathEbgp definition. leaf cfgMaxPathIbgp { - type cml_data_types:CML_INT32_T; config false; } // END of cfgMaxPathIbgp definition. leaf bgpRouterId { - type cml_data_types:CML_STRING_T; config false; } // END of bgpRouterId definition. leaf bgpCommunityCount { - type cml_data_types:CML_INT32_T; config false; } // END of bgpCommunityCount definition. leaf checkAfc { - type cml_data_types:CML_INT32_T; config false; } // END of checkAfc definition. leaf peerConfedIdCheck { - type cml_data_types:CML_INT32_T; config false; } // END of peerConfedIdCheck definition. leaf peerAdvExtAsnCap { - type cml_data_types:CML_INT32_T; config false; } // END of peerAdvExtAsnCap definition. leaf peerAndExtAsnCap { - type cml_data_types:CML_INT32_T; config false; } // END of peerAndExtAsnCap definition. leaf peerRecvExtAsnCap { - type cml_data_types:CML_INT32_T; config false; } // END of peerRecvExtAsnCap definition. leaf peerVrfName { - type cml_data_types:CML_STRING_T; config false; } // END of peerVrfName definition. leaf addFamilystring { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilystring definition. leaf safiUnicastAdv { - type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastAdv definition. leaf safiUnicastAnd { - type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastAnd definition. leaf safiUnicastRecv { - type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastRecv definition. leaf addFamilyMultiString { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyMultiString definition. leaf safiMulticastAdv { - type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastAdv definition. leaf safiMulticastAnd { - type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastAnd definition. leaf safiMulticastRecv { - type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastRecv definition. leaf addFamilyVPN4String { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyVPN4String definition. leaf safiVPNv4Adv { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4Adv definition. leaf safiVPNv4And { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4And definition. leaf safiVPNv4Recv { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4Recv definition. leaf addFamilyIPV6String { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyIPV6String definition. leaf safiIPV6UnicastAdv { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastAdv definition. leaf safiIPV6UnicastAnd { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastAnd definition. leaf safiIPV6UnicastRecv { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastRecv definition. leaf addFamilyMultiIPV6Str { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyMultiIPV6Str definition. leaf safiIPV6MulticastAdv { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastAdv definition. leaf safiIPV6MulticastAnd { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastAnd definition. leaf safiIPV6MulticastRecv { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastRecv definition. leaf addFamilyVPNv6Str { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyVPNv6Str definition. leaf safiVPNv6Adv { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6Adv definition. leaf safiVPNV6And { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNV6And definition. leaf safiVPNv6Recv { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6Recv definition. leaf safiVPNv6Unicast { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6Unicast definition. leaf safiVPNv4Unicast { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4Unicast definition. leaf addFamilyLabeledStr { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyLabeledStr definition. leaf safiLabeledAdv { - type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledAdv definition. leaf safiLabeledAnd { - type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledAnd definition. leaf safiLabeledRecv { - type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledRecv definition. leaf hashCommListName { - type cml_data_types:CML_STRING_T; config false; } // END of hashCommListName definition. leaf attrInfoCmd { - type cml_data_types:CML_INT32_T; config false; } // END of attrInfoCmd definition. leaf hashWeight { - type cml_data_types:CML_INT32_T; config false; } // END of hashWeight definition. leaf hashMedVal { - type cml_data_types:CML_INT32_T; config false; } // END of hashMedVal definition. leaf hashLocalPref { - type cml_data_types:CML_INT32_T; config false; } // END of hashLocalPref definition. leaf hashAsPathOrigin { - type cml_data_types:CML_STRING_T; config false; } // END of hashAsPathOrigin definition. leaf attrAspathLength { - type cml_data_types:CML_INT32_T; config false; } // END of attrAspathLength definition. leaf attrAspathStr { - type cml_data_types:CML_STRING_T; config false; } // END of attrAspathStr definition. leaf attrAspath4BLength { - type cml_data_types:CML_INT32_T; config false; } // END of attrAspath4BLength definition. leaf attrAspath4BStr { - type cml_data_types:CML_STRING_T; config false; } // END of attrAspath4BStr definition. leaf hashNtwkRefcnt { - type cml_data_types:CML_INT32_T; config false; } // END of hashNtwkRefcnt definition. leaf peerKeepAliveTime { - type cml_data_types:CML_INT32_T; config false; } // END of peerKeepAliveTime definition. leaf peerKeepAliveConf { - type cml_data_types:CML_INT32_T; config false; } // END of peerKeepAliveConf definition. leaf peerDefKeepAlive { - type cml_data_types:CML_INT32_T; config false; } // END of peerDefKeepAlive definition. leaf peerDefKeepAliveConf { - type cml_data_types:CML_INT32_T; config false; } // END of peerDefKeepAliveConf definition. leaf peerHoldTimeConf { - type cml_data_types:CML_INT32_T; config false; } // END of peerHoldTimeConf definition. leaf peerDefHoldTime { - type cml_data_types:CML_INT32_T; config false; } // END of peerDefHoldTime definition. leaf peerDefHoldTimeConf { - type cml_data_types:CML_INT32_T; config false; } // END of peerDefHoldTimeConf definition. leaf keepAliveIn { - type cml_data_types:CML_INT32_T; config false; } // END of keepAliveIn definition. leaf keepAliveOut { - type cml_data_types:CML_INT32_T; config false; } // END of keepAliveOut definition. leaf openMsgIn { - type cml_data_types:CML_INT32_T; config false; } // END of openMsgIn definition. leaf openMsgOut { - type cml_data_types:CML_INT32_T; config false; } // END of openMsgOut definition. leaf bgpAsPathCount { - type cml_data_types:CML_INT32_T; config false; } // END of bgpAsPathCount definition. leaf bgpAsPath4BCount { - type cml_data_types:CML_INT32_T; config false; } // END of bgpAsPath4BCount definition. leaf updateMsgIn { - type cml_data_types:CML_INT32_T; default "0"; config false; } // END of updateMsgIn definition. leaf updateMsgOut { - type cml_data_types:CML_INT32_T; default "0"; config false; } // END of updateMsgOut definition. leaf nextHopGlobal { - type cml_data_types:CML_STRING_T; config false; } // END of nextHopGlobal definition. leaf nextHopLocal { - type cml_data_types:CML_STRING_T; config false; } // END of nextHopLocal definition. leaf peerRemotePort { - type cml_data_types:CML_INT32_T; config false; } // END of peerRemotePort definition. leaf peerRemoteAddr { - type cml_data_types:CML_STRING_T; config false; } // END of peerRemoteAddr definition. leaf peerLocalHost { - type cml_data_types:CML_STRING_T; config false; } // END of peerLocalHost definition. leaf nextHop { - type cml_data_types:CML_STRING_T; config false; } // END of nextHop definition. leaf peerLocalPort { - type cml_data_types:CML_INT32_T; config false; } // END of peerLocalPort definition. leaf routeValidState { - type cml_data_types:CML_INT32_T; config false; } // END of routeValidState definition. leaf atomicAggregate { - type cml_data_types:CML_INT32_T; config false; } // END of atomicAggregate definition. leaf bgpInfoState { - type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoState definition. leaf bgpInfoSelected { - type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoSelected definition. leaf briLabel { - type cml_data_types:CML_INT32_T; config false; } // END of briLabel definition. leaf originatorId { - type cml_data_types:CML_STRING_T; config false; } // END of originatorId definition. leaf bgpOrigin { - type cml_data_types:CML_STRING_T; config false; } // END of bgpOrigin definition. leaf nonPeer { - type cml_data_types:CML_STRING_T; config false; } // END of nonPeer definition. leaf peerBfd { - type cml_data_types:CML_INT32_T; config false; } // END of peerBfd definition. leaf peerRemovePvtAs { - type cml_data_types:CML_BOOL_T; config true; description "neighbor remove-private-AS"; } // END of peerRemovePvtAs definition. leaf sendCommunity { - type cml_data_types:CML_BOOL_T; config true; description "neighbor send-community"; } // END of sendCommunity definition. leaf sendCommunityType { - type cml_data_types:CML_BGP_SEND_COMMU_TYPE_T; config true; description "neighbor send-community attribute"; } // END of sendCommunityType definition. leaf neighborRouteServerClient { - type cml_data_types:CML_BOOL_T; config true; description "neighbor route-server-client"; } // END of neighborRouteServerClient definition. leaf peerRouteReflector { - type cml_data_types:CML_BOOL_T; config true; description "neighbor route-reflector-client"; } // END of peerRouteReflector definition. leaf prefixListName { - type cml_data_types:CML_STRING_T; config false; } // END of prefixListName definition. leaf prefixListCount { - type cml_data_types:CML_INT32_T; config false; } // END of prefixListCount definition. leaf InboundPathPolicyConf { - type cml_data_types:CML_INT32_T; config false; } // END of InboundPathPolicyConf definition. leaf OutboundPathPolicyConf { - type cml_data_types:CML_INT32_T; config false; } // END of OutboundPathPolicyConf definition. leaf filterInPlistName { - type cml_data_types:CML_STRING_T; config false; } // END of filterInPlistName definition. leaf filterOutPlistName { - type cml_data_types:CML_STRING_T; config false; } // END of filterOutPlistName definition. leaf filterInDlistName { - type cml_data_types:CML_STRING_T; config false; } // END of filterInDlistName definition. leaf filterOutDlistName { - type cml_data_types:CML_STRING_T; config false; } // END of filterOutDlistName definition. leaf filterInAslistName { - type cml_data_types:CML_STRING_T; config false; } // END of filterInAslistName definition. leaf filterOutAslistName { - type cml_data_types:CML_STRING_T; config false; } // END of filterOutAslistName definition. leaf filterInMaplistName { - type cml_data_types:CML_STRING_T; config false; } // END of filterInMaplistName definition. leaf filterOutMaplistName { - type cml_data_types:CML_STRING_T; config false; } // END of filterOutMaplistName definition. leaf filterUsmapName { - type cml_data_types:CML_STRING_T; config false; } // END of filterUsmapName definition. leaf peerAsPathUnchanged { - type cml_data_types:CML_INT32_T; config false; } // END of peerAsPathUnchanged definition. leaf defaultSent { - type cml_data_types:CML_INT32_T; config false; } // END of defaultSent definition. leaf defaultNotSent { - type cml_data_types:CML_INT32_T; config false; } // END of defaultNotSent definition. leaf orfPrefixStr { - type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixStr definition. leaf orfPrefixSend { - type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixSend definition. leaf orfPrefixCount { - type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixCount definition. leaf orfWaitRefresh { - type cml_data_types:CML_INT32_T; config false; } // END of orfWaitRefresh definition. leaf reflectorClient { - type cml_data_types:CML_INT32_T; config false; } // END of reflectorClient definition. leaf reserverClient { - type cml_data_types:CML_INT32_T; config false; } // END of reserverClient definition. leaf softReconfig { - type cml_data_types:CML_INT32_T; config false; } // END of softReconfig definition. leaf removePrivateAs { - type cml_data_types:CML_INT32_T; config false; } // END of removePrivateAs definition. leaf advSmcap { - type cml_data_types:CML_INT32_T; config false; } // END of advSmcap definition. leaf rcvSmcap { - type cml_data_types:CML_INT32_T; config false; } // END of rcvSmcap definition. leaf advRmcap { - type cml_data_types:CML_INT32_T; config false; } // END of advRmcap definition. leaf rcvRmcap { - type cml_data_types:CML_INT32_T; config false; } // END of rcvRmcap definition. leaf afDependentCap { - type cml_data_types:CML_INT32_T; config false; } // END of afDependentCap definition. leaf peerIndex { - type cml_data_types:CML_INT32_T; config false; } // END of peerIndex definition. leaf peerOffset { - type cml_data_types:CML_INT32_T; config false; } // END of peerOffset definition. leaf peerMask { - type cml_data_types:CML_STRING_T; config false; } // END of peerMask definition. leaf bgpInfoType { - type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoType definition. leaf bgpInfoSubType { - type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoSubType definition. leaf ecmpMultiCandidate { - type cml_data_types:CML_INT32_T; config false; } // END of ecmpMultiCandidate definition. leaf multiInstalled { - type cml_data_types:CML_INT32_T; config false; } // END of multiInstalled definition. leaf flapCount { - type cml_data_types:CML_INT32_T; config false; } // END of flapCount definition. leaf peerGrstRestartOn { - type cml_data_types:CML_INT32_T; config false; } // END of peerGrstRestartOn definition. leaf peerPrefixCount { - type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixCount definition. leaf peerSendPrefixCount { - type cml_data_types:CML_INT32_T; config false; } // END of peerSendPrefixCount definition. leaf peerFlagShutDown { - type cml_data_types:CML_STRING_T; config false; } // END of peerFlagShutDown definition. leaf peerStatusFlag { - type cml_data_types:CML_STRING_T; config false; } // END of peerStatusFlag definition. leaf peerCount { - type cml_data_types:CML_INT32_T; config false; } // END of peerCount definition. leaf brdAs { - type cml_data_types:CML_INT32_T; config false; } // END of brdAs definition. leaf brdAsNum { - type cml_data_types:CML_INT32_T; config false; } // END of brdAsNum definition. leaf brdAs4 { - type cml_data_types:CML_INT32_T; config false; } // END of brdAs4 definition. leaf brdAsNum4 { - type cml_data_types:CML_INT32_T; config false; } // END of brdAsNum4 definition. leaf brdIp { - type cml_data_types:CML_STRING_T; config false; } // END of brdIp definition. leaf brdIpNum { - type cml_data_types:CML_INT32_T; config false; } // END of brdIpNum definition. leaf peerNotifyInfo { - type cml_data_types:CML_INT32_T; config false; } // END of peerNotifyInfo definition. leaf peerNotifyDirect { - type cml_data_types:CML_STRING_T; config false; } // END of peerNotifyDirect definition. leaf peerNotifyLastReset { - type cml_data_types:CML_STRING_T; config false; } // END of peerNotifyLastReset definition. leaf notifyCodeStr { - type cml_data_types:CML_STRING_T; config false; } // END of notifyCodeStr definition. leaf notifySubCodeStr { - type cml_data_types:CML_STRING_T; config false; } // END of notifySubCodeStr definition. leaf bgpConnection { - type cml_data_types:CML_INT32_T; config false; } // END of bgpConnection definition. leaf nextConnectTimer { - type cml_data_types:CML_INT32_T; config false; } // END of nextConnectTimer definition. leaf peerStatusGrstRestartOn { - type cml_data_types:CML_INT32_T; config false; } // END of peerStatusGrstRestartOn definition. leaf peerStatusRestartOn { - type cml_data_types:CML_INT32_T; config false; } // END of peerStatusRestartOn definition. leaf conEstCount { - type cml_data_types:CML_INT32_T; config false; } // END of conEstCount definition. leaf conDroppedCount { - type cml_data_types:CML_INT32_T; config false; } // END of conDroppedCount definition. leaf peerPrefixOverflow { - type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixOverflow definition. leaf updateIf { - type cml_data_types:CML_STRING_T; config false; } // END of updateIf definition. leaf updateSource { - type cml_data_types:CML_STRING_T; config false; } // END of updateSource definition. leaf bpfEstUpTime { - type cml_data_types:CML_STRING_T; config false; } // END of bpfEstUpTime definition. leaf lastReadTime { - type cml_data_types:CML_STRING_T; config false; } // END of lastReadTime definition. leaf bpfState { - type cml_data_types:CML_STRING_T; config false; } // END of bpfState definition. leaf bgpLinkType { - type cml_data_types:CML_STRING_T; config false; } // END of bgpLinkType definition. leaf hopAwayCount { - type cml_data_types:CML_INT32_T; config false; } // END of hopAwayCount definition. leaf peerState { - type cml_data_types:CML_INT32_T; config false; } // END of peerState definition. leaf peerTableVersion { - type cml_data_types:CML_INT32_T; config false; } // END of peerTableVersion definition. leaf peerLocalAddr { - type cml_data_types:CML_STRING_T; config false; } // END of peerLocalAddr definition. leaf bgpConfedPeer { - type cml_data_types:CML_INT32_T; config false; } // END of bgpConfedPeer definition. leaf peerRouterId { - type cml_data_types:CML_STRING_T; config false; } // END of peerRouterId definition. leaf recvPacketCount { - type cml_data_types:CML_INT32_T; config false; } // END of recvPacketCount definition. leaf notificationIn { - type cml_data_types:CML_INT32_T; config false; } // END of notificationIn definition. leaf notificationOut { - type cml_data_types:CML_INT32_T; config false; } // END of notificationOut definition. leaf pktInQue { - type cml_data_types:CML_INT32_T; config false; } // END of pktInQue definition. leaf sentPacketCount { - type cml_data_types:CML_INT32_T; config false; } // END of sentPacketCount definition. leaf refreshRecvPacketCount { - type cml_data_types:CML_INT32_T; config false; } // END of refreshRecvPacketCount definition. leaf refreshSentPacketCount { - type cml_data_types:CML_INT32_T; config false; } // END of refreshSentPacketCount definition. leaf advertisementInterval { - type cml_data_types:CML_INT32_T; config false; } // END of advertisementInterval definition. leaf peerInTotalMsg { - type cml_data_types:CML_INT32_T; config false; } // END of peerInTotalMsg definition. leaf peerOutTotalMsg { - type cml_data_types:CML_INT32_T; config false; } // END of peerOutTotalMsg definition. leaf peerLastError { - type cml_data_types:CML_INT32_T; config false; } // END of peerLastError definition. leaf estTxns { - type cml_data_types:CML_INT32_T; config false; } // END of estTxns definition. leaf estTime { - type cml_data_types:CML_INT32_T; default "0"; config false; } // END of estTime definition. leaf inUpdateElaps { - type cml_data_types:CML_INT32_T; config false; } // END of inUpdateElaps definition. leaf peerAdminFlag { - type cml_data_types:CML_INT32_T; config true; } // END of peerAdminFlag definition. leaf connRetryInterval { - type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -2413,67 +2140,57 @@ submodule bgp { } // END of connRetryInterval definition. leaf peerHoldTimeRun { - type cml_data_types:CML_INT32_T; config false; } // END of peerHoldTimeRun definition. leaf peerKeepAliveRun { - type cml_data_types:CML_INT32_T; config false; } // END of peerKeepAliveRun definition. leaf neighborCap { - type cml_data_types:CML_INT32_T; config false; } // END of neighborCap definition. leaf peerDesc { - type cml_data_types:CML_STRING_T; config true; description "neighbor description"; } // END of peerDesc definition. leaf transparentAs { - type cml_data_types:CML_BOOL_T; config true; description "neighbor transparent-as"; } // END of transparentAs definition. leaf transparentNexthop { - type cml_data_types:CML_BOOL_T; config true; description "neighbor transparent-nexthop"; } // END of transparentNexthop definition. leaf sendLabel { - type cml_data_types:CML_BOOL_T; config true; description "neighbor send-label"; } // END of sendLabel definition. leaf sendLabelExplicitNull { - type cml_data_types:CML_BOOL_T; config true; description "neighbor send-label explicit-null"; } // END of sendLabelExplicitNull definition. leaf timeToLive { - type cml_data_types:CML_BOOL_T; config true; description "neighbor ebgp-multihop"; } // END of timeToLive definition. leaf maxHopCount { - type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -2483,7 +2200,6 @@ submodule bgp { } // END of maxHopCount definition. leaf peerConnectInterval { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -2493,7 +2209,6 @@ submodule bgp { } // END of peerConnectInterval definition. leaf peerAsorigInterval { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -2503,7 +2218,6 @@ submodule bgp { } // END of peerAsorigInterval definition. leaf peerRaInterval { - type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -2513,7 +2227,7 @@ submodule bgp { } // END of peerRaInterval definition. leaf password { - + if-feature feature_list:HAVE_TCP_MD5SIG; type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -2521,76 +2235,64 @@ submodule bgp { } // END of password definition. leaf dynamicCapability { - type cml_data_types:CML_BOOL_T; config true; description "neighbor capability dynamic"; } // END of dynamicCapability definition. leaf advertisedCapability { - type cml_data_types:CML_INT32_T; config false; } // END of advertisedCapability definition. leaf andCapability { - type cml_data_types:CML_INT32_T; config false; } // END of andCapability definition. leaf receivedCapability { - type cml_data_types:CML_INT32_T; config false; } // END of receivedCapability definition. leaf capabilityRouteRefresh { - type cml_data_types:CML_BOOL_T; config true; description "neighbor capability route-refresh"; } // END of capabilityRouteRefresh definition. leaf advCapabilityRefresh { - type cml_data_types:CML_INT32_T; config false; } // END of advCapabilityRefresh definition. leaf andCapabilityRefresh { - type cml_data_types:CML_INT32_T; config false; } // END of andCapabilityRefresh definition. leaf recvCapabilityRefresh { - type cml_data_types:CML_INT32_T; config false; } // END of recvCapabilityRefresh definition. leaf oldCapabilityRefresh { - type cml_data_types:CML_INT32_T; config false; } // END of oldCapabilityRefresh definition. leaf newCapabilityRefresh { - type cml_data_types:CML_INT32_T; config false; } // END of newCapabilityRefresh definition. leaf collideEstablished { - type cml_data_types:CML_BOOL_T; config true; description "neighbor collide-established"; } // END of collideEstablished definition. leaf sourceId { - type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -2598,62 +2300,53 @@ submodule bgp { } // END of sourceId definition. leaf enforceMultihop { - type cml_data_types:CML_BOOL_T; config true; description "neighbor enforce-multihop"; } // END of enforceMultihop definition. leaf neighborOverrideCapability { - type cml_data_types:CML_BOOL_T; config true; description "neighbor override-capability"; } // END of neighborOverrideCapability definition. leaf neighborStrictCapability { - type cml_data_types:CML_BOOL_T; config true; description "neighbor strict-capability-match"; } // END of neighborStrictCapability definition. leaf disallowHoldtimer { - type cml_data_types:CML_BOOL_T; config true; description "neighbor disallow-infinite-holdtime"; } // END of disallowHoldtimer definition. leaf dontCapabilityNegotiate { - type cml_data_types:CML_BOOL_T; config true; description "neighbor dont-capability-negotiate"; } // END of dontCapabilityNegotiate definition. leaf transportConnectionPassive { - type cml_data_types:CML_BOOL_T; config true; description "neighbor passive"; } // END of transportConnectionPassive definition. leaf peerShutdown { - type cml_data_types:CML_BOOL_T; config true; description "neighbor shutdown"; } // END of peerShutdown definition. leaf noIfBinding { - type cml_data_types:CML_INT32_T; config false; } // END of noIfBinding definition. leaf bgpPort { - type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -2663,7 +2356,6 @@ submodule bgp { } // END of bgpPort definition. leaf bgpVersion { - type cml_data_types:CML_UINT8_T; default "4"; config true; @@ -2671,21 +2363,18 @@ submodule bgp { } // END of bgpVersion definition. leaf peerIfName { - type cml_data_types:CML_STRING_T; config true; description "neighbor interface"; } // END of peerIfName definition. leaf softReconfigInbound { - type cml_data_types:CML_BOOL_T; config true; description "neighbor soft-reconfiguration inbound"; } // END of softReconfigInbound definition. leaf weight { - type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -2695,7 +2384,6 @@ submodule bgp { } // END of weight definition. leaf maxPrefixes { - type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -2703,31 +2391,34 @@ submodule bgp { description "neighbor maximum-prefix"; } // END of maxPrefixes definition. + leaf stopUpdate { + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor maximum-prefix stop-update"; + } // END of stopUpdate definition. + leaf maxPrefixeWarning { - type cml_data_types:CML_BOOL_T; config true; description "neighbor maximum-prefix warning"; } // END of maxPrefixeWarning definition. leaf threshold { - type cml_data_types:CML_UINT8_T { range "1..100"; } + default "75"; config true; description "neighbor maximum-prefix threshold value percent"; } // END of threshold definition. leaf warning { - type cml_data_types:CML_BOOL_T; config true; description "neighbor maximum-prefix threshold warning"; } // END of warning definition. leaf allowAsNum { - type cml_data_types:CML_UINT32_T { range "1..10"; } @@ -2737,107 +2428,91 @@ submodule bgp { } // END of allowAsNum definition. leaf aclInfo { - type cml_data_types:CML_STRING_T; config true; } // END of aclInfo definition. leaf distributeListDirection { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor distribute-list"; } // END of distributeListDirection definition. leaf prefixListAclInfo { - type cml_data_types:CML_STRING_T; config true; } // END of prefixListAclInfo definition. leaf prefixListDirection { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor prefix-list"; } // END of prefixListDirection definition. leaf asListAclInfo { - type cml_data_types:CML_STRING_T; config true; } // END of asListAclInfo definition. leaf asListDirection { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor filter-list"; } // END of asListDirection definition. leaf peerGroupTag { - type cml_data_types:CML_STRING_T; config true; description "to add a neighbor to an existing peer-group"; } // END of peerGroupTag definition. leaf peerActivate { - type cml_data_types:CML_BOOL_T; config true; description "neighbor activate"; } // END of peerActivate definition. leaf unSuppressAclInfo { - type cml_data_types:CML_STRING_T; config true; description "neighbor unsuppress-map"; } // END of unSuppressAclInfo definition. leaf peerRmapOriName { - type cml_data_types:CML_STRING_T; config true; description "neighbor default-originate router-map"; } // END of peerRmapOriName definition. leaf defaultPeerRmapName { - type cml_data_types:CML_BOOL_T; config true; description "neighbor default-originate"; } // END of defaultPeerRmapName definition. leaf orfPrefixOpt { - type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; config true; } // END of orfPrefixOpt definition. leaf setNcpFlag { - type cml_data_types:CML_BOOL_T; config true; description "neighbor orf prefix-list"; } // END of setNcpFlag definition. leaf peerRmapName { - type cml_data_types:CML_STRING_T; config true; } // END of peerRmapName definition. leaf peerRmapDirection { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor route-map"; } // END of peerRmapDirection definition. leaf peerKeepAlive { - type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -2846,7 +2521,6 @@ submodule bgp { } // END of peerKeepAlive definition. leaf peerHoldTime { - type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -2856,7 +2530,6 @@ submodule bgp { } // END of peerHoldTime definition. leaf nextHopSelf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor next-hop-self"; @@ -2865,7 +2538,6 @@ submodule bgp { list peerPrefix { - description "peerPrefix"; @@ -2874,31 +2546,26 @@ submodule bgp { leaf prefixEntrySeq { - type cml_data_types:CML_INT32_T; config false; } // END of prefixEntrySeq definition. leaf prefixEntryType { - type cml_data_types:CML_STRING_T; config false; } // END of prefixEntryType definition. leaf prefixEntryGe { - type cml_data_types:CML_INT32_T; config false; } // END of prefixEntryGe definition. leaf prefixEntryLe { - type cml_data_types:CML_INT32_T; config false; } // END of prefixEntryLe definition. leaf peerPrefixLen { - type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixLen definition. @@ -2907,7 +2574,6 @@ submodule bgp { list peerAdjRoute { - description "peerAdjRoute"; @@ -2916,115 +2582,96 @@ submodule bgp { leaf peerNetworkAddr { - type cml_data_types:CML_STRING_T; config false; } // END of peerNetworkAddr definition. leaf adjRouteOutCmd { - type cml_data_types:CML_INT32_T; config false; } // END of adjRouteOutCmd definition. leaf adjRouteInCmd { - type cml_data_types:CML_INT32_T; config false; } // END of adjRouteInCmd definition. leaf peerFlapCount { - type cml_data_types:CML_INT32_T; config false; } // END of peerFlapCount definition. leaf peerBgpTableVersion { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpTableVersion definition. leaf peerBgpInfoFlag { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpInfoFlag definition. leaf peerBgpAttrMpNexthopGlobalIn { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopGlobalIn definition. leaf peerBgpAttrNextHop { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrNextHop definition. leaf peerBgpAttrNextHopLen { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrNextHopLen definition. leaf peerBgpAttrMpNexthopGlobal { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopGlobal definition. leaf peerBgpAttrMpNexthopLocal { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopLocal definition. leaf peerBgpUpTime { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpUpTime definition. leaf peerMedFlagType { - type cml_data_types:CML_STRING_T; config false; } // END of peerMedFlagType definition. leaf peerBgpMedVal { - type cml_data_types:CML_INT32_T; config false; } // END of peerBgpMedVal definition. leaf peerBgpAsPathStr { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPathStr definition. leaf peerBgpAsPath4BStr { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPath4BStr definition. leaf peerBgpAsPathOrigin { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPathOrigin definition. leaf peerBgpAsPath4BOrigin { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPath4BOrigin definition. leaf peerNetwkWeight { - type cml_data_types:CML_INT32_T; config false; } // END of peerNetwkWeight definition. @@ -3033,7 +2680,6 @@ submodule bgp { list bgpPeerAddressFamily { - description "bgpPeerAddressFamily"; @@ -3042,7 +2688,6 @@ submodule bgp { leaf afi { - type cml_data_types:CML_AFI_TYPE_T; config true; } // END of afi definition. @@ -3050,7 +2695,6 @@ submodule bgp { list bgpPeerSubAddressFamily { - description "bgpPeerSubAddressFamily"; @@ -3059,945 +2703,811 @@ submodule bgp { leaf safi { - type cml_data_types:CML_SAFI_TYPE_T; config true; } // END of safi definition. + leaf peerAdditionalPathsAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:BGP_PEER_ADDITIONAL_PATH_TYPE_T; + config true; + description "additional paths for address-family"; + } // END of peerAdditionalPathsAf definition. + + leaf peerAddPathSelectAllAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_BOOL_T; + config true; + description "Advertise additional path for address-family"; + } // END of peerAddPathSelectAllAf definition. + + leaf peerBestCountAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_UINT8_T { + range "2..3"; + } + config true; + description "Advertise best additional path for address-family"; + } // END of peerBestCountAf definition. + leaf nextHopSelfAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor next-hop-self for address family"; } // END of nextHopSelfAf definition. leaf peerHoldTimeRunAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerHoldTimeRunAf definition. leaf peerKeepAliveRunAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerKeepAliveRunAf definition. leaf noIfBindingAf { - type cml_data_types:CML_INT32_T; config false; } // END of noIfBindingAf definition. leaf peerConfedIdCheckAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerConfedIdCheckAf definition. leaf peerAdvExtAsnCapAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerAdvExtAsnCapAf definition. leaf peerAndExtAsnCapAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerAndExtAsnCapAf definition. leaf peerRecvExtAsnCapAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerRecvExtAsnCapAf definition. leaf addFamilystringAf { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilystringAf definition. leaf safiUnicastAdvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastAdvAf definition. leaf safiUnicastAndAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastAndAf definition. leaf safiUnicastRecvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiUnicastRecvAf definition. leaf addFamilyMultiStringAf { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyMultiStringAf definition. leaf safiMulticastAdvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastAdvAf definition. leaf safiMulticastAndAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastAndAf definition. leaf safiMulticastRecvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiMulticastRecvAf definition. leaf addFamilyVPN4StringAf { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyVPN4StringAf definition. leaf safiVPNv4AdvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4AdvAf definition. leaf safiVPNv4AndAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4AndAf definition. leaf safiVPNv4RecvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4RecvAf definition. leaf addFamilyIPV6StringAf { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyIPV6StringAf definition. leaf safiIPV6UnicastAdvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastAdvAf definition. leaf safiIPV6UnicastAndAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastAndAf definition. leaf safiIPV6UnicastRecvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6UnicastRecvAf definition. leaf addFamilyMultiIPV6StrAf { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyMultiIPV6StrAf definition. leaf safiIPV6MulticastAdvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastAdvAf definition. leaf safiIPV6MulticastAndAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastAndAf definition. leaf safiIPV6MulticastRecvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiIPV6MulticastRecvAf definition. leaf addFamilyVPNv6StrAf { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyVPNv6StrAf definition. leaf safiVPNv6AdvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6AdvAf definition. leaf safiVPNV6AndAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNV6AndAf definition. leaf safiVPNv6RecvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6RecvAf definition. leaf safiVPNv6UnicastAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv6UnicastAf definition. leaf safiVPNv4UnicastAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiVPNv4UnicastAf definition. leaf addFamilyLabeledStrAf { - type cml_data_types:CML_INT32_T; config false; } // END of addFamilyLabeledStrAf definition. leaf safiLabeledAdvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledAdvAf definition. leaf safiLabeledAndAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledAndAf definition. leaf safiLabeledRecvAf { - type cml_data_types:CML_INT32_T; config false; } // END of safiLabeledRecvAf definition. leaf peerVrfNameAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerVrfNameAf definition. leaf sendExtCommunityAf { - type cml_data_types:CML_INT32_T; config false; } // END of sendExtCommunityAf definition. leaf maxPrefixesWarningAf { - type cml_data_types:CML_INT32_T; config false; } // END of maxPrefixesWarningAf definition. leaf fwdStatusPreserveAf { - type cml_data_types:CML_INT32_T; config false; } // END of fwdStatusPreserveAf definition. leaf grstRestartAf { - type cml_data_types:CML_INT32_T; config false; } // END of grstRestartAf definition. leaf grstAdvAf { - type cml_data_types:CML_INT32_T; config false; } // END of grstAdvAf definition. leaf grstRecvAf { - type cml_data_types:CML_STRING_T; config false; } // END of grstRecvAf definition. leaf peerBgpTableVersionAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpTableVersionAf definition. leaf checkAfcAf { - type cml_data_types:CML_INT32_T; config false; } // END of checkAfcAf definition. leaf keepAliveInAf { - type cml_data_types:CML_INT32_T; config false; } // END of keepAliveInAf definition. leaf keepAliveOutAf { - type cml_data_types:CML_INT32_T; config false; } // END of keepAliveOutAf definition. leaf openMsgInAf { - type cml_data_types:CML_INT32_T; config false; } // END of openMsgInAf definition. leaf openMsgOutAf { - type cml_data_types:CML_INT32_T; config false; } // END of openMsgOutAf definition. leaf updateMsgInAf { - type cml_data_types:CML_INT32_T; config false; } // END of updateMsgInAf definition. leaf updateMsgOutAf { - type cml_data_types:CML_INT32_T; config false; } // END of updateMsgOutAf definition. leaf nextHopGlobalAf { - type cml_data_types:CML_STRING_T; config false; } // END of nextHopGlobalAf definition. leaf nextHopLocalAf { - type cml_data_types:CML_STRING_T; config false; } // END of nextHopLocalAf definition. leaf peerRemotePortAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerRemotePortAf definition. leaf peerRemoteAddrAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerRemoteAddrAf definition. leaf peerLocalHostAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerLocalHostAf definition. leaf nextHopAf { - type cml_data_types:CML_STRING_T; config false; } // END of nextHopAf definition. leaf peerLocalPortAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerLocalPortAf definition. leaf bgpInfoStateAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoStateAf definition. leaf briLabelAf { - type cml_data_types:CML_INT32_T; config false; } // END of briLabelAf definition. leaf bgpOriginAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpOriginAf definition. leaf advNonPeerGroupAf { - type cml_data_types:CML_INT32_T; config false; } // END of advNonPeerGroupAf definition. leaf peerBfdAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerBfdAf definition. leaf prefixListNameAf { - type cml_data_types:CML_STRING_T; config false; } // END of prefixListNameAf definition. leaf prefixListCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of prefixListCountAf definition. leaf InboundPathPolicyConfAf { - type cml_data_types:CML_INT32_T; config false; } // END of InboundPathPolicyConfAf definition. leaf OutboundPathPolicyConfAf { - type cml_data_types:CML_INT32_T; config false; } // END of OutboundPathPolicyConfAf definition. leaf filterInPlistNameAf { - type cml_data_types:CML_STRING_T; config false; } // END of filterInPlistNameAf definition. leaf filterOutPlistNameAf { - type cml_data_types:CML_STRING_T; config false; } // END of filterOutPlistNameAf definition. leaf filterInDlistNameAf { - type cml_data_types:CML_STRING_T; config false; } // END of filterInDlistNameAf definition. leaf filterOutDlistNameAf { - type cml_data_types:CML_STRING_T; config false; } // END of filterOutDlistNameAf definition. leaf filterInAslistNameAf { - type cml_data_types:CML_STRING_T; config false; } // END of filterInAslistNameAf definition. leaf filterOutAslistNameAf { - type cml_data_types:CML_STRING_T; config false; } // END of filterOutAslistNameAf definition. leaf filterInMaplistNameAf { - type cml_data_types:CML_STRING_T; config false; } // END of filterInMaplistNameAf definition. leaf filterOutMaplistNameAf { - type cml_data_types:CML_STRING_T; config false; } // END of filterOutMaplistNameAf definition. leaf filterUsmapNameAf { - type cml_data_types:CML_STRING_T; config false; } // END of filterUsmapNameAf definition. leaf peerAsPathUnchangedAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerAsPathUnchangedAf definition. leaf defaultSentAf { - type cml_data_types:CML_INT32_T; config false; } // END of defaultSentAf definition. leaf defaultNotSentAf { - type cml_data_types:CML_INT32_T; config false; } // END of defaultNotSentAf definition. leaf orfPrefixStrAf { - type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixStrAf definition. leaf orfPrefixSendAf { - type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixSendAf definition. leaf orfPrefixCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of orfPrefixCountAf definition. leaf orfWaitRefreshAf { - type cml_data_types:CML_INT32_T; config false; } // END of orfWaitRefreshAf definition. leaf routeReflectorClientAf { - type cml_data_types:CML_INT32_T; config false; } // END of routeReflectorClientAf definition. leaf reserverClientAf { - type cml_data_types:CML_INT32_T; config false; } // END of reserverClientAf definition. leaf softReconfigAf { - type cml_data_types:CML_INT32_T; config false; } // END of softReconfigAf definition. leaf removePrivateAsAf { - type cml_data_types:CML_INT32_T; config false; } // END of removePrivateAsAf definition. leaf advSmcapAf { - type cml_data_types:CML_INT32_T; config false; } // END of advSmcapAf definition. leaf rcvSmcapAf { - type cml_data_types:CML_INT32_T; config false; } // END of rcvSmcapAf definition. leaf advRmcapAf { - type cml_data_types:CML_INT32_T; config false; } // END of advRmcapAf definition. leaf rcvRmcapAf { - type cml_data_types:CML_INT32_T; config false; } // END of rcvRmcapAf definition. leaf afDependentCapAf { - type cml_data_types:CML_INT32_T; config false; } // END of afDependentCapAf definition. leaf peerIndexAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerIndexAf definition. leaf peerOffsetAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerOffsetAf definition. leaf peerMaskAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerMaskAf definition. leaf flapCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of flapCountAf definition. leaf peerGrstRestartOnAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerGrstRestartOnAf definition. leaf peerPrefixCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixCountAf definition. leaf peerSendPrefixCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerSendPrefixCountAf definition. leaf peerFlagShutDownAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerFlagShutDownAf definition. leaf peerStatusFlagAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerStatusFlagAf definition. leaf peerCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerCountAf definition. leaf brdAsAf { - type cml_data_types:CML_INT32_T; config false; } // END of brdAsAf definition. leaf brdAsNumAf { - type cml_data_types:CML_INT32_T; config false; } // END of brdAsNumAf definition. leaf brdAs4Af { - type cml_data_types:CML_INT32_T; config false; } // END of brdAs4Af definition. leaf brdAsNum4Af { - type cml_data_types:CML_INT32_T; config false; } // END of brdAsNum4Af definition. leaf brdIpAf { - type cml_data_types:CML_STRING_T; config false; } // END of brdIpAf definition. leaf brdIpNumAf { - type cml_data_types:CML_INT32_T; config false; } // END of brdIpNumAf definition. leaf peerNotifyInfoAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerNotifyInfoAf definition. leaf peerNotifyDirectAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerNotifyDirectAf definition. leaf peerNotifyLastResetAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerNotifyLastResetAf definition. leaf notifyCodeStrAf { - type cml_data_types:CML_STRING_T; config false; } // END of notifyCodeStrAf definition. leaf notifySubCodeStrAf { - type cml_data_types:CML_STRING_T; config false; } // END of notifySubCodeStrAf definition. leaf bgpConnectionAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpConnectionAf definition. leaf nextConnectTimerAf { - type cml_data_types:CML_INT32_T; config false; } // END of nextConnectTimerAf definition. leaf peerStatusGrstRestartOnAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerStatusGrstRestartOnAf definition. leaf peerStatusRestartOnAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerStatusRestartOnAf definition. leaf conEstCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of conEstCountAf definition. leaf conDroppedCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of conDroppedCountAf definition. leaf peerPrefixOverflowAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixOverflowAf definition. leaf updateIfAf { - type cml_data_types:CML_STRING_T; config false; } // END of updateIfAf definition. leaf updateSourceAf { - type cml_data_types:CML_STRING_T; config false; } // END of updateSourceAf definition. leaf bpfEstUpTimeAf { - type cml_data_types:CML_STRING_T; config false; } // END of bpfEstUpTimeAf definition. leaf lastReadTimeAf { - type cml_data_types:CML_STRING_T; config false; } // END of lastReadTimeAf definition. leaf bpfStateAf { - type cml_data_types:CML_STRING_T; config false; } // END of bpfStateAf definition. leaf bgpLinkTypeAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpLinkTypeAf definition. leaf hopAwayCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of hopAwayCountAf definition. leaf peerStateAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerStateAf definition. leaf peerTableVersionAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerTableVersionAf definition. leaf peerLocalAddrAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerLocalAddrAf definition. leaf peerRouterIdAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerRouterIdAf definition. leaf recvPacketCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of recvPacketCountAf definition. leaf notificationInAf { - type cml_data_types:CML_INT32_T; config false; } // END of notificationInAf definition. leaf notificationOutAf { - type cml_data_types:CML_INT32_T; config false; } // END of notificationOutAf definition. leaf pktInQueAf { - type cml_data_types:CML_INT32_T; config false; } // END of pktInQueAf definition. leaf sentPacketCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of sentPacketCountAf definition. leaf refreshRecvPacketCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of refreshRecvPacketCountAf definition. leaf refreshSentPacketCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of refreshSentPacketCountAf definition. leaf advertisementIntervalAf { - type cml_data_types:CML_INT32_T; config false; } // END of advertisementIntervalAf definition. leaf peerInTotalMsgAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerInTotalMsgAf definition. leaf peerOutTotalMsgAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerOutTotalMsgAf definition. leaf peerLastErrorAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerLastErrorAf definition. leaf estTxnsAf { - type cml_data_types:CML_INT32_T; config false; } // END of estTxnsAf definition. leaf estTimeAf { - type cml_data_types:CML_INT32_T; default "0"; config false; } // END of estTimeAf definition. leaf inUpdateElapsAf { - type cml_data_types:CML_INT32_T; config false; } // END of inUpdateElapsAf definition. leaf neighborCapAf { - type cml_data_types:CML_INT32_T; config false; } // END of neighborCapAf definition. leaf advertisedCapabilityAf { - type cml_data_types:CML_INT32_T; config false; } // END of advertisedCapabilityAf definition. leaf andCapabilityAf { - type cml_data_types:CML_INT32_T; config false; } // END of andCapabilityAf definition. leaf receivedCapabilityAf { - type cml_data_types:CML_INT32_T; config false; } // END of receivedCapabilityAf definition. leaf advCapabilityRefreshAf { - type cml_data_types:CML_INT32_T; config false; } // END of advCapabilityRefreshAf definition. leaf andCapabilityRefreshAf { - type cml_data_types:CML_INT32_T; config false; } // END of andCapabilityRefreshAf definition. leaf recvCapabilityRefreshAf { - type cml_data_types:CML_INT32_T; config false; } // END of recvCapabilityRefreshAf definition. leaf oldCapabilityRefreshAf { - type cml_data_types:CML_INT32_T; config false; } // END of oldCapabilityRefreshAf definition. leaf newCapabilityRefreshAf { - type cml_data_types:CML_INT32_T; config false; } // END of newCapabilityRefreshAf definition. @@ -4005,7 +3515,6 @@ submodule bgp { list vrfobj { - description "vrfobj"; @@ -4014,13 +3523,11 @@ submodule bgp { leaf vrfName { - type cml_data_types:CML_STRING_T; config true; } // END of vrfName definition. leaf peerAsAf { - type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -4028,8 +3535,34 @@ submodule bgp { description "neighbor autonomous system number (ASN) for address family"; } // END of peerAsAf definition. + leaf sourceIdAf { + type cml_data_types:CML_STRING_T; + default "NULL"; + config true; + description "neighbor update-source for address-family"; + } // END of sourceIdAf definition. + + leaf peerLocalAsAf { + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + config true; + description "neighbor local-as for address family"; + } // END of peerLocalAsAf definition. + + leaf sendLabelAf { + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor send-label for address-family"; + } // END of sendLabelAf definition. + + leaf sendLabelExplicitNullAf { + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor send-label explicit-null for address-family"; + } // END of sendLabelExplicitNullAf definition. + leaf bgpVersionAf { - type cml_data_types:CML_UINT8_T; default "4"; config true; @@ -4037,7 +3570,6 @@ submodule bgp { } // END of bgpVersionAf definition. leaf peerConnectIntervalAf { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -4047,7 +3579,6 @@ submodule bgp { } // END of peerConnectIntervalAf definition. leaf peerKeepAliveAf { - type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -4056,7 +3587,6 @@ submodule bgp { } // END of peerKeepAliveAf definition. leaf peerHoldTimeAf { - type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -4066,21 +3596,18 @@ submodule bgp { } // END of peerHoldTimeAf definition. leaf enforceMultihopAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor enforce-multihop for address-family"; } // END of enforceMultihopAf definition. leaf peerShutdownAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor shutdown for address-family"; } // END of peerShutdownAf definition. leaf bgpPortAf { - type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -4090,14 +3617,12 @@ submodule bgp { } // END of bgpPortAf definition. leaf peerGroupStrAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor peer-group for address family"; } // END of peerGroupStrAf definition. leaf passwordAf { - type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -4105,14 +3630,12 @@ submodule bgp { } // END of passwordAf definition. leaf transportConnectionPassiveAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor passive for address-family"; } // END of transportConnectionPassiveAf definition. leaf maxHopCountAf { - type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -4122,21 +3645,18 @@ submodule bgp { } // END of maxHopCountAf definition. leaf timeToLiveAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor ebgp-multihop for address-family"; } // END of timeToLiveAf definition. leaf dontCapabilityNegotiateAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor dont-capability-negotiate for address-family"; } // END of dontCapabilityNegotiateAf definition. leaf connRetryIntervalAf { - type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -4146,21 +3666,18 @@ submodule bgp { } // END of connRetryIntervalAf definition. leaf capabilityRouteRefreshAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor capability route-refresh for address-family"; } // END of capabilityRouteRefreshAf definition. leaf dynamicCapabilityAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor capability dynamic for address-family"; } // END of dynamicCapabilityAf definition. leaf peerRaIntervalAf { - type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -4170,7 +3687,6 @@ submodule bgp { } // END of peerRaIntervalAf definition. leaf peerAsorigIntervalAf { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -4180,28 +3696,26 @@ submodule bgp { } // END of peerAsorigIntervalAf definition. leaf neighborAsOverrideAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor asoverride for address family"; } // END of neighborAsOverrideAf definition. leaf peerIfNameAf { - + if-feature feature_list:HAVE_VRF; type cml_data_types:CML_STRING_T; config true; description "neighbor interface for address family"; } // END of peerIfNameAf definition. leaf peerDescAf { - type cml_data_types:CML_STRING_T; config true; description "neighbor description for address family"; } // END of peerDescAf definition. leaf peerRestartTimeAf { - + if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -4210,35 +3724,30 @@ submodule bgp { } // END of peerRestartTimeAf definition. leaf peerActivateAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor activate for address family"; } // END of peerActivateAf definition. leaf defaultPeerRmapNameAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor default-originate for address family"; } // END of defaultPeerRmapNameAf definition. leaf peerRmapOriNameAf { - type cml_data_types:CML_STRING_T; config true; description "neighbor default-originate router-map for address-family"; } // END of peerRmapOriNameAf definition. leaf softReconfigInboundAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor soft-reconfiguration inbound for address family"; } // END of softReconfigInboundAf definition. leaf weightAf { - type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -4248,91 +3757,86 @@ submodule bgp { } // END of weightAf definition. leaf neighborRouteServerClientAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor route-server-client for address family"; } // END of neighborRouteServerClientAf definition. leaf peerRouteReflectorAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor route-reflector-client for address family"; } // END of peerRouteReflectorAf definition. leaf peerRemovePvtAsAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor remove-private-AS for address family"; } // END of peerRemovePvtAsAf definition. leaf sendCommunityAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor send-community for address family"; } // END of sendCommunityAf definition. leaf sendCommunityTypeAf { - type cml_data_types:CML_BGP_SEND_COMMU_TYPE_T; config true; description "neighbor send-community attribute for address family"; } // END of sendCommunityTypeAf definition. + leaf neighborAttrUnchangedAf { + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor attribute-unchanged for address family"; + } // END of neighborAttrUnchangedAf definition. + leaf neighborAttrUnchangedAsPathAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged as-path for address family"; } // END of neighborAttrUnchangedAsPathAf definition. leaf neighborAttrUnchangedNexthopAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged next-hop for address family"; } // END of neighborAttrUnchangedNexthopAf definition. leaf neighborAttrUnchangedMedAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor attribute-unchanged med for address family"; } // END of neighborAttrUnchangedMedAf definition. leaf orfPrefixOptAf { - type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; config true; description "orf prefix-list "; } // END of orfPrefixOptAf definition. leaf setNcpFlagAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor orf prefix-list for address family"; } // END of setNcpFlagAf definition. leaf siteOriginIdAf { - + if-feature feature_list:HAVE_VRF; type cml_data_types:CML_STRING_T; config true; description "neighbor site of origin for address family"; } // END of siteOriginIdAf definition. leaf peerAllowEbgpVpnAf { - + if-feature feature_list:HAVE_VRF; type cml_data_types:CML_BOOL_T; config true; description "neighbor allow-ebgp-vpn for address family"; } // END of peerAllowEbgpVpnAf definition. leaf allowAsNumAf { - type cml_data_types:CML_UINT32_T { range "1..10"; } @@ -4342,80 +3846,68 @@ submodule bgp { } // END of allowAsNumAf definition. leaf neighborCapabilityGrstAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor capability graceful-restart for address family"; } // END of neighborCapabilityGrstAf definition. leaf aclInfoAf { - type cml_data_types:CML_STRING_T; config true; } // END of aclInfoAf definition. leaf distributeListDirectionAf { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor distribute-list for address family"; } // END of distributeListDirectionAf definition. leaf asListAclInfoAf { - type cml_data_types:CML_STRING_T; config true; } // END of asListAclInfoAf definition. leaf asListDirectionAf { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor filter-list for address family"; } // END of asListDirectionAf definition. leaf peerGroupTagAf { - type cml_data_types:CML_STRING_T; config true; description "to add a neighbor to an existing peer-group for address family"; } // END of peerGroupTagAf definition. leaf prefixListAclInfoAf { - type cml_data_types:CML_STRING_T; config true; } // END of prefixListAclInfoAf definition. leaf prefixListDirectionAf { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor prefix-list for address family"; } // END of prefixListDirectionAf definition. leaf peerRmapNameAf { - type cml_data_types:CML_STRING_T; config true; } // END of peerRmapNameAf definition. leaf peerRmapDirectionAf { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; config true; description "neighbor route-map for address family"; } // END of peerRmapDirectionAf definition. leaf setGracefulShutAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor g-shut for address-family"; } // END of setGracefulShutAf definition. leaf gshutTimerAf { - type cml_data_types:CML_UINT32_T { range "10..65535"; } @@ -4424,7 +3916,6 @@ submodule bgp { } // END of gshutTimerAf definition. leaf maxPrefixesAf { - type cml_data_types:CML_UINT32_T { range "1..4294967295"; } @@ -4432,31 +3923,34 @@ submodule bgp { description "neighbor maximum-prefix for address-family"; } // END of maxPrefixesAf definition. + leaf stopUpdateAf { + type cml_data_types:CML_BOOL_T; + config true; + description "neighbor maximum-prefix stop-update for address-family"; + } // END of stopUpdateAf definition. + leaf maxPrefixeWarningAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor maximum-prefix warning for address-family"; } // END of maxPrefixeWarningAf definition. leaf thresholdAf { - type cml_data_types:CML_UINT8_T { range "1..100"; } + default "75"; config true; description "neighbor maximum-prefix threshold for address-family"; } // END of thresholdAf definition. leaf warningAf { - type cml_data_types:CML_BOOL_T; config true; description "neighbor maximum-prefix threshold warning for address-family"; } // END of warningAf definition. leaf unSuppressAclInfoAf { - type cml_data_types:CML_STRING_T; config true; description "neighbor unsuppress-map for address-family"; @@ -4466,7 +3960,6 @@ submodule bgp { list peerPrefix { - description "peerPrefix"; @@ -4475,31 +3968,26 @@ submodule bgp { leaf prefixEntrySeqAf { - type cml_data_types:CML_INT32_T; config false; } // END of prefixEntrySeqAf definition. leaf prefixEntryTypeAf { - type cml_data_types:CML_STRING_T; config false; } // END of prefixEntryTypeAf definition. leaf prefixEntryGeAf { - type cml_data_types:CML_INT32_T; config false; } // END of prefixEntryGeAf definition. leaf prefixEntryLeAf { - type cml_data_types:CML_INT32_T; config false; } // END of prefixEntryLeAf definition. leaf peerPrefixLenAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerPrefixLenAf definition. @@ -4508,7 +3996,6 @@ submodule bgp { list peerAdjRouteAf { - description "peerAdjRouteAf"; @@ -4517,103 +4004,86 @@ submodule bgp { leaf peerNetworkAddrAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerNetworkAddrAf definition. leaf peerFlapCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerFlapCountAf definition. leaf peerNetwkWeightAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerNetwkWeightAf definition. leaf peerBgpTableVersionAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpTableVersionAf definition. leaf peerBgpInfoFlagAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpInfoFlagAf definition. leaf peerBgpAttrMpNexthopGlobalInAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopGlobalInAf definition. leaf peerBgpAttrNextHopAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrNextHopAf definition. leaf peerBgpAttrNextHopLenAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrNextHopLenAf definition. leaf peerBgpAttrMpNexthopGlobalAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopGlobalAf definition. leaf peerBgpAttrMpNexthopLocalAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAttrMpNexthopLocalAf definition. leaf peerBgpUpTimeAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpUpTimeAf definition. leaf peerMedFlagTypeAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerMedFlagTypeAf definition. leaf peerBgpMedValAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerBgpMedValAf definition. leaf peerBgpAsPathStrAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPathStrAf definition. leaf peerBgpAsPath4BStrAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPath4BStrAf definition. leaf peerBgpAsPathOriginAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPathOriginAf definition. leaf peerBgpAsPath4BOriginAf { - type cml_data_types:CML_STRING_T; config false; } // END of peerBgpAsPath4BOriginAf definition. @@ -4625,7 +4095,6 @@ submodule bgp { list addrFamily { - description "addrFamily"; @@ -4634,7 +4103,6 @@ submodule bgp { leaf afi { - type cml_data_types:CML_AFI_TYPE_T; config true; } // END of afi definition. @@ -4642,7 +4110,6 @@ submodule bgp { list subAddrFamily { - description "subAddrFamily"; @@ -4651,32 +4118,50 @@ submodule bgp { leaf safi { - type cml_data_types:CML_SAFI_TYPE_T; config true; } // END of safi definition. + leaf additionalPathsAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:BGP_ADDITIONAL_PATH_TYPE_T; + config true; + description "additional paths for address-family"; + } // END of additionalPathsAf definition. + + leaf addPathSelectAllAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_BOOL_T; + config true; + description "select all path for address-family"; + } // END of addPathSelectAllAf definition. + + leaf bestCountAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_UINT8_T { + range "2..3"; + } + config true; + description "select best path for address-family"; + } // END of bestCountAf definition. + leaf setClientReflectAf { - type cml_data_types:CML_BOOL_T; config true; description "bgp client-to-client reflection for address-family"; } // END of setClientReflectAf definition. leaf ntwkPrefixCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of ntwkPrefixCountAf definition. leaf ntwkRouterIpAddrAf { - type cml_data_types:CML_INT32_T; config false; } // END of ntwkRouterIpAddrAf definition. leaf bgpTableVersionAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpTableVersionAf definition. @@ -4684,7 +4169,6 @@ submodule bgp { list bgpAddressFamilyAggregateAddrList { - description "bgpAddressFamilyAggregateAddrList"; @@ -4693,28 +4177,24 @@ submodule bgp { leaf aggregateAddrAf { - type cml_data_types:CML_STRING_T; config true; description "aggregate-address for address-family"; } // END of aggregateAddrAf definition. leaf aggregateTypeAf { - type cml_data_types:CML_BGP_AGGREGATE_ADDR_TYPE_T; config true; description "aggregate-address-type for address-family"; } // END of aggregateTypeAf definition. leaf aggregateAsSetAf { - type cml_data_types:CML_BOOL_T; config true; description "redistribute as-set for address family"; } // END of aggregateAsSetAf definition. leaf aggregateSummOnlyAf { - type cml_data_types:CML_BOOL_T; config true; description "redistribute summary-only for address family"; @@ -4724,7 +4204,6 @@ submodule bgp { list networkListAf { - description "networkListAf"; @@ -4733,199 +4212,161 @@ submodule bgp { leaf networkAddrAf { - type cml_data_types:CML_STRING_T; config false; } // END of networkAddrAf definition. leaf ipv6Cmd { - type cml_data_types:CML_INT32_T; config false; } // END of ipv6Cmd definition. leaf ntwkLocalPrefAf { - type cml_data_types:CML_STRING_T; config false; } // END of ntwkLocalPrefAf definition. leaf bgpShowTypeStrAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpShowTypeStrAf definition. leaf bgpLongerPrefixCmdAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpLongerPrefixCmdAf definition. leaf dampInfoTimesAf { - type cml_data_types:CML_STRING_T; config false; } // END of dampInfoTimesAf definition. leaf routeGetFlapCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of routeGetFlapCountAf definition. - leaf peerLocalAsAf { - - type cml_data_types:CML_INT32_T; - config false; - } // END of peerLocalAsAf definition. - leaf ntwkPathCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of ntwkPathCountAf definition. leaf showBgpNtwkCmdAf { - type cml_data_types:CML_INT32_T; config false; } // END of showBgpNtwkCmdAf definition. leaf peerNtwkWeightAf { - type cml_data_types:CML_INT32_T; config false; } // END of peerNtwkWeightAf definition. leaf flapTimeReuseListAf { - type cml_data_types:CML_STRING_T; config false; } // END of flapTimeReuseListAf definition. leaf flapRecordDurationAf { - type cml_data_types:CML_STRING_T; config false; } // END of flapRecordDurationAf definition. leaf bgpDampPathCmdAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpDampPathCmdAf definition. leaf bgpDampFlapCmdAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpDampFlapCmdAf definition. leaf bgpIncosistentAsCmdAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpIncosistentAsCmdAf definition. leaf dampTimeToReuseAf { - type cml_data_types:CML_STRING_T; config false; } // END of dampTimeToReuseAf definition. leaf ntwkPrefixBestPathCountAf { - type cml_data_types:CML_INT32_T; config false; } // END of ntwkPrefixBestPathCountAf definition. leaf checkCidrAf { - type cml_data_types:CML_INT32_T; config false; } // END of checkCidrAf definition. leaf bgpCommunityCmdAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpCommunityCmdAf definition. leaf bgpInfoFlagAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoFlagAf definition. leaf bgpAttrMpNexthopGlobalInAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopGlobalInAf definition. leaf bgpAttrNextHopAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrNextHopAf definition. leaf bgpAttrMpNexthopGlobalAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopGlobalAf definition. leaf bgpAttrNextHopLenAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrNextHopLenAf definition. leaf bgpAttrMpNexthopLocalAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAttrMpNexthopLocalAf definition. leaf bgpUpTimeAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpUpTimeAf definition. leaf medFlagTypeAf { - type cml_data_types:CML_STRING_T; config false; } // END of medFlagTypeAf definition. leaf bgpMedValAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpMedValAf definition. leaf bgpAsPathStrAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPathStrAf definition. leaf bgpAsPath4BStrAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPath4BStrAf definition. leaf bgpAsPathOriginAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPathOriginAf definition. leaf bgpAsPath4BOriginAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpAsPath4BOriginAf definition. @@ -4934,7 +4375,6 @@ submodule bgp { list bgpShowRouteAf { - description "bgpShowRouteAf"; @@ -4943,314 +4383,262 @@ submodule bgp { leaf networkAddrRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of networkAddrRouteAf definition. leaf ntwkPathCountRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of ntwkPathCountRouteAf definition. leaf ntwkPrefixBestPathCountRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of ntwkPrefixBestPathCountRouteAf definition. leaf noAdvertiseRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of noAdvertiseRouteAf definition. leaf noExportRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of noExportRouteAf definition. leaf localAsRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of localAsRouteAf definition. leaf suppressRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of suppressRouteAf definition. leaf advPeerGroupRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of advPeerGroupRouteAf definition. leaf advPeerAddrRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of advPeerAddrRouteAf definition. leaf advNonPeerGroupRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of advNonPeerGroupRouteAf definition. leaf advPeerGroupNameRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of advPeerGroupNameRouteAf definition. container routeShowVtyOut { - - config false; + config false; description "routeShowVtyOut"; leaf ibgpMetricRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of ibgpMetricRouteAf definition. leaf routeBgpAsPathRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of routeBgpAsPathRouteAf definition. leaf aggregateAsRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of aggregateAsRouteAf definition. leaf aggregatorAddrRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of aggregatorAddrRouteAf definition. leaf reflectorClientRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of reflectorClientRouteAf definition. leaf routeDampeningFlagRouteAf { - type cml_data_types:CML_BOOL_T; config false; } // END of routeDampeningFlagRouteAf definition. leaf historyRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of historyRouteAf definition. leaf routeAttrMpNexthopGlobalInRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopGlobalInRouteAf definition. leaf routeAttrNextHopRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of routeAttrNextHopRouteAf definition. leaf routeAttrMpNexthopGlobalRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopGlobalRouteAf definition. leaf routeAttrMpNexthopLocalRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopLocalRouteAf definition. leaf routeAttrMpNexthopLocal1RouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of routeAttrMpNexthopLocal1RouteAf definition. leaf nhopValidRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of nhopValidRouteAf definition. leaf routePeerAddrRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of routePeerAddrRouteAf definition. leaf originatorIdRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of originatorIdRouteAf definition. leaf originatorId1RouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of originatorId1RouteAf definition. leaf networkRemoteAddrRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of networkRemoteAddrRouteAf definition. leaf ntwkBgpOriginRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of ntwkBgpOriginRouteAf definition. leaf routeMedFlagTypeRouteAf { - type cml_data_types:CML_BOOL_T; config false; } // END of routeMedFlagTypeRouteAf definition. leaf routeMedValRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of routeMedValRouteAf definition. leaf routeLocalPrefRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of routeLocalPrefRouteAf definition. leaf routeWeightRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of routeWeightRouteAf definition. leaf briLabelRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of briLabelRouteAf definition. leaf routeValidStateRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of routeValidStateRouteAf definition. leaf bgpInfoStaleRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoStaleRouteAf definition. leaf routePeerLocalAsRouteAf { - type cml_data_types:CML_BOOL_T; config false; } // END of routePeerLocalAsRouteAf definition. leaf bgpConfedPeerRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpConfedPeerRouteAf definition. leaf bgpInfoTypeRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of bgpInfoTypeRouteAf definition. leaf ecmpMultiCandidateRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of ecmpMultiCandidateRouteAf definition. leaf multiInstalledRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of multiInstalledRouteAf definition. leaf routeSyncFlagRouteAf { - type cml_data_types:CML_BOOL_T; config false; } // END of routeSyncFlagRouteAf definition. leaf atomicAggregateRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of atomicAggregateRouteAf definition. leaf bgpInfoSelectedRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of bgpInfoSelectedRouteAf definition. leaf routeCommNameRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of routeCommNameRouteAf definition. leaf clusterListRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of clusterListRouteAf definition. leaf routeGetPenaltyRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of routeGetPenaltyRouteAf definition. leaf routRecordTimeRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of routRecordTimeRouteAf definition. leaf routeGetFlapCountRouteAf { - type cml_data_types:CML_INT32_T; config false; } // END of routeGetFlapCountRouteAf definition. leaf routeGetReuseTimeRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of routeGetReuseTimeRouteAf definition. leaf lastUpdateRouteAf { - type cml_data_types:CML_STRING_T; config false; } // END of lastUpdateRouteAf definition. @@ -5260,7 +4648,6 @@ submodule bgp { list vrfobj { - description "vrfobj"; @@ -5269,27 +4656,23 @@ submodule bgp { leaf vrfName { - type cml_data_types:CML_STRING_T; config true; } // END of vrfName definition. leaf autoSummaryAf { - type cml_data_types:CML_BOOL_T; config true; description "auto-summary for address-family"; } // END of autoSummaryAf definition. leaf setNwSyncFlagAf { - type cml_data_types:CML_BOOL_T; config true; description "network synchronization for address-family"; } // END of setNwSyncFlagAf definition. leaf halfLifeAf { - type cml_data_types:CML_UINT32_T { range "1..45"; } @@ -5299,7 +4682,6 @@ submodule bgp { } // END of halfLifeAf definition. leaf reusePenaltyAf { - type cml_data_types:CML_UINT32_T { range "1..20000"; } @@ -5307,7 +4689,6 @@ submodule bgp { } // END of reusePenaltyAf definition. leaf suppressPenaltyAf { - type cml_data_types:CML_UINT32_T { range "1..20000"; } @@ -5315,7 +4696,6 @@ submodule bgp { } // END of suppressPenaltyAf definition. leaf maxSuppressAf { - type cml_data_types:CML_UINT32_T { range "1..255"; } @@ -5324,7 +4704,6 @@ submodule bgp { } // END of maxSuppressAf definition. leaf unreachHalfLifeAf { - type cml_data_types:CML_UINT32_T { range "1..45"; } @@ -5333,35 +4712,32 @@ submodule bgp { } // END of unreachHalfLifeAf definition. leaf dampeningRmapNameAf { - type cml_data_types:CML_STRING_T; config true; description "bgp dampening route-map for address-family"; } // END of dampeningRmapNameAf definition. leaf tableMapAf { - + if-feature feature_list:HAVE_BGP_TABLE_MAP; type cml_data_types:CML_STRING_T; config true; description "bgp table-map for address-family"; } // END of tableMapAf definition. leaf tableMapFilterAf { - + if-feature feature_list:HAVE_BGP_TABLE_MAP; type cml_data_types:CML_BOOL_T; config true; description "bgp table-map filter for address-family"; } // END of tableMapFilterAf definition. leaf setDampeningFlagAf { - type cml_data_types:CML_BOOL_T; config true; description "bgp dampening for address-family"; } // END of setDampeningFlagAf definition. leaf distanceEbgpAf { - type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -5370,7 +4746,6 @@ submodule bgp { } // END of distanceEbgpAf definition. leaf distanceIbgpAf { - type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -5379,7 +4754,6 @@ submodule bgp { } // END of distanceIbgpAf definition. leaf distanceLocalAf { - type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -5389,28 +4763,24 @@ submodule bgp { } // END of distanceLocalAf definition. leaf setSyncFlagAf { - type cml_data_types:CML_BOOL_T; config true; description "synchronization for address-family"; } // END of setSyncFlagAf definition. leaf setGshutAf { - type cml_data_types:CML_BOOL_T; config true; description "bgp g-shut for address family"; } // END of setGshutAf definition. leaf setGshutCapableAf { - type cml_data_types:CML_BOOL_T; config true; description "bgp g-shut-capable for address-family"; } // END of setGshutCapableAf definition. leaf gshutLocalPrefAf { - type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -5420,13 +4790,11 @@ submodule bgp { } // END of gshutLocalPrefAf definition. leaf bgpTypeAf { - type cml_data_types:CML_BGP_MAXPATH_T; config true; } // END of bgpTypeAf definition. leaf multipathsNumAf { - type cml_data_types:CML_INT32_T { range "2..64"; } @@ -5436,7 +4804,6 @@ submodule bgp { } // END of multipathsNumAf definition. leaf confedIdAf { - type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -5444,19 +4811,28 @@ submodule bgp { description "bgp confederation identifier in digits for address-family"; } // END of confedIdAf definition. - leaf peerConfedIdAf { - - type cml_data_types:CML_INT32_T { - range "1..65535"; - } + + list bgpConfed { + + description + "bgpConfed"; + config true; - description "bgp confederation peers for address-family"; - } // END of peerConfedIdAf definition. + key "peerConfedIdAf"; + + + leaf peerConfedIdAf { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + config true; + description "bgp confederation peers for address-family"; + } // END of peerConfedIdAf definition. + } // End of bgpConfed-list list bgpAddressFamilyNetworkList { - description "bgpAddressFamilyNetworkList"; @@ -5465,26 +4841,22 @@ submodule bgp { leaf localAddrAf { - type cml_data_types:CML_STRING_T; config true; } // END of localAddrAf definition. leaf localAddrMaskAf { - type cml_data_types:CML_IPV4_ADDR_T; config true; description "network address with mask for address family"; } // END of localAddrMaskAf definition. leaf networkRmapNameAf { - type cml_data_types:CML_STRING_T; config true; } // END of networkRmapNameAf definition. leaf backdoorAf { - type cml_data_types:CML_BOOL_T; default false; config true; @@ -5495,7 +4867,6 @@ submodule bgp { list bgpAddressFamilyRedistList { - description "bgpAddressFamilyRedistList"; @@ -5504,21 +4875,40 @@ submodule bgp { leaf redistTypeAf { - type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; config true; description "redistribute for address-family"; } // END of redistTypeAf definition. - leaf redistRmapNameAf { - - type cml_data_types:CML_STRING_T; + + list bgpRmapAf { + + description + "bgpRmapAf"; + config true; - description "redistribute route map reference for address family"; - } // END of redistRmapNameAf definition. + key "redistRmapNameAf"; - leaf redistOspfNoAf { + leaf redistRmapNameAf { + type cml_data_types:CML_STRING_T; + config true; + description "redistribute route map reference for address family"; + } // END of redistRmapNameAf definition. + + } // End of bgpRmapAf-list + } // End of bgpAddressFamilyRedistList-list + + list bgpRedistOspfAf { + + description + "bgpRedistOspfAf"; + + config true; + key "redistOspfNoAf"; + + + leaf redistOspfNoAf { type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -5526,14 +4916,24 @@ submodule bgp { description "redistribute with ospf proc Id for address family"; } // END of redistOspfNoAf definition. - leaf redistOspfRmapAf { - - type cml_data_types:CML_STRING_T; + + list bgpRmapAf { + + description + "bgpRmapAf"; + config true; - description "redistribute with ospf proc Id and route map reference for address family"; - } // END of redistOspfRmapAf definition. + key "redistOspfRmapAf"; - } // End of bgpAddressFamilyRedistList-list + + leaf redistOspfRmapAf { + type cml_data_types:CML_STRING_T; + config true; + description "redistribute with ospf proc Id and route map reference for address family"; + } // END of redistOspfRmapAf definition. + + } // End of bgpRmapAf-list + } // End of bgpRedistOspfAf-list } // End of vrfobj-list } // End of subAddrFamily-list } // End of addrFamily-list @@ -5544,7 +4944,6 @@ submodule bgp { grouping bgpGlobal-grouping { list bgpGlobal { - description "BGP global commands"; @@ -5553,55 +4952,49 @@ submodule bgp { leaf vrId { - type cml_data_types:CML_UINT32_T; config true; } // END of vrId definition. leaf snmpRestart { - + if-feature feature_list:HAVE_SNMP; type cml_data_types:CML_BOOL_T; config true; description "snmp restart bgp"; } // END of snmpRestart definition. leaf aggNexthop { - type cml_data_types:CML_BOOL_T; config true; description "bgp aggregate-nexthop-check"; } // END of aggNexthop definition. leaf pathSelect { - type cml_data_types:CML_BOOL_T; config true; description "bgp rfc1771-path-select"; } // END of pathSelect definition. leaf setDisableAdjOut { - type cml_data_types:CML_BOOL_T; config true; description "bgp disable-adj-out"; } // END of setDisableAdjOut definition. leaf setExtAsnCap { - + if-feature feature_list:HAVE_EXT_CAP_ASN; type cml_data_types:CML_BOOL_T; config true; description "bgp extended-asn-cap"; } // END of setExtAsnCap definition. leaf setNexthopTriggerEnable { - type cml_data_types:CML_BOOL_T; config true; description "bgp nexthop-trigger enable"; } // END of setNexthopTriggerEnable definition. leaf delayInterval { - type cml_data_types:CML_UINT8_T { range "1..100"; } @@ -5611,28 +5004,24 @@ submodule bgp { } // END of delayInterval definition. leaf rfc1771StrictSet { - type cml_data_types:CML_BOOL_T; config true; description "bgp rfc1771-strict"; } // END of rfc1771StrictSet definition. leaf multiInstance { - type cml_data_types:CML_BOOL_T; config true; description "bgp multiple-instance"; } // END of multiInstance definition. leaf allowSamePeer { - type cml_data_types:CML_BOOL_T; config true; description "bgp multiple-instance allow-same-peer"; } // END of allowSamePeer definition. leaf configType { - type cml_data_types:CML_STRING_T; config true; description "bgp config-type"; @@ -5641,7 +5030,6 @@ submodule bgp { list communityList { - description "communityList"; @@ -5650,7 +5038,6 @@ submodule bgp { leaf commListName { - type cml_data_types:CML_STRING_T; config true; } // END of commListName definition. @@ -5658,7 +5045,6 @@ submodule bgp { list commListAction { - description "commListAction"; @@ -5667,7 +5053,6 @@ submodule bgp { leaf action { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of action definition. @@ -5675,7 +5060,6 @@ submodule bgp { list commListVal { - description "commListVal"; @@ -5684,7 +5068,6 @@ submodule bgp { leaf commListValue { - type cml_data_types:CML_STRING_T; config true; description "community-list"; @@ -5696,7 +5079,6 @@ submodule bgp { list communityListNo { - description "communityListNo"; @@ -5705,7 +5087,6 @@ submodule bgp { leaf commListStandNo { - type cml_data_types:CML_UINT32_T { range "1..99"; } @@ -5715,7 +5096,6 @@ submodule bgp { list commListAction { - description "commListAction"; @@ -5724,7 +5104,6 @@ submodule bgp { leaf action { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; description "action type for community-list number"; @@ -5733,7 +5112,6 @@ submodule bgp { list commListVal { - description "commListVal"; @@ -5742,7 +5120,6 @@ submodule bgp { leaf commListValue { - type cml_data_types:CML_STRING_T; config true; description "community-list number"; @@ -5754,7 +5131,6 @@ submodule bgp { list communityListStand { - description "communityListStand"; @@ -5763,7 +5139,6 @@ submodule bgp { leaf commListName { - type cml_data_types:CML_STRING_T; config true; } // END of commListName definition. @@ -5771,7 +5146,6 @@ submodule bgp { list commListAction { - description "commListAction"; @@ -5780,7 +5154,6 @@ submodule bgp { leaf action { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; description "action type for standard community name"; @@ -5789,7 +5162,6 @@ submodule bgp { list commListVal { - description "commListVal"; @@ -5798,7 +5170,6 @@ submodule bgp { leaf commListValue { - type cml_data_types:CML_STRING_T; config true; description "standard community name"; @@ -5810,7 +5181,6 @@ submodule bgp { list communityListExp { - description "communityListExp"; @@ -5819,7 +5189,6 @@ submodule bgp { leaf commListNo { - type cml_data_types:CML_UINT32_T { range "100..500"; } @@ -5829,7 +5198,6 @@ submodule bgp { list commListAction { - description "commListAction"; @@ -5838,7 +5206,6 @@ submodule bgp { leaf action { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of action definition. @@ -5846,7 +5213,6 @@ submodule bgp { list commListVal { - description "commListVal"; @@ -5855,7 +5221,6 @@ submodule bgp { leaf regExpList { - type cml_data_types:CML_STRING_T; config true; description "expanded community-list number"; @@ -5867,7 +5232,6 @@ submodule bgp { list communityListExpand { - description "communityListExpand"; @@ -5876,7 +5240,6 @@ submodule bgp { leaf commListExpName { - type cml_data_types:CML_STRING_T; config true; } // END of commListExpName definition. @@ -5884,7 +5247,6 @@ submodule bgp { list commListAction { - description "commListAction"; @@ -5893,7 +5255,6 @@ submodule bgp { leaf action { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of action definition. @@ -5901,7 +5262,6 @@ submodule bgp { list commListVal { - description "commListVal"; @@ -5910,7 +5270,6 @@ submodule bgp { leaf regExpList { - type cml_data_types:CML_STRING_T; config true; description "community-list expanded"; @@ -5922,7 +5281,6 @@ submodule bgp { list extCommuListNo { - description "extCommuListNo"; @@ -5931,7 +5289,6 @@ submodule bgp { leaf extCommListStandNo { - type cml_data_types:CML_UINT32_T { range "1..99"; } @@ -5941,7 +5298,6 @@ submodule bgp { list extCommListAction { - description "extCommListAction"; @@ -5950,7 +5306,6 @@ submodule bgp { leaf extAction { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of extAction definition. @@ -5958,7 +5313,6 @@ submodule bgp { list extCommListVal { - description "extCommListVal"; @@ -5967,7 +5321,6 @@ submodule bgp { leaf extCommListValue { - type cml_data_types:CML_STRING_T; config true; description "standard extended community list number"; @@ -5979,7 +5332,6 @@ submodule bgp { list extCommListStand { - description "extCommListStand"; @@ -5988,13 +5340,12 @@ submodule bgp { leaf extCommListName { - type cml_data_types:CML_STRING_T; config true; } // END of extCommListName definition. leaf delExcomm { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; } // END of delExcomm definition. @@ -6002,7 +5353,6 @@ submodule bgp { list extCommListAction { - description "extCommListAction"; @@ -6011,7 +5361,6 @@ submodule bgp { leaf extAction { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of extAction definition. @@ -6019,7 +5368,6 @@ submodule bgp { list routeTargetSoo { - description "routeTargetSoo"; @@ -6028,7 +5376,6 @@ submodule bgp { leaf rtSoo { - type cml_data_types:CML_STRING_T; config true; } // END of rtSoo definition. @@ -6036,7 +5383,6 @@ submodule bgp { list extCommListVal { - description "extCommListVal"; @@ -6045,7 +5391,6 @@ submodule bgp { leaf extCommListValue { - type cml_data_types:CML_STRING_T; config true; description "standard extended-community list for rt or soo"; @@ -6058,7 +5403,6 @@ submodule bgp { list extCommunityListExp { - description "extCommunityListExp"; @@ -6067,7 +5411,6 @@ submodule bgp { leaf extCommListNo { - type cml_data_types:CML_UINT32_T { range "100..500"; } @@ -6077,7 +5420,6 @@ submodule bgp { list extCommListAction { - description "extCommListAction"; @@ -6086,7 +5428,6 @@ submodule bgp { leaf extAction { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of extAction definition. @@ -6094,7 +5435,6 @@ submodule bgp { list extCommListVal { - description "extCommListVal"; @@ -6103,7 +5443,6 @@ submodule bgp { leaf extCommListValue { - type cml_data_types:CML_STRING_T; config true; description "extended community list number"; @@ -6115,7 +5454,6 @@ submodule bgp { list extCommListExpand { - description "extCommListExpand"; @@ -6124,7 +5462,6 @@ submodule bgp { leaf extCommListExpName { - type cml_data_types:CML_STRING_T; config true; } // END of extCommListExpName definition. @@ -6132,7 +5469,6 @@ submodule bgp { list extCommListAction { - description "extCommListAction"; @@ -6141,7 +5477,6 @@ submodule bgp { leaf extAction { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of extAction definition. @@ -6149,7 +5484,6 @@ submodule bgp { list extCommListVal { - description "extCommListVal"; @@ -6158,7 +5492,6 @@ submodule bgp { leaf extCommListValue { - type cml_data_types:CML_STRING_T; config true; description "expanded community list number"; @@ -6170,7 +5503,6 @@ submodule bgp { list accessList { - description "accessList"; @@ -6179,7 +5511,6 @@ submodule bgp { leaf accessListName { - type cml_data_types:CML_STRING_T; config true; } // END of accessListName definition. @@ -6187,7 +5518,6 @@ submodule bgp { list accessListDirection { - description "accessListDirection"; @@ -6196,7 +5526,6 @@ submodule bgp { leaf accessListDirection { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; config true; } // END of accessListDirection definition. @@ -6204,7 +5533,6 @@ submodule bgp { list bgpRegExp { - description "bgpRegExp"; @@ -6213,7 +5541,6 @@ submodule bgp { leaf bgpRegExp { - type cml_data_types:CML_STRING_T; config true; description "ip as-path access-list"; @@ -6229,7 +5556,6 @@ submodule bgp { grouping bgpDebug-grouping { list bgpDebug { - description "bgpDebug"; @@ -6238,27 +5564,23 @@ submodule bgp { leaf vrId { - type cml_data_types:CML_UINT32_T; config true; } // END of vrId definition. leaf debugFlag { - type cml_data_types:CML_BGP_DEBUG_TYPE_T; default "all"; config true; } // END of debugFlag definition. leaf undebugFlag { - type cml_data_types:CML_BGP_DEBUG_TYPE_T; default "all"; config true; } // END of undebugFlag definition. leaf debugUpdateFlag { - type cml_data_types:CML_BGP_UPDATE_DEBUG_TYPE_T; config true; } // END of debugUpdateFlag definition. @@ -6270,7 +5592,6 @@ submodule bgp { grouping hashTableSize-grouping { list hashTableSize { - description "hashTableSize"; @@ -6279,38 +5600,32 @@ submodule bgp { leaf hashSize { - type cml_data_types:CML_INT32_T; config false; } // END of hashSize definition. container hashTableInfo { - - config false; + config false; description "hashTableInfo"; leaf hashBacket { - type cml_data_types:CML_STRING_T; config false; } // END of hashBacket definition. leaf hashRefCnt { - type cml_data_types:CML_INT32_T; config false; } // END of hashRefCnt definition. leaf hashAsStr { - type cml_data_types:CML_STRING_T; config false; } // END of hashAsStr definition. leaf hashComStr { - type cml_data_types:CML_STRING_T; config false; } // END of hashComStr definition. @@ -6323,7 +5638,6 @@ submodule bgp { grouping vrfTable-grouping { list vrfTable { - description "vrfTable"; @@ -6332,19 +5646,16 @@ submodule bgp { leaf vrfName { - type cml_data_types:CML_STRING_T; config true; } // END of vrfName definition. leaf importMap { - type cml_data_types:CML_STRING_T; config true; } // END of importMap definition. leaf rdStr { - type cml_data_types:CML_STRING_T; config true; description "route distinguisher"; @@ -6353,7 +5664,6 @@ submodule bgp { list routeTarget { - description "routeTarget"; @@ -6362,13 +5672,12 @@ submodule bgp { leaf direct { - mandatory true; + mandatory true; type cml_data_types:CML_RT_T; config true; } // END of direct definition. leaf rtRdStr { - type cml_data_types:CML_STRING_T; config true; description "route distinguisher"; diff --git a/yang-files/bridge.yang b/yang-files/bridge.yang index 3b73bbec..80a5b386 100644 --- a/yang-files/bridge.yang +++ b/yang-files/bridge.yang @@ -17,27 +17,31 @@ submodule bridge { belongs-to ZebOS { prefix ZebOS; } include interface; - include vlan; include mstp; + include vlan; import cml_data_types { prefix cml_data_types; } + import feature_list { + prefix feature_list; + } + description "Layer-2 bridge configurations"; revision "2015-04-25" { - description "Revisied on 2015-04-25."; } + description "Revisied on 2015-04-25."; + } grouping bridge-grouping { list bridge { - description "bridge"; @@ -46,71 +50,62 @@ submodule bridge { leaf vrId { - type cml_data_types:CML_UINT32_T; default "0"; config true; } // END of vrId definition. leaf bridgeId { - type cml_data_types:CML_STRING_T; config true; } // END of bridgeId definition. leaf bridgeType { - mandatory true; + mandatory true; type cml_data_types:CML_BRIDGE_PROTOCOL_T; config true; } // END of bridgeType definition. leaf topologyType { - type cml_data_types:CML_BRIDGE_TOPOLOGY_T; - default "ring"; + default "topology-none"; config true; } // END of topologyType definition. leaf macAddr { - type cml_data_types:CML_STRING_T; config true; description "bridge address"; } // END of macAddr definition. leaf discardForward { - type cml_data_types:CML_DISCARDFORWARD_T; config true; } // END of discardForward definition. leaf ifName { - type cml_data_types:CML_STRING_T; config true; } // END of ifName definition. leaf bridgeForward { - type cml_data_types:CML_BOOL_T; config true; } // END of bridgeForward definition. leaf forward { - + if-feature feature_list:HAVE_SPBD; type cml_data_types:CML_BRIDGE_FORWARDING_SET_T; config true; } // END of forward definition. leaf ageingStatus { - type cml_data_types:CML_BRIDGE_AGEING_STATE; config true; description "bridge ageing"; } // END of ageingStatus definition. leaf learning { - type cml_data_types:CML_BOOL_T; default false; config true; @@ -118,7 +113,6 @@ submodule bridge { } // END of learning definition. leaf ageingTime { - type cml_data_types:CML_INT32_T { range "10..1000000"; } @@ -128,7 +122,6 @@ submodule bridge { } // END of ageingTime definition. leaf mstpEnabled { - type cml_data_types:CML_ENABLE_DISABLE_T; default "disable"; config true; @@ -136,7 +129,6 @@ submodule bridge { } // END of mstpEnabled definition. leaf helloTime { - type cml_data_types:CML_INT32_T { range "1..10"; } @@ -146,7 +138,6 @@ submodule bridge { } // END of helloTime definition. leaf maxAge { - type cml_data_types:CML_INT32_T { range "6..40"; } @@ -156,7 +147,6 @@ submodule bridge { } // END of maxAge definition. leaf priority { - type cml_data_types:CML_UINT32_T { range "0..61440"; } @@ -166,7 +156,6 @@ submodule bridge { } // END of priority definition. leaf forwardDelay { - type cml_data_types:CML_INT32_T { range "4..30"; } @@ -176,7 +165,6 @@ submodule bridge { } // END of forwardDelay definition. leaf transmitHoldCount { - type cml_data_types:CML_UINT8_T { range "1..10"; } @@ -186,7 +174,6 @@ submodule bridge { } // END of transmitHoldCount definition. leaf bpduguardEnable { - type cml_data_types:CML_BOOL_T; default false; config true; @@ -194,7 +181,6 @@ submodule bridge { } // END of bpduguardEnable definition. leaf errdisableTimeoutEnable { - type cml_data_types:CML_BOOL_T; default false; config true; @@ -202,7 +188,6 @@ submodule bridge { } // END of errdisableTimeoutEnable definition. leaf errdisableTimeoutInterval { - type cml_data_types:CML_INT32_T { range "10..1000000"; } @@ -212,7 +197,6 @@ submodule bridge { } // END of errdisableTimeoutInterval definition. leaf revisionLevel { - type cml_data_types:CML_UINT16_T { range "0..65535"; } @@ -221,7 +205,6 @@ submodule bridge { } // END of revisionLevel definition. leaf maxHops { - type cml_data_types:CML_INT32_T { range "1..40"; } @@ -231,7 +214,6 @@ submodule bridge { } // END of maxHops definition. leaf regionName { - type cml_data_types:CML_STRING_T; default "Default"; config true; @@ -239,26 +221,22 @@ submodule bridge { } // END of regionName definition. leaf bpduFilter { - type cml_data_types:CML_BOOL_T; default false; config true; } // END of bpduFilter definition. leaf debug { - type cml_data_types:CML_UINT32_T; config true; } // END of debug definition. leaf debugStatus { - type cml_data_types:CML_INT32_T; config true; } // END of debugStatus definition. leaf adminCisco { - type cml_data_types:CML_ENABLE_DISABLE_T; default "disable"; config true; @@ -266,14 +244,12 @@ submodule bridge { } // END of adminCisco definition. leaf pathCostMethod { - type cml_data_types:CML_PATHCOST_METHOD_T; default "default"; config true; } // END of pathCostMethod definition. leaf forceVersion { - type cml_data_types:CML_INT32_T { range "0..4"; } @@ -283,187 +259,156 @@ submodule bridge { } // END of forceVersion definition. leaf vId { - type cml_data_types:CML_STRING_T; config false; } // END of vId definition. leaf svId { - type cml_data_types:CML_STRING_T; config false; } // END of svId definition. leaf bridgePort { - type cml_data_types:CML_STRING_T; config false; } // END of bridgePort definition. leaf cistbridgePriority { - type cml_data_types:CML_UINT32_T; config false; } // END of cistbridgePriority definition. leaf topologyChange { - type cml_data_types:CML_STRING_T; config false; } // END of topologyChange definition. leaf externalrootPathcost { - type cml_data_types:CML_UINT32_T; config false; } // END of externalrootPathcost definition. leaf bridgeEnabled { - type cml_data_types:CML_STRING_T; config false; } // END of bridgeEnabled definition. leaf topologychangeDetected { - type cml_data_types:CML_STRING_T; config false; } // END of topologychangeDetected definition. leaf cistmstpBridge { - type cml_data_types:CML_STRING_T; config false; } // END of cistmstpBridge definition. leaf cistRootPort { - type cml_data_types:CML_UINT32_T; config false; } // END of cistRootPort definition. leaf cistdesignatedRoot { - type cml_data_types:CML_STRING_T; config false; } // END of cistdesignatedRoot definition. leaf cistBridgeid { - type cml_data_types:CML_STRING_T; config false; } // END of cistBridgeid definition. leaf totalnumberTopologychange { - type cml_data_types:CML_INT32_T; config false; } // END of totalnumberTopologychange definition. leaf cistregisteredRoot { - type cml_data_types:CML_STRING_T; config false; } // END of cistregisteredRoot definition. leaf maxAgeCount { - type cml_data_types:CML_INT32_T; config false; } // END of maxAgeCount definition. leaf bridgeHelloTime { - type cml_data_types:CML_INT32_T; config false; } // END of bridgeHelloTime definition. leaf bridgeForwardDelay { - type cml_data_types:CML_INT32_T; config false; } // END of bridgeForwardDelay definition. leaf bridgeTopologyChange { - type cml_data_types:CML_STRING_T; config false; } // END of bridgeTopologyChange definition. leaf topologyChangeCount { - type cml_data_types:CML_INT32_T; config false; } // END of topologyChangeCount definition. leaf topologyChangeLastRecv { - type cml_data_types:CML_STRING_T; config false; } // END of topologyChangeLastRecv definition. leaf addressFlag { - type cml_data_types:CML_BOOL_T; config true; } // END of addressFlag definition. leaf bridgeMaxAge { - type cml_data_types:CML_INT32_T; config false; } // END of bridgeMaxAge definition. leaf lasttimeTopologychange { - type cml_data_types:CML_STRING_T; config false; } // END of lasttimeTopologychange definition. leaf configFormat { - type cml_data_types:CML_INT32_T; config false; } // END of configFormat definition. leaf configName { - type cml_data_types:CML_STRING_T; config false; } // END of configName definition. leaf configRevision { - type cml_data_types:CML_INT32_T; config false; } // END of configRevision definition. leaf configDigest { - type cml_data_types:CML_STRING_T; config false; } // END of configDigest definition. leaf brType { - type cml_data_types:CML_BRIDGE_TYPE_T; config true; } // END of brType definition. leaf cistrootportIfindex { - type cml_data_types:CML_INT32_T; config false; } // END of cistrootportIfindex definition. leaf forwarddelayTimer { - type cml_data_types:CML_INT32_T; config false; } // END of forwarddelayTimer definition. leaf messageageTimer { - type cml_data_types:CML_INT32_T; config false; } // END of messageageTimer definition. @@ -471,7 +416,6 @@ submodule bridge { list interface { - description " Group of bridge attribute having interface property"; @@ -480,21 +424,19 @@ submodule bridge { leaf ifName { - type cml_data_types:CML_STRING_T; config true; description "bridge-group"; } // END of ifName definition. leaf spanningTreeDisable { - mandatory true; + mandatory true; type cml_data_types:CML_SPANNINGTREE_ENABLE_DISABLE_T; config true; description "bridge-group spanning-tree"; } // END of spanningTreeDisable definition. leaf p2pMac { - type cml_data_types:CML_LINK_TYPE_T; default "point-to-point"; config true; @@ -502,7 +444,6 @@ submodule bridge { } // END of p2pMac definition. leaf portPriority { - type cml_data_types:CML_INT16_T { range "0..240"; } @@ -512,7 +453,6 @@ submodule bridge { } // END of portPriority definition. leaf portedgeEnable { - type cml_data_types:CML_PORTEDGE_T; default "portfast"; config true; @@ -520,7 +460,6 @@ submodule bridge { } // END of portedgeEnable definition. leaf restrictedDomainRole { - type cml_data_types:CML_BOOL_T; default false; config true; @@ -528,7 +467,6 @@ submodule bridge { } // END of restrictedDomainRole definition. leaf autoEdge { - type cml_data_types:CML_BOOL_T; default false; config true; @@ -536,14 +474,12 @@ submodule bridge { } // END of autoEdge definition. leaf adminBpduguard { - type cml_data_types:CML_BPDU_T; default "default"; config true; } // END of adminBpduguard definition. leaf portHelloTime { - type cml_data_types:CML_INT32_T { range "1..10"; } @@ -552,7 +488,6 @@ submodule bridge { } // END of portHelloTime definition. leaf pathCost { - type cml_data_types:CML_UINT32_T { range "1..200000000"; } @@ -561,7 +496,6 @@ submodule bridge { } // END of pathCost definition. leaf restrictedRole { - type cml_data_types:CML_BOOL_T; default false; config true; @@ -569,7 +503,6 @@ submodule bridge { } // END of restrictedRole definition. leaf restrictedTCN { - type cml_data_types:CML_BOOL_T; default false; config true; @@ -577,7 +510,6 @@ submodule bridge { } // END of restrictedTCN definition. leaf adminRootGuard { - type cml_data_types:CML_UINT8_T; default "1"; config true; @@ -585,7 +517,6 @@ submodule bridge { } // END of adminRootGuard definition. leaf adminBpdufilter { - type cml_data_types:CML_BPDU_T; default "default"; config true; @@ -593,386 +524,322 @@ submodule bridge { } // END of adminBpdufilter definition. leaf enableBpduRx { - type cml_data_types:CML_INT32_T; default "0"; config true; } // END of enableBpduRx definition. leaf overMacType { - type cml_data_types:CML_INT32_T; config true; } // END of overMacType definition. leaf priorityOverWrite { - type cml_data_types:CML_UINT8_T; config true; } // END of priorityOverWrite definition. leaf cistbridgePriority { - type cml_data_types:CML_UINT32_T; config false; } // END of cistbridgePriority definition. leaf topologyChange { - type cml_data_types:CML_STRING_T; config false; } // END of topologyChange definition. leaf externalrootPathcost { - type cml_data_types:CML_UINT32_T; config false; } // END of externalrootPathcost definition. leaf bridgeEnabled { - type cml_data_types:CML_STRING_T; config false; } // END of bridgeEnabled definition. leaf cistmstpBridge { - type cml_data_types:CML_STRING_T; config false; } // END of cistmstpBridge definition. leaf cistdesignatedRoot { - type cml_data_types:CML_STRING_T; config false; } // END of cistdesignatedRoot definition. leaf cistBridgeid { - type cml_data_types:CML_STRING_T; config false; } // END of cistBridgeid definition. leaf totalnumberTopologychange { - type cml_data_types:CML_INT32_T; config false; } // END of totalnumberTopologychange definition. leaf cistregisteredRoot { - type cml_data_types:CML_STRING_T; config false; } // END of cistregisteredRoot definition. leaf maxAgeCount { - type cml_data_types:CML_INT32_T; config false; } // END of maxAgeCount definition. leaf bridgeHelloTime { - type cml_data_types:CML_INT32_T; config false; } // END of bridgeHelloTime definition. leaf bridgeForwardDelay { - type cml_data_types:CML_INT32_T; config false; } // END of bridgeForwardDelay definition. leaf bridgeTopologyChange { - type cml_data_types:CML_STRING_T; config false; } // END of bridgeTopologyChange definition. leaf topologyChangeCount { - type cml_data_types:CML_INT32_T; config false; } // END of topologyChangeCount definition. leaf topologyChangeLastRecv { - type cml_data_types:CML_STRING_T; config false; } // END of topologyChangeLastRecv definition. leaf portName { - type cml_data_types:CML_STRING_T; config false; } // END of portName definition. leaf portNumber { - type cml_data_types:CML_UINT32_T; config false; } // END of portNumber definition. leaf portIfindex { - type cml_data_types:CML_INT32_T; config false; } // END of portIfindex definition. leaf cistPortid { - type cml_data_types:CML_UINT16_T; config false; } // END of cistPortid definition. leaf mstipathCost { - type cml_data_types:CML_UINT32_T; config false; } // END of mstipathCost definition. leaf designatedPortid { - type cml_data_types:CML_UINT16_T; config false; } // END of designatedPortid definition. leaf cistpathCost { - type cml_data_types:CML_UINT32_T; config false; } // END of cistpathCost definition. leaf portdesignatedCost { - type cml_data_types:CML_UINT32_T; config false; } // END of portdesignatedCost definition. leaf cistDesignatedportId { - type cml_data_types:CML_UINT32_T; config false; } // END of cistDesignatedportId definition. leaf cistPortState { - type cml_data_types:CML_STRING_T; config false; } // END of cistPortState definition. leaf cistPriority { - type cml_data_types:CML_UINT32_T; config false; } // END of cistPriority definition. leaf mstiInstanceRoot { - type cml_data_types:CML_STRING_T; config false; } // END of mstiInstanceRoot definition. leaf messageAge { - type cml_data_types:CML_INT32_T; config false; } // END of messageAge definition. leaf maxAgePort { - type cml_data_types:CML_UINT32_T; config false; } // END of maxAgePort definition. leaf cisthelloTime { - type cml_data_types:CML_INT32_T; config false; } // END of cisthelloTime definition. leaf helloTimePort { - type cml_data_types:CML_INT32_T; config false; } // END of helloTimePort definition. leaf cistforwardDelay { - type cml_data_types:CML_INT32_T; config false; } // END of cistforwardDelay definition. leaf topologyChangeTimer { - type cml_data_types:CML_INT32_T; config false; } // END of topologyChangeTimer definition. leaf cistforwardTransition { - type cml_data_types:CML_UINT32_T; config false; } // END of cistforwardTransition definition. leaf cistPortFast { - type cml_data_types:CML_STRING_T; config false; } // END of cistPortFast definition. leaf bpduGuardState { - type cml_data_types:CML_STRING_T; config false; } // END of bpduGuardState definition. leaf operBpduGuardState { - type cml_data_types:CML_STRING_T; config false; } // END of operBpduGuardState definition. leaf bpduFilterState { - type cml_data_types:CML_STRING_T; config false; } // END of bpduFilterState definition. leaf operBpduFilterState { - type cml_data_types:CML_STRING_T; config false; } // END of operBpduFilterState definition. leaf rootGuardConfigState { - type cml_data_types:CML_STRING_T; config false; } // END of rootGuardConfigState definition. leaf rootGuardState { - type cml_data_types:CML_STRING_T; config false; } // END of rootGuardState definition. leaf cistPortrole { - type cml_data_types:CML_STRING_T; config false; } // END of cistPortrole definition. leaf portType { - type cml_data_types:CML_STRING_T; config false; } // END of portType definition. leaf portRefCount { - type cml_data_types:CML_UINT32_T; config false; } // END of portRefCount definition. leaf version { - type cml_data_types:CML_STRING_T; config false; } // END of version definition. leaf portRecieved { - type cml_data_types:CML_STRING_T; config false; } // END of portRecieved definition. leaf portSend { - type cml_data_types:CML_STRING_T; config false; } // END of portSend definition. leaf portFastCfg { - type cml_data_types:CML_STRING_T; config false; } // END of portFastCfg definition. leaf portFastState { - type cml_data_types:CML_STRING_T; config false; } // END of portFastState definition. leaf pToPstate { - type cml_data_types:CML_STRING_T; config false; } // END of pToPstate definition. leaf pToPCurrentstate { - type cml_data_types:CML_STRING_T; config false; } // END of pToPCurrentstate definition. leaf autoEdgePCfg { - type cml_data_types:CML_STRING_T; config false; } // END of autoEdgePCfg definition. leaf autoEdgetstate { - type cml_data_types:CML_STRING_T; config false; } // END of autoEdgetstate definition. leaf bridgeDesignatedRoot { - type cml_data_types:CML_STRING_T; config false; } // END of bridgeDesignatedRoot definition. leaf bridgeDesignated { - type cml_data_types:CML_STRING_T; config false; } // END of bridgeDesignated definition. leaf nextMsg { - type cml_data_types:CML_STRING_T; config false; } // END of nextMsg definition. leaf mstiRoot { - type cml_data_types:CML_STRING_T; config false; } // END of mstiRoot definition. leaf designatedBridge { - type cml_data_types:CML_STRING_T; config false; } // END of designatedBridge definition. leaf helloTimer { - type cml_data_types:CML_INT32_T; config false; } // END of helloTimer definition. leaf hwAddr { - type cml_data_types:CML_STRING_T; config false; } // END of hwAddr definition. leaf forwardState { - type cml_data_types:CML_UINT32_T; config false; } // END of forwardState definition. @@ -980,7 +847,6 @@ submodule bridge { list mstpInterface { - description "runtime mstp interface instance info"; @@ -989,7 +855,6 @@ submodule bridge { leaf instanceId { - type cml_data_types:CML_INT32_T { range "1..63"; } @@ -997,357 +862,311 @@ submodule bridge { } // END of instanceId definition. leaf cistPortrole { - type cml_data_types:CML_STRING_T; config false; } // END of cistPortrole definition. leaf portName { - type cml_data_types:CML_STRING_T; config false; } // END of portName definition. leaf portNumber { - type cml_data_types:CML_UINT32_T; config false; } // END of portNumber definition. leaf cistpathCost { - type cml_data_types:CML_UINT32_T; config false; } // END of cistpathCost definition. leaf cistPriority { - type cml_data_types:CML_INT32_T; config false; } // END of cistPriority definition. leaf cisthelloTime { - type cml_data_types:CML_INT32_T; config false; } // END of cisthelloTime definition. leaf cistforwardDelay { - type cml_data_types:CML_INT32_T; config false; } // END of cistforwardDelay definition. leaf portspanningTree { - type cml_data_types:CML_STRING_T; config false; } // END of portspanningTree definition. leaf portconfbpduSent { - type cml_data_types:CML_UINT32_T; config false; } // END of portconfbpduSent definition. leaf configPending { - type cml_data_types:CML_STRING_T; config false; } // END of configPending definition. leaf porttopChangeack { - type cml_data_types:CML_STRING_T; config false; } // END of porttopChangeack definition. leaf portconfbpduRecieved { - type cml_data_types:CML_UINT32_T; config false; } // END of portconfbpduRecieved definition. leaf porttcnbpduSent { - type cml_data_types:CML_UINT32_T; config false; } // END of porttcnbpduSent definition. leaf porttcnbpduRecieved { - type cml_data_types:CML_UINT32_T; config false; } // END of porttcnbpduRecieved definition. leaf portForwardTransition { - type cml_data_types:CML_UINT32_T; config false; } // END of portForwardTransition definition. leaf helloTimerstate { - type cml_data_types:CML_STRING_T; config false; } // END of helloTimerstate definition. leaf helloTimervalue { - type cml_data_types:CML_INT32_T; config false; } // END of helloTimervalue definition. leaf forwardTimerstate { - type cml_data_types:CML_STRING_T; config false; } // END of forwardTimerstate definition. leaf forwardTimervalue { - type cml_data_types:CML_INT32_T; config false; } // END of forwardTimervalue definition. leaf messageTimerstate { - type cml_data_types:CML_STRING_T; config false; } // END of messageTimerstate definition. leaf topologychangeTimerstate { - type cml_data_types:CML_STRING_T; config false; } // END of topologychangeTimerstate definition. leaf topologychangeTimervalue { - type cml_data_types:CML_INT32_T; config false; } // END of topologychangeTimervalue definition. leaf holdTimerstate { - type cml_data_types:CML_STRING_T; config false; } // END of holdTimerstate definition. leaf holdTimervalue { - type cml_data_types:CML_INT32_T; config false; } // END of holdTimervalue definition. leaf messageageExpiry { - type cml_data_types:CML_UINT32_T; config false; } // END of messageageExpiry definition. leaf similarbpduCount { - type cml_data_types:CML_UINT32_T; config false; } // END of similarbpduCount definition. leaf sourcemacCount { - type cml_data_types:CML_INT32_T; config false; } // END of sourcemacCount definition. leaf totalsourcemacRecieved { - type cml_data_types:CML_INT32_T; config false; } // END of totalsourcemacRecieved definition. leaf porttopologyChangetime { - type cml_data_types:CML_UINT32_T; config false; } // END of porttopologyChangetime definition. leaf designatedrootPathcost { - type cml_data_types:CML_UINT32_T; config false; } // END of designatedrootPathcost definition. leaf designatedInsPortid { - type cml_data_types:CML_UINT16_T; config false; } // END of designatedInsPortid definition. leaf mstiInstancedesignatedRoot { - type cml_data_types:CML_STRING_T; config false; } // END of mstiInstancedesignatedRoot definition. leaf mstiInstanceBridgeId { - type cml_data_types:CML_STRING_T; config false; } // END of mstiInstanceBridgeId definition. leaf stpMultiCastAddr { - type cml_data_types:CML_STRING_T; config false; } // END of stpMultiCastAddr definition. leaf instanceBridgeMacAddress { - type cml_data_types:CML_STRING_T; config false; } // END of instanceBridgeMacAddress definition. leaf instancetopologyChange { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of instancetopologyChange definition. leaf instanceTopologychangedetected { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of instanceTopologychangedetected definition. leaf instlastTopologychangerecievedfrom { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of instlastTopologychangerecievedfrom definition. leaf mstirootportIfindex { - type cml_data_types:CML_INT32_T; config false; } // END of mstirootportIfindex definition. leaf mstiPriority { - type cml_data_types:CML_INT32_T; config false; } // END of mstiPriority definition. leaf instancemaxAge { - type cml_data_types:CML_INT32_T; config false; } // END of instancemaxAge definition. leaf mstibridgePriority { - type cml_data_types:CML_INT32_T; config false; } // END of mstibridgePriority definition. leaf internalrootPathcost { - type cml_data_types:CML_INT32_T; config false; } // END of internalrootPathcost definition. leaf messageAgeIns { - type cml_data_types:CML_INT32_T; config false; } // END of messageAgeIns definition. leaf instanceportconfbpduSent { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of instanceportconfbpduSent definition. leaf instanceportconfbpduRecieved { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of instanceportconfbpduRecieved definition. leaf instanceporttcnbpduSent { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of instanceporttcnbpduSent definition. leaf instanceporttcnbpduRecieved { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of instanceporttcnbpduRecieved definition. leaf cistforwardTransition { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of cistforwardTransition definition. leaf instancetopologychangeInitiator { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of instancetopologychangeInitiator definition. leaf topologychangeInitiator { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of topologychangeInitiator definition. leaf lasttopologychangeRecievedfrom { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of lasttopologychangeRecievedfrom definition. leaf configFormat { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of configFormat definition. leaf messageageTimervalue { - type cml_data_types:CML_INT32_T; config false; } // END of messageageTimervalue definition. leaf instanceMstiporttopologyChangetime { - type cml_data_types:CML_INT32_T; config false; } // END of instanceMstiporttopologyChangetime definition. leaf instancePortNextState { - type cml_data_types:CML_UINT32_T; config false; } // END of instancePortNextState definition. leaf instanceTopologuChangeCount { - type cml_data_types:CML_INT32_T; config false; } // END of instanceTopologuChangeCount definition. leaf mstipathCost { - type cml_data_types:CML_UINT32_T; config false; } // END of mstipathCost definition. } // End of mstpInterface-list } // End of interface-list - uses vlan-grouping; uses mstp-grouping; + uses vlan-grouping; } // End of bridge-list } // END of bridge-grouping definition. diff --git a/yang-files/cml_data_types.yang b/yang-files/cml_data_types.yang index e1bef533..14606c6e 100644 --- a/yang-files/cml_data_types.yang +++ b/yang-files/cml_data_types.yang @@ -35,7 +35,8 @@ module cml_data_types { revision "2016-09-29" { - description "Revisied on 2016-09-29."; } + description "Revisied on 2016-09-29."; + } @@ -286,6 +287,7 @@ module cml_data_types { enum broadcast { value 2; } enum non-broadcast { value 3; } enum point-to-multipoint { value 4; } + enum point-to-multipoint-non-broadcast { value 5; } } } @@ -298,8 +300,8 @@ module cml_data_types { typedef CML_OSPF6_RESTART_HELPER_T{ type enumeration { - enum restart { value 1; } - enum hitless-restart { value 2; } + enum only-reload { value 4; } + enum only-upgrade { value 8; } } } @@ -309,7 +311,6 @@ module cml_data_types { enum connected { value 2; } enum static { value 3; } enum rip { value 4; } - enum ospf { value 7; } enum bgp { value 8; } enum isis { value 9; } } @@ -389,19 +390,6 @@ module cml_data_types { } } - typedef CML_OSPF6_DEBUG_PACKET_TYPE_T{ - type enumeration { - enum hello { value 1; } - enum dd { value 2; } - enum ls-request { value 3; } - enum ls-update { value 4; } - enum ls-ack { value 5; } - enum send { value 6; } - enum recv { value 7; } - enum detail { value 8; } - } - } - typedef CML_BRIDGE_PROTOCOL_T{ type enumeration { enum ieee { value 1; } @@ -409,8 +397,13 @@ module cml_data_types { enum rstp { value 3; } enum rstp-vlan-bridge { value 4; } enum mstp { value 5; } + enum provider-rstp { value 6; } + enum provider-mstp { value 7; } enum rpvst+ { value 8; } + enum provider-rpvst+ { value 9; } enum trill { value 10; } + enum evb { value 97; } + enum svlan-evb { value 98; } } } @@ -505,6 +498,7 @@ module cml_data_types { typedef CML_BRIDGE_TOPOLOGY_T{ type enumeration { + enum topology-none { value 0; } enum ring { value 1; } } } @@ -670,7 +664,7 @@ module cml_data_types { type enumeration { enum detail { value 0; } enum hello { value 1; } - enum dd { value 2; } + enum dd { value 2; } enum ls-request { value 3; } enum ls-update { value 4; } enum ls-ack { value 5; } @@ -846,6 +840,23 @@ module cml_data_types { } } + typedef BGP_ADDITIONAL_PATH_TYPE_T{ + type enumeration { + enum receive { value 1; } + enum send { value 2; } + enum send-receive { value 3; } + } + } + + typedef BGP_PEER_ADDITIONAL_PATH_TYPE_T{ + type enumeration { + enum receive { value 1; } + enum send { value 2; } + enum send-receive { value 3; } + enum disable { value 4; } + } + } + typedef CML_BGP_SEND_COMMU_TYPE_T{ type bits { bit standard { position 1; } @@ -895,7 +906,6 @@ module cml_data_types { enum connected { value 1; } enum static { value 2; } enum rip { value 3; } - enum ospf { value 4; } enum isis { value 5; } } } @@ -915,6 +925,19 @@ module cml_data_types { } } + typedef CML_CLUSTER_ID_T{ + type union{ + + type CML_IPV4_ADDR_T { + + } + type CML_UINT32_T { + range "1..4294967295"; + + } + } + } + typedef CML_RSVP_PATH_TYPE_T{ type enumeration { enum mpls { value 0; } @@ -2212,4 +2235,183 @@ module cml_data_types { } } + typedef CML_MROUTE_ROUTETYPE_T{ + type enumeration { + enum static { value 3; } + enum rip { value 4; } + enum ospf { value 6; } + enum bgp { value 8; } + enum isis { value 9; } + } + } + + typedef CML_MROUTE_IFNAME_T{ + type string; + } + + typedef CML_MROUTE_GW_ADDR_T{ + type union{ + + type CML_IPV6_ADDR_T { + + } + type CML_MROUTE_IFNAME_T { + + } + } + } + + typedef CML_RIB_DEBUG_TYPE_T{ + type bits { + bit all { position 0; } + bit events { position 1; } + bit packet { position 2; } + bit packet-send { position 3; } + bit packet-recv { position 4; } + bit packet-detail { position 5; } + bit packet-send-detail { position 6; } + bit packet-recv-detail { position 7; } + bit kernel { position 8; } + bit ha { position 9; } + bit ha-all { position 10; } + bit nsm { position 11; } + bit bfd { position 12; } + bit monitor { position 13; } + bit routing { position 14; } + bit routing-add-route { position 15; } + bit routing-delete-route { position 16; } + bit routing-mod-route { position 17; } + bit hal-events { position 18; } + bit hal-ipc { position 19; } + } + } + + typedef CML_RIB_DEBUG_IPV6_TYPE_T{ + type bits { + bit routing { position 20; } + bit routing-add-route { position 21; } + bit routing-delete-route { position 22; } + bit routing-mod-route { position 23; } + } + } + + typedef CML_RIB_PACKET_DEBUG_TYPE_T{ + type enumeration { + enum recv { value 1; } + enum send { value 2; } + } + } + + typedef CML_VRRP_INIT_MSG_CODE_T{ + type enumeration { + enum VRRP_INIT_MSG_ADMIN_DOWN { value 0; } + enum VRRP_INIT_MSG_IF_NOT_RUNNING { value 1; } + enum VRRP_INIT_MSG_CIRCUIT_DOWN { value 2; } + enum VRRP_INIT_MSG_NO_SUBNET { value 3; } + enum VRRP_INIT_MSG_VIP_UNSET { value 4; } + enum VRRP_INIT_MSG_IN_SWITCH_BACK_DELAY { value 5; } + } + } + + typedef CML_VRRP_DEBUG_T{ + type bits { + bit all { position 0; } + bit events { position 1; } + bit packet { position 2; } + bit packet-send { position 3; } + bit packet-recv { position 4; } + } + } + + typedef CML_MCEC_HELLO_T{ + type enumeration { + enum long { value 0; } + enum short { value 1; } + } + } + + typedef MCEC_DEBUG_T{ + type bits { + bit hello { position 1; } + bit info { position 2; } + bit timer { position 3; } + bit event { position 4; } + bit cli { position 5; } + bit mac-sync { position 6; } + bit stp { position 7; } + bit all { position 8; } + } + } + + typedef CML_OSPF_AREA_ID_T{ + type union{ + + type CML_STRING_T { + + } + type CML_UINT16_T { + range "1..65535"; + + } + } + } + + typedef CML_OSPF6_DEBUG_PACKET_TYPE_T{ + type bits { + bit hello { position 1; } + bit dd { position 2; } + bit ls-request { position 3; } + bit ls-update { position 4; } + bit ls-ack { position 5; } + bit send { position 6; } + bit recv { position 7; } + bit detail { position 8; } + } + } + + typedef CML_OSPF6_DEBUG_IFSM_T{ + type bits { + bit status { position 0; } + bit events { position 1; } + bit timers { position 2; } + } + } + + typedef CML_OSPF6_DEBUG_LSA_T{ + type bits { + bit generate { position 0; } + bit flooding { position 1; } + bit install { position 2; } + bit refresh { position 3; } + bit maxage { position 4; } + } + } + + typedef CML_OSPF6_DEBUG_RIB_T{ + type bits { + bit interface { position 0; } + bit redistribute { position 1; } + } + } + + typedef CML_OSPF6_DEBUG_ROUTE_T{ + type bits { + bit spf { position 0; } + bit ia { position 1; } + bit ase { position 2; } + bit install { position 3; } + } + } + + typedef CML_OSPF6_DEBUG_EVENT_T{ + type bits { + bit abr { position 0; } + bit asbr { position 1; } + bit vlink { position 2; } + bit os { position 3; } + bit router { position 4; } + bit nssa { position 5; } + } + } + } \ No newline at end of file diff --git a/yang-files/feature_list.yang b/yang-files/feature_list.yang new file mode 100644 index 00000000..0d222c6b --- /dev/null +++ b/yang-files/feature_list.yang @@ -0,0 +1,166 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : feature_list.yang +* +*/ + +module feature_list { + + namespace "http://ipinfusion.com/ns/feature_list"; + + prefix "feature_list"; + + revision "2015-10-15" { + description "initial version: revisied on 2015-10-15."; + } + + feature HAVE_SPBD { + description "SPBD feature enabled"; + } + + feature HAVE_ACL { + description "ACL feature "; + } + + feature HAVE_OSPF_LFA { + description "ACL feature "; + } + + feature HAVE_BFD { + description "BFD feature "; + } + + feature HAVE_VRF_OSPF6 { + description "VRF_OSPF6 feature "; + } + + feature HAVE_OSPF6_LFA { + description "OSPF6_LFA feature "; + } + + feature HAVE_OSPF6_TE { + description "OSPF6_TE feature "; + } + + feature HAVE_OSPF6_CSPF { + description "OSPF6_CSPF feature "; + } + + feature HAVE_RESTART { + description "RESTART feature "; + } + + feature HAVE_OSPF6_OD { + description "OSPF6_OD feature "; + } + + feature HAVE_NSSA { + description "NSSA feature "; + } + + feature HAVE_RIBD { + description "RIBD feature "; + } + + feature HAVE_SNMP { + description "SNMP feature "; + } + + feature HAVE_IPV6 { + description "IPV6 feature enabled"; + } + + feature HAVE_MPLS_OAM { + description "MPLS-OAM feature enabled"; + } + + feature HAVE_VRF { + description "VRF feature enabled"; + } + + feature HAVE_LACPV2 { + description "LLDPV2 feature enabled"; + } + + feature HAVE_VRRP_V3 { + description "VRRPV3 feature enabled"; + } + + feature HAVE_LDPD { + description "LDP feature enabled"; + } + + feature HAVE_TE { + description "TE feature enabled"; + } + + feature HAVE_DSTE { + description "dste feature enabled"; + } + + feature HAVE_LLDPV2 { + description "LLDPV2 feature enabled"; + } + + feature HAVE_OSPF_CSPF { + description "OSPF-CSPF feature enabled"; + } + + feature HAVE_VRF_OSPF { + description "VRF-OSPF feature enabled"; + } + + feature HAVE_OSPF_TE { + description "TE feature enabled"; + } + + feature HAVE_VPN_ECMP { + description "HAVE_VPN_ECMP feature enabled"; + } + + feature BGP_L2VPN_VPLS_MODE { + description "l2vpn vpls feature enabled"; + } + + feature HAVE_EXT_CAP_ASN { + description "EXT-CAP-ASN feature enabled"; + } + + feature HAVE_MPLS { + description "MPLS feature enabled"; + } + + feature HAVE_BGP_EVPN { + description "bgp evpn feature enabled"; + } + + feature HAVE_BGP_VPLS { + description "bgp vpls feature enabled"; + } + + feature HAVE_6PE { + description "bgp 6PE feature enabled"; + } + + feature HAVE_BGP_TABLE_MAP { + description "bgp table map feature enabled"; + } + + feature HAVE_TCP_MD5SIG { + description "tcp md5 feature enabled"; + } + + feature HAVE_BGP_ADD_PATH { + description "additional path feature enabled"; + } + +} \ No newline at end of file diff --git a/yang-files/interface.yang b/yang-files/interface.yang index 51a449c0..a03daf5e 100644 --- a/yang-files/interface.yang +++ b/yang-files/interface.yang @@ -23,19 +23,22 @@ submodule interface { prefix cml_data_types; } + import feature_list { + prefix feature_list; + } + description "Interface"; - revision "2016-09-15" { - description "Revisied on 2016-09-15."; } + revision "2016-10-20" { + description "Revisied on 2016-10-20."; } grouping interface-grouping { list interface { - description "interface"; @@ -44,20 +47,17 @@ submodule interface { leaf vrId { - type cml_data_types:CML_INT32_T; default "0"; config true; } // END of vrId definition. leaf ifName { - type cml_data_types:CML_STRING_T; config true; } // END of ifName definition. leaf mtu { - type cml_data_types:CML_INT32_T { range "64..65536"; } @@ -66,13 +66,11 @@ submodule interface { } // END of mtu definition. leaf macAddr { - type cml_data_types:CML_STRING_T; config true; } // END of macAddr definition. leaf ipAddr { - type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -80,13 +78,11 @@ submodule interface { } // END of ipAddr definition. leaf prefixlen { - type cml_data_types:CML_UINT8_T; config true; } // END of prefixlen definition. leaf ipLabel { - type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -94,452 +90,391 @@ submodule interface { } // END of ipLabel definition. leaf vrfName { - type cml_data_types:CML_STRING_T; config true; } // END of vrfName definition. leaf ipForwarding { - type cml_data_types:CML_STRING_T; config false; } // END of ipForwarding definition. leaf ipv6Forwarding { - type cml_data_types:CML_STRING_T; config false; } // END of ipv6Forwarding definition. leaf mauType { - type cml_data_types:CML_MAUTYPE_T; default "dot3MauType0dot0"; config true; } // END of mauType definition. leaf duplex { - type cml_data_types:CML_DUPLEX_T; default "auto"; config true; } // END of duplex definition. leaf maxBandwidthStr { - + if-feature feature_list:HAVE_TE; type cml_data_types:CML_STRING_T; default "0"; config true; } // END of maxBandwidthStr definition. leaf reservableBandwidthStr { - + if-feature feature_list:HAVE_TE; type cml_data_types:CML_STRING_T; default "0"; config true; } // END of reservableBandwidthStr definition. leaf adminGrpName { - + if-feature feature_list:HAVE_TE; type cml_data_types:CML_STRING_T; config true; } // END of adminGrpName definition. leaf bandwidthConstraintMode { - type cml_data_types:CML_STRING_T; config true; } // END of bandwidthConstraintMode definition. leaf linkStatus { - type cml_data_types:CML_BOOL_T; default false; config true; } // END of linkStatus definition. leaf switchportStatus { - type cml_data_types:CML_BOOL_T; default false; config true; } // END of switchportStatus definition. leaf adminState { - type cml_data_types:CML_BOOL_T; default false; config true; } // END of adminState definition. leaf multicast { - type cml_data_types:CML_BOOL_T; config true; } // END of multicast definition. + leaf speed { + type cml_data_types:CML_STRING_T; + config true; + } // END of speed definition. + + leaf desc { + type cml_data_types:CML_STRING_T; + config true; + } // END of desc definition. + leaf labelSwitching { - type cml_data_types:CML_BOOL_T; config true; } // END of labelSwitching definition. leaf isRunning { - type cml_data_types:CML_STRING_T; config false; } // END of isRunning definition. leaf rpfType { - type cml_data_types:CML_STRING_T; config false; } // END of rpfType definition. leaf adminRunState { - type cml_data_types:CML_INTERFACE_ADMIN_STATE_T; config false; } // END of adminRunState definition. leaf dhcpConfigured { - type cml_data_types:CML_INT32_T; config false; } // END of dhcpConfigured definition. leaf gmplsType { - type cml_data_types:CML_STRING_T; config false; } // END of gmplsType definition. leaf vrfId { - type cml_data_types:CML_INT32_T; config false; } // END of vrfId definition. leaf multipathNum { - type cml_data_types:CML_INT32_T; config false; } // END of multipathNum definition. leaf routeTotal { - type cml_data_types:CML_UINT32_T; config false; } // END of routeTotal definition. leaf counterFib { - type cml_data_types:CML_UINT32_T; config false; } // END of counterFib definition. leaf ip6Addr { - type cml_data_types:CML_STRING_T; config false; } // END of ip6Addr definition. leaf ingressfilterStatus { - type cml_data_types:CML_STRING_T; config false; } // END of ingressfilterStatus definition. leaf frameTypes { - type cml_data_types:CML_STRING_T; config false; } // END of frameTypes definition. leaf nativeVlan { - type cml_data_types:CML_UINT32_T; config false; } // END of nativeVlan definition. leaf defaultVlan { - type cml_data_types:CML_UINT32_T; config false; } // END of defaultVlan definition. leaf confVlan { - type cml_data_types:CML_UINT32_T; config false; } // END of confVlan definition. leaf vId { - type cml_data_types:CML_INT32_T; config false; } // END of vId definition. leaf transvId { - type cml_data_types:CML_INT32_T; config false; } // END of transvId definition. leaf hwType { - type cml_data_types:CML_STRING_T; config false; } // END of hwType definition. leaf hwAddr { - type cml_data_types:CML_STRING_T; config false; } // END of hwAddr definition. leaf staticFlag { - type cml_data_types:CML_STRING_T; config false; } // END of staticFlag definition. leaf interfaceDesc { - type cml_data_types:CML_STRING_T; config false; } // END of interfaceDesc definition. leaf autoNeg { - type cml_data_types:CML_STRING_T; config false; } // END of autoNeg definition. leaf vrxFlag { - type cml_data_types:CML_STRING_T; config false; } // END of vrxFlag definition. leaf maxlabelValue { - type cml_data_types:CML_INT32_T; config false; } // END of maxlabelValue definition. leaf ifoutputErrors { - type cml_data_types:CML_STRING_T; config false; } // END of ifoutputErrors definition. leaf ifCollisions { - type cml_data_types:CML_STRING_T; config false; } // END of ifCollisions definition. leaf servString { - type cml_data_types:CML_STRING_T; config false; } // END of servString definition. leaf vcgroupName { - type cml_data_types:CML_STRING_T; config false; } // END of vcgroupName definition. leaf bwconstraintMode { - type cml_data_types:CML_STRING_T; config false; } // END of bwconstraintMode definition. leaf classtypeNumber { - type cml_data_types:CML_STRING_T; config false; } // END of classtypeNumber definition. leaf teclpriorityBw { - type cml_data_types:CML_STRING_T; config false; } // END of teclpriorityBw definition. leaf ifinputStats { - type cml_data_types:CML_STRING_T; config false; } // END of ifinputStats definition. leaf ifoutputStats { - type cml_data_types:CML_STRING_T; config false; } // END of ifoutputStats definition. leaf ifinputErrors { - type cml_data_types:CML_STRING_T; config false; } // END of ifinputErrors definition. leaf ifIndex { - type cml_data_types:CML_INT32_T; config false; } // END of ifIndex definition. leaf ifMetric { - type cml_data_types:CML_INT32_T; config false; } // END of ifMetric definition. leaf arpageingTimeout { - type cml_data_types:CML_INT32_T; config false; } // END of arpageingTimeout definition. leaf labelSpace { - type cml_data_types:CML_INT32_T; config false; } // END of labelSpace definition. leaf minlabelValue { - type cml_data_types:CML_INT32_T; config false; } // END of minlabelValue definition. leaf fromLabel { - type cml_data_types:CML_STRING_T; config false; } // END of fromLabel definition. leaf toLabel { - type cml_data_types:CML_STRING_T; config false; } // END of toLabel definition. leaf vplsName { - type cml_data_types:CML_STRING_T; config false; } // END of vplsName definition. leaf vcName { - type cml_data_types:CML_STRING_T; config false; } // END of vcName definition. leaf vcType { - type cml_data_types:CML_STRING_T; config false; } // END of vcType definition. leaf mplsClassTypeName { - type cml_data_types:CML_STRING_T; config false; } // END of mplsClassTypeName definition. leaf mplsclasstypeNumber { - type cml_data_types:CML_INT32_T; config false; } // END of mplsclasstypeNumber definition. leaf mplsPriority { - type cml_data_types:CML_INT32_T; config false; } // END of mplsPriority definition. leaf mplsteclassId { - type cml_data_types:CML_STRING_T; config false; } // END of mplsteclassId definition. leaf ifinputPkts { - type cml_data_types:CML_UINT32_T; config false; } // END of ifinputPkts definition. leaf ifinputOctets { - type cml_data_types:CML_UINT32_T; config false; } // END of ifinputOctets definition. leaf ifinputDrops { - type cml_data_types:CML_UINT32_T; config false; } // END of ifinputDrops definition. leaf ifinputmcastPkts { - type cml_data_types:CML_UINT32_T; config false; } // END of ifinputmcastPkts definition. leaf ifbadCrc { - type cml_data_types:CML_UINT32_T; config false; } // END of ifbadCrc definition. leaf ifundersizedPkts { - type cml_data_types:CML_UINT32_T; config false; } // END of ifundersizedPkts definition. leaf ifoutputPkts { - type cml_data_types:CML_UINT32_T; config false; } // END of ifoutputPkts definition. leaf ifoutputOctets { - type cml_data_types:CML_UINT32_T; config false; } // END of ifoutputOctets definition. leaf ifoutputDrops { - type cml_data_types:CML_UINT32_T; config false; } // END of ifoutputDrops definition. leaf ifoutputBcastPkts { - type cml_data_types:CML_UINT32_T; config false; } // END of ifoutputBcastPkts definition. leaf ifoversizedPkts { - type cml_data_types:CML_UINT32_T; config false; } // END of ifoversizedPkts definition. leaf ifoutputmcastPkts { - type cml_data_types:CML_UINT32_T; config false; } // END of ifoutputmcastPkts definition. @@ -547,7 +482,6 @@ submodule interface { list secondary { - description "IPv4 Address"; @@ -556,19 +490,23 @@ submodule interface { leaf secIpAddr { - - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_IPV4_PREFIX_T; config true; } // END of secIpAddr definition. + leaf prefixlen { + type cml_data_types:CML_UINT8_T; + config true; + } // END of prefixlen definition. + leaf secondaryFlag { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of secondaryFlag definition. leaf ipLabel { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; } // END of ipLabel definition. @@ -576,7 +514,7 @@ submodule interface { } // End of secondary-list list bandwidthConstraint { - + if-feature feature_list:HAVE_TE; description "set bandwidth constraint"; @@ -586,13 +524,13 @@ submodule interface { leaf constraintName { - type cml_data_types:CML_STRING_T; config true; } // END of constraintName definition. leaf bandwidthStr { - mandatory true; + mandatory true; + if-feature feature_list:HAVE_TE; type cml_data_types:CML_STRING_T { length "1..10000000000"; } @@ -603,7 +541,6 @@ submodule interface { list ipv6Addr { - description "IPv6 Address"; @@ -612,13 +549,12 @@ submodule interface { leaf ipv6Addr { - type cml_data_types:CML_STRING_T; config true; } // END of ipv6Addr definition. leaf anycast { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of anycast definition. @@ -627,7 +563,6 @@ submodule interface { list ipRouteSummary { - description "ipRouteSummary"; @@ -636,13 +571,11 @@ submodule interface { leaf routeType { - type cml_data_types:CML_STRING_T; config false; } // END of routeType definition. leaf counterType { - type cml_data_types:CML_UINT32_T; config false; } // END of counterType definition. diff --git a/yang-files/l3vrrp.yang b/yang-files/l3vrrp.yang new file mode 100644 index 00000000..b6811833 --- /dev/null +++ b/yang-files/l3vrrp.yang @@ -0,0 +1,682 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : l3vrrp.yang +* +*/ + +submodule l3vrrp { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "Virtual Router Redundancy Protocol Configurations"; + + + revision "2016-08-01" { + description "Revisied on 2016-08-01."; + } + + + + grouping Vrrp4Instance-grouping { + list Vrrp4Instance { + + description + "vrrp related operations"; + + config true; + key "vrrpid"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + default "0"; + config true; + description "Virtual Router Id"; + } // END of vrId definition. + + leaf vrrpid { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + description "vrrp instance id"; + } // END of vrrpid definition. + + + list vrrp4Interface { + + description + "vrrp4Interface"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T; + config true; + description "router vrrp"; + } // END of ifName definition. + + leaf sender_ipv4 { + type cml_data_types:CML_STRING_T; + config false; + description "Sender IP address"; + } // END of sender_ipv4 definition. + + leaf primary_addr { + type cml_data_types:CML_STRING_T; + config false; + description "Primary IPv4 address"; + } // END of primary_addr definition. + + leaf adv_src_v4 { + type cml_data_types:CML_STRING_T; + config false; + description "Source IPv4 address of advertisement"; + } // END of adv_src_v4 definition. + + leaf ai_vip_v4 { + type cml_data_types:CML_STRING_T; + config false; + description "Virtual IP address"; + } // END of ai_vip_v4 definition. + + leaf v2compatible { + type cml_data_types:CML_BOOL_T; + config true; + description "v2-compatible"; + } // END of v2compatible definition. + + leaf virtualip { + type cml_data_types:CML_IPV4_ADDR_T; + config true; + description "virtual-ip"; + } // END of virtualip definition. + + leaf conf_owner { + type cml_data_types:CML_BOOL_T; + default false; + config true; + description "virtual-ip as owner"; + } // END of conf_owner definition. + + leaf operationalip { + type cml_data_types:CML_IPV4_ADDR_T; + config true; + description "opeartional Ip address"; + } // END of operationalip definition. + + uses vrrp_configurations; + } // End of vrrp4Interface-list + } // End of Vrrp4Instance-list + } // END of Vrrp4Instance-grouping definition. + + + grouping Vrrp6Instance-grouping { + list Vrrp6Instance { + + description + "vrrp related operations"; + + config true; + key "vrrp6id"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + default "0"; + config true; + description "virtual Router Id"; + } // END of vrId definition. + + leaf vrrp6id { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + description "router vrrp instance"; + } // END of vrrp6id definition. + + + list vrrp6Interface { + + description + "vrrp6Interface"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T; + config true; + description "router ipv6 vrrp"; + } // END of ifName definition. + + leaf virtualip6 { + type cml_data_types:CML_IPV6_ADDR_T; + config true; + description "virtual-ipv6"; + } // END of virtualip6 definition. + + leaf owner6 { + type cml_data_types:CML_BOOL_T; + default false; + config true; + description "virtual-ipv6 as owner"; + } // END of owner6 definition. + + leaf operationalip6 { + type cml_data_types:CML_IPV6_ADDR_T; + config true; + description "operational ipv6 address"; + } // END of operationalip6 definition. + + leaf adv_src_6 { + type cml_data_types:CML_STRING_T; + config false; + description "Source IPv6 address of advertisement"; + } // END of adv_src_6 definition. + + leaf ai_vip_v6 { + type cml_data_types:CML_STRING_T; + config false; + description "Virtual IPv6 address"; + } // END of ai_vip_v6 definition. + + uses vrrp_configurations; + } // End of vrrp6Interface-list + } // End of Vrrp6Instance-list + } // END of Vrrp6Instance-grouping definition. + grouping vrrp_configurations { + leaf circuitifName { + type cml_data_types:CML_STRING_T; + config true; + } // END of circuitifName definition. + + leaf prioritydelta { + type cml_data_types:CML_UINT8_T { + range "1..253"; + } + config true; + description "circuit-failover"; + } // END of prioritydelta definition. + + leaf enable { + type cml_data_types:CML_ENABLE_DISABLE_T; + config true; + description "enable VRRP session on the router"; + } // END of enable definition. + + leaf preemptmode { + type cml_data_types:CML_VRRP_PREEMPT_MODE_T; + config true; + description "preemption enable"; + } // END of preemptmode definition. + + leaf priority { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "255"; + config true; + description "Priority"; + } // END of priority definition. + + leaf switchback { + type cml_data_types:CML_INT32_T { + range "1..500000"; + } + config true; + description "switch back delay"; + } // END of switchback definition. + + leaf advertiseinterval { + type cml_data_types:CML_INT32_T { + range "5..4095"; + } + config true; + description "Advertisement interval"; + } // END of advertiseinterval definition. + + leaf acceptmode { + type cml_data_types:CML_VRRP_ACCEPT_MODE_T; + config true; + description "accept mode enable"; + } // END of acceptmode definition. + + leaf vrrp_old_mac { + type cml_data_types:CML_STRING_T; + config false; + description "Old Mac for each VRRP session"; + } // END of vrrp_old_mac definition. + + leaf prev_state { + type cml_data_types:CML_INT8_T; + config false; + description "Previous State."; + } // END of prev_state definition. + + leaf state { + type cml_data_types:CML_INT8_T; + config false; + description "Current State."; + } // END of state definition. + + leaf af_type { + type cml_data_types:CML_INT8_T; + config false; + description "Address family"; + } // END of af_type definition. + + leaf oper_ip_status { + type cml_data_types:CML_INT32_T; + config false; + } // END of oper_ip_status definition. + + leaf owner { + type cml_data_types:CML_BOOL_T; + config false; + description "flag for oper_pri_ip"; + } // END of owner definition. + + leaf run_priority { + type cml_data_types:CML_BOOL_T; + config false; + description "Priority"; + } // END of run_priority definition. + + leaf switch_back_delay_timer { + type cml_data_types:CML_INT32_T; + config false; + description "Countdown timer for switch_back_delay"; + } // END of switch_back_delay_timer definition. + + leaf master_adv_int { + type cml_data_types:CML_INT32_T; + config false; + description "Adv interval received from the master"; + } // END of master_adv_int definition. + + leaf vmac_mbyte_word { + type cml_data_types:CML_STRING_T; + config false; + description "Virtual Mac"; + } // END of vmac_mbyte_word definition. + + leaf timer { + type cml_data_types:CML_INT32_T; + config false; + description "Countdown timer"; + } // END of timer definition. + + leaf vip_status { + type cml_data_types:CML_BOOL_T; + config false; + description "Flags for virtual-ip"; + } // END of vip_status definition. + + leaf shutdown_flag { + type cml_data_types:CML_BOOL_T; + config false; + description "Flags for shutdown flag"; + } // END of shutdown_flag definition. + + leaf skew_time { + type cml_data_types:CML_INT32_T; + config false; + description "Skew time"; + } // END of skew_time definition. + + leaf master_down_int { + type cml_data_types:CML_INT32_T; + config false; + description "Master down interval"; + } // END of master_down_int definition. + + leaf num_ip_addrs { + type cml_data_types:CML_INT32_T; + config false; + description "Number of IP addresses"; + } // END of num_ip_addrs definition. + + leaf link_addr_deleted { + type cml_data_types:CML_BOOL_T; + config false; + description "VRRP Link address"; + } // END of link_addr_deleted definition. + + leaf mc_status { + type cml_data_types:CML_BOOL_T; + config false; + description " VRRP Circuit Failover machine status"; + } // END of mc_status definition. + + leaf mc_down_cnt { + type cml_data_types:CML_INT32_T; + config false; + description " VRRP Circuit Failover machine down count"; + } // END of mc_down_cnt definition. + + leaf pri_zero_pkts_sent { + type cml_data_types:CML_BOOL_T; + config false; + description "VRRP Circuit Failover priority"; + } // END of pri_zero_pkts_sent definition. + + leaf rowstatus { + type cml_data_types:CML_INT32_T; + config false; + description "SNMP variables"; + } // END of rowstatus definition. + + leaf primary_ipaddr_flag { + type cml_data_types:CML_INT32_T; + config false; + description "SNMP variables"; + } // END of primary_ipaddr_flag definition. + + leaf storage_type { + type cml_data_types:CML_INT32_T; + config false; + description "SNMP variables"; + } // END of storage_type definition. + + leaf accept_vip_installed { + type cml_data_types:CML_INT32_T; + config false; + description "flag for Keeps track if non-owner installs VIP in accept mode"; + } // END of accept_vip_installed definition. + + leaf stats_become_master { + type cml_data_types:CML_INT32_T; + config false; + description "Times state transitioned to master"; + } // END of stats_become_master definition. + + leaf stats_advt_rcvd { + type cml_data_types:CML_INT32_T; + config false; + description " Advt rcvd"; + } // END of stats_advt_rcvd definition. + + leaf stats_advt_int_errors { + type cml_data_types:CML_INT32_T; + config false; + description "Advt rcvd with wrong interval"; + } // END of stats_advt_int_errors definition. + + leaf stats_ip_ttl_errors { + type cml_data_types:CML_INT32_T; + config false; + description "No. pkts rcvd with ttl != 255"; + } // END of stats_ip_ttl_errors definition. + + leaf stats_pri_zero_pkts_rcvd { + type cml_data_types:CML_INT32_T; + config false; + description "No. pkts rcvd with priority=0"; + } // END of stats_pri_zero_pkts_rcvd definition. + + leaf stats_pri_zero_pkts_sent { + type cml_data_types:CML_INT32_T; + config false; + description " No. pkts sent with priority=0"; + } // END of stats_pri_zero_pkts_sent definition. + + leaf stats_invalid_type_pkts_rcvd { + type cml_data_types:CML_INT32_T; + config false; + description "No. pkts rcvd with invalid type"; + } // END of stats_invalid_type_pkts_rcvd definition. + + leaf stats_addr_list_errors { + type cml_data_types:CML_INT32_T; + config false; + description "No. pkts rcvd with addr mismatch"; + } // END of stats_addr_list_errors definition. + + leaf stats_invalid_auth_type { + type cml_data_types:CML_INT32_T; + config false; + description "No. pkts rcvd with unknown auth type"; + } // END of stats_invalid_auth_type definition. + + leaf stats_auth_type_mismatch { + type cml_data_types:CML_INT32_T; + config false; + description "No. pkts rcvd with auth type mismatch"; + } // END of stats_auth_type_mismatch definition. + + leaf stats_ip_cnt_mismatch { + type cml_data_types:CML_INT32_T; + config false; + description "No. of pkts rcvd with mismatch in Ip address count"; + } // END of stats_ip_cnt_mismatch definition. + + leaf stats_pkt_len_errors { + type cml_data_types:CML_INT32_T; + config false; + description "Total num of pkts rcvd with pkt length less than length of VRRP header"; + } // END of stats_pkt_len_errors definition. + + leaf stats_disc_time { + type cml_data_types:CML_UINT32_T; + config false; + description "Discontinuity Time"; + } // END of stats_disc_time definition. + + leaf mc_up_events { + type cml_data_types:CML_INT32_T; + config false; + description "Monitored circuit up event"; + } // END of mc_up_events definition. + + leaf mc_down_events { + type cml_data_types:CML_INT32_T; + config false; + description "Monitored circuit down event"; + } // END of mc_down_events definition. + + leaf new_master_reason { + type cml_data_types:CML_INT32_T; + config false; + description "Reason to transit to the master"; + } // END of new_master_reason definition. + + leaf new_master_reason_next { + type cml_data_types:CML_INT32_T; + config false; + description "Reason to transit that is to set"; + } // END of new_master_reason_next definition. + + leaf init_msg_code { + type cml_data_types:CML_VRRP_INIT_MSG_CODE_T; + config false; + description "Vrrp init message types"; + } // END of init_msg_code definition. + + leaf garp_pkt_delay { + type cml_data_types:CML_INT32_T; + config false; + description "Garp packet display"; + } // END of garp_pkt_delay definition. + + leaf garp_snd_flag { + type cml_data_types:CML_BOOL_T; + config false; + description "Garp send flag"; + } // END of garp_snd_flag definition. + + container vrrp_advt_info { + config false; + + description + "Holds the VRRP Packet information"; + + leaf ver_type { + type cml_data_types:CML_UINT8_T; + config false; + description "Version and Type"; + } // END of ver_type definition. + + leaf advert_vrid { + type cml_data_types:CML_UINT8_T; + config false; + description "VrId"; + } // END of advert_vrid definition. + + leaf advert_priority { + type cml_data_types:CML_UINT8_T; + config false; + description "Priority"; + } // END of advert_priority definition. + + leaf advert_num_ip_addrs { + type cml_data_types:CML_UINT8_T; + config false; + description "Number of IP addresses to backup"; + } // END of advert_num_ip_addrs definition. + + leaf advert_auth_type { + type cml_data_types:CML_UINT8_T; + config false; + description "Auth type"; + } // END of advert_auth_type definition. + + leaf advert_advt_int { + type cml_data_types:CML_UINT8_T; + config false; + description "Advertisement interval"; + } // END of advert_advt_int definition. + + leaf advert_cksum { + type cml_data_types:CML_INT32_T; + config false; + description "VRRP Checksum"; + } // END of advert_cksum definition. + + leaf advert_ipv4_address { + type cml_data_types:CML_STRING_T; + config false; + description "Virtual IP address"; + } // END of advert_ipv4_address definition. + + leaf advert_ipv6_address { + type cml_data_types:CML_STRING_T; + config false; + description "Virtual IPv6 address"; + } // END of advert_ipv6_address definition. + + leaf advert_auth_data { + type cml_data_types:CML_STRING_T; + config false; + description "Auth data"; + } // END of advert_auth_data definition. + + } // END of vrrp_advt_info-container definition. + } // END of vrrp_configurations definition. + + grouping vrrp-grouping { + container vrrp { + config true; + + description + "Virtual Router Redundancy Protocol Configurations"; + + leaf vmac { + type cml_data_types:CML_VRRP_VMAC_T; + config true; + description "vrrp vmac"; + } // END of vmac definition. + + leaf compatible { + type cml_data_types:CML_VRRP_VMAC_T; + config true; + description "vrrp compatible-v2"; + } // END of compatible definition. + + leaf notificationcntl { + type cml_data_types:CML_INT32_T; + config false; + description "Flag For Trap Generation"; + } // END of notificationcntl definition. + + leaf sess_tbl_max { + type cml_data_types:CML_INT32_T; + config false; + description "Instance table max value"; + } // END of sess_tbl_max definition. + + leaf sess_tbl_cnt { + type cml_data_types:CML_INT32_T; + config false; + description "Instance table count value"; + } // END of sess_tbl_cnt definition. + + leaf vrrp_v4_sess_cnt { + type cml_data_types:CML_UINT16_T; + config false; + description "IPv4 Session count"; + } // END of vrrp_v4_sess_cnt definition. + + leaf vrrp_v6_sess_cnt { + type cml_data_types:CML_UINT16_T; + config false; + description "IPv6 Session count"; + } // END of vrrp_v6_sess_cnt definition. + + leaf vrrp_asso_tbl_max { + type cml_data_types:CML_INT32_T; + config false; + description "Instance table associate max value"; + } // END of vrrp_asso_tbl_max definition. + + leaf vrrp_asso_tbl_cnt { + type cml_data_types:CML_INT32_T; + config false; + description "Instance table associate count value"; + } // END of vrrp_asso_tbl_cnt definition. + + } // END of vrrp-container definition. + } // END of vrrp-container definition. + + grouping VrrpDebug-grouping { + container VrrpDebug { + config true; + + description + "vrrp debug commands"; + + leaf debugflag { + type cml_data_types:CML_VRRP_DEBUG_T; + config true; + description "debug vrrp"; + } // END of debugflag definition. + + } // END of VrrpDebug-container definition. + } // END of VrrpDebug-container definition. + + +} \ No newline at end of file diff --git a/yang-files/lacp.yang b/yang-files/lacp.yang index 261ae8c1..d0356895 100644 --- a/yang-files/lacp.yang +++ b/yang-files/lacp.yang @@ -28,14 +28,14 @@ submodule lacp { revision "2015-10-20" { - description "Revisied on 2015-10-20."; } + description "Revisied on 2015-10-20."; + } grouping nsmlacpInterface-grouping { list nsmlacpInterface { - description "NSM LACP interface related operations"; @@ -44,20 +44,18 @@ submodule lacp { leaf ifName { - type cml_data_types:CML_STRING_T; config true; } // END of ifName definition. leaf vrId { - type cml_data_types:CML_INT32_T; default "0"; config true; } // END of vrId definition. leaf channelGroup { - mandatory true; + mandatory true; type cml_data_types:CML_UINT16_T { range "1..65535"; } @@ -65,7 +63,7 @@ submodule lacp { } // END of channelGroup definition. leaf modeOperation { - mandatory true; + mandatory true; type cml_data_types:CML_LACP_MODE_T; config true; description "channel-group"; @@ -78,7 +76,6 @@ submodule lacp { grouping nsmportInterface-grouping { list nsmportInterface { - description "NSM LACP interface related operations"; @@ -87,20 +84,17 @@ submodule lacp { leaf ifName { - type cml_data_types:CML_STRING_T; config true; } // END of ifName definition. leaf psc { - type cml_data_types:CML_LACP_PSC_T; default "src-dst-mac"; config true; } // END of psc definition. leaf static-channel-group { - type cml_data_types:CML_UINT16_T { range "1..12"; } diff --git a/yang-files/lag.yang b/yang-files/lag.yang index 9bf515ac..d92fc429 100644 --- a/yang-files/lag.yang +++ b/yang-files/lag.yang @@ -23,19 +23,23 @@ submodule lag { prefix cml_data_types; } + import feature_list { + prefix feature_list; + } + description "Layer-2 lacp configurations"; revision "2015-10-21" { - description "Revisied on 2015-10-21."; } + description "Revisied on 2015-10-21."; + } grouping lacpInterface-grouping { list lacpInterface { - description "LACP interface related operations"; @@ -44,13 +48,11 @@ submodule lag { leaf ifName { - type cml_data_types:CML_STRING_T; config true; } // END of ifName definition. leaf portPriority { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -59,21 +61,19 @@ submodule lag { } // END of portPriority definition. leaf TimeOut { - type cml_data_types:CML_LACP_TIMEOUT_T; default "long"; config true; } // END of TimeOut definition. leaf bridgeType { - type cml_data_types:CML_LACP_BRIDGETYPE_T; default "multicast-group-address"; config true; } // END of bridgeType definition. leaf discardConv { - + if-feature feature_list:HAVE_LACPV2; type cml_data_types:CML_LACP_DISCARD_CONV_T; default "disable"; config true; @@ -84,14 +84,12 @@ submodule lag { grouping lacpSystemPriority-grouping { container lacpSystemPriority { - - config true; + config true; description "lacpSystemPriority"; leaf systemPriority { - type cml_data_types:CML_UINT32_T { range "1..65535"; } diff --git a/yang-files/lldpv2.yang b/yang-files/lldpv2.yang index c57c9fef..cca4eb6e 100644 --- a/yang-files/lldpv2.yang +++ b/yang-files/lldpv2.yang @@ -23,19 +23,22 @@ submodule lldpv2 { prefix cml_data_types; } + import feature_list { + prefix feature_list; + } + description "Link Layer Discovery Protocol"; - revision "2016-09-15" { - description "Revisied on 2016-09-15."; } + revision "2016-10-20" { + description "Revisied on 2016-10-20."; } grouping lldpv2Interface-grouping { list lldpv2Interface { - description "LLDPV2 interface related operations"; @@ -44,19 +47,17 @@ submodule lldpv2 { leaf ifName { - type cml_data_types:CML_STRING_T; config true; } // END of ifName definition. leaf vrId { - type cml_data_types:CML_INT32_T; config true; } // END of vrId definition. leaf lldpPortDescription { - + if-feature feature_list:HAVE_LLDPV2; type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -64,7 +65,6 @@ submodule lldpv2 { } // END of lldpPortDescription definition. leaf lldpAgtCircuitId { - type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -72,14 +72,14 @@ submodule lldpv2 { } // END of lldpAgtCircuitId definition. leaf lldpmedDevType { - + if-feature feature_list:HAVE_LLDPV2; type cml_data_types:CML_LLDP_MEDDEV_T; config true; description "lldp med-devtype"; } // END of lldpmedDevType definition. leaf localName { - + if-feature feature_list:HAVE_LLDPV2; type cml_data_types:CML_STRING_T; default "NULL"; config true; @@ -89,7 +89,6 @@ submodule lldpv2 { list lldpAgent { - description "LLDP configuration related operations"; @@ -98,13 +97,11 @@ submodule lldpv2 { leaf lldpAgent { - type cml_data_types:CML_LLDP_AGENT_T; config true; } // END of lldpAgent definition. leaf lldpEnable { - type cml_data_types:CML_LLDP_ENABLE_T; default "rxonly"; config true; @@ -112,21 +109,18 @@ submodule lldpv2 { } // END of lldpEnable definition. leaf lldpDisable { - type cml_data_types:CML_BOOL_T; config true; description "lldp disable"; } // END of lldpDisable definition. leaf reinitDelay { - type cml_data_types:CML_STRING_T; config true; description "lldp reinitDelay timer"; } // END of reinitDelay definition. leaf MsgTxInterval { - type cml_data_types:CML_UINT32_T { range "5..3600"; } @@ -136,14 +130,12 @@ submodule lldpv2 { } // END of MsgTxInterval definition. leaf MsgTxValue { - type cml_data_types:CML_STRING_T; config true; description "lldp msg-tx-hold"; } // END of MsgTxValue definition. leaf MsgFastTx { - type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -153,7 +145,6 @@ submodule lldpv2 { } // END of MsgFastTx definition. leaf neighborLimit { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -161,7 +152,6 @@ submodule lldpv2 { } // END of neighborLimit definition. leaf neighborTimer { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -170,7 +160,6 @@ submodule lldpv2 { } // END of neighborTimer definition. leaf portLimit { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -179,13 +168,11 @@ submodule lldpv2 { } // END of portLimit definition. leaf portMac { - type cml_data_types:CML_STRING_T; config true; } // END of portMac definition. leaf portTimer { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -194,7 +181,6 @@ submodule lldpv2 { } // END of portTimer definition. leaf TxMaxCredit { - type cml_data_types:CML_UINT32_T { range "1..10"; } @@ -204,7 +190,6 @@ submodule lldpv2 { } // END of TxMaxCredit definition. leaf TxFastInit { - type cml_data_types:CML_UINT32_T { range "1..8"; } @@ -214,7 +199,6 @@ submodule lldpv2 { } // END of TxFastInit definition. leaf portAddr { - type cml_data_types:CML_LLDP_MGMT_ADDR_T; default "mac-address"; config true; @@ -222,7 +206,6 @@ submodule lldpv2 { } // END of portAddr definition. leaf chassisId { - type cml_data_types:CML_LLDP_CHASSIS_T; default "mac-address"; config true; @@ -230,7 +213,6 @@ submodule lldpv2 { } // END of chassisId definition. leaf portId { - type cml_data_types:CML_LLDP_PORT_T; default "mac-address"; config true; @@ -238,33 +220,28 @@ submodule lldpv2 { } // END of portId definition. leaf tlvFlag { - type cml_data_types:CML_LLDP_TVL_FLAG_T; config true; description "lldp tlv-select"; } // END of tlvFlag definition. leaf TlvSelect { - type cml_data_types:CML_LLDP_IEEE_8023_T; config true; } // END of TlvSelect definition. leaf TlvSelectIeee { - type cml_data_types:CML_LLDP_IEEE_8021_T; config true; } // END of TlvSelectIeee definition. leaf TlvSelectBasic { - type cml_data_types:CML_LLDP_BASIC_T; config true; description "lldp tlv-select basic-mgmt"; } // END of TlvSelectBasic definition. leaf tlvMed { - type cml_data_types:CML_LLDP_MED_T; default "media-capabilities"; config true; @@ -277,36 +254,19 @@ submodule lldpv2 { grouping systemDetail-grouping { container systemDetail { - - config true; + config true; description "systemDetail"; - leaf SystemName { - - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "lldp system-name"; - } // END of SystemName definition. - leaf lldpRun { - + if-feature feature_list:HAVE_LLDPV2; type cml_data_types:CML_BOOL_T; config true; } // END of lldpRun definition. - leaf lldpSystemDescription { - - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "lldp system-description"; - } // END of lldpSystemDescription definition. - leaf locallyAssigned { - + if-feature feature_list:HAVE_LLDPV2; type cml_data_types:CML_STRING_T; default "NULL"; config true; diff --git a/yang-files/mstp.yang b/yang-files/mstp.yang index cf120ae2..377640ad 100644 --- a/yang-files/mstp.yang +++ b/yang-files/mstp.yang @@ -29,14 +29,14 @@ submodule mstp { revision "2015-04-25" { - description "Revisied on 2015-04-25."; } + description "Revisied on 2015-04-25."; + } grouping mstp-grouping { list mstp { - description "mstp"; @@ -45,20 +45,17 @@ submodule mstp { leaf vrId { - type cml_data_types:CML_UINT32_T; default "0"; config true; } // END of vrId definition. leaf bridgeId { - type cml_data_types:CML_STRING_T; config true; } // END of bridgeId definition. leaf instanceId { - type cml_data_types:CML_INT32_T { range "1..63"; } @@ -67,7 +64,6 @@ submodule mstp { } // END of instanceId definition. leaf instPriority { - type cml_data_types:CML_UINT32_T { range "0..61440"; } @@ -77,301 +73,296 @@ submodule mstp { } // END of instPriority definition. leaf-list vlanId { - type cml_data_types:CML_UINT16_T; config true; } // END of vlanId definition. leaf bridgeEnabled { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of bridgeEnabled definition. leaf topologyChange { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of topologyChange definition. leaf topologychangeDetected { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of topologychangeDetected definition. leaf cistmstpBridge { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of cistmstpBridge definition. leaf externalrootPathcost { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of externalrootPathcost definition. leaf internalrootPathcost { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of internalrootPathcost definition. leaf cistbridgePriority { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of cistbridgePriority definition. leaf cistrootportIfindex { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of cistrootportIfindex definition. leaf totalnumberTopologychange { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of totalnumberTopologychange definition. leaf lasttimeTopologychange { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of lasttimeTopologychange definition. leaf cistdesignatedRoot { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of cistdesignatedRoot definition. leaf cistregisteredRoot { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of cistregisteredRoot definition. leaf cistBridgeid { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of cistBridgeid definition. leaf mstirootportIfindex { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of mstirootportIfindex definition. leaf mstibridgePriority { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of mstibridgePriority definition. leaf mstibridgeId { - mandatory true; + mandatory true; type cml_data_types:CML_UINT8_T; config false; } // END of mstibridgeId definition. leaf mstidesignatedRoot { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of mstidesignatedRoot definition. leaf designatedPortid { - mandatory true; + mandatory true; type cml_data_types:CML_UINT16_T; config false; } // END of designatedPortid definition. leaf mstipathCost { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of mstipathCost definition. leaf mstiPriority { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of mstiPriority definition. leaf messageAge { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of messageAge definition. leaf forwarddelayTimer { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of forwarddelayTimer definition. leaf messageageTimer { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of messageageTimer definition. leaf helloTimer { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of helloTimer definition. leaf instanceportconfbpduSent { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of instanceportconfbpduSent definition. leaf instanceportconfbpduRecieved { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of instanceportconfbpduRecieved definition. leaf instanceporttcnbpduSent { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of instanceporttcnbpduSent definition. leaf instanceporttcnbpduRecieved { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of instanceporttcnbpduRecieved definition. leaf cistmessageAge { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of cistmessageAge definition. leaf cistforwardTransition { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of cistforwardTransition definition. leaf portnextState { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of portnextState definition. leaf instanceporttopologyChangetime { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of instanceporttopologyChangetime definition. leaf bridgemacAddress { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of bridgemacAddress definition. leaf stpmulticastAddress { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of stpmulticastAddress definition. leaf instanceTopologychangedetected { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of instanceTopologychangedetected definition. leaf instlastTopologychangerecievedfrom { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of instlastTopologychangerecievedfrom definition. leaf instancemaxAge { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T; config false; } // END of instancemaxAge definition. leaf instancetopologychangeInitiator { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of instancetopologychangeInitiator definition. leaf topologychangeInitiator { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of topologychangeInitiator definition. leaf instancetopologyChange { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of instancetopologyChange definition. leaf lasttopologychangeRecievedfrom { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of lasttopologychangeRecievedfrom definition. leaf configFormat { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of configFormat definition. leaf configName { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of configName definition. leaf configRevision { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of configRevision definition. leaf configDigest { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of configDigest definition. leaf instanceMstiporttopologyChangetime { - type cml_data_types:CML_INT32_T; config false; } // END of instanceMstiporttopologyChangetime definition. leaf instancePortNextState { - type cml_data_types:CML_UINT32_T; config false; } // END of instancePortNextState definition. leaf instanceTopologuChangeCount { - type cml_data_types:CML_INT32_T; config false; } // END of instanceTopologuChangeCount definition. leaf mstiInstancedesignatedRoot { - type cml_data_types:CML_STRING_T; config false; } // END of mstiInstancedesignatedRoot definition. @@ -379,7 +370,6 @@ submodule mstp { list mstp_interface { - description "Group of mstp attribute having interface property"; @@ -388,14 +378,12 @@ submodule mstp { leaf ifName { - type cml_data_types:CML_STRING_T; config true; description "bridge-group instance"; } // END of ifName definition. leaf instportPriority { - type cml_data_types:CML_INT16_T { range "0..240"; } @@ -405,7 +393,6 @@ submodule mstp { } // END of instportPriority definition. leaf mstppathCost { - type cml_data_types:CML_UINT32_T { range "1..20000000"; } @@ -415,265 +402,224 @@ submodule mstp { } // END of mstppathCost definition. leaf cistAdminedge { - type cml_data_types:CML_STRING_T; config false; } // END of cistAdminedge definition. leaf cistOperedge { - type cml_data_types:CML_STRING_T; config false; } // END of cistOperedge definition. leaf cistPortrole { - type cml_data_types:CML_STRING_T; config false; } // END of cistPortrole definition. leaf portName { - type cml_data_types:CML_STRING_T; config false; } // END of portName definition. leaf portNumber { - type cml_data_types:CML_UINT32_T; config false; } // END of portNumber definition. leaf cistpathCost { - type cml_data_types:CML_UINT32_T; config false; } // END of cistpathCost definition. leaf cistPriority { - type cml_data_types:CML_INT32_T; config false; } // END of cistPriority definition. leaf cisthelloTime { - type cml_data_types:CML_INT32_T; config false; } // END of cisthelloTime definition. leaf cistforwardDelay { - type cml_data_types:CML_INT32_T; config false; } // END of cistforwardDelay definition. leaf portspanningTree { - type cml_data_types:CML_STRING_T; config false; } // END of portspanningTree definition. leaf porttopChangeack { - type cml_data_types:CML_STRING_T; config false; } // END of porttopChangeack definition. leaf configPending { - type cml_data_types:CML_STRING_T; config false; } // END of configPending definition. leaf portconfbpduSent { - type cml_data_types:CML_UINT32_T; config false; } // END of portconfbpduSent definition. leaf portconfbpduRecieved { - type cml_data_types:CML_UINT32_T; config false; } // END of portconfbpduRecieved definition. leaf porttcnbpduSent { - type cml_data_types:CML_UINT32_T; config false; } // END of porttcnbpduSent definition. leaf porttcnbpduRecieved { - type cml_data_types:CML_UINT32_T; config false; } // END of porttcnbpduRecieved definition. leaf portForwardTransition { - type cml_data_types:CML_UINT32_T; config false; } // END of portForwardTransition definition. leaf helloTimerstate { - type cml_data_types:CML_STRING_T; config false; } // END of helloTimerstate definition. leaf helloTimervalue { - type cml_data_types:CML_INT32_T; config false; } // END of helloTimervalue definition. leaf forwardTimerstate { - type cml_data_types:CML_STRING_T; config false; } // END of forwardTimerstate definition. leaf forwardTimervalue { - type cml_data_types:CML_INT32_T; config false; } // END of forwardTimervalue definition. leaf messageTimerstate { - type cml_data_types:CML_STRING_T; config false; } // END of messageTimerstate definition. leaf messageageTimervalue { - type cml_data_types:CML_INT32_T; config false; } // END of messageageTimervalue definition. leaf topologychangeTimerstate { - type cml_data_types:CML_STRING_T; config false; } // END of topologychangeTimerstate definition. leaf topologychangeTimervalue { - type cml_data_types:CML_INT32_T; config false; } // END of topologychangeTimervalue definition. leaf holdTimerstate { - type cml_data_types:CML_STRING_T; config false; } // END of holdTimerstate definition. leaf holdTimervalue { - type cml_data_types:CML_INT32_T; config false; } // END of holdTimervalue definition. leaf messageageExpiry { - type cml_data_types:CML_UINT32_T; config false; } // END of messageageExpiry definition. leaf similarbpduCount { - type cml_data_types:CML_UINT32_T; config false; } // END of similarbpduCount definition. leaf sourcemacCount { - type cml_data_types:CML_INT32_T; config false; } // END of sourcemacCount definition. leaf totalsourcemacRecieved { - type cml_data_types:CML_INT32_T; config false; } // END of totalsourcemacRecieved definition. leaf portcistnextState { - type cml_data_types:CML_STRING_T; config false; } // END of portcistnextState definition. leaf porttopologyChangetime { - type cml_data_types:CML_UINT32_T; config false; } // END of porttopologyChangetime definition. leaf designatedrootPathcost { - type cml_data_types:CML_UINT32_T; config false; } // END of designatedrootPathcost definition. leaf designatedInsPortid { - type cml_data_types:CML_UINT16_T; config false; } // END of designatedInsPortid definition. leaf mstiInstancedesignatedRoot { - type cml_data_types:CML_STRING_T; config false; } // END of mstiInstancedesignatedRoot definition. leaf mstiInstanceBridgeId { - type cml_data_types:CML_STRING_T; config false; } // END of mstiInstanceBridgeId definition. leaf stpMultiCastAddr { - type cml_data_types:CML_STRING_T; config false; } // END of stpMultiCastAddr definition. leaf instanceBridgeMacAddress { - type cml_data_types:CML_STRING_T; config false; } // END of instanceBridgeMacAddress definition. leaf instancetopologyChange { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of instancetopologyChange definition. leaf instanceTopologychangedetected { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of instanceTopologychangedetected definition. leaf instlastTopologychangerecievedfrom { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config false; } // END of instlastTopologychangerecievedfrom definition. leaf runtimevlanId { - type cml_data_types:CML_STRING_T; config false; } // END of runtimevlanId definition. leaf restrictedTCN { - type cml_data_types:CML_BOOL_T; default false; config true; @@ -681,7 +627,6 @@ submodule mstp { } // END of restrictedTCN definition. leaf restrictedRole { - type cml_data_types:CML_BOOL_T; default false; config true; diff --git a/yang-files/oambfd.yang b/yang-files/oambfd.yang index 26caf763..71749eee 100644 --- a/yang-files/oambfd.yang +++ b/yang-files/oambfd.yang @@ -23,15 +23,19 @@ submodule oambfd { prefix cml_data_types; } - revision "2016-09-15" { - description "Revisied on 2016-09-15."; } + import feature_list { + prefix feature_list; + } + + + revision "2016-10-20" { + description "Revisied on 2016-10-20."; } grouping bfd-grouping { list bfd { - description "bfd"; @@ -40,40 +44,34 @@ submodule oambfd { leaf vrId { - type cml_data_types:CML_INT32_T; config true; } // END of vrId definition. leaf bfdProcessId { - type cml_data_types:CML_BOOL_T; config true; } // END of bfdProcessId definition. leaf bfdGtsmState { - type cml_data_types:CML_BFD_GTSM_STATE_T; config true; description "bfd Gtsm(Generalized TTL Security Mechanism)"; } // END of bfdGtsmState definition. leaf bfdNotificationState { - type cml_data_types:CML_BFD_SESSION_STATE_T; config true; description "BFD Notification State"; } // END of bfdNotificationState definition. leaf bfdEchoState { - type cml_data_types:CML_BOOL_T; config true; description "BFD Echo State"; } // END of bfdEchoState definition. leaf bfdGtsmTtl { - type cml_data_types:CML_UINT8_T { range "1..255"; } @@ -83,7 +81,6 @@ submodule oambfd { } // END of bfdGtsmTtl definition. leaf bfdSlowTimer { - type cml_data_types:CML_UINT32_T { range "1000..30000"; } @@ -92,46 +89,37 @@ submodule oambfd { } // END of bfdSlowTimer definition. leaf-list bfdMultihopIntervalIpv4Addr { - type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of bfdMultihopIntervalIpv4Addr definition. - leaf bfdIpv4MultihopMinTx { - + leaf-list bfdIpv4MultihopMinTx { type cml_data_types:CML_UINT32_T { range "50..999"; } - default "250"; config true; } // END of bfdIpv4MultihopMinTx definition. - leaf bfdIpv4MultihopMinRx { - + leaf-list bfdIpv4MultihopMinRx { type cml_data_types:CML_UINT32_T { range "50..999"; } - default "250"; config true; } // END of bfdIpv4MultihopMinRx definition. - leaf bfdIpv4MultihopMulti { - + leaf-list bfdIpv4MultihopMulti { type cml_data_types:CML_UINT32_T { range "3..50"; } - default "3"; config true; } // END of bfdIpv4MultihopMulti definition. leaf bfdMultihopIntervalIpv6Addr { - type cml_data_types:CML_IPV6_ADDR_T; config true; } // END of bfdMultihopIntervalIpv6Addr definition. leaf bfdIpv6MultihopMinTx { - type cml_data_types:CML_UINT32_T { range "50..999"; } @@ -140,7 +128,6 @@ submodule oambfd { } // END of bfdIpv6MultihopMinTx definition. leaf bfdIpv6MultihopMinRx { - type cml_data_types:CML_UINT32_T { range "50..999"; } @@ -149,7 +136,6 @@ submodule oambfd { } // END of bfdIpv6MultihopMinRx definition. leaf bfdIpv6MultihopMulti { - type cml_data_types:CML_UINT32_T { range "3..50"; } @@ -160,7 +146,6 @@ submodule oambfd { list bfdMultihopKeyChain { - description "bfdMultihopKeyChain"; @@ -169,21 +154,20 @@ submodule oambfd { leaf bfdMultihopAddr { - type cml_data_types:CML_IP_ADDR_T; config true; description "BFD multihop-peer"; } // END of bfdMultihopAddr definition. leaf bfdAuthType { - mandatory true; + mandatory true; type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; config true; description "BFD Authentication Type"; } // END of bfdAuthType definition. leaf bfdKeyChain { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; description "BFD key-chain"; @@ -193,7 +177,6 @@ submodule oambfd { list bfdMultihopKeyStr { - description "bfdMultihopKeyStr"; @@ -202,19 +185,18 @@ submodule oambfd { leaf bfdMultihopAddr { - type cml_data_types:CML_IP_ADDR_T; config true; } // END of bfdMultihopAddr definition. leaf bfdAuthType { - mandatory true; + mandatory true; type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; config true; } // END of bfdAuthType definition. leaf bfdMultihopKeyId { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T { range "0..255"; } @@ -222,7 +204,7 @@ submodule oambfd { } // END of bfdMultihopKeyId definition. leaf bfdKeyStr { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; } // END of bfdKeyStr definition. @@ -235,7 +217,6 @@ submodule oambfd { grouping bfdInterface-grouping { list bfdInterface { - description "OSPF interface related operations"; @@ -244,32 +225,27 @@ submodule oambfd { leaf ifName { - type cml_data_types:CML_STRING_T; config true; } // END of ifName definition. leaf vrId { - type cml_data_types:CML_INT32_T; config true; } // END of vrId definition. leaf bfdSessionState { - type cml_data_types:CML_BOOL_T; config true; } // END of bfdSessionState definition. leaf bfdIpv4State { - type cml_data_types:CML_BOOL_T; config true; description "BFD ipv4 State"; } // END of bfdIpv4State definition. leaf bfdMinTx { - type cml_data_types:CML_UINT32_T { range "50..999"; } @@ -279,7 +255,6 @@ submodule oambfd { } // END of bfdMinTx definition. leaf bfdMinRx { - type cml_data_types:CML_UINT32_T { range "50..999"; } @@ -288,7 +263,6 @@ submodule oambfd { } // END of bfdMinRx definition. leaf bfdIntervalMultiplier { - type cml_data_types:CML_UINT32_T { range "3..50"; } @@ -298,7 +272,6 @@ submodule oambfd { } // END of bfdIntervalMultiplier definition. leaf bfdEchoInterval { - type cml_data_types:CML_UINT32_T { range "1..4294967"; } @@ -309,7 +282,6 @@ submodule oambfd { list bfdIpv4UserAdd { - description "bfdIpv4UserAdd"; @@ -318,38 +290,37 @@ submodule oambfd { leaf bfdUserSrcAddr { - type cml_data_types:CML_IPV4_ADDR_T; config true; description "bfd ipv4 User Session"; } // END of bfdUserSrcAddr definition. leaf bfdUserDestAddr { - mandatory true; + mandatory true; type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of bfdUserDestAddr definition. leaf multihop { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of multihop definition. leaf demandMode { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of demandMode definition. leaf nonPersistant { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of nonPersistant definition. leaf adminDown { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of adminDown definition. @@ -358,7 +329,6 @@ submodule oambfd { list bfdIpv6UserAdd { - description "bfdIpv6UserAdd"; @@ -367,38 +337,37 @@ submodule oambfd { leaf bfdIpv6UserSrcAddr { - type cml_data_types:CML_IPV6_ADDR_T; config true; description "bfd ipv6 User Session"; } // END of bfdIpv6UserSrcAddr definition. leaf bfdIpv6UserDestAddr { - mandatory true; + mandatory true; type cml_data_types:CML_IPV6_ADDR_T; config true; } // END of bfdIpv6UserDestAddr definition. leaf ipv6Multihop { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of ipv6Multihop definition. leaf ipv6DemandMode { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of ipv6DemandMode definition. leaf ipv6NonPersistant { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of ipv6NonPersistant definition. leaf ipv6AdminDown { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of ipv6AdminDown definition. @@ -407,7 +376,6 @@ submodule oambfd { list bfdIfAuthKeyChain { - description "bfdIfAuthKeyChain"; @@ -416,13 +384,12 @@ submodule oambfd { leaf bfdIfAuthType { - type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; config true; } // END of bfdIfAuthType definition. leaf bfdIfKeyChain { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; } // END of bfdIfKeyChain definition. @@ -431,7 +398,6 @@ submodule oambfd { list bfdIfAuthKeyStr { - description "bfdIfAuthKeyStr"; @@ -440,13 +406,12 @@ submodule oambfd { leaf bfdIfAuthType { - type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; config true; } // END of bfdIfAuthType definition. leaf bfdIfKeyId { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T { range "0..255"; } @@ -454,7 +419,7 @@ submodule oambfd { } // END of bfdIfKeyId definition. leaf bfdIfKeyStr { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; } // END of bfdIfKeyStr definition. @@ -465,21 +430,18 @@ submodule oambfd { grouping oamMpls-grouping { container oamMpls { - - config true; + config true; description "oamMpls"; leaf pingRequest { - type cml_data_types:CML_BOOL_T; config true; description "mpls ping request"; } // END of pingRequest definition. leaf pingReply { - type cml_data_types:CML_BOOL_T; config true; description "mpls ping reply"; diff --git a/yang-files/ospf.yang b/yang-files/ospf.yang index f6e3c2d8..938ba91b 100644 --- a/yang-files/ospf.yang +++ b/yang-files/ospf.yang @@ -24,19 +24,23 @@ submodule ospf { prefix cml_data_types; } + import feature_list { + prefix feature_list; + } + description "Layer-3 ospf configurations"; revision "2016-08-10" { - description "Revisied on 2016-08-10."; } + description "Revisied on 2016-08-10."; + } grouping ospf-grouping { list ospf { - description "ospf"; @@ -45,14 +49,12 @@ submodule ospf { leaf vrId { - type cml_data_types:CML_UINT32_T; default "0"; config true; } // END of vrId definition. leaf ospfProcessId { - type cml_data_types:CML_INT32_T { range "0..65535"; } @@ -60,63 +62,54 @@ submodule ospf { } // END of ospfProcessId definition. leaf vrfName { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; } // END of vrfName definition. leaf ospfShutDown { - type cml_data_types:CML_BOOL_T; config true; } // END of ospfShutDown definition. leaf domainType { - type cml_data_types:CML_OSPF_DOMAIN_TYPE_T; config true; } // END of domainType definition. leaf nullDomainValue { - type cml_data_types:CML_BOOL_T; config true; description "domain-id"; } // END of nullDomainValue definition. leaf domainValue { - type cml_data_types:CML_INT32_T; config true; } // END of domainValue definition. leaf isPrimaryDomainId { - type cml_data_types:CML_BOOL_T; config true; } // END of isPrimaryDomainId definition. leaf isPassiveIfDefault { - type cml_data_types:CML_BOOL_T; config true; } // END of isPassiveIfDefault definition. leaf areaBorderType { - type cml_data_types:CML_OSPF_ABR_TYPE_T; default "cisco"; config true; } // END of areaBorderType definition. leaf spfStartDelay { - type cml_data_types:CML_UINT32_T; config true; } // END of spfStartDelay definition. leaf spfMinDelay { - type cml_data_types:CML_UINT32_T { range "0..2147483647"; } @@ -125,7 +118,6 @@ submodule ospf { } // END of spfMinDelay definition. leaf spfMaxDelay { - type cml_data_types:CML_UINT32_T { range "0..2147483647"; } @@ -135,7 +127,6 @@ submodule ospf { } // END of spfMaxDelay definition. leaf throttleTimersStartDelay { - type cml_data_types:CML_UINT32_T { range "0..600000"; } @@ -144,7 +135,6 @@ submodule ospf { } // END of throttleTimersStartDelay definition. leaf holdInterval { - type cml_data_types:CML_UINT32_T { range "1..600000"; } @@ -153,7 +143,6 @@ submodule ospf { } // END of holdInterval definition. leaf throttleTimersMaxDelay { - type cml_data_types:CML_UINT32_T { range "1..600000"; } @@ -163,7 +152,6 @@ submodule ospf { } // END of throttleTimersMaxDelay definition. leaf lsaMinArrival { - type cml_data_types:CML_UINT32_T { range "0..600000"; } @@ -172,7 +160,6 @@ submodule ospf { } // END of lsaMinArrival definition. leaf referenceBandwidth { - type cml_data_types:CML_INT32_T { range "1..4294967"; } @@ -181,7 +168,6 @@ submodule ospf { } // END of referenceBandwidth definition. leaf maxDBDescriptor { - type cml_data_types:CML_UINT16_T { range "1..65535"; } @@ -190,7 +176,6 @@ submodule ospf { } // END of maxDBDescriptor definition. leaf maxUnusePackets { - type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -199,7 +184,6 @@ submodule ospf { } // END of maxUnusePackets definition. leaf maxLsaPacket { - type cml_data_types:CML_UINT32_T { range "0..65535"; } @@ -208,7 +192,6 @@ submodule ospf { } // END of maxLsaPacket definition. leaf lsdbExternalLimit { - type cml_data_types:CML_UINT32_T { range "0..2147483647"; } @@ -217,7 +200,6 @@ submodule ospf { } // END of lsdbExternalLimit definition. leaf exitOverflowInterval { - type cml_data_types:CML_INT32_T { range "0..65535"; } @@ -227,7 +209,6 @@ submodule ospf { } // END of exitOverflowInterval definition. leaf metricValue { - type cml_data_types:CML_INT32_T { range "1..16777214"; } @@ -236,7 +217,6 @@ submodule ospf { } // END of metricValue definition. leaf adminDistance { - type cml_data_types:CML_INT32_T { range "1..255"; } @@ -246,26 +226,22 @@ submodule ospf { } // END of adminDistance definition. leaf restartMethod { - type cml_data_types:CML_BOOL_T; config true; } // END of restartMethod definition. leaf restartMethodLls { - type cml_data_types:CML_BOOL_T; config true; } // END of restartMethodLls definition. leaf logAdjacencyDebugType { - type cml_data_types:CML_STRING_T; default "breif"; config true; } // END of logAdjacencyDebugType definition. leaf maxAreaLimit { - type cml_data_types:CML_UINT32_T { range "1..4294967294"; } @@ -273,19 +249,16 @@ submodule ospf { } // END of maxAreaLimit definition. leaf trapFlagBit { - type cml_data_types:CML_INT32_T; config true; } // END of trapFlagBit definition. leaf bandwidthType { - type cml_data_types:CML_STRING_T; config true; } // END of bandwidthType definition. leaf lsdbLimit { - type cml_data_types:CML_UINT32_T { range "0..4294967294"; } @@ -294,35 +267,30 @@ submodule ospf { } // END of lsdbLimit definition. leaf actionType { - type cml_data_types:CML_OSPF_ACTION_TYPE_T; default "soft"; config true; } // END of actionType definition. leaf isLsdbLimit { - type cml_data_types:CML_BOOL_T; config true; description "overflow database"; } // END of isLsdbLimit definition. leaf tieBreakField { - type cml_data_types:CML_STRING_T; default "random"; config true; } // END of tieBreakField definition. leaf cspfTieBreakField { - type cml_data_types:CML_STRING_T; default "random"; config true; } // END of cspfTieBreakField definition. leaf retryInterval { - type cml_data_types:CML_UINT16_T { range "1..3600"; } @@ -331,7 +299,6 @@ submodule ospf { } // END of retryInterval definition. leaf cspfRetryInterval { - type cml_data_types:CML_UINT16_T { range "1..3600"; } @@ -340,58 +307,51 @@ submodule ospf { } // END of cspfRetryInterval definition. leaf isCompitableRfc1583 { - type cml_data_types:CML_BOOL_T; config true; } // END of isCompitableRfc1583 definition. leaf checkCompatibleRfc1583 { - type cml_data_types:CML_BOOL_T; config true; } // END of checkCompatibleRfc1583 definition. leaf isCSPF { - + if-feature feature_list:HAVE_OSPF_CSPF; type cml_data_types:CML_BOOL_T; config true; } // END of isCSPF definition. leaf isEnableCSPF { - type cml_data_types:CML_BOOL_T; config true; } // END of isEnableCSPF definition. leaf isTE { - + if-feature feature_list:HAVE_OSPF_TE; type cml_data_types:CML_BOOL_T; config true; description "capability te/traffic-engineering"; } // END of isTE definition. leaf isEnableTE { - type cml_data_types:CML_BOOL_T; config true; } // END of isEnableTE definition. leaf isOpaqueLsa { - type cml_data_types:CML_BOOL_T; config true; description "capability opaque"; } // END of isOpaqueLsa definition. leaf checkOpaqueLsa { - type cml_data_types:CML_BOOL_T; config true; description "opaque-lsa-capable"; } // END of checkOpaqueLsa definition. leaf refreshTimer { - type cml_data_types:CML_UINT32_T { range "10..1800"; } @@ -400,32 +360,28 @@ submodule ospf { } // END of refreshTimer definition. leaf dbSummaryOpt { - type cml_data_types:CML_BOOL_T; config true; } // END of dbSummaryOpt definition. leaf capabilityVrfLite { - + if-feature feature_list:HAVE_VRF_OSPF; type cml_data_types:CML_BOOL_T; config true; } // END of capabilityVrfLite definition. leaf accessListName { - type cml_data_types:CML_STRING_T; config true; } // END of accessListName definition. leaf-list routeSourceDistType { - type cml_data_types:CML_OSPF_DIST_ROUTE_SOURCE_TYPE_T; config true; description "distribute-list"; } // END of routeSourceDistType definition. leaf-list secondaryOspfProcId { - type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -434,1137 +390,948 @@ submodule ospf { } // END of secondaryOspfProcId definition. leaf isDistributeListIn { - type cml_data_types:CML_BOOL_T; config true; description "distribute-list"; } // END of isDistributeListIn definition. leaf opaqueAsDesc { - type cml_data_types:CML_STRING_T; config false; } // END of opaqueAsDesc definition. leaf opaqueAsIfName { - type cml_data_types:CML_STRING_T; config false; } // END of opaqueAsIfName definition. leaf opaqueAsAdvRouter { - type cml_data_types:CML_STRING_T; config false; } // END of opaqueAsAdvRouter definition. leaf opaqueAsType { - type cml_data_types:CML_INT32_T; config false; } // END of opaqueAsType definition. leaf opaqueAsId { - type cml_data_types:CML_UINT32_T; config false; } // END of opaqueAsId definition. leaf opaqueAsLength { - type cml_data_types:CML_UINT32_T; config false; } // END of opaqueAsLength definition. leaf opaqueAreaDesc { - type cml_data_types:CML_STRING_T; config false; } // END of opaqueAreaDesc definition. leaf opaqueAreaIfName { - type cml_data_types:CML_STRING_T; config false; } // END of opaqueAreaIfName definition. leaf opaqueAreaAdvRouter { - type cml_data_types:CML_STRING_T; config false; } // END of opaqueAreaAdvRouter definition. leaf opaqueAreaType { - type cml_data_types:CML_INT32_T; config false; } // END of opaqueAreaType definition. leaf opaqueAreaId { - type cml_data_types:CML_UINT32_T; config false; } // END of opaqueAreaId definition. leaf opaqueAreaLength { - type cml_data_types:CML_UINT32_T; config false; } // END of opaqueAreaLength definition. leaf opaqueLinkDesc { - type cml_data_types:CML_STRING_T; config false; } // END of opaqueLinkDesc definition. leaf opaqueLinkIfName { - type cml_data_types:CML_STRING_T; config false; } // END of opaqueLinkIfName definition. leaf opaqueLinkAdvRouter { - type cml_data_types:CML_STRING_T; config false; } // END of opaqueLinkAdvRouter definition. leaf opaqueLinkType { - type cml_data_types:CML_INT32_T; config false; } // END of opaqueLinkType definition. leaf opaqueLinkId { - type cml_data_types:CML_UINT32_T; config false; } // END of opaqueLinkId definition. leaf opaqueLinkLength { - type cml_data_types:CML_UINT32_T; config false; } // END of opaqueLinkLength definition. leaf teUnResBWState { - type cml_data_types:CML_BOOL_T; config false; } // END of teUnResBWState definition. leaf teUnResBWPrio { - type cml_data_types:CML_STRING_T; config false; } // END of teUnResBWPrio definition. leaf teResourceColorState { - type cml_data_types:CML_BOOL_T; config false; } // END of teResourceColorState definition. leaf teResourceColorVal { - type cml_data_types:CML_INT32_T; config false; } // END of teResourceColorVal definition. leaf teRemoteId { - type cml_data_types:CML_STRING_T; config false; } // END of teRemoteId definition. leaf teLocalId { - type cml_data_types:CML_STRING_T; config false; } // END of teLocalId definition. leaf teLinkLocalRemoteIdState { - type cml_data_types:CML_BOOL_T; config false; } // END of teLinkLocalRemoteIdState definition. leaf teLinkSwitchCapState { - type cml_data_types:CML_BOOL_T; config false; } // END of teLinkSwitchCapState definition. leaf teSwitchCap { - type cml_data_types:CML_STRING_T; config false; } // END of teSwitchCap definition. leaf teEncodeType { - type cml_data_types:CML_STRING_T; config false; } // END of teEncodeType definition. leaf teMaxLspBWPriCount { - type cml_data_types:CML_INT32_T; config false; } // END of teMaxLspBWPriCount definition. leaf teMaxLspBWPri { - type cml_data_types:CML_STRING_T; config false; } // END of teMaxLspBWPri definition. leaf teMinLspBW { - type cml_data_types:CML_STRING_T; config false; } // END of teMinLspBW definition. leaf teCapMtu { - type cml_data_types:CML_INT32_T; config false; } // END of teCapMtu definition. leaf teRiskGrpState { - type cml_data_types:CML_BOOL_T; config false; } // END of teRiskGrpState definition. leaf teProtectionState { - type cml_data_types:CML_BOOL_T; config false; } // END of teProtectionState definition. leaf teProtectionType { - type cml_data_types:CML_STRING_T; config false; } // END of teProtectionType definition. leaf teRiskGrpVal { - type cml_data_types:CML_UINT32_T; config false; } // END of teRiskGrpVal definition. leaf vrfIfName { - type cml_data_types:CML_STRING_T; config false; } // END of vrfIfName definition. leaf vrfIvName { - type cml_data_types:CML_STRING_T; config false; } // END of vrfIvName definition. leaf igpShortcutDetail { - type cml_data_types:CML_STRING_T; config false; } // END of igpShortcutDetail definition. leaf igpShortcutLspDetail { - type cml_data_types:CML_STRING_T; config false; } // END of igpShortcutLspDetail definition. leaf lspP2mpId { - type cml_data_types:CML_UINT32_T; config false; } // END of lspP2mpId definition. leaf lspId { - type cml_data_types:CML_UINT32_T; config false; } // END of lspId definition. leaf lspIngress { - type cml_data_types:CML_STRING_T; config false; } // END of lspIngress definition. leaf lspEgress { - type cml_data_types:CML_STRING_T; config false; } // END of lspEgress definition. leaf lspExTunnelId { - type cml_data_types:CML_STRING_T; config false; } // END of lspExTunnelId definition. leaf lspType { - type cml_data_types:CML_UINT8_T; config false; } // END of lspType definition. leaf lspClientId { - type cml_data_types:CML_UINT8_T; config false; } // END of lspClientId definition. leaf lspState { - type cml_data_types:CML_UINT8_T; config false; } // END of lspState definition. leaf lspSetupPri { - type cml_data_types:CML_UINT8_T; config false; } // END of lspSetupPri definition. leaf lspHoldPri { - type cml_data_types:CML_UINT8_T; config false; } // END of lspHoldPri definition. leaf lspBidirectionalStatus { - type cml_data_types:CML_BOOL_T; config false; } // END of lspBidirectionalStatus definition. leaf lspBandwidth { - type cml_data_types:CML_STRING_T; config false; } // END of lspBandwidth definition. leaf lspBWStat { - type cml_data_types:CML_BOOL_T; config false; } // END of lspBWStat definition. leaf lspHopLimit { - type cml_data_types:CML_UINT8_T; config false; } // END of lspHopLimit definition. leaf lspAdmControl { - type cml_data_types:CML_STRING_T; config false; } // END of lspAdmControl definition. leaf lspIncludeMask { - type cml_data_types:CML_UINT32_T; config false; } // END of lspIncludeMask definition. leaf lspExcludeMask { - type cml_data_types:CML_UINT32_T; config false; } // END of lspExcludeMask definition. leaf lspAttrRetry { - type cml_data_types:CML_BOOL_T; config false; } // END of lspAttrRetry definition. leaf lspRetryInt { - type cml_data_types:CML_UINT16_T; config false; } // END of lspRetryInt definition. leaf lspRetryLimit { - type cml_data_types:CML_UINT16_T; config false; } // END of lspRetryLimit definition. leaf lspTeMetric { - type cml_data_types:CML_UINT32_T; config false; } // END of lspTeMetric definition. leaf lspPathStat { - type cml_data_types:CML_BOOL_T; config false; } // END of lspPathStat definition. leaf lspPathDetail { - type cml_data_types:CML_STRING_T; config false; } // END of lspPathDetail definition. leaf lspExcludePathStat { - type cml_data_types:CML_BOOL_T; config false; } // END of lspExcludePathStat definition. leaf lspExcludePathDetail { - type cml_data_types:CML_STRING_T; config false; } // END of lspExcludePathDetail definition. leaf lspSwitchCapStat { - type cml_data_types:CML_BOOL_T; config false; } // END of lspSwitchCapStat definition. leaf lspSwitchCapEncodeType { - type cml_data_types:CML_STRING_T; config false; } // END of lspSwitchCapEncodeType definition. leaf lspSwitchCap { - type cml_data_types:CML_STRING_T; config false; } // END of lspSwitchCap definition. leaf lspProtectionRev { - type cml_data_types:CML_STRING_T; config false; } // END of lspProtectionRev definition. leaf lspProtectionFwd { - type cml_data_types:CML_STRING_T; config false; } // END of lspProtectionFwd definition. leaf lspAttrProtectionStat { - type cml_data_types:CML_BOOL_T; config false; } // END of lspAttrProtectionStat definition. leaf lspRouteStat { - type cml_data_types:CML_BOOL_T; config false; } // END of lspRouteStat definition. leaf lspRouteDetail { - type cml_data_types:CML_STRING_T; config false; } // END of lspRouteDetail definition. leaf lspSrlgDetail { - type cml_data_types:CML_UINT32_T; config false; } // END of lspSrlgDetail definition. leaf lspSrlgStat { - type cml_data_types:CML_BOOL_T; config false; } // END of lspSrlgStat definition. leaf multiAreaIfName { - type cml_data_types:CML_STRING_T; config false; } // END of multiAreaIfName definition. leaf multiAreaNbrAddr { - type cml_data_types:CML_STRING_T; config false; } // END of multiAreaNbrAddr definition. leaf isMultiIpv4Num { - type cml_data_types:CML_BOOL_T; config false; } // END of isMultiIpv4Num definition. leaf multiIdentAddr { - type cml_data_types:CML_STRING_T; config false; } // END of multiIdentAddr definition. leaf multiAreaDetail { - type cml_data_types:CML_STRING_T; config false; } // END of multiAreaDetail definition. leaf multiMtuVal { - type cml_data_types:CML_INT8_T; config false; } // END of multiMtuVal definition. leaf multiNetworkMsg { - type cml_data_types:CML_STRING_T; config false; } // END of multiNetworkMsg definition. leaf multiOutputCost { - type cml_data_types:CML_UINT32_T; config false; } // END of multiOutputCost definition. leaf transmitInt { - type cml_data_types:CML_INT32_T; config false; } // END of transmitInt definition. leaf multiTransmitState { - type cml_data_types:CML_STRING_T; config false; } // END of multiTransmitState definition. leaf multiTeMetric { - type cml_data_types:CML_UINT32_T; config false; } // END of multiTeMetric definition. leaf dbFilterGetState { - type cml_data_types:CML_BOOL_T; config false; } // END of dbFilterGetState definition. leaf multiHelloInt { - type cml_data_types:CML_INT32_T; config false; } // END of multiHelloInt definition. leaf multiDeadInt { - type cml_data_types:CML_INT32_T; config false; } // END of multiDeadInt definition. leaf multiRetransmitInt { - type cml_data_types:CML_INT32_T; config false; } // END of multiRetransmitInt definition. leaf restartMethodTypeState { - type cml_data_types:CML_BOOL_T; config false; } // END of restartMethodTypeState definition. leaf restartOOBResyncTimeout { - type cml_data_types:CML_UINT32_T; config false; } // END of restartOOBResyncTimeout definition. leaf multiIfTypeLoopbackState { - type cml_data_types:CML_BOOL_T; config false; } // END of multiIfTypeLoopbackState definition. leaf ifPassiveState { - type cml_data_types:CML_BOOL_T; config false; } // END of ifPassiveState definition. leaf multiHelloTimeDueIn { - type cml_data_types:CML_STRING_T; config false; } // END of multiHelloTimeDueIn definition. leaf multiNbrCountAll { - type cml_data_types:CML_INT32_T; config false; } // END of multiNbrCountAll definition. leaf multiAdjacentNbrCountAll { - type cml_data_types:CML_INT32_T; config false; } // END of multiAdjacentNbrCountAll definition. leaf multiCrypto { - type cml_data_types:CML_UINT32_T; config false; } // END of multiCrypto definition. leaf multiHelloPacketDetail { - type cml_data_types:CML_STRING_T; config false; } // END of multiHelloPacketDetail definition. leaf multiLSReqDetail { - type cml_data_types:CML_STRING_T; config false; } // END of multiLSReqDetail definition. leaf multiLSAckDetail { - type cml_data_types:CML_STRING_T; config false; } // END of multiLSAckDetail definition. leaf teDBRTAddrLsaAge { - type cml_data_types:CML_INT32_T; config false; } // END of teDBRTAddrLsaAge definition. leaf teDBLinkLsaAge { - type cml_data_types:CML_INT32_T; config false; } // END of teDBLinkLsaAge definition. leaf teOpaqueType { - type cml_data_types:CML_INT32_T; config false; } // END of teOpaqueType definition. leaf teLsaHeaderTypeMsg { - type cml_data_types:CML_STRING_T; config false; } // END of teLsaHeaderTypeMsg definition. leaf teLsaHeaderType { - type cml_data_types:CML_UINT8_T; config false; } // END of teLsaHeaderType definition. leaf teLsaOptions { - type cml_data_types:CML_UINT8_T; config false; } // END of teLsaOptions definition. leaf teInstance { - type cml_data_types:CML_INT32_T; config false; } // END of teInstance definition. leaf teAdvrRouter { - type cml_data_types:CML_STRING_T; config false; } // END of teAdvrRouter definition. leaf teLSSeqNum { - type cml_data_types:CML_INT32_T; config false; } // END of teLSSeqNum definition. leaf teLSChecksum { - type cml_data_types:CML_UINT16_T; config false; } // END of teLSChecksum definition. leaf teLength { - type cml_data_types:CML_UINT16_T; config false; } // END of teLength definition. leaf teRouterState { - type cml_data_types:CML_BOOL_T; config false; } // END of teRouterState definition. leaf teRouterAddr { - type cml_data_types:CML_STRING_T; config false; } // END of teRouterAddr definition. leaf teLinkTypeState { - type cml_data_types:CML_BOOL_T; config false; } // END of teLinkTypeState definition. leaf teLinkType { - type cml_data_types:CML_STRING_T; config false; } // END of teLinkType definition. leaf teLinkIdState { - type cml_data_types:CML_BOOL_T; config false; } // END of teLinkIdState definition. leaf teLinkId { - type cml_data_types:CML_STRING_T; config false; } // END of teLinkId definition. leaf teLocalInterfaceState { - type cml_data_types:CML_BOOL_T; config false; } // END of teLocalInterfaceState definition. leaf teLocalInterfaceAddr { - type cml_data_types:CML_STRING_T; config false; } // END of teLocalInterfaceAddr definition. leaf teRemoteInterfaceState { - type cml_data_types:CML_BOOL_T; config false; } // END of teRemoteInterfaceState definition. leaf teRemoteInterfaceAddr { - type cml_data_types:CML_STRING_T; config false; } // END of teRemoteInterfaceAddr definition. leaf teLinkMetricState { - type cml_data_types:CML_BOOL_T; config false; } // END of teLinkMetricState definition. leaf teLinkMetric { - type cml_data_types:CML_UINT32_T; config false; } // END of teLinkMetric definition. leaf teMaxResBWState { - type cml_data_types:CML_BOOL_T; config false; } // END of teMaxResBWState definition. leaf teMaxResBW { - type cml_data_types:CML_STRING_T; config false; } // END of teMaxResBW definition. leaf teMaxBWState { - type cml_data_types:CML_BOOL_T; config false; } // END of teMaxBWState definition. leaf teMaxBW { - type cml_data_types:CML_STRING_T; config false; } // END of teMaxBW definition. leaf teLinkAttrBc { - type cml_data_types:CML_BOOL_T; config false; } // END of teLinkAttrBc definition. leaf teBWConsModel { - type cml_data_types:CML_UINT8_T; config false; } // END of teBWConsModel definition. leaf teBWCons { - type cml_data_types:CML_STRING_T; config false; } // END of teBWCons definition. leaf teBWCtr { - type cml_data_types:CML_INT32_T; config false; } // END of teBWCtr definition. leaf ibufSize { - type cml_data_types:CML_UINT32_T; config false; } // END of ibufSize definition. leaf lsaunuseCount { - type cml_data_types:CML_UINT16_T; config false; } // END of lsaunuseCount definition. leaf lsaunuseMax { - type cml_data_types:CML_UINT16_T; config false; } // END of lsaunuseMax definition. leaf opunuseMax { - type cml_data_types:CML_UINT16_T; config false; } // END of opunuseMax definition. leaf opunuseCount { - type cml_data_types:CML_UINT16_T; config false; } // END of opunuseCount definition. leaf obufSize { - type cml_data_types:CML_UINT32_T; config false; } // END of obufSize definition. leaf lbufSize { - type cml_data_types:CML_UINT32_T; config false; } // END of lbufSize definition. leaf abrDetail { - type cml_data_types:CML_STRING_T; config false; } // END of abrDetail definition. leaf asbrDetail { - type cml_data_types:CML_STRING_T; config false; } // END of asbrDetail definition. leaf isOspfPathTypeTwo { - type cml_data_types:CML_BOOL_T; config false; } // END of isOspfPathTypeTwo definition. leaf isOspfPathDiscard { - type cml_data_types:CML_BOOL_T; config false; } // END of isOspfPathDiscard definition. leaf isOspfNextHopCon { - type cml_data_types:CML_BOOL_T; config false; } // END of isOspfNextHopCon definition. leaf isOspfPathCodeArea { - type cml_data_types:CML_BOOL_T; config false; } // END of isOspfPathCodeArea definition. leaf ospfPathAreaDetails { - type cml_data_types:CML_STRING_T; config false; } // END of ospfPathAreaDetails definition. leaf ospfPathIfName { - type cml_data_types:CML_STRING_T; config false; } // END of ospfPathIfName definition. leaf ospfPathNbrId { - type cml_data_types:CML_STRING_T; config false; } // END of ospfPathNbrId definition. leaf ospfPathCodeStr { - type cml_data_types:CML_STRING_T; config false; } // END of ospfPathCodeStr definition. leaf ospfPathCodeNStr { - type cml_data_types:CML_STRING_T; config false; } // END of ospfPathCodeNStr definition. leaf ospfPathCodePrefix { - type cml_data_types:CML_STRING_T; config false; } // END of ospfPathCodePrefix definition. leaf ospfPathCodeCostPrefix { - type cml_data_types:CML_STRING_T; config false; } // END of ospfPathCodeCostPrefix definition. leaf areaCount { - type cml_data_types:CML_INT8_T; config false; } // END of areaCount definition. leaf vrfNameStat { - type cml_data_types:CML_STRING_T; config false; } // END of vrfNameStat definition. leaf lttMaxDelayMic { - type cml_data_types:CML_STRING_T; config false; } // END of lttMaxDelayMic definition. leaf lttHoldIntMic { - type cml_data_types:CML_STRING_T; config false; } // END of lttHoldIntMic definition. leaf lttStartDelayMic { - type cml_data_types:CML_STRING_T; config false; } // END of lttStartDelayMic definition. leaf lttArivalDelayMic { - type cml_data_types:CML_STRING_T; config false; } // END of lttArivalDelayMic definition. leaf abrType { - type cml_data_types:CML_STRING_T; config false; } // END of abrType definition. leaf isAbrType { - type cml_data_types:CML_BOOL_T; config false; } // END of isAbrType definition. leaf lttArivalDelay { - type cml_data_types:CML_STRING_T; config false; } // END of lttArivalDelay definition. leaf lttMaxDelay { - type cml_data_types:CML_STRING_T; config false; } // END of lttMaxDelay definition. leaf lttHoldInt { - type cml_data_types:CML_STRING_T; config false; } // END of lttHoldInt definition. leaf lttStartDelay { - type cml_data_types:CML_STRING_T; config false; } // END of lttStartDelay definition. leaf maxSpfDelay { - type cml_data_types:CML_STRING_T; config false; } // END of maxSpfDelay definition. leaf minSpfDelay { - type cml_data_types:CML_STRING_T; config false; } // END of minSpfDelay definition. leaf processUpTime { - type cml_data_types:CML_STRING_T; config false; } // END of processUpTime definition. leaf restartMethodType { - type cml_data_types:CML_STRING_T; config false; } // END of restartMethodType definition. leaf dbOverFlow { - type cml_data_types:CML_STRING_T; config false; } // END of dbOverFlow definition. leaf tOverFlowExit { - type cml_data_types:CML_STRING_T; config false; } // END of tOverFlowExit definition. leaf ddReceived { - type cml_data_types:CML_UINT16_T; config false; } // END of ddReceived definition. leaf outDdSent { - type cml_data_types:CML_UINT16_T; config false; } // END of outDdSent definition. leaf externalLsaCount { - type cml_data_types:CML_UINT32_T; config false; } // END of externalLsaCount definition. leaf externalLsaChecksum { - type cml_data_types:CML_UINT32_T; config false; } // END of externalLsaChecksum definition. leaf nonDefaultExternalLsa { - type cml_data_types:CML_UINT32_T; config false; } // END of nonDefaultExternalLsa definition. leaf isLsdbLimitR { - type cml_data_types:CML_BOOL_T; config false; } // END of isLsdbLimitR definition. leaf isLsdbExtLimit { - type cml_data_types:CML_BOOL_T; config false; } // END of isLsdbExtLimit definition. leaf isVrfEnabled { - type cml_data_types:CML_BOOL_T; config false; } // END of isVrfEnabled definition. leaf asbrType { - type cml_data_types:CML_BOOL_T; config false; } // END of asbrType definition. leaf lsdbExtLimit { - type cml_data_types:CML_STRING_T; config false; } // END of lsdbExtLimit definition. leaf restartType { - type cml_data_types:CML_STRING_T; config false; } // END of restartType definition. leaf lsdbLimitR { - type cml_data_types:CML_STRING_T; config false; } // END of lsdbLimitR definition. leaf lsaOriginateCount { - type cml_data_types:CML_STRING_T; config false; } // END of lsaOriginateCount definition. leaf refreshInterval { - type cml_data_types:CML_INT16_T; config false; } // END of refreshInterval definition. leaf rxLsaCount { - type cml_data_types:CML_UINT32_T; config false; } // END of rxLsaCount definition. leaf distanceAccessListName { - type cml_data_types:CML_STRING_T; config true; description "distance Access List Name"; } // END of distanceAccessListName definition. leaf sourceIpAddr { - type cml_data_types:CML_IPV4_PREFIX_T; config true; } // END of sourceIpAddr definition. leaf isAllDistance { - type cml_data_types:CML_INT32_T { range "1..255"; } @@ -1572,50 +1339,42 @@ submodule ospf { } // END of isAllDistance definition. leaf routerId { - type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of routerId definition. leaf ospfRouterId { - type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of ospfRouterId definition. leaf isLogAdjSet { - type cml_data_types:CML_BOOL_T; config true; description "log-adjacency-changes"; } // END of isLogAdjSet definition. leaf isFrrSet { - type cml_data_types:CML_BOOL_T; config true; } // END of isFrrSet definition. leaf isDna { - type cml_data_types:CML_BOOL_T; config true; } // END of isDna definition. leaf cspfProctectionType { - type cml_data_types:CML_BOOL_T; config true; } // END of cspfProctectionType definition. leaf isBfdIfSet { - type cml_data_types:CML_BOOL_T; config true; } // END of isBfdIfSet definition. leaf mlinkNbr { - type cml_data_types:CML_STRING_T; config true; } // END of mlinkNbr definition. @@ -1623,7 +1382,6 @@ submodule ospf { list passiveIf { - description "passiveIf"; @@ -1632,13 +1390,12 @@ submodule ospf { leaf passiveIfName { - type cml_data_types:CML_STRING_T; config true; } // END of passiveIfName definition. leaf passiveIfIpAddr { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; } // END of passiveIfIpAddr definition. @@ -1647,7 +1404,6 @@ submodule ospf { list noPassiveIfRun { - description "noPassiveIfRun"; @@ -1656,13 +1412,11 @@ submodule ospf { leaf noPassiveIfName { - type cml_data_types:CML_STRING_T; config false; } // END of noPassiveIfName definition. leaf noPassiveIfIpAddr { - type cml_data_types:CML_STRING_T; config false; } // END of noPassiveIfIpAddr definition. @@ -1671,7 +1425,6 @@ submodule ospf { list ospfDefaultInformation { - description "ospfDefaultInformation"; @@ -1680,20 +1433,17 @@ submodule ospf { leaf defaultOrigin { - type cml_data_types:CML_BOOL_T; config true; description "default-information originate"; } // END of defaultOrigin definition. leaf defaultAlways { - type cml_data_types:CML_BOOL_T; config true; } // END of defaultAlways definition. leaf defaultMetric { - type cml_data_types:CML_INT32_T { range "0..16777214"; } @@ -1702,14 +1452,12 @@ submodule ospf { } // END of defaultMetric definition. leaf defaultMetricType { - type cml_data_types:CML_OSPF_METRIC_TYPE_T; default "2"; config true; } // END of defaultMetricType definition. leaf redistRouteMapName { - type cml_data_types:CML_STRING_T; config true; } // END of redistRouteMapName definition. @@ -1718,7 +1466,6 @@ submodule ospf { list frrTieBreak { - description "frrTieBreak"; @@ -1727,13 +1474,12 @@ submodule ospf { leaf frrTieBreakVal { - type cml_data_types:CML_OSPF_FRR_TIE_BREAK_VAL_T; config true; } // END of frrTieBreakVal definition. leaf frrTieBreakIndex { - mandatory true; + mandatory true; type cml_data_types:CML_UINT32_T { range "1..10"; } @@ -1741,7 +1487,7 @@ submodule ospf { } // END of frrTieBreakIndex definition. leaf isFrrPrioSet { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of isFrrPrioSet definition. @@ -1750,7 +1496,6 @@ submodule ospf { list summaryAddress { - description "summaryAddress"; @@ -1759,25 +1504,22 @@ submodule ospf { leaf summaryAddr { - type cml_data_types:CML_IPV4_PREFIX_T; config true; } // END of summaryAddr definition. leaf summaryAddrMask { - mandatory true; + mandatory true; type cml_data_types:CML_INT32_T; config true; } // END of summaryAddrMask definition. leaf summaryAddressNotAdvertise { - type cml_data_types:CML_BOOL_T; config true; } // END of summaryAddressNotAdvertise definition. leaf addressTag { - type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -1789,7 +1531,6 @@ submodule ospf { list hostAddr { - description "hostAddr"; @@ -1798,7 +1539,6 @@ submodule ospf { leaf hostIpAddr { - type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of hostIpAddr definition. @@ -1806,7 +1546,6 @@ submodule ospf { list hostArea { - description "hostArea"; @@ -1815,14 +1554,12 @@ submodule ospf { leaf hostAreaId { - type cml_data_types:CML_STRING_T; config true; description "host Area"; } // END of hostAreaId definition. leaf hostEntryCost { - type cml_data_types:CML_INT32_T { range "0..65535"; } @@ -1835,7 +1572,6 @@ submodule ospf { list area { - description "area"; @@ -1844,39 +1580,33 @@ submodule ospf { leaf areaId { - type cml_data_types:CML_STRING_T; config true; } // END of areaId definition. leaf areaAuthType { - type cml_data_types:CML_BOOL_T; config true; } // END of areaAuthType definition. leaf areaAuthMsgType { - type cml_data_types:CML_BOOL_T; config true; } // END of areaAuthMsgType definition. leaf exportListName { - type cml_data_types:CML_STRING_T; default "NULL"; config true; } // END of exportListName definition. leaf importListName { - type cml_data_types:CML_STRING_T; default "NULL"; config true; } // END of importListName definition. leaf areaCost { - type cml_data_types:CML_UINT32_T { range "0..16777215"; } @@ -1885,7 +1615,6 @@ submodule ospf { } // END of areaCost definition. leaf areaShortcutType { - type cml_data_types:CML_OSPF_AREA_SHORTCUT_TYPE_T; default "default"; config true; @@ -1893,109 +1622,91 @@ submodule ospf { } // END of areaShortcutType definition. leaf addrAggrType { - type cml_data_types:CML_INT32_T; config true; } // END of addrAggrType definition. leaf mask { - type cml_data_types:CML_STRING_T; config true; } // END of mask definition. leaf areaAggrStatus { - type cml_data_types:CML_INT32_T; config true; } // END of areaAggrStatus definition. leaf areaAggrEffect { - type cml_data_types:CML_INT32_T; config true; } // END of areaAggrEffect definition. leaf routeTag { - type cml_data_types:CML_UINT32_T; config true; } // END of routeTag definition. leaf isAreaBackbone { - type cml_data_types:CML_BOOL_T; config false; } // END of isAreaBackbone definition. leaf isAreaActive { - type cml_data_types:CML_BOOL_T; config false; } // END of isAreaActive definition. leaf areaIdStr { - type cml_data_types:CML_STRING_T; config false; } // END of areaIdStr definition. leaf areaIfCount { - type cml_data_types:CML_UINT32_T; config false; } // END of areaIfCount definition. leaf activeIfCount { - type cml_data_types:CML_UINT16_T; config false; } // END of activeIfCount definition. leaf fullVirtNbrCount { - type cml_data_types:CML_UINT16_T; config false; } // END of fullVirtNbrCount definition. leaf checkSumLsa { - type cml_data_types:CML_UINT32_T; config false; } // END of checkSumLsa definition. leaf countLsa { - type cml_data_types:CML_UINT32_T; config false; } // END of countLsa definition. leaf spfLastExec { - type cml_data_types:CML_STRING_T; config false; } // END of spfLastExec definition. leaf nssaTransState { - type cml_data_types:CML_STRING_T; config false; } // END of nssaTransState definition. leaf nssaTransEventCount { - type cml_data_types:CML_INT8_T; config false; } // END of nssaTransEventCount definition. leaf fullAdjacentNbr { - type cml_data_types:CML_UINT16_T; config false; } // END of fullAdjacentNbr definition. leaf spfExecutionCount { - type cml_data_types:CML_UINT32_T; config false; } // END of spfExecutionCount definition. @@ -2003,7 +1714,6 @@ submodule ospf { list filterPrefixList { - description "filterPrefixList"; @@ -2012,7 +1722,6 @@ submodule ospf { leaf prefixName { - type cml_data_types:CML_STRING_T; config true; } // END of prefixName definition. @@ -2020,7 +1729,6 @@ submodule ospf { list filterPrefixType { - description "filterPrefixType"; @@ -2029,7 +1737,6 @@ submodule ospf { leaf prefixType { - type cml_data_types:CML_OSPF_AREA_FILTER_LIST_PREFIX_T; config true; description "area filter-list"; @@ -2040,7 +1747,6 @@ submodule ospf { list filterAccessList { - description "filterAccessList"; @@ -2049,7 +1755,6 @@ submodule ospf { leaf accessName { - type cml_data_types:CML_STRING_T; config true; } // END of accessName definition. @@ -2057,7 +1762,6 @@ submodule ospf { list filterAccessType { - description "filterAccessType"; @@ -2066,7 +1770,6 @@ submodule ospf { leaf accessType { - type cml_data_types:CML_OSPF_AREA_FILTER_LIST_PREFIX_T; config true; } // END of accessType definition. @@ -2076,7 +1779,6 @@ submodule ospf { list rangeArea { - description "rangeArea"; @@ -2085,28 +1787,24 @@ submodule ospf { leaf ospfAreaRange { - type cml_data_types:CML_IPV4_PREFIX_T; config true; description "ospf Area Range"; } // END of ospfAreaRange definition. leaf isAreaRangeAdvertise { - type cml_data_types:CML_BOOL_T; config true; description "area range as advertise"; } // END of isAreaRangeAdvertise definition. leaf isAreaRangeNotAdvertise { - type cml_data_types:CML_BOOL_T; config true; description "area range as not-advertise"; } // END of isAreaRangeNotAdvertise definition. leaf substituteAddr { - type cml_data_types:CML_IPV4_PREFIX_T; config true; description "area range with substitute"; @@ -2116,7 +1814,6 @@ submodule ospf { list rangeMaskArea { - description "rangeMaskArea"; @@ -2125,7 +1822,6 @@ submodule ospf { leaf areaRange { - type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of areaRange definition. @@ -2133,7 +1829,6 @@ submodule ospf { list rangeMaskLenArea { - description "rangeMaskLenArea"; @@ -2142,21 +1837,18 @@ submodule ospf { leaf areaRangeMask { - type cml_data_types:CML_IPV4_ADDR_T; config true; description "area range with mask"; } // END of areaRangeMask definition. leaf rangeMaskAdvertise { - type cml_data_types:CML_BOOL_T; config true; description "area range with mask as advertise"; } // END of rangeMaskAdvertise definition. leaf rangeMaskNotAdvertise { - type cml_data_types:CML_BOOL_T; config true; description "area range with mask as not-advertise"; @@ -2167,7 +1859,6 @@ submodule ospf { list nssaArea { - description "nssaArea"; @@ -2176,13 +1867,11 @@ submodule ospf { leaf isNssaArea { - type cml_data_types:CML_BOOL_T; config true; } // END of isNssaArea definition. leaf nssaStabilityInterval { - type cml_data_types:CML_INT32_T { range "0..2147483647"; } @@ -2191,13 +1880,11 @@ submodule ospf { } // END of nssaStabilityInterval definition. leaf nssaTranslatorRole { - type cml_data_types:CML_OSPF_TRANSLATOR_ROLE_T; config true; } // END of nssaTranslatorRole definition. leaf nssaDefaultOriginMetric { - type cml_data_types:CML_INT32_T { range "1..16777214"; } @@ -2206,7 +1893,6 @@ submodule ospf { } // END of nssaDefaultOriginMetric definition. leaf nssaDefaultOriginMetricType { - type cml_data_types:CML_INT32_T { range "1..2"; } @@ -2214,38 +1900,32 @@ submodule ospf { } // END of nssaDefaultOriginMetricType definition. leaf isNssaNoDist { - type cml_data_types:CML_BOOL_T; config true; } // END of isNssaNoDist definition. leaf isNssaDefaultOriginate { - type cml_data_types:CML_BOOL_T; config true; } // END of isNssaDefaultOriginate definition. leaf nssaAreaNoSummary { - type cml_data_types:CML_BOOL_T; config true; } // END of nssaAreaNoSummary definition. leaf nssaRouteMapName { - type cml_data_types:CML_STRING_T; config true; } // END of nssaRouteMapName definition. container nssaAreaTranslator { - - config true; + config true; description "nssaAreaTranslator"; leaf nssaAreaTranslatorRole { - type cml_data_types:CML_OSPF_NSSA_TRANSLATOR_ROLE_T; config true; description "area nssa"; @@ -2256,7 +1936,6 @@ submodule ospf { list stubArea { - description "stubArea"; @@ -2265,14 +1944,12 @@ submodule ospf { leaf isStubArea { - type cml_data_types:CML_BOOL_T; config true; description "area stub"; } // END of isStubArea definition. leaf stubAreaNoSummary { - type cml_data_types:CML_BOOL_T; config true; description "area stub no-summary"; @@ -2282,7 +1959,6 @@ submodule ospf { list vlinkArea { - description "vlinkArea"; @@ -2291,14 +1967,12 @@ submodule ospf { leaf peerId { - type cml_data_types:CML_IPV4_ADDR_T; config true; description "area virtual-link"; } // END of peerId definition. leaf virtMsgDigestKeyId { - type cml_data_types:CML_UINT8_T { range "0..255"; } @@ -2306,19 +1980,16 @@ submodule ospf { } // END of virtMsgDigestKeyId definition. leaf virtMsgDigestKeyStr { - type cml_data_types:CML_STRING_T; config true; } // END of virtMsgDigestKeyStr definition. leaf ifVirtAuthKey { - - type cml_data_types:CML_OSPF_VIRT_AUTH_KEY_T; + type cml_data_types:CML_STRING_T; config true; } // END of ifVirtAuthKey definition. leaf virtIfRetransIntvl { - type cml_data_types:CML_INT32_T { range "1..3600"; } @@ -2327,7 +1998,6 @@ submodule ospf { } // END of virtIfRetransIntvl definition. leaf ifVirtTransmitDelay { - type cml_data_types:CML_INT32_T { range "1..3600"; } @@ -2336,7 +2006,6 @@ submodule ospf { } // END of ifVirtTransmitDelay definition. leaf ifVirtHelloInterval { - type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -2345,7 +2014,6 @@ submodule ospf { } // END of ifVirtHelloInterval definition. leaf ifVirtDeadInterval { - type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -2354,61 +2022,51 @@ submodule ospf { } // END of ifVirtDeadInterval definition. leaf ifVirtAuthType { - type cml_data_types:CML_OSPF_VIRT_AUTH_TYPE_T; config true; } // END of ifVirtAuthType definition. leaf vlinkName { - type cml_data_types:CML_STRING_T; config false; } // END of vlinkName definition. leaf vlinkStat { - type cml_data_types:CML_STRING_T; config false; } // END of vlinkStat definition. leaf vlinkInterface { - type cml_data_types:CML_STRING_T; config false; } // END of vlinkInterface definition. leaf vlinkIdentAddr { - type cml_data_types:CML_STRING_T; config false; } // END of vlinkIdentAddr definition. leaf vlinkRemoteAddr { - type cml_data_types:CML_STRING_T; config false; } // END of vlinkRemoteAddr definition. leaf vlinkTransDelayState { - type cml_data_types:CML_STRING_T; config false; } // END of vlinkTransDelayState definition. leaf vlinkHelloTimeDump { - type cml_data_types:CML_STRING_T; config false; } // END of vlinkHelloTimeDump definition. leaf vlinkNbrState { - type cml_data_types:CML_STRING_T; config false; } // END of vlinkNbrState definition. leaf isVlinkBfdSet { - type cml_data_types:CML_BOOL_T; config true; } // END of isVlinkBfdSet definition. @@ -2418,7 +2076,6 @@ submodule ospf { list network { - description "network"; @@ -2427,7 +2084,6 @@ submodule ospf { leaf ospfNetAddr { - type cml_data_types:CML_IPV4_PREFIX_T; config true; } // END of ospfNetAddr definition. @@ -2435,7 +2091,6 @@ submodule ospf { list networkArea { - description "networkArea"; @@ -2444,14 +2099,13 @@ submodule ospf { leaf networkAreaId { - type cml_data_types:CML_STRING_T; config true; description "network area"; } // END of networkAreaId definition. leaf ospfInterfaceInstanceId { - mandatory true; + mandatory true; type cml_data_types:CML_INT16_T { range "0..255"; } @@ -2463,7 +2117,6 @@ submodule ospf { list networkMask { - description "networkMask"; @@ -2472,26 +2125,25 @@ submodule ospf { leaf ospfNetAddrMask { - type cml_data_types:CML_IPV4_ADDR_T; config true; description "Network Area with Mask"; } // END of ospfNetAddrMask definition. leaf netMask { - mandatory true; + mandatory true; type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of netMask definition. leaf networkAreaIdMask { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; } // END of networkAreaIdMask definition. leaf ospfInterfaceInstanceIdMask { - mandatory true; + mandatory true; type cml_data_types:CML_INT16_T { range "0..255"; } @@ -2502,7 +2154,6 @@ submodule ospf { list neighborRun { - description "neighborRun"; @@ -2511,211 +2162,176 @@ submodule ospf { leaf neighborViaInterfaceName { - type cml_data_types:CML_STRING_T; config false; } // END of neighborViaInterfaceName definition. leaf neighborDownState { - type cml_data_types:CML_BOOL_T; config false; } // END of neighborDownState definition. leaf neighborPri { - type cml_data_types:CML_UINT8_T; config false; } // END of neighborPri definition. leaf neighborInstanceId { - type cml_data_types:CML_UINT8_T; config false; } // END of neighborInstanceId definition. leaf neighborState { - type cml_data_types:CML_STRING_T; config false; } // END of neighborState definition. leaf neighborInterfaceAddress { - type cml_data_types:CML_STRING_T; config false; } // END of neighborInterfaceAddress definition. leaf neighborViaInterfaceNamePvt { - type cml_data_types:CML_STRING_T; config false; } // END of neighborViaInterfaceNamePvt definition. leaf neighborId { - type cml_data_types:CML_IPV4_ADDR_T; config false; } // END of neighborId definition. leaf neighborInterfaceInputAddress { - type cml_data_types:CML_IPV4_ADDR_T; config false; } // END of neighborInterfaceInputAddress definition. leaf neighborDeadTimeDueIn { - type cml_data_types:CML_STRING_T; config false; } // END of neighborDeadTimeDueIn definition. leaf neighborRetransmitCount { - type cml_data_types:CML_UINT32_T; config false; } // END of neighborRetransmitCount definition. leaf neighborRequestCount { - type cml_data_types:CML_UINT32_T; config false; } // END of neighborRequestCount definition. leaf neighborDbSummaryCount { - type cml_data_types:CML_INT8_T; config false; } // END of neighborDbSummaryCount definition. leaf neighborArea { - type cml_data_types:CML_STRING_T; config false; } // END of neighborArea definition. leaf neighborChangeState { - type cml_data_types:CML_UINT32_T; config false; } // END of neighborChangeState definition. leaf neighborDRouterId { - type cml_data_types:CML_STRING_T; config false; } // END of neighborDRouterId definition. leaf neighborBDRouterId { - type cml_data_types:CML_STRING_T; config false; } // END of neighborBDRouterId definition. leaf neighborOptions { - type cml_data_types:CML_UINT32_T; config false; } // END of neighborOptions definition. leaf neighborOptionDump { - type cml_data_types:CML_STRING_T; config false; } // END of neighborOptionDump definition. leaf neighborExtendedOptions { - type cml_data_types:CML_UINT32_T; config false; } // END of neighborExtendedOptions definition. leaf neighborExtendedOptionDump { - type cml_data_types:CML_STRING_T; config false; } // END of neighborExtendedOptionDump definition. leaf restartState { - type cml_data_types:CML_BOOL_T; config false; } // END of restartState definition. leaf neighborUptime { - type cml_data_types:CML_STRING_T; config false; } // END of neighborUptime definition. leaf neighborOOBResyncState { - type cml_data_types:CML_BOOL_T; config false; } // END of neighborOOBResyncState definition. leaf neighborLastOOBState { - type cml_data_types:CML_BOOL_T; config false; } // END of neighborLastOOBState definition. leaf neighborTResyncState { - type cml_data_types:CML_BOOL_T; config false; } // END of neighborTResyncState definition. leaf neighborTResync { - type cml_data_types:CML_STRING_T; config false; } // END of neighborTResync definition. leaf neighborOOBUptime { - type cml_data_types:CML_STRING_T; config false; } // END of neighborOOBUptime definition. leaf neighborPollDueIn { - type cml_data_types:CML_STRING_T; config false; } // END of neighborPollDueIn definition. leaf cryptSeqNum { - type cml_data_types:CML_UINT32_T; config false; } // END of cryptSeqNum definition. leaf neighborThreadInactivityTimer { - type cml_data_types:CML_STRING_T; config false; } // END of neighborThreadInactivityTimer definition. leaf neighborThreadDBDescriptionRetransmition { - type cml_data_types:CML_STRING_T; config false; } // END of neighborThreadDBDescriptionRetransmition definition. leaf neighborLsRequestRetransmition { - type cml_data_types:CML_STRING_T; config false; } // END of neighborLsRequestRetransmition definition. leaf neighborLsUpdateRetransmition { - type cml_data_types:CML_STRING_T; config false; } // END of neighborLsUpdateRetransmition definition. leaf neighborThreadPolltimer { - type cml_data_types:CML_STRING_T; config false; } // END of neighborThreadPolltimer definition. @@ -2724,7 +2340,6 @@ submodule ospf { list neighbor { - description "neighbor"; @@ -2733,14 +2348,12 @@ submodule ospf { leaf neighborIpAddr { - type cml_data_types:CML_IPV4_ADDR_T; config true; description "Neighbor Addr"; } // END of neighborIpAddr definition. leaf neighborStaticPriority { - type cml_data_types:CML_UINT8_T { range "0..255"; } @@ -2749,7 +2362,6 @@ submodule ospf { } // END of neighborStaticPriority definition. leaf nbrPollInterval { - type cml_data_types:CML_INT32_T { range "1..2147483647"; } @@ -2758,7 +2370,6 @@ submodule ospf { } // END of nbrPollInterval definition. leaf neighborCost { - type cml_data_types:CML_UINT16_T { range "1..65535"; } @@ -2771,7 +2382,6 @@ submodule ospf { list redistributeProc { - description "redistributeProc"; @@ -2780,7 +2390,6 @@ submodule ospf { leaf secondaryOspfProcessId { - type cml_data_types:CML_INT32_T { range "1..65535"; } @@ -2788,14 +2397,12 @@ submodule ospf { } // END of secondaryOspfProcessId definition. leaf redistMetricType { - type cml_data_types:CML_OSPF_METRIC_TYPE_T; default "2"; config true; } // END of redistMetricType definition. leaf redistMetricValue { - type cml_data_types:CML_INT32_T { range "0..16777214"; } @@ -2804,7 +2411,6 @@ submodule ospf { } // END of redistMetricValue definition. leaf redistTag { - type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -2813,7 +2419,6 @@ submodule ospf { } // END of redistTag definition. leaf routeMapName { - type cml_data_types:CML_STRING_T; config true; } // END of routeMapName definition. @@ -2822,7 +2427,6 @@ submodule ospf { list redistribute { - description "redistribute"; @@ -2831,21 +2435,18 @@ submodule ospf { leaf routeSourceType { - type cml_data_types:CML_OSPF_ROUTE_SOURCE_TYPE_T; config true; description "Ospf redistribute"; } // END of routeSourceType definition. leaf redistMetricType { - type cml_data_types:CML_OSPF_METRIC_TYPE_T; default "2"; config true; } // END of redistMetricType definition. leaf redistMetricValue { - type cml_data_types:CML_INT32_T { range "0..16777214"; } @@ -2854,7 +2455,6 @@ submodule ospf { } // END of redistMetricValue definition. leaf redistTag { - type cml_data_types:CML_UINT32_T { range "0..4294967295"; } @@ -2863,7 +2463,6 @@ submodule ospf { } // END of redistTag definition. leaf routeMapName { - type cml_data_types:CML_STRING_T; config true; description "Ospf redistribute with metric-type,route-map"; @@ -2871,14 +2470,12 @@ submodule ospf { } // End of redistribute-list container distanceTypes { - - config true; + config true; description "distanceTypes"; leaf intraAreaDistance { - type cml_data_types:CML_INT32_T { range "1..255"; } @@ -2887,7 +2484,6 @@ submodule ospf { } // END of intraAreaDistance definition. leaf interAreaDistance { - type cml_data_types:CML_INT32_T { range "1..255"; } @@ -2896,7 +2492,6 @@ submodule ospf { } // END of interAreaDistance definition. leaf externalDistance { - type cml_data_types:CML_INT32_T { range "1..255"; } @@ -2913,7 +2508,6 @@ submodule ospf { grouping ospfInterface-grouping { list ospfInterface { - description "OSPF interface related operations"; @@ -2922,25 +2516,21 @@ submodule ospf { leaf ifName { - type cml_data_types:CML_STRING_T; config true; } // END of ifName definition. leaf ifBfdSet { - type cml_data_types:CML_BOOL_T; config true; } // END of ifBfdSet definition. leaf ifBfdDisable { - type cml_data_types:CML_BOOL_T; config true; } // END of ifBfdDisable definition. leaf holdDownTimer { - type cml_data_types:CML_UINT32_T { range "1..2147483"; } @@ -2949,46 +2539,39 @@ submodule ospf { } // END of holdDownTimer definition. leaf fastRerouteIfSet { - type cml_data_types:CML_BOOL_T; config true; } // END of fastRerouteIfSet definition. leaf ifNetworkType { - type cml_data_types:CML_OSPF_NETWORK_T; default "point-to-point"; config true; } // END of ifNetworkType definition. leaf isNetworkP2mp { - type cml_data_types:CML_BOOL_T; config true; } // END of isNetworkP2mp definition. leaf ifAuthType { - type cml_data_types:CML_OSPF_AUTH_TYPE_T; default "simple"; config true; } // END of ifAuthType definition. leaf ifAuthKeyEncryption { - type cml_data_types:CML_BOOL_T; config true; } // END of ifAuthKeyEncryption definition. leaf ifAuthKey { - type cml_data_types:CML_STRING_T; config true; description "ospf authentication-key with IP address of the interface."; } // END of ifAuthKey definition. leaf ifCost { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -2997,7 +2580,6 @@ submodule ospf { } // END of ifCost definition. leaf ifDeadInterval { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3006,7 +2588,6 @@ submodule ospf { } // END of ifDeadInterval definition. leaf ifHelloInterval { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3015,13 +2596,11 @@ submodule ospf { } // END of ifHelloInterval definition. leaf isMtuIgnore { - type cml_data_types:CML_BOOL_T; config true; } // END of isMtuIgnore definition. leaf ifTransmitDelay { - type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -3030,7 +2609,6 @@ submodule ospf { } // END of ifTransmitDelay definition. leaf ifPriority { - type cml_data_types:CML_UINT8_T { range "0..255"; } @@ -3039,7 +2617,6 @@ submodule ospf { } // END of ifPriority definition. leaf ifRetransmitInterval { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3048,13 +2625,11 @@ submodule ospf { } // END of ifRetransmitInterval definition. leaf ifDatabaseFilter { - type cml_data_types:CML_BOOL_T; config true; } // END of ifDatabaseFilter definition. leaf ifMtu { - type cml_data_types:CML_UINT16_T { range "576..65535"; } @@ -3063,13 +2638,11 @@ submodule ospf { } // END of ifMtu definition. leaf ifDisableAll { - type cml_data_types:CML_BOOL_T; config true; } // END of ifDisableAll definition. leaf ifTEMetric { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3078,7 +2651,6 @@ submodule ospf { } // END of ifTEMetric definition. leaf ifResyncTimeout { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3087,427 +2659,356 @@ submodule ospf { } // END of ifResyncTimeout definition. leaf ifDna { - type cml_data_types:CML_BOOL_T; config true; } // END of ifDna definition. leaf isIfRunning { - type cml_data_types:CML_BOOL_T; config false; } // END of isIfRunning definition. leaf inputIfName { - type cml_data_types:CML_STRING_T; config false; } // END of inputIfName definition. leaf intName { - type cml_data_types:CML_STRING_T; config false; } // END of intName definition. leaf ifIdentAddr { - type cml_data_types:CML_STRING_T; config false; } // END of ifIdentAddr definition. leaf ifpCost { - type cml_data_types:CML_UINT32_T; config false; } // END of ifpCost definition. leaf isIpv4Unnumbered { - type cml_data_types:CML_BOOL_T; config false; } // END of isIpv4Unnumbered definition. leaf isIfPriStatus { - type cml_data_types:CML_BOOL_T; config false; } // END of isIfPriStatus definition. leaf isMultiIf { - type cml_data_types:CML_BOOL_T; config false; } // END of isMultiIf definition. leaf isMultiIfPriStatus { - type cml_data_types:CML_BOOL_T; config false; } // END of isMultiIfPriStatus definition. leaf ifAreaDetail { - type cml_data_types:CML_STRING_T; config false; } // END of ifAreaDetail definition. leaf ifProcId { - type cml_data_types:CML_UINT16_T; config false; } // END of ifProcId definition. leaf ifRouterId { - type cml_data_types:CML_STRING_T; config false; } // END of ifRouterId definition. leaf ifIntNetworkType { - type cml_data_types:CML_STRING_T; config false; } // END of ifIntNetworkType definition. leaf ifTransDelayGet { - type cml_data_types:CML_UINT32_T; config false; } // END of ifTransDelayGet definition. leaf ifTransDelayState { - type cml_data_types:CML_STRING_T; config false; } // END of ifTransDelayState definition. leaf multiIfTeMetric { - type cml_data_types:CML_INT32_T; config false; } // END of multiIfTeMetric definition. leaf ifIdentPriority { - type cml_data_types:CML_INT32_T; config false; } // END of ifIdentPriority definition. leaf isLdpIgpSync { - type cml_data_types:CML_BOOL_T; config false; } // END of isLdpIgpSync definition. leaf isLdpIgpHoldDown { - type cml_data_types:CML_BOOL_T; config false; } // END of isLdpIgpHoldDown definition. leaf LdpIgpHoldDownVal { - type cml_data_types:CML_STRING_T; config false; } // END of LdpIgpHoldDownVal definition. leaf isInterfaceType { - type cml_data_types:CML_BOOL_T; config false; } // END of isInterfaceType definition. leaf interfaceDRDetail { - type cml_data_types:CML_STRING_T; config false; } // END of interfaceDRDetail definition. leaf ifDbFilterGetState { - type cml_data_types:CML_STRING_T; config false; } // END of ifDbFilterGetState definition. leaf ifHelloInt { - type cml_data_types:CML_INT32_T; config false; } // END of ifHelloInt definition. leaf ifDeadInt { - type cml_data_types:CML_INT32_T; config false; } // END of ifDeadInt definition. leaf ifRetransmitInt { - type cml_data_types:CML_INT32_T; config false; } // END of ifRetransmitInt definition. leaf ifRestartMethodTypeState { - type cml_data_types:CML_BOOL_T; config false; } // END of ifRestartMethodTypeState definition. leaf ifRestartOOBResyncTimeout { - type cml_data_types:CML_UINT32_T; config false; } // END of ifRestartOOBResyncTimeout definition. leaf ifTypeLoopbackState { - type cml_data_types:CML_BOOL_T; config false; } // END of ifTypeLoopbackState definition. leaf ifIntPassiveState { - type cml_data_types:CML_BOOL_T; config false; } // END of ifIntPassiveState definition. leaf ifHelloTimeDueIn { - type cml_data_types:CML_STRING_T; config false; } // END of ifHelloTimeDueIn definition. leaf ifNbrCountAll { - type cml_data_types:CML_INT32_T; config false; } // END of ifNbrCountAll definition. leaf ifAdjacentNbrCountAll { - type cml_data_types:CML_INT32_T; config false; } // END of ifAdjacentNbrCountAll definition. leaf ifCrypto { - type cml_data_types:CML_UINT32_T; config false; } // END of ifCrypto definition. leaf ifHelloPacketDetail { - type cml_data_types:CML_STRING_T; config false; } // END of ifHelloPacketDetail definition. leaf ifLSReqDetail { - type cml_data_types:CML_STRING_T; config false; } // END of ifLSReqDetail definition. leaf ifLSAckDetail { - type cml_data_types:CML_STRING_T; config false; } // END of ifLSAckDetail definition. leaf intIfMtu { - type cml_data_types:CML_INT32_T; config false; } // END of intIfMtu definition. leaf multiIfIdentAddr { - type cml_data_types:CML_STRING_T; config false; } // END of multiIfIdentAddr definition. leaf multiIfpCost { - type cml_data_types:CML_UINT32_T; config false; } // END of multiIfpCost definition. leaf multiIsIpv4Unnumbered { - type cml_data_types:CML_BOOL_T; config false; } // END of multiIsIpv4Unnumbered definition. leaf multiIfAreaDetail { - type cml_data_types:CML_STRING_T; config false; } // END of multiIfAreaDetail definition. leaf multiIfProcId { - type cml_data_types:CML_UINT16_T; config false; } // END of multiIfProcId definition. leaf multiIfRouterId { - type cml_data_types:CML_STRING_T; config false; } // END of multiIfRouterId definition. leaf multiIfNetworkType { - type cml_data_types:CML_STRING_T; config false; } // END of multiIfNetworkType definition. leaf multiIfTransDelayGet { - type cml_data_types:CML_UINT32_T; config false; } // END of multiIfTransDelayGet definition. leaf multiIfTransDelayState { - type cml_data_types:CML_STRING_T; config false; } // END of multiIfTransDelayState definition. leaf multiIfIdentPriority { - type cml_data_types:CML_INT32_T; config false; } // END of multiIfIdentPriority definition. leaf isIfSyncParams { - type cml_data_types:CML_BOOL_T; config false; } // END of isIfSyncParams definition. leaf multiIsLdpIgpSync { - type cml_data_types:CML_BOOL_T; config false; } // END of multiIsLdpIgpSync definition. leaf multiIsLdpIgpHoldDown { - type cml_data_types:CML_BOOL_T; config false; } // END of multiIsLdpIgpHoldDown definition. leaf multiLdpIgpHoldDownVal { - type cml_data_types:CML_STRING_T; config false; } // END of multiLdpIgpHoldDownVal definition. leaf multiIsInterfaceType { - type cml_data_types:CML_BOOL_T; config false; } // END of multiIsInterfaceType definition. leaf multiinterfaceDRDetail { - type cml_data_types:CML_STRING_T; config false; } // END of multiinterfaceDRDetail definition. leaf multiIfDbFilterGetState { - type cml_data_types:CML_INT32_T; config false; } // END of multiIfDbFilterGetState definition. leaf multiIfHelloInt { - type cml_data_types:CML_INT32_T; config false; } // END of multiIfHelloInt definition. leaf multiIfDeadInt { - type cml_data_types:CML_INT32_T; config false; } // END of multiIfDeadInt definition. leaf multiIfRetransmitInt { - type cml_data_types:CML_INT32_T; config false; } // END of multiIfRetransmitInt definition. leaf multiIfRestartMethodTypeState { - type cml_data_types:CML_BOOL_T; config false; } // END of multiIfRestartMethodTypeState definition. leaf multiIfRestartOOBResyncTimeout { - type cml_data_types:CML_UINT32_T; config false; } // END of multiIfRestartOOBResyncTimeout definition. leaf multiIsIfTypeLoopbackState { - type cml_data_types:CML_BOOL_T; config false; } // END of multiIsIfTypeLoopbackState definition. leaf multiIfIntPassiveState { - type cml_data_types:CML_BOOL_T; config false; } // END of multiIfIntPassiveState definition. leaf multiIfHelloTimeDueIn { - type cml_data_types:CML_STRING_T; config false; } // END of multiIfHelloTimeDueIn definition. leaf multiIfNbrCountAll { - type cml_data_types:CML_INT32_T; config false; } // END of multiIfNbrCountAll definition. leaf multiIfAdjacentNbrCountAll { - type cml_data_types:CML_INT32_T; config false; } // END of multiIfAdjacentNbrCountAll definition. leaf multiIfCrypto { - type cml_data_types:CML_UINT32_T; config false; } // END of multiIfCrypto definition. leaf multiIfHelloPacketDetail { - type cml_data_types:CML_STRING_T; config false; } // END of multiIfHelloPacketDetail definition. leaf multiIfLSReqDetail { - type cml_data_types:CML_STRING_T; config false; } // END of multiIfLSReqDetail definition. leaf multiIfLSAckDetail { - type cml_data_types:CML_STRING_T; config false; } // END of multiIfLSAckDetail definition. leaf multiIfMtu { - type cml_data_types:CML_INT32_T; config false; } // END of multiIfMtu definition. @@ -3515,7 +3016,6 @@ submodule ospf { list ospfMultiAreaIf { - description "ospfMultiAreaIf"; @@ -3524,7 +3024,6 @@ submodule ospf { leaf ifOpsfProcId { - type cml_data_types:CML_INT32_T { range "0..65535"; } @@ -3534,7 +3033,6 @@ submodule ospf { list ospfMultiAreaId { - description "ospfMultiAreaId"; @@ -3543,13 +3041,12 @@ submodule ospf { leaf ifOspfAreaId { - type cml_data_types:CML_STRING_T; config true; } // END of ifOspfAreaId definition. leaf ifOspfNbrId { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; } // END of ifOspfNbrId definition. @@ -3559,7 +3056,6 @@ submodule ospf { list ospfCryptKey { - description "ospfCryptKey"; @@ -3568,7 +3064,6 @@ submodule ospf { leaf msgDigestKeyId { - type cml_data_types:CML_UINT32_T { range "1..255"; } @@ -3576,13 +3071,13 @@ submodule ospf { } // END of msgDigestKeyId definition. leaf msgDigestKeyEncryption { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of msgDigestKeyEncryption definition. leaf msgifAuthKey { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; } // END of msgifAuthKey definition. @@ -3591,7 +3086,6 @@ submodule ospf { list ospfInterfaceParamsAddrList { - description "ospfInterfaceParamsAddrList"; @@ -3600,32 +3094,27 @@ submodule ospf { leaf ipOspfAddr { - type cml_data_types:CML_IPV4_ADDR_T; config true; } // END of ipOspfAddr definition. leaf ifAuthTypeAddr { - type cml_data_types:CML_OSPF_AUTH_TYPE_T; default "simple"; config true; } // END of ifAuthTypeAddr definition. leaf ifAuthKeyEncryptionAddr { - type cml_data_types:CML_BOOL_T; config true; } // END of ifAuthKeyEncryptionAddr definition. leaf ifAuthKeyAddr { - type cml_data_types:CML_STRING_T; config true; } // END of ifAuthKeyAddr definition. leaf ifCostAddr { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3634,7 +3123,6 @@ submodule ospf { } // END of ifCostAddr definition. leaf ifDeadIntervalAddr { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3643,7 +3131,6 @@ submodule ospf { } // END of ifDeadIntervalAddr definition. leaf ifHelloIntervalAddr { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3652,13 +3139,11 @@ submodule ospf { } // END of ifHelloIntervalAddr definition. leaf isMtuIgnoreAddr { - type cml_data_types:CML_BOOL_T; config true; } // END of isMtuIgnoreAddr definition. leaf ifTransmitDelayAddr { - type cml_data_types:CML_UINT32_T { range "1..3600"; } @@ -3667,7 +3152,6 @@ submodule ospf { } // END of ifTransmitDelayAddr definition. leaf ifPriorityAddr { - type cml_data_types:CML_UINT8_T { range "0..255"; } @@ -3676,7 +3160,6 @@ submodule ospf { } // END of ifPriorityAddr definition. leaf ifRetransmitIntervalAddr { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3685,13 +3168,11 @@ submodule ospf { } // END of ifRetransmitIntervalAddr definition. leaf ifDatabaseFilterAddr { - type cml_data_types:CML_BOOL_T; config true; } // END of ifDatabaseFilterAddr definition. leaf ifResyncTimeoutAddr { - type cml_data_types:CML_UINT32_T { range "1..65535"; } @@ -3702,7 +3183,6 @@ submodule ospf { list ospfCryptKeyAddr { - description "ospfCryptKeyAddr"; @@ -3711,7 +3191,6 @@ submodule ospf { leaf msgDigestKeyIdAddr { - type cml_data_types:CML_UINT32_T { range "1..255"; } @@ -3719,13 +3198,13 @@ submodule ospf { } // END of msgDigestKeyIdAddr definition. leaf msgDigestKeyEncryptionAddr { - mandatory true; + mandatory true; type cml_data_types:CML_BOOL_T; config true; } // END of msgDigestKeyEncryptionAddr definition. leaf msgifAuthKeyAddr { - mandatory true; + mandatory true; type cml_data_types:CML_STRING_T; config true; } // END of msgifAuthKeyAddr definition. @@ -3739,7 +3218,6 @@ submodule ospf { grouping ospfGlobal-grouping { list ospfGlobal { - description "ospfGlobal"; @@ -3748,43 +3226,36 @@ submodule ospf { leaf vrId { - type cml_data_types:CML_UINT32_T; config true; } // END of vrId definition. leaf isEnableExtMultiInst { - type cml_data_types:CML_BOOL_T; config true; } // END of isEnableExtMultiInst definition. leaf debug { - type cml_data_types:CML_OSPF_DEBUG_T; config true; } // END of debug definition. leaf packetType { - type cml_data_types:CML_OSPF_DEBUG_PACKET_TYPE_T; config true; } // END of packetType definition. leaf debugMode { - type cml_data_types:CML_OSPF_DEBUG_PACKET_MODE_T; config true; } // END of debugMode definition. leaf debugDetail { - type cml_data_types:CML_BOOL_T; config true; } // END of debugDetail definition. leaf restartSeconds { - type cml_data_types:CML_INT32_T { range "1..1800"; } @@ -3793,7 +3264,6 @@ submodule ospf { } // END of restartSeconds definition. leaf hitlessRestartSeconds { - type cml_data_types:CML_INT32_T { range "1..1800"; } @@ -3802,83 +3272,70 @@ submodule ospf { } // END of hitlessRestartSeconds definition. leaf isDebug { - type cml_data_types:CML_BOOL_T; config true; } // END of isDebug definition. leaf isDebugPacket { - type cml_data_types:CML_BOOL_T; config true; } // END of isDebugPacket definition. leaf isCspfeventDebug { - type cml_data_types:CML_BOOL_T; config true; } // END of isCspfeventDebug definition. leaf isCspfhexdumpDebug { - type cml_data_types:CML_BOOL_T; config true; } // END of isCspfhexdumpDebug definition. leaf gracefulRestartPlanned { - type cml_data_types:CML_BOOL_T; config true; } // END of gracefulRestartPlanned definition. container restartConfig { - - config true; + config true; description "restartConfig"; leaf never { - type cml_data_types:CML_BOOL_T; config true; description "ospf hitless-restart helper"; } // END of never definition. leaf nbrRouterId { - type cml_data_types:CML_STRING_T; config true; } // END of nbrRouterId definition. leaf restartAll { - type cml_data_types:CML_BOOL_T; config true; } // END of restartAll definition. } // END of restartConfig-container definition. container restartAllConfig { - - config true; + config true; description "restartAllConfig"; leaf onlyReload { - type cml_data_types:CML_BOOL_T; config true; } // END of onlyReload definition. leaf onlyUpgrade { - type cml_data_types:CML_BOOL_T; config true; } // END of onlyUpgrade definition. leaf restartHelperPeriod { - type cml_data_types:CML_INT32_T { range "1..1800"; } @@ -3894,7 +3351,6 @@ submodule ospf { grouping teLinkOspf-grouping { list teLinkOspf { - description "teLinkOspf"; @@ -3903,20 +3359,17 @@ submodule ospf { leaf teLinkName { - type cml_data_types:CML_STRING_T; config true; } // END of teLinkName definition. leaf linkLocalEnable { - type cml_data_types:CML_OSPF_TELINK_LOCAL_T; config true; description "te-link"; } // END of linkLocalEnable definition. leaf teFloodOspfId { - type cml_data_types:CML_INT32_T { range "0..65535"; } @@ -3925,7 +3378,6 @@ submodule ospf { } // END of teFloodOspfId definition. leaf teFloodareaId { - type cml_data_types:CML_STRING_T; config true; description "Te Flood Ospf Id"; diff --git a/yang-files/ospfv3.yang b/yang-files/ospfv3.yang new file mode 100644 index 00000000..9bb017bb --- /dev/null +++ b/yang-files/ospfv3.yang @@ -0,0 +1,1560 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : ospfv3.yang +* +*/ + +submodule ospfv3 { + + belongs-to ZebOS { prefix ZebOS; } + include vr; + include interface; + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "Layer-3 OSPFv3 configurations"; + + + revision "2016-10-20" { + description "Modified according to backend structures."; + } + + + + grouping ospf6_master-grouping { + list ospf6_master { + + description + "OSPFv3 master for system wide configurations and variables."; + + config true; + key "vrId"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + config true; + } // END of vrId definition. + + leaf displaySingleLine { + type cml_data_types:CML_BOOL_T; + config true; + } // END of displaySingleLine definition. + + leaf gracePeriod { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_UINT16_T { + range "1..1800"; + } + config true; + } // END of gracePeriod definition. + + leaf restartPlannedOnly { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_BOOL_T; + config true; + } // END of restartPlannedOnly definition. + + + list ospf6 { + + description + "OSPFv3 datastructure is for system-wide configuration and variables."; + + config true; + key "ospf6ProcessTag"; + + + leaf ospf6ProcessTag { + type cml_data_types:CML_STRING_T; + config true; + } // END of ospf6ProcessTag definition. + + leaf vrfName { + if-feature feature_list:HAVE_VRF_OSPF6; + type cml_data_types:CML_STRING_T; + config true; + } // END of vrfName definition. + + leaf routerId { + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of routerId definition. + + leaf config_frr { + if-feature feature_list:HAVE_OSPF6_LFA; + type cml_data_types:CML_BOOL_T; + config true; + } // END of config_frr definition. + + leaf abrType { + type cml_data_types:CML_OSPF6_ABR_TYPE_T; + config true; + } // END of abrType definition. + + leaf teEnabled { + if-feature feature_list:HAVE_OSPF6_TE; + type cml_data_types:CML_BOOL_T; + config true; + } // END of teEnabled definition. + + leaf restartMethod { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_BOOL_T; + config true; + } // END of restartMethod definition. + + leaf dbSummaryOpt { + type cml_data_types:CML_BOOL_T; + config true; + } // END of dbSummaryOpt definition. + + leaf bfdEnabled { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_BOOL_T; + config true; + } // END of bfdEnabled definition. + + leaf floodReductionEnabled { + if-feature feature_list:HAVE_OSPF6_OD; + type cml_data_types:CML_BOOL_T; + config true; + } // END of floodReductionEnabled definition. + + leaf-list passiveIfName { + type cml_data_types:CML_STRING_T; + config true; + } // END of passiveIfName definition. + + leaf defaultMetric { + type cml_data_types:CML_UINT32_T { + range "1..16777214"; + } + config true; + } // END of defaultMetric definition. + + leaf minspfDelay { + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + config true; + } // END of minspfDelay definition. + + leaf maxspfDelay { + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + config true; + } // END of maxspfDelay definition. + + leaf minDelay { + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + config true; + } // END of minDelay definition. + + leaf maxDelay { + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + config true; + } // END of maxDelay definition. + + leaf refBandwidth { + type cml_data_types:CML_UINT32_T { + range "1..4294967"; + } + config true; + } // END of refBandwidth definition. + + leaf maxConcurrentDd { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + config true; + } // END of maxConcurrentDd definition. + + leaf maxUnusePacket { + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + config true; + } // END of maxUnusePacket definition. + + leaf maxUnuseLsa { + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + config true; + } // END of maxUnuseLsa definition. + + leaf distanceAll { + type cml_data_types:CML_UINT16_T { + range "1..254"; + } + config true; + } // END of distanceAll definition. + + leaf shutDown { + type cml_data_types:CML_BOOL_T; + config true; + } // END of shutDown definition. + + leaf logAdjChanges { + type cml_data_types:CML_BOOL_T; + config true; + } // END of logAdjChanges definition. + + leaf logAdjChangesDetail { + type cml_data_types:CML_BOOL_T; + config true; + } // END of logAdjChangesDetail definition. + + leaf processUpTime { + type cml_data_types:CML_STRING_T; + config false; + } // END of processUpTime definition. + + leaf ddCountIn { + type cml_data_types:CML_UINT16_T; + config false; + } // END of ddCountIn definition. + + leaf ddCountOut { + type cml_data_types:CML_UINT16_T; + config false; + } // END of ddCountOut definition. + + leaf extenalLSACount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of extenalLSACount definition. + + leaf lsdbChecksum { + type cml_data_types:CML_STRING_T; + config false; + } // END of lsdbChecksum definition. + + leaf unknownLSACount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of unknownLSACount definition. + + leaf lSASelfCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lSASelfCount definition. + + leaf lSARxCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lSARxCount definition. + + leaf areaCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of areaCount definition. + + leaf isDsteEnabled { + type cml_data_types:CML_BOOL_T; + config false; + } // END of isDsteEnabled definition. + + + list frr_pref { + + description + "Keeps user preferences, lower index in the array is higher priority"; + + config true; + key "frrPrefIndex"; + + + leaf frrPrefIndex { + type cml_data_types:CML_UINT32_T { + range "1..4"; + } + config true; + } // END of frrPrefIndex definition. + + leaf frrPrefVal { + mandatory true; + type cml_data_types:CML_OSPF_FRR_TIE_BREAK_VAL_T; + config true; + } // END of frrPrefVal definition. + + } // End of frr_pref-list + + list area_table { + + description + "OSPFv3 area structure."; + + config true; + key "areaId"; + + + leaf areaId { + type cml_data_types:CML_AREA_T; + config true; + } // END of areaId definition. + + leaf areaDefaultCost { + type cml_data_types:CML_UINT32_T { + range "0..16777215"; + } + config true; + } // END of areaDefaultCost definition. + + leaf isAreaBackbone { + type cml_data_types:CML_BOOL_T; + config false; + } // END of isAreaBackbone definition. + + leaf isAreaActive { + type cml_data_types:CML_BOOL_T; + config false; + } // END of isAreaActive definition. + + leaf activeIfCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of activeIfCount definition. + + leaf areaIfCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of areaIfCount definition. + + leaf spfCalcCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of spfCalcCount definition. + + leaf lsaCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lsaCount definition. + + leaf lsdbChecksum { + type cml_data_types:CML_STRING_T; + config false; + } // END of lsdbChecksum definition. + + leaf unknownLSACount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of unknownLSACount definition. + + leaf isAreaAsbr { + type cml_data_types:CML_BOOL_T; + config false; + } // END of isAreaAsbr definition. + + + list ospf6Vertex { + + description + "Shortest Path Tree/ABR table."; + + config false; + key "vertexlinkId"; + + + leaf vertexlinkId { + type cml_data_types:CML_STRING_T; + config false; + } // END of vertexlinkId definition. + + leaf vertexDistance { + type cml_data_types:CML_UINT32_T; + config false; + } // END of vertexDistance definition. + + uses ospf6NextHop; + } // End of ospf6Vertex-list + + list areaRangeIPv6 { + + description + "OSPFv3 Intra-area IPv4 routes"; + + config true; + key "rangeAddr"; + + + leaf rangeAddr { + type cml_data_types:CML_IPV6_PREFIX_T; + config true; + } // END of rangeAddr definition. + + leaf rangeStatus { + type cml_data_types:CML_OSPF6_AREA_RANGE_T; + config true; + } // END of rangeStatus definition. + + } // End of areaRangeIPv6-list + + list areaVirtualLink { + + description + "OSPFv3 Area Virtual-link"; + + config true; + key "peerId"; + + + leaf peerId { + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of peerId definition. + + leaf helloInterval { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + config true; + } // END of helloInterval definition. + + leaf deadInterval { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + config true; + } // END of deadInterval definition. + + leaf retransmitInterval { + type cml_data_types:CML_UINT32_T { + range "1..1800"; + } + config true; + } // END of retransmitInterval definition. + + leaf transmitDelay { + type cml_data_types:CML_UINT32_T { + range "1..1800"; + } + config true; + } // END of transmitDelay definition. + + leaf fallOverBfd { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_BOOL_T; + config true; + } // END of fallOverBfd definition. + + leaf instanceId { + type cml_data_types:CML_UINT32_T { + range "0..31 | 64..95"; + } + config true; + } // END of instanceId definition. + + leaf vlinkName { + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkName definition. + + leaf vlinkInterfaceName { + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkInterfaceName definition. + + leaf vlinkInstanceId { + type cml_data_types:CML_UINT32_T; + config false; + } // END of vlinkInstanceId definition. + + leaf vlinkisHelloSupEnabled { + type cml_data_types:CML_BOOL_T; + config false; + } // END of vlinkisHelloSupEnabled definition. + + leaf vlinkIsDNAEnabled { + type cml_data_types:CML_BOOL_T; + config false; + } // END of vlinkIsDNAEnabled definition. + + leaf vlinkLocalAddress { + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkLocalAddress definition. + + leaf vlinkRemoteAddress { + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkRemoteAddress definition. + + leaf vlinkState { + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkState definition. + + leaf vlinkHelloDueTime { + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkHelloDueTime definition. + + leaf vlinkAdjacencyState { + type cml_data_types:CML_STRING_T; + config false; + } // END of vlinkAdjacencyState definition. + + uses lsdb; + } // End of areaVirtualLink-list + container area_table_stub { + config true; + + description + "OSPFv3 area structure."; + + leaf isAreaStub { + type cml_data_types:CML_BOOL_T; + config true; + } // END of isAreaStub definition. + + leaf isAreaStubNoSummary { + type cml_data_types:CML_BOOL_T; + config true; + } // END of isAreaStubNoSummary definition. + + leaf isAreaNssa { + if-feature feature_list:HAVE_NSSA; + type cml_data_types:CML_BOOL_T; + config true; + } // END of isAreaNssa definition. + + leaf translator-role { + type cml_data_types:CML_OSPF6_TRANSLATOR_ROLE_T; + config true; + } // END of translator-role definition. + + leaf stability-interval { + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + config true; + } // END of stability-interval definition. + + leaf no-redistribution { + type cml_data_types:CML_BOOL_T; + config true; + } // END of no-redistribution definition. + + leaf isAreaNoSummary { + type cml_data_types:CML_BOOL_T; + config true; + } // END of isAreaNoSummary definition. + + leaf translatorRole { + type cml_data_types:CML_OSPF6_NSSA_TRANSLATOR_ROLE_T; + config true; + } // END of translatorRole definition. + + leaf nssadefaultInformationOriginate { + type cml_data_types:CML_BOOL_T; + config true; + } // END of nssadefaultInformationOriginate definition. + + leaf nssaMetric { + type cml_data_types:CML_UINT32_T { + range "0..16777214"; + } + config true; + } // END of nssaMetric definition. + + leaf nssaMetricType { + type cml_data_types:CML_OSPF_METRIC_TYPE_T; + config true; + } // END of nssaMetricType definition. + + leaf nssarouteMap { + type cml_data_types:CML_STRING_T; + config true; + } // END of nssarouteMap definition. + + } // END of area_table_stub-container definition. + uses lsdb; + } // End of area_table-list + + list addressFamily { + + description + " OSPFv3 Address Family."; + + config true; + key "isAddrFamily"; + + + leaf isAddrFamily { + type cml_data_types:CML_BOOL_T; + config true; + } // END of isAddrFamily definition. + + + list area_table { + + description + "OSPFv3 area structure."; + + config true; + key "areaId"; + + + leaf areaId { + type cml_data_types:CML_AREA_T; + config true; + } // END of areaId definition. + + + list areaRangeIPv4 { + + description + "Area Range IPv4 address list"; + + config true; + key "rangeAddrIPV4"; + + + leaf rangeAddrIPV4 { + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of rangeAddrIPV4 definition. + + leaf rangeStatusIPv4 { + type cml_data_types:CML_OSPF6_AREA_RANGE_T; + config true; + } // END of rangeStatusIPv4 definition. + + } // End of areaRangeIPv4-list + } // End of area_table-list + + list summaryAddressIpv4 { + + description + "OSPFv3 IPv4 Summary Address list"; + + config true; + key "summaryIpv4Addr"; + + + leaf summaryIpv4Addr { + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of summaryIpv4Addr definition. + + leaf setTag { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + } // END of setTag definition. + + leaf not-advertise { + type cml_data_types:CML_BOOL_T; + config true; + } // END of not-advertise definition. + + } // End of summaryAddressIpv4-list + uses redistribute; + uses default-information-originate; + } // End of addressFamily-list + + list distributeList { + + description + "Distribute list for OSPFv3 Protocol"; + + config true; + key "accessListName"; + + + leaf accessListName { + type cml_data_types:CML_STRING_T; + config true; + } // END of accessListName definition. + + leaf ospf6DistIn { + type cml_data_types:CML_BOOL_T; + config true; + } // END of ospf6DistIn definition. + + + list distributeListProtocol { + + description + "Distribute list for OSPFv3 Protocol"; + + config true; + key "ospf6distProtocol"; + + + leaf ospf6distProtocol { + type cml_data_types:CML_OSPF6_ROUTE_SOURCE_TYPE_T; + config true; + } // END of ospf6distProtocol definition. + + } // End of distributeListProtocol-list + + list distributeListOspf { + + description + "Distribute list for OSPFv3 Protocol"; + + config true; + key "ospf6distOspfProtocol"; + + + leaf ospf6distOspfProtocol { + type cml_data_types:CML_OSPF_AREA_ID_T; + config true; + } // END of ospf6distOspfProtocol definition. + + } // End of distributeListOspf-list + } // End of distributeList-list + + list summaryAddressIpv6 { + + description + "OSPFv3 IPv6 Summary Address"; + + config true; + key "summaryIpv6Addr"; + + + leaf summaryIpv6Addr { + type cml_data_types:CML_IPV6_PREFIX_T; + config true; + } // END of summaryIpv6Addr definition. + + leaf all-tag { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + } // END of all-tag definition. + + leaf not-advertise6 { + type cml_data_types:CML_BOOL_T; + config true; + } // END of not-advertise6 definition. + + leaf translate-tag { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + } // END of translate-tag definition. + + } // End of summaryAddressIpv6-list + container cspf { + config true; + + description + "Constrained Shortest Path First (CSPF) Instance"; + + leaf cspfEnabled { + if-feature feature_list:HAVE_OSPF6_CSPF; + type cml_data_types:CML_BOOL_T; + config true; + } // END of cspfEnabled definition. + + leaf cspfTieBreak { + if-feature feature_list:HAVE_OSPF6_CSPF; + type cml_data_types:CML_OSPF6_CSPF_TYPE_T; + config true; + } // END of cspfTieBreak definition. + + leaf cspfDefRetryInterval { + if-feature feature_list:HAVE_OSPF6_CSPF; + type cml_data_types:CML_UINT16_T { + range "1..3600"; + } + config true; + } // END of cspfDefRetryInterval definition. + + } // END of cspf-container definition. + container distance { + config true; + + description + "Define an administrative distance"; + + leaf distanceIntra { + type cml_data_types:CML_UINT32_T { + range "1..254"; + } + config true; + } // END of distanceIntra definition. + + leaf distanceInter { + type cml_data_types:CML_UINT32_T { + range "1..254"; + } + config true; + } // END of distanceInter definition. + + leaf distanceExternal { + type cml_data_types:CML_UINT32_T { + range "1..254"; + } + config true; + } // END of distanceExternal definition. + + } // END of distance-container definition. + uses redistribute; + uses default-information-originate; + uses lsdb; + } // End of ospf6-list + + list ospf6Interface { + + description + "OSPFv3 interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T; + config true; + } // END of ifName definition. + + leaf ifShutDown { + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifShutDown definition. + + + list ospf6IfinstanceId { + + description + "OSPFv3 instanceId of interface related operations"; + + config true; + key "instanceId6"; + + + leaf instanceId6 { + type cml_data_types:CML_INT32_T { + range "0..31 | 64..95"; + } + config true; + } // END of instanceId6 definition. + + leaf networkType { + type cml_data_types:CML_OSPF6_NETWORK_T; + config true; + } // END of networkType definition. + + leaf cost { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + config true; + } // END of cost definition. + + leaf teMetric { + if-feature feature_list:HAVE_OSPF6_TE; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + config true; + } // END of teMetric definition. + + leaf ifHelloInterval { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + config true; + } // END of ifHelloInterval definition. + + leaf ifDeadInterval { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + config true; + } // END of ifDeadInterval definition. + + leaf ifRetransmitInterval { + type cml_data_types:CML_UINT32_T { + range "1..1800"; + } + config true; + } // END of ifRetransmitInterval definition. + + leaf ifPriority { + type cml_data_types:CML_UINT8_T { + range "0..255"; + } + config true; + } // END of ifPriority definition. + + leaf ifTransmitDelay { + type cml_data_types:CML_UINT32_T { + range "1..1800"; + } + config true; + } // END of ifTransmitDelay definition. + + leaf ifMtuIgnore { + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifMtuIgnore definition. + + leaf ifDemandCircuit { + if-feature feature_list:HAVE_OSPF6_OD; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifDemandCircuit definition. + + leaf ifFloodReduction { + if-feature feature_list:HAVE_OSPF6_OD; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifFloodReduction definition. + + leaf ifFrrDisable { + if-feature feature_list:HAVE_OSPF6_LFA; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifFrrDisable definition. + + leaf ifAreaId { + type cml_data_types:CML_AREA_T; + config true; + } // END of ifAreaId definition. + + leaf ifTagId { + type cml_data_types:CML_STRING_T; + config true; + } // END of ifTagId definition. + + leaf ifLinkLsaSuppression { + type cml_data_types:CML_OSPF6_LSA_SUPRESSION_STATE_T; + config true; + } // END of ifLinkLsaSuppression definition. + + leaf ifBfdEnable { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_BOOL_T; + config true; + } // END of ifBfdEnable definition. + + + list nbrStatic { + + description + "Static neighbor data structure."; + + config true; + key "nbrStaticAddr"; + + + leaf nbrStaticAddr { + type cml_data_types:CML_IPV6_ADDR_T; + config true; + } // END of nbrStaticAddr definition. + + leaf nbrStaticPollInterval { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + } // END of nbrStaticPollInterval definition. + + leaf nbrStaticCost { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + config true; + } // END of nbrStaticCost definition. + + leaf nbrStaticPriority { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + config true; + } // END of nbrStaticPriority definition. + + leaf nbrInterfaceState { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrInterfaceState definition. + + leaf nbrInterfaceDesc { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrInterfaceDesc definition. + + } // End of nbrStatic-list + + list ospf6_neighbor { + + description + "Neighbor Data Structure"; + + config false; + key "nbrRouterId"; + + + leaf nbrRouterId { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrRouterId definition. + + leaf nbrInterfaceAddress { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrInterfaceAddress definition. + + leaf nbrAreaId { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrAreaId definition. + + leaf nbrTimerDump { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrTimerDump definition. + + leaf nbrState { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrState definition. + + leaf nbrStateMessage { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrStateMessage definition. + + leaf nbrStateChange { + type cml_data_types:CML_UINT32_T; + config false; + } // END of nbrStateChange definition. + + leaf nbrPriority { + type cml_data_types:CML_UINT8_T; + config false; + } // END of nbrPriority definition. + + leaf nbrisHelloSuppressed { + type cml_data_types:CML_BOOL_T; + config false; + } // END of nbrisHelloSuppressed definition. + + leaf nbrDRouter { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrDRouter definition. + + leaf nbrBDRouter { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrBDRouter definition. + + leaf nbrOptions { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrOptions definition. + + leaf nbrDeadTimer { + type cml_data_types:CML_STRING_T; + config false; + } // END of nbrDeadTimer definition. + + leaf nbrDbSummaryCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of nbrDbSummaryCount definition. + + leaf nbrLsRequestCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of nbrLsRequestCount definition. + + leaf nbrLsRetransmissionCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of nbrLsRetransmissionCount definition. + + leaf nbrBfdEnabled { + type cml_data_types:CML_BOOL_T; + config false; + } // END of nbrBfdEnabled definition. + + container asbr { + config false; + + description + "ASBR routing table."; + + uses Route; + } // END of asbr-container definition. + uses Route; + } // End of ospf6_neighbor-list + uses lsdb; + } // End of ospf6IfinstanceId-list + } // End of ospf6Interface-list + container ospf6Helper { + config true; + + description + "OSPFv3 Restart module properties"; + + uses helper; + } // END of ospf6Helper-container definition. + container ospf6HitlessRestartHelper { + config true; + + description + "OSPFv3 Restart module properties"; + + uses helper; + } // END of ospf6HitlessRestartHelper-container definition. + container ospf6Debug { + config true; + + description + "OSPFv3 Debug Configurations"; + + leaf debugIfsm { + type cml_data_types:CML_OSPF6_DEBUG_IFSM_T; + default "status"; + config true; + } // END of debugIfsm definition. + + leaf debugNfsm { + type cml_data_types:CML_OSPF6_DEBUG_IFSM_T; + default "status"; + config true; + } // END of debugNfsm definition. + + leaf debugLsa { + type cml_data_types:CML_OSPF6_DEBUG_LSA_T; + default "generate"; + config true; + } // END of debugLsa definition. + + leaf debugNsm { + type cml_data_types:CML_OSPF6_DEBUG_RIB_T; + default "interface"; + config true; + } // END of debugNsm definition. + + leaf debugRib { + if-feature feature_list:HAVE_RIBD; + type cml_data_types:CML_OSPF6_DEBUG_RIB_T; + default "interface"; + config true; + } // END of debugRib definition. + + leaf debugRoute { + type cml_data_types:CML_OSPF6_DEBUG_ROUTE_T; + default "spf"; + config true; + } // END of debugRoute definition. + + leaf debugRetransmission { + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of debugRetransmission definition. + + leaf debugBfd { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_BOOL_T; + config true; + } // END of debugBfd definition. + + leaf debugAll { + type cml_data_types:CML_BOOL_T; + config true; + } // END of debugAll definition. + + leaf debugEvent { + type cml_data_types:CML_OSPF6_DEBUG_EVENT_T; + default "abr"; + config true; + } // END of debugEvent definition. + + leaf debugPacket { + type cml_data_types:CML_OSPF6_DEBUG_PACKET_TYPE_T; + config true; + } // END of debugPacket definition. + + leaf debugLfa { + if-feature feature_list:HAVE_OSPF6_LFA; + type cml_data_types:CML_BOOL_T; + default false; + config true; + } // END of debugLfa definition. + + } // END of ospf6Debug-container definition. + } // End of ospf6_master-list + } // END of ospf6_master-grouping definition. + grouping lsdb { + leaf lsdbIfName { + type cml_data_types:CML_STRING_T; + config false; + } // END of lsdbIfName definition. + + leaf lsdbAreaId { + type cml_data_types:CML_STRING_T; + config false; + } // END of lsdbAreaId definition. + + + list lsdbSlot { + + description + "LSDB of AS-external-LSAs."; + + config false; + key "lsdbSlotType"; + + + leaf lsdbSlotType { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lsdbSlotType definition. + + + list lsa { + + description + "OSPFv3 Link State Advertisement (LSA) list"; + + config false; + key "lsaLinkId"; + + + leaf lsaLinkId { + type cml_data_types:CML_STRING_T; + config false; + } // END of lsaLinkId definition. + + leaf lsaAge { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lsaAge definition. + + leaf lsaType { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lsaType definition. + + leaf lsaLength { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lsaLength definition. + + leaf lsaAdvRouter { + type cml_data_types:CML_STRING_T; + config false; + } // END of lsaAdvRouter definition. + + leaf lsaSeqNum { + type cml_data_types:CML_STRING_T; + config false; + } // END of lsaSeqNum definition. + + leaf lsaCheckSum { + type cml_data_types:CML_STRING_T; + config false; + } // END of lsaCheckSum definition. + + leaf isLsaInterRouter { + type cml_data_types:CML_BOOL_T; + config false; + } // END of isLsaInterRouter definition. + + leaf lsaRouterLinkCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lsaRouterLinkCount definition. + + leaf lsaRefTypeStr { + type cml_data_types:CML_STRING_T; + config false; + } // END of lsaRefTypeStr definition. + + } // End of lsa-list + } // End of lsdbSlot-list + } // END of lsdb definition. + grouping Route { + + list ospf6Route { + + description + "OSPFv3 Route"; + + config false; + key "routeIPV6Prefix"; + + + leaf routeIPV6Prefix { + type cml_data_types:CML_STRING_T; + config false; + } // END of routeIPV6Prefix definition. + + leaf routeDistance { + type cml_data_types:CML_UINT8_T; + config false; + } // END of routeDistance definition. + + container ospf6Path { + config false; + + description + "OSPFv3 path details for different routes"; + + leaf pathType { + type cml_data_types:CML_UINT32_T; + config false; + } // END of pathType definition. + + leaf pathCode { + type cml_data_types:CML_STRING_T; + config false; + } // END of pathCode definition. + + leaf pathCost { + type cml_data_types:CML_UINT32_T; + config false; + } // END of pathCost definition. + + leaf pathType2Cost { + type cml_data_types:CML_UINT32_T; + config false; + } // END of pathType2Cost definition. + + leaf pathFlags { + type cml_data_types:CML_UINT8_T; + config false; + } // END of pathFlags definition. + + } // END of ospf6Path-container definition. + uses ospf6NextHop; + } // End of ospf6Route-list + } // END of Route definition. + grouping ospf6NextHop { + + list nextHop { + + description + "OSPFv3 next hop details"; + + config false; + key "nextHopAddr"; + + + leaf nextHopAddr { + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHopAddr definition. + + leaf nextHopInterfaceName { + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHopInterfaceName definition. + + leaf nextHopTransitAreaId { + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHopTransitAreaId definition. + + leaf nextHopAreaId { + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHopAreaId definition. + + leaf isNextHopConnected { + type cml_data_types:CML_BOOL_T; + config false; + } // END of isNextHopConnected definition. + + leaf nextHopIsAreaTransit { + type cml_data_types:CML_BOOL_T; + config false; + } // END of nextHopIsAreaTransit definition. + + leaf IsnextHopInvalid { + type cml_data_types:CML_BOOL_T; + config false; + } // END of IsnextHopInvalid definition. + + leaf nextHopCode { + type cml_data_types:CML_STRING_T; + config false; + } // END of nextHopCode definition. + + } // End of nextHop-list + } // END of ospf6NextHop definition. + grouping helper { + leaf restartHelperOnlyReload { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_BOOL_T; + config true; + } // END of restartHelperOnlyReload definition. + + leaf restartHelperOnlyGracePeriod { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_UINT16_T { + range "1..1800"; + } + config true; + } // END of restartHelperOnlyGracePeriod definition. + + leaf restartHelperOnlyUpgrade { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_BOOL_T; + config true; + } // END of restartHelperOnlyUpgrade definition. + + leaf-list restartHelperRouterId { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_STRING_T; + config true; + } // END of restartHelperRouterId definition. + + } // END of helper definition. + grouping default-information-originate { + + list default-information { + + description + "Default external route Information"; + + config true; + key "defaultInformationOriginate"; + + + leaf defaultInformationOriginate { + type cml_data_types:CML_BOOL_T; + config true; + } // END of defaultInformationOriginate definition. + + container default-information-always { + config true; + + description + "Default external route Information Always"; + + leaf alwaysSet { + type cml_data_types:CML_BOOL_T; + config true; + } // END of alwaysSet definition. + + uses metric-group; + } // END of default-information-always-container definition. + } // End of default-information-list + } // END of default-information-originate definition. + grouping redistribute { + + list ospf6_redist_conf { + + description + "Redistribute IPv4 routes "; + + config true; + key "ospf6RedistProtocol"; + + + leaf ospf6RedistProtocol { + type cml_data_types:CML_OSPF6_ROUTE_SOURCE_TYPE_T; + config true; + } // END of ospf6RedistProtocol definition. + + container redistribute-tag { + config true; + + description + "Redistribute IPv4 routes tag options"; + + leaf ospf6RedistTagVal { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + config true; + } // END of ospf6RedistTagVal definition. + + uses metric-group; + } // END of redistribute-tag-container definition. + } // End of ospf6_redist_conf-list + + list ospf6_redist_ospf { + + description + "Redistribute IPv4 routes for OSPF option"; + + config true; + key "ospf6RedistOspfProtocol"; + + + leaf ospf6RedistOspfProtocol { + type cml_data_types:CML_OSPF_AREA_ID_T; + config true; + } // END of ospf6RedistOspfProtocol definition. + + container redistribute-tag { + config true; + + description + "Redistribute IPv4 routes for OSPF tag option"; + + leaf ospf6RedistOspfTagVal { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + config true; + } // END of ospf6RedistOspfTagVal definition. + + uses metric-group; + } // END of redistribute-tag-container definition. + } // End of ospf6_redist_ospf-list + } // END of redistribute definition. + grouping metric-group { + leaf metric { + type cml_data_types:CML_UINT32_T { + range "0..16777214"; + } + config true; + } // END of metric definition. + + leaf metricType { + type cml_data_types:CML_OSPF_METRIC_TYPE_T; + config true; + } // END of metricType definition. + + leaf routeMap { + type cml_data_types:CML_STRING_T; + config true; + } // END of routeMap definition. + + } // END of metric-group definition. + + +} \ No newline at end of file diff --git a/yang-files/rib.yang b/yang-files/rib.yang index 74191c70..49b90b60 100644 --- a/yang-files/rib.yang +++ b/yang-files/rib.yang @@ -16,323 +16,895 @@ submodule rib { belongs-to ZebOS { prefix ZebOS; } + include interface; include vrf; + include vr; import cml_data_types { prefix cml_data_types; } + import feature_list { + prefix feature_list; + } + + revision "2016-09-15" { - description "Revisied on 2016-09-15."; } + description "Revisied on 2016-09-15."; + } grouping rib-grouping { list rib { - description - "static route with ifname"; + "rib"; config true; - key "ipv4DestinationPrefixAddr"; + key "vrId"; leaf vrId { - mandatory true; - type cml_data_types:CML_INT32_T; + type cml_data_types:CML_UINT32_T; config true; } // END of vrId definition. - leaf ipv4DestinationPrefixAddr { - - type cml_data_types:CML_STRING_T; + leaf fibRetain { + type cml_data_types:CML_BOOL_T; config true; - } // END of ipv4DestinationPrefixAddr definition. + } // END of fibRetain definition. + leaf multipathNum { + type cml_data_types:CML_UINT8_T { + range "1..64"; + } + default "1"; + config true; + } // END of multipathNum definition. - list ribGateway { - + leaf maxStaticRoutes { + type cml_data_types:CML_UINT32_T { + range "1..4294967294"; + } + default "4294967294"; + config true; + } // END of maxStaticRoutes definition. + + leaf maxFibRoutes { + type cml_data_types:CML_UINT32_T { + range "1..16384"; + } + config true; + } // END of maxFibRoutes definition. + leaf debugType { + type cml_data_types:CML_RIB_DEBUG_TYPE_T; + default "all"; + config true; + } // END of debugType definition. + + leaf debugIpv6 { + type cml_data_types:CML_RIB_DEBUG_IPV6_TYPE_T; + config true; + } // END of debugIpv6 definition. + + leaf unDebug { + type cml_data_types:CML_RIB_DEBUG_TYPE_T; + default "all"; + config true; + } // END of unDebug definition. + + + list ribIpv4 { + description - "static route with gateway"; + "ribIpv4"; config true; - key "ipGatewayStr"; + key "destPrefix"; - leaf ipGatewayStr { - - type cml_data_types:CML_STRING_T; + leaf destPrefix { + type cml_data_types:CML_IPV4_PREFIX_T; config true; - } // END of ipGatewayStr definition. + } // END of destPrefix definition. - leaf distanceValue { - mandatory true; - type cml_data_types:CML_INT32_T { - range "1..255"; - } - config true; - } // END of distanceValue definition. - leaf tagValue { - mandatory true; - type cml_data_types:CML_UINT32_T { - range "1..4294967295"; - } + list ribIpv4Mask { + + description + "ribIpv4Mask"; + config true; - } // END of tagValue definition. + key "destAddrMask"; + + + leaf destAddrMask { + type cml_data_types:CML_INT32_T; + config true; + } // END of destAddrMask definition. + + + list ribStaticGwAddr { + + description + "ribStaticGwAddr"; + + config true; + key "gwAddr"; + + + leaf gwAddr { + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of gwAddr definition. + + leaf ribStaticBfd { + type cml_data_types:CML_BOOL_T; + config true; + } // END of ribStaticBfd definition. + + leaf ribStaticBfdDisable { + type cml_data_types:CML_BOOL_T; + config true; + } // END of ribStaticBfdDisable definition. + + container ribAttr { + config true; + + description + "ribAttr"; + + uses ribAttr; + } // END of ribAttr-container definition. + } // End of ribStaticGwAddr-list + + list ribStaticIfName { + + description + "ribStaticIfName"; + + config true; + key "gwIfName"; + + + leaf gwIfName { + type cml_data_types:CML_STRING_T; + config true; + } // END of gwIfName definition. + + uses ribAttr; + } // End of ribStaticIfName-list + } // End of ribIpv4Mask-list + + list ribRuntime { + + description + "ribRuntime"; + + config false; + key "type"; + + + leaf type { + type cml_data_types:CML_STRING_T; + config false; + } // END of type definition. + + uses ribRuntimeGrp; + } // End of ribRuntime-list + } // End of ribIpv4-list + + list ribIpv4Vrf { + + description + "ribIpv4Vrf"; + + config true; + key "vrfName"; - leaf staticRouteDescription { - mandatory true; + + leaf vrfName { type cml_data_types:CML_STRING_T; config true; - } // END of staticRouteDescription definition. + } // END of vrfName definition. - } // End of ribGateway-list - list ribGatewayIfname { - + list vrfDestPrefix { + + description + "vrfDestPrefix"; + + config true; + key "destVrfPrefix"; + + leaf destVrfPrefix { + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of destVrfPrefix definition. + + + list vrfIfName { + + description + "vrfIfName"; + + config true; + key "gwVrfIfName"; + + + leaf gwVrfIfName { + type cml_data_types:CML_STRING_T; + config true; + } // END of gwVrfIfName definition. + + uses ribAttr; + } // End of vrfIfName-list + + list vrfGwAddr { + + description + "vrfGwAddr"; + + config true; + key "vrfGwAddr"; + + + leaf vrfGwAddr { + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of vrfGwAddr definition. + + + list vrfGwAddrIfName { + + description + "vrfGwAddrIfName"; + + config true; + key "gwVrfIfNameAddr"; + + + leaf gwVrfIfNameAddr { + type cml_data_types:CML_STRING_T; + config true; + } // END of gwVrfIfNameAddr definition. + + uses ribAttr; + } // End of vrfGwAddrIfName-list + } // End of vrfGwAddr-list + + list ribRuntime { + + description + "ribRuntime"; + + config false; + key "type"; + + + leaf type { + type cml_data_types:CML_STRING_T; + config false; + } // END of type definition. + + uses ribRuntimeGrp; + } // End of ribRuntime-list + } // End of vrfDestPrefix-list + container ribIpv4VrfAfi { + config false; + + description + "ribIpv4VrfAfi"; + + uses ribVrfAfiGrp; + } // END of ribIpv4VrfAfi-container definition. + } // End of ribIpv4Vrf-list + + list ribIpv6 { + description - "static route with gateway and ifname"; + "ribIpv6"; config true; - key "ifName"; + key "ipv6DestPrefix"; - leaf ifName { - - type cml_data_types:CML_STRING_T; + leaf ipv6DestPrefix { + type cml_data_types:CML_IPV6_PREFIX_T; config true; - } // END of ifName definition. + } // END of ipv6DestPrefix definition. + + + list ribIpv6GwAddr { + + description + "ribIpv6GwAddr"; - leaf ifdistanceValue { - mandatory true; - type cml_data_types:CML_INT32_T { - range "1..255"; - } config true; - } // END of ifdistanceValue definition. + key "ipv6GwAddr"; + + + leaf ipv6GwAddr { + type cml_data_types:CML_IPV6_ADDR_T; + config true; + } // END of ipv6GwAddr definition. + + leaf ipv6DistVal { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + default "1"; + config true; + } // END of ipv6DistVal definition. + + leaf ribIpv6StaticBfd { + type cml_data_types:CML_BOOL_T; + config true; + } // END of ribIpv6StaticBfd definition. + + leaf ribIpv6StaticBfdDisable { + type cml_data_types:CML_BOOL_T; + config true; + } // END of ribIpv6StaticBfdDisable definition. + + } // End of ribIpv6GwAddr-list + + list ribIpv6GwIfName { + + description + "ribIpv6GwIfName"; - leaf iftagValue { - mandatory true; - type cml_data_types:CML_UINT32_T { - range "1..4294967295"; - } config true; - } // END of iftagValue definition. + key "ipv6GwIfName"; + + + leaf ipv6GwIfName { + type cml_data_types:CML_STRING_T; + config true; + } // END of ipv6GwIfName definition. + + leaf ipv6DistVal { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + default "1"; + config true; + } // END of ipv6DistVal definition. + + } // End of ribIpv6GwIfName-list + + list ribIpv6GwAddrIfName { + + description + "ribIpv6GwAddrIfName"; - leaf ifstaticRouteDescription { - mandatory true; - type cml_data_types:CML_STRING_T; config true; - } // END of ifstaticRouteDescription definition. + key "ipv6GateWayAddr"; - } // End of ribGatewayIfname-list - } // End of rib-list - } // END of rib-grouping definition. + + leaf ipv6GateWayAddr { + type cml_data_types:CML_IPV6_ADDR_T; + config true; + } // END of ipv6GateWayAddr definition. - grouping ribipv6-grouping { - list ribipv6 { - + list ribIpv6GwIfName { + + description + "ribIpv6GwIfName"; - description - "ribipv6"; + config true; + key "ipv6GateWayIfName"; - config true; - key "ipv6DestinationPrefixAddr"; + + leaf ipv6GateWayIfName { + type cml_data_types:CML_STRING_T; + config true; + } // END of ipv6GateWayIfName definition. - - leaf vrId { - mandatory true; - type cml_data_types:CML_INT32_T; - config true; - } // END of vrId definition. + leaf distValgwAddr { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + default "1"; + config true; + } // END of distValgwAddr definition. - leaf ipv6DestinationPrefixAddr { - - type cml_data_types:CML_STRING_T; - config true; - } // END of ipv6DestinationPrefixAddr definition. + } // End of ribIpv6GwIfName-list + } // End of ribIpv6GwAddrIfName-list + list ribRuntime { + + description + "ribRuntime"; - list ribipv6Gateway { - + config false; + key "type"; + + + leaf type { + type cml_data_types:CML_STRING_T; + config false; + } // END of type definition. + uses ribRuntimeGrp; + } // End of ribRuntime-list + } // End of ribIpv6-list + + list ribIpv6Vrf { + description - "ribipv6Gateway"; + "ribIpv6Vrf"; config true; - key "ipv6GatewayStr"; + key "vrfName"; - leaf ipv6GatewayStr { - + leaf vrfName { type cml_data_types:CML_STRING_T; config true; - } // END of ipv6GatewayStr definition. + } // END of vrfName definition. + + + list vrfDestPrefix { + + description + "vrfDestPrefix"; - leaf distance { - mandatory true; - type cml_data_types:CML_INT32_T { - range "1..255"; - } config true; - } // END of distance definition. + key "ipv6VrfDestPrefix"; - } // End of ribipv6Gateway-list + + leaf ipv6VrfDestPrefix { + type cml_data_types:CML_IPV6_PREFIX_T; + config true; + } // END of ipv6VrfDestPrefix definition. - list ribipv6Ifname { - - description - "ribipv6Ifname"; + list vrfIpv6GwAddr { + + description + "vrfIpv6GwAddr"; - config true; - key "ifName"; + config true; + key "ipv6VrfGwAddr"; - - leaf ifName { - - type cml_data_types:CML_STRING_T; - config true; - } // END of ifName definition. + + leaf ipv6VrfGwAddr { + type cml_data_types:CML_IPV6_ADDR_T; + config true; + } // END of ipv6VrfGwAddr definition. - leaf distance { - mandatory true; - type cml_data_types:CML_INT32_T { - range "1..255"; - } - config true; - } // END of distance definition. - } // End of ribipv6Ifname-list - } // End of ribipv6-list - } // END of ribipv6-grouping definition. + list vrfGwAddrIfName { + + description + "vrfGwAddrIfName"; + config true; + key "ipv6VrfgwIfName"; - grouping mroute-grouping { - list mroute { - + + leaf ipv6VrfgwIfName { + type cml_data_types:CML_STRING_T; + config true; + } // END of ipv6VrfgwIfName definition. - description - "mroute"; + } // End of vrfGwAddrIfName-list + } // End of vrfIpv6GwAddr-list - config true; - key "vrfName"; + list ribRuntime { + + description + "ribRuntime"; - - leaf vrId { - mandatory true; - type cml_data_types:CML_INT32_T; - config true; - } // END of vrId definition. + config false; + key "type"; - leaf vrfName { - - type cml_data_types:CML_STRING_T; - config true; - } // END of vrfName definition. + + leaf type { + type cml_data_types:CML_STRING_T; + config false; + } // END of type definition. - leaf mrouteIfIndex { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of mrouteIfIndex definition. + uses ribRuntimeGrp; + } // End of ribRuntime-list + } // End of vrfDestPrefix-list + container ribIpv6VrfAfi { + config false; + description + "ribIpv6VrfAfi"; - list mroutePrefix { - + uses ribVrfAfiGrp; + } // END of ribIpv6VrfAfi-container definition. + } // End of ribIpv6Vrf-list + list ribMrouteVRF { + description - "mroutePrefix"; + "ribMrouteVRF"; config true; - key "mrouteIpv4Prefix"; + key "vrfName"; - leaf mrouteIpv4Prefix { - + leaf vrfName { type cml_data_types:CML_STRING_T; config true; - } // END of mrouteIpv4Prefix definition. + } // END of vrfName definition. - leaf mrouteGateStr { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; - } // END of mrouteGateStr definition. - leaf mrouteifname { - mandatory true; - type cml_data_types:CML_STRING_T; + list ribMroute { + + description + "ribMroute"; + config true; - } // END of mrouteifname definition. + key "srcPrfix"; + + + leaf srcPrfix { + type cml_data_types:CML_IPV4_PREFIX_T; + config true; + } // END of srcPrfix definition. + + + list mrouteProtoType { + + description + "mrouteProtoType"; + + config true; + key "mrouteIpv4Proto"; + + + leaf mrouteIpv4Proto { + type cml_data_types:CML_MROUTE_ROUTETYPE_T; + config true; + } // END of mrouteIpv4Proto definition. + + leaf rpfRoute { + type cml_data_types:CML_IPV4_ADDR_T; + config true; + } // END of rpfRoute definition. + + leaf adminDist { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + } // END of adminDist definition. + + } // End of mrouteProtoType-list + } // End of ribMroute-list + } // End of ribMrouteVRF-list + + list ribIpv6MrouteVRF { + + description + "ribIpv6MrouteVRF"; + + config true; + key "vrfName"; - leaf routeType { - mandatory true; + + leaf vrfName { type cml_data_types:CML_STRING_T; config true; - } // END of routeType definition. + } // END of vrfName definition. - leaf mrouteDistance { - mandatory true; - type cml_data_types:CML_INT32_T { - range "1..255"; - } - config true; - } // END of mrouteDistance definition. - } // End of mroutePrefix-list + list ribMrouteIpv6 { + + description + "ribMrouteIpv6"; - list mrouteIpv6Prefix { - + config true; + key "srcPrfixIpv6"; + + leaf srcPrfixIpv6 { + type cml_data_types:CML_IPV6_PREFIX_T; + config true; + } // END of srcPrfixIpv6 definition. + + + list mrouteIpv6ProtoType { + + description + "mrouteIpv6ProtoType"; + + config true; + key "mrouteIpv6Proto"; + + + leaf mrouteIpv6Proto { + type cml_data_types:CML_MROUTE_ROUTETYPE_T; + config true; + } // END of mrouteIpv6Proto definition. + + leaf gwIpv6Mroute { + type cml_data_types:CML_MROUTE_GW_ADDR_T; + config true; + } // END of gwIpv6Mroute definition. + + leaf adminDist { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + } // END of adminDist definition. + + + list ipv6MrouteGwAddr { + + description + "ipv6MrouteGwAddr"; + + config true; + key "mrouteIpv6gwAddr"; + + + leaf mrouteIpv6gwAddr { + type cml_data_types:CML_IPV6_ADDR_T; + config true; + } // END of mrouteIpv6gwAddr definition. + + + list ipv6MrouteGwIfName { + + description + "ipv6MrouteGwIfName"; + + config true; + key "mrouteIpv6gwIfName"; + + + leaf mrouteIpv6gwIfName { + type cml_data_types:CML_STRING_T; + config true; + } // END of mrouteIpv6gwIfName definition. + + leaf adminDist { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + } // END of adminDist definition. + + } // End of ipv6MrouteGwIfName-list + } // End of ipv6MrouteGwAddr-list + } // End of mrouteIpv6ProtoType-list + } // End of ribMrouteIpv6-list + } // End of ribIpv6MrouteVRF-list + + list ribInterface { + description - "mrouteIpv6Prefix"; + "RIB BFD interface related operations"; config true; - key "mrouteIpv6Prefix"; + key "ifName"; - leaf mrouteIpv6Prefix { - + leaf ifName { type cml_data_types:CML_STRING_T; config true; - } // END of mrouteIpv6Prefix definition. + } // END of ifName definition. - leaf mrouteIpv6GateStr { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf staticBfd { + type cml_data_types:CML_BOOL_T; config true; - } // END of mrouteIpv6GateStr definition. + } // END of staticBfd definition. - leaf mrouteIpv6ifname { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf staticBfdDisable { + type cml_data_types:CML_BOOL_T; config true; - } // END of mrouteIpv6ifname definition. + } // END of staticBfdDisable definition. - leaf ipv6RouteType { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf ipv6StaticBfd { + type cml_data_types:CML_BOOL_T; config true; - } // END of ipv6RouteType definition. + } // END of ipv6StaticBfd definition. - leaf mrouteIpv6Distance { - mandatory true; - type cml_data_types:CML_INT32_T { - range "1..255"; - } + leaf ipv6StaticBfdDisable { + type cml_data_types:CML_BOOL_T; config true; - } // END of mrouteIpv6Distance definition. + } // END of ipv6StaticBfdDisable definition. + + } // End of ribInterface-list + container fib { + config true; + + description + "fib"; + + container retain { + config true; + + description + "retain"; + + leaf fibRetainTime { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "60"; + config true; + } // END of fibRetainTime definition. + + } // END of retain-container definition. + } // END of fib-container definition. + container ribAfi { + config false; + + description + "ribAfi"; + + uses ribVrfAfiGrp; + } // END of ribAfi-container definition. + container ribIpv6Afi { + config false; + + description + "ribIpv6Afi"; + + uses ribVrfAfiGrp; + } // END of ribIpv6Afi-container definition. + container ribVrf { + config true; + + description + "ribVrf"; + + leaf ribVrfConfBfdIpv4 { + type cml_data_types:CML_BOOL_T; + config true; + } // END of ribVrfConfBfdIpv4 definition. + + leaf ribVrfConfBfdIpv6 { + type cml_data_types:CML_BOOL_T; + config true; + } // END of ribVrfConfBfdIpv6 definition. + + } // END of ribVrf-container definition. + } // End of rib-list + } // END of rib-grouping definition. + grouping ribRuntimeGrp { + leaf subType { + type cml_data_types:CML_STRING_T; + config false; + } // END of subType definition. + + leaf metric { + type cml_data_types:CML_UINT8_T; + config false; + } // END of metric definition. + + leaf blackHole { + type cml_data_types:CML_STRING_T; + config false; + } // END of blackHole definition. + + + list nextHopRunTime { + + description + "nextHopRunTime"; + + config false; + key "gwAddrRuntime"; + + + leaf gwAddrRuntime { + type cml_data_types:CML_IPV4_ADDR_T; + config false; + } // END of gwAddrRuntime definition. + + leaf gwLastResort { + type cml_data_types:CML_IPV4_ADDR_T; + config false; + } // END of gwLastResort definition. + + leaf nexthopIfName { + type cml_data_types:CML_STRING_T; + config false; + } // END of nexthopIfName definition. + + leaf nexthopIfIndex { + type cml_data_types:CML_STRING_T; + config false; + } // END of nexthopIfIndex definition. + + leaf nexthopFlagActive { + type cml_data_types:CML_STRING_T; + config false; + } // END of nexthopFlagActive definition. + + } // End of nextHopRunTime-list + } // END of ribRuntimeGrp definition. + grouping ribVrfAfiGrp { + leaf totalRoutes { + type cml_data_types:CML_UINT32_T; + config false; + } // END of totalRoutes definition. + + leaf totalPaths { + type cml_data_types:CML_UINT32_T; + config false; + } // END of totalPaths definition. + + leaf countFib { + type cml_data_types:CML_UINT32_T; + config false; + } // END of countFib definition. + + leaf ecmpRoutes { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ecmpRoutes definition. + + leaf ecmpPaths { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ecmpPaths definition. + + leaf ecmpPathCntr { + type cml_data_types:CML_STRING_T; + config false; + } // END of ecmpPathCntr definition. + + + list routeSource { + + description + "routeSource"; + + config false; + key "routeType"; + + + leaf routeType { + type cml_data_types:CML_STRING_T; + config false; + } // END of routeType definition. + + leaf routeTypeCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of routeTypeCount definition. + + } // End of routeSource-list + } // END of ribVrfAfiGrp definition. + grouping ribAttr { + leaf distValue { + mandatory true; + type cml_data_types:CML_INT32_T { + range "1..255"; + } + config true; + } // END of distValue definition. + + leaf tagVal { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + config true; + } // END of tagVal definition. + + leaf description { + mandatory true; + type cml_data_types:CML_STRING_T; + config true; + } // END of description definition. - } // End of mrouteIpv6Prefix-list - } // End of mroute-list - } // END of mroute-grouping definition. + } // END of ribAttr definition. } \ No newline at end of file diff --git a/yang-files/vlan.yang b/yang-files/vlan.yang index dedb7026..fd2539d9 100644 --- a/yang-files/vlan.yang +++ b/yang-files/vlan.yang @@ -22,15 +22,15 @@ submodule vlan { prefix cml_data_types; } - revision "2016-09-15" { - description "Revisied on 2016-09-15."; } + + revision "2016-10-20" { + description "Revisied on 2016-10-20."; } grouping vlan-grouping { list vlan { - description "vlan"; @@ -39,14 +39,12 @@ submodule vlan { leaf vrId { - type cml_data_types:CML_INT32_T; default "0"; config true; } // END of vrId definition. leaf bridgeId { - type cml_data_types:CML_STRING_T { length "1..32"; } @@ -54,7 +52,6 @@ submodule vlan { } // END of bridgeId definition. leaf vlanId { - type cml_data_types:CML_UINT16_T { range "2..4094"; } @@ -62,59 +59,51 @@ submodule vlan { } // END of vlanId definition. leaf vlanName { - type cml_data_types:CML_STRING_T; default "NULL"; config true; } // END of vlanName definition. leaf vlanState { - mandatory true; + mandatory true; type cml_data_types:CML_VLANSTATE_T; config true; description "vlan state"; } // END of vlanState definition. leaf vlanType { - type cml_data_types:CML_VLAN_TYPE_T; default "custmor"; config true; } // END of vlanType definition. leaf mtuVal { - type cml_data_types:CML_UINT32_T; default "1500"; config true; } // END of mtuVal definition. leaf bridgeName { - type cml_data_types:CML_STRING_T; config false; } // END of bridgeName definition. leaf vlanRuntimeName { - type cml_data_types:CML_STRING_T; config false; } // END of vlanRuntimeName definition. leaf vlanRuntimeState { - type cml_data_types:CML_STRING_T; config false; } // END of vlanRuntimeState definition. leaf vlanHwState { - type cml_data_types:CML_STRING_T; config false; } // END of vlanHwState definition. leaf taggedInterface { - type cml_data_types:CML_STRING_T; config false; } // END of taggedInterface definition. diff --git a/yang-files/vlaninterface.yang b/yang-files/vlaninterface.yang index 8e2a5a46..4daf4a92 100644 --- a/yang-files/vlaninterface.yang +++ b/yang-files/vlaninterface.yang @@ -25,15 +25,15 @@ submodule vlaninterface { prefix cml_data_types; } - revision "2016-09-15" { - description "Revisied on 2016-09-15."; } + + revision "2016-10-20" { + description "Revisied on 2016-10-20."; } grouping vlaninterface-grouping { list vlaninterface { - description "vlaninterface"; @@ -42,27 +42,24 @@ submodule vlaninterface { leaf vrId { - type cml_data_types:CML_INT32_T; default "0"; config true; } // END of vrId definition. leaf ifName { - type cml_data_types:CML_STRING_T; config true; description "switchport mode"; } // END of ifName definition. leaf vlanPortMode { - mandatory true; + mandatory true; type cml_data_types:CML_VLAN_PORT_MODE_T; config true; } // END of vlanPortMode definition. leaf vlanPortIngressFilter { - type cml_data_types:CML_ENABLE_DISABLE_T; default "enable"; config true; @@ -70,7 +67,6 @@ submodule vlaninterface { } // END of vlanPortIngressFilter definition. leaf frameType { - type cml_data_types:CML_VLAN_FRAME_TYPE_T; default "all"; config true; @@ -80,7 +76,6 @@ submodule vlaninterface { list staticMac { - description "staticMac"; @@ -89,7 +84,6 @@ submodule vlaninterface { leaf vlanIdMac { - type cml_data_types:CML_UINT16_T { range "2..4096"; } @@ -97,7 +91,6 @@ submodule vlaninterface { } // END of vlanIdMac definition. leaf bridgeId { - type cml_data_types:CML_STRING_T { length "1..32"; } @@ -106,20 +99,17 @@ submodule vlaninterface { } // END of bridgeId definition. leaf macAddr { - type cml_data_types:CML_STRING_T; config true; description "mac Address"; } // END of macAddr definition. leaf discardForward { - type cml_data_types:CML_DISCARDFORWARD_T; config true; } // END of discardForward definition. leaf priorityOverWrite { - type cml_data_types:CML_UINT8_T { range "0..7"; } @@ -127,7 +117,6 @@ submodule vlaninterface { } // END of priorityOverWrite definition. leaf overMacType { - type cml_data_types:CML_OVERMACTYPE_T; config true; } // END of overMacType definition. @@ -136,7 +125,6 @@ submodule vlaninterface { list vlanInterfaceBound { - description "vlanInterfaceBound"; @@ -145,14 +133,13 @@ submodule vlaninterface { leaf vlanId { - type cml_data_types:CML_UINT16_T; config true; description "switchport (access|hybrid|native trunk)"; } // END of vlanId definition. leaf vlanPortMode { - mandatory true; + mandatory true; type cml_data_types:CML_VLAN_PORT_MODE_T; config true; } // END of vlanPortMode definition. @@ -161,7 +148,6 @@ submodule vlaninterface { list allowedvlan { - description "allowedvlan"; @@ -170,20 +156,18 @@ submodule vlaninterface { leaf allowedVlanId { - type cml_data_types:CML_UINT16_T; config true; description "switchport allowed (hybrid|trunk)"; } // END of allowedVlanId definition. leaf vlanPortMode { - mandatory true; + mandatory true; type cml_data_types:CML_VLAN_PORT_MODE_T; config true; } // END of vlanPortMode definition. leaf egrType { - type cml_data_types:CML_ENABLE_DISABLE_T; config true; } // END of egrType definition. @@ -192,7 +176,6 @@ submodule vlaninterface { list excludevlan { - description "excludevlan"; @@ -201,13 +184,12 @@ submodule vlaninterface { leaf excludeVlanId { - type cml_data_types:CML_UINT16_T; config true; } // END of excludeVlanId definition. leaf vlanPortMode { - mandatory true; + mandatory true; type cml_data_types:CML_VLAN_PORT_MODE_T; config true; } // END of vlanPortMode definition. @@ -216,7 +198,6 @@ submodule vlaninterface { list vlanUserTable { - description "vlanUserTable"; @@ -225,7 +206,6 @@ submodule vlaninterface { leaf userPriority { - type cml_data_types:CML_UINT8_T { range "0..7"; } @@ -233,7 +213,7 @@ submodule vlaninterface { } // END of userPriority definition. leaf regenPriority { - mandatory true; + mandatory true; type cml_data_types:CML_UINT8_T { range "0..7"; } @@ -244,7 +224,6 @@ submodule vlaninterface { list vlanTraffic { - description "vlanTraffic"; @@ -253,7 +232,6 @@ submodule vlaninterface { leaf userPriority { - type cml_data_types:CML_UINT8_T { range "0..7"; } @@ -261,7 +239,6 @@ submodule vlaninterface { } // END of userPriority definition. leaf trafficClass { - type cml_data_types:CML_UINT8_T { range "1..8"; } @@ -269,7 +246,7 @@ submodule vlaninterface { } // END of trafficClass definition. leaf trafficClassValue { - mandatory true; + mandatory true; type cml_data_types:CML_UINT8_T { range "0..7"; } diff --git a/yang-files/vr.yang b/yang-files/vr.yang index d95102d6..f81bf827 100644 --- a/yang-files/vr.yang +++ b/yang-files/vr.yang @@ -19,13 +19,12 @@ submodule vr { include interface; include bridge; include oambfd; - include ospf; include lag; + include l3vrrp; include lacp; include vrf; include lldpv2; - include ospf6; - include rib; + include ospf; include bgp; include vlaninterface; @@ -34,15 +33,16 @@ submodule vr { prefix cml_data_types; } + revision "2015-10-08" { - description "Revisied on 2015-10-08."; } + description "Revisied on 2015-10-08."; + } grouping vr-grouping { list vr { - description "vr"; @@ -51,7 +51,6 @@ submodule vr { leaf vrId { - type cml_data_types:CML_UINT32_T { range "0..255"; } @@ -59,19 +58,16 @@ submodule vr { } // END of vrId definition. leaf vrName { - type cml_data_types:CML_STRING_T; config true; } // END of vrName definition. leaf protocol { - type cml_data_types:CML_STRING_T; config true; } // END of protocol definition. leaf ipv6Protocol { - type cml_data_types:CML_STRING_T; config true; } // END of ipv6Protocol definition. @@ -79,21 +75,17 @@ submodule vr { uses bridge-grouping; uses bfd-grouping; uses bfdInterface-grouping; - uses ospf-grouping; - uses ospfInterface-grouping; - uses teLinkOspf-grouping; uses lacpInterface-grouping; + uses Vrrp4Instance-grouping; + uses Vrrp6Instance-grouping; uses nsmlacpInterface-grouping; uses nsmportInterface-grouping; uses vrf-grouping; uses interface-grouping; uses lldpv2Interface-grouping; - uses ospf6-grouping; - uses ospf6Interface-grouping; - uses ospf6Vrf-grouping; - uses rib-grouping; - uses ribipv6-grouping; - uses mroute-grouping; + uses ospf-grouping; + uses ospfInterface-grouping; + uses teLinkOspf-grouping; uses bgp-grouping; uses vrfTable-grouping; uses vlaninterface-grouping; diff --git a/yang-files/vrf.yang b/yang-files/vrf.yang index 2de2e3ed..380ab3f0 100644 --- a/yang-files/vrf.yang +++ b/yang-files/vrf.yang @@ -22,15 +22,16 @@ submodule vrf { prefix cml_data_types; } + revision "2015-04-25" { - description "Initial draft version."; } + description "Initial draft version."; + } grouping vrf-grouping { list vrf { - description "vrf"; @@ -39,38 +40,32 @@ submodule vrf { leaf vrId { - type cml_data_types:CML_UINT32_T; default "0"; config true; } // END of vrId definition. leaf vrfName { - type cml_data_types:CML_STRING_T; config true; } // END of vrfName definition. leaf vrfId { - type cml_data_types:CML_UINT32_T; config false; } // END of vrfId definition. leaf fibId { - type cml_data_types:CML_UINT8_T; config false; } // END of fibId definition. leaf description { - type cml_data_types:CML_STRING_T; config true; } // END of description definition. leaf routerId { - type cml_data_types:CML_STRING_T; config true; } // END of routerId definition. From 5fdecd81c219579e22a8c9e4ee88ec18a0b510ed Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Thu, 16 Mar 2017 18:05:28 +0530 Subject: [PATCH 12/12] Yang file updates as of OcNOS 1.3.0 Build#231 --- yang-files/ZebOS.yang | 1749 +++++- yang-files/aaa.yang | 229 + yang-files/acl.yang | 435 ++ yang-files/aclinterface.yang | 69 + yang-files/auth.yang | 253 + yang-files/bgp.yang | 7623 ++++++++++--------------- yang-files/bridge.yang | 1343 ++--- yang-files/cml_data_types.yang | 3774 ++++++++++-- yang-files/cmm.yang | 1202 ++++ yang-files/dhcpc.yang | 94 + yang-files/dhcpr.yang | 138 + yang-files/dns.yang | 145 + yang-files/feature_list.yang | 478 +- yang-files/featuredhcp.yang | 53 + yang-files/hqos.yang | 1439 +++++ yang-files/igmp.yang | 648 +++ yang-files/igmpsnooping.yang | 175 + yang-files/interface.yang | 1695 ++++-- yang-files/isis.yang | 2656 +++++++++ yang-files/keychain.yang | 187 + yang-files/lacp.yang | 21 +- yang-files/lag.yang | 28 +- yang-files/ldap.yang | 225 + yang-files/libsnmp.yang | 69 + yang-files/libsyslog.yang | 139 + yang-files/license.yang | 39 + yang-files/lldpv2.yang | 948 ++- yang-files/mcec.yang | 553 ++ yang-files/mlag.yang | 194 + yang-files/mrib4.yang | 322 ++ yang-files/mstp.yang | 2691 +++++++-- yang-files/nsmsnmp.yang | 75 + yang-files/ntp.yang | 206 + yang-files/oambfd.yang | 912 ++- yang-files/ospf.yang | 4559 ++++++--------- yang-files/ospf6.yang | 2401 -------- yang-files/ospfv3.yang | 565 +- yang-files/pbb.yang | 779 +++ yang-files/pim.yang | 87 + yang-files/pim4.yang | 2250 ++++++++ yang-files/plist.yang | 270 + yang-files/pserv.yang | 93 + yang-files/radius.yang | 172 + yang-files/rib.yang | 1261 ++-- yang-files/rip.yang | 766 +++ yang-files/routemap.yang | 423 ++ yang-files/sflow.yang | 225 + yang-files/snmp.yang | 408 ++ yang-files/ssh.yang | 116 + yang-files/switchportinterface.yang | 400 ++ yang-files/syslog.yang | 113 + yang-files/tacacs.yang | 188 + yang-files/telnet.yang | 85 + yang-files/tfo.yang | 163 + yang-files/usermgmt.yang | 98 + yang-files/vlan.yang | 354 +- yang-files/vlaninterface.yang | 261 - yang-files/vr.yang | 133 +- yang-files/vrf.yang | 45 +- yang-files/{l3vrrp.yang => vrrp.yang} | 239 +- yang-files/vxlan.yang | 393 ++ yang-files/zebmcli.yang | 34 +- 62 files changed, 33847 insertions(+), 13841 deletions(-) create mode 100644 yang-files/aaa.yang create mode 100644 yang-files/acl.yang create mode 100644 yang-files/aclinterface.yang create mode 100644 yang-files/auth.yang create mode 100644 yang-files/cmm.yang create mode 100644 yang-files/dhcpc.yang create mode 100644 yang-files/dhcpr.yang create mode 100644 yang-files/dns.yang create mode 100644 yang-files/featuredhcp.yang create mode 100644 yang-files/hqos.yang create mode 100644 yang-files/igmp.yang create mode 100644 yang-files/igmpsnooping.yang create mode 100644 yang-files/isis.yang create mode 100644 yang-files/keychain.yang create mode 100644 yang-files/ldap.yang create mode 100644 yang-files/libsnmp.yang create mode 100644 yang-files/libsyslog.yang create mode 100644 yang-files/license.yang create mode 100644 yang-files/mcec.yang create mode 100644 yang-files/mlag.yang create mode 100644 yang-files/mrib4.yang create mode 100644 yang-files/nsmsnmp.yang create mode 100644 yang-files/ntp.yang delete mode 100644 yang-files/ospf6.yang create mode 100644 yang-files/pbb.yang create mode 100644 yang-files/pim.yang create mode 100644 yang-files/pim4.yang create mode 100644 yang-files/plist.yang create mode 100644 yang-files/pserv.yang create mode 100644 yang-files/radius.yang create mode 100644 yang-files/rip.yang create mode 100644 yang-files/routemap.yang create mode 100644 yang-files/sflow.yang create mode 100644 yang-files/snmp.yang create mode 100644 yang-files/ssh.yang create mode 100644 yang-files/switchportinterface.yang create mode 100644 yang-files/syslog.yang create mode 100644 yang-files/tacacs.yang create mode 100644 yang-files/telnet.yang create mode 100644 yang-files/tfo.yang create mode 100644 yang-files/usermgmt.yang delete mode 100644 yang-files/vlaninterface.yang rename yang-files/{l3vrrp.yang => vrrp.yang} (76%) create mode 100644 yang-files/vxlan.yang diff --git a/yang-files/ZebOS.yang b/yang-files/ZebOS.yang index e1543a7b..630bb09a 100644 --- a/yang-files/ZebOS.yang +++ b/yang-files/ZebOS.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -18,22 +18,62 @@ module ZebOS { namespace "http://www.ipinfusion.com/CMLSchema/ZebOS"; prefix "ZebOS"; + include dhcpr; include bridge; - include ospfv3; - include oambfd; - include rib; - include lag; + include pim; + include featuredhcp; include mstp; - include l3vrrp; + include rip; include lacp; + include dhcpc; include vr; + include mlag; + include radius; + include auth; + include rib; + include plist; + include igmp; + include pim4; + include ospfv3; + include oambfd; + include pserv; + include hqos; + include snmp; + include mrib4; + include vrrp; + include dns; + include ldap; + include vxlan; + include switchportinterface; + include tfo; + include vlan; + include ntp; + include lag; + include telnet; + include nsmsnmp; + include libsyslog; include vrf; include interface; - include lldpv2; + include isis; + include keychain; + include tacacs; + include aclinterface; + include cmm; + include routemap; + include aaa; + include sflow; + include license; + include syslog; include ospf; + include acl; include bgp; - include vlan; - include vlaninterface; + include usermgmt; + include libsnmp; + include pbb; + include lldpv2; + include mcec; + include igmpsnooping; + include ssh; import cml_data_types { @@ -50,68 +90,304 @@ module ZebOS { "ZebOS Managed Object"; - revision "2016-10-20" { - description "Revisied on 2016-10-20."; + revision "2017-03-09" { + description "Changes for acl datamodel."; + } + + revision "2017-03-05" { + description "added support for deletion of vlan type."; + } + + revision "2017-03-03" { + description "vlaninterface datamodel name has been changed to switchportInterface."; + } + + revision "2017-02-27" { + description "added dependentObject for brigdePort."; + } + + revision "2017-02-25" { + description "added support for show cml running-config."; + } + + revision "2017-02-24" { + description "cliflag added in vlanAccess objectlist."; + } + + revision "2017-02-23" { + description "hal statistics attribute added in ifStat container."; + } + + revision "2017-02-22" { + description "added bridgeId in bridgePort table, optimising ACL datamodel."; + } + + revision "2017-02-21" { + description "private-vlan changes."; + } + + revision "2017-02-20" { + description "added run-time attrs in ISIS datamodel."; + } + + revision "2017-02-14" { + description "adding missing flag for cli generation."; + } + + revision "2017-02-13" { + description "Add the load balance commands."; + } + + revision "2017-02-11" { + description "Rip datamodel modifeid."; + } + + revision "2017-02-10" { + description "disabling trill bridge creation command."; + } + + revision "2017-02-08" { + description "Defect fix for Mcast datamodel."; + } + + revision "2017-02-07" { + description "mapped mstp datamodel strcuture with mstpd structure."; + } + + revision "2017-02-03" { + description "changes for Mcast datamodel."; + } + + revision "2017-02-02" { + description "Defect fixes for isis,pim datamodel."; + } + + revision "2017-01-31" { + description "Removed extra attributes from interface datamodel."; + } + + revision "2017-01-30" { + description "datamodel adding for HQOS."; + } + + revision "2017-01-28" { + description "adding flag for default bridge objectlist in mstp."; + } + + revision "2017-01-27" { + description "changes for Debug command."; + } + + revision "2017-01-25" { + description "Defect fix in Mcast datamodel."; + } + + revision "2017-01-23" { + description "Defect fix in OSPF datamodel."; + } + + revision "2017-01-20" { + description "mapped interface datamodel attribute with interface structure."; + } + + revision "2017-01-19" { + description "Defect fixes in VRRP datamodel."; + } + + revision "2017-01-16" { + description "Ported LDP and RSVP changes from XP-master."; + } + + revision "2017-01-12" { + description "auto-populate of default bridge disabled."; + } + + revision "2017-01-11" { + description "default bridge command disabled."; + } + + revision "2017-01-10" { + description "Defect fixes in OSPF and ISIS datamodel."; + } + + revision "2017-01-04" { + description "Changes done to add implicit delete tags."; + } + + revision "2016-12-30" { + description "Changes ported from XP-master for vr and vrf."; + } + + revision "2016-12-29" { + description "Added support for Routemap SMI auto generation."; + } + + revision "2016-12-28" { + description "Added support for Vxlan commands in cmlsh.."; + } + + revision "2016-12-26" { + description "Added support for LLDPv2 get API."; + } + + revision "2016-12-22" { + description "Added support for OSPF SMI auto generation."; + } + + revision "2016-12-17" { + description "ISIS redistribute CLI's are changed as per backend CLI's."; + } + + revision "2016-10-28" { + description "Top level module includes all ZebOS managed objects."; + } + + revision "2016-01-29" { + description "Changes done for ospf getapi and snmp tags."; } + uses dhcprelay-grouping; + uses dhcprelay6-grouping; + uses featuredhcp-grouping; + uses nsmMlag-grouping; + uses debugdot1x-grouping; uses oamMpls-grouping; - uses lacpSystemPriority-grouping; - uses vrrp-grouping; + uses pservd-grouping; + uses snmp-grouping; uses VrrpDebug-grouping; - uses systemDetail-grouping; - uses ospf6_master-grouping; - uses rib-grouping; + uses dns-grouping; + uses ldap-grouping; + uses tfo-grouping; + uses ntp-grouping; + uses lacpSystemPriority-grouping; + uses lacpdebug-grouping; + uses telnet-grouping; + uses nsmsnmp-grouping; + uses log-grouping; + uses tacacs-grouping; + uses cmmGlobals-grouping; + uses cmmDmm-grouping; + uses ddmFalseAlarm-grouping; + uses cmmCpuInfo-grouping; + uses cmmSysRamTable-grouping; + uses cmmStackUnitUtilTable-grouping; + uses cmmSysLedTable-grouping; + uses cmmSysSwModuleTable-grouping; + uses cmmAlarmVariable-grouping; + uses aaa-grouping; + uses sflow-grouping; + uses debugsflow-grouping; + uses hostpsyslog-grouping; + uses userDebug-grouping; + uses snmpVrfName-grouping; + uses mcecMaster-grouping; + uses igmpConfig-grouping; + uses ssh-grouping; + uses dhcprelayinterface-grouping; + uses dhcp6nterface-grouping; + uses mstTeBridge-grouping; + uses backboneBridgePort-grouping; uses vr-grouping; - uses ospfGlobal-grouping; + uses prefixMaster-grouping; + uses prefixMaster6-grouping; + uses ospf6_master-grouping; + uses confModeDebug-grouping; + uses execModeDebug-grouping; + uses logginglevel-grouping; + uses nsmMaster-grouping; + uses isismaster-grouping; + uses cmmStackUnitTable-grouping; + uses cmmSysPowerSupplyTable-grouping; + uses cmmSysFanTable-grouping; + uses cmmSysTemperatureTable-grouping; + uses cmmSysChipTemperatureTable-grouping; + uses ospfMaster-grouping; uses bgpGlobal-grouping; uses bgpDebug-grouping; uses hashTableSize-grouping; + uses usermgmt-grouping; + uses bebBridge-grouping; + uses lldpMaster-grouping; - rpc ospfv3-ospf-clear { + rpc pim-snmp-restart-pim { + } + + rpc rip-rip-restart { input { leaf vrId { type cml_data_types:CML_UINT32_T; mandatory true; } - leaf ospfProcess { - type cml_data_types:CML_STRING_T; + leaf gracePeriod { + type cml_data_types:CML_UINT32_T; mandatory true; } } } - rpc ospfv3-ospf-restart-hitless { + rpc rip-clear-ip-rip-route { input { leaf vrId { type cml_data_types:CML_UINT32_T; mandatory true; } - leaf gracePeriod { - type cml_data_types:CML_UINT32_T; + leaf routeCMLSEPtype { + type cml_data_types:CML_UINT8_T; mandatory true; } } } - rpc ospfv3-ospf-restart { + rpc rip-clear-ip-rip-route-prefix { input { leaf vrId { type cml_data_types:CML_UINT32_T; mandatory true; } - leaf gracePeriod { + leaf routeCMLSEPtypeCMLSEPpre { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc rip-clear-ip-rip-route-vrf { + input { + leaf vrId { type cml_data_types:CML_UINT32_T; mandatory true; } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf prefixStr { + type cml_data_types:CML_STRING_T; + mandatory true; + } } } - rpc ospfv3-ospf-snmp-restart { + rpc rip-clear-ip-rip-stat-interf { input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf ifName { + type cml_data_types:CML_STRING_T; + mandatory true; + } } } + rpc rip-snmp-restart-rip { + } + + rpc auth-snmp-restart { + } + rpc rib-clearIpRouteKernel { input { leaf vrId { @@ -319,20 +595,46 @@ module ZebOS { } } - rpc ospf-clear-ip-ospf-process { + rpc plist-clear-ip-prefix { input { leaf vrId { type cml_data_types:CML_UINT32_T; mandatory true; } - leaf ospfProcessId { - type cml_data_types:CML_INT32_T; + } + } + + rpc plist-clear-ip-prefix-by-name { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf name { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc plist-clear-ip-prefix-by-prefix { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf name { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf prefix { + type cml_data_types:CML_STRING_T; mandatory true; } } } - rpc ospf-clear-ip-ospf-process-all { + rpc plist-clear-ipv6-prefix { input { leaf vrId { type cml_data_types:CML_UINT32_T; @@ -341,21 +643,1404 @@ module ZebOS { } } - rpc bgp-restartBgp { + rpc plist-clear-ipv6-prefix-by-name { input { leaf vrId { type cml_data_types:CML_UINT32_T; mandatory true; } + leaf name { + type cml_data_types:CML_STRING_T; + mandatory true; + } } } - rpc bgp-clearBgp { + rpc plist-clear-ipv6-prefix-by-prefix { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf name { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf prefix { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc igmp-mrib4-igmp-group-clear { + input { + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf groupAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf ifName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc igmp-mrib4-igmp-interface-clear { + input { + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf ifName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc igmp-mrib4-igmp-vrfName-clear { + input { + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc igmp-mrib4-igmp-all-group-clear { + input { + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf groupAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc igmp-mrib4-igmp-group-clear-all { + input { + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf clearAll { + type cml_data_types:CML_UINT8_T; + mandatory true; + } + } + } + + rpc pim4-clear-ip-mroute { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf allFlag { + type cml_data_types:CML_BOOL_T; + mandatory true; + } + leaf pimmode { + type cml_data_types:CML_UINT8_T; + mandatory true; + } + } + } + + rpc pim4-clear-ip-mroute-xg { input { leaf vrId { type cml_data_types:CML_UINT32_T; mandatory true; } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf mrouteXg { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc pim4-clear-ip-mroute-sg { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf mrouteGaddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf mrouteSaddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf pimgsmode { + type cml_data_types:CML_UINT8_T; + mandatory true; + } + } + } + + rpc pim4-clear-ip-pim { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf allRp { + type cml_data_types:CML_BOOL_T; + mandatory true; + } + } + } + + rpc pim4-clear-ip-msdp-peer { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf peerAddress { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc pim4-clear-ip-msdp-sacache { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf saAddress { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc ospfv3-ospf-clear { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf ospfProcess { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc ospfv3-ospf-restart-hitless { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf gracePeriod { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc ospfv3-ospf-restart { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf gracePeriod { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc ospfv3-ospf-snmp-restart { + } + + rpc mrib4-snmp-restart-mrib { + } + + rpc mrib4-clear-mrib-vrf-all { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf allroute { + type cml_data_types:CML_BOOL_T; + mandatory true; + } + } + } + + rpc mrib4-clear-mrib-grp { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf grpAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc mrib4-clear-mrib-vrf-src-grp { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf srcAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf grpAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc mrib4-clear-mrib-stats-all { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf allroute { + type cml_data_types:CML_BOOL_T; + mandatory true; + } + } + } + + rpc mrib4-clear-mrib-vrf-grp-stats { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf grpAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc mrib4-clear-mrib-vrf-src-grp-stats { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf vrfName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf srcAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf grpAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc vrrp-snmp-restart-vrrp { + } + + rpc tfo-cleartfocounter { + } + + rpc tfo-cleartfocounterfog { + input { + leaf fognum { + type cml_data_types:CML_INT32_T; + mandatory true; + } + } + } + + rpc ntp-sync-retry { + input { + leaf vrf { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc ntp-clear { + input { + leaf statistics { + type cml_data_types:CML_INT32_T; + mandatory true; + } + } + } + + rpc lag-lacp-snmp-restart { + } + + rpc libsyslog-cleardebuglogfile { + } + + rpc libsyslog-clearlogginglogfile { + } + + rpc interface-clear-arp-cache { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc interface-clear-ipv6-neighbors { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc isis-isis-restart { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf graceCMLSEPperiod { + type cml_data_types:CML_UINT16_T; + mandatory true; + } + } + } + + rpc isis-clear-is-neighbors { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf SystemID { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc isis-clear-neighbors { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc isis-clear-ip-route { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf isisInstanceTag { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf ipv4route { + type cml_data_types:CML_UINT8_T; + mandatory true; + } + } + } + + rpc isis-clear-ipv6-route { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf isisInstanceTag { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf ipv6route { + type cml_data_types:CML_UINT8_T; + mandatory true; + } + } + } + + rpc isis-isis-proc-clear { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf isisInstanceTag { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc isis-isis-clear-counters { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc isis-clear-interface-counters { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf ifName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc isis-clear-adjacency-all { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf adjall { + type cml_data_types:CML_BOOL_T; + mandatory true; + } + leaf adjvrfname { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc isis-clear-adjacency-word-all { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf tagname { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf adjall { + type cml_data_types:CML_BOOL_T; + mandatory true; + } + leaf adjvrfname { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc isis-clear-adjacency-word-ifname { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf tagname { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf tagifname { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf adjvrfname { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc isis-clear-adjacency-ifname { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf adjifname { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf adjvrfname { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc isis-clear-adjacency-word-systemid { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf tagname { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf tagsystemid { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf tagvrfname { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc isis-clear-adjacency-systemid { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf adjsystemid { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf adjvrfname { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc isis-snmp-restart-isis { + } + + rpc cmm-clear-ddm-transceiver-alarm { + input { + leaf portNum { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc aaa-lockout { + input { + leaf username { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc license-licenseget { + input { + leaf sourceCMLSEPinterface { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf url { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc license-licenserefresh { + } + + rpc ospf-restart-ospf-graceful { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf restartGracePeriod { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc ospf-restart-ospf-hitless { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + leaf hitlessGracePeriod { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc bgp-restartBgp { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc bgp-clearBgp { + input { + leaf vrId { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc mcec-clear-mcec-statistics { + } + + rpc igmpsnooping-igmpsnooping-clear-interface-group { + input { + leaf groupAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf ifName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc igmpsnooping-igmpsnooping-clear-interface { + input { + leaf ifName { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc igmpsnooping-igmpsnooping-clear-all { + } + + rpc igmpsnooping-igmpsnooping-clear { + } + + rpc igmpsnooping-igmpsnooping-clear-group { + input { + leaf groupAddr { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc ssh-sshkey { + input { + leaf username { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf sshkey { + type cml_data_types:CML_STRING_T; + mandatory true; + } + } + } + + rpc ssh-lengthRSA { + input { + leaf usernameRSA { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf keyRSA { + type cml_data_types:CML_BOOL_T; + mandatory true; + } + leaf lengthRSA { + type cml_data_types:CML_INT32_T; + mandatory true; + } + leaf forceRSA { + type cml_data_types:CML_BOOL_T; + mandatory true; + } + } + } + + rpc ssh-keyDSA { + input { + leaf usernameDSA { + type cml_data_types:CML_STRING_T; + mandatory true; + } + leaf keyDSA { + type cml_data_types:CML_BOOL_T; + mandatory true; + } + leaf forceDSA { + type cml_data_types:CML_BOOL_T; + mandatory true; + } + } + } + + notification cmmAlarmCpuRisingThreshold { + + description "Trap to send information for Rising threshold, threshold interval and CPU Utilisation."; + + leaf cmmSysCpuThresholdInterval { + type string; + } + + leaf cmmSysCpuThreshold { + type string; + } + + leaf cmmStackUnitCpuUtilization { + type string; + } + } + + notification cmmAlarmFreeMemBlwThreshold { + + description "Trap to send information for Free Memory and Free Memory Threshold."; + + leaf cmmSysRamFreeMem { + type string; + } + + leaf cmmSysRamThreshold { + type string; + } + } + + notification cmmAlarmTempHigh { + + description "Set when internal temperature exceeds high alarm level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysTemperature { + type string; + } + + leaf cmmAlarmVarInteger { + type string; + } + } + + notification cmmAlarmTempLow { + + description "Set when internal temperature is below low alarm level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysTemperature { + type string; + } + + leaf cmmAlarmVarInteger { + type string; + } + } + + notification cmmWarningTempHigh { + + description "Set when internal temperature exceeds high warning level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysTemperature { + type string; + } + + leaf cmmAlarmVarInteger { + type string; + } + } + + notification cmmWarningTempLow { + + description "Set when internal temperature is below low warning level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysTemperature { + type string; + } + + leaf cmmAlarmVarInteger { + type string; + } + } + + notification cmmAlarmVoltageHigh { + + description "Set when internal supply voltage exceeds high alarm level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysVoltage { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmAlarmVoltageLow { + + description "Set when internal supply voltage is below low alarm level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysVoltage { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningVoltageHigh { + + description "Set when internal supply voltage exceeds high warning level.."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysVoltage { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningVoltageLow { + + description "Set when internal supply voltage is below low warning level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysVoltage { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmAlarmBiasHigh { + + description "Set when TX Bias current exceeds high alarm level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysLaserBiasCurrent { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmAlarmBiasLow { + + description "Set when TX Bias current is below low alarm level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysLaserBiasCurrent { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningBiasHigh { + + description "Set when TX Bias current exceeds high warning level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysLaserBiasCurrent { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningBiasLow { + + description "Set when TX Bias current is below low warning level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysRxInputPower { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmAlarmRxPowerHigh { + + description "Set when Received Power exceeds high alarm level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysRxInputPower { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmAlarmRxPowerLow { + + description "Set when Received Power is below low alarm level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysRxInputPower { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningRxPowerHigh { + + description "Set when Received Power exceeds high warning level.."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysRxInputPower { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningRxPowerLow { + + description "Set when Received Power is below low warning level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysRxInputPower { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmAlarmTemperatureTooHigh { + + description "Set when Temperature will be above threshold for sensor."; + + leaf cmmSysTemperatureSensorIndex { + type string; + } + + leaf cmmAlarmVarInteger { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningPsuInserted { + + description "Set when Power supply unit is inserted."; + + leaf cmmSysPowerSupplyIndex { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningPsuRemoved { + + description "Set when Power supply unit is Removed."; + + leaf cmmSysPowerSupplyIndex { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningPsuFaulty { + + description "Set when Power supply unit is Faulty."; + + leaf cmmSysPowerSupplyIndex { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningFanTrayInserted { + + description "Set when fan tray is inserted."; + + leaf cmmSysFanTrayNumber { + type string; + } + + leaf cmmSysFanRpm { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningFanTrayRemoved { + + description "Set when fan tray is Removed."; + + leaf cmmSysFanTrayNumber { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningFanTrayFaulty { + + description "Set when Given Fan Tray Faulty."; + + leaf cmmSysFanTrayNumber { + type string; + } + + leaf cmmSysFanIndex { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningFanTrayRecovered { + + description "Set when Given Fan Tray is recovered."; + + leaf cmmSysFanTrayNumber { + type string; + } + + leaf cmmSysFanIndex { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmAlarmPowerExceed { + + description "Set when Power will be above threshold."; + + leaf cmmSysPowerSupplyIndex { + type string; + } + + leaf cmmSysPSConsumption { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmAlarmTxPowerHigh { + + description "Set when Transferred Power exceeds high alarm level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysTxOutputPower { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmAlarmTxPowerLow { + + description "Set when Transferred Power is below low alarm level.."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysTxOutputPower { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningTxPowerHigh { + + description "Set when Transferred Power exceeds high warning level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysTxOutputPower { + type string; + } + + leaf cmmAlarmVarString { + type string; + } + } + + notification cmmWarningTxPowerLow { + + description "Set when Transferred Power is below low warning level."; + + leaf cmmSysPortIndex { + type string; + } + + leaf cmmSysPortType { + type string; + } + + leaf cmmSysTxOutputPower { + type string; + } + + leaf cmmAlarmVarString { + type string; } } diff --git a/yang-files/aaa.yang b/yang-files/aaa.yang new file mode 100644 index 00000000..a5271424 --- /dev/null +++ b/yang-files/aaa.yang @@ -0,0 +1,229 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : aaa.yang +* +*/ + +submodule aaa { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + include tacacs; + include radius; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Layer-3 aaa configurations"; + + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of AAA datamodel."; + } + + + grouping aaa-grouping { + container aaa { + config true; + + description + "aaa related commands"; + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf defaultAccounting { + type cml_data_types:CML_BOOL_T; + } // END of defaultAccounting definition. + + leaf acctGroup { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "aaa accounting details group"; + } // END of acctGroup definition. + + leaf acctLocal { + type cml_data_types:CML_BOOL_T; + description "aaa accounting details local"; + } // END of acctLocal definition. + + leaf errorEnable { + type cml_data_types:CML_BOOL_T; + description "aaa authentication login"; + } // END of errorEnable definition. + + leaf authDefault { + type cml_data_types:CML_BOOL_T; + } // END of authDefault definition. + + leaf authDefaultGroup { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "aaa authentication login default group"; + } // END of authDefaultGroup definition. + + leaf authMaxfail { + type cml_data_types:CML_UINT8_T { + range "1..25"; + } + default "3"; + description "aaa local authentication attempts max-fail"; + } // END of authMaxfail definition. + + leaf authDefaultFallback { + type cml_data_types:CML_BOOL_T; + description "aaa authentication login default fallback error"; + } // END of authDefaultFallback definition. + + leaf authLocalDefault { + type cml_data_types:CML_BOOL_T; + description "aaa authentication login default local"; + } // END of authLocalDefault definition. + + leaf authNoneDefault { + type cml_data_types:CML_BOOL_T; + description "aaa authentication login default none"; + } // END of authNoneDefault definition. + + leaf debugaaa { + type cml_data_types:CML_BOOL_T; + description "debug aaa"; + } // END of debugaaa definition. + + leaf debugaaaConfig { + type cml_data_types:CML_BOOL_T; + } // END of debugaaaConfig definition. + + + list aaaGroupServerNameRadius { + + description + "aaaGroupServerNameRadius"; + + config true; + key "groupWordRadius"; + + + leaf groupWordRadius { + type cml_data_types:CML_STRING_T { + length "1..127"; + } + } // END of groupWordRadius definition. + + + list aaaRadiusServer { + + description + "aaaRadiusServer"; + + config true; + key "hostAddr"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf hostAddr { + type cml_data_types:CML_HOSTPNAME_T; + } // END of hostAddr definition. + + } // End of aaaRadiusServer-list + } // End of aaaGroupServerNameRadius-list + + list aaaGroupServerNameTacacs { + + description + "aaaGroupServerNameTacacs"; + + config true; + key "groupWordTacacs"; + + + leaf groupWordTacacs { + type cml_data_types:CML_STRING_T { + length "1..127"; + } + } // END of groupWordTacacs definition. + + + list aaaTacacsServer { + + description + "aaaTacacsServer"; + + config true; + key "hostAddr"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf hostAddr { + type cml_data_types:CML_HOSTNAME_T; + } // END of hostAddr definition. + + } // End of aaaTacacsServer-list + } // End of aaaGroupServerNameTacacs-list + container console { + config true; + + description + "console"; + + leaf authConsoleGroup { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "aaa authentication login console"; + } // END of authConsoleGroup definition. + + leaf authConsoleFallback { + type cml_data_types:CML_BOOL_T; + description "aaa authentication login console fallback error"; + } // END of authConsoleFallback definition. + + leaf authLocal { + type cml_data_types:CML_BOOL_T; + description "aaa authentication login console"; + } // END of authLocal definition. + + leaf authNone { + type cml_data_types:CML_BOOL_T; + } // END of authNone definition. + + } // END of console-container definition. + } // END of aaa-container definition. + } // END of aaa-container definition. + + +} \ No newline at end of file diff --git a/yang-files/acl.yang b/yang-files/acl.yang new file mode 100644 index 00000000..d85144ae --- /dev/null +++ b/yang-files/acl.yang @@ -0,0 +1,435 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : acl.yang +* +*/ + +submodule acl { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Access List Related Configurations"; + + + revision "2017-03-09" { + description "Changing type of dscp,precedence and flowlabel."; + } + + revision "2017-02-22" { + description "Optimising the datamodel."; + } + + revision "2016-11-17" { + description "Initial version of datamodel."; + } + + grouping accessListAttr { + leaf remark { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remark definition. + + + list filterList { + + description + "filterList"; + + config true; + key "accessNumFL"; + + + leaf accessNumFL { + type cml_data_types:CML_UINT32_T { + range "1..268435453"; + } + } // END of accessNumFL definition. + + leaf filterTypeFL { + type cml_data_types:CML_ACL_FILTER_ACTION_T; + } // END of filterTypeFL definition. + + leaf logFL { + type cml_data_types:CML_BOOL_T; + default false; + } // END of logFL definition. + + leaf sampleFL { + type cml_data_types:CML_BOOL_T; + default false; + } // END of sampleFL definition. + + leaf enableOrDisableFL { + type cml_data_types:CML_ENABLE_DISABLE_T; + } // END of enableOrDisableFL definition. + + leaf updtSeqNum { + type cml_data_types:CML_INT32_T; + } // END of updtSeqNum definition. + + leaf packetFormatFM { + type cml_data_types:CML_ACL_ETHER_TYPE_T; + } // END of packetFormatFM definition. + + leaf cosFM { + type cml_data_types:CML_INT32_T { + range "0..7"; + } + } // END of cosFM definition. + + leaf vlanFM { + type cml_data_types:CML_INT32_T { + range "1..4094"; + } + } // END of vlanFM definition. + + leaf sMacFM { + type cml_data_types:CML_STRING_T { + pattern "[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}|[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}|[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}"; + length "0..255"; + } + } // END of sMacFM definition. + + leaf sMacMaskFM { + type cml_data_types:CML_STRING_T { + pattern "[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}|[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}|[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}"; + length "0..255"; + } + } // END of sMacMaskFM definition. + + leaf dMacFM { + type cml_data_types:CML_STRING_T { + pattern "[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}|[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}|[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}"; + length "0..255"; + } + } // END of dMacFM definition. + + leaf dMacMaskFM { + type cml_data_types:CML_STRING_T { + pattern "[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}\.[0-9a-fA-F]{4}|[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}\-[0-9a-fA-F]{2}|[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}:[0-9a-fA-F]{2}"; + length "0..255"; + } + } // END of dMacMaskFM definition. + + leaf sIpFC { + type cml_data_types:CML_ACL_ANY_IPV4_ADDR_T; + } // END of sIpFC definition. + + leaf dIpFC { + type cml_data_types:CML_ACL_ANY_IPV4_ADDR_T; + } // END of dIpFC definition. + + leaf srcAddrNotaFC { + type cml_data_types:CML_UINT8_T; + } // END of srcAddrNotaFC definition. + + leaf dstAddrNotaFC { + type cml_data_types:CML_UINT8_T; + } // END of dstAddrNotaFC definition. + + leaf protocolFC { + type cml_data_types:CML_ACL_IP_PROTO_ENUM_T; + } // END of protocolFC definition. + + leaf srcPortMinFC { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + } // END of srcPortMinFC definition. + + leaf srcPortMaxFC { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + } // END of srcPortMaxFC definition. + + leaf srcPortUdpFC { + type cml_data_types:CML_ACL_UDP_KEYWORD_T; + } // END of srcPortUdpFC definition. + + leaf srcPortTcpFC { + type cml_data_types:CML_ACL_TCP_KEYWORD_T; + } // END of srcPortTcpFC definition. + + leaf srcPortOperFC { + type cml_data_types:CML_ACL_PORT_OPERATIONS_T; + } // END of srcPortOperFC definition. + + leaf destPortMinFC { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + } // END of destPortMinFC definition. + + leaf destPortMaxFC { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + } // END of destPortMaxFC definition. + + leaf destPortUdpFC { + type cml_data_types:CML_ACL_UDP_KEYWORD_T; + } // END of destPortUdpFC definition. + + leaf destPortTcpFC { + type cml_data_types:CML_ACL_TCP_KEYWORD_T; + } // END of destPortTcpFC definition. + + leaf destPortOperFC { + type cml_data_types:CML_ACL_PORT_OPERATIONS_T; + } // END of destPortOperFC definition. + + leaf dscpFC { + type cml_data_types:CML_ACL_DSCP_ENUM_T; + } // END of dscpFC definition. + + leaf precedenceFC { + type cml_data_types:CML_ACL_PRECEDENCE_ENUM_T; + } // END of precedenceFC definition. + + leaf fragmentsFC { + type cml_data_types:CML_BOOL_T; + default true; + } // END of fragmentsFC definition. + + leaf tcpFlagFC { + type cml_data_types:CML_ACL_TCP_FLAGS_T; + } // END of tcpFlagFC definition. + + leaf icmpMsgFC { + type cml_data_types:CML_ACL_ICMP_OPTIONS_T; + } // END of icmpMsgFC definition. + + leaf icmpTypeFC { + type cml_data_types:CML_UINT8_T { + range "0..255"; + } + } // END of icmpTypeFC definition. + + leaf icmpCodeFC { + type cml_data_types:CML_UINT8_T { + range "0..255"; + } + } // END of icmpCodeFC definition. + + leaf igmpMsgFC { + type cml_data_types:CML_INT16_T; + } // END of igmpMsgFC definition. + + leaf protocolFZE { + type cml_data_types:CML_ACL_IP_PROTO_ENUM_T; + } // END of protocolFZE definition. + + leaf srcAddrFZE { + type cml_data_types:CML_ACL_ANY_IPV6_ADDR_T; + } // END of srcAddrFZE definition. + + leaf srcPortOperFZE { + type cml_data_types:CML_ACL_PORT_OPERATIONS_T; + } // END of srcPortOperFZE definition. + + leaf srcPortMaxFZE { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + } // END of srcPortMaxFZE definition. + + leaf srcPortMinFZE { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + } // END of srcPortMinFZE definition. + + leaf srcPortUdpFZE { + type cml_data_types:CML_ACL_UDP_KEYWORD_T; + } // END of srcPortUdpFZE definition. + + leaf srcPortTcpFZE { + type cml_data_types:CML_ACL_TCP_KEYWORD_T; + } // END of srcPortTcpFZE definition. + + leaf destAddrFZE { + type cml_data_types:CML_ACL_ANY_IPV6_ADDR_T; + } // END of destAddrFZE definition. + + leaf destPortOperFZE { + type cml_data_types:CML_ACL_PORT_OPERATIONS_T; + } // END of destPortOperFZE definition. + + leaf destPortMaxFZE { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + } // END of destPortMaxFZE definition. + + leaf destPortMinFZE { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + } // END of destPortMinFZE definition. + + leaf destPortUdpFZE { + type cml_data_types:CML_ACL_UDP_KEYWORD_T; + } // END of destPortUdpFZE definition. + + leaf destPortTcpFZE { + type cml_data_types:CML_ACL_TCP_KEYWORD_T; + } // END of destPortTcpFZE definition. + + leaf flowLabelFZE { + type cml_data_types:CML_INT32_T { + range "0..1048575"; + } + } // END of flowLabelFZE definition. + + leaf fragmentsFZE { + type cml_data_types:CML_BOOL_T; + default true; + } // END of fragmentsFZE definition. + + leaf dscpFZE { + type cml_data_types:CML_ACL_DSCP_ENUM_T; + } // END of dscpFZE definition. + + leaf tcpFlagFZE { + type cml_data_types:CML_ACL_TCP_FLAGS_T; + } // END of tcpFlagFZE definition. + + } // End of filterList-list + container defaultFilter { + config true; + + description + "defaultFilter"; + + leaf filterTypeDF { + type cml_data_types:CML_ACL_FILTER_ACTION_T; + } // END of filterTypeDF definition. + + leaf enableOrDisableDF { + type cml_data_types:CML_ENABLE_DISABLE_T; + } // END of enableOrDisableDF definition. + + leaf logDF { + type cml_data_types:CML_BOOL_T; + default false; + } // END of logDF definition. + + leaf sampleDF { + type cml_data_types:CML_BOOL_T; + default false; + } // END of sampleDF definition. + + } // END of defaultFilter-container definition. + } // END of accessListAttr definition. + + grouping accessMasterIPv4-grouping { + container accessMasterIPv4 { + config true; + + description + "accessMasterIPv4"; + + leaf vrId { + type cml_data_types:CML_INT32_T; + } // END of vrId definition. + + leaf afiIPv4 { + type cml_data_types:CML_INT32_T; + default "1"; + } // END of afiIPv4 definition. + + + list accessListIPv4 { + + description + "accessListIPv4"; + + config true; + key "aclNameIPv4"; + + + leaf aclNameIPv4 { + type cml_data_types:CML_STRING_T { + length "1..64"; + } + } // END of aclNameIPv4 definition. + + uses accessListAttr; + } // End of accessListIPv4-list + + list accessListMac { + + description + "accessListMac"; + + config true; + key "aclNameMAC"; + + + leaf aclNameMAC { + type cml_data_types:CML_STRING_T { + length "1..64"; + } + } // END of aclNameMAC definition. + + uses accessListAttr; + } // End of accessListMac-list + } // END of accessMasterIPv4-container definition. + } // END of accessMasterIPv4-container definition. + + grouping accessMasterIPv6-grouping { + container accessMasterIPv6 { + config true; + + description + "accessMasterIPv6"; + + leaf vrId { + type cml_data_types:CML_INT32_T; + } // END of vrId definition. + + leaf afiIPv6 { + type cml_data_types:CML_INT32_T; + default "2"; + } // END of afiIPv6 definition. + + + list accessListIPv6 { + + description + "accessListIPv6"; + + config true; + key "aclNameIPv6"; + + + leaf aclNameIPv6 { + type cml_data_types:CML_STRING_T { + length "1..64"; + } + } // END of aclNameIPv6 definition. + + uses accessListAttr; + } // End of accessListIPv6-list + } // END of accessMasterIPv6-container definition. + } // END of accessMasterIPv6-container definition. + + +} \ No newline at end of file diff --git a/yang-files/aclinterface.yang b/yang-files/aclinterface.yang new file mode 100644 index 00000000..b51f2453 --- /dev/null +++ b/yang-files/aclinterface.yang @@ -0,0 +1,69 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : aclinterface.yang +* +*/ + +submodule aclinterface { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Access List Interface Related Configurations"; + + + revision "2016-11-17" { + description "Initial version of datamodel."; + } + + + + grouping aclInterface-grouping { + list aclInterface { + + description + "ACL interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf ifAclType { + type cml_data_types:CML_ACL_TYPES_T; + } // END of ifAclType definition. + + leaf ifAclName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifAclName definition. + + leaf ifAclDir { + type cml_data_types:CML_ACL_PACKET_DIR_T; + } // END of ifAclDir definition. + + } // End of aclInterface-list + } // END of aclInterface-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/auth.yang b/yang-files/auth.yang new file mode 100644 index 00000000..0f517fac --- /dev/null +++ b/yang-files/auth.yang @@ -0,0 +1,253 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : auth.yang +* +*/ + +submodule auth { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "auth configurations"; + + + revision "2017-02-20" { + description "Fixed rollback issue(JIRA-13609)."; + } + + revision "2017-02-10" { + description "Initial version of AUTHD datamodel."; + } + + + + grouping authPort-grouping { + list authPort { + + description + "AUTH interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf dot1xinitialize { + type cml_data_types:CML_BOOL_T; + } // END of dot1xinitialize definition. + + leaf authmacPortControl { + if-feature feature_list:HAVE_MAC_AUTH; + type cml_data_types:CML_ENABLE_DISABLE_T; + } // END of authmacPortControl definition. + + leaf authmacPortMode { + if-feature feature_list:HAVE_MAC_AUTH; + type cml_data_types:CML_AUTH_PORT_SEC_MODE; + default "shutdown"; + } // END of authmacPortMode definition. + + leaf RestrictVlan { + if-feature feature_list:HAVE_MAC_AUTH; + type cml_data_types:CML_UINT32_T { + range "2..4094"; + } + } // END of RestrictVlan definition. + + leaf DropTraffic { + if-feature feature_list:HAVE_MAC_AUTH; + type cml_data_types:CML_BOOL_T; + default true; + } // END of DropTraffic definition. + + leaf dynamicVlanCreation { + if-feature feature_list:HAVE_MAC_AUTH; + type cml_data_types:CML_ENABLE_DISABLE_T; + default "disable"; + } // END of dynamicVlanCreation definition. + + leaf macAddressAging { + if-feature feature_list:HAVE_MAC_AUTH; + type cml_data_types:CML_ENABLE_DISABLE_T; + default "enable"; + } // END of macAddressAging definition. + + leaf protocolVersion { + type cml_data_types:CML_UINT32_T { + range "1..2"; + } + default "2"; + } // END of protocolVersion definition. + + leaf portCtrl { + type cml_data_types:CML_AUTH_PORT_CTRL; + default "force-authorized"; + } // END of portCtrl definition. + + container authCtrlDir { + config true; + + description + "authCtrlDir"; + + leaf adminControlledDirections { + type cml_data_types:CML_AUTH_CTRL_DIR_T; + } // END of adminControlledDirections definition. + + } // END of authCtrlDir-container definition. + container authPae { + config true; + + description + "Authenticator PAE state machine"; + + leaf quietPeriod { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "60"; + } // END of quietPeriod definition. + + leaf reauthMax { + type cml_data_types:CML_UINT32_T { + range "1..10"; + } + default "2"; + } // END of reauthMax definition. + + leaf txPeriod { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "30"; + } // END of txPeriod definition. + + } // END of authPae-container definition. + container reauthTimer { + config true; + + description + "Reauthentication Timer state machine"; + + leaf reAuthPeriod { + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + default "3600"; + } // END of reAuthPeriod definition. + + leaf reAuthEnabled { + type cml_data_types:CML_BOOL_T; + } // END of reAuthEnabled definition. + + } // END of reauthTimer-container definition. + container authBe { + config true; + + description + "authenticator be state machine"; + + leaf suppTimeout { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "30"; + } // END of suppTimeout definition. + + leaf serverTimeout { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "30"; + } // END of serverTimeout definition. + + } // END of authBe-container definition. + container authKeyXmit { + config true; + + description + "Authenticator Key Transmit State Machine"; + + leaf keyTxEnabled { + type cml_data_types:CML_BOOL_T; + } // END of keyTxEnabled definition. + + } // END of authKeyXmit-container definition. + } // End of authPort-list + } // END of authPort-grouping definition. + + grouping authmac-grouping { + container authmac { + config true; + + description + "authmac"; + + leaf systemAuthCtrl { + type cml_data_types:CML_BOOL_T; + } // END of systemAuthCtrl definition. + + leaf portControl { + type cml_data_types:CML_BOOL_T; + } // END of portControl definition. + + leaf initialize { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of initialize definition. + + leaf reauthenticate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of reauthenticate definition. + + } // END of authmac-container definition. + } // END of authmac-container definition. + + grouping debugdot1x-grouping { + container debugdot1x { + config true; + + description + "debugdot1x"; + + leaf debugtermFlag { + type cml_data_types:CML_DOT1X_DEBUG_T; + } // END of debugtermFlag definition. + + leaf debugconfFlag { + type cml_data_types:CML_DOT1X_DEBUG_T; + } // END of debugconfFlag definition. + + } // END of debugdot1x-container definition. + } // END of debugdot1x-container definition. + + +} \ No newline at end of file diff --git a/yang-files/bgp.yang b/yang-files/bgp.yang index 0b7f3ff3..de72bb95 100644 --- a/yang-files/bgp.yang +++ b/yang-files/bgp.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -47,14 +47,12 @@ submodule bgp { leaf vrId { type cml_data_types:CML_UINT32_T; - config true; } // END of vrId definition. leaf bgpAs { type cml_data_types:CML_UINT32_T { range "1..4294967295"; } - config true; } // END of bgpAs definition. leaf bgpTableVersion { @@ -69,24 +67,23 @@ submodule bgp { leaf routerIpAddr { type cml_data_types:CML_IPV4_ADDR_T; - config true; } // END of routerIpAddr definition. leaf routerRunIpAddr { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of routerRunIpAddr definition. leaf clusterId { type cml_data_types:CML_CLUSTER_ID_T; - config true; } // END of clusterId definition. leaf confedId { type cml_data_types:CML_INT32_T { range "1..65535"; } - config true; } // END of confedId definition. leaf keepAlive { @@ -94,7 +91,6 @@ submodule bgp { range "0..65535"; } default "30"; - config true; } // END of keepAlive definition. leaf holdTime { @@ -102,7 +98,6 @@ submodule bgp { range "0..65535"; } default "90"; - config true; description "holdtime"; } // END of holdTime definition. @@ -111,17 +106,14 @@ submodule bgp { range "0..4294967295"; } default "100"; - config true; } // END of localPref definition. leaf setGshutCapable { type cml_data_types:CML_BOOL_T; - config true; } // END of setGshutCapable definition. leaf setGshut { type cml_data_types:CML_BOOL_T; - config true; } // END of setGshut definition. leaf gshutLocalPref { @@ -129,18 +121,15 @@ submodule bgp { range "0..4294967295"; } default "0"; - config true; } // END of gshutLocalPref definition. leaf setInboundRouteFilter { if-feature feature_list:HAVE_VRF; type cml_data_types:CML_BOOL_T; - config true; } // END of setInboundRouteFilter definition. leaf setLogNbrChanges { type cml_data_types:CML_BOOL_T; - config true; } // END of setLogNbrChanges definition. leaf scanInterval { @@ -148,32 +137,29 @@ submodule bgp { range "0..60"; } default "60"; - config true; } // END of scanInterval definition. leaf distance { type cml_data_types:CML_UINT8_T { range "1..255"; } - config true; } // END of distance definition. leaf distanceSrcIp { type cml_data_types:CML_IPV4_PREFIX_T; - config true; description "administrative distance for ip source prefix"; } // END of distanceSrcIp definition. leaf distanceACLName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } description "administrative distance with access list name"; } // END of distanceACLName definition. leaf setMplsResolution { if-feature feature_list:HAVE_MPLS; type cml_data_types:CML_BOOL_T; - config true; description "mpls lsp resolution"; } // END of setMplsResolution definition. @@ -183,7 +169,6 @@ submodule bgp { range "1..3600"; } default "90"; - config true; } // END of restartTime definition. leaf stalepathTime { @@ -192,7 +177,6 @@ submodule bgp { range "1..3600"; } default "360"; - config true; } // END of stalepathTime definition. leaf deferTime { @@ -201,102 +185,102 @@ submodule bgp { range "1..3600"; } default "120"; - config true; } // END of deferTime definition. leaf bestpathDontCompareOriginator { type cml_data_types:CML_BOOL_T; - config true; } // END of bestpathDontCompareOriginator definition. leaf bestpathTieBreak { type cml_data_types:CML_BOOL_T; - config true; } // END of bestpathTieBreak definition. leaf ipv4Unicast { type cml_data_types:CML_BOOL_T; - config true; } // END of ipv4Unicast definition. leaf deterministicMed { type cml_data_types:CML_BOOL_T; - config true; } // END of deterministicMed definition. leaf compareMed { type cml_data_types:CML_BOOL_T; - config true; } // END of compareMed definition. leaf bestpathAspath { type cml_data_types:CML_BOOL_T; - config true; description "bgp bestpath as-path ignore"; } // END of bestpathAspath definition. leaf bestpathCompareConfed { type cml_data_types:CML_BOOL_T; - config true; } // END of bestpathCompareConfed definition. leaf bestpathCompareRouterId { type cml_data_types:CML_BOOL_T; - config true; } // END of bestpathCompareRouterId definition. leaf enforceFirst { type cml_data_types:CML_BOOL_T; - config true; } // END of enforceFirst definition. leaf externalFailover { type cml_data_types:CML_BOOL_T; - config true; } // END of externalFailover definition. + leaf ebgpMaxPath { + type cml_data_types:CML_INT32_T { + range "2..64"; + } + default "2"; + description "multipath ecmp numbers for ebgp"; + } // END of ebgpMaxPath definition. + + leaf ibgpMaxPath { + type cml_data_types:CML_INT32_T { + range "2..64"; + } + default "2"; + description "multipath ecmp numbers for ibgp"; + } // END of ibgpMaxPath definition. + leaf bgpShowTypeStr { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of bgpShowTypeStr definition. leaf autoSummary { type cml_data_types:CML_BOOL_T; - config true; } // END of autoSummary definition. leaf setSyncFlag { type cml_data_types:CML_BOOL_T; - config true; } // END of setSyncFlag definition. leaf setNwSyncFlag { type cml_data_types:CML_BOOL_T; - config true; } // END of setNwSyncFlag definition. leaf localAsCount { type cml_data_types:CML_UINT8_T { range "2..64"; } - config true; description "bgp as-local-count"; } // END of localAsCount definition. leaf grstSet { if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_BOOL_T; - config true; } // END of grstSet definition. leaf setClientReflect { type cml_data_types:CML_BOOL_T; - config true; } // END of setClientReflect definition. leaf setDampeningFlag { type cml_data_types:CML_BOOL_T; - config true; } // END of setDampeningFlag definition. leaf halfLife { @@ -304,7 +288,6 @@ submodule bgp { range "1..45"; } default "15"; - config true; description "bgp route dampening reachability half-life time"; } // END of halfLife definition. @@ -312,21 +295,18 @@ submodule bgp { type cml_data_types:CML_UINT32_T { range "1..20000"; } - config true; } // END of reusePenalty definition. leaf suppressPenalty { type cml_data_types:CML_UINT32_T { range "1..20000"; } - config true; } // END of suppressPenalty definition. leaf maxSuppress { type cml_data_types:CML_UINT32_T { range "1..255"; } - config true; description "bgp route dampening to start suppressing a route"; } // END of maxSuppress definition. @@ -334,14 +314,14 @@ submodule bgp { type cml_data_types:CML_UINT32_T { range "1..45"; } - config true; description "BGP route dampening Un-reachability Half-life time"; } // END of unreachHalfLife definition. leaf dampeningRmapName { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } default "NULL"; - config true; } // END of dampeningRmapName definition. leaf rfdMaxPenaltyCeil { @@ -368,23 +348,19 @@ submodule bgp { leaf medType { type cml_data_types:CML_BGP_MED_TYPE_T; - config true; } // END of medType definition. leaf medConfedMissingAsWorst { type cml_data_types:CML_BOOL_T; - config true; description "bgp bestpath med confed missing-as-worst"; } // END of medConfedMissingAsWorst definition. leaf medMissingAsWorstConfed { type cml_data_types:CML_BOOL_T; - config true; } // END of medMissingAsWorstConfed definition. leaf gracefulReset { type cml_data_types:CML_BOOL_T; - config true; } // END of gracefulReset definition. leaf distanceEbgp { @@ -392,7 +368,6 @@ submodule bgp { range "1..255"; } default "20"; - config true; } // END of distanceEbgp definition. leaf distanceIbgp { @@ -400,7 +375,6 @@ submodule bgp { range "1..255"; } default "200"; - config true; } // END of distanceIbgp definition. leaf distanceLocal { @@ -408,40 +382,36 @@ submodule bgp { range "1..255"; } default "200"; - config true; description "distance bgp"; } // END of distanceLocal definition. leaf multipathRelax { type cml_data_types:CML_BOOL_T; - config true; } // END of multipathRelax definition. leaf tableMap { if-feature feature_list:HAVE_BGP_TABLE_MAP; - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } description "bgp table-map"; } // END of tableMap definition. leaf tableMapFilter { if-feature feature_list:HAVE_BGP_TABLE_MAP; type cml_data_types:CML_BOOL_T; - config true; description "bgp table-map filter"; } // END of tableMapFilter definition. leaf additionalPaths { if-feature feature_list:HAVE_BGP_ADD_PATH; type cml_data_types:BGP_ADDITIONAL_PATH_TYPE_T; - config true; description "additional paths"; } // END of additionalPaths definition. leaf addPathSelectAll { if-feature feature_list:HAVE_BGP_ADD_PATH; type cml_data_types:CML_BOOL_T; - config true; description "select all path"; } // END of addPathSelectAll definition. @@ -450,7 +420,6 @@ submodule bgp { type cml_data_types:CML_UINT8_T { range "2..3"; } - config true; description "select best path"; } // END of bestCount definition. @@ -468,36 +437,10 @@ submodule bgp { type cml_data_types:CML_INT32_T { range "1..65535"; } - config true; } // END of peerConfedId definition. } // End of bgpConfed-list - list multipath { - - description - "multipath"; - - config true; - key "bgpType"; - - - leaf bgpType { - type cml_data_types:CML_BGP_MAXPATH_T; - config true; - } // END of bgpType definition. - - leaf multipathsNum { - mandatory true; - type cml_data_types:CML_INT32_T { - range "2..64"; - } - config true; - description "multipath ecmp numbers for ibgp or ebgp"; - } // END of multipathsNum definition. - - } // End of multipath-list - list bgpNetworkList { description @@ -508,533 +451,218 @@ submodule bgp { leaf localAddr { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of localAddr definition. - leaf localAddrMask { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - description "network address with mask"; - } // END of localAddrMask definition. - leaf networkRmapName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of networkRmapName definition. leaf backdoor { type cml_data_types:CML_BOOL_T; default false; - config true; description "network address with backdoor"; } // END of backdoor definition. - } // End of bgpNetworkList-list - - list networkList { - - description - "networkList"; - - config false; - key "networkAddr"; - - - leaf networkAddr { - type cml_data_types:CML_STRING_T; + leaf ntwkPathCountRoute { + type cml_data_types:CML_INT32_T; config false; - } // END of networkAddr definition. + } // END of ntwkPathCountRoute definition. - leaf bgpLongerPrefixCmd { - type cml_data_types:CML_INT32_T; + leaf noAdvertiseRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of bgpLongerPrefixCmd definition. + } // END of noAdvertiseRoute definition. - leaf rfdFlapCount { - type cml_data_types:CML_INT32_T; + leaf noExportRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of rfdFlapCount definition. + } // END of noExportRoute definition. - leaf dampInfoTimes { - type cml_data_types:CML_STRING_T; + leaf localAsRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of dampInfoTimes definition. + } // END of localAsRoute definition. - leaf showBgpNtwkCmd { - type cml_data_types:CML_INT32_T; + leaf suppressRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of showBgpNtwkCmd definition. + } // END of suppressRoute definition. - leaf peerNtwkWeight { + leaf ntwkBestPathCountRoute { type cml_data_types:CML_INT32_T; config false; - } // END of peerNtwkWeight definition. + } // END of ntwkBestPathCountRoute definition. - leaf flapTimeReuseList { - type cml_data_types:CML_STRING_T; + leaf defIPRoutingTbl { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of flapTimeReuseList definition. + } // END of defIPRoutingTbl definition. - leaf flapRecordDuration { - type cml_data_types:CML_STRING_T; + leaf advPeerAddrRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of flapRecordDuration definition. + } // END of advPeerAddrRoute definition. - leaf bgpDampPathCmd { - type cml_data_types:CML_INT32_T; + leaf advPeerGroupNameRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of bgpDampPathCmd definition. + } // END of advPeerGroupNameRoute definition. - leaf bgpDampFlapCmd { - type cml_data_types:CML_INT32_T; + leaf advAnyPeer { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of bgpDampFlapCmd definition. + } // END of advAnyPeer definition. - leaf bgpIncosistentAsCmd { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpIncosistentAsCmd definition. - leaf dampTimeToReuse { - type cml_data_types:CML_STRING_T; - config false; - } // END of dampTimeToReuse definition. + list nextHop { + + description + "nextHop"; - leaf ipv4Cmd { - type cml_data_types:CML_INT32_T; config false; - } // END of ipv4Cmd definition. + key "nextHopAddr"; - leaf checkCidr { - type cml_data_types:CML_INT32_T; - config false; - } // END of checkCidr definition. + + leaf nextHopAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopAddr definition. - leaf bgpCommunityCmd { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpCommunityCmd definition. + uses nextHopRunTimeAttr; + } // End of nextHop-list + } // End of bgpNetworkList-list - leaf bgpInfoFlag { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpInfoFlag definition. + list bgpAggregateAddrList { + + description + "bgpAggregateAddrList"; - leaf bgpAttrMpNexthopGlobalIn { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAttrMpNexthopGlobalIn definition. + config true; + key "aggregateAddr"; - leaf bgpAttrNextHop { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAttrNextHop definition. + + leaf aggregateAddr { + type cml_data_types:CML_IPV4_PREFIX_T; + description "aggregate prefix"; + } // END of aggregateAddr definition. - leaf bgpAttrMpNexthopGlobal { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAttrMpNexthopGlobal definition. + leaf aggregateAsSet { + mandatory true; + type cml_data_types:CML_BOOL_T; + } // END of aggregateAsSet definition. - leaf bgpAttrNextHopLen { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAttrNextHopLen definition. + leaf aggregateSummOnly { + mandatory true; + type cml_data_types:CML_BOOL_T; + description "aggregate-address summary-only"; + } // END of aggregateSummOnly definition. - leaf bgpAttrMpNexthopLocal { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAttrMpNexthopLocal definition. + } // End of bgpAggregateAddrList-list - leaf bgpUpTime { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpUpTime definition. + list bgpRedistList { + + description + "bgpRedistList"; - leaf medFlagType { - type cml_data_types:CML_STRING_T; - config false; - } // END of medFlagType definition. + config true; + key "redistType"; - leaf bgpMedVal { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpMedVal definition. + + leaf redistType { + type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; + } // END of redistType definition. - leaf bgpAsPathStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAsPathStr definition. - leaf bgpAsPath4BStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAsPath4BStr definition. + list bgpRmap { + + description + "bgpRmap"; - leaf bgpAsPathOrigin { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAsPathOrigin definition. + config true; + key "redistRmapName"; - leaf bgpAsPath4BOrigin { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAsPath4BOrigin definition. + + leaf redistRmapName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "redistribute route map reference"; + } // END of redistRmapName definition. - } // End of networkList-list + } // End of bgpRmap-list + } // End of bgpRedistList-list - list bgpShowRoute { + list bgpRedistOspf { description - "bgpShowRoute"; + "bgpRedistOspf"; - config false; - key "networkAddrRoute"; + config true; + key "redistOspf"; - leaf networkAddrRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of networkAddrRoute definition. + leaf redistOspf { + type cml_data_types:CML_BOOL_T; + description "redistribute with ospf"; + } // END of redistOspf definition. - leaf ntwkPathCountRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of ntwkPathCountRoute definition. - leaf ntwkPrefixBestPathCountRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of ntwkPrefixBestPathCountRoute definition. + list bgpRmap { + + description + "bgpRmap"; - leaf noAdvertiseRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of noAdvertiseRoute definition. + config true; + key "redistRmapName"; - leaf noExportRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of noExportRoute definition. + + leaf redistRmapName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "redistribute with route map reference"; + } // END of redistRmapName definition. - leaf localAsRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of localAsRoute definition. + } // End of bgpRmap-list + } // End of bgpRedistOspf-list - leaf suppressRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of suppressRoute definition. + list bgpRedistOspfNo { + + description + "bgpRedistOspfNo"; - leaf advPeerGroupRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of advPeerGroupRoute definition. + config true; + key "redistOspfNo"; - leaf advPeerAddrRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of advPeerAddrRoute definition. - - leaf advNonPeerGroupRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of advNonPeerGroupRoute definition. - - leaf advPeerGroupNameRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of advPeerGroupNameRoute definition. - - container routeShowVtyOut { - config false; - - description - "routeShowVtyOut"; - - leaf ibgpMetricRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of ibgpMetricRoute definition. - - leaf routeBgpAsPathRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeBgpAsPathRoute definition. - - leaf aggregateAsRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of aggregateAsRoute definition. - - leaf aggregatorAddrRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of aggregatorAddrRoute definition. - - leaf reflectorClientRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of reflectorClientRoute definition. - - leaf routeDampeningFlagRoute { - type cml_data_types:CML_BOOL_T; - config false; - } // END of routeDampeningFlagRoute definition. - - leaf historyRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of historyRoute definition. - - leaf routeAttrMpNexthopGlobalInRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeAttrMpNexthopGlobalInRoute definition. - - leaf routeAttrNextHopRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeAttrNextHopRoute definition. - - leaf routeAttrMpNexthopGlobalRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeAttrMpNexthopGlobalRoute definition. - - leaf routeAttrMpNexthopLocalRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeAttrMpNexthopLocalRoute definition. - - leaf routeAttrMpNexthopLocal1Route { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeAttrMpNexthopLocal1Route definition. - - leaf nhopValidRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of nhopValidRoute definition. - - leaf routePeerAddrRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of routePeerAddrRoute definition. - - leaf originatorIdRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of originatorIdRoute definition. - - leaf originatorId1Route { - type cml_data_types:CML_STRING_T; - config false; - } // END of originatorId1Route definition. - - leaf networkRemoteAddrRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of networkRemoteAddrRoute definition. - - leaf ntwkBgpOriginRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of ntwkBgpOriginRoute definition. - - leaf routeMedFlagTypeRoute { - type cml_data_types:CML_BOOL_T; - config false; - } // END of routeMedFlagTypeRoute definition. - - leaf routeMedValRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeMedValRoute definition. - - leaf routeLocalPrefRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeLocalPrefRoute definition. - - leaf routeWeightRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeWeightRoute definition. - - leaf briLabelRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of briLabelRoute definition. - - leaf routeValidStateRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeValidStateRoute definition. - - leaf bgpInfoStaleRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpInfoStaleRoute definition. - - leaf routePeerLocalAsRoute { - type cml_data_types:CML_BOOL_T; - config false; - } // END of routePeerLocalAsRoute definition. - - leaf bgpConfedPeerRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpConfedPeerRoute definition. - - leaf bgpInfoTypeRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpInfoTypeRoute definition. - - leaf ecmpMultiCandidateRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of ecmpMultiCandidateRoute definition. - - leaf multiInstalledRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiInstalledRoute definition. - - leaf routeSyncFlagRoute { - type cml_data_types:CML_BOOL_T; - config false; - } // END of routeSyncFlagRoute definition. - - leaf atomicAggregateRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of atomicAggregateRoute definition. - - leaf bgpInfoSelectedRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpInfoSelectedRoute definition. - - leaf routeCommNameRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeCommNameRoute definition. - - leaf clusterListRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of clusterListRoute definition. - - leaf routeGetPenaltyRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeGetPenaltyRoute definition. - - leaf routRecordTimeRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of routRecordTimeRoute definition. - - leaf routeGetFlapCountRoute { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeGetFlapCountRoute definition. - - leaf routeGetReuseTimeRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeGetReuseTimeRoute definition. - - leaf lastUpdateRoute { - type cml_data_types:CML_STRING_T; - config false; - } // END of lastUpdateRoute definition. - - } // END of routeShowVtyOut-container definition. - } // End of bgpShowRoute-list - - list bgpAggregateAddrList { - - description - "bgpAggregateAddrList"; - - config true; - key "aggregateAddr"; - - - leaf aggregateAddr { - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - description "aggregate prefix"; - } // END of aggregateAddr definition. - - leaf aggregateAsSet { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of aggregateAsSet definition. - - leaf aggregateSummOnly { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - description "aggregate-address summary-only"; - } // END of aggregateSummOnly definition. - - } // End of bgpAggregateAddrList-list - - list bgpRedistList { - - description - "bgpRedistList"; - - config true; - key "redistType"; - - - leaf redistType { - type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; - config true; - } // END of redistType definition. - - - list bgpRmap { - - description - "bgpRmap"; - - config true; - key "redistRmapName"; - - - leaf redistRmapName { - type cml_data_types:CML_STRING_T; - config true; - description "redistribute route map reference"; - } // END of redistRmapName definition. - - } // End of bgpRmap-list - } // End of bgpRedistList-list - - list bgpRedistOspf { - - description - "bgpRedistOspf"; - - config true; - key "redistOspfNo"; - - - leaf redistOspfNo { - type cml_data_types:CML_UINT32_T { - range "0..65535"; - } - config true; - description "redistribute with ospf proc Id"; - } // END of redistOspfNo definition. + + leaf redistOspfNo { + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + description "redistribute with ospf proc Id"; + } // END of redistOspfNo definition. list bgpRmap { @@ -1047,13 +675,14 @@ submodule bgp { leaf redistOspfRmap { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } description "redistribute with ospf proc Id and route map reference"; } // END of redistOspfRmap definition. } // End of bgpRmap-list - } // End of bgpRedistOspf-list + } // End of bgpRedistOspfNo-list list bgpPeerGroup { @@ -1065,8 +694,9 @@ submodule bgp { leaf peerGroupName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } description "neighbor peer-group"; } // END of peerGroupName definition. @@ -1083,7 +713,6 @@ submodule bgp { leaf afi { type cml_data_types:CML_AFI_TYPE_T; - config true; } // END of afi definition. @@ -1098,4594 +727,3542 @@ submodule bgp { leaf safi { type cml_data_types:CML_SAFI_TYPE_T; - config true; } // END of safi definition. - leaf vrfName { - type cml_data_types:CML_STRING_T; - default "default"; + + list vrfAf { + + description + "vrfAf"; + config true; - } // END of vrfName definition. + key "vrfName"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + } // End of vrfAf-list } // End of bgpSubAddressFamily-list } // End of bgpAddressFamily-list - list bgpPeer { + list vrfAddressFamily { description - "bgpPeer"; + "vrfAddressFamily"; config true; - key "peerAddr"; + key "afi"; - leaf peerAddr { - type cml_data_types:CML_STRING_T; - config true; - description "neighbor"; - } // END of peerAddr definition. + leaf afi { + type cml_data_types:CML_VRF_AFI_TYPE_T; + } // END of afi definition. - leaf peerAs { - mandatory true; - type cml_data_types:CML_UINT32_T { - range "1..4294967295"; - } - config true; - description "Neighbors AS number"; - } // END of peerAs definition. - leaf peerAdditionalPaths { - if-feature feature_list:HAVE_BGP_ADD_PATH; - type cml_data_types:BGP_PEER_ADDITIONAL_PATH_TYPE_T; - config true; - description "additional paths"; - } // END of peerAdditionalPaths definition. + list vrfSubAddressFamily { + + description + "vrfSubAddressFamily"; - leaf peerAddPathSelectAll { - if-feature feature_list:HAVE_BGP_ADD_PATH; - type cml_data_types:CML_BOOL_T; config true; - description "Advertise additional path"; - } // END of peerAddPathSelectAll definition. + key "safi"; - leaf peerBestCount { - if-feature feature_list:HAVE_BGP_ADD_PATH; - type cml_data_types:CML_UINT8_T { - range "2..3"; - } - config true; - description "Advertise best additional path"; - } // END of peerBestCount definition. + + leaf safi { + type cml_data_types:CML_VRF_SAFI_TYPE_T; + } // END of safi definition. - leaf setGracefulShut { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor g-shut"; - } // END of setGracefulShut definition. - - leaf bgpPeerBfd { - type cml_data_types:CML_BOOL_T; - config true; - description "fall-over detection"; - } // END of bgpPeerBfd definition. - - leaf peerBfdMh { - type cml_data_types:CML_BOOL_T; - config true; - description "bfd multihop"; - } // END of peerBfdMh definition. - - leaf gshutTimer { - type cml_data_types:CML_UINT32_T { - range "10..65535"; - } - config true; - description "neighbor g-shut-timer"; - } // END of gshutTimer definition. - - leaf peerRestartTime { - if-feature feature_list:HAVE_RESTART; - type cml_data_types:CML_UINT32_T { - range "1..3600"; - } - config true; - description "neighbor restart-time"; - } // END of peerRestartTime definition. - - leaf peerLocalAs { - type cml_data_types:CML_UINT32_T { - range "1..4294967295"; - } - config true; - description "neighbor local-as"; - } // END of peerLocalAs definition. - - leaf neighborAttrUnchanged { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor attribute-unchanged"; - } // END of neighborAttrUnchanged definition. - - leaf neighborAttrUnchangedAsPath { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor attribute-unchanged as-path"; - } // END of neighborAttrUnchangedAsPath definition. - - leaf neighborAttrUnchangedNexthop { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor attribute-unchanged next-hop"; - } // END of neighborAttrUnchangedNexthop definition. - - leaf neighborAttrUnchangedMed { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor attribute-unchanged med"; - } // END of neighborAttrUnchangedMed definition. - - leaf neighborCapabilityGrst { - if-feature feature_list:HAVE_RESTART; - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor capability graceful-restart"; - } // END of neighborCapabilityGrst definition. - - leaf maxPathIbgp { - type cml_data_types:CML_INT32_T; - config false; - } // END of maxPathIbgp definition. - - leaf asLocalCount { - type cml_data_types:CML_INT32_T; - default "1"; - config false; - } // END of asLocalCount definition. - - leaf cfgMaxPathEbgp { - type cml_data_types:CML_INT32_T; - config false; - } // END of cfgMaxPathEbgp definition. - - leaf maxPathEbgp { - type cml_data_types:CML_INT32_T; - config false; - } // END of maxPathEbgp definition. - - leaf cfgMaxPathIbgp { - type cml_data_types:CML_INT32_T; - config false; - } // END of cfgMaxPathIbgp definition. - - leaf bgpRouterId { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpRouterId definition. - - leaf bgpCommunityCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpCommunityCount definition. - - leaf checkAfc { - type cml_data_types:CML_INT32_T; - config false; - } // END of checkAfc definition. - - leaf peerConfedIdCheck { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerConfedIdCheck definition. - - leaf peerAdvExtAsnCap { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerAdvExtAsnCap definition. - - leaf peerAndExtAsnCap { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerAndExtAsnCap definition. - - leaf peerRecvExtAsnCap { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerRecvExtAsnCap definition. - - leaf peerVrfName { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerVrfName definition. - - leaf addFamilystring { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilystring definition. - - leaf safiUnicastAdv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiUnicastAdv definition. - - leaf safiUnicastAnd { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiUnicastAnd definition. - - leaf safiUnicastRecv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiUnicastRecv definition. - - leaf addFamilyMultiString { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyMultiString definition. - - leaf safiMulticastAdv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiMulticastAdv definition. - - leaf safiMulticastAnd { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiMulticastAnd definition. - - leaf safiMulticastRecv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiMulticastRecv definition. - - leaf addFamilyVPN4String { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyVPN4String definition. - - leaf safiVPNv4Adv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv4Adv definition. - - leaf safiVPNv4And { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv4And definition. - - leaf safiVPNv4Recv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv4Recv definition. - - leaf addFamilyIPV6String { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyIPV6String definition. - - leaf safiIPV6UnicastAdv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6UnicastAdv definition. - - leaf safiIPV6UnicastAnd { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6UnicastAnd definition. - - leaf safiIPV6UnicastRecv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6UnicastRecv definition. - - leaf addFamilyMultiIPV6Str { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyMultiIPV6Str definition. - - leaf safiIPV6MulticastAdv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6MulticastAdv definition. - - leaf safiIPV6MulticastAnd { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6MulticastAnd definition. - - leaf safiIPV6MulticastRecv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6MulticastRecv definition. - - leaf addFamilyVPNv6Str { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyVPNv6Str definition. - - leaf safiVPNv6Adv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv6Adv definition. - - leaf safiVPNV6And { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNV6And definition. - - leaf safiVPNv6Recv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv6Recv definition. - - leaf safiVPNv6Unicast { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv6Unicast definition. - - leaf safiVPNv4Unicast { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv4Unicast definition. - - leaf addFamilyLabeledStr { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyLabeledStr definition. - - leaf safiLabeledAdv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiLabeledAdv definition. - - leaf safiLabeledAnd { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiLabeledAnd definition. - - leaf safiLabeledRecv { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiLabeledRecv definition. - - leaf hashCommListName { - type cml_data_types:CML_STRING_T; - config false; - } // END of hashCommListName definition. - - leaf attrInfoCmd { - type cml_data_types:CML_INT32_T; - config false; - } // END of attrInfoCmd definition. - - leaf hashWeight { - type cml_data_types:CML_INT32_T; - config false; - } // END of hashWeight definition. - - leaf hashMedVal { - type cml_data_types:CML_INT32_T; - config false; - } // END of hashMedVal definition. - - leaf hashLocalPref { - type cml_data_types:CML_INT32_T; - config false; - } // END of hashLocalPref definition. - - leaf hashAsPathOrigin { - type cml_data_types:CML_STRING_T; - config false; - } // END of hashAsPathOrigin definition. - - leaf attrAspathLength { - type cml_data_types:CML_INT32_T; - config false; - } // END of attrAspathLength definition. - - leaf attrAspathStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of attrAspathStr definition. - - leaf attrAspath4BLength { - type cml_data_types:CML_INT32_T; - config false; - } // END of attrAspath4BLength definition. - - leaf attrAspath4BStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of attrAspath4BStr definition. - - leaf hashNtwkRefcnt { - type cml_data_types:CML_INT32_T; - config false; - } // END of hashNtwkRefcnt definition. - - leaf peerKeepAliveTime { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerKeepAliveTime definition. - - leaf peerKeepAliveConf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerKeepAliveConf definition. - - leaf peerDefKeepAlive { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerDefKeepAlive definition. - - leaf peerDefKeepAliveConf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerDefKeepAliveConf definition. - - leaf peerHoldTimeConf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerHoldTimeConf definition. - - leaf peerDefHoldTime { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerDefHoldTime definition. - - leaf peerDefHoldTimeConf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerDefHoldTimeConf definition. - - leaf keepAliveIn { - type cml_data_types:CML_INT32_T; - config false; - } // END of keepAliveIn definition. - - leaf keepAliveOut { - type cml_data_types:CML_INT32_T; - config false; - } // END of keepAliveOut definition. - - leaf openMsgIn { - type cml_data_types:CML_INT32_T; - config false; - } // END of openMsgIn definition. - - leaf openMsgOut { - type cml_data_types:CML_INT32_T; - config false; - } // END of openMsgOut definition. - - leaf bgpAsPathCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpAsPathCount definition. - - leaf bgpAsPath4BCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpAsPath4BCount definition. - - leaf updateMsgIn { - type cml_data_types:CML_INT32_T; - default "0"; - config false; - } // END of updateMsgIn definition. - - leaf updateMsgOut { - type cml_data_types:CML_INT32_T; - default "0"; - config false; - } // END of updateMsgOut definition. - - leaf nextHopGlobal { - type cml_data_types:CML_STRING_T; - config false; - } // END of nextHopGlobal definition. - - leaf nextHopLocal { - type cml_data_types:CML_STRING_T; - config false; - } // END of nextHopLocal definition. - - leaf peerRemotePort { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerRemotePort definition. - - leaf peerRemoteAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerRemoteAddr definition. - - leaf peerLocalHost { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerLocalHost definition. - - leaf nextHop { - type cml_data_types:CML_STRING_T; - config false; - } // END of nextHop definition. - - leaf peerLocalPort { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerLocalPort definition. - - leaf routeValidState { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeValidState definition. - - leaf atomicAggregate { - type cml_data_types:CML_INT32_T; - config false; - } // END of atomicAggregate definition. - - leaf bgpInfoState { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpInfoState definition. - - leaf bgpInfoSelected { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpInfoSelected definition. - - leaf briLabel { - type cml_data_types:CML_INT32_T; - config false; - } // END of briLabel definition. - - leaf originatorId { - type cml_data_types:CML_STRING_T; - config false; - } // END of originatorId definition. - - leaf bgpOrigin { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpOrigin definition. - - leaf nonPeer { - type cml_data_types:CML_STRING_T; - config false; - } // END of nonPeer definition. - - leaf peerBfd { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerBfd definition. - - leaf peerRemovePvtAs { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor remove-private-AS"; - } // END of peerRemovePvtAs definition. - - leaf sendCommunity { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor send-community"; - } // END of sendCommunity definition. - - leaf sendCommunityType { - type cml_data_types:CML_BGP_SEND_COMMU_TYPE_T; - config true; - description "neighbor send-community attribute"; - } // END of sendCommunityType definition. - - leaf neighborRouteServerClient { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor route-server-client"; - } // END of neighborRouteServerClient definition. - - leaf peerRouteReflector { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor route-reflector-client"; - } // END of peerRouteReflector definition. - - leaf prefixListName { - type cml_data_types:CML_STRING_T; - config false; - } // END of prefixListName definition. - - leaf prefixListCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of prefixListCount definition. - - leaf InboundPathPolicyConf { - type cml_data_types:CML_INT32_T; - config false; - } // END of InboundPathPolicyConf definition. - - leaf OutboundPathPolicyConf { - type cml_data_types:CML_INT32_T; - config false; - } // END of OutboundPathPolicyConf definition. - - leaf filterInPlistName { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterInPlistName definition. - - leaf filterOutPlistName { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterOutPlistName definition. - - leaf filterInDlistName { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterInDlistName definition. - - leaf filterOutDlistName { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterOutDlistName definition. - - leaf filterInAslistName { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterInAslistName definition. - - leaf filterOutAslistName { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterOutAslistName definition. - - leaf filterInMaplistName { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterInMaplistName definition. - - leaf filterOutMaplistName { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterOutMaplistName definition. - - leaf filterUsmapName { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterUsmapName definition. - - leaf peerAsPathUnchanged { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerAsPathUnchanged definition. - - leaf defaultSent { - type cml_data_types:CML_INT32_T; - config false; - } // END of defaultSent definition. - - leaf defaultNotSent { - type cml_data_types:CML_INT32_T; - config false; - } // END of defaultNotSent definition. - - leaf orfPrefixStr { - type cml_data_types:CML_INT32_T; - config false; - } // END of orfPrefixStr definition. - - leaf orfPrefixSend { - type cml_data_types:CML_INT32_T; - config false; - } // END of orfPrefixSend definition. - - leaf orfPrefixCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of orfPrefixCount definition. - - leaf orfWaitRefresh { - type cml_data_types:CML_INT32_T; - config false; - } // END of orfWaitRefresh definition. - - leaf reflectorClient { - type cml_data_types:CML_INT32_T; - config false; - } // END of reflectorClient definition. - - leaf reserverClient { - type cml_data_types:CML_INT32_T; - config false; - } // END of reserverClient definition. - - leaf softReconfig { - type cml_data_types:CML_INT32_T; - config false; - } // END of softReconfig definition. - - leaf removePrivateAs { - type cml_data_types:CML_INT32_T; - config false; - } // END of removePrivateAs definition. - - leaf advSmcap { - type cml_data_types:CML_INT32_T; - config false; - } // END of advSmcap definition. - - leaf rcvSmcap { - type cml_data_types:CML_INT32_T; - config false; - } // END of rcvSmcap definition. - - leaf advRmcap { - type cml_data_types:CML_INT32_T; - config false; - } // END of advRmcap definition. - - leaf rcvRmcap { - type cml_data_types:CML_INT32_T; - config false; - } // END of rcvRmcap definition. - - leaf afDependentCap { - type cml_data_types:CML_INT32_T; - config false; - } // END of afDependentCap definition. - - leaf peerIndex { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerIndex definition. - - leaf peerOffset { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerOffset definition. - - leaf peerMask { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerMask definition. - - leaf bgpInfoType { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpInfoType definition. - - leaf bgpInfoSubType { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpInfoSubType definition. - - leaf ecmpMultiCandidate { - type cml_data_types:CML_INT32_T; - config false; - } // END of ecmpMultiCandidate definition. - - leaf multiInstalled { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiInstalled definition. - - leaf flapCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of flapCount definition. - - leaf peerGrstRestartOn { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerGrstRestartOn definition. - - leaf peerPrefixCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerPrefixCount definition. - - leaf peerSendPrefixCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerSendPrefixCount definition. - - leaf peerFlagShutDown { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerFlagShutDown definition. - - leaf peerStatusFlag { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerStatusFlag definition. - - leaf peerCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerCount definition. - - leaf brdAs { - type cml_data_types:CML_INT32_T; - config false; - } // END of brdAs definition. - - leaf brdAsNum { - type cml_data_types:CML_INT32_T; - config false; - } // END of brdAsNum definition. - - leaf brdAs4 { - type cml_data_types:CML_INT32_T; - config false; - } // END of brdAs4 definition. - - leaf brdAsNum4 { - type cml_data_types:CML_INT32_T; - config false; - } // END of brdAsNum4 definition. - - leaf brdIp { - type cml_data_types:CML_STRING_T; - config false; - } // END of brdIp definition. - - leaf brdIpNum { - type cml_data_types:CML_INT32_T; - config false; - } // END of brdIpNum definition. - - leaf peerNotifyInfo { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerNotifyInfo definition. - - leaf peerNotifyDirect { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerNotifyDirect definition. - - leaf peerNotifyLastReset { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerNotifyLastReset definition. - - leaf notifyCodeStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of notifyCodeStr definition. - - leaf notifySubCodeStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of notifySubCodeStr definition. - - leaf bgpConnection { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpConnection definition. - - leaf nextConnectTimer { - type cml_data_types:CML_INT32_T; - config false; - } // END of nextConnectTimer definition. - - leaf peerStatusGrstRestartOn { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerStatusGrstRestartOn definition. - - leaf peerStatusRestartOn { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerStatusRestartOn definition. - - leaf conEstCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of conEstCount definition. - - leaf conDroppedCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of conDroppedCount definition. - - leaf peerPrefixOverflow { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerPrefixOverflow definition. - - leaf updateIf { - type cml_data_types:CML_STRING_T; - config false; - } // END of updateIf definition. - - leaf updateSource { - type cml_data_types:CML_STRING_T; - config false; - } // END of updateSource definition. - - leaf bpfEstUpTime { - type cml_data_types:CML_STRING_T; - config false; - } // END of bpfEstUpTime definition. - - leaf lastReadTime { - type cml_data_types:CML_STRING_T; - config false; - } // END of lastReadTime definition. - - leaf bpfState { - type cml_data_types:CML_STRING_T; - config false; - } // END of bpfState definition. - - leaf bgpLinkType { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpLinkType definition. - - leaf hopAwayCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of hopAwayCount definition. - - leaf peerState { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerState definition. - - leaf peerTableVersion { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerTableVersion definition. - - leaf peerLocalAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerLocalAddr definition. - - leaf bgpConfedPeer { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpConfedPeer definition. - - leaf peerRouterId { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerRouterId definition. - - leaf recvPacketCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of recvPacketCount definition. - - leaf notificationIn { - type cml_data_types:CML_INT32_T; - config false; - } // END of notificationIn definition. - - leaf notificationOut { - type cml_data_types:CML_INT32_T; - config false; - } // END of notificationOut definition. - - leaf pktInQue { - type cml_data_types:CML_INT32_T; - config false; - } // END of pktInQue definition. - - leaf sentPacketCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of sentPacketCount definition. - - leaf refreshRecvPacketCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of refreshRecvPacketCount definition. - - leaf refreshSentPacketCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of refreshSentPacketCount definition. - - leaf advertisementInterval { - type cml_data_types:CML_INT32_T; - config false; - } // END of advertisementInterval definition. - - leaf peerInTotalMsg { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerInTotalMsg definition. - - leaf peerOutTotalMsg { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerOutTotalMsg definition. - - leaf peerLastError { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerLastError definition. - - leaf estTxns { - type cml_data_types:CML_INT32_T; - config false; - } // END of estTxns definition. - - leaf estTime { - type cml_data_types:CML_INT32_T; - default "0"; - config false; - } // END of estTime definition. - - leaf inUpdateElaps { - type cml_data_types:CML_INT32_T; - config false; - } // END of inUpdateElaps definition. - - leaf peerAdminFlag { - type cml_data_types:CML_INT32_T; - config true; - } // END of peerAdminFlag definition. - - leaf connRetryInterval { - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - default "120"; - config true; - description "neighbor connection-retry-time"; - } // END of connRetryInterval definition. - - leaf peerHoldTimeRun { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerHoldTimeRun definition. - - leaf peerKeepAliveRun { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerKeepAliveRun definition. - - leaf neighborCap { - type cml_data_types:CML_INT32_T; - config false; - } // END of neighborCap definition. - - leaf peerDesc { - type cml_data_types:CML_STRING_T; - config true; - description "neighbor description"; - } // END of peerDesc definition. - - leaf transparentAs { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor transparent-as"; - } // END of transparentAs definition. - - leaf transparentNexthop { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor transparent-nexthop"; - } // END of transparentNexthop definition. - - leaf sendLabel { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor send-label"; - } // END of sendLabel definition. - - leaf sendLabelExplicitNull { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor send-label explicit-null"; - } // END of sendLabelExplicitNull definition. - - leaf timeToLive { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor ebgp-multihop"; - } // END of timeToLive definition. - - leaf maxHopCount { - type cml_data_types:CML_UINT8_T { - range "1..255"; - } - default "255"; - config true; - description "neighbor ebgp-multihop maximum hop count"; - } // END of maxHopCount definition. - - leaf peerConnectInterval { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "1"; - config true; - description "neighbor timers"; - } // END of peerConnectInterval definition. - - leaf peerAsorigInterval { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "1"; - config true; - description "neighbor as-origination-interval"; - } // END of peerAsorigInterval definition. - - leaf peerRaInterval { - type cml_data_types:CML_UINT32_T { - range "0..65535"; - } - default "0"; - config true; - description "neighbor advertisement-interval"; - } // END of peerRaInterval definition. - - leaf password { - if-feature feature_list:HAVE_TCP_MD5SIG; - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "neighbor password"; - } // END of password definition. - - leaf dynamicCapability { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor capability dynamic"; - } // END of dynamicCapability definition. - - leaf advertisedCapability { - type cml_data_types:CML_INT32_T; - config false; - } // END of advertisedCapability definition. - - leaf andCapability { - type cml_data_types:CML_INT32_T; - config false; - } // END of andCapability definition. - - leaf receivedCapability { - type cml_data_types:CML_INT32_T; - config false; - } // END of receivedCapability definition. - - leaf capabilityRouteRefresh { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor capability route-refresh"; - } // END of capabilityRouteRefresh definition. - - leaf advCapabilityRefresh { - type cml_data_types:CML_INT32_T; - config false; - } // END of advCapabilityRefresh definition. - - leaf andCapabilityRefresh { - type cml_data_types:CML_INT32_T; - config false; - } // END of andCapabilityRefresh definition. - - leaf recvCapabilityRefresh { - type cml_data_types:CML_INT32_T; - config false; - } // END of recvCapabilityRefresh definition. - - leaf oldCapabilityRefresh { - type cml_data_types:CML_INT32_T; - config false; - } // END of oldCapabilityRefresh definition. - - leaf newCapabilityRefresh { - type cml_data_types:CML_INT32_T; - config false; - } // END of newCapabilityRefresh definition. - - leaf collideEstablished { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor collide-established"; - } // END of collideEstablished definition. - - leaf sourceId { - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "neighbor update-source"; - } // END of sourceId definition. - - leaf enforceMultihop { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor enforce-multihop"; - } // END of enforceMultihop definition. - - leaf neighborOverrideCapability { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor override-capability"; - } // END of neighborOverrideCapability definition. - - leaf neighborStrictCapability { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor strict-capability-match"; - } // END of neighborStrictCapability definition. - - leaf disallowHoldtimer { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor disallow-infinite-holdtime"; - } // END of disallowHoldtimer definition. - - leaf dontCapabilityNegotiate { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor dont-capability-negotiate"; - } // END of dontCapabilityNegotiate definition. - - leaf transportConnectionPassive { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor passive"; - } // END of transportConnectionPassive definition. - - leaf peerShutdown { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor shutdown"; - } // END of peerShutdown definition. - - leaf noIfBinding { - type cml_data_types:CML_INT32_T; - config false; - } // END of noIfBinding definition. - - leaf bgpPort { - type cml_data_types:CML_UINT16_T { - range "0..65535"; - } - default "179"; - config true; - description "neighbor port"; - } // END of bgpPort definition. - - leaf bgpVersion { - type cml_data_types:CML_UINT8_T; - default "4"; - config true; - description "neighbor version"; - } // END of bgpVersion definition. - - leaf peerIfName { - type cml_data_types:CML_STRING_T; - config true; - description "neighbor interface"; - } // END of peerIfName definition. - - leaf softReconfigInbound { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor soft-reconfiguration inbound"; - } // END of softReconfigInbound definition. - - leaf weight { - type cml_data_types:CML_UINT16_T { - range "0..65535"; - } - default "0"; - config true; - description "neighbor weight"; - } // END of weight definition. - - leaf maxPrefixes { - type cml_data_types:CML_UINT32_T { - range "1..4294967295"; - } - config true; - description "neighbor maximum-prefix"; - } // END of maxPrefixes definition. - - leaf stopUpdate { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor maximum-prefix stop-update"; - } // END of stopUpdate definition. - - leaf maxPrefixeWarning { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor maximum-prefix warning"; - } // END of maxPrefixeWarning definition. - - leaf threshold { - type cml_data_types:CML_UINT8_T { - range "1..100"; - } - default "75"; - config true; - description "neighbor maximum-prefix threshold value percent"; - } // END of threshold definition. - - leaf warning { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor maximum-prefix threshold warning"; - } // END of warning definition. - - leaf allowAsNum { - type cml_data_types:CML_UINT32_T { - range "1..10"; - } - default "3"; - config true; - description "neighbor allowas-in"; - } // END of allowAsNum definition. - - leaf aclInfo { - type cml_data_types:CML_STRING_T; - config true; - } // END of aclInfo definition. - - leaf distributeListDirection { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - description "neighbor distribute-list"; - } // END of distributeListDirection definition. - - leaf prefixListAclInfo { - type cml_data_types:CML_STRING_T; - config true; - } // END of prefixListAclInfo definition. - - leaf prefixListDirection { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - description "neighbor prefix-list"; - } // END of prefixListDirection definition. - - leaf asListAclInfo { - type cml_data_types:CML_STRING_T; - config true; - } // END of asListAclInfo definition. - - leaf asListDirection { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - description "neighbor filter-list"; - } // END of asListDirection definition. - - leaf peerGroupTag { - type cml_data_types:CML_STRING_T; - config true; - description "to add a neighbor to an existing peer-group"; - } // END of peerGroupTag definition. - - leaf peerActivate { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor activate"; - } // END of peerActivate definition. - - leaf unSuppressAclInfo { - type cml_data_types:CML_STRING_T; - config true; - description "neighbor unsuppress-map"; - } // END of unSuppressAclInfo definition. - - leaf peerRmapOriName { - type cml_data_types:CML_STRING_T; - config true; - description "neighbor default-originate router-map"; - } // END of peerRmapOriName definition. - - leaf defaultPeerRmapName { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor default-originate"; - } // END of defaultPeerRmapName definition. - - leaf orfPrefixOpt { - type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; - config true; - } // END of orfPrefixOpt definition. - - leaf setNcpFlag { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor orf prefix-list"; - } // END of setNcpFlag definition. - - leaf peerRmapName { - type cml_data_types:CML_STRING_T; - config true; - } // END of peerRmapName definition. - - leaf peerRmapDirection { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - description "neighbor route-map"; - } // END of peerRmapDirection definition. - - leaf peerKeepAlive { - type cml_data_types:CML_UINT16_T { - range "0..65535"; - } - default "30"; - config true; - } // END of peerKeepAlive definition. - - leaf peerHoldTime { - type cml_data_types:CML_UINT16_T { - range "0..65535"; - } - default "90"; - config true; - description "neighbor Keepalive and Holdtime"; - } // END of peerHoldTime definition. - - leaf nextHopSelf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor next-hop-self"; - } // END of nextHopSelf definition. - - - list peerPrefix { - - description - "peerPrefix"; - - config false; - key "prefixEntrySeq"; - - - leaf prefixEntrySeq { - type cml_data_types:CML_INT32_T; - config false; - } // END of prefixEntrySeq definition. - - leaf prefixEntryType { - type cml_data_types:CML_STRING_T; - config false; - } // END of prefixEntryType definition. - - leaf prefixEntryGe { - type cml_data_types:CML_INT32_T; - config false; - } // END of prefixEntryGe definition. - - leaf prefixEntryLe { - type cml_data_types:CML_INT32_T; - config false; - } // END of prefixEntryLe definition. - - leaf peerPrefixLen { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerPrefixLen definition. - - } // End of peerPrefix-list - - list peerAdjRoute { - - description - "peerAdjRoute"; - - config false; - key "peerNetworkAddr"; - - - leaf peerNetworkAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerNetworkAddr definition. - - leaf adjRouteOutCmd { - type cml_data_types:CML_INT32_T; - config false; - } // END of adjRouteOutCmd definition. - - leaf adjRouteInCmd { - type cml_data_types:CML_INT32_T; - config false; - } // END of adjRouteInCmd definition. - - leaf peerFlapCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerFlapCount definition. - - leaf peerBgpTableVersion { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpTableVersion definition. - - leaf peerBgpInfoFlag { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpInfoFlag definition. - - leaf peerBgpAttrMpNexthopGlobalIn { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpAttrMpNexthopGlobalIn definition. - - leaf peerBgpAttrNextHop { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpAttrNextHop definition. - - leaf peerBgpAttrNextHopLen { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpAttrNextHopLen definition. - - leaf peerBgpAttrMpNexthopGlobal { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpAttrMpNexthopGlobal definition. - - leaf peerBgpAttrMpNexthopLocal { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpAttrMpNexthopLocal definition. - - leaf peerBgpUpTime { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpUpTime definition. - - leaf peerMedFlagType { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerMedFlagType definition. - - leaf peerBgpMedVal { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerBgpMedVal definition. - - leaf peerBgpAsPathStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpAsPathStr definition. - - leaf peerBgpAsPath4BStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpAsPath4BStr definition. - - leaf peerBgpAsPathOrigin { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpAsPathOrigin definition. - - leaf peerBgpAsPath4BOrigin { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpAsPath4BOrigin definition. - - leaf peerNetwkWeight { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerNetwkWeight definition. - - } // End of peerAdjRoute-list - list bgpPeerAddressFamily { - - description - "bgpPeerAddressFamily"; - - config true; - key "afi"; - - - leaf afi { - type cml_data_types:CML_AFI_TYPE_T; - config true; - } // END of afi definition. - - - list bgpPeerSubAddressFamily { + list afVrfObj { description - "bgpPeerSubAddressFamily"; + "afVrfObj"; config true; - key "safi"; + key "vrfName"; - leaf safi { - type cml_data_types:CML_SAFI_TYPE_T; - config true; - } // END of safi definition. - - leaf peerAdditionalPathsAf { - if-feature feature_list:HAVE_BGP_ADD_PATH; - type cml_data_types:BGP_PEER_ADDITIONAL_PATH_TYPE_T; - config true; - description "additional paths for address-family"; - } // END of peerAdditionalPathsAf definition. - - leaf peerAddPathSelectAllAf { - if-feature feature_list:HAVE_BGP_ADD_PATH; - type cml_data_types:CML_BOOL_T; - config true; - description "Advertise additional path for address-family"; - } // END of peerAddPathSelectAllAf definition. - - leaf peerBestCountAf { - if-feature feature_list:HAVE_BGP_ADD_PATH; - type cml_data_types:CML_UINT8_T { - range "2..3"; + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; } - config true; - description "Advertise best additional path for address-family"; - } // END of peerBestCountAf definition. - - leaf nextHopSelfAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor next-hop-self for address family"; - } // END of nextHopSelfAf definition. - - leaf peerHoldTimeRunAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerHoldTimeRunAf definition. - - leaf peerKeepAliveRunAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerKeepAliveRunAf definition. - - leaf noIfBindingAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of noIfBindingAf definition. - - leaf peerConfedIdCheckAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerConfedIdCheckAf definition. - - leaf peerAdvExtAsnCapAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerAdvExtAsnCapAf definition. - - leaf peerAndExtAsnCapAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerAndExtAsnCapAf definition. - - leaf peerRecvExtAsnCapAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerRecvExtAsnCapAf definition. - - leaf addFamilystringAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilystringAf definition. - - leaf safiUnicastAdvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiUnicastAdvAf definition. - - leaf safiUnicastAndAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiUnicastAndAf definition. + } // END of vrfName definition. - leaf safiUnicastRecvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiUnicastRecvAf definition. - leaf addFamilyMultiStringAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyMultiStringAf definition. + list vrfPeer { + + description + "vrfPeer"; - leaf safiMulticastAdvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiMulticastAdvAf definition. + config true; + key "peerAddr"; - leaf safiMulticastAndAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiMulticastAndAf definition. + + leaf peerAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "neighbor"; + } // END of peerAddr definition. - leaf safiMulticastRecvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiMulticastRecvAf definition. + leaf peerAsAf { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + description "neighbor autonomous system number (ASN) for address family"; + } // END of peerAsAf definition. - leaf addFamilyVPN4StringAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyVPN4StringAf definition. + leaf sourceIdAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + description "neighbor update-source for address-family"; + } // END of sourceIdAf definition. - leaf safiVPNv4AdvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv4AdvAf definition. + leaf peerLocalAsAf { + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + description "neighbor local-as for address family"; + } // END of peerLocalAsAf definition. - leaf safiVPNv4AndAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv4AndAf definition. + leaf sendLabelAf { + type cml_data_types:CML_BOOL_T; + description "neighbor send-label for address-family"; + } // END of sendLabelAf definition. - leaf safiVPNv4RecvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv4RecvAf definition. + leaf sendLabelExplicitNullAf { + type cml_data_types:CML_BOOL_T; + description "neighbor send-label explicit-null for address-family"; + } // END of sendLabelExplicitNullAf definition. - leaf addFamilyIPV6StringAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyIPV6StringAf definition. + leaf bgpVersionAf { + type cml_data_types:CML_UINT8_T; + default "4"; + description "neighbor version for Address Family"; + } // END of bgpVersionAf definition. - leaf safiIPV6UnicastAdvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6UnicastAdvAf definition. + leaf peerConnectIntervalAf { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + description "neighbor timers for address-family"; + } // END of peerConnectIntervalAf definition. - leaf safiIPV6UnicastAndAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6UnicastAndAf definition. + leaf peerKeepAliveAf { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "30"; + } // END of peerKeepAliveAf definition. - leaf safiIPV6UnicastRecvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6UnicastRecvAf definition. + leaf peerHoldTimeAf { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "90"; + description "neighbor Keepalive and Holdtime for address-family"; + } // END of peerHoldTimeAf definition. - leaf addFamilyMultiIPV6StrAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyMultiIPV6StrAf definition. + leaf enforceMultihopAf { + type cml_data_types:CML_BOOL_T; + description "neighbor enforce-multihop for address-family"; + } // END of enforceMultihopAf definition. - leaf safiIPV6MulticastAdvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6MulticastAdvAf definition. + leaf peerShutdownAf { + type cml_data_types:CML_BOOL_T; + description "neighbor shutdown for address-family"; + } // END of peerShutdownAf definition. - leaf safiIPV6MulticastAndAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6MulticastAndAf definition. + leaf peerGroupStrAf { + type cml_data_types:CML_BOOL_T; + description "neighbor peer-group for address family"; + } // END of peerGroupStrAf definition. - leaf safiIPV6MulticastRecvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiIPV6MulticastRecvAf definition. + leaf passwordAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + description "neighbor password for address-family"; + } // END of passwordAf definition. - leaf addFamilyVPNv6StrAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyVPNv6StrAf definition. + leaf transportConnectionPassiveAf { + type cml_data_types:CML_BOOL_T; + description "neighbor passive for address-family"; + } // END of transportConnectionPassiveAf definition. - leaf safiVPNv6AdvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv6AdvAf definition. + leaf maxHopCountAf { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "255"; + description "neighbor max ebgp-multihop for address-family"; + } // END of maxHopCountAf definition. - leaf safiVPNV6AndAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNV6AndAf definition. + leaf timeToLiveAf { + type cml_data_types:CML_BOOL_T; + description "neighbor ebgp-multihop for address-family"; + } // END of timeToLiveAf definition. - leaf safiVPNv6RecvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv6RecvAf definition. + leaf dontCapabilityNegotiateAf { + type cml_data_types:CML_BOOL_T; + description "neighbor dont-capability-negotiate for address-family"; + } // END of dontCapabilityNegotiateAf definition. - leaf safiVPNv6UnicastAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv6UnicastAf definition. + leaf connRetryIntervalAf { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + default "120"; + description "neighbor connection-retry-time for address-family"; + } // END of connRetryIntervalAf definition. - leaf safiVPNv4UnicastAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiVPNv4UnicastAf definition. + leaf dynamicCapabilityAf { + type cml_data_types:CML_BOOL_T; + description "neighbor capability dynamic for address-family"; + } // END of dynamicCapabilityAf definition. - leaf addFamilyLabeledStrAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of addFamilyLabeledStrAf definition. + leaf peerRaIntervalAf { + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + default "0"; + description "neighbor advertisement-interval for address-family"; + } // END of peerRaIntervalAf definition. - leaf safiLabeledAdvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiLabeledAdvAf definition. + leaf peerAsorigIntervalAf { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + description "neighbor as-origination-interval for address-family"; + } // END of peerAsorigIntervalAf definition. - leaf safiLabeledAndAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiLabeledAndAf definition. + leaf neighborAsOverrideAf { + type cml_data_types:CML_BOOL_T; + description "neighbor asoverride for address family"; + } // END of neighborAsOverrideAf definition. - leaf safiLabeledRecvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of safiLabeledRecvAf definition. + leaf peerIfNameAf { + if-feature feature_list:HAVE_VRF; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "neighbor interface for address family"; + } // END of peerIfNameAf definition. - leaf peerVrfNameAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerVrfNameAf definition. + leaf peerDescAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "neighbor description for address family"; + } // END of peerDescAf definition. - leaf sendExtCommunityAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of sendExtCommunityAf definition. + leaf peerRestartTimeAf { + if-feature feature_list:HAVE_RESTART; + if-feature feature_list:HAVE_VRF; + type cml_data_types:CML_UINT32_T { + range "1..3600"; + } + description "neighbor restart-time for address-family"; + } // END of peerRestartTimeAf definition. - leaf maxPrefixesWarningAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of maxPrefixesWarningAf definition. + leaf siteOriginIdAf { + if-feature feature_list:HAVE_VRF; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "neighbor site of origin for address family"; + } // END of siteOriginIdAf definition. - leaf fwdStatusPreserveAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of fwdStatusPreserveAf definition. + leaf setGracefulShutAf { + type cml_data_types:CML_BOOL_T; + description "neighbor g-shut for address-family"; + } // END of setGracefulShutAf definition. - leaf grstRestartAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of grstRestartAf definition. + leaf gshutTimerAf { + type cml_data_types:CML_UINT32_T { + range "10..65535"; + } + description "neighbor g-shut-timer for address-family"; + } // END of gshutTimerAf definition. - leaf grstAdvAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of grstAdvAf definition. - leaf grstRecvAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of grstRecvAf definition. + list peerAdjInRoute { + + description + "peerAdjInRoute"; - leaf peerBgpTableVersionAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpTableVersionAf definition. + config false; + key "networkAddr"; - leaf checkAfcAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of checkAfcAf definition. + + leaf networkAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of networkAddr definition. - leaf keepAliveInAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of keepAliveInAf definition. - leaf keepAliveOutAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of keepAliveOutAf definition. + list nextHop { + + description + "nextHop"; - leaf openMsgInAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of openMsgInAf definition. + config false; + key "nextHopAddr"; - leaf openMsgOutAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of openMsgOutAf definition. + + leaf nextHopAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopAddr definition. - leaf updateMsgInAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of updateMsgInAf definition. + uses nextHopRunTimeAttr; + } // End of nextHop-list + } // End of peerAdjInRoute-list - leaf updateMsgOutAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of updateMsgOutAf definition. + list peerAdjOutRoute { + + description + "peerAdjOutRoute"; - leaf nextHopGlobalAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of nextHopGlobalAf definition. + config false; + key "networkAddr"; - leaf nextHopLocalAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of nextHopLocalAf definition. + + leaf networkAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of networkAddr definition. + + + list nextHop { + + description + "nextHop"; + + config false; + key "nextHopAddr"; + + + leaf nextHopAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopAddr definition. + + uses nextHopRunTimeAttr; + } // End of nextHop-list + } // End of peerAdjOutRoute-list + uses peerVrfAttrs; + uses peerRuntimeAttr; + } // End of vrfPeer-list + } // End of afVrfObj-list + } // End of vrfSubAddressFamily-list + } // End of vrfAddressFamily-list - leaf peerRemotePortAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerRemotePortAf definition. + list bgpPeer { + + description + "bgpPeer"; - leaf peerRemoteAddrAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerRemoteAddrAf definition. + config true; + key "peerAddr"; - leaf peerLocalHostAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerLocalHostAf definition. + + leaf peerAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "neighbor"; + } // END of peerAddr definition. - leaf nextHopAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of nextHopAf definition. + leaf peerAs { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + description "Neighbors AS number"; + } // END of peerAs definition. - leaf peerLocalPortAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerLocalPortAf definition. + leaf peerAdditionalPaths { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:BGP_PEER_ADDITIONAL_PATH_TYPE_T; + description "additional paths"; + } // END of peerAdditionalPaths definition. - leaf bgpInfoStateAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpInfoStateAf definition. + leaf peerAddPathSelectAll { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_BOOL_T; + description "Advertise additional path"; + } // END of peerAddPathSelectAll definition. - leaf briLabelAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of briLabelAf definition. + leaf peerBestCount { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_UINT8_T { + range "2..3"; + } + description "Advertise best additional path"; + } // END of peerBestCount definition. - leaf bgpOriginAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpOriginAf definition. + leaf setGracefulShut { + type cml_data_types:CML_BOOL_T; + description "neighbor g-shut"; + } // END of setGracefulShut definition. - leaf advNonPeerGroupAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of advNonPeerGroupAf definition. + leaf bgpPeerBfd { + type cml_data_types:CML_BOOL_T; + description "fall-over detection"; + } // END of bgpPeerBfd definition. - leaf peerBfdAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerBfdAf definition. + leaf peerBfdMh { + type cml_data_types:CML_BOOL_T; + description "bfd multihop"; + } // END of peerBfdMh definition. - leaf prefixListNameAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of prefixListNameAf definition. + leaf gshutTimer { + type cml_data_types:CML_UINT32_T { + range "10..65535"; + } + description "neighbor g-shut-timer"; + } // END of gshutTimer definition. - leaf prefixListCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of prefixListCountAf definition. + leaf peerRestartTime { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_UINT32_T { + range "1..3600"; + } + description "neighbor restart-time"; + } // END of peerRestartTime definition. - leaf InboundPathPolicyConfAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of InboundPathPolicyConfAf definition. + leaf peerLocalAs { + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + description "neighbor local-as"; + } // END of peerLocalAs definition. - leaf OutboundPathPolicyConfAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of OutboundPathPolicyConfAf definition. + leaf neighborAttrUnchanged { + type cml_data_types:CML_ATTRIBUTE_UNCHANGED_TYPE_T; + description "neighbor attribute-unchanged"; + } // END of neighborAttrUnchanged definition. - leaf filterInPlistNameAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterInPlistNameAf definition. + leaf neighborCapabilityGrst { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_BOOL_T; + description "neighbor capability graceful-restart"; + } // END of neighborCapabilityGrst definition. - leaf filterOutPlistNameAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterOutPlistNameAf definition. + leaf peerRemovePvtAs { + type cml_data_types:CML_BOOL_T; + description "neighbor remove-private-AS"; + } // END of peerRemovePvtAs definition. - leaf filterInDlistNameAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterInDlistNameAf definition. + leaf sendCommunity { + type cml_data_types:CML_BOOL_T; + description "neighbor send-community"; + } // END of sendCommunity definition. - leaf filterOutDlistNameAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterOutDlistNameAf definition. + leaf sendCommunityType { + type cml_data_types:CML_BGP_SEND_COMMU_TYPE_T; + description "neighbor send-community attribute"; + } // END of sendCommunityType definition. - leaf filterInAslistNameAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterInAslistNameAf definition. + leaf neighborRouteServerClient { + type cml_data_types:CML_BOOL_T; + description "neighbor route-server-client"; + } // END of neighborRouteServerClient definition. - leaf filterOutAslistNameAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterOutAslistNameAf definition. + leaf peerRouteReflector { + type cml_data_types:CML_BOOL_T; + description "neighbor route-reflector-client"; + } // END of peerRouteReflector definition. - leaf filterInMaplistNameAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterInMaplistNameAf definition. + leaf peerAdminFlag { + type cml_data_types:CML_INT32_T; + } // END of peerAdminFlag definition. - leaf filterOutMaplistNameAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterOutMaplistNameAf definition. + leaf connRetryInterval { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + default "120"; + description "neighbor connection-retry-time"; + } // END of connRetryInterval definition. - leaf filterUsmapNameAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of filterUsmapNameAf definition. + leaf peerDesc { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "neighbor description"; + } // END of peerDesc definition. - leaf peerAsPathUnchangedAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerAsPathUnchangedAf definition. + leaf transparentAs { + type cml_data_types:CML_BOOL_T; + description "neighbor transparent-as"; + } // END of transparentAs definition. - leaf defaultSentAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of defaultSentAf definition. + leaf transparentNexthop { + type cml_data_types:CML_BOOL_T; + description "neighbor transparent-nexthop"; + } // END of transparentNexthop definition. - leaf defaultNotSentAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of defaultNotSentAf definition. + leaf sendLabel { + type cml_data_types:CML_BOOL_T; + description "neighbor send-label"; + } // END of sendLabel definition. - leaf orfPrefixStrAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of orfPrefixStrAf definition. + leaf sendLabelExplicitNull { + type cml_data_types:CML_BOOL_T; + description "neighbor send-label explicit-null"; + } // END of sendLabelExplicitNull definition. - leaf orfPrefixSendAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of orfPrefixSendAf definition. + leaf timeToLive { + type cml_data_types:CML_BOOL_T; + description "neighbor ebgp-multihop"; + } // END of timeToLive definition. - leaf orfPrefixCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of orfPrefixCountAf definition. + leaf maxHopCount { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "255"; + description "neighbor ebgp-multihop maximum hop count"; + } // END of maxHopCount definition. - leaf orfWaitRefreshAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of orfWaitRefreshAf definition. + leaf peerConnectInterval { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + description "neighbor timers"; + } // END of peerConnectInterval definition. - leaf routeReflectorClientAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeReflectorClientAf definition. + leaf peerAsorigInterval { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + description "neighbor as-origination-interval"; + } // END of peerAsorigInterval definition. - leaf reserverClientAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of reserverClientAf definition. + leaf peerRaInterval { + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + default "0"; + description "neighbor advertisement-interval"; + } // END of peerRaInterval definition. - leaf softReconfigAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of softReconfigAf definition. + leaf password { + if-feature feature_list:HAVE_TCP_MD5SIG; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + description "neighbor password"; + } // END of password definition. - leaf removePrivateAsAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of removePrivateAsAf definition. + leaf dynamicCapability { + type cml_data_types:CML_BOOL_T; + description "neighbor capability dynamic"; + } // END of dynamicCapability definition. - leaf advSmcapAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of advSmcapAf definition. + leaf collideEstablished { + type cml_data_types:CML_BOOL_T; + description "neighbor collide-established"; + } // END of collideEstablished definition. - leaf rcvSmcapAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of rcvSmcapAf definition. + leaf sourceId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + description "neighbor update-source"; + } // END of sourceId definition. - leaf advRmcapAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of advRmcapAf definition. + leaf enforceMultihop { + type cml_data_types:CML_BOOL_T; + description "neighbor enforce-multihop"; + } // END of enforceMultihop definition. - leaf rcvRmcapAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of rcvRmcapAf definition. + leaf neighborOverrideCapability { + type cml_data_types:CML_BOOL_T; + description "neighbor override-capability"; + } // END of neighborOverrideCapability definition. - leaf afDependentCapAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of afDependentCapAf definition. + leaf neighborStrictCapability { + type cml_data_types:CML_BOOL_T; + description "neighbor strict-capability-match"; + } // END of neighborStrictCapability definition. - leaf peerIndexAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerIndexAf definition. + leaf disallowHoldtimer { + type cml_data_types:CML_BOOL_T; + description "neighbor disallow-infinite-holdtime"; + } // END of disallowHoldtimer definition. - leaf peerOffsetAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerOffsetAf definition. + leaf dontCapabilityNegotiate { + type cml_data_types:CML_BOOL_T; + description "neighbor dont-capability-negotiate"; + } // END of dontCapabilityNegotiate definition. - leaf peerMaskAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerMaskAf definition. + leaf transportConnectionPassive { + type cml_data_types:CML_BOOL_T; + description "neighbor passive"; + } // END of transportConnectionPassive definition. - leaf flapCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of flapCountAf definition. + leaf peerShutdown { + type cml_data_types:CML_BOOL_T; + description "neighbor shutdown"; + } // END of peerShutdown definition. - leaf peerGrstRestartOnAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerGrstRestartOnAf definition. + leaf bgpPort { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "179"; + description "neighbor port"; + } // END of bgpPort definition. - leaf peerPrefixCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerPrefixCountAf definition. + leaf bgpVersion { + type cml_data_types:CML_UINT8_T; + default "4"; + description "neighbor version"; + } // END of bgpVersion definition. - leaf peerSendPrefixCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerSendPrefixCountAf definition. + leaf peerIfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "neighbor interface"; + } // END of peerIfName definition. - leaf peerFlagShutDownAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerFlagShutDownAf definition. + leaf softReconfigInbound { + type cml_data_types:CML_BOOL_T; + description "neighbor soft-reconfiguration inbound"; + } // END of softReconfigInbound definition. - leaf peerStatusFlagAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerStatusFlagAf definition. + leaf weight { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "0"; + description "neighbor weight"; + } // END of weight definition. - leaf peerCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerCountAf definition. + leaf maxPrefixes { + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + description "neighbor maximum-prefix"; + } // END of maxPrefixes definition. - leaf brdAsAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of brdAsAf definition. + leaf stopUpdate { + type cml_data_types:CML_BOOL_T; + description "neighbor maximum-prefix stop-update"; + } // END of stopUpdate definition. - leaf brdAsNumAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of brdAsNumAf definition. + leaf maxPrefixeWarning { + type cml_data_types:CML_BOOL_T; + description "neighbor maximum-prefix warning"; + } // END of maxPrefixeWarning definition. - leaf brdAs4Af { - type cml_data_types:CML_INT32_T; - config false; - } // END of brdAs4Af definition. + leaf threshold { + type cml_data_types:CML_UINT8_T { + range "1..100"; + } + default "75"; + description "neighbor maximum-prefix threshold value percent"; + } // END of threshold definition. - leaf brdAsNum4Af { - type cml_data_types:CML_INT32_T; - config false; - } // END of brdAsNum4Af definition. + leaf warning { + type cml_data_types:CML_BOOL_T; + description "neighbor maximum-prefix threshold warning"; + } // END of warning definition. - leaf brdIpAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of brdIpAf definition. + leaf allowAsNum { + type cml_data_types:CML_UINT32_T { + range "1..10"; + } + default "3"; + description "neighbor allowas-in"; + } // END of allowAsNum definition. - leaf brdIpNumAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of brdIpNumAf definition. + leaf aclInfo { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of aclInfo definition. - leaf peerNotifyInfoAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerNotifyInfoAf definition. + leaf distributeListDirection { + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + description "neighbor distribute-list"; + } // END of distributeListDirection definition. - leaf peerNotifyDirectAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerNotifyDirectAf definition. + leaf prefixListAclInfo { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of prefixListAclInfo definition. - leaf peerNotifyLastResetAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerNotifyLastResetAf definition. + leaf prefixListDirection { + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + description "neighbor prefix-list"; + } // END of prefixListDirection definition. - leaf notifyCodeStrAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of notifyCodeStrAf definition. + leaf asListAclInfo { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of asListAclInfo definition. - leaf notifySubCodeStrAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of notifySubCodeStrAf definition. + leaf asListDirection { + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + description "neighbor filter-list"; + } // END of asListDirection definition. - leaf bgpConnectionAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpConnectionAf definition. + leaf peerGroupTag { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "to add a neighbor to an existing peer-group"; + } // END of peerGroupTag definition. - leaf nextConnectTimerAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of nextConnectTimerAf definition. + leaf peerActivate { + type cml_data_types:CML_BOOL_T; + description "neighbor activate"; + } // END of peerActivate definition. - leaf peerStatusGrstRestartOnAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerStatusGrstRestartOnAf definition. + leaf unSuppressAclInfo { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "neighbor unsuppress-map"; + } // END of unSuppressAclInfo definition. - leaf peerStatusRestartOnAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerStatusRestartOnAf definition. + leaf peerRmapOriName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "neighbor default-originate router-map"; + } // END of peerRmapOriName definition. - leaf conEstCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of conEstCountAf definition. + leaf defaultPeerRmapName { + type cml_data_types:CML_BOOL_T; + description "neighbor default-originate"; + } // END of defaultPeerRmapName definition. - leaf conDroppedCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of conDroppedCountAf definition. + leaf orfPrefixOpt { + type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; + } // END of orfPrefixOpt definition. - leaf peerPrefixOverflowAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerPrefixOverflowAf definition. + leaf setNcpFlag { + type cml_data_types:CML_BOOL_T; + description "neighbor orf prefix-list"; + } // END of setNcpFlag definition. - leaf updateIfAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of updateIfAf definition. + leaf peerRmapName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of peerRmapName definition. - leaf updateSourceAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of updateSourceAf definition. + leaf peerRmapDirection { + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + description "neighbor route-map"; + } // END of peerRmapDirection definition. - leaf bpfEstUpTimeAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bpfEstUpTimeAf definition. + leaf peerKeepAlive { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "30"; + } // END of peerKeepAlive definition. - leaf lastReadTimeAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of lastReadTimeAf definition. + leaf peerHoldTime { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "90"; + description "neighbor Keepalive and Holdtime"; + } // END of peerHoldTime definition. - leaf bpfStateAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bpfStateAf definition. + leaf nextHopSelf { + type cml_data_types:CML_BOOL_T; + description "neighbor next-hop-self"; + } // END of nextHopSelf definition. - leaf bgpLinkTypeAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpLinkTypeAf definition. - leaf hopAwayCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of hopAwayCountAf definition. + list peerAdjInRoute { + + description + "peerAdjInRoute"; - leaf peerStateAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerStateAf definition. + config false; + key "networkAddr"; - leaf peerTableVersionAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerTableVersionAf definition. + + leaf networkAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of networkAddr definition. - leaf peerLocalAddrAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerLocalAddrAf definition. - leaf peerRouterIdAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerRouterIdAf definition. + list nextHop { + + description + "nextHop"; - leaf recvPacketCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of recvPacketCountAf definition. + config false; + key "nextHopAddr"; - leaf notificationInAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of notificationInAf definition. + + leaf nextHopAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopAddr definition. - leaf notificationOutAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of notificationOutAf definition. + uses nextHopRunTimeAttr; + } // End of nextHop-list + } // End of peerAdjInRoute-list - leaf pktInQueAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of pktInQueAf definition. + list peerAdjOutRoute { + + description + "peerAdjOutRoute"; - leaf sentPacketCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of sentPacketCountAf definition. + config false; + key "networkAddr"; - leaf refreshRecvPacketCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of refreshRecvPacketCountAf definition. + + leaf networkAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of networkAddr definition. - leaf refreshSentPacketCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of refreshSentPacketCountAf definition. - leaf advertisementIntervalAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of advertisementIntervalAf definition. + list nextHop { + + description + "nextHop"; - leaf peerInTotalMsgAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerInTotalMsgAf definition. + config false; + key "nextHopAddr"; - leaf peerOutTotalMsgAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerOutTotalMsgAf definition. + + leaf nextHopAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopAddr definition. - leaf peerLastErrorAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerLastErrorAf definition. + uses nextHopRunTimeAttr; + } // End of nextHop-list + } // End of peerAdjOutRoute-list - leaf estTxnsAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of estTxnsAf definition. + list bgpPeerAddressFamily { + + description + "bgpPeerAddressFamily"; - leaf estTimeAf { - type cml_data_types:CML_INT32_T; - default "0"; - config false; - } // END of estTimeAf definition. + config true; + key "afi"; - leaf inUpdateElapsAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of inUpdateElapsAf definition. + + leaf afi { + type cml_data_types:CML_AFI_TYPE_T; + } // END of afi definition. - leaf neighborCapAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of neighborCapAf definition. - leaf advertisedCapabilityAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of advertisedCapabilityAf definition. + list bgpPeerSubAddressFamily { + + description + "bgpPeerSubAddressFamily"; - leaf andCapabilityAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of andCapabilityAf definition. + config true; + key "safi"; - leaf receivedCapabilityAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of receivedCapabilityAf definition. + + leaf safi { + type cml_data_types:CML_SAFI_TYPE_T; + } // END of safi definition. - leaf advCapabilityRefreshAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of advCapabilityRefreshAf definition. + leaf peerAdditionalPathsAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:BGP_PEER_ADDITIONAL_PATH_TYPE_T; + description "additional paths for address-family"; + } // END of peerAdditionalPathsAf definition. - leaf andCapabilityRefreshAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of andCapabilityRefreshAf definition. + leaf peerAddPathSelectAllAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_BOOL_T; + description "Advertise additional path for address-family"; + } // END of peerAddPathSelectAllAf definition. - leaf recvCapabilityRefreshAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of recvCapabilityRefreshAf definition. + leaf peerBestCountAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_UINT8_T { + range "2..3"; + } + description "Advertise best additional path for address-family"; + } // END of peerBestCountAf definition. - leaf oldCapabilityRefreshAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of oldCapabilityRefreshAf definition. + leaf neighborRouteServerClientAf { + type cml_data_types:CML_BOOL_T; + description "neighbor route-server-client for address family"; + } // END of neighborRouteServerClientAf definition. - leaf newCapabilityRefreshAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of newCapabilityRefreshAf definition. + leaf nextHopSelfAf { + type cml_data_types:CML_BOOL_T; + description "neighbor next-hop-self for address family"; + } // END of nextHopSelfAf definition. - list vrfobj { + list peerAdjInRoute { description - "vrfobj"; + "peerAdjInRoute"; - config true; - key "vrfName"; + config false; + key "networkAddr"; - leaf vrfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of vrfName definition. - - leaf peerAsAf { - type cml_data_types:CML_UINT32_T { - range "1..4294967295"; - } - config true; - description "neighbor autonomous system number (ASN) for address family"; - } // END of peerAsAf definition. - - leaf sourceIdAf { - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "neighbor update-source for address-family"; - } // END of sourceIdAf definition. - - leaf peerLocalAsAf { - type cml_data_types:CML_UINT32_T { - range "1..4294967295"; + leaf networkAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; } - config true; - description "neighbor local-as for address family"; - } // END of peerLocalAsAf definition. - - leaf sendLabelAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor send-label for address-family"; - } // END of sendLabelAf definition. + } // END of networkAddr definition. - leaf sendLabelExplicitNullAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor send-label explicit-null for address-family"; - } // END of sendLabelExplicitNullAf definition. - leaf bgpVersionAf { - type cml_data_types:CML_UINT8_T; - default "4"; - config true; - description "neighbor version for Address Family"; - } // END of bgpVersionAf definition. + list nextHop { + + description + "nextHop"; - leaf peerConnectIntervalAf { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "1"; - config true; - description "neighbor timers for address-family"; - } // END of peerConnectIntervalAf definition. + config false; + key "nextHopAddr"; - leaf peerKeepAliveAf { - type cml_data_types:CML_UINT16_T { - range "0..65535"; - } - default "30"; - config true; - } // END of peerKeepAliveAf definition. + + leaf nextHopAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopAddr definition. - leaf peerHoldTimeAf { - type cml_data_types:CML_UINT16_T { - range "0..65535"; - } - default "90"; - config true; - description "neighbor Keepalive and Holdtime for address-family"; - } // END of peerHoldTimeAf definition. + uses nextHopRunTimeAttr; + } // End of nextHop-list + } // End of peerAdjInRoute-list - leaf enforceMultihopAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor enforce-multihop for address-family"; - } // END of enforceMultihopAf definition. + list peerAdjOutRoute { + + description + "peerAdjOutRoute"; - leaf peerShutdownAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor shutdown for address-family"; - } // END of peerShutdownAf definition. + config false; + key "networkAddr"; - leaf bgpPortAf { - type cml_data_types:CML_UINT16_T { - range "0..65535"; + + leaf networkAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; } - default "179"; - config true; - description "neighbor port for address-family"; - } // END of bgpPortAf definition. - - leaf peerGroupStrAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor peer-group for address family"; - } // END of peerGroupStrAf definition. - - leaf passwordAf { - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "neighbor password for address-family"; - } // END of passwordAf definition. + } // END of networkAddr definition. - leaf transportConnectionPassiveAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor passive for address-family"; - } // END of transportConnectionPassiveAf definition. - leaf maxHopCountAf { - type cml_data_types:CML_UINT8_T { - range "1..255"; - } - default "255"; - config true; - description "neighbor max ebgp-multihop for address-family"; - } // END of maxHopCountAf definition. + list nextHop { + + description + "nextHop"; - leaf timeToLiveAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor ebgp-multihop for address-family"; - } // END of timeToLiveAf definition. + config false; + key "nextHopAddr"; - leaf dontCapabilityNegotiateAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor dont-capability-negotiate for address-family"; - } // END of dontCapabilityNegotiateAf definition. + + leaf nextHopAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopAddr definition. + + uses nextHopRunTimeAttr; + } // End of nextHop-list + } // End of peerAdjOutRoute-list + uses peerVrfAttrs; + uses peerRuntimeAttr; + } // End of bgpPeerSubAddressFamily-list + } // End of bgpPeerAddressFamily-list + uses peerRuntimeAttr; + } // End of bgpPeer-list - leaf connRetryIntervalAf { - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - default "120"; - config true; - description "neighbor connection-retry-time for address-family"; - } // END of connRetryIntervalAf definition. + list addrFamily { + + description + "addrFamily"; - leaf capabilityRouteRefreshAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor capability route-refresh for address-family"; - } // END of capabilityRouteRefreshAf definition. + config true; + key "afi"; - leaf dynamicCapabilityAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor capability dynamic for address-family"; - } // END of dynamicCapabilityAf definition. + + leaf afi { + type cml_data_types:CML_AFI_TYPE_T; + } // END of afi definition. - leaf peerRaIntervalAf { - type cml_data_types:CML_UINT32_T { - range "0..65535"; - } - default "0"; - config true; - description "neighbor advertisement-interval for address-family"; - } // END of peerRaIntervalAf definition. - leaf peerAsorigIntervalAf { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "1"; - config true; - description "neighbor as-origination-interval for address-family"; - } // END of peerAsorigIntervalAf definition. + list subAddrFamily { + + description + "subAddrFamily"; - leaf neighborAsOverrideAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor asoverride for address family"; - } // END of neighborAsOverrideAf definition. + config true; + key "safi"; - leaf peerIfNameAf { - if-feature feature_list:HAVE_VRF; - type cml_data_types:CML_STRING_T; - config true; - description "neighbor interface for address family"; - } // END of peerIfNameAf definition. + + leaf safi { + type cml_data_types:CML_SAFI_TYPE_T; + } // END of safi definition. - leaf peerDescAf { - type cml_data_types:CML_STRING_T; - config true; - description "neighbor description for address family"; - } // END of peerDescAf definition. + leaf additionalPathsAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:BGP_ADDITIONAL_PATH_TYPE_T; + description "additional paths for address-family"; + } // END of additionalPathsAf definition. - leaf peerRestartTimeAf { - if-feature feature_list:HAVE_RESTART; - type cml_data_types:CML_UINT32_T { - range "1..3600"; - } - config true; - description "neighbor restart-time for address-family"; - } // END of peerRestartTimeAf definition. + leaf addPathSelectAllAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_BOOL_T; + description "select all path for address-family"; + } // END of addPathSelectAllAf definition. - leaf peerActivateAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor activate for address family"; - } // END of peerActivateAf definition. + leaf bestCountAf { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_UINT8_T { + range "2..3"; + } + description "select best path for address-family"; + } // END of bestCountAf definition. - leaf defaultPeerRmapNameAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor default-originate for address family"; - } // END of defaultPeerRmapNameAf definition. + leaf setClientReflectAf { + type cml_data_types:CML_BOOL_T; + description "bgp client-to-client reflection for address-family"; + } // END of setClientReflectAf definition. - leaf peerRmapOriNameAf { - type cml_data_types:CML_STRING_T; - config true; - description "neighbor default-originate router-map for address-family"; - } // END of peerRmapOriNameAf definition. + leaf ntwkPrefixCountAf { + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkPrefixCountAf definition. - leaf softReconfigInboundAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor soft-reconfiguration inbound for address family"; - } // END of softReconfigInboundAf definition. + leaf ntwkRouterIpAddrAf { + type cml_data_types:CML_INT32_T; + config false; + } // END of ntwkRouterIpAddrAf definition. - leaf weightAf { - type cml_data_types:CML_UINT16_T { - range "0..65535"; - } - default "0"; - config true; - description "neighbor weight for address family"; - } // END of weightAf definition. + leaf bgpTableVersionAf { + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpTableVersionAf definition. - leaf neighborRouteServerClientAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor route-server-client for address family"; - } // END of neighborRouteServerClientAf definition. - leaf peerRouteReflectorAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor route-reflector-client for address family"; - } // END of peerRouteReflectorAf definition. + list bgpAddressFamilyAggregateAddrList { + + description + "bgpAddressFamilyAggregateAddrList"; - leaf peerRemovePvtAsAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor remove-private-AS for address family"; - } // END of peerRemovePvtAsAf definition. + config true; + key "aggregateAddrAf"; - leaf sendCommunityAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor send-community for address family"; - } // END of sendCommunityAf definition. + + leaf aggregateAddrAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "aggregate-address for address-family"; + } // END of aggregateAddrAf definition. - leaf sendCommunityTypeAf { - type cml_data_types:CML_BGP_SEND_COMMU_TYPE_T; - config true; - description "neighbor send-community attribute for address family"; - } // END of sendCommunityTypeAf definition. + leaf aggregateTypeAf { + type cml_data_types:CML_BGP_AGGREGATE_ADDR_TYPE_T; + description "aggregate-address-type for address-family"; + } // END of aggregateTypeAf definition. - leaf neighborAttrUnchangedAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor attribute-unchanged for address family"; - } // END of neighborAttrUnchangedAf definition. + leaf aggregateAsSetAf { + type cml_data_types:CML_BOOL_T; + description "redistribute as-set for address family"; + } // END of aggregateAsSetAf definition. - leaf neighborAttrUnchangedAsPathAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor attribute-unchanged as-path for address family"; - } // END of neighborAttrUnchangedAsPathAf definition. + leaf aggregateSummOnlyAf { + type cml_data_types:CML_BOOL_T; + description "redistribute summary-only for address family"; + } // END of aggregateSummOnlyAf definition. - leaf neighborAttrUnchangedNexthopAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor attribute-unchanged next-hop for address family"; - } // END of neighborAttrUnchangedNexthopAf definition. + } // End of bgpAddressFamilyAggregateAddrList-list - leaf neighborAttrUnchangedMedAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor attribute-unchanged med for address family"; - } // END of neighborAttrUnchangedMedAf definition. + list vrfobj { + + description + "vrfobj"; - leaf orfPrefixOptAf { - type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; - config true; - description "orf prefix-list "; - } // END of orfPrefixOptAf definition. + config true; + key "vrfName"; - leaf setNcpFlagAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor orf prefix-list for address family"; - } // END of setNcpFlagAf definition. + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. - leaf siteOriginIdAf { - if-feature feature_list:HAVE_VRF; - type cml_data_types:CML_STRING_T; - config true; - description "neighbor site of origin for address family"; - } // END of siteOriginIdAf definition. + leaf autoSummaryAf { + type cml_data_types:CML_BOOL_T; + description "auto-summary for address-family"; + } // END of autoSummaryAf definition. - leaf peerAllowEbgpVpnAf { - if-feature feature_list:HAVE_VRF; - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor allow-ebgp-vpn for address family"; - } // END of peerAllowEbgpVpnAf definition. + leaf setNwSyncFlagAf { + type cml_data_types:CML_BOOL_T; + description "network synchronization for address-family"; + } // END of setNwSyncFlagAf definition. - leaf allowAsNumAf { - type cml_data_types:CML_UINT32_T { - range "1..10"; - } - default "3"; - config true; - description "neighbor allowas-in for address family"; - } // END of allowAsNumAf definition. + leaf halfLifeAf { + type cml_data_types:CML_UINT32_T { + range "1..45"; + } + default "15"; + description "bgp route dampening reachability half-life time for address family"; + } // END of halfLifeAf definition. - leaf neighborCapabilityGrstAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor capability graceful-restart for address family"; - } // END of neighborCapabilityGrstAf definition. + leaf reusePenaltyAf { + type cml_data_types:CML_UINT32_T { + range "1..20000"; + } + } // END of reusePenaltyAf definition. - leaf aclInfoAf { - type cml_data_types:CML_STRING_T; - config true; - } // END of aclInfoAf definition. + leaf suppressPenaltyAf { + type cml_data_types:CML_UINT32_T { + range "1..20000"; + } + } // END of suppressPenaltyAf definition. - leaf distributeListDirectionAf { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - description "neighbor distribute-list for address family"; - } // END of distributeListDirectionAf definition. + leaf maxSuppressAf { + type cml_data_types:CML_UINT32_T { + range "1..255"; + } + description "bgp route dampening to start suppressing a route for address family"; + } // END of maxSuppressAf definition. - leaf asListAclInfoAf { - type cml_data_types:CML_STRING_T; - config true; - } // END of asListAclInfoAf definition. + leaf unreachHalfLifeAf { + type cml_data_types:CML_UINT32_T { + range "1..45"; + } + description "bgp route dampening Un-reachability Half-life time for address family"; + } // END of unreachHalfLifeAf definition. - leaf asListDirectionAf { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - description "neighbor filter-list for address family"; - } // END of asListDirectionAf definition. + leaf dampeningRmapNameAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bgp dampening route-map for address-family"; + } // END of dampeningRmapNameAf definition. - leaf peerGroupTagAf { - type cml_data_types:CML_STRING_T; - config true; - description "to add a neighbor to an existing peer-group for address family"; - } // END of peerGroupTagAf definition. + leaf tableMapAf { + if-feature feature_list:HAVE_BGP_TABLE_MAP; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bgp table-map for address-family"; + } // END of tableMapAf definition. - leaf prefixListAclInfoAf { - type cml_data_types:CML_STRING_T; - config true; - } // END of prefixListAclInfoAf definition. + leaf tableMapFilterAf { + if-feature feature_list:HAVE_BGP_TABLE_MAP; + type cml_data_types:CML_BOOL_T; + description "bgp table-map filter for address-family"; + } // END of tableMapFilterAf definition. - leaf prefixListDirectionAf { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - description "neighbor prefix-list for address family"; - } // END of prefixListDirectionAf definition. + leaf setDampeningFlagAf { + type cml_data_types:CML_BOOL_T; + description "bgp dampening for address-family"; + } // END of setDampeningFlagAf definition. - leaf peerRmapNameAf { - type cml_data_types:CML_STRING_T; - config true; - } // END of peerRmapNameAf definition. + leaf distanceEbgpAf { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "20"; + } // END of distanceEbgpAf definition. - leaf peerRmapDirectionAf { - type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; - config true; - description "neighbor route-map for address family"; - } // END of peerRmapDirectionAf definition. + leaf distanceIbgpAf { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "200"; + } // END of distanceIbgpAf definition. - leaf setGracefulShutAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor g-shut for address-family"; - } // END of setGracefulShutAf definition. + leaf distanceLocalAf { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "200"; + description "administrative distance for address-family"; + } // END of distanceLocalAf definition. - leaf gshutTimerAf { - type cml_data_types:CML_UINT32_T { - range "10..65535"; - } - config true; - description "neighbor g-shut-timer for address-family"; - } // END of gshutTimerAf definition. + leaf setSyncFlagAf { + type cml_data_types:CML_BOOL_T; + description "synchronization for address-family"; + } // END of setSyncFlagAf definition. - leaf maxPrefixesAf { - type cml_data_types:CML_UINT32_T { - range "1..4294967295"; - } - config true; - description "neighbor maximum-prefix for address-family"; - } // END of maxPrefixesAf definition. + leaf ebgpMaxPathAf { + type cml_data_types:CML_INT32_T { + range "2..64"; + } + default "2"; + description "multipath ECMP numbers for eBGP address family"; + } // END of ebgpMaxPathAf definition. - leaf stopUpdateAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor maximum-prefix stop-update for address-family"; - } // END of stopUpdateAf definition. + leaf ibgpMaxPathAf { + type cml_data_types:CML_INT32_T { + range "2..64"; + } + default "2"; + description "multipath ECMP numbers for iBGP address family"; + } // END of ibgpMaxPathAf definition. - leaf maxPrefixeWarningAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor maximum-prefix warning for address-family"; - } // END of maxPrefixeWarningAf definition. + leaf setGshutAf { + type cml_data_types:CML_BOOL_T; + description "bgp g-shut for address family"; + } // END of setGshutAf definition. - leaf thresholdAf { - type cml_data_types:CML_UINT8_T { - range "1..100"; - } - default "75"; - config true; - description "neighbor maximum-prefix threshold for address-family"; - } // END of thresholdAf definition. + leaf setGshutCapableAf { + type cml_data_types:CML_BOOL_T; + description "bgp g-shut-capable for address-family"; + } // END of setGshutCapableAf definition. - leaf warningAf { - type cml_data_types:CML_BOOL_T; - config true; - description "neighbor maximum-prefix threshold warning for address-family"; - } // END of warningAf definition. + leaf gshutLocalPrefAf { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + description "bgp g-shut-local-preference for address-family"; + } // END of gshutLocalPrefAf definition. - leaf unSuppressAclInfoAf { - type cml_data_types:CML_STRING_T; - config true; - description "neighbor unsuppress-map for address-family"; - } // END of unSuppressAclInfoAf definition. + leaf confedIdAf { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + description "bgp confederation identifier in digits for address-family"; + } // END of confedIdAf definition. - } // End of vrfobj-list - list peerPrefix { + list bgpConfed { description - "peerPrefix"; + "bgpConfed"; - config false; - key "prefixEntrySeqAf"; + config true; + key "peerConfedIdAf"; - leaf prefixEntrySeqAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of prefixEntrySeqAf definition. - - leaf prefixEntryTypeAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of prefixEntryTypeAf definition. - - leaf prefixEntryGeAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of prefixEntryGeAf definition. - - leaf prefixEntryLeAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of prefixEntryLeAf definition. - - leaf peerPrefixLenAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerPrefixLenAf definition. + leaf peerConfedIdAf { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + description "bgp confederation peers for address-family"; + } // END of peerConfedIdAf definition. - } // End of peerPrefix-list + } // End of bgpConfed-list - list peerAdjRouteAf { + list bgpAddressFamilyNetworkList { description - "peerAdjRouteAf"; + "bgpAddressFamilyNetworkList"; - config false; - key "peerNetworkAddrAf"; + config true; + key "localAddrAf"; - leaf peerNetworkAddrAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerNetworkAddrAf definition. - - leaf peerFlapCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerFlapCountAf definition. - - leaf peerNetwkWeightAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerNetwkWeightAf definition. - - leaf peerBgpTableVersionAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpTableVersionAf definition. + leaf localAddrAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of localAddrAf definition. - leaf peerBgpInfoFlagAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpInfoFlagAf definition. + leaf localAddrMaskAf { + type cml_data_types:CML_IPV4_ADDR_T; + description "network address with mask for address family"; + } // END of localAddrMaskAf definition. - leaf peerBgpAttrMpNexthopGlobalInAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpAttrMpNexthopGlobalInAf definition. + leaf networkRmapNameAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of networkRmapNameAf definition. - leaf peerBgpAttrNextHopAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of peerBgpAttrNextHopAf definition. + leaf backdoorAf { + type cml_data_types:CML_BOOL_T; + default false; + description "network address with backdoor for address family"; + } // END of backdoorAf definition. - leaf peerBgpAttrNextHopLenAf { - type cml_data_types:CML_STRING_T; + leaf ntwkPathCountRouteAf { + type cml_data_types:CML_INT32_T; config false; - } // END of peerBgpAttrNextHopLenAf definition. + } // END of ntwkPathCountRouteAf definition. - leaf peerBgpAttrMpNexthopGlobalAf { - type cml_data_types:CML_STRING_T; + leaf noAdvertiseRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of peerBgpAttrMpNexthopGlobalAf definition. + } // END of noAdvertiseRouteAf definition. - leaf peerBgpAttrMpNexthopLocalAf { - type cml_data_types:CML_STRING_T; + leaf noExportRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of peerBgpAttrMpNexthopLocalAf definition. + } // END of noExportRouteAf definition. - leaf peerBgpUpTimeAf { - type cml_data_types:CML_STRING_T; + leaf localAsRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of peerBgpUpTimeAf definition. + } // END of localAsRouteAf definition. - leaf peerMedFlagTypeAf { - type cml_data_types:CML_STRING_T; + leaf suppressRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of peerMedFlagTypeAf definition. + } // END of suppressRouteAf definition. - leaf peerBgpMedValAf { + leaf ntwkBestPathCountRouteAf { type cml_data_types:CML_INT32_T; config false; - } // END of peerBgpMedValAf definition. + } // END of ntwkBestPathCountRouteAf definition. - leaf peerBgpAsPathStrAf { - type cml_data_types:CML_STRING_T; + leaf defIPRoutingTblAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of peerBgpAsPathStrAf definition. + } // END of defIPRoutingTblAf definition. - leaf peerBgpAsPath4BStrAf { - type cml_data_types:CML_STRING_T; + leaf advPeerAddrRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of peerBgpAsPath4BStrAf definition. + } // END of advPeerAddrRouteAf definition. - leaf peerBgpAsPathOriginAf { - type cml_data_types:CML_STRING_T; + leaf advPeerGroupNameRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of peerBgpAsPathOriginAf definition. + } // END of advPeerGroupNameRouteAf definition. - leaf peerBgpAsPath4BOriginAf { - type cml_data_types:CML_STRING_T; + leaf advAnyPeerAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of peerBgpAsPath4BOriginAf definition. - - } // End of peerAdjRouteAf-list - } // End of bgpPeerSubAddressFamily-list - } // End of bgpPeerAddressFamily-list - } // End of bgpPeer-list - - list addrFamily { - - description - "addrFamily"; - - config true; - key "afi"; - - - leaf afi { - type cml_data_types:CML_AFI_TYPE_T; - config true; - } // END of afi definition. - - - list subAddrFamily { - - description - "subAddrFamily"; - - config true; - key "safi"; - - - leaf safi { - type cml_data_types:CML_SAFI_TYPE_T; - config true; - } // END of safi definition. - - leaf additionalPathsAf { - if-feature feature_list:HAVE_BGP_ADD_PATH; - type cml_data_types:BGP_ADDITIONAL_PATH_TYPE_T; - config true; - description "additional paths for address-family"; - } // END of additionalPathsAf definition. - - leaf addPathSelectAllAf { - if-feature feature_list:HAVE_BGP_ADD_PATH; - type cml_data_types:CML_BOOL_T; - config true; - description "select all path for address-family"; - } // END of addPathSelectAllAf definition. - - leaf bestCountAf { - if-feature feature_list:HAVE_BGP_ADD_PATH; - type cml_data_types:CML_UINT8_T { - range "2..3"; - } - config true; - description "select best path for address-family"; - } // END of bestCountAf definition. - - leaf setClientReflectAf { - type cml_data_types:CML_BOOL_T; - config true; - description "bgp client-to-client reflection for address-family"; - } // END of setClientReflectAf definition. - - leaf ntwkPrefixCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of ntwkPrefixCountAf definition. - - leaf ntwkRouterIpAddrAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of ntwkRouterIpAddrAf definition. - - leaf bgpTableVersionAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpTableVersionAf definition. + } // END of advAnyPeerAf definition. - list bgpAddressFamilyAggregateAddrList { - - description - "bgpAddressFamilyAggregateAddrList"; - - config true; - key "aggregateAddrAf"; + list nextHopAf { + + description + "nextHopAf"; - - leaf aggregateAddrAf { - type cml_data_types:CML_STRING_T; - config true; - description "aggregate-address for address-family"; - } // END of aggregateAddrAf definition. + config false; + key "nextHopAddrAf"; - leaf aggregateTypeAf { - type cml_data_types:CML_BGP_AGGREGATE_ADDR_TYPE_T; - config true; - description "aggregate-address-type for address-family"; - } // END of aggregateTypeAf definition. + + leaf nextHopAddrAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopAddrAf definition. + + leaf rfdFlapCountAf { + type cml_data_types:CML_INT32_T; + } // END of rfdFlapCountAf definition. + + leaf dampInfoTimesAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of dampInfoTimesAf definition. + + leaf peerNtwkWeightAf { + type cml_data_types:CML_INT32_T; + } // END of peerNtwkWeightAf definition. + + leaf flapTimeReuseListAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of flapTimeReuseListAf definition. + + leaf flapRecordDurationAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of flapRecordDurationAf definition. + + leaf dampTimeToReuseAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of dampTimeToReuseAf definition. + + leaf bgpInfoFlagAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpInfoFlagAf definition. + + leaf bgpAttrNextHopAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpAttrNextHopAf definition. + + leaf bgpAttrNextHopLenAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpAttrNextHopLenAf definition. + + leaf bgpUpTimeAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpUpTimeAf definition. + + leaf medFlagTypeAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of medFlagTypeAf definition. + + leaf bgpMedValAf { + type cml_data_types:CML_INT32_T; + } // END of bgpMedValAf definition. + + leaf bgpAsPathStrAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpAsPathStrAf definition. + + leaf bgpAsPath4BStrAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpAsPath4BStrAf definition. + + leaf bgpAsPathOriginAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpAsPathOriginAf definition. + + leaf bgpAsPath4BOriginAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpAsPath4BOriginAf definition. + + leaf ibgpMetricRouteAf { + type cml_data_types:CML_INT32_T; + } // END of ibgpMetricRouteAf definition. + + leaf aggregateAsRouteAf { + type cml_data_types:CML_INT32_T; + } // END of aggregateAsRouteAf definition. + + leaf aggregatorAddrRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of aggregatorAddrRouteAf definition. + + leaf networkRemoteAddrRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of networkRemoteAddrRouteAf definition. + + leaf originatorIdRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of originatorIdRouteAf definition. + + leaf routePeerAddrRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of routePeerAddrRouteAf definition. + + leaf routeLocalPrefRouteAf { + type cml_data_types:CML_INT32_T; + } // END of routeLocalPrefRouteAf definition. + + leaf briLabelRouteAf { + type cml_data_types:CML_INT32_T; + } // END of briLabelRouteAf definition. + + leaf routeCommNameRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of routeCommNameRouteAf definition. + + leaf clusterListRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of clusterListRouteAf definition. + + leaf routeGetPenaltyRouteAf { + type cml_data_types:CML_INT32_T; + } // END of routeGetPenaltyRouteAf definition. + + leaf routeGetFlapCountRouteAf { + type cml_data_types:CML_INT32_T; + } // END of routeGetFlapCountRouteAf definition. + + leaf lastUpdateRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of lastUpdateRouteAf definition. + + leaf reflectorClientRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of reflectorClientRouteAf definition. + + leaf routeDampeningFlagRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of routeDampeningFlagRouteAf definition. + + leaf historyRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of historyRouteAf definition. + + leaf nhopValidRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nhopValidRouteAf definition. + + leaf routeMedFlagTypeRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of routeMedFlagTypeRouteAf definition. + + leaf routeValidStateRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of routeValidStateRouteAf definition. + + leaf bgpInfoStaleRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpInfoStaleRouteAf definition. + + leaf routePeerLocalAsRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of routePeerLocalAsRouteAf definition. + + leaf bgpConfedPeerRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpConfedPeerRouteAf definition. + + leaf bgpInfoTypeRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpInfoTypeRouteAf definition. + + leaf ecmpMultiCandidateRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ecmpMultiCandidateRouteAf definition. + + leaf multiInstalledRouteAf { + type cml_data_types:CML_INT32_T; + } // END of multiInstalledRouteAf definition. + + leaf routeSyncFlagRouteAf { + type cml_data_types:CML_BOOL_T; + } // END of routeSyncFlagRouteAf definition. + + leaf atomicAggregateRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of atomicAggregateRouteAf definition. + + leaf bgpInfoSelectedRouteAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpInfoSelectedRouteAf definition. + + } // End of nextHopAf-list + } // End of bgpAddressFamilyNetworkList-list - leaf aggregateAsSetAf { - type cml_data_types:CML_BOOL_T; - config true; - description "redistribute as-set for address family"; - } // END of aggregateAsSetAf definition. + list bgpAddressFamilyRedistListOspf { + + description + "bgpAddressFamilyRedistListOspf"; - leaf aggregateSummOnlyAf { - type cml_data_types:CML_BOOL_T; config true; - description "redistribute summary-only for address family"; - } // END of aggregateSummOnlyAf definition. - - } // End of bgpAddressFamilyAggregateAddrList-list - - list networkListAf { - - description - "networkListAf"; - - config false; - key "networkAddrAf"; - - - leaf networkAddrAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of networkAddrAf definition. - - leaf ipv6Cmd { - type cml_data_types:CML_INT32_T; - config false; - } // END of ipv6Cmd definition. - - leaf ntwkLocalPrefAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of ntwkLocalPrefAf definition. - - leaf bgpShowTypeStrAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpShowTypeStrAf definition. - - leaf bgpLongerPrefixCmdAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpLongerPrefixCmdAf definition. - - leaf dampInfoTimesAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of dampInfoTimesAf definition. - - leaf routeGetFlapCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeGetFlapCountAf definition. + key "redistOspfAf"; - leaf ntwkPathCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of ntwkPathCountAf definition. + + leaf redistOspfAf { + type cml_data_types:CML_BOOL_T; + description "redistribute for address-family"; + } // END of redistOspfAf definition. - leaf showBgpNtwkCmdAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of showBgpNtwkCmdAf definition. - leaf peerNtwkWeightAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of peerNtwkWeightAf definition. + list bgpRmapAf { + + description + "bgpRmapAf"; - leaf flapTimeReuseListAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of flapTimeReuseListAf definition. + config true; + key "redistRmapNameAf"; - leaf flapRecordDurationAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of flapRecordDurationAf definition. + + leaf redistRmapNameAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "redistribute route map reference for address family"; + } // END of redistRmapNameAf definition. - leaf bgpDampPathCmdAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpDampPathCmdAf definition. + } // End of bgpRmapAf-list + } // End of bgpAddressFamilyRedistListOspf-list - leaf bgpDampFlapCmdAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpDampFlapCmdAf definition. + list bgpAddressFamilyRedistList { + + description + "bgpAddressFamilyRedistList"; - leaf bgpIncosistentAsCmdAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpIncosistentAsCmdAf definition. + config true; + key "redistTypeAf"; - leaf dampTimeToReuseAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of dampTimeToReuseAf definition. + + leaf redistTypeAf { + type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; + description "redistribute for address-family"; + } // END of redistTypeAf definition. - leaf ntwkPrefixBestPathCountAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of ntwkPrefixBestPathCountAf definition. - leaf checkCidrAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of checkCidrAf definition. + list bgpRmapAf { + + description + "bgpRmapAf"; - leaf bgpCommunityCmdAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpCommunityCmdAf definition. + config true; + key "redistRmapNameAf"; - leaf bgpInfoFlagAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpInfoFlagAf definition. + + leaf redistRmapNameAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "redistribute route map reference for address family"; + } // END of redistRmapNameAf definition. - leaf bgpAttrMpNexthopGlobalInAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAttrMpNexthopGlobalInAf definition. + } // End of bgpRmapAf-list + } // End of bgpAddressFamilyRedistList-list - leaf bgpAttrNextHopAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAttrNextHopAf definition. + list bgpRedistOspfAf { + + description + "bgpRedistOspfAf"; - leaf bgpAttrMpNexthopGlobalAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAttrMpNexthopGlobalAf definition. + config true; + key "redistOspfNoAf"; - leaf bgpAttrNextHopLenAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAttrNextHopLenAf definition. + + leaf redistOspfNoAf { + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + description "redistribute with ospf proc Id for address family"; + } // END of redistOspfNoAf definition. - leaf bgpAttrMpNexthopLocalAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAttrMpNexthopLocalAf definition. - leaf bgpUpTimeAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpUpTimeAf definition. + list bgpRmapAf { + + description + "bgpRmapAf"; - leaf medFlagTypeAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of medFlagTypeAf definition. + config true; + key "redistOspfRmapAf"; - leaf bgpMedValAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpMedValAf definition. + + leaf redistOspfRmapAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "redistribute with ospf proc Id and route map reference for address family"; + } // END of redistOspfRmapAf definition. - leaf bgpAsPathStrAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAsPathStrAf definition. + } // End of bgpRmapAf-list + } // End of bgpRedistOspfAf-list + } // End of vrfobj-list + } // End of subAddrFamily-list + } // End of addrFamily-list + } // End of bgp-list + } // END of bgp-grouping definition. - leaf bgpAsPath4BStrAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAsPath4BStrAf definition. - leaf bgpAsPathOriginAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAsPathOriginAf definition. + grouping bgpGlobal-grouping { + list bgpGlobal { + + description + "BGP global commands"; - leaf bgpAsPath4BOriginAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpAsPath4BOriginAf definition. + config true; + key "vrId"; - } // End of networkListAf-list + + leaf vrId { + type cml_data_types:CML_UINT32_T; + } // END of vrId definition. - list bgpShowRouteAf { - - description - "bgpShowRouteAf"; + leaf snmpRestart { + if-feature feature_list:HAVE_SNMP; + type cml_data_types:CML_BOOL_T; + description "snmp restart bgp"; + } // END of snmpRestart definition. - config false; - key "networkAddrRouteAf"; + leaf aggNexthop { + type cml_data_types:CML_BOOL_T; + description "bgp aggregate-nexthop-check"; + } // END of aggNexthop definition. - - leaf networkAddrRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of networkAddrRouteAf definition. + leaf pathSelect { + type cml_data_types:CML_BOOL_T; + description "bgp rfc1771-path-select"; + } // END of pathSelect definition. - leaf ntwkPathCountRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of ntwkPathCountRouteAf definition. + leaf setDisableAdjOut { + type cml_data_types:CML_BOOL_T; + description "bgp disable-adj-out"; + } // END of setDisableAdjOut definition. - leaf ntwkPrefixBestPathCountRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of ntwkPrefixBestPathCountRouteAf definition. + leaf setExtAsnCap { + if-feature feature_list:HAVE_EXT_CAP_ASN; + type cml_data_types:CML_BOOL_T; + description "bgp extended-asn-cap"; + } // END of setExtAsnCap definition. - leaf noAdvertiseRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of noAdvertiseRouteAf definition. + leaf setNexthopTriggerEnable { + type cml_data_types:CML_BOOL_T; + description "bgp nexthop-trigger enable"; + } // END of setNexthopTriggerEnable definition. - leaf noExportRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of noExportRouteAf definition. + leaf delayInterval { + type cml_data_types:CML_UINT8_T { + range "1..100"; + } + default "5"; + description "bgp nexthop-trigger delay"; + } // END of delayInterval definition. - leaf localAsRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of localAsRouteAf definition. + leaf rfc1771StrictSet { + type cml_data_types:CML_BOOL_T; + description "bgp rfc1771-strict"; + } // END of rfc1771StrictSet definition. - leaf suppressRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of suppressRouteAf definition. + leaf multiInstance { + type cml_data_types:CML_BOOL_T; + description "bgp multiple-instance"; + } // END of multiInstance definition. - leaf advPeerGroupRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of advPeerGroupRouteAf definition. + leaf allowSamePeer { + type cml_data_types:CML_BOOL_T; + description "bgp multiple-instance allow-same-peer"; + } // END of allowSamePeer definition. - leaf advPeerAddrRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of advPeerAddrRouteAf definition. + leaf configType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bgp config-type"; + } // END of configType definition. - leaf advNonPeerGroupRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of advNonPeerGroupRouteAf definition. - leaf advPeerGroupNameRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of advPeerGroupNameRouteAf definition. + list communityList { + + description + "communityList"; - container routeShowVtyOut { - config false; + config true; + key "commListName"; - description - "routeShowVtyOut"; + + leaf commListName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of commListName definition. - leaf ibgpMetricRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of ibgpMetricRouteAf definition. - leaf routeBgpAsPathRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeBgpAsPathRouteAf definition. + list commListAction { + + description + "commListAction"; - leaf aggregateAsRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of aggregateAsRouteAf definition. + config true; + key "action"; - leaf aggregatorAddrRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of aggregatorAddrRouteAf definition. + + leaf action { + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + } // END of action definition. - leaf reflectorClientRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of reflectorClientRouteAf definition. - leaf routeDampeningFlagRouteAf { - type cml_data_types:CML_BOOL_T; - config false; - } // END of routeDampeningFlagRouteAf definition. + list commListVal { + + description + "commListVal"; - leaf historyRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of historyRouteAf definition. + config true; + key "commListValue"; - leaf routeAttrMpNexthopGlobalInRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeAttrMpNexthopGlobalInRouteAf definition. + + leaf commListValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "community-list"; + } // END of commListValue definition. - leaf routeAttrNextHopRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeAttrNextHopRouteAf definition. + } // End of commListVal-list + } // End of commListAction-list + } // End of communityList-list - leaf routeAttrMpNexthopGlobalRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeAttrMpNexthopGlobalRouteAf definition. + list communityListNo { + + description + "communityListNo"; - leaf routeAttrMpNexthopLocalRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeAttrMpNexthopLocalRouteAf definition. + config true; + key "commListStandNo"; - leaf routeAttrMpNexthopLocal1RouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeAttrMpNexthopLocal1RouteAf definition. + + leaf commListStandNo { + type cml_data_types:CML_UINT32_T { + range "1..99"; + } + } // END of commListStandNo definition. - leaf nhopValidRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of nhopValidRouteAf definition. - leaf routePeerAddrRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of routePeerAddrRouteAf definition. + list commListAction { + + description + "commListAction"; - leaf originatorIdRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of originatorIdRouteAf definition. + config true; + key "action"; - leaf originatorId1RouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of originatorId1RouteAf definition. + + leaf action { + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + description "action type for community-list number"; + } // END of action definition. - leaf networkRemoteAddrRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of networkRemoteAddrRouteAf definition. - leaf ntwkBgpOriginRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of ntwkBgpOriginRouteAf definition. + list commListVal { + + description + "commListVal"; - leaf routeMedFlagTypeRouteAf { - type cml_data_types:CML_BOOL_T; - config false; - } // END of routeMedFlagTypeRouteAf definition. + config true; + key "commListValue"; - leaf routeMedValRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeMedValRouteAf definition. + + leaf commListValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "community-list number"; + } // END of commListValue definition. - leaf routeLocalPrefRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeLocalPrefRouteAf definition. + } // End of commListVal-list + } // End of commListAction-list + } // End of communityListNo-list - leaf routeWeightRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeWeightRouteAf definition. + list communityListStand { + + description + "communityListStand"; - leaf briLabelRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of briLabelRouteAf definition. + config true; + key "commListName"; - leaf routeValidStateRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeValidStateRouteAf definition. + + leaf commListName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of commListName definition. - leaf bgpInfoStaleRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpInfoStaleRouteAf definition. - leaf routePeerLocalAsRouteAf { - type cml_data_types:CML_BOOL_T; - config false; - } // END of routePeerLocalAsRouteAf definition. + list commListAction { + + description + "commListAction"; - leaf bgpConfedPeerRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpConfedPeerRouteAf definition. + config true; + key "action"; - leaf bgpInfoTypeRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of bgpInfoTypeRouteAf definition. + + leaf action { + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + description "action type for standard community name"; + } // END of action definition. - leaf ecmpMultiCandidateRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of ecmpMultiCandidateRouteAf definition. - leaf multiInstalledRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiInstalledRouteAf definition. + list commListVal { + + description + "commListVal"; - leaf routeSyncFlagRouteAf { - type cml_data_types:CML_BOOL_T; - config false; - } // END of routeSyncFlagRouteAf definition. + config true; + key "commListValue"; - leaf atomicAggregateRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of atomicAggregateRouteAf definition. + + leaf commListValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "standard community name"; + } // END of commListValue definition. - leaf bgpInfoSelectedRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of bgpInfoSelectedRouteAf definition. + } // End of commListVal-list + } // End of commListAction-list + } // End of communityListStand-list - leaf routeCommNameRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeCommNameRouteAf definition. + list communityListExp { + + description + "communityListExp"; - leaf clusterListRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of clusterListRouteAf definition. + config true; + key "commListNo"; - leaf routeGetPenaltyRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeGetPenaltyRouteAf definition. + + leaf commListNo { + type cml_data_types:CML_UINT32_T { + range "100..500"; + } + } // END of commListNo definition. - leaf routRecordTimeRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of routRecordTimeRouteAf definition. - leaf routeGetFlapCountRouteAf { - type cml_data_types:CML_INT32_T; - config false; - } // END of routeGetFlapCountRouteAf definition. + list commListAction { + + description + "commListAction"; - leaf routeGetReuseTimeRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeGetReuseTimeRouteAf definition. + config true; + key "action"; - leaf lastUpdateRouteAf { - type cml_data_types:CML_STRING_T; - config false; - } // END of lastUpdateRouteAf definition. + + leaf action { + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + } // END of action definition. - } // END of routeShowVtyOut-container definition. - } // End of bgpShowRouteAf-list - list vrfobj { + list commListVal { description - "vrfobj"; + "commListVal"; config true; - key "vrfName"; + key "regExpList"; - leaf vrfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of vrfName definition. - - leaf autoSummaryAf { - type cml_data_types:CML_BOOL_T; - config true; - description "auto-summary for address-family"; - } // END of autoSummaryAf definition. - - leaf setNwSyncFlagAf { - type cml_data_types:CML_BOOL_T; - config true; - description "network synchronization for address-family"; - } // END of setNwSyncFlagAf definition. - - leaf halfLifeAf { - type cml_data_types:CML_UINT32_T { - range "1..45"; + leaf regExpList { + type cml_data_types:CML_STRING_T { + length "0..255"; } - default "15"; - config true; - description "bgp route dampening reachability half-life time for address family"; - } // END of halfLifeAf definition. + description "expanded community-list number"; + } // END of regExpList definition. - leaf reusePenaltyAf { - type cml_data_types:CML_UINT32_T { - range "1..20000"; - } - config true; - } // END of reusePenaltyAf definition. + } // End of commListVal-list + } // End of commListAction-list + } // End of communityListExp-list - leaf suppressPenaltyAf { - type cml_data_types:CML_UINT32_T { - range "1..20000"; - } - config true; - } // END of suppressPenaltyAf definition. + list communityListExpand { + + description + "communityListExpand"; - leaf maxSuppressAf { - type cml_data_types:CML_UINT32_T { - range "1..255"; - } - config true; - description "bgp route dampening to start suppressing a route for address family"; - } // END of maxSuppressAf definition. + config true; + key "commListExpName"; - leaf unreachHalfLifeAf { - type cml_data_types:CML_UINT32_T { - range "1..45"; - } - config true; - description "bgp route dampening Un-reachability Half-life time for address family"; - } // END of unreachHalfLifeAf definition. + + leaf commListExpName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of commListExpName definition. - leaf dampeningRmapNameAf { - type cml_data_types:CML_STRING_T; - config true; - description "bgp dampening route-map for address-family"; - } // END of dampeningRmapNameAf definition. - leaf tableMapAf { - if-feature feature_list:HAVE_BGP_TABLE_MAP; - type cml_data_types:CML_STRING_T; - config true; - description "bgp table-map for address-family"; - } // END of tableMapAf definition. + list commListAction { + + description + "commListAction"; - leaf tableMapFilterAf { - if-feature feature_list:HAVE_BGP_TABLE_MAP; - type cml_data_types:CML_BOOL_T; - config true; - description "bgp table-map filter for address-family"; - } // END of tableMapFilterAf definition. + config true; + key "action"; - leaf setDampeningFlagAf { - type cml_data_types:CML_BOOL_T; - config true; - description "bgp dampening for address-family"; - } // END of setDampeningFlagAf definition. + + leaf action { + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + } // END of action definition. - leaf distanceEbgpAf { - type cml_data_types:CML_UINT8_T { - range "1..255"; - } - default "20"; - config true; - } // END of distanceEbgpAf definition. - leaf distanceIbgpAf { - type cml_data_types:CML_UINT8_T { - range "1..255"; - } - default "200"; - config true; - } // END of distanceIbgpAf definition. + list commListVal { + + description + "commListVal"; - leaf distanceLocalAf { - type cml_data_types:CML_UINT8_T { - range "1..255"; - } - default "200"; - config true; - description "administrative distance for address-family"; - } // END of distanceLocalAf definition. + config true; + key "regExpList"; - leaf setSyncFlagAf { - type cml_data_types:CML_BOOL_T; - config true; - description "synchronization for address-family"; - } // END of setSyncFlagAf definition. + + leaf regExpList { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "community-list expanded"; + } // END of regExpList definition. - leaf setGshutAf { - type cml_data_types:CML_BOOL_T; - config true; - description "bgp g-shut for address family"; - } // END of setGshutAf definition. + } // End of commListVal-list + } // End of commListAction-list + } // End of communityListExpand-list - leaf setGshutCapableAf { - type cml_data_types:CML_BOOL_T; - config true; - description "bgp g-shut-capable for address-family"; - } // END of setGshutCapableAf definition. + list extCommuListNo { + + description + "extCommuListNo"; - leaf gshutLocalPrefAf { - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - default "0"; - config true; - description "bgp g-shut-local-preference for address-family"; - } // END of gshutLocalPrefAf definition. + config true; + key "extCommListStandNo"; - leaf bgpTypeAf { - type cml_data_types:CML_BGP_MAXPATH_T; - config true; - } // END of bgpTypeAf definition. + + leaf extCommListStandNo { + type cml_data_types:CML_UINT32_T { + range "1..99"; + } + } // END of extCommListStandNo definition. - leaf multipathsNumAf { - type cml_data_types:CML_INT32_T { - range "2..64"; - } - default "2"; - config true; - description "multipath ECMP numbers for eBGP or iBGP address family"; - } // END of multipathsNumAf definition. - leaf confedIdAf { - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - config true; - description "bgp confederation identifier in digits for address-family"; - } // END of confedIdAf definition. + list extCommListAction { + + description + "extCommListAction"; + config true; + key "extAction"; - list bgpConfed { - - description - "bgpConfed"; + + leaf extAction { + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + } // END of extAction definition. - config true; - key "peerConfedIdAf"; - - leaf peerConfedIdAf { - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - config true; - description "bgp confederation peers for address-family"; - } // END of peerConfedIdAf definition. + list extCommListVal { + + description + "extCommListVal"; - } // End of bgpConfed-list + config true; + key "extCommListValue"; - list bgpAddressFamilyNetworkList { - - description - "bgpAddressFamilyNetworkList"; + + leaf extCommListValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "standard extended community list number"; + } // END of extCommListValue definition. - config true; - key "localAddrAf"; + } // End of extCommListVal-list + } // End of extCommListAction-list + } // End of extCommuListNo-list - - leaf localAddrAf { - type cml_data_types:CML_STRING_T; - config true; - } // END of localAddrAf definition. + list extCommListStand { + + description + "extCommListStand"; - leaf localAddrMaskAf { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - description "network address with mask for address family"; - } // END of localAddrMaskAf definition. + config true; + key "extCommListName"; - leaf networkRmapNameAf { - type cml_data_types:CML_STRING_T; - config true; - } // END of networkRmapNameAf definition. + + leaf extCommListName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of extCommListName definition. - leaf backdoorAf { - type cml_data_types:CML_BOOL_T; - default false; - config true; - description "network address with backdoor for address family"; - } // END of backdoorAf definition. + leaf delExcomm { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of delExcomm definition. - } // End of bgpAddressFamilyNetworkList-list - list bgpAddressFamilyRedistList { - - description - "bgpAddressFamilyRedistList"; + list extCommListAction { + + description + "extCommListAction"; - config true; - key "redistTypeAf"; + config true; + key "extAction"; - - leaf redistTypeAf { - type cml_data_types:CML_BGP_REDISTRIBUTE_TYPE_T; - config true; - description "redistribute for address-family"; - } // END of redistTypeAf definition. + + leaf extAction { + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + } // END of extAction definition. - list bgpRmapAf { - - description - "bgpRmapAf"; + list routeTargetSoo { + + description + "routeTargetSoo"; - config true; - key "redistRmapNameAf"; + config true; + key "rtSoo"; - - leaf redistRmapNameAf { - type cml_data_types:CML_STRING_T; - config true; - description "redistribute route map reference for address family"; - } // END of redistRmapNameAf definition. + + leaf rtSoo { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of rtSoo definition. - } // End of bgpRmapAf-list - } // End of bgpAddressFamilyRedistList-list - list bgpRedistOspfAf { + list extCommListVal { description - "bgpRedistOspfAf"; + "extCommListVal"; config true; - key "redistOspfNoAf"; + key "extCommListValue"; - leaf redistOspfNoAf { - type cml_data_types:CML_UINT32_T { - range "0..65535"; + leaf extCommListValue { + type cml_data_types:CML_STRING_T { + length "0..255"; } - config true; - description "redistribute with ospf proc Id for address family"; - } // END of redistOspfNoAf definition. - - - list bgpRmapAf { - - description - "bgpRmapAf"; - - config true; - key "redistOspfRmapAf"; - - - leaf redistOspfRmapAf { - type cml_data_types:CML_STRING_T; - config true; - description "redistribute with ospf proc Id and route map reference for address family"; - } // END of redistOspfRmapAf definition. - - } // End of bgpRmapAf-list - } // End of bgpRedistOspfAf-list - } // End of vrfobj-list - } // End of subAddrFamily-list - } // End of addrFamily-list - } // End of bgp-list - } // END of bgp-grouping definition. - - - grouping bgpGlobal-grouping { - list bgpGlobal { - - description - "BGP global commands"; - - config true; - key "vrId"; + description "standard extended-community list for rt or soo"; + } // END of extCommListValue definition. - - leaf vrId { - type cml_data_types:CML_UINT32_T; - config true; - } // END of vrId definition. + } // End of extCommListVal-list + } // End of routeTargetSoo-list + } // End of extCommListAction-list + } // End of extCommListStand-list - leaf snmpRestart { - if-feature feature_list:HAVE_SNMP; - type cml_data_types:CML_BOOL_T; - config true; - description "snmp restart bgp"; - } // END of snmpRestart definition. + list extCommunityListExp { + + description + "extCommunityListExp"; - leaf aggNexthop { - type cml_data_types:CML_BOOL_T; config true; - description "bgp aggregate-nexthop-check"; - } // END of aggNexthop definition. + key "extCommListNo"; - leaf pathSelect { - type cml_data_types:CML_BOOL_T; - config true; - description "bgp rfc1771-path-select"; - } // END of pathSelect definition. + + leaf extCommListNo { + type cml_data_types:CML_UINT32_T { + range "100..500"; + } + } // END of extCommListNo definition. - leaf setDisableAdjOut { - type cml_data_types:CML_BOOL_T; - config true; - description "bgp disable-adj-out"; - } // END of setDisableAdjOut definition. - leaf setExtAsnCap { - if-feature feature_list:HAVE_EXT_CAP_ASN; - type cml_data_types:CML_BOOL_T; - config true; - description "bgp extended-asn-cap"; - } // END of setExtAsnCap definition. + list extCommListAction { + + description + "extCommListAction"; - leaf setNexthopTriggerEnable { - type cml_data_types:CML_BOOL_T; - config true; - description "bgp nexthop-trigger enable"; - } // END of setNexthopTriggerEnable definition. + config true; + key "extAction"; - leaf delayInterval { - type cml_data_types:CML_UINT8_T { - range "1..100"; - } - default "5"; - config true; - description "bgp nexthop-trigger delay"; - } // END of delayInterval definition. + + leaf extAction { + type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; + } // END of extAction definition. - leaf rfc1771StrictSet { - type cml_data_types:CML_BOOL_T; - config true; - description "bgp rfc1771-strict"; - } // END of rfc1771StrictSet definition. - leaf multiInstance { - type cml_data_types:CML_BOOL_T; - config true; - description "bgp multiple-instance"; - } // END of multiInstance definition. + list extCommListVal { + + description + "extCommListVal"; - leaf allowSamePeer { - type cml_data_types:CML_BOOL_T; - config true; - description "bgp multiple-instance allow-same-peer"; - } // END of allowSamePeer definition. + config true; + key "extCommListValue"; - leaf configType { - type cml_data_types:CML_STRING_T; - config true; - description "bgp config-type"; - } // END of configType definition. + + leaf extCommListValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "extended community list number"; + } // END of extCommListValue definition. + } // End of extCommListVal-list + } // End of extCommListAction-list + } // End of extCommunityListExp-list - list communityList { + list extCommListExpand { description - "communityList"; + "extCommListExpand"; config true; - key "commListName"; + key "extCommListExpName"; - leaf commListName { - type cml_data_types:CML_STRING_T; - config true; - } // END of commListName definition. + leaf extCommListExpName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of extCommListExpName definition. - list commListAction { + list extCommListAction { description - "commListAction"; + "extCommListAction"; config true; - key "action"; + key "extAction"; - leaf action { + leaf extAction { type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; - config true; - } // END of action definition. + } // END of extAction definition. - list commListVal { + list extCommListVal { description - "commListVal"; + "extCommListVal"; config true; - key "commListValue"; + key "extCommListValue"; - leaf commListValue { - type cml_data_types:CML_STRING_T; - config true; - description "community-list"; - } // END of commListValue definition. + leaf extCommListValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "expanded community list number"; + } // END of extCommListValue definition. - } // End of commListVal-list - } // End of commListAction-list - } // End of communityList-list + } // End of extCommListVal-list + } // End of extCommListAction-list + } // End of extCommListExpand-list - list communityListNo { + list accessList { description - "communityListNo"; + "accessList"; config true; - key "commListStandNo"; + key "accessListName"; - leaf commListStandNo { - type cml_data_types:CML_UINT32_T { - range "1..99"; + leaf accessListName { + type cml_data_types:CML_STRING_T { + length "0..255"; } - config true; - } // END of commListStandNo definition. + } // END of accessListName definition. - list commListAction { + list accessListDirection { description - "commListAction"; + "accessListDirection"; config true; - key "action"; + key "accessListDirection"; - leaf action { + leaf accessListDirection { type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; - config true; - description "action type for community-list number"; - } // END of action definition. + } // END of accessListDirection definition. - list commListVal { + list bgpRegExp { description - "commListVal"; + "bgpRegExp"; config true; - key "commListValue"; + key "bgpRegExp"; - leaf commListValue { - type cml_data_types:CML_STRING_T; - config true; - description "community-list number"; - } // END of commListValue definition. + leaf bgpRegExp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip as-path access-list"; + } // END of bgpRegExp definition. - } // End of commListVal-list - } // End of commListAction-list - } // End of communityListNo-list + } // End of bgpRegExp-list + } // End of accessListDirection-list + } // End of accessList-list + } // End of bgpGlobal-list + } // END of bgpGlobal-grouping definition. - list communityListStand { + + grouping bgpDebug-grouping { + list bgpDebug { + + description + "bgpDebug"; + + config true; + key "vrId"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + } // END of vrId definition. + + leaf debugFlag { + type cml_data_types:CML_BGP_DEBUG_TYPE_T; + default "all"; + } // END of debugFlag definition. + + leaf undebugFlag { + type cml_data_types:CML_BGP_DEBUG_TYPE_T; + default "all"; + } // END of undebugFlag definition. + + leaf debugUpdateFlag { + type cml_data_types:CML_BGP_UPDATE_DEBUG_TYPE_T; + } // END of debugUpdateFlag definition. + + } // End of bgpDebug-list + } // END of bgpDebug-grouping definition. + + + grouping hashTableSize-grouping { + list hashTableSize { + + description + "hashTableSize"; + + config false; + key "hashSize"; + + + leaf hashSize { + type cml_data_types:CML_INT32_T; + } // END of hashSize definition. + + container hashTableInfo { + config false; + + description + "hashTableInfo"; + + leaf hashBacket { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of hashBacket definition. + + leaf hashRefCnt { + type cml_data_types:CML_INT32_T; + } // END of hashRefCnt definition. + + leaf hashAsStr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of hashAsStr definition. + + leaf hashComStr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of hashComStr definition. + + } // END of hashTableInfo-container definition. + } // End of hashTableSize-list + } // END of hashTableSize-grouping definition. + + + grouping vrfTable-grouping { + list vrfTable { + + description + "vrfTable"; + + config true; + key "vrfName"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + leaf importMap { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of importMap definition. + + leaf rdStr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "route distinguisher"; + } // END of rdStr definition. + + + list routeTarget { description - "communityListStand"; + "routeTarget"; config true; - key "commListName"; + key "rtRdStr"; - leaf commListName { - type cml_data_types:CML_STRING_T; - config true; - } // END of commListName definition. + leaf direct { + mandatory true; + type cml_data_types:CML_RT_T; + } // END of direct definition. + leaf rtRdStr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "route distinguisher"; + } // END of rtRdStr definition. - list commListAction { - - description - "commListAction"; + } // End of routeTarget-list + } // End of vrfTable-list + } // END of vrfTable-grouping definition. + grouping peerRuntimeAttr { + leaf maxPathIbgp { + type cml_data_types:CML_INT32_T; + config false; + } // END of maxPathIbgp definition. - config true; - key "action"; + leaf asLocalCount { + type cml_data_types:CML_INT32_T; + default "1"; + config false; + } // END of asLocalCount definition. - - leaf action { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; - config true; - description "action type for standard community name"; - } // END of action definition. + leaf cfgMaxPathEbgp { + type cml_data_types:CML_INT32_T; + config false; + } // END of cfgMaxPathEbgp definition. + + leaf maxPathEbgp { + type cml_data_types:CML_INT32_T; + config false; + } // END of maxPathEbgp definition. + + leaf cfgMaxPathIbgp { + type cml_data_types:CML_INT32_T; + config false; + } // END of cfgMaxPathIbgp definition. + + leaf bgpCommunityCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpCommunityCount definition. + + leaf peerConfedIdCheck { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerConfedIdCheck definition. + + leaf peerAdvExtAsnCap { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerAdvExtAsnCap definition. + + leaf peerAndExtAsnCap { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerAndExtAsnCap definition. + + leaf peerRecvExtAsnCap { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerRecvExtAsnCap definition. + + leaf addFamilystring { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of addFamilystring definition. + + leaf keepAliveIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of keepAliveIn definition. + + leaf keepAliveOut { + type cml_data_types:CML_INT32_T; + config false; + } // END of keepAliveOut definition. + + leaf openMsgIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of openMsgIn definition. + + leaf openMsgOut { + type cml_data_types:CML_INT32_T; + config false; + } // END of openMsgOut definition. + + leaf bgpAsPathCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpAsPathCount definition. + + leaf bgpAsPath4BCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpAsPath4BCount definition. + + leaf updateMsgIn { + type cml_data_types:CML_INT32_T; + default "0"; + config false; + } // END of updateMsgIn definition. + + leaf updateMsgOut { + type cml_data_types:CML_INT32_T; + default "0"; + config false; + } // END of updateMsgOut definition. + leaf nextHopGlobal { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of nextHopGlobal definition. - list commListVal { - - description - "commListVal"; + leaf nextHopLocal { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of nextHopLocal definition. - config true; - key "commListValue"; + leaf peerRemotePort { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerRemotePort definition. - - leaf commListValue { - type cml_data_types:CML_STRING_T; - config true; - description "standard community name"; - } // END of commListValue definition. + leaf peerRemoteAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerRemoteAddr definition. - } // End of commListVal-list - } // End of commListAction-list - } // End of communityListStand-list + leaf peerLocalHost { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerLocalHost definition. - list communityListExp { - - description - "communityListExp"; + leaf nextHop { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of nextHop definition. - config true; - key "commListNo"; + leaf peerLocalPort { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerLocalPort definition. - - leaf commListNo { - type cml_data_types:CML_UINT32_T { - range "100..500"; - } - config true; - } // END of commListNo definition. + leaf prefixListCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of prefixListCount definition. + leaf defInfoOri { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of defInfoOri definition. - list commListAction { - - description - "commListAction"; + leaf InboundPathPolicy { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of InboundPathPolicy definition. - config true; - key "action"; + leaf OutboundPathPolicy { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of OutboundPathPolicy definition. - - leaf action { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; - config true; - } // END of action definition. + leaf defOriInfoSent { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of defOriInfoSent definition. + leaf orfPrefixStr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of orfPrefixStr definition. - list commListVal { - - description - "commListVal"; + leaf orfPrefixSend { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of orfPrefixSend definition. - config true; - key "regExpList"; + leaf orfPrefixCount { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of orfPrefixCount definition. - - leaf regExpList { - type cml_data_types:CML_STRING_T; - config true; - description "expanded community-list number"; - } // END of regExpList definition. + leaf orfWaitRefresh { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of orfWaitRefresh definition. - } // End of commListVal-list - } // End of commListAction-list - } // End of communityListExp-list + leaf grstRestart { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of grstRestart definition. - list communityListExpand { - - description - "communityListExpand"; + leaf afDependentCap { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of afDependentCap definition. - config true; - key "commListExpName"; + leaf peerAfTableVersion { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerAfTableVersion definition. - - leaf commListExpName { - type cml_data_types:CML_STRING_T; - config true; - } // END of commListExpName definition. + leaf peerBgpAfTableVersion { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerBgpAfTableVersion definition. + leaf peerIndex { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerIndex definition. - list commListAction { - - description - "commListAction"; + leaf peerOffset { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerOffset definition. - config true; - key "action"; + leaf peerMask { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerMask definition. - - leaf action { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; - config true; - } // END of action definition. + leaf fwdStatusPreserve { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of fwdStatusPreserve definition. + leaf orfTypePrefix { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of orfTypePrefix definition. - list commListVal { - - description - "commListVal"; + leaf orfTypePrefixSendMode { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of orfTypePrefixSendMode definition. - config true; - key "regExpList"; + leaf orfTypePrefixRecvMode { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of orfTypePrefixRecvMode definition. - - leaf regExpList { - type cml_data_types:CML_STRING_T; - config true; - description "community-list expanded"; - } // END of regExpList definition. + leaf orfTypePrefixOld { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of orfTypePrefixOld definition. - } // End of commListVal-list - } // End of commListAction-list - } // End of communityListExpand-list + leaf orfTypePrefixSendModeOld { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of orfTypePrefixSendModeOld definition. - list extCommuListNo { - - description - "extCommuListNo"; + leaf orfTypePrefixRecvModeOld { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of orfTypePrefixRecvModeOld definition. - config true; - key "extCommListStandNo"; + leaf peerPrefixCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerPrefixCount definition. - - leaf extCommListStandNo { - type cml_data_types:CML_UINT32_T { - range "1..99"; - } - config true; - } // END of extCommListStandNo definition. + leaf peerSendPrefixCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerSendPrefixCount definition. + leaf peerFlagShutDown { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerFlagShutDown definition. - list extCommListAction { - - description - "extCommListAction"; + leaf peerCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerCount definition. - config true; - key "extAction"; + leaf brdAs { + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAs definition. - - leaf extAction { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; - config true; - } // END of extAction definition. + leaf brdAsNum { + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAsNum definition. + leaf brdAs4 { + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAs4 definition. - list extCommListVal { - - description - "extCommListVal"; + leaf brdAsNum4 { + type cml_data_types:CML_INT32_T; + config false; + } // END of brdAsNum4 definition. - config true; - key "extCommListValue"; + leaf brdIp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of brdIp definition. - - leaf extCommListValue { - type cml_data_types:CML_STRING_T; - config true; - description "standard extended community list number"; - } // END of extCommListValue definition. + leaf brdIpNum { + type cml_data_types:CML_INT32_T; + config false; + } // END of brdIpNum definition. - } // End of extCommListVal-list - } // End of extCommListAction-list - } // End of extCommuListNo-list + leaf peerNotifyInfo { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerNotifyInfo definition. - list extCommListStand { - - description - "extCommListStand"; + leaf peerNotifyDirect { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerNotifyDirect definition. - config true; - key "extCommListName"; + leaf peerNotifyLastReset { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerNotifyLastReset definition. - - leaf extCommListName { - type cml_data_types:CML_STRING_T; - config true; - } // END of extCommListName definition. + leaf notifyCodeStr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of notifyCodeStr definition. - leaf delExcomm { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; - } // END of delExcomm definition. + leaf bgpConnection { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpConnection definition. + leaf nextConnectTimer { + type cml_data_types:CML_INT32_T; + config false; + } // END of nextConnectTimer definition. - list extCommListAction { - - description - "extCommListAction"; + leaf conEstCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of conEstCount definition. - config true; - key "extAction"; + leaf conDroppedCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of conDroppedCount definition. - - leaf extAction { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; - config true; - } // END of extAction definition. + leaf peerPrefixOverflow { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerPrefixOverflow definition. + leaf peerGstatusAcceptGrst { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerGstatusAcceptGrst definition. - list routeTargetSoo { - - description - "routeTargetSoo"; + leaf peerGrstRestart { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerGrstRestart definition. - config true; - key "rtSoo"; + leaf bpfEstUpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bpfEstUpTime definition. - - leaf rtSoo { - type cml_data_types:CML_STRING_T; - config true; - } // END of rtSoo definition. + leaf lastReadTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of lastReadTime definition. + leaf bpfState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bpfState definition. - list extCommListVal { - - description - "extCommListVal"; + leaf peerLinkType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerLinkType definition. - config true; - key "extCommListValue"; + leaf hopAwayCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of hopAwayCount definition. - - leaf extCommListValue { - type cml_data_types:CML_STRING_T; - config true; - description "standard extended-community list for rt or soo"; - } // END of extCommListValue definition. + leaf peerRouterId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerRouterId definition. - } // End of extCommListVal-list - } // End of routeTargetSoo-list - } // End of extCommListAction-list - } // End of extCommListStand-list + leaf recvPacketCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of recvPacketCount definition. - list extCommunityListExp { - - description - "extCommunityListExp"; + leaf notificationIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of notificationIn definition. - config true; - key "extCommListNo"; + leaf notificationOut { + type cml_data_types:CML_INT32_T; + config false; + } // END of notificationOut definition. - - leaf extCommListNo { - type cml_data_types:CML_UINT32_T { - range "100..500"; - } - config true; - } // END of extCommListNo definition. + leaf pktInQue { + type cml_data_types:CML_INT32_T; + config false; + } // END of pktInQue definition. + leaf sentPacketCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of sentPacketCount definition. - list extCommListAction { - - description - "extCommListAction"; + leaf refreshRecvPacketCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of refreshRecvPacketCount definition. - config true; - key "extAction"; + leaf refreshSentPacketCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of refreshSentPacketCount definition. - - leaf extAction { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; - config true; - } // END of extAction definition. + leaf advertisementInterval { + type cml_data_types:CML_INT32_T; + config false; + } // END of advertisementInterval definition. + leaf peerHoldTimeRun { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerHoldTimeRun definition. - list extCommListVal { - - description - "extCommListVal"; + leaf peerKeepAliveRun { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerKeepAliveRun definition. - config true; - key "extCommListValue"; + leaf neighborCap { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of neighborCap definition. - - leaf extCommListValue { - type cml_data_types:CML_STRING_T; - config true; - description "extended community list number"; - } // END of extCommListValue definition. + leaf advertisedCapability { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of advertisedCapability definition. - } // End of extCommListVal-list - } // End of extCommListAction-list - } // End of extCommunityListExp-list + leaf advCapabilityRefresh { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of advCapabilityRefresh definition. - list extCommListExpand { - - description - "extCommListExpand"; + leaf noIfBinding { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of noIfBinding definition. - config true; - key "extCommListExpName"; - - leaf extCommListExpName { - type cml_data_types:CML_STRING_T; - config true; - } // END of extCommListExpName definition. + list peerPrefix { + + description + "peerPrefix"; + config false; + key "prefixEntrySeq"; - list extCommListAction { - - description - "extCommListAction"; + + leaf prefixEntrySeq { + type cml_data_types:CML_INT32_T; + } // END of prefixEntrySeq definition. - config true; - key "extAction"; + leaf prefixEntryType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of prefixEntryType definition. - - leaf extAction { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; - config true; - } // END of extAction definition. + leaf prefixEntryGe { + type cml_data_types:CML_INT32_T; + } // END of prefixEntryGe definition. + leaf prefixEntryLe { + type cml_data_types:CML_INT32_T; + } // END of prefixEntryLe definition. - list extCommListVal { - - description - "extCommListVal"; + leaf peerPrefixLen { + type cml_data_types:CML_INT32_T; + } // END of peerPrefixLen definition. - config true; - key "extCommListValue"; + } // End of peerPrefix-list + } // END of peerRuntimeAttr definition. + grouping nextHopRunTimeAttr { + leaf rfdFlapCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of rfdFlapCount definition. - - leaf extCommListValue { - type cml_data_types:CML_STRING_T; - config true; - description "expanded community list number"; - } // END of extCommListValue definition. + leaf dampInfoTimes { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of dampInfoTimes definition. - } // End of extCommListVal-list - } // End of extCommListAction-list - } // End of extCommListExpand-list + leaf peerNtwkWeight { + type cml_data_types:CML_INT32_T; + config false; + } // END of peerNtwkWeight definition. - list accessList { - - description - "accessList"; + leaf flapTimeReuseList { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of flapTimeReuseList definition. - config true; - key "accessListName"; + leaf flapRecordDuration { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of flapRecordDuration definition. - - leaf accessListName { - type cml_data_types:CML_STRING_T; - config true; - } // END of accessListName definition. + leaf dampTimeToReuse { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of dampTimeToReuse definition. + leaf checkCidr { + type cml_data_types:CML_INT32_T; + config false; + } // END of checkCidr definition. - list accessListDirection { - - description - "accessListDirection"; + leaf bgpInfoFlag { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpInfoFlag definition. - config true; - key "accessListDirection"; + leaf bgpAttrMpNexthopGlobalIn { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpAttrMpNexthopGlobalIn definition. - - leaf accessListDirection { - type cml_data_types:CML_BGP_COMMUNITY_LIST_ACTION_T; - config true; - } // END of accessListDirection definition. + leaf bgpAttrNextHop { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpAttrNextHop definition. + leaf bgpAttrMpNexthopGlobal { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpAttrMpNexthopGlobal definition. - list bgpRegExp { - - description - "bgpRegExp"; + leaf bgpAttrNextHopLen { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpAttrNextHopLen definition. - config true; - key "bgpRegExp"; + leaf bgpAttrMpNexthopLocal { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpAttrMpNexthopLocal definition. - - leaf bgpRegExp { - type cml_data_types:CML_STRING_T; - config true; - description "ip as-path access-list"; - } // END of bgpRegExp definition. + leaf bgpUpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpUpTime definition. - } // End of bgpRegExp-list - } // End of accessListDirection-list - } // End of accessList-list - } // End of bgpGlobal-list - } // END of bgpGlobal-grouping definition. + leaf medFlagType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of medFlagType definition. + leaf bgpMedVal { + type cml_data_types:CML_INT32_T; + config false; + } // END of bgpMedVal definition. - grouping bgpDebug-grouping { - list bgpDebug { - - description - "bgpDebug"; + leaf bgpAsPathStr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpAsPathStr definition. - config true; - key "vrId"; + leaf bgpAsPath4BStr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpAsPath4BStr definition. - - leaf vrId { - type cml_data_types:CML_UINT32_T; - config true; - } // END of vrId definition. + leaf bgpAsPathOrigin { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpAsPathOrigin definition. - leaf debugFlag { - type cml_data_types:CML_BGP_DEBUG_TYPE_T; - default "all"; - config true; - } // END of debugFlag definition. + leaf bgpAsPath4BOrigin { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpAsPath4BOrigin definition. - leaf undebugFlag { - type cml_data_types:CML_BGP_DEBUG_TYPE_T; - default "all"; - config true; - } // END of undebugFlag definition. + leaf ibgpMetricRoute { + type cml_data_types:CML_INT32_T; + config false; + } // END of ibgpMetricRoute definition. - leaf debugUpdateFlag { - type cml_data_types:CML_BGP_UPDATE_DEBUG_TYPE_T; - config true; - } // END of debugUpdateFlag definition. + leaf aggregateAsRoute { + type cml_data_types:CML_INT32_T; + config false; + } // END of aggregateAsRoute definition. - } // End of bgpDebug-list - } // END of bgpDebug-grouping definition. + leaf aggregatorAddrRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of aggregatorAddrRoute definition. + leaf networkRemoteAddrRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of networkRemoteAddrRoute definition. - grouping hashTableSize-grouping { - list hashTableSize { - - description - "hashTableSize"; + leaf originatorIdRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of originatorIdRoute definition. + leaf routePeerAddrRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - key "hashSize"; + } // END of routePeerAddrRoute definition. - - leaf hashSize { - type cml_data_types:CML_INT32_T; - config false; - } // END of hashSize definition. + leaf routeLocalPrefRoute { + type cml_data_types:CML_INT32_T; + config false; + } // END of routeLocalPrefRoute definition. - container hashTableInfo { - config false; + leaf briLabelRoute { + type cml_data_types:CML_INT32_T; + config false; + } // END of briLabelRoute definition. - description - "hashTableInfo"; + leaf routeCommNameRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of routeCommNameRoute definition. - leaf hashBacket { - type cml_data_types:CML_STRING_T; - config false; - } // END of hashBacket definition. + leaf clusterListRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of clusterListRoute definition. - leaf hashRefCnt { - type cml_data_types:CML_INT32_T; - config false; - } // END of hashRefCnt definition. + leaf routeGetPenaltyRoute { + type cml_data_types:CML_INT32_T; + config false; + } // END of routeGetPenaltyRoute definition. - leaf hashAsStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of hashAsStr definition. + leaf routeGetFlapCountRoute { + type cml_data_types:CML_INT32_T; + config false; + } // END of routeGetFlapCountRoute definition. - leaf hashComStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of hashComStr definition. + leaf lastUpdateRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of lastUpdateRoute definition. - } // END of hashTableInfo-container definition. - } // End of hashTableSize-list - } // END of hashTableSize-grouping definition. + leaf reflectorClientRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of reflectorClientRoute definition. + leaf routeDampeningFlagRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of routeDampeningFlagRoute definition. - grouping vrfTable-grouping { - list vrfTable { - - description - "vrfTable"; + leaf historyRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of historyRoute definition. - config true; - key "vrfName"; + leaf nhopValidRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of nhopValidRoute definition. - - leaf vrfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of vrfName definition. + leaf routeMedFlagTypeRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of routeMedFlagTypeRoute definition. - leaf importMap { - type cml_data_types:CML_STRING_T; - config true; - } // END of importMap definition. + leaf routeValidStateRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of routeValidStateRoute definition. - leaf rdStr { - type cml_data_types:CML_STRING_T; - config true; - description "route distinguisher"; - } // END of rdStr definition. + leaf bgpInfoStaleRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpInfoStaleRoute definition. + leaf routePeerLocalAsRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of routePeerLocalAsRoute definition. - list routeTarget { - - description - "routeTarget"; + leaf bgpConfedPeerRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpConfedPeerRoute definition. - config true; - key "rtRdStr"; + leaf bgpInfoTypeRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpInfoTypeRoute definition. - - leaf direct { - mandatory true; - type cml_data_types:CML_RT_T; - config true; - } // END of direct definition. + leaf ecmpMultiCandidateRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ecmpMultiCandidateRoute definition. - leaf rtRdStr { - type cml_data_types:CML_STRING_T; - config true; - description "route distinguisher"; - } // END of rtRdStr definition. + leaf multiInstalledRoute { + type cml_data_types:CML_INT32_T; + config false; + } // END of multiInstalledRoute definition. - } // End of routeTarget-list - } // End of vrfTable-list - } // END of vrfTable-grouping definition. + leaf routeSyncFlagRoute { + type cml_data_types:CML_BOOL_T; + config false; + } // END of routeSyncFlagRoute definition. + + leaf atomicAggregateRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of atomicAggregateRoute definition. + + leaf bgpInfoSelectedRoute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bgpInfoSelectedRoute definition. + + } // END of nextHopRunTimeAttr definition. + grouping peerVrfAttrs { + leaf bgpPortAf { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "179"; + description "neighbor port for address-family"; + } // END of bgpPortAf definition. + + leaf peerActivateAf { + type cml_data_types:CML_BOOL_T; + description "neighbor activate for address family"; + } // END of peerActivateAf definition. + + leaf defaultPeerRmapNameAf { + type cml_data_types:CML_BOOL_T; + description "neighbor default-originate for address family"; + } // END of defaultPeerRmapNameAf definition. + + leaf peerRmapOriNameAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "neighbor default-originate router-map for address-family"; + } // END of peerRmapOriNameAf definition. + + leaf softReconfigInboundAf { + type cml_data_types:CML_BOOL_T; + description "neighbor soft-reconfiguration inbound for address family"; + } // END of softReconfigInboundAf definition. + + leaf weightAf { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + default "0"; + description "neighbor weight for address family"; + } // END of weightAf definition. + + leaf peerRouteReflectorAf { + type cml_data_types:CML_BOOL_T; + description "neighbor route-reflector-client for address family"; + } // END of peerRouteReflectorAf definition. + + leaf peerRemovePvtAsAf { + type cml_data_types:CML_BOOL_T; + description "neighbor remove-private-AS for address family"; + } // END of peerRemovePvtAsAf definition. + + leaf sendCommunityAf { + type cml_data_types:CML_BOOL_T; + description "neighbor send-community for address family"; + } // END of sendCommunityAf definition. + + leaf sendCommunityTypeAf { + type cml_data_types:CML_BGP_SEND_COMMU_TYPE_T; + description "neighbor send-community attribute for address family"; + } // END of sendCommunityTypeAf definition. + + leaf neighborAttrUnchangedAf { + type cml_data_types:CML_ATTRIBUTE_UNCHANGED_TYPE_T; + description "neighbor attribute-unchanged for address family"; + } // END of neighborAttrUnchangedAf definition. + + leaf orfPrefixOptAf { + type cml_data_types:CML_BGP_ORF_PREFIX_TYPE_T; + description "orf prefix-list "; + } // END of orfPrefixOptAf definition. + + leaf setNcpFlagAf { + type cml_data_types:CML_BOOL_T; + description "neighbor orf prefix-list for address family"; + } // END of setNcpFlagAf definition. + + leaf peerAllowEbgpVpnAf { + if-feature feature_list:HAVE_VRF; + type cml_data_types:CML_BOOL_T; + description "neighbor allow-ebgp-vpn for address family"; + } // END of peerAllowEbgpVpnAf definition. + + leaf allowAsNumAf { + type cml_data_types:CML_UINT32_T { + range "1..10"; + } + default "3"; + description "neighbor allowas-in for address family"; + } // END of allowAsNumAf definition. + + leaf neighborCapabilityGrstAf { + type cml_data_types:CML_BOOL_T; + description "neighbor capability graceful-restart for address family"; + } // END of neighborCapabilityGrstAf definition. + + leaf aclInfoAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of aclInfoAf definition. + + leaf distributeListDirectionAf { + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + description "neighbor distribute-list for address family"; + } // END of distributeListDirectionAf definition. + + leaf asListAclInfoAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of asListAclInfoAf definition. + + leaf asListDirectionAf { + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + description "neighbor filter-list for address family"; + } // END of asListDirectionAf definition. + + leaf peerGroupTagAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "to add a neighbor to an existing peer-group for address family"; + } // END of peerGroupTagAf definition. + + leaf prefixListAclInfoAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of prefixListAclInfoAf definition. + + leaf prefixListDirectionAf { + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + description "neighbor prefix-list for address family"; + } // END of prefixListDirectionAf definition. + + leaf peerRmapNameAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of peerRmapNameAf definition. + + leaf peerRmapDirectionAf { + type cml_data_types:CML_BGP_DISTRIBUTE_LIST_ACTION_T; + description "neighbor route-map for address family"; + } // END of peerRmapDirectionAf definition. + + leaf maxPrefixesAf { + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + description "neighbor maximum-prefix for address-family"; + } // END of maxPrefixesAf definition. + + leaf stopUpdateAf { + type cml_data_types:CML_BOOL_T; + description "neighbor maximum-prefix stop-update for address-family"; + } // END of stopUpdateAf definition. + + leaf maxPrefixeWarningAf { + type cml_data_types:CML_BOOL_T; + description "neighbor maximum-prefix warning for address-family"; + } // END of maxPrefixeWarningAf definition. + + leaf thresholdAf { + type cml_data_types:CML_UINT8_T { + range "1..100"; + } + default "75"; + description "neighbor maximum-prefix threshold for address-family"; + } // END of thresholdAf definition. + + leaf warningAf { + type cml_data_types:CML_BOOL_T; + description "neighbor maximum-prefix threshold warning for address-family"; + } // END of warningAf definition. + + leaf unSuppressAclInfoAf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "neighbor unsuppress-map for address-family"; + } // END of unSuppressAclInfoAf definition. + + } // END of peerVrfAttrs definition. } \ No newline at end of file diff --git a/yang-files/bridge.yang b/yang-files/bridge.yang index 80a5b386..a57ff301 100644 --- a/yang-files/bridge.yang +++ b/yang-files/bridge.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -33,8 +33,40 @@ submodule bridge { "Layer-2 bridge configurations"; - revision "2015-04-25" { - description "Revisied on 2015-04-25."; + revision "2017-02-15" { + description "added staticMac table for fdb entry."; + } + + revision "2017-02-14" { + description "adding missing flag for cli generation."; + } + + revision "2017-02-10" { + description "disabling trill bridge creation command."; + } + + revision "2017-01-28" { + description "adding flag for rpvts bridge."; + } + + revision "2017-01-12" { + description "adding support for svlan bridge."; + } + + revision "2017-01-09" { + description "default bridge command disabled."; + } + + revision "2017-01-07" { + description "change for helpstring in cli."; + } + + revision "2016-10-13" { + description "bridge module includes all bridge managed objects."; + } + + revision "2016-09-12" { + description "bridge module includes all bridge managed objects."; } @@ -49,1126 +81,429 @@ submodule bridge { key "bridgeId"; - leaf vrId { - type cml_data_types:CML_UINT32_T; - default "0"; - config true; - } // END of vrId definition. - leaf bridgeId { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of bridgeId definition. leaf bridgeType { mandatory true; type cml_data_types:CML_BRIDGE_PROTOCOL_T; - config true; } // END of bridgeType definition. - leaf topologyType { - type cml_data_types:CML_BRIDGE_TOPOLOGY_T; - default "topology-none"; - config true; - } // END of topologyType definition. - - leaf macAddr { - type cml_data_types:CML_STRING_T; - config true; - description "bridge address"; - } // END of macAddr definition. - - leaf discardForward { - type cml_data_types:CML_DISCARDFORWARD_T; - config true; - } // END of discardForward definition. - - leaf ifName { - type cml_data_types:CML_STRING_T; - config true; - } // END of ifName definition. - - leaf bridgeForward { - type cml_data_types:CML_BOOL_T; - config true; - } // END of bridgeForward definition. - - leaf forward { - if-feature feature_list:HAVE_SPBD; - type cml_data_types:CML_BRIDGE_FORWARDING_SET_T; - config true; - } // END of forward definition. - - leaf ageingStatus { - type cml_data_types:CML_BRIDGE_AGEING_STATE; - config true; - description "bridge ageing"; - } // END of ageingStatus definition. - - leaf learning { - type cml_data_types:CML_BOOL_T; - default false; - config true; - description "bridge acquire"; - } // END of learning definition. + leaf isDefault { + type cml_data_types:CML_INT8_T; + config false; + } // END of isDefault definition. leaf ageingTime { - type cml_data_types:CML_INT32_T { - range "10..1000000"; - } - default "300"; - config true; - description "bridge ageing time"; - } // END of ageingTime definition. - - leaf mstpEnabled { - type cml_data_types:CML_ENABLE_DISABLE_T; - default "disable"; - config true; - description "bridge multiple-spanning-tree"; - } // END of mstpEnabled definition. - - leaf helloTime { - type cml_data_types:CML_INT32_T { - range "1..10"; - } - default "2"; - config true; - description "bridge hello-time"; - } // END of helloTime definition. - - leaf maxAge { - type cml_data_types:CML_INT32_T { - range "6..40"; - } - default "20"; - config true; - description "bridge max-age"; - } // END of maxAge definition. - - leaf priority { - type cml_data_types:CML_UINT32_T { - range "0..61440"; - } - default "32768"; - config true; - description "bridge priority"; - } // END of priority definition. - - leaf forwardDelay { - type cml_data_types:CML_INT32_T { - range "4..30"; - } - default "15"; - config true; - description "bridge forward-time"; - } // END of forwardDelay definition. - - leaf transmitHoldCount { - type cml_data_types:CML_UINT8_T { - range "1..10"; - } - default "6"; - config true; - description "bridge transmit-holdcount"; - } // END of transmitHoldCount definition. - - leaf bpduguardEnable { - type cml_data_types:CML_BOOL_T; - default false; - config true; - description "bridge spanning-tree portfast bpdu-guard"; - } // END of bpduguardEnable definition. - - leaf errdisableTimeoutEnable { - type cml_data_types:CML_BOOL_T; - default false; - config true; - description "bridge spanning-tree errdisable-timeout"; - } // END of errdisableTimeoutEnable definition. - - leaf errdisableTimeoutInterval { - type cml_data_types:CML_INT32_T { - range "10..1000000"; - } - default "300"; - config true; - description "bridge spanning-tree errdisable-timeout interval"; - } // END of errdisableTimeoutInterval definition. - - leaf revisionLevel { - type cml_data_types:CML_UINT16_T { - range "0..65535"; - } - config true; - description "bridge revision"; - } // END of revisionLevel definition. - - leaf maxHops { - type cml_data_types:CML_INT32_T { - range "1..40"; - } - default "20"; - config true; - description "bridge max-hops"; - } // END of maxHops definition. - - leaf regionName { - type cml_data_types:CML_STRING_T; - default "Default"; - config true; - description "bridge region"; - } // END of regionName definition. - - leaf bpduFilter { - type cml_data_types:CML_BOOL_T; - default false; - config true; - } // END of bpduFilter definition. - - leaf debug { type cml_data_types:CML_UINT32_T; - config true; - } // END of debug definition. - - leaf debugStatus { - type cml_data_types:CML_INT32_T; - config true; - } // END of debugStatus definition. - - leaf adminCisco { - type cml_data_types:CML_ENABLE_DISABLE_T; - default "disable"; - config true; - description "bridge cisco-interoperability"; - } // END of adminCisco definition. - - leaf pathCostMethod { - type cml_data_types:CML_PATHCOST_METHOD_T; - default "default"; - config true; - } // END of pathCostMethod definition. - - leaf forceVersion { - type cml_data_types:CML_INT32_T { - range "0..4"; - } - default "0"; - config true; - description "bridge spanning-tree force-version"; - } // END of forceVersion definition. - - leaf vId { - type cml_data_types:CML_STRING_T; - config false; - } // END of vId definition. - - leaf svId { - type cml_data_types:CML_STRING_T; - config false; - } // END of svId definition. - - leaf bridgePort { - type cml_data_types:CML_STRING_T; config false; - } // END of bridgePort definition. + } // END of ageingTime definition. - leaf cistbridgePriority { + leaf spanningTreeEnable { type cml_data_types:CML_UINT32_T; config false; - } // END of cistbridgePriority definition. - - leaf topologyChange { - type cml_data_types:CML_STRING_T; - config false; - } // END of topologyChange definition. + } // END of spanningTreeEnable definition. - leaf externalrootPathcost { + leaf providerEdge { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; type cml_data_types:CML_UINT32_T; config false; - } // END of externalrootPathcost definition. - - leaf bridgeEnabled { - type cml_data_types:CML_STRING_T; - config false; - } // END of bridgeEnabled definition. - - leaf topologychangeDetected { - type cml_data_types:CML_STRING_T; - config false; - } // END of topologychangeDetected definition. - - leaf cistmstpBridge { - type cml_data_types:CML_STRING_T; - config false; - } // END of cistmstpBridge definition. + } // END of providerEdge definition. - leaf cistRootPort { + leaf backboneEdge { + if-feature feature_list:HAVE_I_BEB; + if-feature feature_list:HAVE_B_BEB; + if-feature feature_list:HAVE_UDLD; type cml_data_types:CML_UINT32_T; config false; - } // END of cistRootPort definition. - - leaf cistdesignatedRoot { - type cml_data_types:CML_STRING_T; - config false; - } // END of cistdesignatedRoot definition. - - leaf cistBridgeid { - type cml_data_types:CML_STRING_T; - config false; - } // END of cistBridgeid definition. + } // END of backboneEdge definition. - leaf totalnumberTopologychange { - type cml_data_types:CML_INT32_T; - config false; - } // END of totalnumberTopologychange definition. - - leaf cistregisteredRoot { - type cml_data_types:CML_STRING_T; + leaf vlanNumDeletes { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_UINT32_T; config false; - } // END of cistregisteredRoot definition. + } // END of vlanNumDeletes definition. - leaf maxAgeCount { - type cml_data_types:CML_INT32_T; + leaf trafficClassEnabled { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_UINT32_T; config false; - } // END of maxAgeCount definition. + } // END of trafficClassEnabled definition. - leaf bridgeHelloTime { - type cml_data_types:CML_INT32_T; - config false; - } // END of bridgeHelloTime definition. + leaf topologyType { + mandatory true; + type cml_data_types:CML_BRIDGE_TOPOLOGY_T; + } // END of topologyType definition. - leaf bridgeForwardDelay { - type cml_data_types:CML_INT32_T; + leaf numCosq { + if-feature feature_list:HAVE_QOS; + type cml_data_types:CML_UINT32_T; config false; - } // END of bridgeForwardDelay definition. + } // END of numCosq definition. - leaf bridgeTopologyChange { - type cml_data_types:CML_STRING_T; + leaf maxMstInstances { + type cml_data_types:CML_UINT16_T; config false; - } // END of bridgeTopologyChange definition. + } // END of maxMstInstances definition. - leaf topologyChangeCount { - type cml_data_types:CML_INT32_T; + leaf uniTypeMode { + type cml_data_types:CML_UINT16_T; config false; - } // END of topologyChangeCount definition. + } // END of uniTypeMode definition. - leaf topologyChangeLastRecv { - type cml_data_types:CML_STRING_T; - config false; - } // END of topologyChangeLastRecv definition. + leaf forward { + if-feature feature_list:HAVE_SPBD; + type cml_data_types:CML_BRIDGE_FORWARDING_SET_T; + } // END of forward definition. leaf addressFlag { type cml_data_types:CML_BOOL_T; - config true; } // END of addressFlag definition. - leaf bridgeMaxAge { - type cml_data_types:CML_INT32_T; - config false; - } // END of bridgeMaxAge definition. - - leaf lasttimeTopologychange { - type cml_data_types:CML_STRING_T; - config false; - } // END of lasttimeTopologychange definition. - - leaf configFormat { - type cml_data_types:CML_INT32_T; - config false; - } // END of configFormat definition. - - leaf configName { - type cml_data_types:CML_STRING_T; - config false; - } // END of configName definition. - - leaf configRevision { - type cml_data_types:CML_INT32_T; - config false; - } // END of configRevision definition. - - leaf configDigest { - type cml_data_types:CML_STRING_T; - config false; - } // END of configDigest definition. - leaf brType { type cml_data_types:CML_BRIDGE_TYPE_T; - config true; } // END of brType definition. - leaf cistrootportIfindex { - type cml_data_types:CML_INT32_T; - config false; - } // END of cistrootportIfindex definition. + leaf vlanId { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_UINT32_T { + range "2..4094"; + } + } // END of vlanId definition. - leaf forwarddelayTimer { - type cml_data_types:CML_INT32_T; - config false; - } // END of forwarddelayTimer definition. + leaf edgeProtocol { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_UINT32_T; + } // END of edgeProtocol definition. - leaf messageageTimer { - type cml_data_types:CML_INT32_T; - config false; - } // END of messageageTimer definition. + leaf sVlanId { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_UINT32_T { + range "2..4094"; + } + } // END of sVlanId definition. - list interface { + list bridgeStaticFdb { description - " Group of bridge attribute having interface property"; + "bridgeStaticFdb"; - config true; - key "ifName"; + config false; + key "macAddr"; - leaf ifName { - type cml_data_types:CML_STRING_T; - config true; - description "bridge-group"; - } // END of ifName definition. - - leaf spanningTreeDisable { - mandatory true; - type cml_data_types:CML_SPANNINGTREE_ENABLE_DISABLE_T; - config true; - description "bridge-group spanning-tree"; - } // END of spanningTreeDisable definition. - - leaf p2pMac { - type cml_data_types:CML_LINK_TYPE_T; - default "point-to-point"; - config true; - description "spanning-tree link-type"; - } // END of p2pMac definition. - - leaf portPriority { - type cml_data_types:CML_INT16_T { - range "0..240"; - } - default "128"; - config true; - description "bridge-group priority"; - } // END of portPriority definition. - - leaf portedgeEnable { - type cml_data_types:CML_PORTEDGE_T; - default "portfast"; - config true; - description "spanning-tree edgeport"; - } // END of portedgeEnable definition. - - leaf restrictedDomainRole { - type cml_data_types:CML_BOOL_T; - default false; - config true; - description "spanning-tree restricted-domain-role"; - } // END of restrictedDomainRole definition. - - leaf autoEdge { - type cml_data_types:CML_BOOL_T; - default false; - config true; - description "spanning-tree autoedge"; - } // END of autoEdge definition. - - leaf adminBpduguard { - type cml_data_types:CML_BPDU_T; - default "default"; - config true; - } // END of adminBpduguard definition. - - leaf portHelloTime { - type cml_data_types:CML_INT32_T { - range "1..10"; - } - default "2"; - config true; - } // END of portHelloTime definition. - - leaf pathCost { - type cml_data_types:CML_UINT32_T { - range "1..200000000"; - } - config true; - description "bridge-group pathcost"; - } // END of pathCost definition. - - leaf restrictedRole { - type cml_data_types:CML_BOOL_T; - default false; - config true; - description "spanning-tree restricted-role"; - } // END of restrictedRole definition. - - leaf restrictedTCN { - type cml_data_types:CML_BOOL_T; - default false; - config true; - description "spanning-tree restricted-tcn"; - } // END of restrictedTCN definition. - - leaf adminRootGuard { - type cml_data_types:CML_UINT8_T; - default "1"; - config true; - description "spanning-tree guard root"; - } // END of adminRootGuard definition. - - leaf adminBpdufilter { - type cml_data_types:CML_BPDU_T; - default "default"; - config true; - description "bridge spanning-tree portfast bpdu-filter"; - } // END of adminBpdufilter definition. - - leaf enableBpduRx { - type cml_data_types:CML_INT32_T; - default "0"; - config true; - } // END of enableBpduRx definition. - - leaf overMacType { - type cml_data_types:CML_INT32_T; - config true; - } // END of overMacType definition. - - leaf priorityOverWrite { - type cml_data_types:CML_UINT8_T; - config true; - } // END of priorityOverWrite definition. - - leaf cistbridgePriority { + leaf macAddr { type cml_data_types:CML_UINT32_T; - config false; - } // END of cistbridgePriority definition. + } // END of macAddr definition. - leaf topologyChange { - type cml_data_types:CML_STRING_T; - config false; - } // END of topologyChange definition. - - leaf externalrootPathcost { + leaf snmpStatus { type cml_data_types:CML_UINT32_T; - config false; - } // END of externalrootPathcost definition. - - leaf bridgeEnabled { - type cml_data_types:CML_STRING_T; - config false; - } // END of bridgeEnabled definition. - - leaf cistmstpBridge { - type cml_data_types:CML_STRING_T; - config false; - } // END of cistmstpBridge definition. + } // END of snmpStatus definition. - leaf cistdesignatedRoot { - type cml_data_types:CML_STRING_T; - config false; - } // END of cistdesignatedRoot definition. - - leaf cistBridgeid { - type cml_data_types:CML_STRING_T; - config false; - } // END of cistBridgeid definition. - - leaf totalnumberTopologychange { - type cml_data_types:CML_INT32_T; - config false; - } // END of totalnumberTopologychange definition. - - leaf cistregisteredRoot { - type cml_data_types:CML_STRING_T; - config false; - } // END of cistregisteredRoot definition. - - leaf maxAgeCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of maxAgeCount definition. - - leaf bridgeHelloTime { - type cml_data_types:CML_INT32_T; - config false; - } // END of bridgeHelloTime definition. - - leaf bridgeForwardDelay { - type cml_data_types:CML_INT32_T; - config false; - } // END of bridgeForwardDelay definition. - - leaf bridgeTopologyChange { - type cml_data_types:CML_STRING_T; - config false; - } // END of bridgeTopologyChange definition. - - leaf topologyChangeCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of topologyChangeCount definition. - - leaf topologyChangeLastRecv { - type cml_data_types:CML_STRING_T; - config false; - } // END of topologyChangeLastRecv definition. - - leaf portName { - type cml_data_types:CML_STRING_T; - config false; - } // END of portName definition. - - leaf portNumber { + leaf timeVal { type cml_data_types:CML_UINT32_T; - config false; - } // END of portNumber definition. + } // END of timeVal definition. - leaf portIfindex { - type cml_data_types:CML_INT32_T; - config false; - } // END of portIfindex definition. - - leaf cistPortid { - type cml_data_types:CML_UINT16_T; - config false; - } // END of cistPortid definition. - - leaf mstipathCost { - type cml_data_types:CML_UINT32_T; - config false; - } // END of mstipathCost definition. - - leaf designatedPortid { - type cml_data_types:CML_UINT16_T; - config false; - } // END of designatedPortid definition. - - leaf cistpathCost { + leaf vid { type cml_data_types:CML_UINT32_T; - config false; - } // END of cistpathCost definition. - - leaf portdesignatedCost { - type cml_data_types:CML_UINT32_T; - config false; - } // END of portdesignatedCost definition. + } // END of vid definition. - leaf cistDesignatedportId { - type cml_data_types:CML_UINT32_T; - config false; - } // END of cistDesignatedportId definition. - leaf cistPortState { - type cml_data_types:CML_STRING_T; - config false; - } // END of cistPortState definition. + list interfaceInfo { + + description + "interfaceInfo"; - leaf cistPriority { - type cml_data_types:CML_UINT32_T; config false; - } // END of cistPriority definition. + key "ifindex"; - leaf mstiInstanceRoot { - type cml_data_types:CML_STRING_T; - config false; - } // END of mstiInstanceRoot definition. + + leaf ifindex { + type cml_data_types:CML_UINT32_T; + } // END of ifindex definition. - leaf messageAge { - type cml_data_types:CML_INT32_T; - config false; - } // END of messageAge definition. + leaf isForward { + type cml_data_types:CML_BOOL_T; + } // END of isForward definition. - leaf maxAgePort { - type cml_data_types:CML_UINT32_T; - config false; - } // END of maxAgePort definition. + leaf type { + type cml_data_types:CML_UINT32_T; + } // END of type definition. - leaf cisthelloTime { - type cml_data_types:CML_INT32_T; - config false; - } // END of cisthelloTime definition. + leaf ovrMacType { + type cml_data_types:CML_UINT32_T; + } // END of ovrMacType definition. - leaf helloTimePort { - type cml_data_types:CML_INT32_T; - config false; - } // END of helloTimePort definition. + leaf priority { + type cml_data_types:CML_UINT32_T; + } // END of priority definition. - leaf cistforwardDelay { - type cml_data_types:CML_INT32_T; - config false; - } // END of cistforwardDelay definition. + } // End of interfaceInfo-list + } // End of bridgeStaticFdb-list - leaf topologyChangeTimer { - type cml_data_types:CML_INT32_T; - config false; - } // END of topologyChangeTimer definition. + list staticMac { + + description + "static forwarding table entry for the bridge"; - leaf cistforwardTransition { - type cml_data_types:CML_UINT32_T; - config false; - } // END of cistforwardTransition definition. + config true; + key "macAddr"; - leaf cistPortFast { - type cml_data_types:CML_STRING_T; - config false; - } // END of cistPortFast definition. + + leaf macAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bridge address"; + } // END of macAddr definition. - leaf bpduGuardState { - type cml_data_types:CML_STRING_T; - config false; - } // END of bpduGuardState definition. + leaf discardForward { + type cml_data_types:CML_DISCARDFORWARD_T; + } // END of discardForward definition. - leaf operBpduGuardState { - type cml_data_types:CML_STRING_T; - config false; - } // END of operBpduGuardState definition. + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. - leaf bpduFilterState { - type cml_data_types:CML_STRING_T; - config false; - } // END of bpduFilterState definition. + } // End of staticMac-list - leaf operBpduFilterState { - type cml_data_types:CML_STRING_T; - config false; - } // END of operBpduFilterState definition. + list vipTbllsit { + if-feature feature_list:HAVE_I_BEB; - leaf rootGuardConfigState { - type cml_data_types:CML_STRING_T; - config false; - } // END of rootGuardConfigState definition. + description + "vipTbllsit"; - leaf rootGuardState { - type cml_data_types:CML_STRING_T; - config false; - } // END of rootGuardState definition. + config true; + key "vipSidStart"; - leaf cistPortrole { - type cml_data_types:CML_STRING_T; - config false; - } // END of cistPortrole definition. + + leaf vipSidStart { + type cml_data_types:CML_UINT32_T { + range "1..16777214"; + } + } // END of vipSidStart definition. - leaf portType { - type cml_data_types:CML_STRING_T; - config false; - } // END of portType definition. + leaf vipSidEnd { + type cml_data_types:CML_UINT32_T { + range "1..16777214"; + } + } // END of vipSidEnd definition. - leaf portRefCount { - type cml_data_types:CML_UINT32_T; - config false; - } // END of portRefCount definition. + leaf srvInstName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of srvInstName definition. - leaf version { - type cml_data_types:CML_STRING_T; - config false; - } // END of version definition. + } // End of vipTbllsit-list - leaf portRecieved { - type cml_data_types:CML_STRING_T; - config false; - } // END of portRecieved definition. + list interface { + + description + " Group of bridge attribute having interface property"; - leaf portSend { - type cml_data_types:CML_STRING_T; - config false; - } // END of portSend definition. + config true; + key "ifName"; - leaf portFastCfg { - type cml_data_types:CML_STRING_T; - config false; - } // END of portFastCfg definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bridge-group"; + } // END of ifName definition. - leaf portFastState { - type cml_data_types:CML_STRING_T; - config false; - } // END of portFastState definition. + leaf spanningTreeStatus { + mandatory true; + type cml_data_types:CML_SPANNINGTREE_ENABLE_DISABLE_T; + description "bridge-group spanning-tree"; + } // END of spanningTreeStatus definition. - leaf pToPstate { - type cml_data_types:CML_STRING_T; - config false; - } // END of pToPstate definition. + } // End of interface-list - leaf pToPCurrentstate { - type cml_data_types:CML_STRING_T; - config false; - } // END of pToPCurrentstate definition. + list oepmapping { + + description + "oepmapping"; - leaf autoEdgePCfg { - type cml_data_types:CML_STRING_T; - config false; - } // END of autoEdgePCfg definition. + config true; + key "oepTableName"; - leaf autoEdgetstate { - type cml_data_types:CML_STRING_T; - config false; - } // END of autoEdgetstate definition. + + leaf oepTableName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of oepTableName definition. - leaf bridgeDesignatedRoot { - type cml_data_types:CML_STRING_T; - config false; - } // END of bridgeDesignatedRoot definition. + leaf oepId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of oepId definition. - leaf bridgeDesignated { - type cml_data_types:CML_STRING_T; - config false; - } // END of bridgeDesignated definition. + leaf oepvlanTypeId { + type cml_data_types:CML_OEP_VLAN_TYPE_T; + } // END of oepvlanTypeId definition. - leaf nextMsg { - type cml_data_types:CML_STRING_T; - config false; - } // END of nextMsg definition. + leaf oepvlanId { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + } // END of oepvlanId definition. - leaf mstiRoot { - type cml_data_types:CML_STRING_T; - config false; - } // END of mstiRoot definition. + } // End of oepmapping-list - leaf designatedBridge { - type cml_data_types:CML_STRING_T; - config false; - } // END of designatedBridge definition. + list cvlanRegTab { + + description + "cvlanRegTab"; - leaf helloTimer { - type cml_data_types:CML_INT32_T; - config false; - } // END of helloTimer definition. + config true; + key "cvlanRegTabName"; - leaf hwAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of hwAddr definition. + + leaf cvlanRegTabName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of cvlanRegTabName definition. - leaf forwardState { - type cml_data_types:CML_UINT32_T; - config false; - } // END of forwardState definition. + list cvlanRegId { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; - list mstpInterface { - description - "runtime mstp interface instance info"; + "cvlanRegId"; - config false; - key "instanceId"; + config true; + key "cvlanRegId"; - leaf instanceId { - type cml_data_types:CML_INT32_T { - range "1..63"; + leaf cvlanRegId { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_STRING_T { + length "0..255"; } - config false; - } // END of instanceId definition. - - leaf cistPortrole { - type cml_data_types:CML_STRING_T; - config false; - } // END of cistPortrole definition. - - leaf portName { - type cml_data_types:CML_STRING_T; - config false; - } // END of portName definition. - - leaf portNumber { - type cml_data_types:CML_UINT32_T; - config false; - } // END of portNumber definition. - - leaf cistpathCost { - type cml_data_types:CML_UINT32_T; - config false; - } // END of cistpathCost definition. - - leaf cistPriority { - type cml_data_types:CML_INT32_T; - config false; - } // END of cistPriority definition. - - leaf cisthelloTime { - type cml_data_types:CML_INT32_T; - config false; - } // END of cisthelloTime definition. - - leaf cistforwardDelay { - type cml_data_types:CML_INT32_T; - config false; - } // END of cistforwardDelay definition. - - leaf portspanningTree { - type cml_data_types:CML_STRING_T; - config false; - } // END of portspanningTree definition. - - leaf portconfbpduSent { - type cml_data_types:CML_UINT32_T; - config false; - } // END of portconfbpduSent definition. + } // END of cvlanRegId definition. - leaf configPending { - type cml_data_types:CML_STRING_T; - config false; - } // END of configPending definition. - - leaf porttopChangeack { - type cml_data_types:CML_STRING_T; - config false; - } // END of porttopChangeack definition. - - leaf portconfbpduRecieved { - type cml_data_types:CML_UINT32_T; - config false; - } // END of portconfbpduRecieved definition. - - leaf porttcnbpduSent { - type cml_data_types:CML_UINT32_T; - config false; - } // END of porttcnbpduSent definition. - - leaf porttcnbpduRecieved { - type cml_data_types:CML_UINT32_T; - config false; - } // END of porttcnbpduRecieved definition. + leaf svlanRegId { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_UINT16_T; + } // END of svlanRegId definition. - leaf portForwardTransition { - type cml_data_types:CML_UINT32_T; - config false; - } // END of portForwardTransition definition. - - leaf helloTimerstate { - type cml_data_types:CML_STRING_T; - config false; - } // END of helloTimerstate definition. - - leaf helloTimervalue { - type cml_data_types:CML_INT32_T; - config false; - } // END of helloTimervalue definition. - - leaf forwardTimerstate { - type cml_data_types:CML_STRING_T; - config false; - } // END of forwardTimerstate definition. - - leaf forwardTimervalue { - type cml_data_types:CML_INT32_T; - config false; - } // END of forwardTimervalue definition. - - leaf messageTimerstate { - type cml_data_types:CML_STRING_T; - config false; - } // END of messageTimerstate definition. - - leaf topologychangeTimerstate { - type cml_data_types:CML_STRING_T; - config false; - } // END of topologychangeTimerstate definition. - - leaf topologychangeTimervalue { - type cml_data_types:CML_INT32_T; - config false; - } // END of topologychangeTimervalue definition. - - leaf holdTimerstate { - type cml_data_types:CML_STRING_T; - config false; - } // END of holdTimerstate definition. - - leaf holdTimervalue { - type cml_data_types:CML_INT32_T; - config false; - } // END of holdTimervalue definition. - - leaf messageageExpiry { - type cml_data_types:CML_UINT32_T; - config false; - } // END of messageageExpiry definition. + leaf cvlanPepConfig { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_CVLAN_CONFIG_T; + } // END of cvlanPepConfig definition. - leaf similarbpduCount { - type cml_data_types:CML_UINT32_T; - config false; - } // END of similarbpduCount definition. + } // End of cvlanRegId-list + } // End of cvlanRegTab-list + uses bridgeSpanning; + uses mstp-grouping; + uses vlan-grouping; + } // End of bridge-list + } // END of bridge-grouping definition. - leaf sourcemacCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of sourcemacCount definition. - leaf totalsourcemacRecieved { - type cml_data_types:CML_INT32_T; - config false; - } // END of totalsourcemacRecieved definition. + grouping spanningTree-grouping { + list spanningTree { + if-feature feature_list:HAVE_DEFAULT_BRIDGE; - leaf porttopologyChangetime { - type cml_data_types:CML_UINT32_T; - config false; - } // END of porttopologyChangetime definition. + description + "spanningTree"; - leaf designatedrootPathcost { - type cml_data_types:CML_UINT32_T; - config false; - } // END of designatedrootPathcost definition. + config true; + key "bridgeId"; - leaf designatedInsPortid { - type cml_data_types:CML_UINT16_T; - config false; - } // END of designatedInsPortid definition. - - leaf mstiInstancedesignatedRoot { - type cml_data_types:CML_STRING_T; - config false; - } // END of mstiInstancedesignatedRoot definition. - - leaf mstiInstanceBridgeId { - type cml_data_types:CML_STRING_T; - config false; - } // END of mstiInstanceBridgeId definition. - - leaf stpMultiCastAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of stpMultiCastAddr definition. - - leaf instanceBridgeMacAddress { - type cml_data_types:CML_STRING_T; - config false; - } // END of instanceBridgeMacAddress definition. - - leaf instancetopologyChange { - mandatory true; - type cml_data_types:CML_STRING_T; - config false; - } // END of instancetopologyChange definition. - - leaf instanceTopologychangedetected { - mandatory true; - type cml_data_types:CML_STRING_T; - config false; - } // END of instanceTopologychangedetected definition. - - leaf instlastTopologychangerecievedfrom { - mandatory true; - type cml_data_types:CML_STRING_T; - config false; - } // END of instlastTopologychangerecievedfrom definition. - - leaf mstirootportIfindex { - type cml_data_types:CML_INT32_T; - config false; - } // END of mstirootportIfindex definition. - - leaf mstiPriority { - type cml_data_types:CML_INT32_T; - config false; - } // END of mstiPriority definition. - - leaf instancemaxAge { - type cml_data_types:CML_INT32_T; - config false; - } // END of instancemaxAge definition. - - leaf mstibridgePriority { - type cml_data_types:CML_INT32_T; - config false; - } // END of mstibridgePriority definition. - - leaf internalrootPathcost { - type cml_data_types:CML_INT32_T; - config false; - } // END of internalrootPathcost definition. - - leaf messageAgeIns { - type cml_data_types:CML_INT32_T; - config false; - } // END of messageAgeIns definition. - - leaf instanceportconfbpduSent { - mandatory true; - type cml_data_types:CML_UINT32_T; - config false; - } // END of instanceportconfbpduSent definition. + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bridgeId definition. - leaf instanceportconfbpduRecieved { - mandatory true; - type cml_data_types:CML_UINT32_T; - config false; - } // END of instanceportconfbpduRecieved definition. + leaf spannMode { + type cml_data_types:CML_BRIDGE_SPANMODE_T; + } // END of spannMode definition. - leaf instanceporttcnbpduSent { - mandatory true; - type cml_data_types:CML_UINT32_T; - config false; - } // END of instanceporttcnbpduSent definition. + leaf edgeFlag { + type cml_data_types:CML_BOOL_T; + default false; + } // END of edgeFlag definition. - leaf instanceporttcnbpduRecieved { - mandatory true; - type cml_data_types:CML_UINT32_T; - config false; - } // END of instanceporttcnbpduRecieved definition. - leaf cistforwardTransition { - mandatory true; - type cml_data_types:CML_UINT32_T; - config false; - } // END of cistforwardTransition definition. - - leaf instancetopologychangeInitiator { - mandatory true; - type cml_data_types:CML_INT32_T; - config false; - } // END of instancetopologychangeInitiator definition. - - leaf topologychangeInitiator { - mandatory true; - type cml_data_types:CML_INT32_T; - config false; - } // END of topologychangeInitiator definition. - - leaf lasttopologychangeRecievedfrom { - mandatory true; - type cml_data_types:CML_STRING_T; - config false; - } // END of lasttopologychangeRecievedfrom definition. - - leaf configFormat { - mandatory true; - type cml_data_types:CML_INT32_T; - config false; - } // END of configFormat definition. - - leaf messageageTimervalue { - type cml_data_types:CML_INT32_T; - config false; - } // END of messageageTimervalue definition. - - leaf instanceMstiporttopologyChangetime { - type cml_data_types:CML_INT32_T; - config false; - } // END of instanceMstiporttopologyChangetime definition. - - leaf instancePortNextState { - type cml_data_types:CML_UINT32_T; - config false; - } // END of instancePortNextState definition. + list spinterface { + + description + " Group of bridge attribute having interface property"; - leaf instanceTopologuChangeCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of instanceTopologuChangeCount definition. + config true; + key "ifName"; - leaf mstipathCost { - type cml_data_types:CML_UINT32_T; - config false; - } // END of mstipathCost definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bridge-group"; + } // END of ifName definition. - } // End of mstpInterface-list - } // End of interface-list - uses mstp-grouping; - uses vlan-grouping; - } // End of bridge-list - } // END of bridge-grouping definition. + leaf spanningState { + type cml_data_types:CML_SPANNINGTREE_ENABLE_DISABLE_T; + default "enable"; + } // END of spanningState definition. + + } // End of spinterface-list + uses bridgeSpanning; + uses spanInstance-grouping; + } // End of spanningTree-list + } // END of spanningTree-grouping definition. + grouping bridgeSpanning { + leaf-list macAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bridge address"; + } // END of macAddr definition. + + leaf discardForward { + type cml_data_types:CML_DISCARDFORWARD_T; + } // END of discardForward definition. + + leaf learning { + type cml_data_types:CML_BOOL_T; + description "bridge acquire"; + } // END of learning definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf macAddressTableLearning { + type cml_data_types:CML_ENABLE_DISABLE_T; + default "enable"; + } // END of macAddressTableLearning definition. + + leaf macLimit { + type cml_data_types:CML_INT32_T; + } // END of macLimit definition. + + leaf macLimitRange { + type cml_data_types:CML_INT32_T { + range "5..32768"; + } + } // END of macLimitRange definition. + + } // END of bridgeSpanning definition. } \ No newline at end of file diff --git a/yang-files/cml_data_types.yang b/yang-files/cml_data_types.yang index 14606c6e..3cabd5c7 100644 --- a/yang-files/cml_data_types.yang +++ b/yang-files/cml_data_types.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -35,7 +35,7 @@ module cml_data_types { revision "2016-09-29" { - description "Revisied on 2016-09-29."; + description "Initial version of datatypes."; } @@ -112,73 +112,475 @@ module cml_data_types { type empty; } - typedef CML_HOSTNAME_T{ + typedef CML_QOS_NAME_T{ + type string; + } + + typedef CML_CMAP_MATCH_CRITERIA_T{ + type enumeration { + enum match-all { value 1; } + enum match-any { value 2; } + } + } + + typedef CML_PMAP_TYPE_T{ + type enumeration { + enum type-qos { value 1; } + enum type-queuing { value 2; } + enum type-queuing-default { value 3; } + } + } + + typedef CML_QOS_FILTER_TYPE_T{ + type enumeration { + enum qos-group { value 1; } + enum ingress-l2-group { value 2; } + enum ingress-ipv4 { value 4; } + enum egress-ipv4 { value 8; } + enum ingress-ipv6 { value 16; } + enum egress-ipv6 { value 32; } + enum egress-l2-group { value 64; } + } + } + + typedef CML_QOS_OPERATION_T{ + type enumeration { + enum qos-noop { value 0; } + enum qos-equal { value 1; } + enum qos-not-equal { value 2; } + enum qos-less-than { value 3; } + enum qos-greater-than { value 4; } + enum qos-operation-max { value 5; } + } + } + + typedef CML_FILTER_TYPE_T{ + type enumeration { + enum qos-filter-deny { value 0; } + enum qos-filter-permit { value 1; } + enum qos-filter-mirror { value 2; } + enum qos-filter-dynamic { value 3; } + enum qos-filter-source { value 4; } + enum qos-filter-destination { value 5; } + enum qos-filter-no-match { value 6; } + } + } + + typedef CML_CONFORM_ACTION_T{ + type enumeration { + enum none { value 0; } + enum transmit { value 1; } + enum set-dscp-transmit { value 2; } + enum set-prec-transmit { value 3; } + enum set-cos-transmit { value 4; } + enum set-mpls-class { value 5; } + enum set-qos-transmit { value 6; } + } + } + + typedef CML_EXCEED_ACTION_T{ + type enumeration { + enum none { value 0; } + enum drop { value 1; } + enum set-dscp-transmit { value 2; } + enum set-prec-transmit { value 3; } + enum set-cos-transmit { value 4; } + enum set-mpls-class { value 5; } + enum set-flow-control { value 6; } + enum set-axe-ret { value 7; } + enum transmit { value 8; } + } + } + + typedef CML_VIOLATE_ACTION_T{ + type enumeration { + enum none { value 0; } + enum drop { value 1; } + enum set-dscp-transmit { value 2; } + enum set-cos-transmit { value 4; } + enum set-mpls-class { value 5; } + enum transmit { value 8; } + } + } + + typedef CML_BURST_TYPE_T{ + type enumeration { + enum none { value 0; } + enum kbytes { value 2; } + enum mbytes { value 3; } + enum ms { value 4; } + enum us { value 5; } + } + } + + typedef CML_QOS_RATE_T{ + type enumeration { + enum none { value 0; } + enum kbps { value 2; } + enum mbps { value 3; } + enum gbps { value 4; } + } + } + + typedef CML_FLOW_CONTROL_MODE_T{ + type enumeration { + enum nsm-qos-flow-control { value 0; } + enum nsm-full-bucket-size { value 1; } + enum nsm-cbs-bucket-size { value 2; } + } + } + + typedef CML_QOS_DSCP_VAL_T{ type union{ - type CML_IP_ADDR_T { + type CML_QOS_DSCP_T { } - type CML_STRING_T { + type CML_DSCP_TYPE_T { } } } - typedef CML_HOSTPNAME_T{ + typedef CML_QOS_DSCP_T{ + type string; + } + + typedef CML_QOS_SET_VAL_T{ type union{ - type CML_IP_ADDR_T { + type CML_INT32_T { + range "0..63"; } - type CML_HOST_STRING_T { + type CML_DSCP_TYPE_T { } } } - typedef CML_IP_ADDR_T{ + typedef CML_DSCP_TYPE_T{ + type enumeration { + enum default { value 0; } + enum cs1 { value 8; } + enum af11 { value 10; } + enum af12 { value 12; } + enum af13 { value 14; } + enum cs2 { value 16; } + enum af21 { value 18; } + enum af22 { value 20; } + enum af23 { value 22; } + enum cs3 { value 24; } + enum af31 { value 26; } + enum af32 { value 28; } + enum af33 { value 30; } + enum cs4 { value 32; } + enum af41 { value 34; } + enum af42 { value 36; } + enum af43 { value 38; } + enum cs5 { value 40; } + enum ef { value 46; } + enum cs6 { value 48; } + enum cs7 { value 56; } + } + } + + typedef CML_QOS_PREC_VAL_T{ type union{ - type CML_IPV4_ADDR_T { + type CML_QOS_PREC_T { } - type CML_IPV6_ADDR_T { + type CML_PREC_TYPE_T { } } } - typedef CML_IP_PREFIX_ADDR_T{ + typedef CML_QOS_PREC_T{ + type string; + } + + typedef CML_PREC_TYPE_T{ + type enumeration { + enum routine { value 0; } + enum priority { value 1; } + enum immediate { value 2; } + enum flash { value 3; } + enum flash-override { value 4; } + enum critical { value 5; } + enum internet { value 6; } + enum network { value 7; } + } + } + + typedef CML_PROTO_TYPE_T{ + type enumeration { + enum arp { value 0; } + enum bridging { value 1; } + enum cdp { value 2; } + enum clns { value 3; } + enum clns-es { value 4; } + enum clns-is { value 5; } + enum dhcp { value 6; } + enum isis { value 7; } + enum ldp { value 8; } + enum netbios { value 9; } + } + } + + typedef CML_QOS_CLASS_DEFAULT_T{ + type enumeration { + enum class-default { value 0; } + } + } + + typedef CML_QUEUING_CLASS_DEFAULT_T{ + type enumeration { + enum queuing-class-default { value 0; } + } + } + + typedef CML_HQOS_ENABLE_DISABLE_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_HQOS_CLASS_TYPE_T{ + type enumeration { + enum q0 { value 0; } + enum q1 { value 1; } + enum q2 { value 2; } + enum q3 { value 3; } + enum q4 { value 4; } + enum q5 { value 5; } + enum q6 { value 6; } + enum q7 { value 7; } + } + } + + typedef CML_QOS_PMAPC_CLASS_NAME_T{ type union{ - type CML_IPV4_PREFIX_T { + type CML_QOS_NAME_T { } - type CML_IPV6_PREFIX_T { + type CML_QUEUING_CLASS_DEFAULT_T { } } } - typedef CML_ACCESS_LIST_T{ + typedef CML_QOS_PMAP_CLASS_NAME_T{ type union{ - type CML_INT32_T { - range "1..99 | 1300..1999"; + type CML_QOS_NAME_T { } - type CML_STRING_T { - length "5..10"; + type CML_QOS_CLASS_DEFAULT_T { } } } - typedef CML_ACL_PACKET_DIR_T{ + typedef CML_HQOS_MAC_DIR_T{ type enumeration { - enum in { value 0; } - enum out { value 1; } - enum forward { value 2; } + enum src { value 0; } + enum dest { value 1; } + } + } + + typedef CML_HQOS_TRAFFIC_TYPE_NOT_T{ + type enumeration { + enum traffic-type { value 0; } + enum not-traffic-type { value 1; } + } + } + + typedef CML_HQOS_TRAFFIC_TYPE_T{ + type enumeration { + enum l2-uc { value 1; } + enum l2-uc-unknown { value 2; } + enum default { value 6; } + } + } + + typedef CML_HQOS_MATCH_NOT_T{ + type enumeration { + enum not-cos { value 0; } + enum cos { value 1; } + } + } + + typedef CML_HQOS_SHAPE_TYPE_T{ + type enumeration { + enum bps { value 1; } + enum kbps { value 2; } + enum mbps { value 3; } + enum gbps { value 4; } + enum percent { value 6; } + } + } + + typedef CML_HQOS_SET_BRIDGE_T{ + type enumeration { + enum set-bridge { value 0; } + enum set { value 1; } + } + } + + typedef CML_HQOS_SET_TYPE_T{ + type enumeration { + enum cos { value 1; } + enum dscp { value 2; } + enum precedence { value 3; } + enum mpls-class { value 5; } + enum qos-group { value 14; } + } + } + + typedef CML_HQOS_MATCH_NOT_DSCP_T{ + type enumeration { + enum not-dscp { value 0; } + enum dscp { value 1; } + } + } + + typedef CML_HQOS_MATCH_NOT_PRECEDENCE_T{ + type enumeration { + enum not-precedence { value 0; } + enum precedence { value 1; } + } + } + + typedef CML_HQOS_MATCH_NOT_RTP_T{ + type enumeration { + enum not-ip { value 0; } + enum ip { value 1; } + } + } + + typedef CML_QOS_SERVICE_TYPE_T{ + type enumeration { + enum qos { value 1; } + enum queuing { value 2; } + } + } + + typedef CML_QOS_CMAP_TYPE_T{ + type enumeration { + enum type-qos { value 1; } + enum type-queuing { value 2; } + } + } + + typedef CML_QOS_MATCH_TYPE_T{ + type enumeration { + enum match-any { value 1; } + enum match-all { value 2; } + } + } + + typedef CML_HQOS_MATCH_NOT_PROTOCOL_T{ + type enumeration { + enum not-protocol { value 0; } + enum protocol { value 1; } + } + } + + typedef CML_HQOS_MATCH_NOT_VLAN_T{ + type enumeration { + enum not-vlan { value 0; } + enum vlan { value 1; } + } + } + + typedef CML_HQOS_MATCH_NOT_MPLS_EXP_T{ + type enumeration { + enum not-mpls { value 0; } + enum mpls { value 1; } + } + } + + typedef CML_HQOS_SHAPE_AVG_T{ + type enumeration { + enum shape-average { value 0; } + enum shape { value 1; } + } + } + + typedef CML_HQOS_SHAPE_AVG_UNITS_T{ + type enumeration { + enum bps { value 0; } + enum kbps { value 1; } + enum mbps { value 2; } + enum gbps { value 3; } + } + } + + typedef CML_HQOS_THRESHOLD_TYPE_T{ + type enumeration { + enum packets { value 0; } + enum bytes { value 1; } + enum kbytes { value 2; } + } + } + + typedef CML_HOSTNAME_T{ + type union{ + + type CML_IP_ADDR_T { + + } + type CML_STRING_T { + + } + } + } + + typedef CML_HOSTPNAME_T{ + type union{ + + type CML_IP_ADDR_T { + + } + type CML_HOST_STRING_T { + + } + } + } + + typedef CML_IP_ADDR_T{ + type union{ + + type CML_IPV4_ADDR_T { + + } + type CML_IPV6_ADDR_T { + + } + } + } + + typedef CML_IPV4_ADDR_DESC_T{ + type inet:ipv4-address; + } + + typedef CML_IPV6_ADDR_DESC_T{ + type inet:ipv6-address; + } + + typedef CML_IP_PREFIX_ADDR_T{ + type union{ + + type CML_IPV4_PREFIX_T { + + } + type CML_IPV6_PREFIX_T { + + } } } @@ -203,9 +605,15 @@ module cml_data_types { } typedef CML_VLAN_TYPE_T{ - type enumeration { - enum custmor { value 0; } - enum service { value 1; } + type bits { + bit customer { position 2; } + bit service { position 3; } + bit service-point-point { position 4; } + bit service-multipoint-multipoint { position 5; } + bit backbone-point-point { position 7; } + bit backbone-multipoint-multipoint { position 8; } + bit service-rooted-multipoint { position 11; } + bit backbone-rooted-multipoint { position 12; } } } @@ -248,6 +656,12 @@ module cml_data_types { enum access { value 1; } enum hybrid { value 2; } enum trunk { value 3; } + enum customer-network { value 5; } + enum provider-network { value 6; } + enum cnp { value 8; } + enum pip { value 10; } + enum cbp { value 11; } + enum pnp { value 15; } } } @@ -346,6 +760,38 @@ module cml_data_types { } } + typedef CML_OSPF_INTERFACE_STATE_MSG_T{ + type enumeration { + enum DependUpon { value 0; } + enum Down { value 1; } + enum Loopback { value 2; } + enum Waiting { value 3; } + enum Point-To-Point { value 4; } + enum DROther { value 5; } + enum Backup { value 6; } + enum DR { value 7; } + } + } + + typedef CML_OSPF6_PATH_TYPE_T{ + type enumeration { + enum Connected { value 0; } + enum IntraArea { value 1; } + enum InterArea { value 2; } + enum External { value 3; } + enum Discard { value 4; } + } + } + + typedef CML_OSPF6_PATH_FLAGS_T{ + type enumeration { + enum Type2 { value 1; } + enum ABR { value 2; } + enum ASBR { value 3; } + enum RangeMatched { value 4; } + } + } + typedef CML_OSPF_ACTION_TYPE_T{ type enumeration { enum soft { value 1; } @@ -366,7 +812,6 @@ module cml_data_types { enum connected { value 2; } enum static { value 3; } enum rip { value 4; } - enum ospf { value 6; } enum bgp { value 8; } enum isis { value 9; } } @@ -401,7 +846,7 @@ module cml_data_types { enum provider-mstp { value 7; } enum rpvst+ { value 8; } enum provider-rpvst+ { value 9; } - enum trill { value 10; } + enum trill { value 20; } enum evb { value 97; } enum svlan-evb { value 98; } } @@ -409,9 +854,9 @@ module cml_data_types { typedef CML_BRIDGE_TYPE_T{ type enumeration { - enum ieee { value 1; } - enum rstp { value 3; } - enum mstp { value 5; } + enum spanning-tree { value 1; } + enum rapid-spanning-tree { value 3; } + enum multiple-spanning-tree { value 5; } } } @@ -445,25 +890,12 @@ module cml_data_types { } } - typedef CML_ROUTEMAP_LIST_T{ - type union{ - - type CML_INT32_T { - range "1..199 | 1300..2699"; - - } - type CML_STRING_T { - - } - } - } - - typedef CML_SPANNINGTREE_ENABLE_DISABLE_T{ - type enumeration { - enum enable { value 0; } - enum disable { value 1; } - } - } + typedef CML_SPANNINGTREE_ENABLE_DISABLE_T{ + type enumeration { + enum enable { value 0; } + enum disable { value 1; } + } + } typedef CML_PATHCOST_METHOD_T{ type enumeration { @@ -635,6 +1067,7 @@ module cml_data_types { enum broadcast { value 2; } enum non-broadcast { value 3; } enum point-to-multipoint { value 4; } + enum point-to-multipoint-non-broadcast { value 5; } } } @@ -646,38 +1079,6 @@ module cml_data_types { } } - typedef CML_OSPF_RESTART_HELPER_T{ - type enumeration { - enum restart { value 1; } - enum hitless-restart { value 2; } - } - } - - typedef CML_OSPF_DEBUG_T{ - type enumeration { - enum all { value 0; } - enum ifsm { value 1; } - } - } - - typedef CML_OSPF_DEBUG_PACKET_TYPE_T{ - type enumeration { - enum detail { value 0; } - enum hello { value 1; } - enum dd { value 2; } - enum ls-request { value 3; } - enum ls-update { value 4; } - enum ls-ack { value 5; } - } - } - - typedef CML_OSPF_DEBUG_PACKET_MODE_T{ - type enumeration { - enum send { value 1; } - enum recv { value 2; } - } - } - typedef CML_LDP_HELPER_MODE_T{ type enumeration { enum disable { value 0; } @@ -730,15 +1131,94 @@ module cml_data_types { } } - typedef CML_PIM_IP_TYPE_T{ - type enumeration { - enum ip { value 1; } + typedef CML_PIM_EXTENDED_ACCESS_LIST_T{ + type union{ + + type CML_STRING_T { + + } + type CML_UINT8_T { + range "1..99"; + + } + type CML_UINT16_T { + range "1300..1999"; + + } + } + } + + typedef CML_PIM_SSM_TYPE_T{ + type union{ + + type CML_STRING_T { + + } + type CML_UINT8_T { + range "1..99"; + + } } } - typedef CML_PIM_IPV6_TYPE_T{ + typedef CML_SSM_DEFAULT_T{ type enumeration { - enum ipv6 { value 0; } + enum default { value 0; } + } + } + + typedef CML_SSM_RANGE_T{ + type string; + } + + typedef CML_PIM_SSM_ACL_TYPE_T{ + type union{ + + type CML_SSM_RANGE_T { + + } + type CML_SSM_DEFAULT_T { + + } + } + } + + typedef CML_PIM_DEBUG_TYPE_T{ + type bits { + bit events { position 0; } + bit packet-in { position 1; } + bit packet-out { position 2; } + bit state { position 3; } + bit mfc { position 4; } + bit timer-hello-ht { position 5; } + bit timer-hello-nlt { position 6; } + bit timer-hello-tht { position 7; } + bit timer-joinprune-jt { position 8; } + bit timer-joinprune-et { position 9; } + bit timer-joinprune-ppt { position 10; } + bit timer-joinprune-kat { position 11; } + bit timer-joinprune-ot { position 12; } + bit timer-assert { position 13; } + bit timer-register { position 14; } + bit timer-bsr-bst { position 15; } + bit timer-bsr-crp { position 16; } + bit mib { position 17; } + bit nsm { position 18; } + bit nexthop { position 19; } + bit mtrace { position 20; } + } + } + + typedef CML_MSDP_DEFAULT_PREFIX_T{ + type union{ + + type CML_UINT8_T { + range "1..99"; + + } + type CML_STRING_T { + + } } } @@ -754,6 +1234,56 @@ module cml_data_types { } } + typedef CML_MRIB4_DEBUG_T{ + type bits { + bit event { position 0; } + bit vif { position 1; } + bit mrt { position 2; } + bit stats { position 3; } + bit fib-msg { position 4; } + bit register-msg { position 5; } + bit nsm-msg { position 6; } + bit mrib-msg { position 7; } + bit mtrace { position 8; } + bit mtrace-detail { position 9; } + } + } + + typedef CML_MRIB6_DEBUG_T{ + type bits { + bit event { position 0; } + bit vif { position 1; } + bit mrt { position 2; } + bit stats { position 3; } + bit fib-msg { position 4; } + bit register-msg { position 5; } + bit nsm-msg { position 6; } + bit mrib-msg { position 7; } + bit mtrace { position 8; } + bit mtrace-detail { position 9; } + } + } + + typedef CML_IGMP_DEBUG_T{ + type bits { + bit encode { position 0; } + bit decode { position 1; } + bit events { position 2; } + bit fsm { position 3; } + bit tib { position 4; } + } + } + + typedef CML_MLD_DEBUG_T{ + type bits { + bit encode { position 0; } + bit decode { position 1; } + bit events { position 2; } + bit fsm { position 3; } + bit tib { position 4; } + } + } + typedef CML_MAUTYPE_T{ type enumeration { enum dot3MauType10BaseTHD { value 10; } @@ -766,7 +1296,6 @@ module cml_data_types { enum dot3MauType10GbaseKX4 { value 57; } enum dot3MauType10GbaseKR { value 58; } enum dot3MauType40GbaseCR4 { value 71; } - enum dot3MauType0dot0 { value 255; } } } @@ -778,6 +1307,14 @@ module cml_data_types { } } + typedef CML_INTERFACE_TYPE_T{ + type enumeration { + enum Router { value 0; } + enum Switch { value 1; } + enum TDM { value 2; } + } + } + typedef CML_BANDWIDTHCONSTRAINTMODE_T{ type enumeration { enum MAM { value 0; } @@ -797,6 +1334,19 @@ module cml_data_types { } } + typedef CML_VRF_AFI_TYPE_T{ + type enumeration { + enum ipv4 { value 10; } + enum ipv6 { value 11; } + } + } + + typedef CML_VRF_SAFI_TYPE_T{ + type enumeration { + enum unicast { value 1; } + } + } + typedef CML_SAFI_TYPE_T{ type enumeration { enum unicast { value 1; } @@ -859,53 +1409,54 @@ module cml_data_types { typedef CML_BGP_SEND_COMMU_TYPE_T{ type bits { - bit standard { position 1; } - bit extended { position 2; } - bit both { position 3; } + bit standard { position 1; } + bit extended { position 2; } + bit both { position 3; } } } typedef CML_BGP_UPDATE_DEBUG_TYPE_T{ type bits { - bit in { position 8; } - bit out { position 9; } + bit in { position 8; } + bit out { position 9; } } } - typedef CML_BGP_DEBUG_TYPE_T{ + typedef CML_ATTRIBUTE_UNCHANGED_TYPE_T{ type bits { - bit all { position 0; } - bit nht { position 1; } - bit nsm { position 2; } - bit fsm { position 3; } - bit events { position 4; } - bit filters { position 5; } - bit keepalives { position 6; } - bit dampening { position 10; } - bit bfd { position 11; } + bit as-path { position 1; } + bit next-hop { position 2; } + bit med { position 3; } } } - typedef CML_BGP_MAXPATH_T{ - type enumeration { - enum ibgp { value 0; } - enum ebgp { value 1; } + typedef CML_BGP_DEBUG_TYPE_T{ + type bits { + bit all { position 0; } + bit nht { position 1; } + bit nsm { position 2; } + bit fsm { position 3; } + bit events { position 4; } + bit filters { position 5; } + bit keepalives { position 6; } + bit dampening { position 10; } + bit bfd { position 11; } } } typedef CML_BGP_DISTRIBUTE_LIST_ACTION_T{ - type enumeration { - enum in { value 0; } - enum out { value 1; } + type bits { + bit in { position 0; } + bit out { position 1; } } } typedef CML_BGP_REDISTRIBUTE_TYPE_T{ type enumeration { - enum kernel { value 0; } - enum connected { value 1; } - enum static { value 2; } - enum rip { value 3; } + enum kernel { value 1; } + enum connected { value 2; } + enum static { value 3; } + enum rip { value 4; } enum isis { value 5; } } } @@ -938,54 +1489,146 @@ module cml_data_types { } } - typedef CML_RSVP_PATH_TYPE_T{ + typedef CML_MPLS_MODULE_T{ type enumeration { - enum mpls { value 0; } - enum gmpls { value 1; } + enum rsvp { value 0; } + enum ldp { value 1; } + enum bgp { value 4; } } } - typedef CML_RSVP_TRUNK_TYPE_T{ + typedef CML_MPLS_ADMN_STATUS_T{ type enumeration { - enum ipv4 { value 0; } - enum ipv6 { value 1; } - enum gmpls { value 2; } + enum up { value 1; } + enum down { value 2; } + enum testing { value 3; } } } - typedef CML_RSVP_RESTART_STATUS_T{ + typedef CML_MPLS_OPR_STATUS_T{ type enumeration { - enum enable { value 0; } - enum disable { value 1; } + enum up { value 1; } + enum down { value 2; } + enum testing { value 3; } + enum dormant { value 4; } + enum not-persent { value 5; } + enum ll-down { value 6; } } } - typedef CML_RSVP_DETOUR_IDEN_T{ + typedef CML_MPLS_ROW_STATUS_T{ type enumeration { - enum sender-template { value 1; } - enum path { value 2; } + enum active { value 1; } + enum not-in-severice { value 2; } + enum not-ready { value 3; } + enum create-go { value 4; } + enum create-wait { value 5; } + enum destroy { value 6; } } } - typedef CML_RSVP_P2MP_ADDR_T{ + typedef CML_MPLS_BFD_FLAG_T{ type enumeration { - enum ipv4 { value 1; } - enum ipv6 { value 2; } + enum configured { value 0; } + enum enabled { value 1; } + enum disable { value 2; } } } - typedef CML_RSVP_CSPF_TYPE_T{ + typedef CML_NSM_MPLS_TPID_T{ type enumeration { - enum no-cspf { value 0; } - enum cspf { value 1; } + enum 88a8 { value 34984; } + enum 9100 { value 37120; } } } - typedef CML_MPLS_MODULE_T{ + typedef CML_NSM_MPLS_ADMIN_STATUS_T{ type enumeration { - enum rsvp { value 0; } - enum ldp { value 1; } - enum bgp { value 4; } + enum down { value 0; } + enum up { value 1; } + } + } + + typedef CML_NSM_MPLS_VPLS_LEARNING_T{ + type enumeration { + enum reset { value 0; } + enum enable { value 1; } + enum disable { value 2; } + } + } + + typedef CML_NSM_MPLS_VCMODE_T{ + type enumeration { + enum standby { value 2; } + enum revertive { value 4; } + } + } + + typedef CML_NSM_MPLS_VCLINKMODE_T{ + type enumeration { + enum primary { value 0; } + enum secondary { value 16; } + } + } + + typedef CML_NSM_MPLS_IF_VCTYPE_T{ + type enumeration { + enum hdlc { value 6; } + enum ppp { value 7; } + enum tdm-E1 { value 17; } + enum tdm-T1 { value 18; } + enum tdm-E3 { value 19; } + enum tdm-T3 { value 20; } + } + } + + typedef CML_NSM_MPLS_IF_ETHER_VCTYPE_T{ + type enumeration { + enum ethernet { value 5; } + } + } + + typedef CML_NSM_MPLS_IF_VLAN_VCTYPE_T{ + type enumeration { + enum vlan { value 4; } + } + } + + typedef CML_NSM_MPLS_BFD_T{ + type enumeration { + enum ldp { value 0; } + enum static { value 2; } + } + } + + typedef CML_BFD_RSVP_LSP_T{ + type enumeration { + enum rsvp { value 1; } + } + } + + typedef CML_NSM_MPLS_BFD_TYPE_T{ + type enumeration { + enum ldp { value 0; } + enum rsvp { value 1; } + enum static { value 2; } + } + } + + typedef CML_NSM_MPLS_VCCP_STATE_T{ + type enumeration { + enum start { value 1; } + enum stop { value 2; } + } + } + + typedef CML_OSPF_ROW_STATUS{ + type enumeration { + enum row-status-active { value 1; } + enum row-status-notinservice { value 2; } + enum row-status-notready { value 3; } + enum row-status-createandgo { value 4; } + enum row-status-createandwait { value 5; } } } @@ -996,6 +1639,28 @@ module cml_data_types { } } + typedef NSM_VPLS_ETHER_ACTION_T{ + type enumeration { + enum no-op { value 1; } + enum add { value 2; } + } + } + + typedef NSM_VPLS_VLAN_ACTION_T{ + type enumeration { + enum no-op { value 1; } + enum remove { value 3; } + enum replace { value 4; } + } + } + + typedef CML_DSTE_TYPE_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + typedef CML_NSM_VPLS_VC_SPOKE_TYPE_T{ type enumeration { enum vlan { value 4; } @@ -1023,6 +1688,13 @@ module cml_data_types { } } + typedef CML_VPLS_REDUNDANCY_ROLE_T{ + type enumeration { + enum primary { value 0; } + enum secondary { value 1; } + } + } + typedef CML_NSM_VPLS_OPCODE_T{ type enumeration { enum swap { value 3; } @@ -1030,6 +1702,18 @@ module cml_data_types { } } + typedef CML_NSM_MPLS_IPV6OPCODE_T{ + type enumeration { + enum swap { value 3; } + } + } + + typedef CML_NSM_VPLS_POPOPCODE_T{ + type enumeration { + enum pop { value 2; } + } + } + typedef CML_VPLS_VC_STYLE1_T{ type enumeration { enum peer { value 2; } @@ -1042,6 +1726,27 @@ module cml_data_types { } } + typedef CML_L2VPN_PROTOCOL_T{ + type enumeration { + enum none { value 1; } + enum bgp { value 2; } + enum ldp { value 4; } + enum ldp-autodiscovery-bgp { value 8; } + } + } + + typedef CML_L2VPN_VC_TYPE_T{ + type enumeration { + enum ethernet { value 5; } + enum hdlc { value 6; } + enum ppp { value 7; } + enum tdm-E1 { value 17; } + enum tdm-T1 { value 18; } + enum tdm-E3 { value 19; } + enum tdm-T3 { value 20; } + } + } + typedef CML_RSVP_PATH_STATUS_T{ type enumeration { enum loose { value 0; } @@ -1169,6 +1874,21 @@ module cml_data_types { } } + typedef CML_ISIS_IFLEVEL_T{ + type enumeration { + enum level-1 { value 1; } + enum level-2 { value 2; } + enum p2p { value 3; } + } + } + + typedef CML_ISIS_NBR_ADJ_T{ + type enumeration { + enum Suppress { value 1; } + enum Advertise { value 2; } + } + } + typedef CML_ISIS_NETWORK_T{ type enumeration { enum broadcast { value 1; } @@ -1176,11 +1896,21 @@ module cml_data_types { } } + typedef CML_ISIS_STATE_T{ + type enumeration { + enum Down { value 0; } + enum Init { value 1; } + enum Up { value 2; } + } + } + typedef CML_METRIC_STYLE_T{ type enumeration { enum narrow { value 1; } enum wide { value 2; } enum transition { value 3; } + enum narrow-transition { value 4; } + enum wide-transition { value 5; } } } @@ -1232,20 +1962,33 @@ module cml_data_types { typedef CML_ISIS_DEBUG_T{ type bits { - bit ifsm { position 0; } - bit nfsm { position 1; } - bit pdu { position 2; } - bit lsp { position 3; } - bit spf { position 4; } - bit events { position 5; } - bit nsm { position 6; } - bit checksum { position 7; } - bit authentication { position 8; } - bit local-updates { position 9; } - bit protocol-errors { position 10; } - bit hello { position 11; } - bit bfd { position 12; } - bit mpls { position 13; } + bit ifsm { position 0; } + bit nfsm { position 1; } + bit pdu { position 2; } + bit lsp { position 3; } + bit spf { position 4; } + bit events { position 5; } + bit nsm { position 6; } + bit checksum { position 7; } + bit authentication { position 8; } + bit local-updates { position 9; } + bit protocol-errors { position 10; } + bit bfd { position 12; } + bit mpls { position 13; } + bit rib { position 14; } + } + } + + typedef CML_ISIS_DEBUG_HELLO_T{ + type enumeration { + enum hello { value 1; } + } + } + + typedef CML_ISIS_CSPF_DEBUG_T{ + type bits { + bit events { position 0; } + bit hexdump { position 1; } } } @@ -1473,198 +2216,6 @@ module cml_data_types { } } - typedef CML_ACL_FILTER_ACTION_T{ - type enumeration { - enum deny { value 0; } - enum permit { value 1; } - } - } - - typedef CML_ACL_ANY_T{ - type enumeration { - enum any { value 0; } - } - } - - typedef CML_ACL_ANY_ADDR_T{ - type union{ - - type CML_ACL_ANY_T { - - } - type CML_IPV4_PREFIX_T { - - } - } - } - - typedef CML_ACL_ANY_PORT_T{ - type union{ - - type CML_ACL_ANY_T { - - } - type CML_UINT16_T { - - } - } - } - - typedef CML_ACL_PROTOS_T{ - type enumeration { - enum ether { value 0; } - enum ip { value 1; } - enum ipv6 { value 2; } - enum ipip { value 3; } - enum icmp { value 4; } - enum igmp { value 5; } - enum tcp { value 6; } - enum tcp6 { value 7; } - enum egp { value 8; } - enum udp { value 9; } - enum udp6 { value 10; } - enum rsvp { value 11; } - enum gre { value 12; } - enum esp { value 13; } - enum ah { value 14; } - enum icmp6 { value 15; } - enum ospf { value 16; } - enum pim { value 17; } - enum sctp { value 18; } - } - } - - typedef CML_ACL_IP_PROTOS_T{ - type enumeration { - enum ipip { value 0; } - enum icmp { value 1; } - enum igmp { value 2; } - enum tcp { value 3; } - enum tcp6 { value 4; } - enum egp { value 5; } - enum udp { value 6; } - enum udp6 { value 7; } - enum rsvp { value 8; } - enum gre { value 9; } - enum esp { value 10; } - enum ah { value 11; } - enum icmp6 { value 12; } - enum ospf { value 13; } - enum pim { value 14; } - enum sctp { value 15; } - } - } - - typedef CML_ACL_IP_PROTO_T{ - type union{ - - type CML_ACL_IP_PROTOS_T { - - } - type CML_UINT8_T { - - } - } - } - - typedef CML_ACL_PROTO_T{ - type union{ - - type CML_ACL_PROTOS_T { - - } - type CML_UINT8_T { - - } - } - } - - typedef CML_ACL_ICMP_OPTIONS_T{ - type enumeration { - enum echo-reply { value 0; } - enum unreachable { value 1; } - enum source-quench { value 2; } - enum redirect { value 3; } - enum echo { value 4; } - enum router-advert { value 5; } - enum router-solicit { value 6; } - enum time-exceed { value 7; } - enum param-prob { value 8; } - enum timestamp { value 9; } - enum timestamp-reply { value 10; } - enum info-req { value 11; } - enum info-reply { value 12; } - enum mask-req { value 13; } - enum mask-reply { value 14; } - } - } - - typedef CML_ACL_UNREACH_VAL_T{ - type enumeration { - enum net { value 0; } - enum host { value 1; } - enum protocol { value 2; } - enum port { value 3; } - enum need-frag { value 4; } - enum source-fail { value 5; } - enum net-unknown { value 6; } - enum host-unknown { value 7; } - enum isolated { value 8; } - enum net-prohibit { value 9; } - enum host-prohibit { value 10; } - enum net-tos { value 11; } - enum host-tos { value 12; } - enum admin-prohibit { value 13; } - } - } - - typedef CML_ACL_REDIR_VAL_T{ - type enumeration { - enum net { value 0; } - enum host { value 1; } - enum net-tos { value 2; } - enum host-tos { value 3; } - } - } - - typedef CML_ACL_TCP_FLAGS_T{ - type enumeration { - enum fin { value 0; } - enum syn { value 1; } - enum rst { value 2; } - enum ack { value 3; } - enum urg { value 4; } - } - } - - typedef CML_ACL_ACTION_T{ - type enumeration { - enum permit { value 0; } - enum deny { value 1; } - enum reject { value 2; } - } - } - - typedef CML_ACL_ANY_MAC_ADDR_T{ - type union{ - - type CML_ACL_ANY_T { - - } - type CML_MAC_ADDR_T { - - } - } - } - - typedef CML_ACL_RULE_OPTS_T{ - type enumeration { - enum log { value 0; } - enum count { value 1; } - enum shortcut { value 2; } - } - } - typedef CML_OSPF_ROUTE_T{ type enumeration { enum connected { value 0; } @@ -1706,18 +2257,6 @@ module cml_data_types { } } - typedef CML_ACL_ETHER_TYPE_T{ - type union{ - - type CML_ETHER_VALS_T { - - } - type CML_UINT16_T { - - } - } - } - typedef CML_ENDIS_T{ type enumeration { enum disable { value 0; } @@ -1765,66 +2304,6 @@ module cml_data_types { } } - typedef CML_RIP_DIRECTION_T{ - type enumeration { - enum in { value 0; } - enum out { value 1; } - } - } - - typedef CML_RIP_DIST_TYPE_T{ - type enumeration { - enum in { value 0; } - enum out { value 1; } - } - } - - typedef CML_RIP_METRIC_T{ - type enumeration { - enum disable { value 0; } - enum enable { value 1; } - } - } - - typedef CML_RIP_AUTHMODE_T{ - type enumeration { - enum md5 { value 2; } - enum text { value 3; } - } - } - - typedef CML_RIP_ORIGIN_T{ - type enumeration { - enum always { value 1; } - } - } - - typedef CML_VERSION_TYPE_T{ - type enumeration { - enum 1 { value 1; } - enum 2 { value 2; } - } - } - - typedef CML_COMPATIBLE_VERSION_TYPE_T{ - type enumeration { - enum 1 { value 1; } - enum 2 { value 2; } - enum 1-compatible { value 4; } - } - } - - typedef CML_RIP_REDIST_PROTOS_T{ - type enumeration { - enum kernel { value 0; } - enum connected { value 1; } - enum static { value 2; } - enum ospf { value 3; } - enum isis { value 4; } - enum bgp { value 5; } - } - } - typedef CML_RSVP_ADDR_T{ type enumeration { enum p2mp { value 1; } @@ -1838,6 +2317,12 @@ module cml_data_types { } } + typedef CML_HOSTP_LOCAL_TYPE_T{ + type enumeration { + enum local { value 1; } + } + } + typedef CML_HOSTP_LOCAL_NONE_TYPE_T{ type enumeration { enum local { value 0; } @@ -1845,10 +2330,9 @@ module cml_data_types { } } - typedef CML_HOSTP_LOCAL_TYPE_T{ + typedef CML_HOSTP_NONE_TYPE_T{ type enumeration { - enum local { value 0; } - enum default { value 1; } + enum none { value 1; } } } @@ -1968,6 +2452,79 @@ module cml_data_types { } } + typedef CML_OAMBFD_SESSION_FLAGS_T{ + type bits { + bit rem-heard-up { position 0; } + bit admin-down { position 1; } + bit Fate-Shared { position 2; } + bit remote-admin-down { position 3; } + bit Echo-Enabled { position 4; } + bit Demand-Enabled { position 5; } + bit Remote-Demand-Enabled { position 6; } + bit Poll-seq-Init { position 8; } + } + } + + typedef CML_OAMBFD_PERFORM_DIAG_T{ + type enumeration { + enum Diagnostics--None { value 0; } + enum Diagnostics-Control-Detected-Expiry { value 1; } + enum Diagnostics-Echo-Failed { value 2; } + enum Diagnostics-Neighbor-Session-Down { value 3; } + enum Diagnostics-Forwarding-Plane-Reset { value 4; } + enum Diagnostics-Path-Down { value 5; } + enum Diagnostics-Concatenated-Path-Down { value 6; } + enum Diagnostics-Admin-Down { value 7; } + enum Diagnostics-Reverse-Concatenated-Path-Down { value 8; } + enum Diagnostics-Configuration-Error { value 9; } + enum Diagnostics--Not-forwarding { value 10; } + } + } + + typedef CML_OAMBFD_SESSION_STATE_T{ + type enumeration { + enum Admin-Down { value 0; } + enum Down { value 1; } + enum Init { value 2; } + enum Up { value 3; } + } + } + + typedef CML_OAMBFD_IMAGE_TYPE_T{ + type enumeration { + enum MONOLITHIC { value 1; } + enum DISTRIBUTED { value 2; } + enum DISTRIBUTE { value 3; } + } + } + + typedef CML_OAMBFD_ADMIN_STATE_T{ + type enumeration { + enum Up { value 1; } + enum Down { value 2; } + } + } + + typedef CML_OAMBFD_SESSION_TYPE_T{ + type enumeration { + enum Single-Hop { value 1; } + enum Multihop-Arbit-Path { value 2; } + enum Multihop-OOB-Signalled { value 3; } + enum Multihop-Unidirectional { value 4; } + } + } + + typedef CML_OAMBFD_SESS_LOWER_LAYER_T{ + type enumeration { + enum UNKNOWN { value 0; } + enum IPv4 { value 1; } + enum IPv6 { value 2; } + enum MPLS-LSP { value 3; } + enum MPLS-VCCV { value 4; } + enum MPLS-TP { value 5; } + } + } + typedef CML_VRRP_VMAC_T{ type enumeration { enum enable { value 1; } @@ -2090,6 +2647,12 @@ module cml_data_types { } } + typedef CML_VXLAN_MODE_T{ + type enumeration { + enum vxlan { value 1; } + } + } + typedef CML_LLDP_MED_T{ type enumeration { enum network-policy { value 0; } @@ -2181,13 +2744,20 @@ module cml_data_types { } } - typedef CML_NSM_MPLS_LOG_T{ + typedef CML_NSM_MPLS_ENABLE_DISABLE_T{ type enumeration { - enum error { value 1; } - enum warning { value 2; } - enum debug { value 4; } - enum notice { value 8; } - enum all { value 16; } + enum disable-all-interfaces { value 0; } + enum enable-all-interfaces { value 1; } + } + } + + typedef CML_NSM_MPLS_LOG_T{ + type bits { + bit error { position 0; } + bit warning { position 1; } + bit debug { position 2; } + bit notice { position 3; } + bit all { position 4; } } } @@ -2235,6 +2805,32 @@ module cml_data_types { } } + typedef CML_VXLAN_INGRESS_T{ + type enumeration { + enum ingress-replication { value 1; } + } + } + + typedef CML_FOG_IFCTYPE_T{ + type enumeration { + enum mpg { value 1; } + enum cpg { value 2; } + } + } + + typedef CML_FOG_LINK_TYPE_T{ + type enumeration { + enum uplink { value 1; } + enum downlink { value 2; } + } + } + + typedef CML_VXLAN_INNER_VID_T{ + type enumeration { + enum inner-vid-disabled { value 1; } + } + } + typedef CML_MROUTE_ROUTETYPE_T{ type enumeration { enum static { value 3; } @@ -2261,37 +2857,94 @@ module cml_data_types { } } - typedef CML_RIB_DEBUG_TYPE_T{ - type bits { - bit all { position 0; } - bit events { position 1; } - bit packet { position 2; } - bit packet-send { position 3; } - bit packet-recv { position 4; } - bit packet-detail { position 5; } - bit packet-send-detail { position 6; } - bit packet-recv-detail { position 7; } - bit kernel { position 8; } - bit ha { position 9; } - bit ha-all { position 10; } - bit nsm { position 11; } - bit bfd { position 12; } - bit monitor { position 13; } - bit routing { position 14; } - bit routing-add-route { position 15; } - bit routing-delete-route { position 16; } - bit routing-mod-route { position 17; } - bit hal-events { position 18; } - bit hal-ipc { position 19; } - } - } - - typedef CML_RIB_DEBUG_IPV6_TYPE_T{ - type bits { - bit routing { position 20; } - bit routing-add-route { position 21; } - bit routing-delete-route { position 22; } - bit routing-mod-route { position 23; } + typedef CML_FIB_RETAIN_T{ + type union{ + + type CML_FIB_RETAIN_TIME_T { + + } + type CML_FIB_RETAIN_FOREVER_T { + + } + } + } + + typedef CML_FIB_RETAIN_FOREVER_T{ + type enumeration { + enum forever { value 0; } + } + } + + typedef CML_FIB_RETAIN_TIME_T{ + type uint32; + } + + typedef CML_RIB_DEBUG_TYPE_T{ + type bits { + bit all { position 0; } + bit events { position 1; } + bit packet { position 2; } + bit packet-send { position 3; } + bit packet-recv { position 4; } + bit packet-detail { position 5; } + bit packet-send-detail { position 6; } + bit packet-recv-detail { position 7; } + bit kernel { position 8; } + bit ha { position 9; } + bit ha-all { position 10; } + bit nsm { position 11; } + bit bfd { position 12; } + bit monitor { position 13; } + bit hal-events { position 18; } + } + } + + typedef CML_RIB_DEBUG_EXIT_TYPE_T{ + type bits { + bit all { position 0; } + bit events { position 1; } + bit packet { position 2; } + bit packet-send { position 3; } + bit packet-recv { position 4; } + bit packet-detail { position 5; } + bit packet-send-detail { position 6; } + bit packet-recv-detail { position 7; } + bit kernel { position 8; } + bit ha { position 9; } + bit ha-all { position 10; } + bit nsm { position 11; } + bit bfd { position 12; } + bit monitor { position 13; } + bit hal-events { position 18; } + bit hal-ipc { position 19; } + } + } + + typedef CML_RIB_UNDEBUG_TYPE_T{ + type bits { + bit all { position 0; } + bit events { position 1; } + bit packet { position 2; } + bit packet-send { position 3; } + bit packet-recv { position 4; } + bit packet-detail { position 5; } + bit packet-send-detail { position 6; } + bit packet-recv-detail { position 7; } + bit kernel { position 8; } + bit ha { position 9; } + bit ha-all { position 10; } + bit nsm { position 11; } + bit bfd { position 12; } + bit hal-events { position 18; } + } + } + + typedef CML_RIB_DEBUG_ROUTING_TYPE_T{ + type bits { + bit routing { position 20; } + bit routing-add-route { position 21; } + bit routing-delete-route { position 22; } + bit routing-mod-route { position 23; } } } @@ -2304,22 +2957,37 @@ module cml_data_types { typedef CML_VRRP_INIT_MSG_CODE_T{ type enumeration { - enum VRRP_INIT_MSG_ADMIN_DOWN { value 0; } - enum VRRP_INIT_MSG_IF_NOT_RUNNING { value 1; } - enum VRRP_INIT_MSG_CIRCUIT_DOWN { value 2; } - enum VRRP_INIT_MSG_NO_SUBNET { value 3; } - enum VRRP_INIT_MSG_VIP_UNSET { value 4; } - enum VRRP_INIT_MSG_IN_SWITCH_BACK_DELAY { value 5; } + enum admin-down { value 0; } + enum if-not-running { value 1; } + enum circuit-down { value 2; } + enum no-subnet { value 3; } + enum vip-unset { value 4; } + enum switch-back-delay { value 5; } } } typedef CML_VRRP_DEBUG_T{ type bits { - bit all { position 0; } - bit events { position 1; } - bit packet { position 2; } - bit packet-send { position 3; } - bit packet-recv { position 4; } + bit all { position 0; } + bit events { position 1; } + bit packet { position 2; } + bit packet-send { position 3; } + bit packet-recv { position 4; } + } + } + + typedef CML_VRRP_STATE_T{ + type enumeration { + enum init { value 1; } + enum backup { value 2; } + enum master { value 3; } + } + } + + typedef CML_VRRP_MEMEBER_STATE{ + type enumeration { + enum joined { value 1; } + enum left { value 2; } } } @@ -2332,14 +3000,14 @@ module cml_data_types { typedef MCEC_DEBUG_T{ type bits { - bit hello { position 1; } - bit info { position 2; } - bit timer { position 3; } - bit event { position 4; } - bit cli { position 5; } - bit mac-sync { position 6; } - bit stp { position 7; } - bit all { position 8; } + bit hello { position 1; } + bit info { position 2; } + bit timer { position 3; } + bit event { position 4; } + bit cli { position 5; } + bit mac-sync { position 6; } + bit stp { position 7; } + bit all { position 8; } } } @@ -2356,61 +3024,2163 @@ module cml_data_types { } } + typedef CML_COMMON_DEBUG_TYPE_T{ + type bits { + bit decode { position 0; } + bit encode { position 1; } + bit events { position 2; } + bit fsm { position 3; } + bit tib { position 4; } + } + } + + typedef CML_UNKNOWN_MCAST_T{ + type enumeration { + enum flood { value 0; } + enum discard { value 1; } + } + } + typedef CML_OSPF6_DEBUG_PACKET_TYPE_T{ type bits { - bit hello { position 1; } - bit dd { position 2; } - bit ls-request { position 3; } - bit ls-update { position 4; } - bit ls-ack { position 5; } - bit send { position 6; } - bit recv { position 7; } - bit detail { position 8; } + bit hello { position 1; } + bit dd { position 2; } + bit ls-request { position 3; } + bit ls-update { position 4; } + bit ls-ack { position 5; } + bit send { position 6; } + bit recv { position 7; } + bit detail { position 8; } } } typedef CML_OSPF6_DEBUG_IFSM_T{ type bits { - bit status { position 0; } - bit events { position 1; } - bit timers { position 2; } + bit status { position 0; } + bit events { position 1; } + bit timers { position 2; } } } typedef CML_OSPF6_DEBUG_LSA_T{ type bits { - bit generate { position 0; } - bit flooding { position 1; } - bit install { position 2; } - bit refresh { position 3; } - bit maxage { position 4; } + bit generate { position 0; } + bit flooding { position 1; } + bit install { position 2; } + bit refresh { position 3; } + bit maxage { position 4; } } } typedef CML_OSPF6_DEBUG_RIB_T{ type bits { - bit interface { position 0; } - bit redistribute { position 1; } + bit interface { position 0; } + bit redistribute { position 1; } } } typedef CML_OSPF6_DEBUG_ROUTE_T{ type bits { - bit spf { position 0; } - bit ia { position 1; } - bit ase { position 2; } - bit install { position 3; } + bit spf { position 0; } + bit ia { position 1; } + bit ase { position 2; } + bit install { position 3; } } } typedef CML_OSPF6_DEBUG_EVENT_T{ type bits { - bit abr { position 0; } - bit asbr { position 1; } - bit vlink { position 2; } - bit os { position 3; } - bit router { position 4; } - bit nssa { position 5; } + bit abr { position 0; } + bit asbr { position 1; } + bit vlink { position 2; } + bit os { position 3; } + bit router { position 4; } + bit nssa { position 5; } + } + } + + typedef CML_MODULE_NAME_T{ + type enumeration { + enum all { value 1; } + enum auth { value 2; } + enum bgp { value 3; } + enum cmm { value 4; } + enum dvmrp { value 5; } + enum hostp { value 6; } + enum hsl { value 7; } + enum isis { value 8; } + enum lacp { value 9; } + enum ldp { value 10; } + enum lagd { value 11; } + enum l2mrib { value 12; } + enum mstp { value 13; } + enum mrib { value 14; } + enum ndd { value 15; } + enum nsm { value 16; } + enum onm { value 17; } + enum oam { value 18; } + enum ospf { value 19; } + enum ospf6 { value 20; } + enum ptp { value 21; } + enum rip { value 22; } + enum rmon { value 23; } + enum pim { value 24; } + enum rib { value 25; } + enum ripng { value 26; } + enum vrrp { value 27; } + enum sflow { value 28; } + enum trill { value 29; } + enum rsvp { value 30; } + enum pservd { value 31; } + } + } + + typedef CML_TIMESTAMP_T{ + type enumeration { + enum microseconds { value 1; } + enum milliseconds { value 2; } + enum seconds { value 3; } + } + } + + typedef CML_LEVEL_T{ + type enumeration { + enum debuglogging { value 0; } + enum emergencies { value 1; } + enum alerts { value 2; } + enum critical { value 3; } + enum errors { value 4; } + enum warnings { value 5; } + enum notifications { value 6; } + enum informational { value 7; } + enum debugging { value 8; } + } + } + + typedef CML_CLEAR_NTP_STATISTICS_T{ + type enumeration { + enum all-peers { value 0; } + enum io { value 1; } + enum local { value 2; } + enum memory { value 3; } + } + } + + typedef CML_NTP_MODE_T{ + type enumeration { + enum peer { value 1; } + enum server { value 2; } + } + } + + typedef SFLOW_DEBUG_OPTIONS_T{ + type enumeration { + enum agent { value 1; } + enum sampling { value 2; } + enum polling { value 3; } + enum all { value 4; } + } + } + + typedef SFLOW_DIRECTION_OPTION_T{ + type enumeration { + enum ingress { value 1; } + enum egress { value 2; } + enum both { value 3; } + } + } + + typedef USER_MGMT_ROLE_OPTIONS_T{ + type enumeration { + enum network-admin { value 1; } + enum network-operator { value 2; } + enum network-user { value 3; } + } + } + + typedef CML_ACCEPT_LIFETIME_T{ + type enumeration { + enum accept-lifetime { value 1; } + } + } + + typedef CML_ISIS_ADDRESS_IPV6_T{ + type enumeration { + enum ipv6 { value 1; } + } + } + + typedef CML_SEND_LIFETIME_T{ + type enumeration { + enum send-lifetime { value 1; } + } + } + + typedef CML_PREFIX_LIST_TYPE{ + type enumeration { + enum deny { value 1; } + enum permit { value 2; } + } + } + + typedef CML_IPV4_ADDR_PREFIX_T{ + type inet:ipv4-address; + } + + typedef CML_ISIS_METRIC_T{ + type enumeration { + enum internal { value 0; } + enum external { value 1; } + } + } + + typedef CML_IS_TYPE3_T{ + type enumeration { + enum level-1 { value 1; } + enum level-2 { value 2; } + enum level-1-2 { value 3; } + } + } + + typedef CML_ISIS_SUPPRESS_T{ + type enumeration { + enum external { value 1; } + enum interlevel { value 2; } + enum external-interlevel { value 3; } + enum interlevel-external { value 4; } + } + } + + typedef CML_WAITFORBGP_T{ + type enumeration { + enum wait-for-bgp { value 1; } + } + } + + typedef CML_ISIS_ONSTARTUP_T{ + type union{ + + type CML_WAITFORBGP_T { + + } + type CML_UINT32_T { + range "5..86400"; + + } + } + } + + typedef CML_MESH_BLOCKED_T{ + type enumeration { + enum blocked { value 0; } + } + } + + typedef CML_ISIS_MESH_TYPE_T{ + type union{ + + type CML_MESH_BLOCKED_T { + + } + type CML_UINT32_T { + range "1..4294967295"; + + } + } + } + + typedef CML_OSPF_CAPABILITY_TE_T{ + type enumeration { + enum te { value 1; } + enum traffic-engineering { value 2; } + } + } + + typedef CML_OSPF_AREA_AUTHENTICATION_TYPE_T{ + type enumeration { + enum authentication { value 1; } + enum authentication-message-digest { value 2; } + } + } + + typedef CML_OSPF_VLINK_AUTH_TYPE_T{ + type enumeration { + enum authentication-null { value 0; } + enum authentication { value 1; } + enum authentication-message-digest { value 2; } + } + } + + typedef CML_OSPF_VLINK_INTERFACE_STATE_T{ + type enumeration { + enum DependUpon { value 0; } + enum Down { value 1; } + enum Loopback { value 2; } + enum Waiting { value 3; } + enum Point-To-Point { value 4; } + enum DROther { value 5; } + enum Backup { value 6; } + enum DR { value 7; } + } + } + + typedef CML_OSPF_VLINK_ADJ_STATE_T{ + type enumeration { + enum DependUpon { value 0; } + enum Down { value 1; } + enum Attempt { value 2; } + enum Init { value 3; } + enum 2-Way { value 4; } + enum ExStart { value 5; } + enum Exchange { value 6; } + enum Loading { value 7; } + enum Full { value 8; } + } + } + + typedef CML_OSPF_VLINK_STATUS_T{ + type enumeration { + enum Down { value 0; } + enum Up { value 1; } + } + } + + typedef CML_OSPF_AREA_RANGE_ADVERTISE_T{ + type enumeration { + enum not-advertise { value 0; } + enum advertise { value 1; } + } + } + + typedef CML_OSPF_BFD_STATE{ + type enumeration { + enum disable { value 1; } + } + } + + typedef CML_OSPF_ALL_DEBUG_T{ + type enumeration { + enum all { value 1; } + } + } + + typedef CML_OSPF_PACKET_TYPE_T{ + type bits { + bit hello { position 0; } + bit dd { position 1; } + bit ls-request { position 2; } + bit ls-update { position 3; } + bit ls-ack { position 4; } + bit send { position 5; } + bit recv { position 6; } + bit detail { position 7; } + } + } + + typedef CML_OSPF_DEBUG_EVENT_TYPE_T{ + type bits { + bit abr { position 0; } + bit nssa { position 1; } + bit asbr { position 2; } + bit vlink { position 3; } + bit lsa { position 4; } + bit os { position 5; } + bit router { position 6; } + } + } + + typedef CML_OSPF_DEBUG_IFSM_T{ + type bits { + bit status { position 0; } + bit events { position 1; } + bit timers { position 2; } + } + } + + typedef CML_OSPF_DEBUG_NFSM_T{ + type bits { + bit status { position 0; } + bit events { position 1; } + bit timers { position 2; } + } + } + + typedef CML_OSPF_DEBUG_LSA_T{ + type bits { + bit generate { position 0; } + bit flooding { position 1; } + bit install { position 2; } + bit refresh { position 3; } + bit maxage { position 4; } + } + } + + typedef CML_OSPF_DEBUG_NSM_T{ + type bits { + bit interface { position 0; } + bit redistribute { position 1; } + } + } + + typedef CML_OSPF_DEBUG_RIB_T{ + type bits { + bit interface { position 0; } + bit redistribute { position 1; } + } + } + + typedef CML_OSPF_DEBUG_RIB_CLIENT_T{ + type bits { + bit redistribute { position 1; } + bit client { position 2; } + } + } + + typedef CML_FLOWCTRL_T{ + type enumeration { + enum off { value 0; } + enum on { value 1; } + } + } + + typedef CML_ERROR_SET_TYPE_T{ + type enumeration { + enum packet-loss { value 0; } + enum stray-packets { value 1; } + enum malformed-packets { value 2; } + enum excessive-packet-loss-rate { value 3; } + enum buffer-overrun { value 4; } + enum remote-packet-loss { value 5; } + } + } + + typedef CML_ERROR_CLEAR_TYPE_T{ + type enumeration { + enum packet-loss { value 6; } + enum stray-packets { value 7; } + enum malformed-packets { value 8; } + enum excessive-packet-loss-rate { value 9; } + enum buffer-overrun { value 10; } + enum remote-packet-loss { value 11; } + } + } + + typedef CML_SR_ABSOLUTE_T{ + type uint32; + } + + typedef CML_SR_INDEX_T{ + type uint32; + } + + typedef CML_SR_SID_T{ + type union{ + + type CML_SR_ABSOLUTE_T { + + } + type CML_SR_INDEX_T { + + } + } + } + + typedef CML_SR_PREFIX_FLAG_T{ + type enumeration { + enum explicit-null { value 1; } + enum no-php { value 2; } + } + } + + typedef CML_SR_N_FLAG_CLEAR_T{ + type enumeration { + enum n-flag-clear { value 1; } + } + } + + typedef CML_NSM_ERR_REASON_T{ + type enumeration { + enum stp-bpdu-guard-enable { value 1; } + enum lag-mismatch-enable { value 2; } + enum stp-bpdu-guard-disable { value 3; } + enum lag-mismatch-disable { value 4; } + } + } + + typedef CML_NSM_ERR_DISABLE_TIMEOUT_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_OSPF_DEBUG_ROUTE_T{ + type bits { + bit spf { position 0; } + bit ia { position 1; } + bit ase { position 2; } + bit install { position 3; } + bit spf-terse { position 4; } + } + } + + typedef CML_OSPF_DEBUG_REDIST_T{ + type enumeration { + enum detail { value 1; } + enum terse { value 2; } + } + } + + typedef CML_OSPF_DEBUG_GRACEFUL_T{ + type enumeration { + enum detail { value 1; } + enum terse { value 2; } + } + } + + typedef CML_OSPF_MD5_T{ + type enumeration { + enum 0 { value 1; } + } + } + + typedef CML_ROUTEMAP_LIST_T{ + type union{ + + type CML_INT32_T { + range "1..199 | 1300..2699"; + + } + type CML_STRING_T { + + } + } + } + + typedef CML_ROUTEMAP_EXTERNAL_TYPE_LIST{ + type enumeration { + enum type-1 { value 1; } + enum type-2 { value 2; } + } + } + + typedef CML_ROUTEMAP_OSPF_METRIC_TYPE_LIST{ + type enumeration { + enum type-1 { value 1; } + enum type-2 { value 2; } + } + } + + typedef CML_ROUTEMAP_ISIS_METRIC_TYPE_LIST{ + type enumeration { + enum internal { value 1; } + enum external { value 2; } + } + } + + typedef CML_LEVEL_LIST_T{ + type enumeration { + enum level-1 { value 1; } + enum level-2 { value 2; } + enum level-1-2 { value 3; } + } + } + + typedef CML_ROUTEMAP_ORIGIN_CODE{ + type enumeration { + enum egp { value 1; } + enum igp { value 2; } + enum incomplete { value 3; } + } + } + + typedef CML_ROUTEMAP_COST_COMPARISION_T{ + type enumeration { + enum igp { value 1; } + enum pre-bestpath { value 2; } + } + } + + typedef CML_FORWARDTYPE_T{ + type enumeration { + enum null0 { value 0; } + enum tunnel-te { value 1; } + } + } + + typedef CML_ROUTEMAP_COMMUNITY_LIST_T{ + type union{ + + type CML_INT32_T { + range "1..99 | 100..500"; + + } + type CML_STRING_T { + + } + } + } + + typedef CML_ROUT_MAP_EXACT_MATCH_T{ + type enumeration { + enum exact-match { value 1; } + } + } + + typedef CML_ROUTEMAP_MATCH_T{ + type union{ + + type CML_IPV6_ADDR_T { + + } + type CML_STRING_T { + + } + } + } + + typedef CML_COMMUNITY_T{ + type string; + } + + typedef CML_ROUTEMAP_COMMUNITY_T{ + type union{ + + type CML_INT32_T { + range "1..65535"; + + } + type CML_COMMUNITY_T { + + } + } + } + + typedef CML_ROUTEMAP_ADDITIVE_LIST_T{ + type enumeration { + enum additive { value 1; } + } + } + + typedef CML_AP_RMAP_ALL_T{ + type enumeration { + enum all { value 1; } + } + } + + typedef CML_AP_RMAP_BEST_T{ + type uint8; + } + + typedef CML_ADDPATH_RMAP_T{ + type union{ + + type CML_AP_RMAP_BEST_T { + + } + type CML_AP_RMAP_ALL_T { + + } + } + } + + typedef CML_BRIDGE_FORWARD_T{ + type enumeration { + enum bridge-forward { value 1; } + } + } + + typedef CML_BCKBONE_BRIDGE_GRP_T{ + type enumeration { + enum backbone { value 0; } + } + } + + typedef CML_BRIDGE_GRP_T{ + type uint8; + } + + typedef CML_BRIDGE_GRP_CMD_T{ + type union{ + + type CML_BRIDGE_GRP_T { + + } + type CML_BCKBONE_BRIDGE_GRP_T { + + } + } + } + + typedef CML_BRIDGE_SPANMODE_T{ + type enumeration { + enum stp { value 1; } + enum stp-vlan-bridge { value 2; } + enum rstp { value 3; } + enum rstp-vlan-bridge { value 4; } + enum mstp { value 5; } + enum provider-rstp { value 6; } + enum provider-mstp { value 7; } + enum rpvst+ { value 12; } + } + } + + typedef CML_ALLOWED_FORBIDDEN_T{ + type enumeration { + enum forbidden { value 0; } + enum allowed { value 1; } + } + } + + typedef CML_ADD_REMOVE_T{ + type enumeration { + enum remove { value 0; } + enum add { value 1; } + } + } + + typedef CML_VLANSTACK_T{ + type enumeration { + enum provider-port { value 1; } + enum customer-edge-port { value 2; } + } + } + + typedef CML_ENABLEBPDURX_T{ + type enumeration { + enum disableBPDUrx { value 0; } + enum enableBPDUrx { value 1; } + } + } + + typedef CML_ACLTYPE_T{ + type enumeration { + enum mac { value 1; } + enum ip { value 3; } + enum ipv6 { value 4; } + } + } + + typedef CML_BRIDGE_T{ + type uint8; + } + + typedef CML_BRIDGE_ID_T{ + type union{ + + type CML_BRIDGE_T { + + } + type CML_SPANNING_TREE_T { + + } + } + } + + typedef CML_BRIDGE_BACKBONE_ID_T{ + type union{ + + type CML_BRIDGE_BCKBONE_T { + + } + type CML_BACKBONE_T { + + } + } + } + + typedef CML_BACKBONE_T{ + type enumeration { + enum backbone { value 33; } + } + } + + typedef CML_BRIDGE_BCKBONE_T{ + type uint8; + } + + typedef CML_ACTIONTYPE_T{ + type enumeration { + enum forward { value 101; } + enum drop { value 102; } + enum redirect { value 103; } + } + } + + typedef CML_VLAN_OPT_TYPE_T{ + type enumeration { + enum add { value 1; } + enum delete { value 2; } + } + } + + typedef CML_TESI_MODE_T{ + type enumeration { + enum passive { value 1; } + enum active { value 2; } + } + } + + typedef CML_TESI_TYPE_T{ + type enumeration { + enum dynamic { value 1; } + enum static { value 2; } + } + } + + typedef CML_PNPADDDEL_T{ + type enumeration { + enum add { value 1; } + enum delete { value 2; } + } + } + + typedef CML_NSMVLANPORT_MODE_T{ + type enumeration { + enum pnp { value 6; } + enum cnp { value 8; } + enum pip { value 10; } + enum cbp { value 11; } + } + } + + typedef CML_CMBCKINSTANCE_T{ + type uint32; + } + + typedef CML_SPANNING_TREE_T{ + type enumeration { + enum spanning-tree { value 0; } + } + } + + typedef CML_INSTANCE_NAME_T{ + type string; + } + + typedef CML_SVLAN_INSTANCE_NAME_T{ + type union{ + + type CML_CMBCKINSTANCE_T { + + } + type CML_INSTANCE_NAME_T { + + } + } + } + + typedef CML_CMBCKBONE_INSTANCE_T{ + type union{ + + type CML_CMBCKINSTANCE_T { + + } + type CML_INSTANCE_IFNAME_T { + + } + } + } + + typedef CML_INSTANCE_IFNAME_T{ + type string; + } + + typedef CML_VIP_TRAFFIC_T{ + type enumeration { + enum all { value 0; } + enum ingress { value 1; } + enum egress { value 2; } + } + } + + typedef CML_BEB_MODE_T{ + type enumeration { + enum tx { value 0; } + enum rx { value 1; } + enum rxtx { value 2; } + enum none { value 3; } + } + } + + typedef CML_BRIDGE_BACKBONE_T{ + type union{ + + type CML_BACKBONE_T { + + } + type CML_UINT8_T { + range "1..32"; + + } + } + } + + typedef CML_ASPTEISID_T{ + type enumeration { + enum add { value 1; } + enum delete { value 2; } + } + } + + typedef CML_CNPINS_T{ + type uint32; + } + + typedef CML_OSPF_NBMA_ROW_STATUS{ + type enumeration { + enum row-status-active { value 1; } + enum row-status-notinservice { value 2; } + enum row-status-notready { value 3; } + enum row-status-createandgo { value 4; } + enum row-status-createandwait { value 5; } + enum row-status-destroy { value 6; } + } + } + + typedef CML_OSPF_IF_STATE{ + type enumeration { + enum enabled { value 1; } + enum disabled { value 2; } + } + } + + typedef CML_CNP_INSTANCE_T{ + type union{ + + type CML_CNPINS_T { + + } + type CML_CNP_INSTANCE_IFNAME_T { + + } + } + } + + typedef CML_CNP_INSTANCE_IFNAME_T{ + type string; + } + + typedef SNMP_TRAP_OPTIONS_T{ + type enumeration { + enum link { value 1; } + enum link-linkDown { value 2; } + enum link-linkUp { value 3; } + enum snmp { value 4; } + enum snmp-authentication { value 5; } + enum mpls { value 6; } + enum pw { value 7; } + enum pwdelete { value 8; } + enum rsvp { value 9; } + } + } + + typedef CML_STROM_CTRL_FLAG_T{ + type enumeration { + enum broadcast { value 1; } + enum multicast { value 2; } + enum dlf { value 4; } + enum unicast { value 6; } + } + } + + typedef CML_VR_PROTOCOL_T{ + type bits { + bit rip { position 1; } + bit ipv6-rip { position 2; } + bit ospf { position 3; } + bit ipv6-ospf { position 4; } + bit isis { position 5; } + bit pim { position 6; } + bit vrrp { position 7; } + bit bgp { position 9; } + } + } + + typedef CML_LDP_ENABLE_IPV4_TYPE_T{ + type enumeration { + enum disable-ldp { value 0; } + enum enable-ldp { value 1; } + } + } + + typedef CML_LDP_ENABLE_IPV6_TYPE_T{ + type enumeration { + enum disable-ldp { value 0; } + enum enable-ldp { value 1; } + } + } + + typedef CML_LDP_IGP_SYNC_T{ + type enumeration { + enum igp-sync { value 0; } + enum no-igp-sync { value 1; } + } + } + + typedef CML_RSVP_INSTANCE_T{ + type enumeration { + enum rsvp { value 1; } + } + } + + typedef CML_LDP_INSTANCE_T{ + type enumeration { + enum ldp { value 1; } + } + } + + typedef CML_LDP_DEBUG_T{ + type bits { + bit events { position 0; } + bit fsm { position 1; } + bit hexdump { position 2; } + bit dsm { position 3; } + bit usm { position 4; } + bit tsm { position 5; } + bit qos { position 6; } + bit nsm { position 7; } + bit advertise-labels { position 8; } + bit cspf { position 9; } + bit vc-usm { position 10; } + bit vc-dsm { position 11; } + bit graceful-restart { position 12; } + bit rib { position 13; } + bit inter-area { position 15; } + bit all { position 16; } + } + } + + typedef CML_LDP_DEBUG_PACKET_T{ + type bits { + bit notification { position 0; } + bit hello { position 1; } + bit initialization { position 2; } + bit keepalive { position 3; } + bit address { position 4; } + bit label { position 5; } + } + } + + typedef CML_LDP_FAILURE_T{ + type enumeration { + enum restart { value 0; } + } + } + + typedef CML_LDP_CSPF_T{ + type enumeration { + enum no-cspf { value 0; } + enum cspf { value 1; } + } + } + + typedef CML_LDP_LOOSE_T{ + type enumeration { + enum strict { value 0; } + enum loose { value 1; } + } + } + + typedef CML_LDP_TRUNK_ADMIN_GROUP_T{ + type enumeration { + enum exclude-any { value 0; } + enum include-any { value 1; } + } + } + + typedef CML_LDP_IP_ADDR_T{ + type union{ + + type CML_IPV4_ADDR_DESC_T { + + } + type CML_IPV6_ADDR_DESC_T { + + } + } + } + + typedef CML_RSVP_PATH_TYPE_T{ + type enumeration { + enum mpls { value 0; } + enum gmpls { value 1; } + } + } + + typedef CML_RSVP_TRUNK_ADDRFAMILY_T{ + type enumeration { + enum ipv4 { value 0; } + enum ipv6 { value 1; } + enum gmpls { value 2; } + } + } + + typedef CML_PATH_SEL_TYPE_T{ + type enumeration { + enum te { value 0; } + enum igp { value 1; } + } + } + + typedef CML_RSVP_RESTART_STATUS_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_RSVP_DETOUR_IDEN_T{ + type enumeration { + enum sender-template { value 1; } + enum path { value 2; } + } + } + + typedef CML_RSVP_P2MP_ADDR_T{ + type enumeration { + enum ipv4 { value 1; } + enum ipv6 { value 2; } + } + } + + typedef CML_RSVP_CSPF_TYPE_T{ + type enumeration { + enum no-cspf { value 0; } + enum cspf { value 1; } + } + } + + typedef CML_RSVP_TRUNK_METRIC_TYPE_T{ + type enumeration { + enum igp-metric { value 1; } + enum te-metric { value 2; } + enum hop-count { value 3; } + } + } + + typedef CML_RSVP_CSPF_STATUS_T{ + type enumeration { + enum no-cspf { value 0; } + enum cspf { value 1; } + } + } + + typedef CML_LOOP_DETECTION_T{ + type enumeration { + enum no-loop-detection { value 0; } + enum loop-detection { value 1; } + } + } + + typedef CML_RSVP_PHP_T{ + type enumeration { + enum no-php { value 0; } + enum php { value 1; } + } + } + + typedef CML_REFRESH_PATH_PARSING_T{ + type enumeration { + enum no-refresh-path-parsing { value 0; } + enum refresh-path-parsing { value 1; } + } + } + + typedef CML_REFRESH_RESV_PARSING_T{ + type enumeration { + enum no-refresh-resv-parsing { value 0; } + enum refresh-resv-parsing { value 1; } + } + } + + typedef CML_RSVP_DEBUG_T{ + type bits { + bit events { position 0; } + bit packet { position 1; } + bit packet-in { position 2; } + bit packet-out { position 3; } + bit hexdump { position 4; } + bit nsm { position 5; } + bit cspf { position 6; } + bit fsm-egress { position 7; } + bit fsm-transit-downstream { position 8; } + bit fsm-transit-upstream { position 9; } + bit fsm-ingress { position 10; } + bit rib { position 11; } + bit all { position 12; } + bit fsm { position 13; } + bit fsm-transit { position 14; } + } + } + + typedef CML_L2_PROTOCOL_T{ + type enumeration { + enum stp { value 0; } + enum gmrp { value 3; } + enum gvrp { value 4; } + enum mmrp { value 5; } + enum mvrp { value 6; } + enum lacp { value 7; } + enum dot1x { value 8; } + enum lldp { value 9; } + enum pause { value 13; } + enum efm { value 14; } + enum elmi { value 15; } + enum ptp { value 16; } + enum synce { value 17; } + } + } + + typedef CML_DISCARD_L2_PROTOCOL_T{ + type enumeration { + enum stp { value 0; } + enum lacp { value 7; } + enum dot1x { value 8; } + enum lldp { value 9; } + enum pause { value 13; } + enum efm { value 14; } + enum elmi { value 15; } + enum ptp { value 16; } + enum synce { value 17; } + } + } + + typedef CML_PVLAN_MODE_T{ + type enumeration { + enum host { value 1; } + enum promiscuous { value 2; } + } + } + + typedef CML_PVLAN_TYPE_T{ + type enumeration { + enum community { value 1; } + enum isolated { value 2; } + enum primary { value 3; } + enum association { value 4; } + } + } + + typedef CML_PVLAN_ADD_REMOVE_TYPE_T{ + type enumeration { + enum add { value 1; } + enum remove { value 2; } + } + } + + typedef CML_CVLAN_CONFIG_T{ + type enumeration { + enum untagged-pep { value 1; } + enum untagged-cep { value 2; } + } + } + + typedef CML_OEP_VLAN_TYPE_T{ + type enumeration { + enum cvlan { value 1; } + enum svlan { value 2; } + } + } + + typedef CML_EGERSS_TAGGED_TYPE_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_VLAN_OPER_TYPE_T{ + type enumeration { + enum add { value 1; } + enum remove { value 2; } + enum all { value 3; } + enum none { value 4; } + } + } + + typedef CML_EDGE_VLAN_TYPE_T{ + type enumeration { + enum allowed { value 1; } + enum default-svlan { value 2; } + } + } + + typedef CML_ACL_PORT_OPERATIONS_T{ + type enumeration { + enum eq { value 1; } + enum neq { value 2; } + enum lt { value 3; } + enum gt { value 4; } + } + } + + typedef CML_ACL_FILTER_ACTION_T{ + type enumeration { + enum deny { value 0; } + enum permit { value 1; } + enum dynamic { value 2; } + enum deny-all { value 3; } + enum permit-all { value 4; } + enum no-match { value 5; } + } + } + + typedef CML_ACL_ANY_T{ + type enumeration { + enum any { value 0; } + } + } + + typedef CML_ACL_IPV4_HOST_T{ + type string; + } + + typedef CML_ACL_IPV4_PREFIX_T{ + type inet:ipv4-prefix; + } + + typedef CML_ACL_ANY_IPV4_ADDR_T{ + type union{ + + type CML_ACL_ANY_T { + + } + type CML_ACL_IPV4_HOST_T { + + } + type CML_ACL_IPV4_PREFIX_T { + + } + } + } + + typedef CML_ACL_IPV6_HOST_T{ + type string; + } + + typedef CML_ACL_IPV6_PREFIX_T{ + type inet:ipv6-prefix; + } + + typedef CML_ACL_ANY_IPV6_ADDR_T{ + type union{ + + type CML_ACL_ANY_T { + + } + type CML_ACL_IPV6_HOST_T { + + } + type CML_ACL_IPV6_PREFIX_T { + + } + } + } + + typedef CML_ACL_UDP_KEYWORD_ENUM_T{ + type enumeration { + enum echo { value 7; } + enum discard { value 9; } + enum time { value 37; } + enum nameserver { value 42; } + enum tacacs { value 49; } + enum domain { value 53; } + enum bootps { value 67; } + enum bootpc { value 68; } + enum tftp { value 69; } + enum sunrpc { value 111; } + enum netbios_ns { value 137; } + enum netbios_dgm { value 138; } + enum netbios_ss { value 139; } + enum snmp { value 161; } + enum snmptrap { value 162; } + enum xdmcp { value 177; } + enum dnsix { value 195; } + enum mobile_ip { value 434; } + enum pim_auto_rp { value 496; } + enum isakmp { value 500; } + enum biff { value 512; } + enum who { value 513; } + enum syslog { value 514; } + enum talk { value 517; } + enum rip { value 520; } + enum non500_isakmp { value 4500; } + } + } + + typedef CML_ACL_UDP_KEYWORD_T{ + type union{ + + type CML_ACL_UDP_KEYWORD_ENUM_T { + + } + type CML_UINT32_T { + range "0..65535"; + + } + } + } + + typedef CML_ACL_TCP_KEYWORD_ENUM_T{ + type enumeration { + enum echo { value 7; } + enum discard { value 9; } + enum daytime { value 13; } + enum chargen { value 19; } + enum ftp_data { value 20; } + enum ftp { value 21; } + enum ssh { value 22; } + enum telnet { value 23; } + enum smtp { value 25; } + enum time { value 37; } + enum whois { value 43; } + enum tacacs { value 49; } + enum domain { value 53; } + enum gopher { value 70; } + enum finger { value 79; } + enum www { value 80; } + enum hostname { value 101; } + enum pop2 { value 109; } + enum pop3 { value 110; } + enum sunrpc { value 111; } + enum ident { value 113; } + enum nntp { value 119; } + enum bgp { value 179; } + enum irc { value 194; } + enum pim_auto_rp { value 496; } + enum exec { value 512; } + enum login { value 513; } + enum cmd { value 514; } + enum lpd { value 515; } + enum talk { value 517; } + enum uucp { value 540; } + enum klogin { value 543; } + enum kshell { value 544; } + enum drip { value 3949; } + } + } + + typedef CML_ACL_TCP_KEYWORD_T{ + type union{ + + type CML_ACL_TCP_KEYWORD_ENUM_T { + + } + type CML_UINT32_T { + range "0..65535"; + + } + } + } + + typedef CML_ACL_IP_PROTO_ENUM_T{ + type enumeration { + enum ipv6_hop { value 0; } + enum icmp { value 1; } + enum igmp { value 2; } + enum 3 { value 3; } + enum ip { value 4; } + enum 5 { value 5; } + enum tcp { value 6; } + enum 7 { value 7; } + enum 8 { value 8; } + enum 9 { value 9; } + enum 10 { value 10; } + enum 11 { value 11; } + enum 12 { value 12; } + enum 13 { value 13; } + enum 14 { value 14; } + enum 15 { value 15; } + enum 16 { value 16; } + enum udp { value 17; } + enum 18 { value 18; } + enum 19 { value 19; } + enum 20 { value 20; } + enum 21 { value 21; } + enum 22 { value 22; } + enum 23 { value 23; } + enum 24 { value 24; } + enum 25 { value 25; } + enum 26 { value 26; } + enum 27 { value 27; } + enum 28 { value 28; } + enum 29 { value 29; } + enum 30 { value 30; } + enum 31 { value 31; } + enum 32 { value 32; } + enum 33 { value 33; } + enum 34 { value 34; } + enum 35 { value 35; } + enum 36 { value 36; } + enum 37 { value 37; } + enum 38 { value 38; } + enum 39 { value 39; } + enum 40 { value 40; } + enum ipv6 { value 41; } + enum 42 { value 42; } + enum 43 { value 43; } + enum 44 { value 44; } + enum 45 { value 45; } + enum rsvp { value 46; } + enum gre { value 47; } + enum 48 { value 48; } + enum 49 { value 49; } + enum esp { value 50; } + enum ahp { value 51; } + enum 52 { value 52; } + enum 53 { value 53; } + enum 54 { value 54; } + enum 55 { value 55; } + enum 56 { value 56; } + enum 57 { value 57; } + enum ipv6_icmp { value 58; } + enum 59 { value 59; } + enum 60 { value 60; } + enum 61 { value 61; } + enum 62 { value 62; } + enum 63 { value 63; } + enum 64 { value 64; } + enum 65 { value 65; } + enum 66 { value 66; } + enum 67 { value 67; } + enum 68 { value 68; } + enum 69 { value 69; } + enum 70 { value 70; } + enum 71 { value 71; } + enum 72 { value 72; } + enum 73 { value 73; } + enum 74 { value 74; } + enum 75 { value 75; } + enum 76 { value 76; } + enum 77 { value 77; } + enum 78 { value 78; } + enum 79 { value 79; } + enum 80 { value 80; } + enum 81 { value 81; } + enum 82 { value 82; } + enum 83 { value 83; } + enum 84 { value 84; } + enum 85 { value 85; } + enum 86 { value 86; } + enum 87 { value 87; } + enum eigrp { value 88; } + enum ospf { value 89; } + enum 90 { value 90; } + enum 91 { value 91; } + enum 92 { value 92; } + enum 93 { value 93; } + enum 94 { value 94; } + enum 95 { value 95; } + enum 96 { value 96; } + enum 97 { value 97; } + enum 98 { value 98; } + enum 99 { value 99; } + enum 100 { value 100; } + enum 101 { value 101; } + enum 102 { value 102; } + enum pim { value 103; } + enum 104 { value 104; } + enum 105 { value 105; } + enum 106 { value 106; } + enum 107 { value 107; } + enum ipcomp { value 108; } + enum 109 { value 109; } + enum 110 { value 110; } + enum 111 { value 111; } + enum vrrp { value 112; } + enum 113 { value 113; } + enum 114 { value 114; } + enum 115 { value 115; } + enum 116 { value 116; } + enum 117 { value 117; } + enum 118 { value 118; } + enum 119 { value 119; } + enum 120 { value 120; } + enum 121 { value 121; } + enum 122 { value 122; } + enum 123 { value 123; } + enum 124 { value 124; } + enum 125 { value 125; } + enum 126 { value 126; } + enum 127 { value 127; } + enum 128 { value 128; } + enum 129 { value 129; } + enum 130 { value 130; } + enum 131 { value 131; } + enum sctp { value 132; } + enum 133 { value 133; } + enum 134 { value 134; } + enum 135 { value 135; } + enum 136 { value 136; } + enum 137 { value 137; } + enum 138 { value 138; } + enum 139 { value 139; } + enum 140 { value 140; } + enum 141 { value 141; } + enum 142 { value 142; } + enum 143 { value 143; } + enum 144 { value 144; } + enum 145 { value 145; } + enum 146 { value 146; } + enum 147 { value 147; } + enum 148 { value 148; } + enum 149 { value 149; } + enum 150 { value 150; } + enum 151 { value 151; } + enum 152 { value 152; } + enum 153 { value 153; } + enum 154 { value 154; } + enum 155 { value 155; } + enum 156 { value 156; } + enum 157 { value 157; } + enum 158 { value 158; } + enum 159 { value 159; } + enum 160 { value 160; } + enum 161 { value 161; } + enum 162 { value 162; } + enum 163 { value 163; } + enum 164 { value 164; } + enum 165 { value 165; } + enum 166 { value 166; } + enum 167 { value 167; } + enum 168 { value 168; } + enum 169 { value 169; } + enum 170 { value 170; } + enum 171 { value 171; } + enum 172 { value 172; } + enum 173 { value 173; } + enum 174 { value 174; } + enum 175 { value 175; } + enum 176 { value 176; } + enum 177 { value 177; } + enum 178 { value 178; } + enum 179 { value 179; } + enum 180 { value 180; } + enum 181 { value 181; } + enum 182 { value 182; } + enum 183 { value 183; } + enum 184 { value 184; } + enum 185 { value 185; } + enum 186 { value 186; } + enum 187 { value 187; } + enum 188 { value 188; } + enum 189 { value 189; } + enum 190 { value 190; } + enum 191 { value 191; } + enum 192 { value 192; } + enum 193 { value 193; } + enum 194 { value 194; } + enum 195 { value 195; } + enum 196 { value 196; } + enum 197 { value 197; } + enum 198 { value 198; } + enum 199 { value 199; } + enum 200 { value 200; } + enum 201 { value 201; } + enum 202 { value 202; } + enum 203 { value 203; } + enum 204 { value 204; } + enum 205 { value 205; } + enum 206 { value 206; } + enum 207 { value 207; } + enum 208 { value 208; } + enum 209 { value 209; } + enum 210 { value 210; } + enum 211 { value 211; } + enum 212 { value 212; } + enum 213 { value 213; } + enum 214 { value 214; } + enum 215 { value 215; } + enum 216 { value 216; } + enum 217 { value 217; } + enum 218 { value 218; } + enum 219 { value 219; } + enum 220 { value 220; } + enum 221 { value 221; } + enum 222 { value 222; } + enum 223 { value 223; } + enum 224 { value 224; } + enum 225 { value 225; } + enum 226 { value 226; } + enum 227 { value 227; } + enum 228 { value 228; } + enum 229 { value 229; } + enum 230 { value 230; } + enum 231 { value 231; } + enum 232 { value 232; } + enum 233 { value 233; } + enum 234 { value 234; } + enum 235 { value 235; } + enum 236 { value 236; } + enum 237 { value 237; } + enum 238 { value 238; } + enum 239 { value 239; } + enum 240 { value 240; } + enum 241 { value 241; } + enum 242 { value 242; } + enum 243 { value 243; } + enum 244 { value 244; } + enum 245 { value 245; } + enum 246 { value 246; } + enum 247 { value 247; } + enum 248 { value 248; } + enum 249 { value 249; } + enum 250 { value 250; } + enum 251 { value 251; } + enum 252 { value 252; } + enum 253 { value 253; } + enum 254 { value 254; } + enum 255 { value 255; } + enum any { value 256; } + } + } + + typedef CML_ACL_IP_PROTO_T{ + type union{ + + type CML_ACL_IP_PROTO_ENUM_T { + + } + type CML_UINT16_T { + range "0..255"; + + } + } + } + + typedef CML_ACL_DSCP_ENUM_T{ + type enumeration { + enum default { value 0; } + enum 1 { value 1; } + enum 2 { value 2; } + enum 3 { value 3; } + enum 4 { value 4; } + enum 5 { value 5; } + enum 6 { value 6; } + enum 7 { value 7; } + enum cs1 { value 8; } + enum 9 { value 9; } + enum af11 { value 10; } + enum 11 { value 11; } + enum af12 { value 12; } + enum 13 { value 13; } + enum af13 { value 14; } + enum 15 { value 15; } + enum cs2 { value 16; } + enum 17 { value 17; } + enum af21 { value 18; } + enum 19 { value 19; } + enum af22 { value 20; } + enum 21 { value 21; } + enum af23 { value 22; } + enum 23 { value 23; } + enum cs3 { value 24; } + enum 25 { value 25; } + enum af31 { value 26; } + enum 27 { value 27; } + enum af32 { value 28; } + enum 29 { value 29; } + enum af33 { value 30; } + enum 31 { value 31; } + enum cs4 { value 32; } + enum 33 { value 33; } + enum af41 { value 34; } + enum 35 { value 35; } + enum af42 { value 36; } + enum 37 { value 37; } + enum af43 { value 38; } + enum 39 { value 39; } + enum cs5 { value 40; } + enum 41 { value 41; } + enum 42 { value 42; } + enum 43 { value 43; } + enum 44 { value 44; } + enum 45 { value 45; } + enum ef { value 46; } + enum 47 { value 47; } + enum cs6 { value 48; } + enum 49 { value 49; } + enum 50 { value 50; } + enum 51 { value 51; } + enum 52 { value 52; } + enum 53 { value 53; } + enum 54 { value 54; } + enum 55 { value 55; } + enum cs7 { value 56; } + enum 57 { value 57; } + enum 58 { value 58; } + enum 59 { value 59; } + enum 60 { value 60; } + enum 61 { value 61; } + enum 62 { value 62; } + enum 63 { value 63; } + } + } + + typedef CML_ACL_DSCP_T{ + type union{ + + type CML_ACL_DSCP_ENUM_T { + + } + type CML_INT8_T { + range "0..63"; + + } + } + } + + typedef CML_ACL_PRECEDENCE_ENUM_T{ + type enumeration { + enum critical { value 0; } + enum flash { value 1; } + enum flash-override { value 2; } + enum immediate { value 3; } + enum internet { value 4; } + enum network { value 5; } + enum priority { value 6; } + enum routine { value 7; } + } + } + + typedef CML_ACL_PRECEDENCE_T{ + type union{ + + type CML_ACL_DSCP_ENUM_T { + + } + type CML_INT8_T { + range "0..7"; + + } + } + } + + typedef CML_ACL_ICMP_OPTIONS_T{ + type enumeration { + enum administratively-prohibited { value 1; } + enum alternate-address { value 2; } + enum conversion-error { value 3; } + enum dod-host-prohibited { value 4; } + enum dod-net-prohibited { value 5; } + enum echo { value 6; } + enum echo-reply { value 7; } + enum general-parameter-problem { value 8; } + enum host-isolated { value 9; } + enum host-precedence-unreachable { value 10; } + enum host-redirect { value 11; } + enum host-tos-redirect { value 12; } + enum host-tos-unreachable { value 13; } + enum host-unknown { value 14; } + enum host-unreachable { value 15; } + enum information-reply { value 16; } + enum information-request { value 17; } + enum mask-reply { value 18; } + enum mask-request { value 19; } + enum mobile-redirect { value 20; } + enum net-redirect { value 21; } + enum net-tos-redirect { value 22; } + enum net-tos-unreachable { value 23; } + enum net-unreachable { value 24; } + enum network-unknown { value 25; } + enum no-room-for-option { value 26; } + enum option-missing { value 27; } + enum packet-too-big { value 28; } + enum parameter-problem { value 29; } + enum port-unreachable { value 30; } + enum precedence-unreachable { value 31; } + enum protocol-unreachable { value 32; } + enum reassembly-timeout { value 33; } + enum redirect { value 34; } + enum router-advertisement { value 35; } + enum router-solicitation { value 36; } + enum source-quench { value 37; } + enum source-route-failed { value 38; } + enum time-exceeded { value 39; } + enum timestamp-reply { value 40; } + enum timestamp-request { value 41; } + enum traceroute { value 42; } + enum ttl-exceeded { value 43; } + enum unreachable { value 44; } + } + } + + typedef CML_ACL_TCP_FLAGS_T{ + type bits { + bit fin { position 0; } + bit syn { position 1; } + bit rst { position 2; } + bit psh { position 3; } + bit ack { position 4; } + bit urg { position 5; } + bit established { position 6; } + } + } + + typedef CML_ACL_ANY_MAC_ADDR_T{ + type union{ + + type CML_ACL_ANY_T { + + } + type CML_MAC_ADDR_T { + + } + } + } + + typedef CML_ACL_ETHER_TYPE_ENUM_T{ + type enumeration { + enum ipv4 { value 2048; } + enum arp { value 2054; } + enum vines-echo { value 2991; } + enum etype-6000 { value 24576; } + enum mop-dump { value 24577; } + enum mop-console { value 24578; } + enum decnet-iv { value 24579; } + enum lat { value 24580; } + enum diagnostic { value 24581; } + enum lavc-sca { value 24583; } + enum etype-8042 { value 32834; } + enum appletalk { value 32923; } + enum aarp { value 33011; } + enum ipv6 { value 34525; } + enum mpls { value 34886; } + } + } + + typedef CML_ACL_ETHER_TYPE_T{ + type union{ + + type CML_ACL_ETHER_TYPE_ENUM_T { + + } + type CML_STRING_T { + + } + } + } + + typedef CML_ACL_TYPES_T{ + type enumeration { + enum mac { value 1; } + enum ip { value 3; } + enum ipv6 { value 4; } + } + } + + typedef CML_ACL_PACKET_DIR_T{ + type enumeration { + enum in { value 0; } + enum out { value 1; } + } + } + + typedef CML_AUTH_PORT_SEC_MODE{ + type enumeration { + enum filter { value 0; } + enum shutdown { value 1; } + } + } + + typedef CML_AUTH_CTRL_DIR_T{ + type enumeration { + enum in { value 0; } + enum both { value 1; } + } + } + + typedef CML_AUTH_PORT_CTRL{ + type enumeration { + enum force-unauthorized { value 0; } + enum force-authorized { value 1; } + enum auto { value 2; } + } + } + + typedef CML_DOT1X_DEBUG_T{ + type bits { + bit event { position 0; } + bit timer { position 1; } + bit packet { position 2; } + bit nsm { position 3; } + } + } + + typedef CML_RIP_DEBUG_T{ + type bits { + bit events { position 1; } + bit packet { position 2; } + bit packet-send { position 3; } + bit packet-recv { position 4; } + bit packet-detail { position 5; } + bit packet-send-detail { position 6; } + bit packet-recv-detail { position 7; } + bit nsm { position 8; } + bit rib { position 9; } + bit bfd { position 10; } + } + } + + typedef CML_RIP_ROUTE_T{ + type enumeration { + enum kernel { value 1; } + enum connected { value 2; } + enum static { value 3; } + enum isis { value 4; } + enum ospf { value 5; } + enum bgp { value 6; } + enum rip { value 7; } + enum all { value 8; } + } + } + + typedef CML_RIP_INSTANCE_T{ + type enumeration { + enum rip { value 1; } + } + } + + typedef CML_RIP_DIRECTION_T{ + type enumeration { + enum in { value 0; } + enum out { value 1; } + } + } + + typedef CML_RIP_DIST_TYPE_T{ + type enumeration { + enum in { value 0; } + enum out { value 1; } + } + } + + typedef CML_RIP_METRIC_T{ + type enumeration { + enum disable { value 0; } + enum enable { value 1; } + } + } + + typedef CML_RIP_AUTH_MODE_T{ + type enumeration { + enum text { value 2; } + enum md5 { value 3; } + } + } + + typedef CML_RIP_SPLIT_HORIZON_T{ + type enumeration { + enum split-horizon { value 0; } + enum split-horizon-poisoned { value 1; } + } + } + + typedef CML_RIP_DEFAULT_ORIGINATE_T{ + type enumeration { + enum originate { value 0; } + enum originate-always { value 1; } + } + } + + typedef CML_RIP_RECV_VERSION_TYPE_T{ + type enumeration { + enum 1 { value 1; } + enum 2 { value 2; } + enum 1-2 { value 3; } + enum 2-1 { value 5; } + } + } + + typedef CML_RIP_SEND_VERSION_TYPE_T{ + type enumeration { + enum 1 { value 1; } + enum 2 { value 2; } + enum 1-2 { value 3; } + enum 1-compatible { value 4; } + enum 2-1 { value 5; } + } + } + + typedef CML_RIP_REDIST_PROTOS_T{ + type enumeration { + enum kernel { value 0; } + enum connected { value 1; } + enum static { value 2; } + enum ospf { value 3; } + enum isis { value 4; } + enum bgp { value 5; } + } + } + + typedef CML_RIP_VRF_REDIST_PROTOS_T{ + type enumeration { + enum connected { value 1; } + enum static { value 2; } + enum ospf { value 3; } + enum bgp { value 5; } + } + } + + typedef CML_NSM_LOAD_TRILL_T{ + type enumeration { + enum outer-l2 { value 1; } + enum inner-l2 { value 2; } + enum inner-l3 { value 3; } + } + } + + typedef CML_NSM_HARDWARE_PORTMODE_T{ + type enumeration { + enum 4X10g { value 1; } + enum 4X25g { value 2; } + enum 2X50g { value 3; } + enum 40g { value 4; } + enum 100g { value 5; } + } + } + + typedef CML_NSM_BREAKOUT_TYPE_T{ + type enumeration { + enum 4X10g { value 1; } + enum 4X25g { value 2; } + enum 2X50g { value 3; } + } + } + + typedef CML_NSM_HARDWARE_PROFILE_PORTMODE_BUNDLE_T{ + type enumeration { + enum 4X10g { value 6; } + enum 40g { value 7; } + } + } + + typedef CML_LACP_DEBUG_TYPE_T{ + type bits { + bit event { position 0; } + bit cli { position 1; } + bit timer { position 2; } + bit sync { position 3; } + bit packet { position 4; } + bit tx { position 5; } + bit rx { position 6; } + bit ha { position 7; } + } + } + + typedef CML_ALLOWEDVLAN_T{ + type enumeration { + enum none { value 1; } + enum all { value 2; } + } + } + + typedef CML_VLAN_EXCEPT_T{ + type enumeration { + enum add { value 1; } + enum except { value 2; } + enum remove { value 3; } } } diff --git a/yang-files/cmm.yang b/yang-files/cmm.yang new file mode 100644 index 00000000..00c1ed24 --- /dev/null +++ b/yang-files/cmm.yang @@ -0,0 +1,1202 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : cmm.yang +* +*/ + +submodule cmm { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Chassis Monitoring Module"; + + + revision "2017-02-03" { + description "Notification changes."; + } + + revision "2017-01-29" { + description "Initial Draft Version."; + } + + + + grouping dmmMonitorPort-grouping { + list dmmMonitorPort { + + description + "DMM Monitor Port enable"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf monitorPort { + type cml_data_types:CML_BOOL_T; + description "ddm monitor"; + } // END of monitorPort definition. + + } // End of dmmMonitorPort-list + } // END of dmmMonitorPort-grouping definition. + + + grouping cmmStackUnitTable-grouping { + list cmmStackUnitTable { + + description + "list of stack units configured in the chassis"; + + config false; + + leaf cmmStackUnitIndex { + type cml_data_types:CML_INT32_T; + description "The unique index for this entry.Refer to the object cmmStackUnitIndexNext."; + } // END of cmmStackUnitIndex definition. + + leaf cmmStackUnitModelName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The plugged-in model ID for this unit."; + } // END of cmmStackUnitModelName definition. + + leaf cmmStackUnitSerialNumber { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The unit's serial number."; + } // END of cmmStackUnitSerialNumber definition. + + leaf cmmStackUnitUpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The system up time of the unit."; + } // END of cmmStackUnitUpTime definition. + + leaf cmmStackUnitMfgDate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The date the unit is manufactured."; + } // END of cmmStackUnitMfgDate definition. + + leaf cmmStackUnitMacAddress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "A 6-octet MAC Address assigned to tis unit."; + } // END of cmmStackUnitMacAddress definition. + + leaf cmmStackUnitPartNum { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The unit part number"; + } // END of cmmStackUnitPartNum definition. + + leaf cmmStackLabelRevision { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The unit's label Revesion"; + } // END of cmmStackLabelRevision definition. + + leaf cmmStackUnitCountryCode { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The unit manufacturer's country code"; + } // END of cmmStackUnitCountryCode definition. + + leaf cmmStackUnitNumFanTrays { + type cml_data_types:CML_INT32_T; + description "The number of fan trays on the unit."; + } // END of cmmStackUnitNumFanTrays definition. + + leaf cmmStackUnitNumPowerSupplies { + type cml_data_types:CML_INT32_T; + description "The number of power supplies available to the unit."; + } // END of cmmStackUnitNumPowerSupplies definition. + + leaf cmmStackUnitNumPluggableModules { + type cml_data_types:CML_INT32_T; + description "The number of pluggable modules in the stack."; + } // END of cmmStackUnitNumPluggableModules definition. + + leaf cmmStackUnitNumFastEtherPorts { + type cml_data_types:CML_INT32_T; + description "The number of 100M Ethernet/802.3 interfaces in this unit."; + } // END of cmmStackUnitNumFastEtherPorts definition. + + leaf cmmStackUnitNumGigEtherPorts { + type cml_data_types:CML_INT32_T; + description "The number of 1G Ethernet/802.3 interfaces in this unit."; + } // END of cmmStackUnitNumGigEtherPorts definition. + + leaf cmmStackUnitNum10GigEtherPorts { + type cml_data_types:CML_INT32_T; + description "The number of 10G Ethernet/802.3 interfaces in this unit."; + } // END of cmmStackUnitNum10GigEtherPorts definition. + + leaf cmmStackUnitNum25GigEtherPorts { + type cml_data_types:CML_INT32_T; + description "The number of 25G Ethernet/802.3 interfaces in this unit."; + } // END of cmmStackUnitNum25GigEtherPorts definition. + + leaf cmmStackUnitNum40GigEtherPorts { + type cml_data_types:CML_INT32_T; + description "The number of 40G Ethernet/802.3 interfaces in this unit."; + } // END of cmmStackUnitNum40GigEtherPorts definition. + + leaf cmmStackUnitNum50GigEtherPorts { + type cml_data_types:CML_INT32_T; + description "The number of 50G Ethernet/802.3 interfaces in this unit."; + } // END of cmmStackUnitNum50GigEtherPorts definition. + + leaf cmmStackUnitNum100GigEtherPorts { + type cml_data_types:CML_INT32_T; + description "The number of 100G Ethernet/802.3 interfaces in this unit."; + } // END of cmmStackUnitNum100GigEtherPorts definition. + + leaf cmmStackUnitServiceTag { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The unit's service tag."; + } // END of cmmStackUnitServiceTag definition. + + leaf cmmStackPlatformName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The unit's Platform Name."; + } // END of cmmStackPlatformName definition. + + leaf cmmStackOnieVersion { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The unit's ONIE Version."; + } // END of cmmStackOnieVersion definition. + + leaf cmmStackMfg { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The unit's Manufacturer Name."; + } // END of cmmStackMfg definition. + + leaf cmmStackVendorName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The unit's Vendor Name."; + } // END of cmmStackVendorName definition. + + leaf cmmStackDiagVersion { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The unit's Diagnostic Version."; + } // END of cmmStackDiagVersion definition. + + leaf cmmStackCrc32 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The unit's Cyclic Redundancy Check 32 Bit value."; + } // END of cmmStackCrc32 definition. + + + list cmmSysPortTable { + + description + "list of power supply resident in the chassis"; + + config false; + key "cmmSysPortIndex"; + + + leaf cmmSysPortIndex { + type cml_data_types:CML_UINT32_T; + description "A unique index for each slot within the unit."; + } // END of cmmSysPortIndex definition. + + leaf cmmSysPortType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The type of port in the unit."; + } // END of cmmSysPortType definition. + + leaf cmmSysidentifier { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Type of transceiver"; + } // END of cmmSysidentifier definition. + + leaf cmmSysextendedidentifier { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Extended identifier of type of transceiver"; + } // END of cmmSysextendedidentifier definition. + + leaf cmmSysconnectortype { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Code for connector type"; + } // END of cmmSysconnectortype definition. + + leaf cmmSystransceivercode { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Code for electronic or optical compatibility"; + } // END of cmmSystransceivercode definition. + + leaf cmmSysencoding { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Code for high speed serial encoding algorithm"; + } // END of cmmSysencoding definition. + + leaf cmmSysnominalbitrate { + type cml_data_types:CML_INT32_T; + description "Nominal signalling rate, units of 100MBd."; + } // END of cmmSysnominalbitrate definition. + + leaf cmmSyslengthkmtrs { + type cml_data_types:CML_INT32_T; + description "Link length supported for single mode fiber, units of km"; + } // END of cmmSyslengthkmtrs definition. + + leaf cmmSyslengthmtrs { + type cml_data_types:CML_INT32_T; + description "Link length supported for single mode fiber, units of 100 m"; + } // END of cmmSyslengthmtrs definition. + + leaf cmmSyslengthom1 { + type cml_data_types:CML_INT32_T; + description "Link length supported for 62.5 um OM1 fiber, units of 10 m"; + } // END of cmmSyslengthom1 definition. + + leaf cmmSyslengthom2 { + type cml_data_types:CML_INT32_T; + description "Link length supported for 50 um OM2 fiber, units of 10 m"; + } // END of cmmSyslengthom2 definition. + + leaf cmmSyslengthom3 { + type cml_data_types:CML_INT32_T; + description "Link length supported for 50 um OM3 fiber, units of 10 m"; + } // END of cmmSyslengthom3 definition. + + leaf cmmSysvendorname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "SFP vendor name"; + } // END of cmmSysvendorname definition. + + leaf cmmSysvendoroui { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "SFP vendor IEEE company ID"; + } // END of cmmSysvendoroui definition. + + leaf cmmSysvendorpartnumber { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Part number provided by SFP vendor"; + } // END of cmmSysvendorpartnumber definition. + + leaf cmmSysvendorrevision { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Revision level for part number provided by vendor"; + } // END of cmmSysvendorrevision definition. + + leaf cmmSyscheckcode { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Check code for Base ID Fields"; + } // END of cmmSyscheckcode definition. + + leaf cmmSysbitratemax { + type cml_data_types:CML_INT32_T; + description "Upper bit rate margin, units of %"; + } // END of cmmSysbitratemax definition. + + leaf cmmSysbitratemin { + type cml_data_types:CML_INT32_T; + description "Lower bit rate margin, units of %"; + } // END of cmmSysbitratemin definition. + + leaf cmmSysvendorserialnumber { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Serial number provided by vendor"; + } // END of cmmSysvendorserialnumber definition. + + leaf cmmSysdatecode { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Vendor's manufacturing date code"; + } // END of cmmSysdatecode definition. + + leaf cmmSysddmtype { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Indicates which type of diagnostic monitoring is implemented"; + } // END of cmmSysddmtype definition. + + leaf cmmSyscheckcodeextended { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Check code for the Extended ID Fields"; + } // END of cmmSyscheckcodeextended definition. + + leaf cmmSysrxpower0 { + type cml_data_types:CML_INT32_T; + description "Single precision floating point calibration data, Rx optical power.Bit 7 of byte 72 is MSB, bit 0 of byte 75 is LSB. RxPWR(0) should be set to zero for internally calibrated devices."; + } // END of cmmSysrxpower0 definition. + + leaf cmmSysrxpower1 { + type cml_data_types:CML_INT32_T; + description "Single precision floating point calibration data, Rx optical power. Bit 7 of byte 68 is MSB, bit 0 of byte 71 is LSB. RxPWR(1) should be set to 1 for internally calibrated devices."; + } // END of cmmSysrxpower1 definition. + + leaf cmmSysrxpower2 { + type cml_data_types:CML_INT32_T; + description "Single precision floating point calibration data, Rx optical power. Bit 7 of byte 64 is MSB, bit 0 of byte 67 is LSB. RxPWR(2) should be set to zero for internally calibrated devices."; + } // END of cmmSysrxpower2 definition. + + leaf cmmSysrxpower3 { + type cml_data_types:CML_INT32_T; + description " Single precision floating point calibration data - Rx optical power. Bit 7 of byte 60 is MSB. Bit 0 of byte 63 is LSB. RxPWR(3) should be set to zero for internally calibrated devices."; + } // END of cmmSysrxpower3 definition. + + leaf cmmSysrxpower4 { + type cml_data_types:CML_INT32_T; + description "Single precision floating point calibration data - Rx optical power. Bit 7 of byte 56 is MSB. Bit 0 of byte 59 is LSB. RxPWR(4) should be set to zero for internally calibrated devices."; + } // END of cmmSysrxpower4 definition. + + leaf cmmSyslaserbiasslope { + type cml_data_types:CML_INT32_T; + description " Fixed decimal (unsigned) calibration data, laser bias current. Bit 7 of byte 76 is MSB, bit 0 of byte 77 is LSB. TxI(Slope) should be set to 1 for internally calibrated devices."; + } // END of cmmSyslaserbiasslope definition. + + leaf cmmSyslaserbiasoffset { + type cml_data_types:CML_INT32_T; + description " Fixed decimal (signed two's complement) calibration data, laser bias current. Bit 7 of byte 78 is MSB, bit 0 of byte 79 is LSB. TxI(Offset) should be set to zero for internally calibrated devices."; + } // END of cmmSyslaserbiasoffset definition. + + leaf cmmSystxpowerslope { + type cml_data_types:CML_INT32_T; + description "Fixed decimal (unsigned) calibration data, transmitter coupled output power. Bit 7 of byte 80 is MSB, bit 0 of byte 81 is LSB. TxPWR(Slope) should be set to 1 for internally calibrated devices."; + } // END of cmmSystxpowerslope definition. + + leaf cmmSystxpoweroffset { + type cml_data_types:CML_INT32_T; + description "Fixed decimal (signed two's complement) calibration data, transmitter coupled output power. Bit 7 of byte 82 is MSB, bit 0 of byte 83 is LSB. TxPWR(Offset) should be set to zero for internally calibrated devices."; + } // END of cmmSystxpoweroffset definition. + + leaf cmmSystempslope { + type cml_data_types:CML_INT32_T; + description "Fixed decimal (unsigned) calibration data, internal module temperature. Bit 7 of byte 84 is MSB, bit 0 of byte 85 is LSB. T(Slope) should be set to 1 for internally calibrated devices."; + } // END of cmmSystempslope definition. + + leaf cmmSystempoffset { + type cml_data_types:CML_INT32_T; + description "Fixed decimal (signed two's complement) calibration data, internal module temperature. Bit 7 of byte 86 is MSB, bit 0 of byte 87 is LSB. T(Offset) should be set to zero for internally calibrated devices."; + } // END of cmmSystempoffset definition. + + leaf cmmSysvoltageslope { + type cml_data_types:CML_INT32_T; + description " Fixed decimal (unsigned) calibration data, internal module supply voltage.Bit 7 of byte 88 is MSB, bit 0 of byte 89 is LSB. V(Slope) should be set to 1 for internally calibrated devices."; + } // END of cmmSysvoltageslope definition. + + leaf cmmSysvoltageoffset { + type cml_data_types:CML_INT32_T; + description "Fixed decimal (signed two's complement) calibration data, internal module supply voltage. Bit 7 of byte 90 is MSB. Bit 0 of byte 91 is LSB. V(Offset) should be set to zero for internally calibrated devices."; + } // END of cmmSysvoltageoffset definition. + + leaf cmmSysTemperature { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Temperature value of the system"; + } // END of cmmSysTemperature definition. + + leaf cmmSysVoltage { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Internally measured supply voltage in transceiver"; + } // END of cmmSysVoltage definition. + + leaf cmmSysLaserBiasCurrent { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Internally measured TX Bias Current."; + } // END of cmmSysLaserBiasCurrent definition. + + leaf cmmSysTxOutputPower { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Measured TX output power."; + } // END of cmmSysTxOutputPower definition. + + leaf cmmSysRxInputPower { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Measured RX input power."; + } // END of cmmSysRxInputPower definition. + + } // End of cmmSysPortTable-list + } // End of cmmStackUnitTable-list + } // END of cmmStackUnitTable-grouping definition. + + + grouping cmmSysPowerSupplyTable-grouping { + list cmmSysPowerSupplyTable { + + description + "list of power supply resident in the chassis"; + + config false; + key "cmmSysPowerSupplyIndex"; + + + leaf cmmSysPowerSupplyIndex { + type cml_data_types:CML_INT32_T; + description "The unique index of the power supply."; + } // END of cmmSysPowerSupplyIndex definition. + + leaf cmmSysPOWERVDDR { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power statistics for VCC 3.3v on Main board"; + } // END of cmmSysPOWERVDDR definition. + + leaf cmmSysPOWERCORE { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power statistics for Mac 1v on Main board"; + } // END of cmmSysPOWERCORE definition. + + leaf cmmSysV1P1POWERRAIL { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power statistics for Mac AVS 1v on Main board"; + } // END of cmmSysV1P1POWERRAIL definition. + + leaf cmmSysMAINBOARDPOWERRAIL { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power status for Main Board"; + } // END of cmmSysMAINBOARDPOWERRAIL definition. + + leaf cmmSysVCC5V { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power status of VCC 5V"; + } // END of cmmSysVCC5V definition. + + leaf cmmSysVCC33V { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power status of VCC 33V"; + } // END of cmmSysVCC33V definition. + + leaf cmmSysVCCMAC1V { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power status of VCCMAC1V"; + } // END of cmmSysVCCMAC1V definition. + + leaf cmmSysVCCMACAVS1V { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power status of VCCMACAVS1V"; + } // END of cmmSysVCCMACAVS1V definition. + + leaf cmmSysVCCV1P05 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power Status of VCCV1P05"; + } // END of cmmSysVCCV1P05 definition. + + leaf cmmSysVCCV1P5 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power Status of VCCV1P5"; + } // END of cmmSysVCCV1P5 definition. + + leaf cmmSysVCCV1P8 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power Status of VCCV1P8"; + } // END of cmmSysVCCV1P8 definition. + + leaf cmmSysV1P05POWERRAIL { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power status of V1P05POWERRAIL"; + } // END of cmmSysV1P05POWERRAIL definition. + + leaf cmmSysV1P5POWERRAIL { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power status of V1P5POWERRAIL"; + } // END of cmmSysV1P5POWERRAIL definition. + + leaf cmmSysVCCPOWERRAIL { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power status of VCCPOWERRAIL"; + } // END of cmmSysVCCPOWERRAIL definition. + + leaf cmmSysSBV1P5POWERRAIL { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power status of SBV1P5POWERRAIL"; + } // END of cmmSysSBV1P5POWERRAIL definition. + + leaf cmmSysV1P0POWERRAIL { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power rail 1.0V Status"; + } // END of cmmSysV1P0POWERRAIL definition. + + leaf cmmSysV3P3POWERRAIL { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power rail 3.3V Status"; + } // END of cmmSysV3P3POWERRAIL definition. + + leaf cmmSysV1P8POWERRAIL { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power rail 1.8V Status"; + } // END of cmmSysV1P8POWERRAIL definition. + + leaf cmmSysV1P35POWERRAIL { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power Rail 1.35 Status"; + } // END of cmmSysV1P35POWERRAIL definition. + + leaf cmmSysDDRVTT { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power statistics for VCC 5v on Main board."; + } // END of cmmSysDDRVTT definition. + + leaf cmmSysPowerSupplyOperStatus { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The status of the power supply."; + } // END of cmmSysPowerSupplyOperStatus definition. + + leaf cmmSysPowerSupplyType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The type of the power supply."; + } // END of cmmSysPowerSupplyType definition. + + leaf cmmSysHotSwapStat { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power status for HOT SWAP"; + } // END of cmmSysHotSwapStat definition. + + leaf cmmSysPSConsumption { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Output Power of Power supply"; + } // END of cmmSysPSConsumption definition. + + leaf cmmSysInputPower { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Input Power of Power supply"; + } // END of cmmSysInputPower definition. + + leaf cmmSysInputVoltage { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Input Voltage of Power supply"; + } // END of cmmSysInputVoltage definition. + + leaf cmmSysOutputVoltage { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Output Voltage of Power supply"; + } // END of cmmSysOutputVoltage definition. + + leaf cmmSysInputCurrent { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Input Current of Power supply"; + } // END of cmmSysInputCurrent definition. + + leaf cmmSysOutputCurrent { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Output Current of Power supply"; + } // END of cmmSysOutputCurrent definition. + + leaf cmmSysPSTemperature { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Temperature of Power supply"; + } // END of cmmSysPSTemperature definition. + + leaf cmmSysPSFanRpm { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Fan rpm of Power supply"; + } // END of cmmSysPSFanRpm definition. + + leaf cmmSysVCCAVS1V { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Power status of VCCAVS1V"; + } // END of cmmSysVCCAVS1V definition. + + } // End of cmmSysPowerSupplyTable-list + } // END of cmmSysPowerSupplyTable-grouping definition. + + + grouping cmmSysFanTable-grouping { + list cmmSysFanTable { + + description + "list of fan tray resident in the M-series chassis"; + + config false; + key "cmmSysFanTrayNumber"; + + + leaf cmmSysFanIndex { + type cml_data_types:CML_INT32_T; + description "The unique index of the fan."; + } // END of cmmSysFanIndex definition. + + leaf cmmSysFanControllerNum { + type cml_data_types:CML_INT32_T; + description "Value represents the fan controller number."; + } // END of cmmSysFanControllerNum definition. + + leaf cmmSysFanTrayNumber { + type cml_data_types:CML_INT32_T; + description "Value represents the fan tray Number."; + } // END of cmmSysFanTrayNumber definition. + + leaf cmmSysFanRpm { + type cml_data_types:CML_INT32_T; + description "Value represents the fan rpm."; + } // END of cmmSysFanRpm definition. + + leaf cmmSysFanLowRpm { + type cml_data_types:CML_INT32_T; + description "Value represents the low RPM of fan."; + } // END of cmmSysFanLowRpm definition. + + leaf cmmSysFanMidRpm { + type cml_data_types:CML_INT32_T; + description "Value represents the mid RPM of fan."; + } // END of cmmSysFanMidRpm definition. + + leaf cmmSysFanHighRpm { + type cml_data_types:CML_INT32_T; + description "Value represents the high RPM of fan."; + } // END of cmmSysFanHighRpm definition. + + leaf cmmSysFanTrayOperStatus { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The status of the fan tray."; + } // END of cmmSysFanTrayOperStatus definition. + + leaf cmmSysFanTrayLed { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Value represents the fan led status."; + } // END of cmmSysFanTrayLed definition. + + } // End of cmmSysFanTable-list + } // END of cmmSysFanTable-grouping definition. + + + grouping cmmSysTemperatureTable-grouping { + list cmmSysTemperatureTable { + + description + "list of Temperature Entities on board"; + + config false; + key "cmmSysTemperatureSensorIndex"; + + + leaf cmmSysTemperatureSensorIndex { + type cml_data_types:CML_INT32_T; + description "Value represents Temperature Sensor Index"; + } // END of cmmSysTemperatureSensorIndex definition. + + leaf cmmSysTemperatureValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Value represents Temperature Sensor value"; + } // END of cmmSysTemperatureValue definition. + + leaf cmmSysTempLowThreshold { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Value represents Temperature Sensor lower threshold"; + } // END of cmmSysTempLowThreshold definition. + + leaf cmmSysTempHighThreshold { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Value represents Temperature Sensor high threshold"; + } // END of cmmSysTempHighThreshold definition. + + } // End of cmmSysTemperatureTable-list + } // END of cmmSysTemperatureTable-grouping definition. + + + grouping cmmSysChipTemperatureTable-grouping { + list cmmSysChipTemperatureTable { + + description + "list of Temperature Entities inside board chip"; + + config false; + key "cmmSysChipTemperatureSensorIndex"; + + + leaf cmmSysChipTemperatureSensorIndex { + type cml_data_types:CML_INT32_T; + description "Value represents Temperature Monitor Index inside chip"; + } // END of cmmSysChipTemperatureSensorIndex definition. + + leaf cmmSysChipTemperatureValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Value represents Temperature monitor value"; + } // END of cmmSysChipTemperatureValue definition. + + leaf cmmSysChipTempPeakValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Value represents Temperature monitor peak value since last reading"; + } // END of cmmSysChipTempPeakValue definition. + + } // End of cmmSysChipTemperatureTable-list + } // END of cmmSysChipTemperatureTable-grouping definition. + + grouping cmmGlobals-grouping { + container cmmGlobals { + config true; + + description + "cmm global structure"; + + leaf locatorLed { + type cml_data_types:CML_BOOL_T; + description "locator led"; + } // END of locatorLed definition. + + leaf dmmDebugFlag { + type cml_data_types:CML_BOOL_T; + description "debug ddm"; + } // END of dmmDebugFlag definition. + + leaf cmmDebugFlag { + type cml_data_types:CML_BOOL_T; + description "debug cmm"; + } // END of cmmDebugFlag definition. + + } // END of cmmGlobals-container definition. + } // END of cmmGlobals-container definition. + + grouping cmmDmm-grouping { + container cmmDmm { + config true; + + description + "ddm monitor"; + + leaf monitorEnabled { + type cml_data_types:CML_BOOL_T; + description "ddm monitor all"; + } // END of monitorEnabled definition. + + leaf monitorTimerInterval { + type cml_data_types:CML_UINT16_T { + range "60..3600"; + } + description "ddm monitor interval"; + } // END of monitorTimerInterval definition. + + leaf statusServiceUnsuppTrans { + type cml_data_types:CML_BOOL_T; + description "service unsupported-transceiver"; + } // END of statusServiceUnsuppTrans definition. + + } // END of cmmDmm-container definition. + } // END of cmmDmm-container definition. + + grouping ddmFalseAlarm-grouping { + container ddmFalseAlarm { + config true; + + description + "ddm false alarm"; + + leaf temperatureVal { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of temperatureVal definition. + + leaf voltageVal { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of voltageVal definition. + + leaf currentVal { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of currentVal definition. + + leaf rxpowerVal { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of rxpowerVal definition. + + leaf txpowerVal { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of txpowerVal definition. + + } // END of ddmFalseAlarm-container definition. + } // END of ddmFalseAlarm-container definition. + + grouping cmmCpuInfo-grouping { + container cmmCpuInfo { + config true; + + description + "cpu information"; + + leaf cpuUsage { + type cml_data_types:CML_UINT8_T { + range "0..100"; + } + } // END of cpuUsage definition. + + leaf psuNo { + type cml_data_types:CML_UINT8_T { + range "1..2"; + } + } // END of psuNo definition. + + leaf pOut { + type cml_data_types:CML_UINT16_T { + range "0..1000"; + } + } // END of pOut definition. + + leaf sensorNo { + type cml_data_types:CML_UINT8_T { + range "1..10"; + } + } // END of sensorNo definition. + + leaf currentTemperature { + type cml_data_types:CML_UINT8_T { + range "0..150"; + } + } // END of currentTemperature definition. + + leaf fanTrayNo { + type cml_data_types:CML_UINT8_T { + range "1..10"; + } + } // END of fanTrayNo definition. + + leaf fanNo { + type cml_data_types:CML_UINT8_T { + range "1..10"; + } + } // END of fanNo definition. + + } // END of cmmCpuInfo-container definition. + } // END of cmmCpuInfo-container definition. + + grouping cmmSysRamTable-grouping { + container cmmSysRamTable { + config false; + + description + "list of Ram Entries"; + + leaf cmmSysRamFreeMem { + type cml_data_types:CML_UINT64_T; + description "CPU RAM's total free memory available for utilisation in KBytes."; + } // END of cmmSysRamFreeMem definition. + + leaf cmmSysRamAvailableMem { + type cml_data_types:CML_UINT64_T; + description "CPU RAM's total available memory in Kbytes."; + } // END of cmmSysRamAvailableMem definition. + + leaf cmmSysRamThreshold { + type cml_data_types:CML_UINT32_T; + description "The CPU Free Memory threshold in kilobytes.A zero threshold value indicates the CPU Free Memory Notification feature is disabled.Notifications are triggered when the CPU Free Memory falls below the configured threshold and when it rises to 10% above the configured threshold.CPU utilization in percentage for last 1 minute."; + } // END of cmmSysRamThreshold definition. + + leaf cmmSysRamUsedMem { + type cml_data_types:CML_UINT64_T; + description "CPU RAM's total used memory in Kbytes."; + } // END of cmmSysRamUsedMem definition. + + } // END of cmmSysRamTable-container definition. + } // END of cmmSysRamTable-container definition. + + grouping cmmStackUnitUtilTable-grouping { + container cmmStackUnitUtilTable { + config false; + + description + "list of Stack Unit Util Entries"; + + leaf cmmStackUnitCpuProcessor { + type cml_data_types:CML_UINT32_T; + description "The number of Online Processors Available"; + } // END of cmmStackUnitCpuProcessor definition. + + leaf cmmStackUnitCpuUtil1Min { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "CPU utilization in percentage for last 1 minute"; + } // END of cmmStackUnitCpuUtil1Min definition. + + leaf cmmStackUnitCpuUtil5Min { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "CPU utilization in percentage for last 5 minutes"; + } // END of cmmStackUnitCpuUtil5Min definition. + + leaf cmmStackUnitCpuUtil15Min { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "CPU utilization in percentage for last 15 minutes"; + } // END of cmmStackUnitCpuUtil15Min definition. + + leaf cmmSysCpuThresholdInterval { + type cml_data_types:CML_UINT32_T; + description "The CPU Rising threshold interval in seconds. The time interval is configured in multiples of 5 seconds.A zero Rising interval indicates CPU Utilization Notification feature is disabled.."; + } // END of cmmSysCpuThresholdInterval definition. + + leaf cmmSysCpuThreshold { + type cml_data_types:CML_UINT32_T; + description "The CPU MAX Threshold"; + } // END of cmmSysCpuThreshold definition. + + leaf cmmStackUnitCpuUtilization { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Total memory usage in percentage"; + } // END of cmmStackUnitCpuUtilization definition. + + leaf cmmStackUnitCpuProcessorModelName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Displays CPU processor Model Name"; + } // END of cmmStackUnitCpuProcessorModelName definition. + + } // END of cmmStackUnitUtilTable-container definition. + } // END of cmmStackUnitUtilTable-container definition. + + grouping cmmSysLedTable-grouping { + container cmmSysLedTable { + config false; + + description + "Sequence of cmmSysLedEntry"; + + leaf cmmSysPowerLed { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Status of Power led"; + } // END of cmmSysPowerLed definition. + + leaf cmmSysLocatorLed { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Status of Locater led"; + } // END of cmmSysLocatorLed definition. + + leaf cmmSysMasterLed { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Status of Master led"; + } // END of cmmSysMasterLed definition. + + leaf cmmSysSystemLed { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Status of System led"; + } // END of cmmSysSystemLed definition. + + leaf cmmSysFrontFanLed { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Status of FrontFan led"; + } // END of cmmSysFrontFanLed definition. + + } // END of cmmSysLedTable-container definition. + } // END of cmmSysLedTable-container definition. + + grouping cmmSysSwModuleTable-grouping { + container cmmSysSwModuleTable { + config false; + + description + "list of software version information in a processor"; + + leaf cmmSysSwRuntimeImgVersion { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "This variable indicates the software module version that is currently running on the processor.The software release version is in the format as follow: ........'1.2' indicate major version of 1 and minor release of 2."; + } // END of cmmSysSwRuntimeImgVersion definition. + + leaf cmmSysSwRuntimeImgDate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The release date of this software module."; + } // END of cmmSysSwRuntimeImgDate definition. + + } // END of cmmSysSwModuleTable-container definition. + } // END of cmmSysSwModuleTable-container definition. + + grouping cmmAlarmVariable-grouping { + container cmmAlarmVariable { + config false; + + description + "cmmAlarmVariable"; + + leaf cmmAlarmVarInteger { + type cml_data_types:CML_INT32_T; + description "An generic integer value in the TRAP object"; + } // END of cmmAlarmVarInteger definition. + + leaf cmmAlarmVarString { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "An generic string value in the TRAP object"; + } // END of cmmAlarmVarString definition. + + } // END of cmmAlarmVariable-container definition. + } // END of cmmAlarmVariable-container definition. + + +} \ No newline at end of file diff --git a/yang-files/dhcpc.yang b/yang-files/dhcpc.yang new file mode 100644 index 00000000..fd2b8578 --- /dev/null +++ b/yang-files/dhcpc.yang @@ -0,0 +1,94 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : dhcpc.yang +* +*/ + +submodule dhcpc { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include featuredhcp; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "dhcp_client_configuration"; + + + revision "2016-12-27" { + description "Added snmp oid."; + } + + revision "2016-10-28" { + description "Initial version of dhcpc datamodel."; + } + + + + grouping DHCPClientInterface-grouping { + list DHCPClientInterface { + if-feature feature_list:HAVE_DHCP_CLIENT; + + description + "DHCP interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf address { + type cml_data_types:CML_BOOL_T; + } // END of address definition. + + leaf nameserver { + type cml_data_types:CML_BOOL_T; + } // END of nameserver definition. + + leaf logserver { + type cml_data_types:CML_BOOL_T; + } // END of logserver definition. + + leaf hostname { + type cml_data_types:CML_BOOL_T; + } // END of hostname definition. + + leaf ntpserver { + type cml_data_types:CML_BOOL_T; + } // END of ntpserver definition. + + leaf ipv6address { + type cml_data_types:CML_BOOL_T; + } // END of ipv6address definition. + + leaf ipv6nameserver { + type cml_data_types:CML_BOOL_T; + } // END of ipv6nameserver definition. + + } // End of DHCPClientInterface-list + } // END of DHCPClientInterface-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/dhcpr.yang b/yang-files/dhcpr.yang new file mode 100644 index 00000000..54d5cd74 --- /dev/null +++ b/yang-files/dhcpr.yang @@ -0,0 +1,138 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : dhcpr.yang +* +*/ + +submodule dhcpr { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include featuredhcp; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "dhcp_relay_configuration"; + + + revision "2016-12-27" { + description "Added snmp oid."; + } + + revision "2016-10-28" { + description "Initial version of dhcpr datamodel."; + } + + + + grouping dhcprelayinterface-grouping { + list dhcprelayinterface { + + description + "DHCP interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf-list address { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of address definition. + + } // End of dhcprelayinterface-list + } // END of dhcprelayinterface-grouping definition. + + + grouping dhcp6nterface-grouping { + list dhcp6nterface { + + description + "DHCP interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + + list dhcprelayaddress6 { + + description + "dhcprelayaddress6"; + + config true; + key "ipv6address"; + + + leaf ipv6address { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of ipv6address definition. + + leaf interface { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of interface definition. + + } // End of dhcprelayaddress6-list + } // End of dhcp6nterface-list + } // END of dhcp6nterface-grouping definition. + + grouping dhcprelay-grouping { + container dhcprelay { + config true; + + description + "dhcprelay"; + + leaf relay { + type cml_data_types:CML_BOOL_T; + } // END of relay definition. + + leaf option { + type cml_data_types:CML_BOOL_T; + } // END of option definition. + + } // END of dhcprelay-container definition. + } // END of dhcprelay-container definition. + + grouping dhcprelay6-grouping { + container dhcprelay6 { + config true; + + description + "DHCP"; + + leaf relay6 { + type cml_data_types:CML_BOOL_T; + } // END of relay6 definition. + + } // END of dhcprelay6-container definition. + } // END of dhcprelay6-container definition. + + +} \ No newline at end of file diff --git a/yang-files/dns.yang b/yang-files/dns.yang new file mode 100644 index 00000000..2a3d76b6 --- /dev/null +++ b/yang-files/dns.yang @@ -0,0 +1,145 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : dns.yang +* +*/ + +submodule dns { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "dns_configuration"; + + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of DNS datamodel."; + } + + + grouping dns-grouping { + container dns { + config true; + + description + "dns"; + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf domainlookup { + type cml_data_types:CML_BOOL_T; + description "ip domain-lookup"; + } // END of domainlookup definition. + + leaf defaultdomain { + if-feature feature_list:HAVE_DNS_CLIENT; + type cml_data_types:CML_BOOL_T; + description "Default domain"; + } // END of defaultdomain definition. + + leaf domainname { + if-feature feature_list:HAVE_DNS_CLIENT; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of domainname definition. + + leaf debugdns { + if-feature feature_list:HAVE_DNS_CLIENT; + type cml_data_types:CML_BOOL_T; + description "debug dns client"; + } // END of debugdns definition. + + + list domainlistNAME { + + description + "domainlistNAME"; + + config true; + key "domainlist"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf domainlist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip domain-list"; + } // END of domainlist definition. + + } // End of domainlistNAME-list + + list hostname { + + description + "hostname"; + + config true; + key "host"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf host { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of host definition. + + leaf hostaddr1 { + mandatory true; + type cml_data_types:CML_IP_ADDR_T; + } // END of hostaddr1 definition. + + leaf hostaddr2 { + mandatory true; + type cml_data_types:CML_IP_ADDR_T; + description "ip host"; + } // END of hostaddr2 definition. + + } // End of hostname-list + } // END of dns-container definition. + } // END of dns-container definition. + + +} \ No newline at end of file diff --git a/yang-files/feature_list.yang b/yang-files/feature_list.yang index 0d222c6b..d4783633 100644 --- a/yang-files/feature_list.yang +++ b/yang-files/feature_list.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -23,8 +23,148 @@ module feature_list { description "initial version: revisied on 2015-10-15."; } + feature HAVE_L2 { + description "L2 feature"; + } + + feature HAVE_PROVIDER_BRIDGE { + description "provider-bridge feature"; + } + + feature HAVE_DEFAULT_BRIDGE { + description "default bridge feature"; + } + + feature HAVE_VLAN { + description "vlan feature"; + } + + feature HAVE_I_BEB { + description "vlan feature"; + } + + feature HAVE_B_BEB { + description "vlan feature"; + } + + feature HAVE_TRILLD { + description "trill feature"; + } + + feature HAVE_UDLD { + description "trill feature"; + } + + feature HAVE_QOS { + description "qos feature"; + } + + feature HAVE_RPVST_PLUS { + description "rpvst feature"; + } + feature HAVE_SPBD { - description "SPBD feature enabled"; + description "spbd feature"; + } + + feature HAVE_SNMP { + description "PIM snmp"; + } + + feature HAVE_DHCP_CLIENT { + description "dhcp-client feature enabled"; + } + + feature HAVE_L2GP { + description "l2gp feature"; + } + + feature HAVE_MSTPD { + description "mstp feature"; + } + + feature HAVE_RIP_GR_SUPPORT { + description "rip gr support"; + } + + feature HAVE_BFD { + description "rip bfd support"; + } + + feature HAVE_RIBD { + description "rip rib support"; + } + + feature HAVE_RESTART { + description "rip restart support"; + } + + feature HAVE_VRF_RIP { + description "rip vrf support"; + } + + feature HAVE_MLAG { + description "mlag feature"; + } + + feature HAVE_AAA { + description "aaa feature"; + } + + feature HAVE_MAC_AUTH { + description "MAC_AUTH feature"; + } + + feature HAVE_IPV6 { + description "ipv6 feature"; + } + + feature HAVE_VRF { + description "VRF feature"; + } + + feature HAVE_L3 { + description "L3 feature"; + } + + feature HAVE_MULTIPATH { + description "multipath feature"; + } + + feature HAVE_PIM_SMDM { + description "PIM sparse dense mode"; + } + + feature HAVE_PIM_DM { + description "PIM dense mode"; + } + + feature HAVE_PIM_SM { + description "PIM sparse mode"; + } + + feature HAVE_PIM_SSM { + description "PIM source specific multicast"; + } + + feature HAVE_PIM_MSDP_API { + description "PIM Multicast Source Discovery Protocol"; + } + + feature HAVE_PIM_BIDIR { + description "PIM Bidirectional"; + } + + feature HAVE_TCP_MD5SIG { + description "PIM tcp md5 signature"; + } + + feature HAVE_PIM_MSDP { + description "PIM Multicast Source Discovery Protocol"; + } + + feature HAVE_PIM_ECMP_REDIRECT { + description "PIM ECMP enabled"; } feature HAVE_ACL { @@ -35,10 +175,6 @@ module feature_list { description "ACL feature "; } - feature HAVE_BFD { - description "BFD feature "; - } - feature HAVE_VRF_OSPF6 { description "VRF_OSPF6 feature "; } @@ -55,10 +191,6 @@ module feature_list { description "OSPF6_CSPF feature "; } - feature HAVE_RESTART { - description "RESTART feature "; - } - feature HAVE_OSPF6_OD { description "OSPF6_OD feature "; } @@ -67,80 +199,320 @@ module feature_list { description "NSSA feature "; } - feature HAVE_RIBD { - description "RIBD feature "; + feature HAVE_BFD_MAIN { + description "BFD feature enabled"; } - feature HAVE_SNMP { - description "SNMP feature "; - } - - feature HAVE_IPV6 { - description "IPV6 feature enabled"; + feature HAVE_BFD_MONO { + description "BFD-MONO feature enabled"; } feature HAVE_MPLS_OAM { description "MPLS-OAM feature enabled"; } - feature HAVE_VRF { - description "VRF feature enabled"; + feature HAVE_BFD_HW_OFFLOAD { + description "BFD HW Offload feature"; + } + + feature HAVE_PSERVD { + description "PSERVD feature"; + } + + feature HAVE_DUNE { + description "flag for qumran board"; + } + + feature HAVE_DIFFSERV { + description "enable diffserv flag"; + } + + feature HAVE_HQOS { + description "enable flag for Hierarchical quality of service"; + } + + feature HAVE_SNMP_AGENT { + description "SNMP-AGENT feature"; + } + + feature HAVE_SNMP_V3 { + description "snmp version v3"; + } + + feature HAVE_VRRP_V3 { + description "VRRPV3 feature"; + } + + feature HAVE_DNS_CLIENT { + description "dns-client feature enabled"; + } + + feature HAVE_HOSTPD { + description "hotp feature enabled"; + } + + feature HAVE_LDAP_CLIENT { + description "ldap-client feature enabled"; + } + + feature HAVE_VXLAN { + description "VXLAN feature enabled"; + } + + feature HAVE_NVGRE { + description "NVGRE feature enabled"; + } + + feature HAVE_NVO { + description "NVGRE feature enabled"; + } + + feature HAVE_BGP_EVPN { + description "BGP EVPN feature enabled"; + } + + feature HAVE_INTELFM { + description "intelfm feature enabled"; + } + + feature HAVE_TFO { + description "tfo feature"; + } + + feature HAVE_PBB_TE { + description "pbb te bridge feature"; + } + + feature HAVE_PVLAN { + description "pvlan feature"; + } + + feature HAVE_G8032V2 { + description "g8032v2 feature"; + } + + feature NSM_VLAN_ERPS_CONF { + description "vlan erps conf feature"; + } + + feature HAVE_HOSTP_NTP { + description "ntp feature"; } feature HAVE_LACPV2 { description "LLDPV2 feature enabled"; } - feature HAVE_VRRP_V3 { - description "VRRPV3 feature enabled"; + feature HAVE_TELNET_SERVER { + description "telnet-server feature"; } feature HAVE_LDPD { - description "LDP feature enabled"; + description "LDP feature"; } feature HAVE_TE { - description "TE feature enabled"; + description "TE feature"; + } + + feature HAVE_AXELX { + description "Axelx feature enabled"; + } + + feature HAVE_CUSTOM_CLI_STYLE { + description "custom cli style"; } feature HAVE_DSTE { - description "dste feature enabled"; + description "dste feature"; } - feature HAVE_LLDPV2 { - description "LLDPV2 feature enabled"; + feature HAVE_NDD { + description "NDD feature"; } - feature HAVE_OSPF_CSPF { - description "OSPF-CSPF feature enabled"; + feature HAVE_SR { + description "sr mpls feature"; + } + + feature HAVE_NSM_IF_UNNUMBERED { + description "nsm interface unnumbered feature"; + } + + feature HAVE_VR { + description "VR feature"; + } + + feature HAVE_TDM_VC { + description "TDM VC mpls feature"; + } + + feature HAVE_INTERFACE_NAME_MAPPING { + description "original ifname feature"; + } + + feature HAVE_VRX { + description "vrx feature"; + } + + feature HAVE_MPLS { + description "mpls feature"; + } + + feature HAVE_FLEXPORT { + description "Flexport Feature"; + } + + feature HAVE_TRIDENT2 { + description "Trident2 Feature"; + } + + feature HAVE_TRIDENT2PLUS { + description "Trident2plus Feature"; + } + + feature HAVE_TOMAHAWK { + description "Tomahawk Feature"; + } + + feature HAVE_BROADCOM { + description "broadcom feature"; + } + + feature HAVE_HAL { + description "hal feature"; + } + + feature HAVE_MARVELL { + description "marvell feature"; + } + + feature HAVE_SWFWDR { + description "swfwdr feature"; + } + + feature HAVE_GMPLS { + description "GMPLS feature"; + } + + feature HAVE_MPLS_P2MP { + description "MPLS P2MP feature"; + } + + feature HAVE_ISIS_MESH_GROUP { + description "ISIS MESH GROUP feature"; + } + + feature HAVE_VRF_ISIS { + description "ISIS VRF feature"; + } + + feature HAVE_ISIS_TE { + description "ISIS-TE feature"; + } + + feature HAVE_WIDE_METRIC { + description "wide metric feature"; + } + + feature HAVE_ISIS_CSPF { + description "ISIS-CSPF feature"; + } + + feature HAVE_MULTI_TOPOLOGY { + description "multi-topology feature"; + } + + feature HAVE_PROTOCOL_TOPOLOGY { + description "Protocol topology feature"; + } + + feature HAVE_TACACS_CLIENT { + description "tacacs-client feature enabled"; + } + + feature HAVE_PBR { + description "PBR feature"; + } + + feature HAVE_EXT_CAP_ASN { + description "BGP extasn feature"; + } + + feature HAVE_BGP_ADD_PATH { + description "bgp addvertise feature"; + } + + feature HAVE_SFLOW { + description "sFlow feature"; + } + + feature HAVE_FLEXLM { + description "License feature enabled"; + } + + feature HAVE_SYSLOG { + description "syslog feature"; + } + + feature HAVE_DEBUG_MODULE_SEVERITY { + description "Module severity feature"; + } + + feature HAVE_OSPF_MULTI_INST { + description "OSPF Multi Instance feature"; + } + + feature HAVE_MD5 { + description "MD5"; } feature HAVE_VRF_OSPF { - description "VRF-OSPF feature enabled"; + description "OSPF VRF"; } feature HAVE_OSPF_TE { - description "TE feature enabled"; + description "OSPF Traffic Engineering"; } - feature HAVE_VPN_ECMP { - description "HAVE_VPN_ECMP feature enabled"; + feature HAVE_OSPF_CSPF { + description "OSPF-CSPF feature"; } - feature BGP_L2VPN_VPLS_MODE { - description "l2vpn vpls feature enabled"; + feature HAVE_OSPF_SSO { + description "OSPF stateful swithchover"; } - feature HAVE_EXT_CAP_ASN { - description "EXT-CAP-ASN feature enabled"; + feature HAVE_OSPF_SR { + description "OSPF segment route"; } - feature HAVE_MPLS { - description "MPLS feature enabled"; + feature HAVE_SR_MPLS { + description "OSPF segment route"; } - feature HAVE_BGP_EVPN { - description "bgp evpn feature enabled"; + feature HAVE_OSPF_DB_OVERFLOW { + description "OSPF DB overflow feature"; + } + + feature HAVE_OPAQUE_LSA { + description "OSPF-OPAQUE feature"; + } + + feature HAVE_OSPF_OD { + description "Ospf OD feature"; + } + + feature HAVE_HA { + description "HA"; + } + + feature HAVE_VPN_ECMP { + description "HAVE_VPN_ECMP feature enabled"; + } + + feature BGP_L2VPN_VPLS_MODE { + description "l2vpn vpls feature enabled"; } feature HAVE_BGP_VPLS { @@ -155,12 +527,28 @@ module feature_list { description "bgp table map feature enabled"; } - feature HAVE_TCP_MD5SIG { - description "tcp md5 feature enabled"; + feature HAVE_G8031 { + description "G8031 feature "; } - feature HAVE_BGP_ADD_PATH { - description "additional path feature enabled"; + feature HAVE_G8032 { + description "G8032 feature "; + } + + feature HAVE_GELS { + description "gels feature "; + } + + feature HAVE_LLDPV2 { + description "LLDPV2 feature enabled"; + } + + feature HAVE_MCEC { + description "mcec feature"; + } + + feature HAVE_SSH_SERVER { + description "ssh server feature"; } } \ No newline at end of file diff --git a/yang-files/featuredhcp.yang b/yang-files/featuredhcp.yang new file mode 100644 index 00000000..c72122f9 --- /dev/null +++ b/yang-files/featuredhcp.yang @@ -0,0 +1,53 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : featuredhcp.yang +* +*/ + +submodule featuredhcp { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + description + "feature_dhcp_configuration"; + + + revision "2016-12-27" { + description "Added support for multi module installation."; + } + + revision "2016-10-28" { + description "Initial version of featuredhcp datamodel."; + } + + + grouping featuredhcp-grouping { + container featuredhcp { + config true; + + description + "featuredhcp"; + + leaf dhcp { + type cml_data_types:CML_BOOL_T; + } // END of dhcp definition. + + } // END of featuredhcp-container definition. + } // END of featuredhcp-container definition. + + +} \ No newline at end of file diff --git a/yang-files/hqos.yang b/yang-files/hqos.yang new file mode 100644 index 00000000..d4457ed9 --- /dev/null +++ b/yang-files/hqos.yang @@ -0,0 +1,1439 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : hqos.yang +* +*/ + +submodule hqos { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "Hierarchical quality of service"; + + + revision "2017-01-30" { + description "datamodel adding for HQOS."; + } + + grouping aclFilter { + leaf filterType { + type cml_data_types:CML_FILTER_TYPE_T; + } // END of filterType definition. + + leaf common { + type cml_data_types:CML_INT32_T; + } // END of common definition. + + container mfilter { + config true; + + description + "mfilter structure in Hierarchical quality of service"; + + leaf extended { + type cml_data_types:CML_INT32_T; + } // END of extended definition. + + leaf pktFormat { + type cml_data_types:CML_INT32_T; + } // END of pktFormat definition. + + leaf-list filterA { + type cml_data_types:CML_INT8_T; + } // END of filterA definition. + + leaf-list Amask { + type cml_data_types:CML_INT8_T; + } // END of Amask definition. + + leaf-list filterM { + type cml_data_types:CML_INT8_T; + } // END of filterM definition. + + leaf-list Mmask { + type cml_data_types:CML_INT8_T; + } // END of Mmask definition. + + leaf priority { + type cml_data_types:CML_INT32_T; + } // END of priority definition. + + } // END of mfilter-container definition. + container ifilter { + config true; + + description + "ipv4 filter structure in Hierarchical quality of service"; + + leaf flag { + type cml_data_types:CML_INT32_T; + } // END of flag definition. + + leaf addr { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of addr definition. + + leaf addrMask { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of addrMask definition. + + leaf mask { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of mask definition. + + leaf maskMask { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of maskMask definition. + + leaf addrConfig { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of addrConfig definition. + + leaf maskConfig { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of maskConfig definition. + + leaf proto { + type cml_data_types:CML_INT16_T; + } // END of proto definition. + + leaf isIanaValue { + type cml_data_types:CML_INT8_T; + } // END of isIanaValue definition. + + } // END of ifilter-container definition. + container ip6filter { + config true; + + description + "ipv6 filter structure in Hierarchical quality of service"; + + leaf flag { + type cml_data_types:CML_INT32_T; + } // END of flag definition. + + leaf saddr { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of saddr definition. + + leaf saddrMask { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of saddrMask definition. + + leaf daddr { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of daddr definition. + + leaf daddrMask { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of daddrMask definition. + + leaf saddrConfig { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of saddrConfig definition. + + leaf daddrConfig { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of daddrConfig definition. + + leaf proto { + type cml_data_types:CML_INT16_T; + } // END of proto definition. + + leaf isIanaValue { + type cml_data_types:CML_INT8_T; + } // END of isIanaValue definition. + + } // END of ip6filter-container definition. + container zfilter { + config true; + + description + "zfilter structure in Hierarchical quality of service"; + + leaf exact { + type cml_data_types:CML_INT32_T; + } // END of exact definition. + + leaf prefix { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of prefix definition. + + } // END of zfilter-container definition. + container zextfilter { + config true; + + description + "qos zebos ext structure in Hierarchical quality of service"; + + leaf extProtocol { + type cml_data_types:CML_INT32_T; + } // END of extProtocol definition. + + leaf sprefix { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of sprefix definition. + + leaf sportOp { + type cml_data_types:CML_QOS_OPERATION_T; + } // END of sportOp definition. + + leaf sport { + type cml_data_types:CML_INT32_T; + } // END of sport definition. + + leaf dprefix { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of dprefix definition. + + leaf dportOp { + type cml_data_types:CML_QOS_OPERATION_T; + } // END of dportOp definition. + + leaf dport { + type cml_data_types:CML_INT32_T; + } // END of dport definition. + + } // END of zextfilter-container definition. + } // END of aclFilter definition. + + grouping qos-grouping { + container qos { + config true; + + description + "nsm master structure having Hierarchical quality of service"; + + + list cosQueueProfileTree { + + description + "cos_queue_profile_tree having Hierarchical quality of service"; + + config true; + key "cosQueueProfile"; + + + leaf cosQueueProfile { + type cml_data_types:CML_UINT32_T { + range "1..64"; + } + } // END of cosQueueProfile definition. + + + list nsmQosProfileUpdate { + + description + "nsm_qos_profile_update of Hierarchical quality of service"; + + config true; + key "profileCos"; + + + leaf profileCos { + type cml_data_types:CML_INT8_T { + range "0..7"; + } + } // END of profileCos definition. + + leaf profileQueue { + mandatory true; + type cml_data_types:CML_INT8_T { + range "0..7"; + } + } // END of profileQueue definition. + + } // End of nsmQosProfileUpdate-list + } // End of cosQueueProfileTree-list + + list qifList { + + description + "interface qif list in Hierarchical quality of service"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf-list serviceInput { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of serviceInput definition. + + leaf-list serviceOutput { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of serviceOutput definition. + + leaf-list serviceQueuing { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of serviceQueuing definition. + + leaf trustType { + type cml_data_types:CML_BOOL_T; + } // END of trustType definition. + + + list cosQueue { + + description + "cos queue values mapping at interface level"; + + config true; + key "CosTblSize"; + + + leaf CosTblSize { + type cml_data_types:CML_INT8_T { + range "0..7"; + } + } // END of CosTblSize definition. + + leaf InterfaceCosQueueId { + mandatory true; + type cml_data_types:CML_INT32_T { + range "0..7"; + } + } // END of InterfaceCosQueueId definition. + + } // End of cosQueue-list + + list dscpQueue { + + description + "dscp queue mapping structure in Hierarchical quality of service"; + + config true; + key "DscpTblSize"; + + + leaf DscpTblSize { + type cml_data_types:CML_INT32_T { + range "0..63"; + } + } // END of DscpTblSize definition. + + leaf dscpQueueMapTbl { + mandatory true; + type cml_data_types:CML_INT32_T { + range "0..7"; + } + } // END of dscpQueueMapTbl definition. + + } // End of dscpQueue-list + } // End of qifList-list + + list classQosMap { + + description + "class queue mapping structure in Hierarchical quality of service"; + + config true; + key "name"; + + + leaf name { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of name definition. + + leaf cmapType { + type cml_data_types:CML_QOS_CMAP_TYPE_T; + } // END of cmapType definition. + + leaf cmapMatchCriteria { + type cml_data_types:CML_CMAP_MATCH_CRITERIA_T; + } // END of cmapMatchCriteria definition. + + leaf priority { + type cml_data_types:CML_UINT8_T; + } // END of priority definition. + + leaf cmapMatchId { + type cml_data_types:CML_UINT16_T; + } // END of cmapMatchId definition. + + leaf matchCount { + type cml_data_types:CML_UINT16_T; + } // END of matchCount definition. + + leaf cmapMatchSet { + type cml_data_types:CML_UINT8_T; + } // END of cmapMatchSet definition. + + leaf matchAclCount { + type cml_data_types:CML_UINT16_T; + } // END of matchAclCount definition. + + leaf aclNameSet { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of aclNameSet definition. + + leaf srcAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of srcAddr definition. + + leaf dstAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of dstAddr definition. + + leaf aclName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of aclName definition. + + leaf negate { + type cml_data_types:CML_HQOS_TRAFFIC_TYPE_NOT_T; + } // END of negate definition. + + leaf trafficType { + type cml_data_types:CML_HQOS_TRAFFIC_TYPE_T; + } // END of trafficType definition. + + leaf-list ethertypeList { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ethertypeList definition. + + container qosGrp { + config true; + + description + "qos group match structure in Hierarchical quality of service"; + + leaf flag { + type cml_data_types:CML_UINT32_T; + } // END of flag definition. + + leaf num { + type cml_data_types:CML_UINT32_T { + range "1..2000"; + } + } // END of num definition. + + leaf-list cmapQosGroup { + type cml_data_types:CML_UINT8_T; + } // END of cmapQosGroup definition. + + } // END of qosGrp-container definition. + container cos { + config true; + + description + "cos structure in Hierarchical quality of service"; + + leaf num { + type cml_data_types:CML_UINT32_T; + } // END of num definition. + + leaf matchType { + type cml_data_types:CML_HQOS_MATCH_NOT_T; + } // END of matchType definition. + + leaf cos { + type cml_data_types:CML_STRING_T; + } // END of cos definition. + + } // END of cos-container definition. + container cosInner { + config true; + + description + "cos inner structure in Hierarchical quality of service"; + + leaf num { + type cml_data_types:CML_UINT32_T; + } // END of num definition. + + leaf innerType { + type cml_data_types:CML_HQOS_MATCH_NOT_T; + } // END of innerType definition. + + leaf cos { + type cml_data_types:CML_STRING_T; + } // END of cos definition. + + } // END of cosInner-container definition. + container cmapDscp { + config true; + + description + "cmap dscp structure in Hierarchical quality of service"; + + leaf ver { + type cml_data_types:CML_INT8_T; + } // END of ver definition. + + leaf num { + type cml_data_types:CML_INT8_T; + } // END of num definition. + + leaf dscpType { + type cml_data_types:CML_HQOS_MATCH_NOT_DSCP_T; + } // END of dscpType definition. + + leaf dscp { + type cml_data_types:CML_QOS_DSCP_VAL_T; + } // END of dscp definition. + + leaf ipv6Num { + type cml_data_types:CML_INT8_T; + } // END of ipv6Num definition. + + } // END of cmapDscp-container definition. + container cmapIpPrec { + config true; + + description + "ip precedence structure in Hierarchical quality of service"; + + leaf precedenceType { + type cml_data_types:CML_HQOS_MATCH_NOT_PRECEDENCE_T; + } // END of precedenceType definition. + + leaf precedence { + type cml_data_types:CML_QOS_PREC_VAL_T; + } // END of precedence definition. + + } // END of cmapIpPrec-container definition. + container cmapRtp { + config true; + + description + "match rtp structure in Hierarchical quality of service"; + + leaf rtpType { + type cml_data_types:CML_HQOS_MATCH_NOT_RTP_T; + } // END of rtpType definition. + + leaf rtp { + type cml_data_types:CML_STRING_T; + } // END of rtp definition. + + } // END of cmapRtp-container definition. + container cmapProto { + config true; + + description + "cmap proto structure in Hierarchical quality of service"; + + leaf protocolType { + type cml_data_types:CML_HQOS_MATCH_NOT_PROTOCOL_T; + } // END of protocolType definition. + + leaf protocol { + type cml_data_types:CML_PROTO_TYPE_T; + } // END of protocol definition. + + } // END of cmapProto-container definition. + container vlan { + config true; + + description + "vlan configuration in Hierarchical quality of service"; + + leaf vlanType { + type cml_data_types:CML_HQOS_MATCH_NOT_VLAN_T; + } // END of vlanType definition. + + leaf vlan { + type cml_data_types:CML_STRING_T; + } // END of vlan definition. + + } // END of vlan-container definition. + container vlanInner { + config true; + + description + "inner vlan structure in Hierarchical quality of service"; + + leaf vlanInnerType { + type cml_data_types:CML_HQOS_MATCH_NOT_VLAN_T; + } // END of vlanInnerType definition. + + leaf-list vlanInner { + type cml_data_types:CML_STRING_T; + } // END of vlanInner definition. + + } // END of vlanInner-container definition. + container cmapExp { + if-feature feature_list:HAVE_DIFFSERV; + config true; + + description + "mpls exp structure in Hierarchical quality of service"; + + leaf expType { + type cml_data_types:CML_HQOS_MATCH_NOT_MPLS_EXP_T; + } // END of expType definition. + + leaf exp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of exp definition. + + } // END of cmapExp-container definition. + } // End of classQosMap-list + + list pmap { + + description + "pmap list in Hierarchical quality of service"; + + config true; + key "pmapName"; + + + leaf pmapName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of pmapName definition. + + leaf pmapType { + type cml_data_types:CML_PMAP_TYPE_T; + } // END of pmapType definition. + + leaf aclName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of aclName definition. + + leaf aclAttached { + type cml_data_types:CML_UINT8_T; + } // END of aclAttached definition. + + leaf numAclsAttached { + type cml_data_types:CML_INT32_T; + } // END of numAclsAttached definition. + + leaf defaultClassAttach { + type cml_data_types:CML_INT8_T; + } // END of defaultClassAttach definition. + + leaf seqNum { + type cml_data_types:CML_INT16_T; + } // END of seqNum definition. + + leaf cmapCount { + type cml_data_types:CML_INT16_T; + } // END of cmapCount definition. + + leaf attached { + type cml_data_types:CML_INT32_T; + } // END of attached definition. + + leaf-list clName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of clName definition. + + leaf queuingFlag { + type cml_data_types:CML_INT8_T; + } // END of queuingFlag definition. + + leaf bandwidthMax { + type cml_data_types:CML_INT32_T; + } // END of bandwidthMax definition. + + leaf shapeMax { + type cml_data_types:CML_INT32_T; + } // END of shapeMax definition. + + leaf bandwidthRemaining { + type cml_data_types:CML_INT32_T; + } // END of bandwidthRemaining definition. + + leaf bandwidthRemFlag { + type cml_data_types:CML_INT8_T; + } // END of bandwidthRemFlag definition. + + leaf bandwidthRateType { + type cml_data_types:CML_INT8_T; + } // END of bandwidthRateType definition. + + leaf shapeRateType { + type cml_data_types:CML_INT8_T; + } // END of shapeRateType definition. + + leaf bandwidthRefCount { + type cml_data_types:CML_INT8_T; + } // END of bandwidthRefCount definition. + + leaf shapeRefCount { + type cml_data_types:CML_INT8_T; + } // END of shapeRefCount definition. + + leaf bandwidthTotal { + type cml_data_types:CML_INT32_T; + } // END of bandwidthTotal definition. + + leaf thresholdRefCount { + type cml_data_types:CML_INT8_T; + } // END of thresholdRefCount definition. + + leaf thresholdType { + type cml_data_types:CML_INT8_T; + } // END of thresholdType definition. + + leaf matchNotProto { + type cml_data_types:CML_INT8_T; + } // END of matchNotProto definition. + + leaf priorityCount { + type cml_data_types:CML_INT8_T; + } // END of priorityCount definition. + + leaf servicePolicyAttach { + type cml_data_types:CML_INT8_T; + } // END of servicePolicyAttach definition. + + leaf schedQueBmp { + type cml_data_types:CML_INT8_T; + } // END of schedQueBmp definition. + + leaf servicePolicyCount { + type cml_data_types:CML_INT32_T; + } // END of servicePolicyCount definition. + + leaf policerCount { + type cml_data_types:CML_INT8_T; + } // END of policerCount definition. + + leaf noUpdate { + type cml_data_types:CML_INT8_T; + } // END of noUpdate definition. + + + list cmapTree { + + description + "Applying class on policy structure in Hierarchical quality of service"; + + config true; + key "cmapName"; + + + leaf cmapName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of cmapName definition. + + leaf cmapId { + type cml_data_types:CML_PMAP_TYPE_T; + } // END of cmapId definition. + + leaf userCfgPriority { + type cml_data_types:CML_INT16_T { + range "1..1000"; + } + } // END of userCfgPriority definition. + + container police { + config true; + + description + "police structure of Hierarchical quality of service"; + + leaf policeType { + type cml_data_types:CML_UINT32_T; + } // END of policeType definition. + + leaf avg { + type cml_data_types:CML_UINT32_T; + } // END of avg definition. + + leaf cirType { + type cml_data_types:CML_QOS_RATE_T; + } // END of cirType definition. + + leaf pir { + type cml_data_types:CML_UINT32_T; + } // END of pir definition. + + leaf pirType { + type cml_data_types:CML_QOS_RATE_T; + } // END of pirType definition. + + leaf burst { + type cml_data_types:CML_UINT32_T; + } // END of burst definition. + + leaf bcType { + type cml_data_types:CML_BURST_TYPE_T; + } // END of bcType definition. + + leaf excessBurst { + type cml_data_types:CML_UINT32_T; + } // END of excessBurst definition. + + leaf beType { + type cml_data_types:CML_BURST_TYPE_T; + } // END of beType definition. + + leaf confPoliceVal { + type cml_data_types:CML_UINT8_T; + } // END of confPoliceVal definition. + + leaf confAct { + type cml_data_types:CML_CONFORM_ACTION_T; + } // END of confAct definition. + + leaf policeDscp { + type cml_data_types:CML_UINT8_T; + } // END of policeDscp definition. + + leaf exdAct { + type cml_data_types:CML_EXCEED_ACTION_T; + } // END of exdAct definition. + + leaf votPoliceVal { + type cml_data_types:CML_UINT8_T; + } // END of votPoliceVal definition. + + leaf votAct { + type cml_data_types:CML_VIOLATE_ACTION_T; + } // END of votAct definition. + + leaf policerId { + type cml_data_types:CML_UINT32_T; + } // END of policerId definition. + + leaf fcMode { + type cml_data_types:CML_FLOW_CONTROL_MODE_T; + } // END of fcMode definition. + + leaf mode { + type cml_data_types:CML_UINT8_T; + } // END of mode definition. + + leaf policeTos { + type cml_data_types:CML_UINT8_T; + } // END of policeTos definition. + + leaf policeCos { + type cml_data_types:CML_UINT8_T; + } // END of policeCos definition. + + leaf policeExp { + if-feature feature_list:HAVE_DIFFSERV; + type cml_data_types:CML_UINT8_T; + } // END of policeExp definition. + + } // END of police-container definition. + container setS { + config true; + + description + "setting class on policy structure in Hierarchical quality of service"; + + leaf level { + type cml_data_types:CML_EMPTY_T; + } // END of level definition. + + leaf Type { + type cml_data_types:CML_INT32_T; + } // END of Type definition. + + leaf value { + type cml_data_types:CML_QOS_SET_VAL_T; + } // END of value definition. + + } // END of setS-container definition. + container nsmQosShape { + config true; + + description + "qos shape structure in Hierarchical quality of service"; + + leaf rate { + type cml_data_types:CML_INT32_T; + } // END of rate definition. + + leaf rateType { + type cml_data_types:CML_HQOS_SHAPE_TYPE_T; + } // END of rateType definition. + + leaf inputRate { + type cml_data_types:CML_INT32_T; + } // END of inputRate definition. + + leaf netShapeRate { + type cml_data_types:CML_INT32_T; + } // END of netShapeRate definition. + + } // END of nsmQosShape-container definition. + container qosQueuing { + config true; + + description + "qos queuing structure in Hierarchical quality of service"; + + leaf flag { + type cml_data_types:CML_INT32_T; + } // END of flag definition. + + leaf pqueueFlag { + type cml_data_types:CML_INT8_T; + } // END of pqueueFlag definition. + + leaf bandwidthRemainingPer { + type cml_data_types:CML_INT8_T { + range "1..100"; + } + } // END of bandwidthRemainingPer definition. + + leaf wrrWeight { + type cml_data_types:CML_INT32_T { + range "1..127"; + } + } // END of wrrWeight definition. + + leaf servicePolicy { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of servicePolicy definition. + + container qosWred { + config true; + + description + "qos wred structure in Hierarchical quality of service"; + + leaf minThreshold { + type cml_data_types:CML_INT32_T; + } // END of minThreshold definition. + + leaf maxThreshold { + type cml_data_types:CML_INT32_T; + } // END of maxThreshold definition. + + leaf minThresholdYp { + type cml_data_types:CML_INT32_T; + } // END of minThresholdYp definition. + + leaf maxThresholdYp { + type cml_data_types:CML_INT32_T; + } // END of maxThresholdYp definition. + + leaf minThresholdRp { + type cml_data_types:CML_INT32_T; + } // END of minThresholdRp definition. + + leaf maxThresholdRp { + type cml_data_types:CML_INT32_T; + } // END of maxThresholdRp definition. + + leaf minType { + type cml_data_types:CML_INT8_T; + } // END of minType definition. + + leaf maxType { + type cml_data_types:CML_INT8_T; + } // END of maxType definition. + + leaf-list cos { + type cml_data_types:CML_INT8_T; + } // END of cos definition. + + } // END of qosWred-container definition. + container tailDrop { + config true; + + description + "tail drop structure in Hierarchical quality of service"; + + leaf cos { + type cml_data_types:CML_INT32_T; + } // END of cos definition. + + leaf maxThreshold { + type cml_data_types:CML_INT32_T; + } // END of maxThreshold definition. + + leaf maxType { + type cml_data_types:CML_UINT8_T; + } // END of maxType definition. + + } // END of tailDrop-container definition. + container qosBandwidth { + config true; + + description + "qos bandwidth structure in Hierarchical quality of service"; + + leaf inputRate { + type cml_data_types:CML_INT32_T; + } // END of inputRate definition. + + leaf rate { + type cml_data_types:CML_INT32_T; + } // END of rate definition. + + leaf rateType { + type cml_data_types:CML_HQOS_SHAPE_TYPE_T; + default "kbps"; + } // END of rateType definition. + + } // END of qosBandwidth-container definition. + } // END of qosQueuing-container definition. + container qoswrrSp { + config true; + + description + "wrr structure in Hierarchical quality of service"; + + leaf wrrSpFlag { + type cml_data_types:CML_INT32_T; + } // END of wrrSpFlag definition. + + } // END of qoswrrSp-container definition. + } // End of cmapTree-list + + list protoCmapl { + + description + "nsm cmap list in Hierarchical quality of service"; + + config true; + key "name"; + + + leaf name { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of name definition. + + } // End of protoCmapl-list + } // End of pmap-list + container acl { + config true; + + description + "acl master of Hierarchical quality of service"; + + leaf name { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of name definition. + + leaf remark { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remark definition. + + leaf aclType { + type cml_data_types:CML_INT32_T; + } // END of aclType definition. + + leaf attached { + type cml_data_types:CML_INT32_T; + } // END of attached definition. + + + list accessNum { + + description + "access list structure in Hierarchical quality of service"; + + config true; + key "aclType"; + + + leaf aclType { + type cml_data_types:CML_INT32_T; + } // END of aclType definition. + + uses aclFilter; + } // End of accessNum-list + + list accessString { + + description + "access list structure in Hierarchical quality of service"; + + config true; + key "aclType"; + + + leaf aclType { + type cml_data_types:CML_INT32_T; + } // END of aclType definition. + + uses aclFilter; + } // End of accessString-list + } // END of acl-container definition. + container qosGlobal { + config true; + + description + "global structure of Hierarchical quality of service"; + + leaf state { + type cml_data_types:CML_HQOS_ENABLE_DISABLE_T; + description "Enabled(1)/Disabled(0) state"; + } // END of state definition. + + leaf remarkDei { + type cml_data_types:CML_BOOL_T; + } // END of remarkDei definition. + + leaf-list dscpQueueMapTbl { + type cml_data_types:CML_INT8_T; + } // END of dscpQueueMapTbl definition. + + leaf-list dscpDscpMapTbl { + type cml_data_types:CML_INT8_T; + } // END of dscpDscpMapTbl definition. + + leaf-list cosQueueMapTblModified { + type cml_data_types:CML_INT8_T; + } // END of cosQueueMapTblModified definition. + + leaf-list cosCosMapTbl { + type cml_data_types:CML_INT8_T; + } // END of cosCosMapTbl definition. + + leaf statistics { + type cml_data_types:CML_BOOL_T; + } // END of statistics definition. + + + list dscpml { + + description + "nsm dscp mut list structure in Hierarchical quality of service"; + + config true; + key "name"; + + + leaf name { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of name definition. + + leaf aclName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of aclName definition. + + leaf-list dscpMutD { + type cml_data_types:CML_INT8_T; + } // END of dscpMutD definition. + + } // End of dscpml-list + + list dcosl { + + description + "nsm dscp cos list in Hierarchical quality of service"; + + config true; + key "name"; + + + leaf name { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of name definition. + + leaf aclName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of aclName definition. + + leaf-list dscpMutD { + type cml_data_types:CML_INT8_T; + } // END of dscpMutD definition. + + } // End of dcosl-list + + list cos { + + description + "nsm agp list in Hierarchical quality of service"; + + config true; + key "name"; + + + leaf name { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of name definition. + + leaf aclName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of aclName definition. + + container police { + config true; + + description + "police structure of Hierarchical quality of service"; + + leaf policeType { + type cml_data_types:CML_UINT32_T; + } // END of policeType definition. + + leaf avg { + type cml_data_types:CML_UINT32_T; + } // END of avg definition. + + leaf cirType { + type cml_data_types:CML_QOS_RATE_T; + } // END of cirType definition. + + leaf pir { + type cml_data_types:CML_UINT32_T; + } // END of pir definition. + + leaf pirType { + type cml_data_types:CML_QOS_RATE_T; + } // END of pirType definition. + + leaf burst { + type cml_data_types:CML_UINT32_T; + } // END of burst definition. + + leaf bcType { + type cml_data_types:CML_BURST_TYPE_T; + } // END of bcType definition. + + leaf excessBurst { + type cml_data_types:CML_UINT32_T; + } // END of excessBurst definition. + + leaf beType { + type cml_data_types:CML_BURST_TYPE_T; + } // END of beType definition. + + leaf confPoliceVal { + type cml_data_types:CML_UINT8_T; + } // END of confPoliceVal definition. + + leaf confAct { + type cml_data_types:CML_CONFORM_ACTION_T; + } // END of confAct definition. + + leaf policeDscp { + type cml_data_types:CML_UINT8_T; + } // END of policeDscp definition. + + leaf exdAct { + type cml_data_types:CML_EXCEED_ACTION_T; + } // END of exdAct definition. + + leaf votPoliceVal { + type cml_data_types:CML_UINT8_T; + } // END of votPoliceVal definition. + + leaf votAct { + type cml_data_types:CML_VIOLATE_ACTION_T; + } // END of votAct definition. + + } // END of police-container definition. + } // End of cos-list + + list cosQueue { + + description + "cos queue values mapping structure in Hierarchical quality of service"; + + config true; + key "CosTblSize"; + + + leaf CosTblSize { + type cml_data_types:CML_INT8_T { + range "0..7"; + } + } // END of CosTblSize definition. + + leaf cosQueueMapTbl { + mandatory true; + type cml_data_types:CML_INT32_T { + range "0..7"; + } + } // END of cosQueueMapTbl definition. + + } // End of cosQueue-list + + list dscpQueue { + + description + "dscp queue values mapping structure in Hierarchical quality of service"; + + config true; + key "DscpTblSize"; + + + leaf DscpTblSize { + type cml_data_types:CML_INT32_T { + range "0..63"; + } + } // END of DscpTblSize definition. + + leaf dscpQueueMapTbl { + mandatory true; + type cml_data_types:CML_INT32_T { + range "0..7"; + } + } // END of dscpQueueMapTbl definition. + + } // End of dscpQueue-list + + list expClass { + if-feature feature_list:HAVE_DIFFSERV; + + description + "mpls exp values mapping structure in Hierarchical quality of service"; + + config true; + key "ExpTblSize"; + + + leaf ExpTblSize { + type cml_data_types:CML_INT32_T { + range "0..7"; + } + } // END of ExpTblSize definition. + + leaf expQueueMapTbl { + mandatory true; + type cml_data_types:CML_INT32_T { + range "0..7"; + } + } // END of expQueueMapTbl definition. + + } // End of expClass-list + + list classExp { + if-feature feature_list:HAVE_DIFFSERV; + + description + "mpls class to exp values mapping structure in Hierarchical quality of service"; + + config true; + key "queueExpTblSize"; + + + leaf queueExpTblSize { + type cml_data_types:CML_INT32_T { + range "0..7"; + } + } // END of queueExpTblSize definition. + + leaf queueExpMapTbl { + mandatory true; + type cml_data_types:CML_INT32_T { + range "0..7"; + } + } // END of queueExpMapTbl definition. + + } // End of classExp-list + container wrrMode { + config true; + + description + "Weighted Round Robin Mode"; + + leaf weightedRound { + type cml_data_types:CML_INT32_T { + range "1..127"; + } + } // END of weightedRound definition. + + leaf nonUnicastQueues { + type cml_data_types:CML_INT32_T { + range "1..127"; + } + } // END of nonUnicastQueues definition. + + } // END of wrrMode-container definition. + container spMode { + config true; + + description + "Strict Priority Mode"; + + leaf unicastQueues { + type cml_data_types:CML_INT32_T { + range "0..1"; + } + } // END of unicastQueues definition. + + leaf spNonUnicastQueues { + type cml_data_types:CML_INT32_T { + range "0..1"; + } + } // END of spNonUnicastQueues definition. + + } // END of spMode-container definition. + } // END of qosGlobal-container definition. + } // END of qos-container definition. + } // END of qos-container definition. + + +} \ No newline at end of file diff --git a/yang-files/igmp.yang b/yang-files/igmp.yang new file mode 100644 index 00000000..38be6a25 --- /dev/null +++ b/yang-files/igmp.yang @@ -0,0 +1,648 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : igmp.yang +* +*/ + +submodule igmp { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + + revision "2017-02-02" { + description "changes for Documentation."; + } + + revision "2017-01-27" { + description "changes for Debug command."; + } + + revision "2017-01-25" { + description "Fix for JIRA-12076 must attribute."; + } + + revision "2016-10-06" { + description "Initial draft version."; + } + + + + grouping mrib4Igmp-grouping { + list mrib4Igmp { + + description + "mrib4Igmp"; + + config true; + key "vrfName"; + + + leaf vrId { + type cml_data_types:CML_INT32_T; + } // END of vrId definition. + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + leaf setSSMEnabledFlag { + type cml_data_types:CML_BOOL_T; + default false; + description "ip igmp"; + } // END of setSSMEnabledFlag definition. + + leaf stateIGMPLimit { + type cml_data_types:CML_UINT32_T { + range "1..2097152"; + } + default "1"; + description "ip igmp limit"; + } // END of stateIGMPLimit definition. + + leaf exceptionAccessList { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of exceptionAccessList definition. + + leaf tosCheck { + type cml_data_types:CML_BOOL_T; + } // END of tosCheck definition. + + leaf igi_num_grecs { + type cml_data_types:CML_UINT32_T; + config false; + } // END of igi_num_grecs definition. + + leaf ssmStaticFlag { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ssmStaticFlag definition. + + leaf debugFlag { + type cml_data_types:CML_IGMP_DEBUG_T; + } // END of debugFlag definition. + + leaf termdebugFlag { + type cml_data_types:CML_IGMP_DEBUG_T; + } // END of termdebugFlag definition. + + + list ssmStatic { + + description + "ssmStatic"; + + config true; + key "staticAccessListName"; + + + leaf staticAccessListName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of staticAccessListName definition. + + leaf-list staticSourceAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of staticSourceAddr definition. + + } // End of ssmStatic-list + } // End of mrib4Igmp-list + } // END of mrib4Igmp-grouping definition. + + + grouping mrib4IgmpInterface-grouping { + list mrib4IgmpInterface { + + description + "IGMP interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf proxyIfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + description "ip igmp mroute-proxy"; + } // END of proxyIfName definition. + + leaf setIGMPIfFlag { + type cml_data_types:CML_BOOL_T; + } // END of setIGMPIfFlag definition. + + leaf lastMaxQueryCount { + type cml_data_types:CML_UINT32_T { + range "2..7"; + } + default "2"; + description "ip igmp last-member-query-count"; + } // END of lastMaxQueryCount definition. + + leaf lastMaxQueryInterval { + type cml_data_types:CML_UINT32_T { + range "1000..25500"; + } + default "1000"; + description "ip igmp last-member-query-interval"; + } // END of lastMaxQueryInterval definition. + + leaf proxyreportInterval { + type cml_data_types:CML_UINT32_T { + range "1000..25500"; + } + default "1000"; + description "ip igmp proxy unsolicited-report-interval"; + } // END of proxyreportInterval definition. + + leaf querierTimeout { + type cml_data_types:CML_UINT16_T { + range "60..300"; + } + default "255"; + description "ip igmp querier-timeout"; + } // END of querierTimeout definition. + + leaf queryInterval { + type cml_data_types:CML_UINT32_T { + range "1..18000"; + } + default "125"; + description "ip igmp query-interval"; + } // END of queryInterval definition. + + leaf startUpQueryInterval { + type cml_data_types:CML_UINT32_T { + range "1..18000"; + } + default "31"; + description "ip igmp startup-query-interval"; + } // END of startUpQueryInterval definition. + + leaf queryCount { + type cml_data_types:CML_UINT32_T { + range "2..10"; + } + default "2"; + description "ip igmp startup-query-count"; + } // END of queryCount definition. + + leaf responseInterval { + type cml_data_types:CML_UINT32_T { + range "1..240"; + } + default "10"; + description "ip igmp querymax-response-time"; + } // END of responseInterval definition. + + leaf robustnessVariableVal { + type cml_data_types:CML_UINT32_T { + range "2..7"; + } + default "2"; + description "ip igmp robustness-variable"; + } // END of robustnessVariableVal definition. + + leaf versionNumber { + type cml_data_types:CML_UINT16_T { + range "1..3"; + } + default "3"; + description "ip igmp version"; + } // END of versionNumber definition. + + leaf setIGMPIfRaFlag { + type cml_data_types:CML_BOOL_T; + description "ip igmp ra-option"; + } // END of setIGMPIfRaFlag definition. + + leaf setIGMPIfOfflinkFlag { + type cml_data_types:CML_BOOL_T; + description "ip igmp offlink"; + } // END of setIGMPIfOfflinkFlag definition. + + leaf setIGMPIfPxyFlag { + type cml_data_types:CML_BOOL_T; + description "ip igmp proxy-service"; + } // END of setIGMPIfPxyFlag definition. + + leaf accessListName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + description "ip igmp access-group"; + } // END of accessListName definition. + + leaf immediateGroupListName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + description "ip igmp immediate-leave"; + } // END of immediateGroupListName definition. + + leaf stateIGMPIFLimit { + type cml_data_types:CML_UINT32_T { + range "1..2097152"; + } + default "1"; + description "ip igmp limit"; + } // END of stateIGMPIFLimit definition. + + leaf ifExceptionAccessList { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + } // END of ifExceptionAccessList definition. + + leaf interfaceName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of interfaceName definition. + + leaf state { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of state definition. + + leaf hostVersion { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of hostVersion definition. + + leaf InternetAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of InternetAddr definition. + + leaf proxyOperationalStatus { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of proxyOperationalStatus definition. + + leaf OtherQuerierAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of OtherQuerierAddr definition. + + leaf ifIndex { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ifIndex definition. + + leaf grpMemInterval { + type cml_data_types:CML_UINT32_T; + config false; + } // END of grpMemInterval definition. + + leaf joinReceivedCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of joinReceivedCount definition. + + leaf leaveReceivedCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of leaveReceivedCount definition. + + leaf stats_igif_num_reports { + type cml_data_types:CML_UINT32_T; + config false; + } // END of stats_igif_num_reports definition. + + leaf stat_igif_num_v1_reports { + type cml_data_types:CML_UINT32_T; + config false; + } // END of stat_igif_num_v1_reports definition. + + leaf stat_igif_num_v3_reports { + type cml_data_types:CML_UINT32_T; + config false; + } // END of stat_igif_num_v3_reports definition. + + leaf interfaceLimit { + type cml_data_types:CML_UINT32_T; + config false; + } // END of interfaceLimit definition. + + leaf limitExceptAccessList { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of limitExceptAccessList definition. + + leaf mcastgCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mcastgCount definition. + + leaf querierState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of querierState definition. + + leaf igmpState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of igmpState definition. + + leaf igif_querier_wcount { + type cml_data_types:CML_UINT16_T; + config false; + } // END of igif_querier_wcount definition. + + leaf igif_num_reports { + type cml_data_types:CML_UINT16_T; + config false; + } // END of igif_num_reports definition. + + + list staticGroup { + + description + "staticGroup"; + + config true; + key "multicastStaticGroupAddr"; + + + leaf multicastStaticGroupAddr { + type cml_data_types:CML_IPV4_ADDR_T; + description "ip igmp static-group"; + } // END of multicastStaticGroupAddr definition. + + leaf isSsmMapped { + type cml_data_types:CML_BOOL_T; + } // END of isSsmMapped definition. + + uses SourceGroup; + } // End of staticGroup-list + + list joinGroup { + + description + "joinGroup"; + + config true; + key "groupAddr"; + + + leaf groupAddr { + type cml_data_types:CML_IPV4_ADDR_T; + description "ip igmp join-group"; + } // END of groupAddr definition. + + uses SourceGroup; + } // End of joinGroup-list + + list ProxyGroup { + + description + "ProxyGroup"; + + config false; + key "ProxyGroupAddr"; + + + leaf ProxyInterfaceName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ProxyInterfaceName definition. + + leaf ProxyGroupAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ProxyGroupAddr definition. + + leaf ProxyGroupMode { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ProxyGroupMode definition. + + leaf ProxyGroupState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ProxyGroupState definition. + + leaf ProxyGroupMemberState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ProxyGroupMemberState definition. + + leaf src_a_tib_addr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of src_a_tib_addr definition. + + leaf src_b_tib_addr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of src_b_tib_addr definition. + + } // End of ProxyGroup-list + } // End of mrib4IgmpInterface-list + } // END of mrib4IgmpInterface-grouping definition. + grouping SourceGroup { + leaf SGInterfaceName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of SGInterfaceName definition. + + leaf groupFlags { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of groupFlags definition. + + leaf groupUpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of groupUpTime definition. + + leaf groupMode { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of groupMode definition. + + leaf groupExpiry { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of groupExpiry definition. + + leaf groupSFlags { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of groupSFlags definition. + + leaf lastReporter { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of lastReporter definition. + + leaf t_igr_v1_host_present { + type cml_data_types:CML_UINT32_T; + config false; + } // END of t_igr_v1_host_present definition. + + leaf t_igr_v2_host_present { + type cml_data_types:CML_UINT32_T; + config false; + } // END of t_igr_v2_host_present definition. + + + list src_a_tib_grp { + + description + "srcCMLSEPaCMLSEPtibCMLSEPgrp"; + + config true; + key "MultisourceAddr"; + + + leaf MultisourceAddr { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of MultisourceAddr definition. + + leaf srcAUpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of srcAUpTime definition. + + leaf srcAExpiry { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of srcAExpiry definition. + + leaf srcAStr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of srcAStr definition. + + leaf srcASFlags { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of srcASFlags definition. + + } // End of src_a_tib_grp-list + + list src_b_tib_grp { + + description + "srcCMLSEPbCMLSEPtibCMLSEPgrp"; + + config false; + key "srcBAddr"; + + + leaf srcBAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of srcBAddr definition. + + leaf srcBUpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of srcBUpTime definition. + + leaf srcBExpiry { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of srcBExpiry definition. + + leaf srcBstr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of srcBstr definition. + + leaf srcBSFlags { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of srcBSFlags definition. + + } // End of src_b_tib_grp-list + } // END of SourceGroup definition. + + +} \ No newline at end of file diff --git a/yang-files/igmpsnooping.yang b/yang-files/igmpsnooping.yang new file mode 100644 index 00000000..ddedb90d --- /dev/null +++ b/yang-files/igmpsnooping.yang @@ -0,0 +1,175 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : igmpsnooping.yang +* +*/ + +submodule igmpsnooping { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + + revision "2017-02-13" { + description "changes for Jira fix-12222."; + } + + revision "2017-02-02" { + description "changes for Documentation."; + } + + revision "2017-01-27" { + description "changes for Debug command."; + } + + revision "2016-10-14" { + description "Initial version."; + } + + + + grouping igmpSnoopInterface-grouping { + list igmpSnoopInterface { + + description + "igmpSnoopInterface"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf setIfFlag { + type cml_data_types:CML_BOOL_T; + description "igmp snooping"; + } // END of setIfFlag definition. + + leaf setFastLeaveFlag { + type cml_data_types:CML_BOOL_T; + description "igmp snooping fast-leave"; + } // END of setFastLeaveFlag definition. + + leaf setIfSuppressFlag { + type cml_data_types:CML_BOOL_T; + description "igmp snooping report-suppression"; + } // END of setIfSuppressFlag definition. + + leaf mrouterIfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "igmp snooping mrouter"; + } // END of mrouterIfName definition. + + leaf ifQuerierFlag { + type cml_data_types:CML_BOOL_T; + description "igmp snooping querier"; + } // END of ifQuerierFlag definition. + + + list igmpSnoopStaticGroup { + + description + "igmpSnoopStaticGroup"; + + config true; + key "groupAddr"; + + + leaf groupAddr { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of groupAddr definition. + + + list igmpSnoopSourceAddress { + + description + "igmpSnoopSourceAddress"; + + config true; + key "sourceAddr"; + + + leaf sourceAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of sourceAddr definition. + + + list igmpSnoopInterface { + + description + "igmpSnoopInterface"; + + config true; + key "vifName"; + + + leaf vifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vifName definition. + + } // End of igmpSnoopInterface-list + } // End of igmpSnoopSourceAddress-list + } // End of igmpSnoopStaticGroup-list + } // End of igmpSnoopInterface-list + } // END of igmpSnoopInterface-grouping definition. + + grouping igmpConfig-grouping { + container igmpConfig { + config true; + + description + "igmpConfig"; + + leaf setSnoopFlag { + type cml_data_types:CML_BOOL_T; + description "igmp snooping"; + } // END of setSnoopFlag definition. + + leaf reportSuppressFlag { + type cml_data_types:CML_BOOL_T; + description "igmp snooping report-suppression"; + } // END of reportSuppressFlag definition. + + leaf debugIgmpSnooping { + type cml_data_types:CML_COMMON_DEBUG_TYPE_T; + description "debug igmp snooping"; + } // END of debugIgmpSnooping definition. + + leaf termdebugIgmpSnooping { + type cml_data_types:CML_COMMON_DEBUG_TYPE_T; + } // END of termdebugIgmpSnooping definition. + + leaf l2UnknownMcast { + type cml_data_types:CML_UNKNOWN_MCAST_T; + default "flood"; + } // END of l2UnknownMcast definition. + + } // END of igmpConfig-container definition. + } // END of igmpConfig-container definition. + + +} \ No newline at end of file diff --git a/yang-files/interface.yang b/yang-files/interface.yang index a03daf5e..d2c30452 100644 --- a/yang-files/interface.yang +++ b/yang-files/interface.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -28,11 +28,32 @@ submodule interface { } description - "Interface"; + "Datamodel for interface object"; - revision "2016-10-20" { - description "Revisied on 2016-10-20."; } + revision "2017-02-23" { + description "hal statistics attribute added in ifStat container."; + } + + revision "2017-02-13" { + description "Add the load balance commands."; + } + + revision "2017-01-28" { + description "Removed extra attributes from datamodel."; + } + + revision "2017-01-20" { + description "mapped attribute name with interface structure."; + } + + revision "2017-01-12" { + description "adding speed and description command."; + } + + revision "2017-01-09" { + description "adding support for auto udpdate of mtu and speed in DB."; + } @@ -40,549 +61,1521 @@ submodule interface { list interface { description - "interface"; + "interface object"; config true; key "ifName"; - leaf vrId { - type cml_data_types:CML_INT32_T; - default "0"; - config true; - } // END of vrId definition. - leaf ifName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "1..33"; + } } // END of ifName definition. - leaf mtu { - type cml_data_types:CML_INT32_T { - range "64..65536"; + leaf origifName { + if-feature feature_list:HAVE_INTERFACE_NAME_MAPPING; + type cml_data_types:CML_STRING_T { + length "1..33"; } - default "1500"; - config true; - } // END of mtu definition. - - leaf macAddr { - type cml_data_types:CML_STRING_T; - config true; - } // END of macAddr definition. - - leaf ipAddr { - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "ip address A.B.C.D/M"; - } // END of ipAddr definition. - - leaf prefixlen { - type cml_data_types:CML_UINT8_T; - config true; - } // END of prefixlen definition. - - leaf ipLabel { - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "ip label"; - } // END of ipLabel definition. - - leaf vrfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of vrfName definition. - - leaf ipForwarding { - type cml_data_types:CML_STRING_T; config false; - } // END of ipForwarding definition. + } // END of origifName definition. - leaf ipv6Forwarding { - type cml_data_types:CML_STRING_T; + leaf mappedIfName { + type cml_data_types:CML_STRING_T { + length "1..33"; + } config false; - } // END of ipv6Forwarding definition. - - leaf mauType { - type cml_data_types:CML_MAUTYPE_T; - default "dot3MauType0dot0"; - config true; - } // END of mauType definition. - - leaf duplex { - type cml_data_types:CML_DUPLEX_T; - default "auto"; - config true; - } // END of duplex definition. - - leaf maxBandwidthStr { - if-feature feature_list:HAVE_TE; - type cml_data_types:CML_STRING_T; - default "0"; - config true; - } // END of maxBandwidthStr definition. + } // END of mappedIfName definition. - leaf reservableBandwidthStr { - if-feature feature_list:HAVE_TE; - type cml_data_types:CML_STRING_T; - default "0"; - config true; - } // END of reservableBandwidthStr definition. - - leaf adminGrpName { - if-feature feature_list:HAVE_TE; - type cml_data_types:CML_STRING_T; - config true; - } // END of adminGrpName definition. - - leaf bandwidthConstraintMode { - type cml_data_types:CML_STRING_T; - config true; - } // END of bandwidthConstraintMode definition. - - leaf linkStatus { - type cml_data_types:CML_BOOL_T; - default false; - config true; - } // END of linkStatus definition. + leaf ifIndex { + type cml_data_types:CML_INT32_T; + config false; + } // END of ifIndex definition. leaf switchportStatus { type cml_data_types:CML_BOOL_T; default false; - config true; } // END of switchportStatus definition. - leaf adminState { + leaf shutdownFlag { type cml_data_types:CML_BOOL_T; default false; - config true; - } // END of adminState definition. + } // END of shutdownFlag definition. leaf multicast { type cml_data_types:CML_BOOL_T; - config true; } // END of multicast definition. - leaf speed { - type cml_data_types:CML_STRING_T; - config true; - } // END of speed definition. - - leaf desc { - type cml_data_types:CML_STRING_T; - config true; - } // END of desc definition. - - leaf labelSwitching { - type cml_data_types:CML_BOOL_T; - config true; - } // END of labelSwitching definition. - leaf isRunning { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_BOOL_T; config false; } // END of isRunning definition. - leaf rpfType { - type cml_data_types:CML_STRING_T; - config false; - } // END of rpfType definition. - - leaf adminRunState { - type cml_data_types:CML_INTERFACE_ADMIN_STATE_T; - config false; - } // END of adminRunState definition. + leaf proxyArp { + type cml_data_types:CML_BOOL_T; + } // END of proxyArp definition. - leaf dhcpConfigured { + leaf ifMetric { type cml_data_types:CML_INT32_T; config false; - } // END of dhcpConfigured definition. - - leaf gmplsType { - type cml_data_types:CML_STRING_T; - config false; - } // END of gmplsType definition. + } // END of ifMetric definition. - leaf vrfId { - type cml_data_types:CML_INT32_T; - config false; - } // END of vrfId definition. + leaf mtu { + type cml_data_types:CML_INT32_T { + range "64..65536"; + } + default "1500"; + } // END of mtu definition. - leaf multipathNum { - type cml_data_types:CML_INT32_T; - config false; - } // END of multipathNum definition. + leaf duplex { + type cml_data_types:CML_DUPLEX_T; + default "auto"; + } // END of duplex definition. - leaf routeTotal { - type cml_data_types:CML_UINT32_T; + leaf defaultDuplex { + type cml_data_types:CML_UINT8_T; config false; - } // END of routeTotal definition. + } // END of defaultDuplex definition. - leaf counterFib { - type cml_data_types:CML_UINT32_T; + leaf autoNego { + type cml_data_types:CML_INT64_T; config false; - } // END of counterFib definition. + } // END of autoNego definition. - leaf ip6Addr { - type cml_data_types:CML_STRING_T; + leaf defaultAutoNego { + type cml_data_types:CML_UINT8_T; config false; - } // END of ip6Addr definition. + } // END of defaultAutoNego definition. - leaf ingressfilterStatus { - type cml_data_types:CML_STRING_T; - config false; - } // END of ingressfilterStatus definition. + leaf flowcontrolRcv { + type cml_data_types:CML_FLOWCTRL_T; + default "off"; + } // END of flowcontrolRcv definition. - leaf frameTypes { - type cml_data_types:CML_STRING_T; - config false; - } // END of frameTypes definition. + leaf flowcontrolSend { + type cml_data_types:CML_FLOWCTRL_T; + default "off"; + } // END of flowcontrolSend definition. - leaf nativeVlan { + leaf autonegBitsAdvt { type cml_data_types:CML_UINT32_T; config false; - } // END of nativeVlan definition. + } // END of autonegBitsAdvt definition. - leaf defaultVlan { - type cml_data_types:CML_UINT32_T; + leaf autonegFaultAdvt { + type cml_data_types:CML_UINT8_T; config false; - } // END of defaultVlan definition. + } // END of autonegFaultAdvt definition. - leaf confVlan { + leaf mdix { type cml_data_types:CML_UINT32_T; config false; - } // END of confVlan definition. + } // END of mdix definition. - leaf vId { - type cml_data_types:CML_INT32_T; - config false; - } // END of vId definition. + leaf arpAgeingTimeout { + type cml_data_types:CML_UINT32_T { + range "1..3000"; + } + default "3000"; + } // END of arpAgeingTimeout definition. - leaf transvId { - type cml_data_types:CML_INT32_T; + leaf slotId { + type cml_data_types:CML_UINT32_T; config false; - } // END of transvId definition. + } // END of slotId definition. leaf hwType { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of hwType definition. leaf hwAddr { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "1..20"; + } } // END of hwAddr definition. - leaf staticFlag { - type cml_data_types:CML_STRING_T; + leaf hwAddrLen { + type cml_data_types:CML_INT32_T; config false; - } // END of staticFlag definition. + } // END of hwAddrLen definition. + + leaf speed { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of speed definition. + + leaf isAutospeed { + if-feature feature_list:HAVE_BROADCOM; + type cml_data_types:CML_BOOL_T; + default false; + } // END of isAutospeed definition. - leaf interfaceDesc { - type cml_data_types:CML_STRING_T; + leaf defaultSpeed { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of interfaceDesc definition. + description "interface default link speed, bytes/s"; + } // END of defaultSpeed definition. - leaf autoNeg { - type cml_data_types:CML_STRING_T; + leaf maxSpeed { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of autoNeg definition. + description "interface default max link speed, bytes/s"; + } // END of maxSpeed definition. - leaf vrxFlag { - type cml_data_types:CML_STRING_T; + leaf bandwidth { + if-feature feature_list:HAVE_TE; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "0"; + } // END of bandwidth definition. + + leaf snmpTrapLinkStatus { + type cml_data_types:CML_BOOL_T; + default false; + } // END of snmpTrapLinkStatus definition. + + leaf fec { + type cml_data_types:CML_UINT8_T; config false; - } // END of vrxFlag definition. + } // END of fec definition. - leaf maxlabelValue { + leaf trapLinkup { + if-feature feature_list:HAVE_SNMP_AGENT; type cml_data_types:CML_INT32_T; config false; - } // END of maxlabelValue definition. + } // END of trapLinkup definition. - leaf ifoutputErrors { - type cml_data_types:CML_STRING_T; + leaf trapLinkdown { + if-feature feature_list:HAVE_SNMP_AGENT; + type cml_data_types:CML_INT32_T; config false; - } // END of ifoutputErrors definition. + } // END of trapLinkdown definition. - leaf ifCollisions { - type cml_data_types:CML_STRING_T; + leaf ifNameAlias { + type cml_data_types:CML_STRING_T { + length "1..33"; + } config false; - } // END of ifCollisions definition. + } // END of ifNameAlias definition. - leaf servString { - type cml_data_types:CML_STRING_T; + leaf bandwidthConfFlags { + type cml_data_types:CML_INT16_T; config false; - } // END of servString definition. + description "Has the bandwidth been configured/read from kernel"; + } // END of bandwidthConfFlags definition. - leaf vcgroupName { - type cml_data_types:CML_STRING_T; - config false; - } // END of vcgroupName definition. + leaf description { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of description definition. - leaf bwconstraintMode { - type cml_data_types:CML_STRING_T; - config false; - } // END of bwconstraintMode definition. + leaf esi { + if-feature feature_list:HAVE_NVO; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of esi definition. - leaf classtypeNumber { - type cml_data_types:CML_STRING_T; - config false; - } // END of classtypeNumber definition. + leaf mauDefaultType { + if-feature feature_list:HAVE_L2; + type cml_data_types:CML_MAUTYPE_T; + } // END of mauDefaultType definition. - leaf teclpriorityBw { - type cml_data_types:CML_STRING_T; + leaf ipDHCPAddr { + if-feature feature_list:HAVE_DHCP_CLIENT; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; config false; - } // END of teclpriorityBw definition. + } // END of ipDHCPAddr definition. - leaf ifinputStats { - type cml_data_types:CML_STRING_T; + leaf ipv6DHCPAddr { + if-feature feature_list:HAVE_DHCP_CLIENT; + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; config false; - } // END of ifinputStats definition. + } // END of ipv6DHCPAddr definition. - leaf ifoutputStats { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifoutputStats definition. + leaf ipAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + description "ip address A.B.C.D/M"; + } // END of ipAddr definition. - leaf ifinputErrors { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifinputErrors definition. + leaf prefixlen { + type cml_data_types:CML_UINT8_T; + } // END of prefixlen definition. - leaf ifIndex { - type cml_data_types:CML_INT32_T; - config false; - } // END of ifIndex definition. + leaf ipLabel { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + description "ip label"; + } // END of ipLabel definition. - leaf ifMetric { - type cml_data_types:CML_INT32_T; - config false; - } // END of ifMetric definition. + leaf unnumberedIpv4 { + if-feature feature_list:HAVE_NSM_IF_UNNUMBERED; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of unnumberedIpv4 definition. - leaf arpageingTimeout { - type cml_data_types:CML_INT32_T; - config false; - } // END of arpageingTimeout definition. + leaf remoteAddr { + if-feature feature_list:HAVE_NSM_IF_UNNUMBERED; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteAddr definition. - leaf labelSpace { - type cml_data_types:CML_INT32_T; - config false; - } // END of labelSpace definition. + leaf unnumberedIpv6 { + if-feature feature_list:HAVE_NSM_IF_UNNUMBERED; + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of unnumberedIpv6 definition. - leaf minlabelValue { - type cml_data_types:CML_INT32_T; - config false; - } // END of minlabelValue definition. + leaf vrfName { + if-feature feature_list:HAVE_VRF; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. - leaf fromLabel { - type cml_data_types:CML_STRING_T; - config false; - } // END of fromLabel definition. + leaf vrName { + if-feature feature_list:HAVE_VR; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrName definition. - leaf toLabel { - type cml_data_types:CML_STRING_T; + leaf loadInterval { + type cml_data_types:CML_UINT16_T; config false; - } // END of toLabel definition. + } // END of loadInterval definition. - leaf vplsName { - type cml_data_types:CML_STRING_T; - config false; - } // END of vplsName definition. + leaf maxReservableBandwidth { + if-feature feature_list:HAVE_TE; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "0"; + } // END of maxReservableBandwidth definition. - leaf vcName { - type cml_data_types:CML_STRING_T; + leaf rdmBwConstraint { + if-feature feature_list:HAVE_TE; + if-feature feature_list:HAVE_DSTE; + type cml_data_types:CML_INT64_T; config false; - } // END of vcName definition. + description "Bandwidth constraint for RDM per class types(bytes per s)"; + } // END of rdmBwConstraint definition. - leaf vcType { - type cml_data_types:CML_STRING_T; + leaf teclPriorityBw { + if-feature feature_list:HAVE_TE; + type cml_data_types:CML_INT64_T; config false; - } // END of vcType definition. + description "Available bandwidth at priority p, 0 <= p < 8"; + } // END of teclPriorityBw definition. - leaf mplsClassTypeName { - type cml_data_types:CML_STRING_T; + leaf bindInfo { + type cml_data_types:CML_UINT8_T; config false; - } // END of mplsClassTypeName definition. + description "Bind information vrf, mpls_vc, mpls_vc_vlan, vpls, vpls_vlan, vxlan, nvgre"; + } // END of bindInfo definition. - leaf mplsclasstypeNumber { - type cml_data_types:CML_INT32_T; - config false; - } // END of mplsclasstypeNumber definition. + leaf bcMode { + if-feature feature_list:HAVE_DSTE; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bcMode definition. - leaf mplsPriority { - type cml_data_types:CML_INT32_T; + leaf vrxFlag { + if-feature feature_list:HAVE_VRX; + type cml_data_types:CML_UINT8_T; config false; - } // END of mplsPriority definition. + } // END of vrxFlag definition. - leaf mplsteclassId { - type cml_data_types:CML_STRING_T; + leaf localSrc { + if-feature feature_list:HAVE_VRX; + type cml_data_types:CML_UINT8_T; config false; - } // END of mplsteclassId definition. + } // END of localSrc definition. - leaf ifinputPkts { - type cml_data_types:CML_UINT32_T; + leaf ifLastChange { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of ifinputPkts definition. + } // END of ifLastChange definition. - leaf ifinputOctets { - type cml_data_types:CML_UINT32_T; + leaf ifLastFlap { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of ifinputOctets definition. + } // END of ifLastFlap definition. - leaf ifinputDrops { - type cml_data_types:CML_UINT32_T; + leaf ifLastCounterClear { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of ifinputDrops definition. + } // END of ifLastCounterClear definition. - leaf ifinputmcastPkts { - type cml_data_types:CML_UINT32_T; + leaf interfaceType { + type cml_data_types:CML_INTERFACE_TYPE_T; config false; - } // END of ifinputmcastPkts definition. + description "Interface type L2, L3, TDM"; + } // END of interfaceType definition. - leaf ifbadCrc { - type cml_data_types:CML_UINT32_T; + leaf trustState { + if-feature feature_list:HAVE_QOS; + type cml_data_types:CML_INT32_T; config false; - } // END of ifbadCrc definition. + } // END of trustState definition. - leaf ifundersizedPkts { - type cml_data_types:CML_UINT32_T; + leaf ipv6Status { + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_BOOL_T; config false; - } // END of ifundersizedPkts definition. + description "IPv6 capability status"; + } // END of ipv6Status definition. - leaf ifoutputPkts { - type cml_data_types:CML_UINT32_T; + leaf ipv6Forwarding { + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_BOOL_T; config false; - } // END of ifoutputPkts definition. + } // END of ipv6Forwarding definition. - leaf ifoutputOctets { - type cml_data_types:CML_UINT32_T; + leaf ipv4Status { + type cml_data_types:CML_BOOL_T; config false; - } // END of ifoutputOctets definition. + description "IPv4 capability status"; + } // END of ipv4Status definition. - leaf ifoutputDrops { - type cml_data_types:CML_UINT32_T; + leaf mpgIf { + if-feature feature_list:HAVE_TFO; + type cml_data_types:CML_UINT64_T; config false; - } // END of ifoutputDrops definition. + } // END of mpgIf definition. - leaf ifoutputBcastPkts { + leaf tfoLinkType { + if-feature feature_list:HAVE_TFO; type cml_data_types:CML_UINT32_T; config false; - } // END of ifoutputBcastPkts definition. + } // END of tfoLinkType definition. - leaf ifoversizedPkts { - type cml_data_types:CML_UINT32_T; + leaf udldFlushTx { + if-feature feature_list:HAVE_UDLD; + type cml_data_types:CML_UINT16_T; config false; - } // END of ifoversizedPkts definition. + } // END of udldFlushTx definition. - leaf ifoutputmcastPkts { - type cml_data_types:CML_UINT32_T; + leaf macLearnLimit { + type cml_data_types:CML_INT32_T; config false; - } // END of ifoutputmcastPkts definition. + } // END of macLearnLimit definition. + + leaf jitterBuffer { + if-feature feature_list:HAVE_TDM_VC; + type cml_data_types:CML_UINT16_T { + range "1..500"; + } + default "500"; + } // END of jitterBuffer definition. + + leaf payLoadBytes { + if-feature feature_list:HAVE_TDM_VC; + type cml_data_types:CML_UINT32_T { + range "0..32768"; + } + default "0"; + } // END of payLoadBytes definition. + + leaf rtpHeader { + if-feature feature_list:HAVE_TDM_VC; + type cml_data_types:CML_BOOL_T; + default false; + } // END of rtpHeader definition. + + leaf portBreakout { + if-feature feature_list:HAVE_FLEXPORT; + type cml_data_types:CML_NSM_BREAKOUT_TYPE_T; + default "4X10g"; + } // END of portBreakout definition. + + leaf portBundle { + if-feature feature_list:HAVE_FLEXPORT; + type cml_data_types:CML_BOOL_T; + default false; + } // END of portBundle definition. list secondary { description - "IPv4 Address"; + "Secondary IPv4 Address"; config true; key "secIpAddr"; leaf secIpAddr { - type cml_data_types:CML_IPV4_PREFIX_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of secIpAddr definition. - leaf prefixlen { - type cml_data_types:CML_UINT8_T; - config true; - } // END of prefixlen definition. - leaf secondaryFlag { mandatory true; type cml_data_types:CML_BOOL_T; - config true; } // END of secondaryFlag definition. leaf ipLabel { mandatory true; - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of ipLabel definition. } // End of secondary-list + list ipv6Addr { + if-feature feature_list:HAVE_IPV6; + + description + "IPv6 Address"; + + config true; + key "ipv6Addr"; + + + leaf ipv6Addr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ipv6Addr definition. + + leaf anycast { + type cml_data_types:CML_BOOL_T; + default false; + } // END of anycast definition. + + } // End of ipv6Addr-list + list bandwidthConstraint { if-feature feature_list:HAVE_TE; + if-feature feature_list:HAVE_DSTE; description - "set bandwidth constraint"; + "Bandwidth constraint per class types (bytes per s)"; config true; key "constraintName"; leaf constraintName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of constraintName definition. leaf bandwidthStr { mandatory true; if-feature feature_list:HAVE_TE; type cml_data_types:CML_STRING_T { - length "1..10000000000"; + length "0..255"; } - config true; } // END of bandwidthStr definition. } // End of bandwidthConstraint-list - list ipv6Addr { - + list errorSet { + if-feature feature_list:HAVE_TDM_VC; + description - "IPv6 Address"; + "errorSet"; config true; - key "ipv6Addr"; + key "errorSetType"; - leaf ipv6Addr { - type cml_data_types:CML_STRING_T; - config true; - } // END of ipv6Addr definition. + leaf errorSetType { + type cml_data_types:CML_ERROR_SET_TYPE_T; + } // END of errorSetType definition. - leaf anycast { + leaf errorSetPeriod { mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of anycast definition. + type cml_data_types:CML_UINT32_T { + range "2000..10000"; + } + } // END of errorSetPeriod definition. - } // End of ipv6Addr-list + } // End of errorSet-list + + list errorClear { + if-feature feature_list:HAVE_TDM_VC; - list ipRouteSummary { - description - "ipRouteSummary"; + "errorClear"; - config false; - key "routeType"; + config true; + key "errorClearType"; - leaf routeType { - type cml_data_types:CML_STRING_T; + leaf errorClearType { + type cml_data_types:CML_ERROR_CLEAR_TYPE_T; + } // END of errorClearType definition. + + leaf errorClearPeriod { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "2000..10000"; + } + } // END of errorClearPeriod definition. + + } // End of errorClear-list + container stormControl { + config true; + + description + "Storm Control Features"; + + leaf stormControlSet { + type cml_data_types:CML_STROM_CTRL_FLAG_T; + } // END of stormControlSet definition. + + leaf level { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default ""; + } // END of level definition. + + leaf fraction { + type cml_data_types:CML_INT32_T; config false; - } // END of routeType definition. + } // END of fraction definition. - leaf counterType { - type cml_data_types:CML_UINT32_T; + leaf rateLimitType { + type cml_data_types:CML_INT32_T; config false; - } // END of counterType definition. + } // END of rateLimitType definition. + + } // END of stormControl-container definition. + container ifStat { + config false; + + description + "interface Statistics fields"; + + leaf rxPackets { + type cml_data_types:CML_UINT32_T; + } // END of rxPackets definition. + + leaf txPackets { + type cml_data_types:CML_UINT32_T; + } // END of txPackets definition. + + leaf rxbytes { + type cml_data_types:CML_UINT64_T; + } // END of rxbytes definition. + + leaf txbytes { + type cml_data_types:CML_UINT64_T; + } // END of txbytes definition. + + leaf rxerrors { + type cml_data_types:CML_UINT32_T; + } // END of rxerrors definition. + + leaf txerrors { + type cml_data_types:CML_UINT32_T; + } // END of txerrors definition. + + leaf rxdropped { + type cml_data_types:CML_UINT32_T; + } // END of rxdropped definition. + + leaf txdropped { + type cml_data_types:CML_UINT32_T; + } // END of txdropped definition. + + leaf rxmulticast { + type cml_data_types:CML_UINT32_T; + } // END of rxmulticast definition. + + leaf rxcompressed { + type cml_data_types:CML_UINT32_T; + } // END of rxcompressed definition. + + leaf txcompressed { + type cml_data_types:CML_UINT32_T; + } // END of txcompressed definition. + + leaf collisions { + type cml_data_types:CML_UINT32_T; + } // END of collisions definition. + + leaf urpfDropped { + type cml_data_types:CML_UINT32_T; + } // END of urpfDropped definition. + + leaf rxLengthErrors { + type cml_data_types:CML_UINT32_T; + } // END of rxLengthErrors definition. + + leaf rxOverErrors { + type cml_data_types:CML_UINT32_T; + } // END of rxOverErrors definition. + + leaf rxCrcErrors { + type cml_data_types:CML_UINT32_T; + } // END of rxCrcErrors definition. - } // End of ipRouteSummary-list + leaf rxFrameErrors { + type cml_data_types:CML_UINT32_T; + } // END of rxFrameErrors definition. + + leaf rxFifoErrors { + type cml_data_types:CML_UINT32_T; + } // END of rxFifoErrors definition. + + leaf rxMissedErrors { + type cml_data_types:CML_UINT32_T; + } // END of rxMissedErrors definition. + + leaf txAbortedErrors { + type cml_data_types:CML_UINT32_T; + } // END of txAbortedErrors definition. + + leaf txCarrierErrors { + type cml_data_types:CML_UINT32_T; + } // END of txCarrierErrors definition. + + leaf txFifoErrors { + type cml_data_types:CML_UINT32_T; + } // END of txFifoErrors definition. + + leaf txHeartbeatErrors { + type cml_data_types:CML_UINT32_T; + } // END of txHeartbeatErrors definition. + + leaf txWindowErrors { + type cml_data_types:CML_UINT32_T; + } // END of txWindowErrors definition. + + leaf outErrors { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of outErrors definition. + + leaf outDiscards { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of outDiscards definition. + + leaf outMcPkts { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of outMcPkts definition. + + leaf outUcPkts { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of outUcPkts definition. + + leaf inUcPkts { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of inUcPkts definition. + + leaf inDiscards { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of inDiscards definition. + + leaf goodOctetsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of goodOctetsRcv definition. + + leaf badOctetsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of badOctetsRcv definition. + + leaf macTransmitErr { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of macTransmitErr definition. + + leaf goodPktsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of goodPktsRcv definition. + + leaf badPktsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of badPktsRcv definition. + + leaf pktsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pktsRcv definition. + + leaf brdcPktsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of brdcPktsRcv definition. + + leaf mcPktsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of mcPktsRcv definition. + + leaf pkts64OctetsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts64OctetsRcv definition. + + leaf pkts65127OctetsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts65127OctetsRcv definition. + + leaf pkts128255OctetsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts128255OctetsRcv definition. + + leaf pkts256511OctetsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts256511OctetsRcv definition. + + leaf pkts5121023OctetsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts5121023OctetsRcv definition. + + leaf pkts10241518OctetsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts10241518OctetsRcv definition. + + leaf pkts15192047OctetsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts15192047OctetsRcv definition. + + leaf pkts20484095OctetsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts20484095OctetsRcv definition. + + leaf pkts40969216OctetsRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts40969216OctetsRcv definition. + + leaf pkts64Octets { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts64Octets definition. + + leaf pkts65127Octets { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts65127Octets definition. + + leaf pkts128255Octets { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts128255Octets definition. + + leaf pkts256511Octets { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts256511Octets definition. + + leaf pkts5121023Octets { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts5121023Octets definition. + + leaf pkts1024maxOctets { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts1024maxOctets definition. + + leaf pkts15192047Octets { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts15192047Octets definition. + + leaf pkts20484095Octets { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts20484095Octets definition. + + leaf pkts40969216Octets { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of pkts40969216Octets definition. + + leaf goodOctetsSent { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of goodOctetsSent definition. + + leaf goodPktsSent { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of goodPktsSent definition. + + leaf excessiveCollisions { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of excessiveCollisions definition. + + leaf mcPktsSent { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of mcPktsSent definition. + + leaf brdcPktsSent { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of brdcPktsSent definition. + + leaf unrecogMacCntrRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of unrecogMacCntrRcv definition. + + leaf fcSent { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of fcSent definition. + + leaf goodFcRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of goodFcRcv definition. + + leaf dropEvents { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of dropEvents definition. + + leaf undersizePkts { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of undersizePkts definition. + + leaf fragmentsPkts { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of fragmentsPkts definition. + + leaf oversizePkts { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of oversizePkts definition. + + leaf jabberPkts { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of jabberPkts definition. + + leaf macRcvRrror { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of macRcvRrror definition. + + leaf macRcvError { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of macRcvError definition. + + leaf badCrc { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of badCrc definition. + + leaf dribble { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of dribble definition. + + leaf collisionsState { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of collisionsState definition. + + leaf lateCollisions { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of lateCollisions definition. + + leaf deferredTx { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of deferredTx definition. + + leaf badFcRcv { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of badFcRcv definition. + + leaf portInoverflowFrames { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of portInoverflowFrames definition. + + leaf portOutOverflowFrames { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of portOutOverflowFrames definition. + + leaf portInOverflowDiscards { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of portInOverflowDiscards definition. + + leaf inFiltered { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of inFiltered definition. + + leaf outFiltered { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of outFiltered definition. + + leaf mtuExceed { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of mtuExceed definition. + + leaf inJumbo { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of inJumbo definition. + + leaf outJumbo { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of outJumbo definition. + + leaf rxPktRate { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of rxPktRate definition. + + leaf rxBitRate { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of rxBitRate definition. + + leaf txPktRate { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of txPktRate definition. + + leaf txBitRate { + if-feature feature_list:HAVE_BROADCOM; + if-feature feature_list:HAVE_HAL; + type cml_data_types:CML_UINT64_T; + } // END of txBitRate definition. + + } // END of ifStat-container definition. + container prefixSegment { + if-feature feature_list:HAVE_SR; + config true; + + description + "prefix segment"; + + leaf sid { + type cml_data_types:CML_SR_SID_T; + } // END of sid definition. + + leaf expNull { + type cml_data_types:CML_SR_PREFIX_FLAG_T; + } // END of expNull definition. + + leaf nFlagClear { + type cml_data_types:CML_SR_N_FLAG_CLEAR_T; + } // END of nFlagClear definition. + + } // END of prefixSegment-container definition. } // End of interface-list } // END of interface-grouping definition. + grouping nsmMaster-grouping { + list nsmMaster { + + description + "Global configs for router"; + + config true; + key "vrId"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + } // END of vrId definition. + + leaf routerId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of routerId definition. + + leaf filterType { + type cml_data_types:CML_QOS_FILTER_TYPE_T; + } // END of filterType definition. + + leaf qosType { + type cml_data_types:CML_ENABLE_DISABLE_T; + } // END of qosType definition. + + leaf enableIpForwarding { + type cml_data_types:CML_BOOL_T; + } // END of enableIpForwarding definition. + + leaf enableIpv6Forwarding { + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_BOOL_T; + } // END of enableIpv6Forwarding definition. + + leaf icmpBroadcast { + type cml_data_types:CML_BOOL_T; + } // END of icmpBroadcast definition. + + leaf hardwareProfilePortMode { + if-feature feature_list:HAVE_FLEXPORT; + type cml_data_types:CML_NSM_HARDWARE_PORTMODE_T; + } // END of hardwareProfilePortMode definition. + + leaf hardwareProfilePortModeBundle { + if-feature feature_list:HAVE_FLEXPORT; + type cml_data_types:CML_NSM_HARDWARE_PROFILE_PORTMODE_BUNDLE_T; + } // END of hardwareProfilePortModeBundle definition. + + + list vrf { + + description + "vrf"; + + config true; + key "vrfName"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + leaf ipVrfForwarding { + type cml_data_types:CML_BOOL_T; + } // END of ipVrfForwarding definition. + + leaf ipv6VrfForwarding { + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_BOOL_T; + } // END of ipv6VrfForwarding definition. + + leaf icmpVrfBroadcast { + type cml_data_types:CML_BOOL_T; + } // END of icmpVrfBroadcast definition. + + } // End of vrf-list + container srNsm { + if-feature feature_list:HAVE_SR; + config true; + + description + "srNsm"; + + leaf baseSid { + type cml_data_types:CML_UINT32_T { + range "16000..23999"; + } + } // END of baseSid definition. + + leaf last { + type cml_data_types:CML_UINT32_T { + range "16000..23999"; + } + } // END of last definition. + + } // END of srNsm-container definition. + container errdisable { + config true; + + description + "Error Disable Configuration"; + + leaf errdisableReason { + type cml_data_types:CML_NSM_ERR_REASON_T; + } // END of errdisableReason definition. + + leaf errdisableTimeout { + type cml_data_types:CML_NSM_ERR_DISABLE_TIMEOUT_T; + } // END of errdisableTimeout definition. + + leaf errdisableTimeoutInterval { + type cml_data_types:CML_UINT32_T { + range "10..1000000"; + } + } // END of errdisableTimeoutInterval definition. + + } // END of errdisable-container definition. + container arpEntry { + config true; + + description + "arpEntry"; + + + list staticArpList { + + description + "staticArpList"; + + config true; + key "arpAddr"; + + + leaf arpAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of arpAddr definition. + + leaf macAddr { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of macAddr definition. + + leaf isArpProxy { + mandatory true; + type cml_data_types:CML_BOOL_T; + } // END of isArpProxy definition. + + } // End of staticArpList-list + + list ipv6StaticNbrTable { + if-feature feature_list:HAVE_L3; + if-feature feature_list:HAVE_IPV6; + + description + "ipv6StaticNbrTable"; + + config true; + key "nbrAddr"; + + + leaf nbrAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nbrAddr definition. + + leaf ifName { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf macAddr { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of macAddr definition. + + } // End of ipv6StaticNbrTable-list + } // END of arpEntry-container definition. + container load-balance { + if-feature feature_list:HAVE_BROADCOM; + config true; + + description + "Load Balancing"; + + leaf loadBalance { + type cml_data_types:CML_BOOL_T; + } // END of loadBalance definition. + + container l2 { + if-feature feature_list:HAVE_L2; + config true; + + description + "Load balancing on L2 packet"; + + leaf l2destMac { + type cml_data_types:CML_BOOL_T; + } // END of l2destMac definition. + + leaf l2srcMac { + type cml_data_types:CML_BOOL_T; + } // END of l2srcMac definition. + + leaf l2etherType { + type cml_data_types:CML_BOOL_T; + } // END of l2etherType definition. + + leaf l2vlan { + type cml_data_types:CML_BOOL_T; + } // END of l2vlan definition. + + } // END of l2-container definition. + container l3Ipv4 { + if-feature feature_list:HAVE_L3; + config true; + + description + "Load balancing on L2 packet"; + + leaf l3srcIpv4 { + type cml_data_types:CML_BOOL_T; + } // END of l3srcIpv4 definition. + + leaf l3destIpv4 { + type cml_data_types:CML_BOOL_T; + } // END of l3destIpv4 definition. + + leaf l3srcl4Port { + type cml_data_types:CML_BOOL_T; + } // END of l3srcl4Port definition. + + leaf l3destl4Port { + type cml_data_types:CML_BOOL_T; + } // END of l3destl4Port definition. + + leaf l3protocolId { + type cml_data_types:CML_BOOL_T; + } // END of l3protocolId definition. + + } // END of l3Ipv4-container definition. + container l3Ipv6 { + if-feature feature_list:HAVE_L3; + config true; + + description + "Load balancing on L2 packet"; + + leaf l3srcIpv6 { + type cml_data_types:CML_BOOL_T; + } // END of l3srcIpv6 definition. + + leaf l3destIpv6 { + type cml_data_types:CML_BOOL_T; + } // END of l3destIpv6 definition. + + leaf l3srcl4Port { + type cml_data_types:CML_BOOL_T; + } // END of l3srcl4Port definition. + + leaf l3destl4Port { + type cml_data_types:CML_BOOL_T; + } // END of l3destl4Port definition. + + leaf l3nextHdr { + type cml_data_types:CML_BOOL_T; + } // END of l3nextHdr definition. + + } // END of l3Ipv6-container definition. + container tunnel { + if-feature feature_list:HAVE_L3; + config true; + + description + "Load balancing on L2 packet"; + + leaf outerl3Header { + type cml_data_types:CML_BOOL_T; + } // END of outerl3Header definition. + + } // END of tunnel-container definition. + container trill { + if-feature feature_list:HAVE_TRILLD; + config true; + + description + "Load balancing on L2 packet"; + + leaf trill { + type cml_data_types:CML_NSM_LOAD_TRILL_T; + } // END of trill definition. + + } // END of trill-container definition. + container vxlan { + if-feature feature_list:HAVE_VXLAN; + config true; + + description + "Load balancing on L2 packet"; + + leaf innerL2 { + type cml_data_types:CML_BOOL_T; + } // END of innerL2 definition. + + leaf innerL3 { + type cml_data_types:CML_BOOL_T; + } // END of innerL3 definition. + + } // END of vxlan-container definition. + container mpls-ler-l2 { + if-feature feature_list:HAVE_MPLS; + config true; + + description + "Load balancing on L2 packet"; + + leaf mplsdestMac { + type cml_data_types:CML_BOOL_T; + } // END of mplsdestMac definition. + + leaf mplssrcMac { + type cml_data_types:CML_BOOL_T; + } // END of mplssrcMac definition. + + leaf mplsetherType { + type cml_data_types:CML_BOOL_T; + } // END of mplsetherType definition. + + leaf mplsvlan { + type cml_data_types:CML_BOOL_T; + } // END of mplsvlan definition. + + } // END of mpls-ler-l2-container definition. + container mpls-ler { + if-feature feature_list:HAVE_MPLS; + config true; + + description + "Load balancing on L2 packet"; + + leaf mplssrcIpv6 { + type cml_data_types:CML_BOOL_T; + } // END of mplssrcIpv6 definition. + + leaf mplsdestIpv6 { + type cml_data_types:CML_BOOL_T; + } // END of mplsdestIpv6 definition. + + leaf mplssrcl4Port { + type cml_data_types:CML_BOOL_T; + } // END of mplssrcl4Port definition. + + leaf mplsdestl4Port { + type cml_data_types:CML_BOOL_T; + } // END of mplsdestl4Port definition. + + leaf mplsprotocolId { + type cml_data_types:CML_BOOL_T; + } // END of mplsprotocolId definition. + + } // END of mpls-ler-container definition. + } // END of load-balance-container definition. + } // End of nsmMaster-list + } // END of nsmMaster-grouping definition. + + } \ No newline at end of file diff --git a/yang-files/isis.yang b/yang-files/isis.yang new file mode 100644 index 00000000..39f10f36 --- /dev/null +++ b/yang-files/isis.yang @@ -0,0 +1,2656 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : isis.yang +* +*/ + +submodule isis { + + belongs-to ZebOS { prefix ZebOS; } + include vr; + include interface; + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "Intermediate System - Intermediate System (IS-IS)"; + + + revision "2017-02-23" { + description "Fix for JIRA-13270(redistribute)."; + } + + revision "2017-02-20" { + description "Fix for JIRA-13184(GET)."; + } + + revision "2017-02-11" { + description "Fix for JIRA-13313."; + } + + revision "2017-02-08" { + description "Fix for JIRA-13180."; + } + + revision "2017-02-02" { + description "Fix for JIRA-12951(metric-style wide)."; + } + + revision "2017-01-27" { + description "Fix for JIRA-13035,13036,13065."; + } + + revision "2017-01-10" { + description "Fix for JIRA-12495."; + } + + revision "2016-12-29" { + description "debug CLI's are changed as per backend CLI's."; + } + + revision "2016-12-17" { + description "redistribute CLI's are changed as per backend CLI's."; + } + + revision "2016-10-24" { + description "ISIS-SR CLI's added."; + } + + revision "2016-09-29" { + description "Initial version of ISIS datamodel."; + } + + + + grouping isismaster-grouping { + list isismaster { + + description + "IS-IS master for instance wide configurations"; + + config true; + key "vrId"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + description "Virtual Router ID"; + } // END of vrId definition. + + leaf reach_map_delay { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "IS-IS reachability timer delay"; + } // END of reach_map_delay definition. + + leaf lsp_refresh_delay { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "IS-IS LSP refresh timer delay"; + } // END of lsp_refresh_delay definition. + + + list hostentry { + + description + "IS-IS dynamic hostname table"; + + config false; + key "hostnameisis"; + + + leaf mtime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Timeatamp"; + } // END of mtime definition. + + leaf hostnameisis { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Hostname"; + } // END of hostnameisis definition. + + } // End of hostentry-list + + list isistop { + + description + "IS-IS structure"; + + config true; + key "isisInstanceTag"; + + + leaf isisInstanceTag { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "router isis"; + } // END of isisInstanceTag definition. + + leaf vrfName { + if-feature feature_list:HAVE_VRF_ISIS; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + leaf instance_id { + type cml_data_types:CML_UINT32_T; + config false; + description "Instance ID"; + } // END of instance_id definition. + + leaf dynamicHostname { + type cml_data_types:CML_BOOL_T; + description "dynamic-hostname"; + } // END of dynamicHostname definition. + + leaf Hostnamedynamic { + type cml_data_types:CML_BOOL_T; + description "hostname dynamic"; + } // END of Hostnamedynamic definition. + + leaf adjacencyCheck { + type cml_data_types:CML_BOOL_T; + description "adjacency-check"; + } // END of adjacencyCheck definition. + + leaf ignore-lsp-errors { + type cml_data_types:CML_BOOL_T; + description "ignore-lsp-errors"; + } // END of ignore-lsp-errors definition. + + leaf area-tag { + type cml_data_types:CML_BOOL_T; + description "dynamic-hostname area-tag"; + } // END of area-tag definition. + + leaf starttime { + type cml_data_types:CML_UINT32_T; + config false; + description "IS-IS start time"; + } // END of starttime definition. + + leaf-list net { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "net"; + } // END of net definition. + + leaf is-type { + type cml_data_types:CML_IS_TYPE_T; + default "level-1-2"; + description "is-type"; + } // END of is-type definition. + + leaf ispflevels { + type cml_data_types:CML_IS_TYPE_T; + default "level-1-2"; + } // END of ispflevels definition. + + leaf topprototype { + type cml_data_types:CML_UINT8_T; + config false; + description "IS-IS protocols supported"; + } // END of topprototype definition. + + leaf priorityTag { + if-feature feature_list:HAVE_WIDE_METRIC; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + description "ip route high-priority tag"; + } // END of priorityTag definition. + + leaf addfamily { + type cml_data_types:CML_UINT8_T; + config false; + description "RIP Address Family"; + } // END of addfamily definition. + + leaf adminflags { + type cml_data_types:CML_UINT8_T; + config false; + description "IS-IS administrative flags"; + } // END of adminflags definition. + + leaf cspf_flag { + if-feature feature_list:HAVE_ISIS_CSPF; + type cml_data_types:CML_BOOL_T; + description "capability cspf"; + } // END of cspf_flag definition. + + leaf bfdall { + type cml_data_types:CML_BOOL_T; + description "bfd all-interfaces"; + } // END of bfdall definition. + + leaf max-area-address { + type cml_data_types:CML_UINT8_T { + range "3..254"; + } + default "3"; + description "max-area-address"; + } // END of max-area-address definition. + + leaf lsp-refresh-interval { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "900"; + description "lSP-refresh-interval"; + } // END of lsp-refresh-interval definition. + + leaf max-lsp-lifetime { + type cml_data_types:CML_UINT16_T { + range "350..65535"; + } + default "1200"; + description "MAX LSP Lifetime"; + } // END of max-lsp-lifetime definition. + + leaf router-id { + if-feature feature_list:HAVE_ISIS_TE; + type cml_data_types:CML_IPV4_ADDR_T; + description "mpls traffic-eng router-id"; + } // END of router-id definition. + + leaf overloadtimerflags { + type cml_data_types:CML_UINT8_T; + config false; + description "Overload timer flags to capture the overload state of the system"; + } // END of overloadtimerflags definition. + + leaf overloadstartedval { + type cml_data_types:CML_UINT32_T; + config false; + description "Overload interval the timer is started with"; + } // END of overloadstartedval definition. + + leaf tvoverload { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Overload interval start time"; + } // END of tvoverload definition. + + leaf-list passiveifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "passive-interface"; + } // END of passiveifName definition. + + + list areaaddr { + + description + "Manual Area Addresses"; + + config false; + key "addressarea"; + + + leaf addressarea { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Manual Area Addresses"; + } // END of addressarea definition. + + leaf addrlength { + type cml_data_types:CML_UINT8_T; + description "Manual Area Address length"; + } // END of addrlength definition. + + } // End of areaaddr-list + + list recvaddr { + + description + "Manual Area Addresses"; + + config false; + key "addressrecvarea"; + + + leaf addressrecvarea { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Rcv Area Addresses - other than already in Manual area addr list"; + } // END of addressrecvarea definition. + + leaf recvaddrlength { + type cml_data_types:CML_UINT8_T; + description "Manual Area Address length"; + } // END of recvaddrlength definition. + + leaf recvaddrcount { + type cml_data_types:CML_UINT32_T; + description "Count of LSP's using this structure"; + } // END of recvaddrcount definition. + + } // End of recvaddr-list + + list protoipv6 { + + description + "IS-IS protocol IPV6"; + + config true; + key "isAddrFamily"; + + + leaf isAddrFamily { + type cml_data_types:CML_ISIS_ADDRESS_IPV6_T; + description "address-family"; + } // END of isAddrFamily definition. + + leaf pindex6 { + type cml_data_types:CML_UINT8_T; + config false; + description "Index of protocol"; + } // END of pindex6 definition. + + leaf ipv6redistribute1to2 { + type cml_data_types:CML_BOOL_T; + description "redistribute isis level-1 into level-2"; + } // END of ipv6redistribute1to2 definition. + + leaf ipv6redistribute2to1 { + type cml_data_types:CML_BOOL_T; + description "redistribute isis level-2 into level-1"; + } // END of ipv6redistribute2to1 definition. + + leaf originate6 { + type cml_data_types:CML_BOOL_T; + description "default-information originate"; + } // END of originate6 definition. + + leaf AddrDistance { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "115"; + description "distance"; + } // END of AddrDistance definition. + + leaf adjacency-check6 { + type cml_data_types:CML_BOOL_T; + description "adjacency-check"; + } // END of adjacency-check6 definition. + + leaf ipv6redistupdate { + type cml_data_types:CML_INT32_T; + config false; + description "Redistrubution timer argument"; + } // END of ipv6redistupdate definition. + + leaf ipv6tvredist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Redistribution last performed"; + } // END of ipv6tvredist definition. + + + list ipv6redistribute { + + description + "ipv6redistribute"; + + config true; + key "Ipv6redistribute"; + + + leaf Ipv6redistribute { + type cml_data_types:CML_ISIS_REDISTRIBUTE_T; + description "redistribute"; + } // END of Ipv6redistribute definition. + + container redistconf6 { + config true; + + description + "redistconf6"; + + leaf redistflags { + type cml_data_types:CML_UINT8_T; + config false; + description "isis_redist_conf - flags"; + } // END of redistflags definition. + + leaf ipv6redistmetric { + type cml_data_types:CML_UINT32_T { + range "0..4261412864"; + } + default "0"; + description "Redist metric"; + } // END of ipv6redistmetric definition. + + leaf ipv6redistmetrictype { + type cml_data_types:CML_ISIS_METRIC_T; + default "internal"; + description "Redist metric type"; + } // END of ipv6redistmetrictype definition. + + leaf ipv6redistroute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default ""; + description "Routemap name"; + } // END of ipv6redistroute definition. + + leaf ipv6redistlevel { + type cml_data_types:CML_IS_TYPE3_T; + default "level-2"; + description "Redist level"; + } // END of ipv6redistlevel definition. + + } // END of redistconf6-container definition. + } // End of ipv6redistribute-list + + list summaryprefix { + + description + "summaryprefix"; + + config true; + key "summaryprefix"; + + + leaf summaryprefix { + type cml_data_types:CML_IPV6_PREFIX_T; + description "Summary prefix"; + } // END of summaryprefix definition. + + leaf level-summary { + mandatory true; + type cml_data_types:CML_IS_TYPE3_T; + description "Level"; + } // END of level-summary definition. + + leaf summarymetric { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "1..63"; + } + description "Metric"; + } // END of summarymetric definition. + + } // End of summaryprefix-list + + list multitopology { + if-feature feature_list:HAVE_MULTI_TOPOLOGY; + + description + "multitopology"; + + config true; + key "multitopologylevel"; + + + leaf multitopologylevel { + type cml_data_types:CML_IS_TYPE3_T; + description "Level"; + } // END of multitopologylevel definition. + + leaf multitransition { + type cml_data_types:CML_BOOL_T; + description "multi-topology"; + } // END of multitransition definition. + + } // End of multitopology-list + + list route6 { + + description + "IS-IS routing table entry"; + + config false; + key "routedistance6"; + + + leaf irflags6 { + type cml_data_types:CML_UINT8_T; + description "Flag used by iSPF and PRC"; + } // END of irflags6 definition. + + leaf routedistance6 { + type cml_data_types:CML_UINT8_T; + description "Route distance"; + } // END of routedistance6 definition. + + uses path; + } // End of route6-list + container distributelist_ipv6 { + config true; + + description + "Distribute-list"; + + leaf ipv6redistributelist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "redistribute isis level-1 into level-2 distribute-list WORD"; + } // END of ipv6redistributelist definition. + + leaf ipv6redistributelist2to1 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "redistribute isis level-2 into level-1 distribute-list WORD"; + } // END of ipv6redistributelist2to1 definition. + + } // END of distributelist_ipv6-container definition. + uses path; + } // End of protoipv6-list + + list levelparamoptions { + + description + "Level context with 3 options"; + + config true; + key "level3types"; + + + leaf level3types { + type cml_data_types:CML_IS_TYPE3_T; + description "IS-IS level context-inedx"; + } // END of level3types definition. + + leaf waittimer { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + description "Waiting Interval"; + } // END of waittimer definition. + + leaf restarttimer { + type cml_data_types:CML_UINT16_T { + range "5..65535"; + } + description "restart-timer"; + } // END of restarttimer definition. + + leaf metricstyle { + if-feature feature_list:HAVE_WIDE_METRIC; + type cml_data_types:CML_METRIC_STYLE_T; + description "Metric style"; + } // END of metricstyle definition. + + } // End of levelparamoptions-list + + list levelparam { + + description + "Level context"; + + config true; + key "level-type"; + + + leaf level-type { + type cml_data_types:CML_ISIS_LEVEL_T; + description "IS-IS level context-inedx"; + } // END of level-type definition. + + leaf isislevelflags { + type cml_data_types:CML_UINT8_T; + config false; + description "IS-IS level context-Flags"; + } // END of isislevelflags definition. + + leaf send-only { + type cml_data_types:CML_BOOL_T; + description "authentication send-only"; + } // END of send-only definition. + + leaf authMode { + type cml_data_types:CML_ISIS_AUTH_MODE_T; + description "authentication mode"; + } // END of authMode definition. + + leaf prcmindelay { + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + default "500"; + description "PRC minimum delay time"; + } // END of prcmindelay definition. + + leaf prcmaxdelay { + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + default "50000"; + description "PRC maximum delay time"; + } // END of prcmaxdelay definition. + + leaf areaPassword { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Area password"; + } // END of areaPassword definition. + + leaf area-snp { + type cml_data_types:CML_ISIS_SNP_T; + } // END of area-snp definition. + + leaf domainPassword { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Domain password"; + } // END of domainPassword definition. + + leaf domain-snp { + type cml_data_types:CML_ISIS_SNP_T; + } // END of domain-snp definition. + + leaf keyChain { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Authentication key-chain"; + } // END of keyChain definition. + + leaf topology_type { + type cml_data_types:CML_UINT8_T; + config false; + description "Topology type"; + } // END of topology_type definition. + + leaf tv_spf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "SPF calculation last performed."; + } // END of tv_spf definition. + + leaf tv_spf_curr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Current SPF calculation."; + } // END of tv_spf_curr definition. + + leaf tv_prc { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "PRC calculation last performed."; + } // END of tv_prc definition. + + leaf tv_prc_curr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Current PRC calculation."; + } // END of tv_prc_curr definition. + + leaf prc_flags { + type cml_data_types:CML_UINT8_T; + config false; + } // END of prc_flags definition. + + leaf protocoltopology { + if-feature feature_list:HAVE_PROTOCOL_TOPOLOGY; + type cml_data_types:CML_BOOL_T; + } // END of protocoltopology definition. + + leaf trafficEng { + if-feature feature_list:HAVE_ISIS_TE; + type cml_data_types:CML_BOOL_T; + description "mpls traffic-eng "; + } // END of trafficEng definition. + + leaf auth_type_fails { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatAuthTypeFails"; + } // END of auth_type_fails definition. + + leaf auth_fails { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatAuthFails"; + } // END of auth_fails definition. + + leaf corrupted_lsps { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatCorrLSPs"; + } // END of corrupted_lsps definition. + + leaf lspdb_overloaded { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatLSPDbaseOloads"; + } // END of lspdb_overloaded definition. + + leaf man_addr_drop_area { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatManAddrDropFromAreas"; + } // END of man_addr_drop_area definition. + + leaf exceed_max_seqnums { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatAttmptToExMaxSeqNums"; + } // END of exceed_max_seqnums definition. + + leaf seqnum_skips { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatSeqNumSkips."; + } // END of seqnum_skips definition. + + leaf lsp_purges { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatOwnLSPPurges"; + } // END of lsp_purges definition. + + leaf lsp_sourced { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatOwnLSPPurges"; + } // END of lsp_sourced definition. + + leaf id_len_mismatches { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatIDFieldLenMismatches."; + } // END of id_len_mismatches definition. + + leaf partition_changes { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatPartChanges"; + } // END of partition_changes definition. + + leaf spf_calc_count { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatSPFRuns"; + } // END of spf_calc_count definition. + + leaf prc_calc_count { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatPRCRuns"; + } // END of prc_calc_count definition. + + leaf dis_elec_count { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatELCRuns"; + } // END of dis_elec_count definition. + + leaf lsp_error { + type cml_data_types:CML_UINT32_T; + config false; + description "isisSysStatLSPErrors"; + } // END of lsp_error definition. + + + list lspdb { + + description + "LSPDB"; + + config false; + key "lsppsnid"; + + + leaf lsplock { + type cml_data_types:CML_UINT32_T; + description "Shared lock among multiple events"; + } // END of lsplock definition. + + leaf lsppsnid { + type cml_data_types:CML_UINT8_T; + description "PSN ID -- this is necessary to initiate"; + } // END of lsppsnid definition. + + leaf lspnum { + type cml_data_types:CML_UINT8_T; + description "LSP num -- this is necessary to initiate"; + } // END of lspnum definition. + + leaf lspflags { + type cml_data_types:CML_UINT8_T; + description "LSP administrative flags"; + } // END of lspflags definition. + + leaf lspseqnum { + type cml_data_types:CML_UINT32_T; + description "Initial Sequence Number with host byte order"; + } // END of lspseqnum definition. + + leaf lsptvupdate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "SP update timestamp"; + } // END of lsptvupdate definition. + + uses tlv; + } // End of lspdb-list + + list levelproto { + + description + "IPv4 protocol data"; + + config false; + key "protopindex"; + + + leaf protopindex { + type cml_data_types:CML_UINT8_T; + description "Index of protocol"; + } // END of protopindex definition. + + leaf protoflags { + type cml_data_types:CML_UINT8_T; + description "Flags"; + } // END of protoflags definition. + + leaf ispfprotoflags { + type cml_data_types:CML_UINT8_T; + description "Incremental SPF flags"; + } // END of ispfprotoflags definition. + + } // End of levelproto-list + + list vertex { + + description + "SPF tree"; + + config false; + key "vertexdistance"; + + + leaf vertexflags { + type cml_data_types:CML_UINT8_T; + description "Vertex Flags"; + } // END of vertexflags definition. + + leaf vertexdistance { + type cml_data_types:CML_UINT32_T; + description "Vertex Distance"; + } // END of vertexdistance definition. + + + list vertexnexthop { + + description + "Actual nexthop structure"; + + config false; + key "vertexnexthopsourceid"; + + + leaf vertexnexthopflags { + type cml_data_types:CML_UINT8_T; + description "Nexthop flags"; + } // END of vertexnexthopflags definition. + + leaf vertexnexthopifindex { + type cml_data_types:CML_UINT32_T; + description "Nexthop interface index"; + } // END of vertexnexthopifindex definition. + + leaf vertexnexthopsourceid { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Nexthop neighbor source ID"; + } // END of vertexnexthopsourceid definition. + + leaf vertexnexthoplock { + type cml_data_types:CML_UINT32_T; + description "Nexthop neighbor Lock"; + } // END of vertexnexthoplock definition. + + leaf vertexipaddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Selected nexthops IP interface address"; + } // END of vertexipaddr definition. + + leaf vertexipv6addr { + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Selected nexthop's IPv6 interface linklocal address"; + } // END of vertexipv6addr definition. + + } // End of vertexnexthop-list + } // End of vertex-list + container lsp-gen-interval { + config true; + + description + "Minimum interval between regenerating same LSP"; + + leaf lspgeninterval { + type cml_data_types:CML_UINT8_T { + range "1..120"; + } + default "30"; + description "lsp-gen-interval"; + } // END of lspgeninterval definition. + + } // END of lsp-gen-interval-container definition. + container spf-interval-exp { + config true; + + description + "Minimum interval between SPF calculations"; + + leaf spfmindelay { + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + default "500"; + description "SPF minimum delay time"; + } // END of spfmindelay definition. + + leaf spfmaxdelay { + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + default "5000"; + description "spf-interval-exp"; + } // END of spfmaxdelay definition. + + } // END of spf-interval-exp-container definition. + container lsp-mtu { + config true; + + description + "Set lsp MTU in bytes"; + + leaf lspmtu { + type cml_data_types:CML_UINT16_T { + range "512..1492"; + } + default "1492"; + description "lsp-mtu"; + } // END of lspmtu definition. + + } // END of lsp-mtu-container definition. + } // End of levelparam-list + + list distance { + + description + "distance"; + + config true; + key "SystemID"; + + + leaf SystemID { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of SystemID definition. + + leaf distance { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + } // END of distance definition. + + leaf accessList { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default ""; + } // END of accessList definition. + + } // End of distance-list + container vrf { + config false; + + description + "IS-IS vrf"; + + leaf vrfflags { + type cml_data_types:CML_UINT8_T; + description "ISIS instance with vrf enabled"; + } // END of vrfflags definition. + + leaf redistcount { + type cml_data_types:CML_UINT32_T; + description "Redistribute count"; + } // END of redistcount definition. + + uses igpshortcutlsp; + } // END of vrf-container definition. + container setOverload { + config true; + + description + "set overload bit"; + + leaf setsuppress { + type cml_data_types:CML_ISIS_SUPPRESS_T; + description "Overload bit flags"; + } // END of setsuppress definition. + + leaf onstartup { + type cml_data_types:CML_ISIS_ONSTARTUP_T; + description "Overload interval after reboot"; + } // END of onstartup definition. + + } // END of setOverload-container definition. + container protoipv4 { + config true; + + description + "IS-IS protocol IPV4"; + + leaf pindex { + type cml_data_types:CML_UINT8_T; + config false; + description "Index of protocol"; + } // END of pindex definition. + + leaf redistribute1to2 { + type cml_data_types:CML_BOOL_T; + description "redistribute isis level-1 into level-2"; + } // END of redistribute1to2 definition. + + leaf redistribute2to1 { + type cml_data_types:CML_BOOL_T; + description "redistribute isis level-2 into level-1"; + } // END of redistribute2to1 definition. + + leaf isis-distance { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + default "115"; + description "distance (IPV4)"; + } // END of isis-distance definition. + + leaf redist_update { + type cml_data_types:CML_INT32_T; + config false; + description "Redistrubution timer argument"; + } // END of redist_update definition. + + leaf tv_redist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Redistribution last performed"; + } // END of tv_redist definition. + + + list defaultorg { + + description + "defaultorg"; + + config true; + key "originate"; + + + leaf originate { + type cml_data_types:CML_BOOL_T; + description "default-information originate"; + } // END of originate definition. + + leaf originatealways { + mandatory true; + type cml_data_types:CML_BOOL_T; + description "ISIS PROTO DEFAULT ORIGINATE ALWAYS FLAG"; + } // END of originatealways definition. + + leaf redistroutedefault { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Route-map"; + } // END of redistroutedefault definition. + + } // End of defaultorg-list + + list redistributeisis { + + description + "redistributeisis"; + + config true; + key "redistribute"; + + + leaf redistribute { + type cml_data_types:CML_ISIS_REDISTRIBUTE_T; + description "redistribute"; + } // END of redistribute definition. + + container redistconf { + config true; + + description + "redistconf"; + + leaf flags { + type cml_data_types:CML_UINT8_T; + config false; + description "isis_redist_conf - flags"; + } // END of flags definition. + + leaf redistmetric { + type cml_data_types:CML_UINT32_T { + range "0..4261412864"; + } + default "0"; + description "Metric"; + } // END of redistmetric definition. + + leaf redistmetrictype { + type cml_data_types:CML_ISIS_METRIC_T; + default "internal"; + description "Metric type"; + } // END of redistmetrictype definition. + + leaf redistroute { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default ""; + description "Route-map"; + } // END of redistroute definition. + + leaf redistlevel { + type cml_data_types:CML_IS_TYPE3_T; + default "level-2"; + description "Level"; + } // END of redistlevel definition. + + } // END of redistconf-container definition. + } // End of redistributeisis-list + + list summaryaddress { + + description + "summaryaddress"; + + config true; + key "summaryaddress"; + + + leaf summaryaddress { + type cml_data_types:CML_IPV4_PREFIX_T; + description "Summary-address"; + } // END of summaryaddress definition. + + leaf summarylevels { + mandatory true; + type cml_data_types:CML_IS_TYPE3_T; + description "Level"; + } // END of summarylevels definition. + + leaf metric { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "1..63"; + } + description "Metric"; + } // END of metric definition. + + } // End of summaryaddress-list + + list route { + + description + "IS-IS routing table entry"; + + config false; + key "routedistance"; + + + leaf irflags { + type cml_data_types:CML_UINT8_T; + description "Flag used by iSPF and PRC"; + } // END of irflags definition. + + leaf routedistance { + type cml_data_types:CML_UINT8_T; + description "Route distance"; + } // END of routedistance definition. + + uses path; + uses igpshortcutlsp; + } // End of route-list + + list redistmap { + + description + "Redistribute map table"; + + config false; + key "rmtag"; + + + leaf rmtype { + type cml_data_types:CML_UINT8_T; + description "Type of protocol source"; + } // END of rmtype definition. + + leaf rmmtype { + type cml_data_types:CML_UINT8_T; + description "IS-IS Metric type"; + } // END of rmmtype definition. + + leaf rmlevel { + type cml_data_types:CML_UINT8_T; + description "IS-IS level"; + } // END of rmlevel definition. + + leaf rmmetric { + type cml_data_types:CML_UINT32_T; + description "IS-IS Metric"; + } // END of rmmetric definition. + + leaf rmtag { + type cml_data_types:CML_UINT32_T; + description "IS-IS Ta"; + } // END of rmtag definition. + + } // End of redistmap-list + container distribute_list { + config true; + + description + "Distribute-list"; + + leaf redistributelist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "redistribute isis level-1 into level-2 distribute-list WORD"; + } // END of redistributelist definition. + + leaf redistributelist2to1 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "redistribute isis level-2 into level-1 distribute-list WORD"; + } // END of redistributelist2to1 definition. + + } // END of distribute_list-container definition. + uses path; + } // END of protoipv4-container definition. + container cspf { + if-feature feature_list:HAVE_ISIS_CSPF; + config false; + + description + "CSPF"; + + leaf cspfconfig { + type cml_data_types:CML_UINT8_T; + description "cspf-config flags"; + } // END of cspfconfig definition. + + leaf tiebreak { + type cml_data_types:CML_UINT8_T; + description "Tie-break method"; + } // END of tiebreak definition. + + leaf defretryinterval { + type cml_data_types:CML_UINT16_T; + description "Default retry interval"; + } // END of defretryinterval definition. + + leaf restartcounter { + type cml_data_types:CML_INT32_T; + description "Restart counter"; + } // END of restartcounter definition. + + leaf restartinterval { + type cml_data_types:CML_INT32_T; + description "Restart interval"; + } // END of restartinterval definition. + + + list cspflsplist { + + description + "Priority lists"; + + config false; + key "listcount"; + + + leaf listcount { + type cml_data_types:CML_INT8_T; + description "Priority list count"; + } // END of listcount definition. + + + list cspflsp { + + description + "cspf lsp"; + + config false; + key "setupPriority"; + + + leaf lspId { + type cml_data_types:CML_UINT32_T; + } // END of lspId definition. + + leaf p2mpId { + if-feature feature_list:HAVE_MPLS_P2MP; + type cml_data_types:CML_UINT32_T; + } // END of p2mpId definition. + + leaf subGrpId { + if-feature feature_list:HAVE_MPLS_P2MP; + type cml_data_types:CML_UINT16_T; + } // END of subGrpId definition. + + leaf retryInterval { + type cml_data_types:CML_UINT16_T; + } // END of retryInterval definition. + + leaf retryLimit { + type cml_data_types:CML_UINT16_T; + } // END of retryLimit definition. + + leaf teMetric { + type cml_data_types:CML_UINT32_T; + } // END of teMetric definition. + + leaf egress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of egress definition. + + leaf ingress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ingress definition. + + leaf eti { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of eti definition. + + leaf lspState { + type cml_data_types:CML_UINT8_T; + } // END of lspState definition. + + leaf clientId { + type cml_data_types:CML_UINT8_T; + } // END of clientId definition. + + leaf setupPriority { + type cml_data_types:CML_UINT8_T; + } // END of setupPriority definition. + + leaf holdPriority { + type cml_data_types:CML_UINT8_T; + } // END of holdPriority definition. + + leaf shareCount { + type cml_data_types:CML_UINT16_T; + } // END of shareCount definition. + + leaf retryCount { + type cml_data_types:CML_UINT16_T; + } // END of retryCount definition. + + leaf routeCount { + type cml_data_types:CML_UINT16_T; + } // END of routeCount definition. + + leaf optimizationInterval { + type cml_data_types:CML_UINT16_T; + } // END of optimizationInterval definition. + + leaf lflag { + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_UINT8_T; + } // END of lflag definition. + + leaf lspFlag { + type cml_data_types:CML_UINT16_T; + } // END of lspFlag definition. + + leaf refcount { + type cml_data_types:CML_UINT8_T; + } // END of refcount definition. + + leaf signalledholdpriority { + type cml_data_types:CML_UINT8_T; + } // END of signalledholdpriority definition. + + leaf srlgcount { + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_UINT8_T; + } // END of srlgcount definition. + + leaf srlglist { + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_UINT32_T; + } // END of srlglist definition. + + leaf lspType { + type cml_data_types:CML_UINT8_T; + description "Primary/backup lsp"; + } // END of lspType definition. + + leaf resolvedexcludehoptype { + type cml_data_types:CML_UINT8_T; + } // END of resolvedexcludehoptype definition. + + leaf binding { + type cml_data_types:CML_UINT8_T; + description "LSP address binding status"; + } // END of binding definition. + + leaf teClass { + if-feature feature_list:HAVE_DSTE; + type cml_data_types:CML_UINT8_T; + } // END of teClass definition. + + leaf recoverCspf { + type cml_data_types:CML_BOOL_T; + } // END of recoverCspf definition. + + + list cspfrouteconstraint { + + description + "cspfrouteconstraint"; + + config false; + key "hopLimit"; + + + leaf crcFlags { + type cml_data_types:CML_UINT32_T; + } // END of crcFlags definition. + + leaf bandwidthFwd { + type cml_data_types:CML_INT32_T; + } // END of bandwidthFwd definition. + + leaf bandwidthRev { + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_UINT32_T; + } // END of bandwidthRev definition. + + leaf hopLimit { + type cml_data_types:CML_INT8_T; + } // END of hopLimit definition. + + leaf includeMask { + type cml_data_types:CML_INT8_T; + } // END of includeMask definition. + + leaf excludeMask { + type cml_data_types:CML_INT8_T; + } // END of excludeMask definition. + + leaf protectionFwd { + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_UINT32_T; + } // END of protectionFwd definition. + + leaf protectionRev { + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_UINT32_T; + } // END of protectionRev definition. + + leaf swCapability { + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_UINT8_T; + } // END of swCapability definition. + + leaf encodingType { + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_UINT8_T; + } // END of encodingType definition. + + leaf srlgValue { + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_UINT32_T; + } // END of srlgValue definition. + + leaf srlgCountrc { + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_UINT8_T; + } // END of srlgCountrc definition. + + leaf pathCount { + type cml_data_types:CML_UINT8_T; + } // END of pathCount definition. + + leaf excludePathCount { + type cml_data_types:CML_UINT8_T; + } // END of excludePathCount definition. + + } // End of cspfrouteconstraint-list + } // End of cspflsp-list + } // End of cspflsplist-list + } // END of cspf-container definition. + } // End of isistop-list + + list isisInterface { + + description + "ISIS interface related operations"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf ifindex { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Index"; + } // END of ifindex definition. + + leaf ifinstanceTag { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Routing Protocol IS-IS name"; + } // END of ifinstanceTag definition. + + leaf ifNetworkType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Network Type"; + } // END of ifNetworkType definition. + + leaf ifCircuitType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Circuit Type"; + } // END of ifCircuitType definition. + + leaf localCircuitId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Local circuit ID"; + } // END of localCircuitId definition. + + leaf extCircuitId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Extended Local circuit ID"; + } // END of extCircuitId definition. + + leaf localSnpa { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Local SNPA"; + } // END of localSnpa definition. + + leaf bandwidth { + if-feature feature_list:HAVE_ISIS_TE; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Bandwidth"; + } // END of bandwidth definition. + + leaf maxResvBandwidth { + if-feature feature_list:HAVE_ISIS_TE; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Maximum reservable bandwidth"; + } // END of maxResvBandwidth definition. + + + list connectedipv4 { + + description + "IP interface address"; + + config false; + key "ipv4Address"; + + + leaf ipv4Address { + type cml_data_types:CML_IPV4_ADDR_PREFIX_T; + description "IP interface address"; + } // END of ipv4Address definition. + + } // End of connectedipv4-list + + list connectedipv6 { + + description + "IPV6 interface address"; + + config false; + key "ipv6Address"; + + + leaf ipv6Address { + type cml_data_types:CML_IPV6_PREFIX_T; + description "IPV6 interface address"; + } // END of ipv6Address definition. + + } // End of connectedipv6-list + + list neighbor-LAN { + + description + "neighborCMLSEPLAN"; + + config false; + key "nbr_source_id_lan"; + + + leaf nbr_source_id_lan { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Source ID"; + } // END of nbr_source_id_lan definition. + + leaf nbr_type { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Neighbor Type"; + } // END of nbr_type definition. + + + list isisNeighborLevel { + + description + "Neighbor level context"; + + config false; + key "nbr_levelindex"; + + + leaf nbr_levelindex { + type cml_data_types:CML_ISIS_LEVEL_T; + description "Neighbor index"; + } // END of nbr_levelindex definition. + + leaf nbr_state { + type cml_data_types:CML_ISIS_STATE_T; + description "NSM state"; + } // END of nbr_state definition. + + leaf nbr_adjacency_id { + type cml_data_types:CML_UINT32_T; + description "Neighbor adjacency ID"; + } // END of nbr_adjacency_id definition. + + leaf nbr_hold_time { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Holding time"; + } // END of nbr_hold_time definition. + + } // End of isisNeighborLevel-list + uses neighborattributes; + } // End of neighbor-LAN-list + + list iflevel { + + description + "Level for interface"; + + config false; + key "iflevelindex"; + + + leaf iflevelindex { + type cml_data_types:CML_ISIS_IFLEVEL_T; + description "Level index"; + } // END of iflevelindex definition. + + leaf ifNextHello { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Next IS-IS Hello"; + } // END of ifNextHello definition. + + leaf iflevelFlag { + type cml_data_types:CML_UINT8_T; + description "Level flags"; + } // END of iflevelFlag definition. + + leaf ifstate { + type cml_data_types:CML_UINT8_T; + description "ISM State"; + } // END of ifstate definition. + + leaf ifCircuitId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "DIS of this interface - Source ID"; + } // END of ifCircuitId definition. + + leaf ifNbrCount { + type cml_data_types:CML_INT32_T; + description "Number of active adjacencies in each level"; + } // END of ifNbrCount definition. + + leaf ifAdjNbrCount { + type cml_data_types:CML_INT32_T; + description "Number of active adjacencies in each level(AdjsUp)"; + } // END of ifAdjNbrCount definition. + + leaf ifNextCsnp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Next CSNP"; + } // END of ifNextCsnp definition. + + leaf adj_changes { + type cml_data_types:CML_UINT32_T; + description "isisCircAdjChanges"; + } // END of adj_changes definition. + + leaf num_adj { + type cml_data_types:CML_UINT32_T; + description "isisCircNumAdj"; + } // END of num_adj definition. + + leaf init_fails { + type cml_data_types:CML_UINT32_T; + description "isisCircInitFails"; + } // END of init_fails definition. + + leaf rej_adjs { + type cml_data_types:CML_UINT32_T; + description "isisCircRejAdjs"; + } // END of rej_adjs definition. + + leaf idlen_mismatches { + type cml_data_types:CML_UINT32_T; + description "isisCircIDFieldLenMismatches"; + } // END of idlen_mismatches definition. + + leaf maxarea_addr_mismatches { + type cml_data_types:CML_UINT32_T; + description "isisCircMaxAreaAddrMismatches"; + } // END of maxarea_addr_mismatches definition. + + leaf authtype_fails { + type cml_data_types:CML_UINT32_T; + description "isisCircAuthTypeFails"; + } // END of authtype_fails definition. + + leaf auth_fails { + type cml_data_types:CML_UINT32_T; + description "isisCircAuthFails"; + } // END of auth_fails definition. + + leaf dis_changes { + type cml_data_types:CML_UINT32_T; + description "isisCircLANDesISChanges"; + } // END of dis_changes definition. + + leaf state_change { + type cml_data_types:CML_UINT32_T; + description "Number of ISM state change"; + } // END of state_change definition. + + leaf hello_in { + type cml_data_types:CML_UINT32_T; + description "isisPacketCountIIHello"; + } // END of hello_in definition. + + leaf hello_out { + type cml_data_types:CML_UINT32_T; + description "isisPacketCountIIHello"; + } // END of hello_out definition. + + leaf lsp_in { + type cml_data_types:CML_UINT32_T; + description "isisPacketCountLSP"; + } // END of lsp_in definition. + + leaf lsp_out { + type cml_data_types:CML_UINT32_T; + description "isisPacketCountLSP"; + } // END of lsp_out definition. + + leaf csnp_in { + type cml_data_types:CML_UINT32_T; + description "isisPacketCountCSNP"; + } // END of csnp_in definition. + + leaf csnp_out { + type cml_data_types:CML_UINT32_T; + description "isisPacketCountCSNP"; + } // END of csnp_out definition. + + leaf psnp_in { + type cml_data_types:CML_UINT32_T; + description "isisPacketCountPSNP"; + } // END of psnp_in definition. + + leaf psnp_out { + type cml_data_types:CML_UINT32_T; + description "isisPacketCountPSNP"; + } // END of psnp_out definition. + + leaf unknown_in { + type cml_data_types:CML_UINT32_T; + description "isisPacketCountUnknown"; + } // END of unknown_in definition. + + leaf unknown_out { + type cml_data_types:CML_UINT32_T; + description "isisPacketCountUnknown"; + } // END of unknown_out definition. + + leaf t1_exp { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_UINT8_T; + description "number of times T1 timer expired"; + } // END of t1_exp definition. + + } // End of iflevel-list + container neighbor-P2P { + config false; + + description + "neighborCMLSEPP2P"; + + leaf nbrsourceidp2p { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Source ID"; + } // END of nbrsourceidp2p definition. + + leaf nbrcircuitid { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Neighbor Local Circuit ID for P2P"; + } // END of nbrcircuitid definition. + + leaf p2p_nbr_state { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "p2p nbr state str"; + } // END of p2p_nbr_state definition. + + leaf holdTimer { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "timer string"; + } // END of holdTimer definition. + + leaf adjacencyType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "is type str"; + } // END of adjacencyType definition. + + uses neighborattributes; + } // END of neighbor-P2P-container definition. + container ifparams { + config true; + + description + "Interface parameter"; + + leaf proto_type { + type cml_data_types:CML_UINT8_T; + config false; + description "Configuration for protocol supported"; + } // END of proto_type definition. + + leaf network { + type cml_data_types:CML_ISIS_NETWORK_T; + description "isis network"; + } // END of network definition. + + leaf circuit-type { + type cml_data_types:CML_IS_TYPE_T; + default "level-1-2"; + description "isis circuit-type"; + } // END of circuit-type definition. + + leaf bfd { + type cml_data_types:CML_BOOL_T; + description "isis bfd"; + } // END of bfd definition. + + leaf bfddisable { + type cml_data_types:CML_BOOL_T; + description "isis bfd disable"; + } // END of bfddisable definition. + + leaf isisIPv4InstanceTag { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default ""; + description "ip router isis"; + } // END of isisIPv4InstanceTag definition. + + leaf isisIPv6InstanceTag { + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default ""; + description "ipv6 router isis"; + } // END of isisIPv6InstanceTag definition. + + leaf iip_type { + type cml_data_types:CML_UINT8_T; + config false; + description "Network type"; + } // END of iip_type definition. + + leaf iip_circuit_type { + type cml_data_types:CML_UINT8_T; + config false; + description "Circuit type"; + } // END of iip_circuit_type definition. + + leaf iip_passive_type { + type cml_data_types:CML_UINT8_T; + config false; + description "Passive level type"; + } // END of iip_passive_type definition. + + leaf iip_vid { + type cml_data_types:CML_UINT16_T; + config false; + description "Vlan ID for Vlan interfaces"; + } // END of iip_vid definition. + + leaf lsp-interval { + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + default "33"; + description "isis lsp-interval"; + } // END of lsp-interval definition. + + leaf retransmit-interval { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "5"; + description "isis retransmit-interval"; + } // END of retransmit-interval definition. + + leaf padding { + type cml_data_types:CML_BOOL_T; + description "isis hello"; + } // END of padding definition. + + leaf groupId { + type cml_data_types:CML_ISIS_MESH_TYPE_T; + description "isis mesh-group"; + } // END of groupId definition. + + + list iflevelconf { + + description + "Interface Level parameter"; + + config true; + key "level"; + + + leaf level { + type cml_data_types:CML_ISIS_LEVEL_T; + } // END of level definition. + + leaf iflevelconfig { + type cml_data_types:CML_UINT16_T; + config false; + description "isis_if_level_conf-Config flags"; + } // END of iflevelconfig definition. + + leaf hello-interval { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "10"; + description "isis hello-interval"; + } // END of hello-interval definition. + + leaf hello-multiplier { + type cml_data_types:CML_UINT8_T { + range "2..100"; + } + default "3"; + description "isis hello-multiplier"; + } // END of hello-multiplier definition. + + leaf csnp-interval { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "10"; + description "isis csnp-interval"; + } // END of csnp-interval definition. + + leaf priority { + type cml_data_types:CML_UINT8_T { + range "0..127"; + } + default "64"; + description "isis priority"; + } // END of priority definition. + + leaf metric { + type cml_data_types:CML_UINT8_T { + range "1..63"; + } + default "10"; + description "isis metric"; + } // END of metric definition. + + leaf ifauthMode { + type cml_data_types:CML_ISIS_AUTH_MODE_T; + description "isis authentication mode md5"; + } // END of ifauthMode definition. + + leaf ifkeyChain { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "isis authentication key-chain"; + } // END of ifkeyChain definition. + + leaf password { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "isis password"; + } // END of password definition. + + leaf tag { + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + description "isis tag"; + } // END of tag definition. + + leaf wide-metric { + type cml_data_types:CML_UINT32_T { + range "1..16777214"; + } + default "10"; + description "isis wide-metric"; + } // END of wide-metric definition. + + leaf restart-hello-interval { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "3"; + description "isis restart-hello-interval"; + } // END of restart-hello-interval definition. + + leaf minimal { + type cml_data_types:CML_BOOL_T; + description "isis hello-interval minimal"; + } // END of minimal definition. + + leaf send-only { + type cml_data_types:CML_BOOL_T; + description "isis authentication send-only"; + } // END of send-only definition. + + } // End of iflevelconf-list + } // END of ifparams-container definition. + container syncparams { + config true; + + description + "isis_sync_params"; + + leaf synclevel { + type cml_data_types:CML_IS_TYPE3_T; + } // END of synclevel definition. + + leaf holddown { + type cml_data_types:CML_UINT32_T { + range "1..2147483"; + } + default "70000"; + description "mpls ldp-igp sync isis"; + } // END of holddown definition. + + leaf sync_flags { + type cml_data_types:CML_UINT8_T; + config false; + description "isis sync params-sync flags"; + } // END of sync_flags definition. + + leaf sync_ifname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "isis sync params-sync ifname"; + } // END of sync_ifname definition. + + } // END of syncparams-container definition. + } // End of isisInterface-list + container restart { + config true; + + description + "IS-IS restart stuff"; + + leaf restartflags { + type cml_data_types:CML_UINT8_T; + config false; + description "isis_restart-flags"; + } // END of restartflags definition. + + leaf grace-period { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + description "isis restart grace-period"; + } // END of grace-period definition. + + leaf helper { + type cml_data_types:CML_BOOL_T; + description "isis restart helper"; + } // END of helper definition. + + leaf suppress-adjacency { + type cml_data_types:CML_BOOL_T; + description "isis restart suppress-adjacency"; + } // END of suppress-adjacency definition. + + leaf tv_restart { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Restarting time"; + } // END of tv_restart definition. + + leaf tv_expire { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Preserve expire time"; + } // END of tv_expire definition. + + } // END of restart-container definition. + container debugconf { + config true; + + description + "Debug flags for configuration"; + + leaf debugFlag { + type cml_data_types:CML_ISIS_DEBUG_T; + default "ifsm"; + description "debug isis"; + } // END of debugFlag definition. + + leaf debugall { + type cml_data_types:CML_BOOL_T; + description "debug isis "; + } // END of debugall definition. + + leaf debughello { + type cml_data_types:CML_BOOL_T; + description "debug isis "; + } // END of debughello definition. + + leaf-list helloIfname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "debug isis "; + } // END of helloIfname definition. + + leaf-list hellosysId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "debug isis "; + } // END of hellosysId definition. + + } // END of debugconf-container definition. + container debugterm { + config true; + + description + "Debug flags for terminal"; + + leaf termdebugFlag { + type cml_data_types:CML_ISIS_DEBUG_T; + default "ifsm"; + description "debug isis"; + } // END of termdebugFlag definition. + + leaf termdebugall { + type cml_data_types:CML_BOOL_T; + description "debug isis "; + } // END of termdebugall definition. + + leaf termdebughello { + type cml_data_types:CML_BOOL_T; + description "debug isis "; + } // END of termdebughello definition. + + leaf-list termhelloIfname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "debug isis "; + } // END of termhelloIfname definition. + + leaf-list termhellosysId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "debug isis "; + } // END of termhellosysId definition. + + } // END of debugterm-container definition. + } // End of isismaster-list + } // END of isismaster-grouping definition. + grouping neighborattributes { + leaf nbrAdjflags { + type cml_data_types:CML_ISIS_NBR_ADJ_T; + config false; + description "isis_neighbor - Flags"; + } // END of nbrAdjflags definition. + + leaf nbr_mac { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "MAC address"; + } // END of nbr_mac definition. + + leaf nbr_topology_type { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Multi topology type"; + } // END of nbr_topology_type definition. + + leaf nbr_uptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Uptime"; + } // END of nbr_uptime definition. + + leaf nbr_proto { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Protocol"; + } // END of nbr_proto definition. + + + list AreaAddressCount { + + description + "Area Address(es) counter"; + + config false; + key "nbrAreaCount"; + + + leaf nbrAreaCount { + type cml_data_types:CML_INT8_T; + description "Neighbor Area Addresses count"; + } // END of nbrAreaCount definition. + + container AreaAddress { + config false; + + description + "Area Address(es)"; + + leaf nbr_area_vec { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Area addresses"; + } // END of nbr_area_vec definition. + + } // END of AreaAddress-container definition. + } // End of AreaAddressCount-list + + list IpAddressCount { + + description + "IP Address(es) counter"; + + config false; + key "nbrIpCount"; + + + leaf nbrIpCount { + type cml_data_types:CML_INT8_T; + description "Neighbor IP Addresses count"; + } // END of nbrIpCount definition. + + container IpAddress { + config false; + + description + "IP Address(es)"; + + leaf nbr_ip_vec { + type cml_data_types:CML_IPV4_ADDR_T; + description "Neighbor IP Addresses"; + } // END of nbr_ip_vec definition. + + } // END of IpAddress-container definition. + } // End of IpAddressCount-list + + list Ipv6AddressCount { + + description + "IPv6 Address(es) counter"; + + config false; + key "nbrIpv6Count"; + + + leaf nbrIpv6Count { + type cml_data_types:CML_INT8_T; + description "Neighbor IPv6 Addresses count"; + } // END of nbrIpv6Count definition. + + container Ipv6Address { + config false; + + description + "IPv6 Address(es)"; + + leaf nbr_ipv6_vec { + type cml_data_types:CML_IPV4_ADDR_T; + description "Neighbor IPv6 Addresses"; + } // END of nbr_ipv6_vec definition. + + } // END of Ipv6Address-container definition. + } // End of Ipv6AddressCount-list + } // END of neighborattributes definition. + grouping path { + container pathattrs { + config false; + + description + "pathattrs"; + + leaf path_flags { + type cml_data_types:CML_UINT8_T; + description "Path type flags"; + } // END of path_flags definition. + + leaf path_redist { + type cml_data_types:CML_UINT8_T; + description "Redistribute Path Flag"; + } // END of path_redist definition. + + leaf path_lock { + type cml_data_types:CML_UINT16_T; + description "Path Lock"; + } // END of path_lock definition. + + leaf path_metric { + type cml_data_types:CML_UINT32_T; + description "Path Metric"; + } // END of path_metric definition. + + leaf path_tag { + type cml_data_types:CML_UINT32_T; + description "Path admin tag value"; + } // END of path_tag definition. + + leaf tag_present { + type cml_data_types:CML_BOOL_T; + description "set if admin tag is present"; + } // END of tag_present definition. + + leaf path_t_metric { + if-feature feature_list:HAVE_MPLS; + type cml_data_types:CML_BOOL_T; + description "Tunnel Nexthop vector-metric"; + } // END of path_t_metric definition. + + + list nexthop { + + description + "IS-IS IP netxthop"; + + config false; + key "nexthop_source_id"; + + + leaf nexthop_flags { + type cml_data_types:CML_UINT8_T; + description "Nexthop flags"; + } // END of nexthop_flags definition. + + leaf nexthop_ifindex { + type cml_data_types:CML_UINT32_T; + description "Nexthop interface index"; + } // END of nexthop_ifindex definition. + + leaf nexthop_source_id { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Nexthop neighbor source ID"; + } // END of nexthop_source_id definition. + + leaf nexthop_lock { + type cml_data_types:CML_UINT32_T; + description "Nexthop neighbor Lock"; + } // END of nexthop_lock definition. + + leaf ip_addr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Selected nexthops IP interface address"; + } // END of ip_addr definition. + + leaf ipv6_addr { + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Selected nexthop's IPv6 interface linklocal address"; + } // END of ipv6_addr definition. + + } // End of nexthop-list + uses tlv; + } // END of pathattrs-container definition. + } // END of path definition. + grouping tlv { + + list tlv_elements { + + description + "tlvCMLSEPelements"; + + config false; + key "tlvtype"; + + + leaf tlvtype { + type cml_data_types:CML_UINT8_T; + description "TLV type"; + } // END of tlvtype definition. + + leaf tlvlength { + type cml_data_types:CML_UINT8_T; + description "TLV length"; + } // END of tlvlength definition. + + leaf tlvlentmp { + type cml_data_types:CML_UINT8_T; + description "TLV length not committed"; + } // END of tlvlentmp definition. + + leaf tlvflags { + type cml_data_types:CML_UINT8_T; + description "TLV flags"; + } // END of tlvflags definition. + + leaf tlvslot { + type cml_data_types:CML_UINT8_T; + description "Allocated slot"; + } // END of tlvslot definition. + + leaf tlvbody { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "TLV body"; + } // END of tlvbody definition. + + } // End of tlv_elements-list + } // END of tlv definition. + grouping igpshortcutlsp { + + list igpshortcutlsp { + + description + "igpshortcutlsp"; + + config false; + key "igpmetric"; + + + leaf igpmetric { + type cml_data_types:CML_UINT16_T; + } // END of igpmetric definition. + + leaf igptunnel_id { + type cml_data_types:CML_UINT32_T; + } // END of igptunnel_id definition. + + leaf igpt_endp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of igpt_endp definition. + + leaf igplock { + type cml_data_types:CML_UINT16_T; + } // END of igplock definition. + + leaf igp_flags { + type cml_data_types:CML_UINT8_T; + } // END of igp_flags definition. + + } // End of igpshortcutlsp-list + } // END of igpshortcutlsp definition. + + +} \ No newline at end of file diff --git a/yang-files/keychain.yang b/yang-files/keychain.yang new file mode 100644 index 00000000..128ed3a6 --- /dev/null +++ b/yang-files/keychain.yang @@ -0,0 +1,187 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : keychain.yang +* +*/ + +submodule keychain { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + description + "keychain configurations"; + + + revision "2016-10-24" { + description "Updated key chain mode commands."; + } + + revision "2016-09-16" { + description "Initial version of key-chain commands."; + } + + revision "2016-02-03" { + description "Added utils function for encryption cases."; + } + + + + grouping keychain-grouping { + list keychain { + + description + "keychain"; + + config true; + key "key-chain"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + default "0"; + description "Virtual Router ID"; + } // END of vrId definition. + + leaf key-chain { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "key chain"; + } // END of key-chain definition. + + + list keyId { + + description + "keyId"; + + config true; + key "key"; + + + leaf key { + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + description "key"; + } // END of key definition. + + leaf keyString { + type cml_data_types:CML_STRING_T { + length "1..80"; + } + description "key-string"; + } // END of keyString definition. + + + list accept { + + description + "accept-time commands"; + + config true; + key "accepttime"; + + + leaf accepttime { + type cml_data_types:CML_ACCEPT_LIFETIME_T; + } // END of accepttime definition. + + uses keyLifetime; + } // End of accept-list + + list send { + + description + "accept-time commands"; + + config true; + key "sendtime"; + + + leaf sendtime { + type cml_data_types:CML_SEND_LIFETIME_T; + } // END of sendtime definition. + + uses keyLifetime; + } // End of send-list + } // End of keyId-list + } // End of keychain-list + } // END of keychain-grouping definition. + grouping keyLifetime { + leaf starttime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of starttime definition. + + leaf startday { + type cml_data_types:CML_UINT8_T { + range "1..31"; + } + } // END of startday definition. + + leaf startmonth { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of startmonth definition. + + leaf startyear { + type cml_data_types:CML_INT32_T { + range "1993..2035"; + } + } // END of startyear definition. + + leaf endtime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of endtime definition. + + leaf endday { + type cml_data_types:CML_UINT8_T { + range "1..31"; + } + } // END of endday definition. + + leaf endmonth { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of endmonth definition. + + leaf endyear { + type cml_data_types:CML_INT32_T { + range "1993..2035"; + } + } // END of endyear definition. + + leaf infinite { + type cml_data_types:CML_BOOL_T; + } // END of infinite definition. + + leaf duration { + type cml_data_types:CML_UINT32_T { + range "1..2147483646"; + } + } // END of duration definition. + + } // END of keyLifetime definition. + + +} \ No newline at end of file diff --git a/yang-files/lacp.yang b/yang-files/lacp.yang index d0356895..6711e010 100644 --- a/yang-files/lacp.yang +++ b/yang-files/lacp.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -17,6 +17,7 @@ submodule lacp { belongs-to ZebOS { prefix ZebOS; } include interface; + include mlag; import cml_data_types { @@ -28,7 +29,7 @@ submodule lacp { revision "2015-10-20" { - description "Revisied on 2015-10-20."; + description "Initial version of datamodel."; } @@ -44,14 +45,14 @@ submodule lacp { leaf ifName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of ifName definition. leaf vrId { type cml_data_types:CML_INT32_T; default "0"; - config true; } // END of vrId definition. leaf channelGroup { @@ -59,16 +60,15 @@ submodule lacp { type cml_data_types:CML_UINT16_T { range "1..65535"; } - config true; } // END of channelGroup definition. leaf modeOperation { mandatory true; type cml_data_types:CML_LACP_MODE_T; - config true; description "channel-group"; } // END of modeOperation definition. + uses mlagAgg-grouping; } // End of nsmlacpInterface-list } // END of nsmlacpInterface-grouping definition. @@ -84,21 +84,20 @@ submodule lacp { leaf ifName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of ifName definition. leaf psc { type cml_data_types:CML_LACP_PSC_T; default "src-dst-mac"; - config true; } // END of psc definition. leaf static-channel-group { type cml_data_types:CML_UINT16_T { range "1..12"; } - config true; description "static channel group"; } // END of static-channel-group definition. diff --git a/yang-files/lag.yang b/yang-files/lag.yang index d92fc429..833754f1 100644 --- a/yang-files/lag.yang +++ b/yang-files/lag.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -32,7 +32,7 @@ submodule lag { revision "2015-10-21" { - description "Revisied on 2015-10-21."; + description "Initial version of datamodel."; } @@ -48,8 +48,9 @@ submodule lag { leaf ifName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of ifName definition. leaf portPriority { @@ -57,26 +58,22 @@ submodule lag { range "1..65535"; } default "32768"; - config true; } // END of portPriority definition. leaf TimeOut { type cml_data_types:CML_LACP_TIMEOUT_T; default "long"; - config true; } // END of TimeOut definition. leaf bridgeType { type cml_data_types:CML_LACP_BRIDGETYPE_T; default "multicast-group-address"; - config true; } // END of bridgeType definition. leaf discardConv { if-feature feature_list:HAVE_LACPV2; type cml_data_types:CML_LACP_DISCARD_CONV_T; default "disable"; - config true; } // END of discardConv definition. } // End of lacpInterface-list @@ -94,11 +91,24 @@ submodule lag { range "1..65535"; } default "32768"; - config true; } // END of systemPriority definition. } // END of lacpSystemPriority-container definition. } // END of lacpSystemPriority-container definition. + grouping lacpdebug-grouping { + container lacpdebug { + config true; + + description + "lacpdebug"; + + leaf debugLacp { + type cml_data_types:CML_LACP_DEBUG_TYPE_T; + } // END of debugLacp definition. + + } // END of lacpdebug-container definition. + } // END of lacpdebug-container definition. + } \ No newline at end of file diff --git a/yang-files/ldap.yang b/yang-files/ldap.yang new file mode 100644 index 00000000..852420ba --- /dev/null +++ b/yang-files/ldap.yang @@ -0,0 +1,225 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : ldap.yang +* +*/ + +submodule ldap { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Layer-3 ldap configurations"; + + + revision "2017-03-09" { + description "Revisied on 2017-03-09."; } + + revision "2017-03-05" { + description "Revisied on 2017-03-05."; } + + revision "2017-03-03" { + description "Revisied on 2017-03-03."; } + + revision "2017-02-27" { + description "Revisied on 2017-02-27."; } + + revision "2017-02-25" { + description "Revisied on 2017-02-25."; } + + revision "2017-02-24" { + description "Revisied on 2017-02-24."; } + + revision "2017-02-23" { + description "Revisied on 2017-02-23."; } + + revision "2017-02-22" { + description "Revisied on 2017-02-22."; } + + revision "2017-02-21" { + description "Revisied on 2017-02-21."; } + + revision "2017-02-20" { + description "Revisied on 2017-02-20."; } + + revision "2017-02-14" { + description "Revisied on 2017-02-14."; } + + revision "2017-02-13" { + description "Revisied on 2017-02-13."; } + + revision "2017-02-11" { + description "Revisied on 2017-02-11."; } + + revision "2017-02-10" { + description "Revisied on 2017-02-10."; } + + revision "2017-02-08" { + description "Revisied on 2017-02-08."; } + + revision "2017-02-07" { + description "Revisied on 2017-02-07."; } + + revision "2017-02-03" { + description "Revisied on 2017-02-03."; } + + revision "2017-02-02" { + description "Revisied on 2017-02-02."; } + + revision "2017-01-31" { + description "Revisied on 2017-01-31."; } + + revision "2017-01-30" { + description "Revisied on 2017-01-30."; } + + revision "2017-01-28" { + description "Revisied on 2017-01-28."; } + + revision "2017-01-27" { + description "Revisied on 2017-01-27."; } + + revision "2017-01-25" { + description "Revisied on 2017-01-25."; } + + revision "2017-01-23" { + description "Revisied on 2017-01-23."; } + + revision "2017-01-20" { + description "Revisied on 2017-01-20."; } + + revision "2017-01-19" { + description "Revisied on 2017-01-19."; } + + revision "2017-01-16" { + description "Revisied on 2017-01-16."; } + + revision "2017-01-12" { + description "Revisied on 2017-01-12."; } + + revision "2017-01-11" { + description "Revisied on 2017-01-11."; } + + revision "2017-01-10" { + description "Revisied on 2017-01-10."; } + + revision "2017-01-04" { + description "Revisied on 2017-01-04."; } + + revision "2016-12-30" { + description "Revisied on 2016-12-30."; } + + revision "2016-12-29" { + description "Revisied on 2016-12-29."; } + + revision "2016-12-28" { + description "Revisied on 2016-12-28."; } + + revision "2016-12-26" { + description "Revisied on 2016-12-26."; } + + revision "2016-12-22" { + description "Revisied on 2016-12-22."; } + + revision "2016-12-17" { + description "Revisied on 2016-12-17."; } + + revision "2016-10-28" { + description "Revisied on 2016-10-28."; } + + revision "2016-01-29" { + description "Revisied on 2016-01-29."; } + + + grouping ldap-grouping { + container ldap { + config true; + + description + "ldap"; + + leaf featureLdap { + type cml_data_types:CML_BOOL_T; + } // END of featureLdap definition. + + leaf port { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + } // END of port definition. + + leaf timeout { + type cml_data_types:CML_UINT16_T { + range "1..60"; + } + } // END of timeout definition. + + + list ldap { + + description + "ldap"; + + config true; + key "hostAddr"; + + + leaf hostAddr { + type cml_data_types:CML_HOSTNAME_T; + } // END of hostAddr definition. + + leaf EnableSsl { + type cml_data_types:CML_BOOL_T; + } // END of EnableSsl definition. + + leaf hostPort { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + } // END of hostPort definition. + + leaf hostDNPort { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "389"; + } // END of hostDNPort definition. + + leaf hostTimeout { + type cml_data_types:CML_UINT16_T { + range "1..60"; + } + default "5"; + } // END of hostTimeout definition. + + leaf hostPTimeout { + type cml_data_types:CML_UINT16_T { + range "1..60"; + } + } // END of hostPTimeout definition. + + leaf rootDN { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of rootDN definition. + + } // End of ldap-list + } // END of ldap-container definition. + } // END of ldap-container definition. + + +} \ No newline at end of file diff --git a/yang-files/libsnmp.yang b/yang-files/libsnmp.yang new file mode 100644 index 00000000..8509377c --- /dev/null +++ b/yang-files/libsnmp.yang @@ -0,0 +1,69 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : libsnmp.yang +* +*/ + +submodule libsnmp { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "snmp configurations"; + + + revision "2017-02-20" { + description "Added snmp-server enable cli."; + } + + revision "2016-10-28" { + description "Initial version of LIBSNMP datamodel."; + } + + + grouping snmpVrfName-grouping { + container snmpVrfName { + if-feature feature_list:HAVE_SNMP_AGENT; + config true; + + description + "snmp-server configuration common for all modules"; + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + leaf-list traps { + type cml_data_types:SNMP_TRAP_OPTIONS_T; + } // END of traps definition. + + leaf enabled { + type cml_data_types:CML_BOOL_T; + } // END of enabled definition. + + } // END of snmpVrfName-container definition. + } // END of snmpVrfName-container definition. + + +} \ No newline at end of file diff --git a/yang-files/libsyslog.yang b/yang-files/libsyslog.yang new file mode 100644 index 00000000..a5651e04 --- /dev/null +++ b/yang-files/libsyslog.yang @@ -0,0 +1,139 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : libsyslog.yang +* +*/ + +submodule libsyslog { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + description + "syslog configurations"; + + + revision "2016-12-27" { + description "Added snmp oid and documetation tag."; + } + + revision "2016-10-28" { + description "Initial version of SYSLOG datamodel."; + } + + + + grouping logginglevel-grouping { + list logginglevel { + + description + "for show logging level"; + + config true; + key "loggingmodule"; + + + leaf loggingmodule { + type cml_data_types:CML_MODULE_NAME_T; + description "logging level"; + } // END of loggingmodule definition. + + leaf logginglevel { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "0..7"; + } + } // END of logginglevel definition. + + } // End of logginglevel-list + } // END of logginglevel-grouping definition. + + grouping log-grouping { + container log { + config true; + + description + "log"; + + leaf monitorseverity { + type cml_data_types:CML_INT8_T { + range "0..7"; + } + default "7"; + description "logging monitor"; + } // END of monitorseverity definition. + + leaf consoleseverity { + type cml_data_types:CML_INT8_T { + range "0..7"; + } + default "2"; + description "logging console"; + } // END of consoleseverity definition. + + leaf logfile { + type cml_data_types:CML_STRING_T { + pattern "[a-zA-Z0-9_]*"; + length "0..255"; + } + description " Log filename"; + } // END of logfile definition. + + leaf severity { + type cml_data_types:CML_UINT32_T { + range "0..7"; + } + default "6"; + description "logfile_severity"; + } // END of severity definition. + + leaf size { + type cml_data_types:CML_UINT32_T { + range "4096..4194304"; + } + default "4194304"; + description "logging logfile"; + } // END of size definition. + + leaf debuglogfile { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "debug file name"; + } // END of debuglogfile definition. + + leaf debugsize { + type cml_data_types:CML_UINT32_T { + range "4096..4194304"; + } + description "debug logfile"; + } // END of debugsize definition. + + leaf log_syslog { + type cml_data_types:CML_BOOL_T; + description "log syslog"; + } // END of log_syslog definition. + + leaf timestamp { + type cml_data_types:CML_TIMESTAMP_T; + description "logging timestamp"; + } // END of timestamp definition. + + } // END of log-container definition. + } // END of log-container definition. + + +} \ No newline at end of file diff --git a/yang-files/license.yang b/yang-files/license.yang new file mode 100644 index 00000000..3d2df4a8 --- /dev/null +++ b/yang-files/license.yang @@ -0,0 +1,39 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : license.yang +* +*/ + +submodule license { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + description + "license configurations"; + + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of license datamodel."; + } + + + +} \ No newline at end of file diff --git a/yang-files/lldpv2.yang b/yang-files/lldpv2.yang index cca4eb6e..931bb88f 100644 --- a/yang-files/lldpv2.yang +++ b/yang-files/lldpv2.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -17,6 +17,7 @@ submodule lldpv2 { belongs-to ZebOS { prefix ZebOS; } include interface; + include vr; import cml_data_types { @@ -31,250 +32,785 @@ submodule lldpv2 { "Link Layer Discovery Protocol"; - revision "2016-10-20" { - description "Revisied on 2016-10-20."; } + revision "2017-03-09" { + description "when tag added fro limit command."; + } + + revision "2016-12-26" { + description "Initial version of LLDP datamodel."; + } + + grouping lldpMaster-grouping { + list lldpMaster { + if-feature feature_list:HAVE_LLDPV2; - grouping lldpv2Interface-grouping { - list lldpv2Interface { - description - "LLDPV2 interface related operations"; + "lldpMaster"; config true; - key "ifName"; + key "vrId"; - leaf ifName { - type cml_data_types:CML_STRING_T; - config true; - } // END of ifName definition. - leaf vrId { type cml_data_types:CML_INT32_T; - config true; } // END of vrId definition. - leaf lldpPortDescription { - if-feature feature_list:HAVE_LLDPV2; - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "lldp port-description"; - } // END of lldpPortDescription definition. - - leaf lldpAgtCircuitId { - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "lldp agt-circuit-id"; - } // END of lldpAgtCircuitId definition. - - leaf lldpmedDevType { - if-feature feature_list:HAVE_LLDPV2; - type cml_data_types:CML_LLDP_MEDDEV_T; - config true; - description "lldp med-devtype"; - } // END of lldpmedDevType definition. - - leaf localName { - if-feature feature_list:HAVE_LLDPV2; - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "lldp locally-assigned"; - } // END of localName definition. - - - list lldpAgent { + leaf lldpRun { + type cml_data_types:CML_BOOL_T; + } // END of lldpRun definition. + + leaf ifCnt { + type cml_data_types:CML_UINT16_T; + config false; + } // END of ifCnt definition. + + leaf syscapEnabled { + type cml_data_types:CML_UINT16_T; + config false; + } // END of syscapEnabled definition. + + leaf sysNameConf { + type cml_data_types:CML_BOOL_T; + config false; + } // END of sysNameConf definition. + + leaf sysDescrConf { + type cml_data_types:CML_BOOL_T; + config false; + } // END of sysDescrConf definition. + + leaf lldpStatsTablesInserts { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lldpStatsTablesInserts definition. + + leaf lldpStatsTablesDeletes { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lldpStatsTablesDeletes definition. + + leaf lldpStatsTablesDrops { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lldpStatsTablesDrops definition. + + leaf lldpStateRemTablesAgeouts { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lldpStateRemTablesAgeouts definition. + + leaf lldpNtfInterval { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lldpNtfInterval definition. + + leaf lldpStatStablesAgeouts { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lldpStatStablesAgeouts definition. + + leaf confFlag { + type cml_data_types:CML_UINT8_T; + config false; + } // END of confFlag definition. + + leaf hostConfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of hostConfName definition. + + + list lldpv2Interface { description - "LLDP configuration related operations"; + "LLDPV2 interface related operations"; config true; - key "lldpAgent"; + key "ifName"; - leaf lldpAgent { - type cml_data_types:CML_LLDP_AGENT_T; - config true; - } // END of lldpAgent definition. - - leaf lldpEnable { - type cml_data_types:CML_LLDP_ENABLE_T; - default "rxonly"; - config true; - description "lldp enable"; - } // END of lldpEnable definition. - - leaf lldpDisable { - type cml_data_types:CML_BOOL_T; - config true; - description "lldp disable"; - } // END of lldpDisable definition. - - leaf reinitDelay { - type cml_data_types:CML_STRING_T; - config true; - description "lldp reinitDelay timer"; - } // END of reinitDelay definition. - - leaf MsgTxInterval { - type cml_data_types:CML_UINT32_T { - range "5..3600"; - } - default "30"; - config true; - description "lldp timer msg-tx-interval"; - } // END of MsgTxInterval definition. - - leaf MsgTxValue { - type cml_data_types:CML_STRING_T; - config true; - description "lldp msg-tx-hold"; - } // END of MsgTxValue definition. - - leaf MsgFastTx { - type cml_data_types:CML_UINT32_T { - range "1..3600"; + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; } - default "1"; - config true; - description "lldp msg-fast-tx timer"; - } // END of MsgFastTx definition. - - leaf neighborLimit { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - config true; - } // END of neighborLimit definition. + } // END of ifName definition. - leaf neighborTimer { - type cml_data_types:CML_UINT32_T { - range "1..65535"; + leaf lldpPortDescription { + if-feature feature_list:HAVE_LLDPV2; + type cml_data_types:CML_STRING_T { + length "0..255"; } - config true; - description "lldp too-many-neighbors received-info"; - } // END of neighborTimer definition. + default "NULL"; + } // END of lldpPortDescription definition. - leaf portLimit { - type cml_data_types:CML_UINT32_T { - range "1..65535"; + leaf lldpAgtCircuitId { + type cml_data_types:CML_STRING_T { + length "0..255"; } - config true; - description "lldp too-many-neighbors existing-info"; - } // END of portLimit definition. + default "NULL"; + } // END of lldpAgtCircuitId definition. - leaf portMac { - type cml_data_types:CML_STRING_T; - config true; - } // END of portMac definition. + leaf lldpmedDevType { + type cml_data_types:CML_LLDP_MEDDEV_T; + } // END of lldpmedDevType definition. - leaf portTimer { - type cml_data_types:CML_UINT32_T { - range "1..65535"; + leaf localName { + type cml_data_types:CML_STRING_T { + length "0..255"; } - config true; - description "lldp too-many-neighbors existing-info"; - } // END of portTimer definition. + } // END of localName definition. - leaf TxMaxCredit { - type cml_data_types:CML_UINT32_T { - range "1..10"; + leaf entityPhyAliasPort { + type cml_data_types:CML_STRING_T { + length "0..255"; } - default "5"; - config true; - description "lldp tx-max-credit"; - } // END of TxMaxCredit definition. + config false; + } // END of entityPhyAliasPort definition. - leaf TxFastInit { - type cml_data_types:CML_UINT32_T { - range "1..8"; + leaf entityPhyAliasChassis { + type cml_data_types:CML_STRING_T { + length "0..255"; } - default "4"; - config true; - description "lldp tx-fast-init"; - } // END of TxFastInit definition. - - leaf portAddr { - type cml_data_types:CML_LLDP_MGMT_ADDR_T; - default "mac-address"; - config true; - description "lldp management-address-tlv"; - } // END of portAddr definition. - - leaf chassisId { - type cml_data_types:CML_LLDP_CHASSIS_T; - default "mac-address"; - config true; - description "lldp chassis-id-tlv"; - } // END of chassisId definition. - - leaf portId { - type cml_data_types:CML_LLDP_PORT_T; - default "mac-address"; - config true; - description "lldp port-id-tlv"; - } // END of portId definition. + config false; + } // END of entityPhyAliasChassis definition. - leaf tlvFlag { - type cml_data_types:CML_LLDP_TVL_FLAG_T; - config true; - description "lldp tlv-select"; - } // END of tlvFlag definition. + leaf lldpAgentLocallyEnabled { + type cml_data_types:CML_BOOL_T; + config false; + } // END of lldpAgentLocallyEnabled definition. - leaf TlvSelect { - type cml_data_types:CML_LLDP_IEEE_8023_T; - config true; - } // END of TlvSelect definition. + leaf lldpAgentDisabled { + type cml_data_types:CML_BOOL_T; + config false; + } // END of lldpAgentDisabled definition. - leaf TlvSelectIeee { - type cml_data_types:CML_LLDP_IEEE_8021_T; - config true; - } // END of TlvSelectIeee definition. - leaf TlvSelectBasic { - type cml_data_types:CML_LLDP_BASIC_T; - config true; - description "lldp tlv-select basic-mgmt"; - } // END of TlvSelectBasic definition. + list lldpAgent { + + description + "LLDP configuration related operations"; - leaf tlvMed { - type cml_data_types:CML_LLDP_MED_T; - default "media-capabilities"; config true; - description "lldp tlv-select med"; - } // END of tlvMed definition. - - } // End of lldpAgent-list - } // End of lldpv2Interface-list - } // END of lldpv2Interface-grouping definition. + key "lldpAgent"; + + + leaf lldpAgent { + type cml_data_types:CML_LLDP_AGENT_T; + } // END of lldpAgent definition. + + leaf lldpEnable { + type cml_data_types:CML_LLDP_ENABLE_T; + default "rxonly"; + } // END of lldpEnable definition. + + leaf destMacAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of destMacAddr definition. + + leaf newNeighbour { + type cml_data_types:CML_UINT32_T; + config false; + } // END of newNeighbour definition. + + container lldpTxSmConfig { + config true; + + description + "lldpTxSmConfig"; + + leaf reinitDelay { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of reinitDelay definition. + + leaf MsgTxInterval { + type cml_data_types:CML_UINT32_T { + range "5..3600"; + } + default "30"; + } // END of MsgTxInterval definition. + + leaf MsgTxValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of MsgTxValue definition. + + leaf MsgFastTx { + type cml_data_types:CML_UINT32_T { + range "1..3600"; + } + default "1"; + } // END of MsgFastTx definition. + + leaf txMaxCredit { + type cml_data_types:CML_UINT32_T { + range "1..10"; + } + default "5"; + } // END of txMaxCredit definition. + + leaf txFastInit { + type cml_data_types:CML_UINT32_T { + range "1..8"; + } + default "4"; + } // END of txFastInit definition. + + } // END of lldpTxSmConfig-container definition. + container lldpTxSm { + config false; + + description + "lldpTxSm"; + + leaf txCredit { + type cml_data_types:CML_UINT32_T; + } // END of txCredit definition. + + leaf txFast { + type cml_data_types:CML_UINT32_T; + } // END of txFast definition. + + leaf state { + type cml_data_types:CML_UINT8_T; + } // END of state definition. + + leaf txNow { + type cml_data_types:CML_BOOL_T; + } // END of txNow definition. + + leaf txTick { + type cml_data_types:CML_BOOL_T; + } // END of txTick definition. + + leaf localChange { + type cml_data_types:CML_BOOL_T; + } // END of localChange definition. + + leaf txTtl { + type cml_data_types:CML_INT16_T; + } // END of txTtl definition. + + leaf lengthErrorsTotal { + type cml_data_types:CML_UINT32_T; + } // END of lengthErrorsTotal definition. + + leaf framesOutTotal { + type cml_data_types:CML_UINT32_T; + } // END of framesOutTotal definition. + + } // END of lldpTxSm-container definition. + container lldpRxSmConfig { + config true; + + description + "lldpRxSmConfig"; + + leaf neighborLimit { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + } // END of neighborLimit definition. + + leaf neighborTimer { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + } // END of neighborTimer definition. + + leaf portMac { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of portMac definition. + + leaf portTimer { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + } // END of portTimer definition. + + } // END of lldpRxSmConfig-container definition. + container lldpRxSm { + config false; + + description + "lldpRxSm"; + + leaf badFrame { + type cml_data_types:CML_BOOL_T; + } // END of badFrame definition. + + leaf rxChanges { + type cml_data_types:CML_BOOL_T; + } // END of rxChanges definition. + + leaf remoteChanges { + type cml_data_types:CML_BOOL_T; + } // END of remoteChanges definition. + + leaf tooManyNeighbours { + type cml_data_types:CML_BOOL_T; + } // END of tooManyNeighbours definition. + + leaf rxInfoAge { + type cml_data_types:CML_BOOL_T; + } // END of rxInfoAge definition. + + leaf ageoutsTotal { + type cml_data_types:CML_UINT32_T; + } // END of ageoutsTotal definition. + + leaf framesDiscardedTotal { + type cml_data_types:CML_UINT32_T; + } // END of framesDiscardedTotal definition. + + leaf framesInErrorsTotal { + type cml_data_types:CML_UINT32_T; + } // END of framesInErrorsTotal definition. + + leaf framesInTotal { + type cml_data_types:CML_UINT32_T; + } // END of framesInTotal definition. + + leaf tlvsDiscardedTotal { + type cml_data_types:CML_UINT32_T; + } // END of tlvsDiscardedTotal definition. + + leaf tlvsUnrecognizedTotal { + type cml_data_types:CML_UINT32_T; + } // END of tlvsUnrecognizedTotal definition. + + leaf tooManyNeighborsFlag { + type cml_data_types:CML_UINT8_T; + } // END of tooManyNeighborsFlag definition. + + leaf tooManyNeighborsCount { + type cml_data_types:CML_UINT32_T; + } // END of tooManyNeighborsCount definition. + + leaf tooManyNeighborsDiscardType { + type cml_data_types:CML_UINT8_T; + } // END of tooManyNeighborsDiscardType definition. + + leaf tooManyNeighborsDiscardMac { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of tooManyNeighborsDiscardMac definition. + + + list rlldpList { + + description + "rlldpList"; + + config false; + key "remoteIfname"; + + + leaf remoteIfname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteIfname definition. + + leaf remoteSysName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteSysName definition. + + leaf remotePortIdSubtype { + type cml_data_types:CML_UINT8_T; + } // END of remotePortIdSubtype definition. + + leaf remoteChassicComp { + type cml_data_types:CML_UINT8_T; + } // END of remoteChassicComp definition. + + leaf remotePortComp { + type cml_data_types:CML_UINT8_T; + } // END of remotePortComp definition. + + leaf remoteIfalias { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteIfalias definition. + + leaf remoteMacAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteMacAddr definition. + + leaf remoteIfagentcircuitid { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteIfagentcircuitid definition. + + leaf remoteLocal { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteLocal definition. + + leaf remoteEntityPhyAlias { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteEntityPhyAlias definition. + + leaf remoteChassisIdType { + type cml_data_types:CML_UINT8_T; + } // END of remoteChassisIdType definition. + + leaf remotePortIdType { + type cml_data_types:CML_UINT8_T; + } // END of remotePortIdType definition. + + leaf rxTtl { + type cml_data_types:CML_UINT16_T; + } // END of rxTtl definition. + + leaf remoteIfNumbering { + type cml_data_types:CML_UINT8_T; + } // END of remoteIfNumbering definition. + + leaf remoteIfNumber { + type cml_data_types:CML_UINT32_T; + } // END of remoteIfNumber definition. + + leaf remotePortVlanId { + type cml_data_types:CML_UINT16_T; + } // END of remotePortVlanId definition. + + leaf remotePpvidFlag { + type cml_data_types:CML_UINT8_T; + } // END of remotePpvidFlag definition. + + leaf remotePpVlanId { + type cml_data_types:CML_UINT16_T; + } // END of remotePpVlanId definition. + + leaf remoteProtocol { + type cml_data_types:CML_UINT16_T; + } // END of remoteProtocol definition. + + leaf remoteVidUsageDigest { + type cml_data_types:CML_UINT32_T; + } // END of remoteVidUsageDigest definition. + + leaf remoteMgmtVlan { + type cml_data_types:CML_UINT16_T; + } // END of remoteMgmtVlan definition. + + leaf remoteAutonegoSupport { + type cml_data_types:CML_UINT8_T; + } // END of remoteAutonegoSupport definition. + + leaf remoteAutonegoCap { + type cml_data_types:CML_UINT16_T; + } // END of remoteAutonegoCap definition. + + leaf remoteOperMauType { + type cml_data_types:CML_UINT16_T; + } // END of remoteOperMauType definition. + + leaf remoteLinkAggrStatus { + type cml_data_types:CML_UINT8_T; + } // END of remoteLinkAggrStatus definition. + + leaf remoteLinkAggrId { + type cml_data_types:CML_UINT32_T; + } // END of remoteLinkAggrId definition. + + leaf remoteMaxFrameSize { + type cml_data_types:CML_UINT16_T; + } // END of remoteMaxFrameSize definition. + + leaf remoteSysDescr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteSysDescr definition. + + leaf remoteSysCap { + type cml_data_types:CML_UINT16_T; + } // END of remoteSysCap definition. + + leaf remoteSysCapEnabled { + type cml_data_types:CML_UINT16_T; + } // END of remoteSysCapEnabled definition. + + leaf remoteMgmtAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteMgmtAddr definition. + + leaf remoteMgmtAddrSubType { + type cml_data_types:CML_UINT8_T; + } // END of remoteMgmtAddrSubType definition. + + leaf remoteOid { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteOid definition. + + leaf timeMarkIndex { + type cml_data_types:CML_UINT8_T; + } // END of timeMarkIndex definition. + + leaf remoteIndex { + type cml_data_types:CML_UINT32_T; + } // END of remoteIndex definition. + + leaf remoteUnknownTlvType { + type cml_data_types:CML_UINT32_T; + } // END of remoteUnknownTlvType definition. + + leaf remoteUnknownTlvInfo { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteUnknownTlvInfo definition. + + leaf remoteUnknownTlvInfoLen { + type cml_data_types:CML_UINT16_T; + } // END of remoteUnknownTlvInfoLen definition. + + leaf remoteMdiPowerSupport { + type cml_data_types:CML_UINT8_T; + } // END of remoteMdiPowerSupport definition. + + leaf remotePsePowerPair { + type cml_data_types:CML_UINT8_T; + } // END of remotePsePowerPair definition. + + leaf remotePowerClass { + type cml_data_types:CML_UINT8_T; + } // END of remotePowerClass definition. + + leaf remoteTypeSourcePriority { + type cml_data_types:CML_UINT8_T; + } // END of remoteTypeSourcePriority definition. + + leaf remotePdRequestedPower { + type cml_data_types:CML_UINT16_T; + } // END of remotePdRequestedPower definition. + + leaf remotePseAllocatedPower { + type cml_data_types:CML_UINT16_T; + } // END of remotePseAllocatedPower definition. + + leaf peerEts { + type cml_data_types:CML_BOOL_T; + } // END of peerEts definition. + + leaf etsError { + type cml_data_types:CML_BOOL_T; + } // END of etsError definition. + + leaf etsTcgNum { + type cml_data_types:CML_UINT8_T; + } // END of etsTcgNum definition. + + leaf peerApp { + type cml_data_types:CML_BOOL_T; + } // END of peerApp definition. + + leaf appError { + type cml_data_types:CML_BOOL_T; + } // END of appError definition. + + leaf cdcpStatus { + type cml_data_types:CML_BOOL_T; + } // END of cdcpStatus definition. + + leaf peerEvb { + type cml_data_types:CML_BOOL_T; + } // END of peerEvb definition. + + leaf peerCdcp { + type cml_data_types:CML_BOOL_T; + } // END of peerCdcp definition. + + leaf remoteQcnTlv { + type cml_data_types:CML_BOOL_T; + } // END of remoteQcnTlv definition. + + leaf remoteQcnCnpv { + type cml_data_types:CML_UINT8_T; + } // END of remoteQcnCnpv definition. + + leaf remoteQcnReady { + type cml_data_types:CML_UINT8_T; + } // END of remoteQcnReady definition. + + + list remoteVlanList { + + description + "remoteVlanList"; + + config false; + key "vlanId"; + + + leaf vlanId { + type cml_data_types:CML_UINT16_T; + } // END of vlanId definition. + + leaf vlanName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vlanName definition. + + } // End of remoteVlanList-list + + list remoteMgmtInfo { + + description + "remoteMgmtInfo"; + + config false; + key "remoteMgmtAddr"; + + + leaf remoteMgmtAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteMgmtAddr definition. + + leaf remoteMgmtAddrSubType { + type cml_data_types:CML_UINT8_T; + } // END of remoteMgmtAddrSubType definition. + + leaf remoteIfNumbering { + type cml_data_types:CML_UINT8_T; + } // END of remoteIfNumbering definition. + + leaf remoteIfNumber { + type cml_data_types:CML_UINT32_T; + } // END of remoteIfNumber definition. + + leaf remoteOid { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteOid definition. + + } // End of remoteMgmtInfo-list + } // End of rlldpList-list + } // END of lldpRxSm-container definition. + container lldpTlvConfigCmd { + config true; + + description + "lldpTlvConfigCmd"; + + leaf portAddr { + type cml_data_types:CML_LLDP_MGMT_ADDR_T; + default "mac-address"; + } // END of portAddr definition. + + leaf chassisId { + type cml_data_types:CML_LLDP_CHASSIS_T; + default "mac-address"; + } // END of chassisId definition. + + leaf portId { + type cml_data_types:CML_LLDP_PORT_T; + default "mac-address"; + } // END of portId definition. + + leaf tlvFlag { + type cml_data_types:CML_LLDP_TVL_FLAG_T; + } // END of tlvFlag definition. + + leaf TlvSelect { + type cml_data_types:CML_LLDP_IEEE_8023_T; + } // END of TlvSelect definition. + + leaf TlvSelectIeee { + type cml_data_types:CML_LLDP_IEEE_8021_T; + } // END of TlvSelectIeee definition. + + leaf TlvSelectBasic { + type cml_data_types:CML_LLDP_BASIC_T; + } // END of TlvSelectBasic definition. + + leaf tlvMed { + type cml_data_types:CML_LLDP_MED_T; + } // END of tlvMed definition. + + } // END of lldpTlvConfigCmd-container definition. + container lldpTlvConfig { + config false; + + description + "lldpTlvConfig"; + + leaf protocol { + type cml_data_types:CML_UINT16_T; + } // END of protocol definition. + + leaf tooManyNeighborsCount { + type cml_data_types:CML_UINT32_T; + } // END of tooManyNeighborsCount definition. + + leaf tooManyNeighborsLimit { + type cml_data_types:CML_UINT32_T; + } // END of tooManyNeighborsLimit definition. + + leaf tooManyNeighborsDiscardType { + type cml_data_types:CML_UINT8_T; + } // END of tooManyNeighborsDiscardType definition. + + leaf tooManyNeighborsDiscardMac { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of tooManyNeighborsDiscardMac definition. + + leaf tooManyNeighborsInterval { + type cml_data_types:CML_UINT32_T; + } // END of tooManyNeighborsInterval definition. + + } // END of lldpTlvConfig-container definition. + } // End of lldpAgent-list + } // End of lldpv2Interface-list + container lldpMgmtIF { + config true; - grouping systemDetail-grouping { - container systemDetail { - config true; - - description - "systemDetail"; - - leaf lldpRun { - if-feature feature_list:HAVE_LLDPV2; - type cml_data_types:CML_BOOL_T; - config true; - } // END of lldpRun definition. + description + "lldpMgmtIF"; - leaf locallyAssigned { - if-feature feature_list:HAVE_LLDPV2; - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - description "lldp chassis locally-assigned"; - } // END of locallyAssigned definition. + leaf locallyAssigned { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + } // END of locallyAssigned definition. - } // END of systemDetail-container definition. - } // END of systemDetail-container definition. + } // END of lldpMgmtIF-container definition. + } // End of lldpMaster-list + } // END of lldpMaster-grouping definition. } \ No newline at end of file diff --git a/yang-files/mcec.yang b/yang-files/mcec.yang new file mode 100644 index 00000000..5c86c061 --- /dev/null +++ b/yang-files/mcec.yang @@ -0,0 +1,553 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : mcec.yang +* +*/ + +submodule mcec { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Multi Chassis Ethernet Channel (MCEC)"; + + + revision "2016-07-02" { + description "Initial draft version for MCEC module."; + } + + + grouping mcecMaster-grouping { + container mcecMaster { + config true; + + description + "mcecMaster"; + + leaf mcecDebug { + type cml_data_types:MCEC_DEBUG_T; + description "debug mcec"; + } // END of mcecDebug definition. + + + list portal { + + description + "struct mcec_portal"; + + config false; + key "mlagId"; + + + leaf mlagId { + type cml_data_types:CML_UINT16_T; + } // END of mlagId definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf homeAggKey { + type cml_data_types:CML_UINT16_T; + } // END of homeAggKey definition. + + leaf homeAdminAggKey { + type cml_data_types:CML_UINT16_T; + } // END of homeAdminAggKey definition. + + leaf homeOperAggKey { + type cml_data_types:CML_UINT16_T; + } // END of homeOperAggKey definition. + + leaf homeOperPartnerAggKey { + type cml_data_types:CML_UINT16_T; + } // END of homeOperPartnerAggKey definition. + + leaf homePartnerSystem { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of homePartnerSystem definition. + + leaf homePartnerSystemPriority { + type cml_data_types:CML_UINT16_T; + } // END of homePartnerSystemPriority definition. + + leaf homeMemberIfBandwidth { + type cml_data_types:CML_UINT64_T; + } // END of homeMemberIfBandwidth definition. + + leaf homePhyPropertiesDigest { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of homePhyPropertiesDigest definition. + + leaf homeMemIfState { + type cml_data_types:CML_UINT8_T; + } // END of homeMemIfState definition. + + leaf homeStpState { + type cml_data_types:CML_UINT8_T; + } // END of homeStpState definition. + + leaf homeMlagSync { + type cml_data_types:CML_UINT8_T; + } // END of homeMlagSync definition. + + leaf idlToMlagFloodEnabled { + type cml_data_types:CML_UINT8_T; + } // END of idlToMlagFloodEnabled definition. + + leaf mlagPortState { + type cml_data_types:CML_UINT8_T; + } // END of mlagPortState definition. + + leaf mlagIfState { + type cml_data_types:CML_UINT8_T; + } // END of mlagIfState definition. + + leaf isAggMapped { + type cml_data_types:CML_UINT8_T; + } // END of isAggMapped definition. + + leaf nttinfopdu { + type cml_data_types:CML_UINT8_T; + } // END of nttinfopdu definition. + + leaf mlagInfoUpdate { + type cml_data_types:CML_UINT8_T; + } // END of mlagInfoUpdate definition. + + leaf differMlagInfo { + type cml_data_types:CML_UINT8_T; + } // END of differMlagInfo definition. + + leaf neighAdminAggKey { + type cml_data_types:CML_UINT16_T; + } // END of neighAdminAggKey definition. + + leaf neighOperPartnerAggKey { + type cml_data_types:CML_UINT16_T; + } // END of neighOperPartnerAggKey definition. + + leaf neighPartnerSystem { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of neighPartnerSystem definition. + + leaf neighPartnerSystemPriority { + type cml_data_types:CML_UINT16_T; + } // END of neighPartnerSystemPriority definition. + + leaf neighMemberIfBandwidth { + type cml_data_types:CML_UINT64_T; + } // END of neighMemberIfBandwidth definition. + + leaf neighPhyPropertiesDigest { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of neighPhyPropertiesDigest definition. + + leaf neighMemIfState { + type cml_data_types:CML_UINT8_T; + } // END of neighMemIfState definition. + + leaf neighStpState { + type cml_data_types:CML_UINT8_T; + } // END of neighStpState definition. + + leaf neighMlagSync { + type cml_data_types:CML_UINT8_T; + } // END of neighMlagSync definition. + + leaf mlagBandwidth { + type cml_data_types:CML_UINT64_T; + } // END of mlagBandwidth definition. + + leaf mcecInfoRcvState { + type cml_data_types:CML_UINT8_T; + } // END of mcecInfoRcvState definition. + + leaf mcecInfoPeriodicTxState { + type cml_data_types:CML_UINT8_T; + } // END of mcecInfoPeriodicTxState definition. + + leaf infoPeriodicTxTimerExpired { + type cml_data_types:CML_UINT8_T; + } // END of infoPeriodicTxTimerExpired definition. + + leaf mcecValidInfoPduRx { + type cml_data_types:CML_UINT32_T; + } // END of mcecValidInfoPduRx definition. + + leaf mcecValidInfoPduTx { + type cml_data_types:CML_UINT32_T; + } // END of mcecValidInfoPduTx definition. + + } // End of portal-list + container mcecDomain { + config true; + + description + "mcec domain"; + + leaf homeDomainSysNumber { + type cml_data_types:CML_UINT8_T { + range "1..2"; + } + description "domain system number"; + } // END of homeDomainSysNumber definition. + + leaf confNeighDomainSysNumber { + type cml_data_types:CML_UINT8_T; + config false; + } // END of confNeighDomainSysNumber definition. + + leaf domainAddress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "domain-address"; + } // END of domainAddress definition. + + leaf domainPriority { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "32768"; + description "domain priority"; + } // END of domainPriority definition. + + leaf homeHelloTimeout { + type cml_data_types:CML_MCEC_HELLO_T; + default "short"; + description "domain hello timeout"; + } // END of homeHelloTimeout definition. + + leaf domainSync { + type cml_data_types:CML_UINT8_T; + config false; + } // END of domainSync definition. + + leaf domainAdjacency { + type cml_data_types:CML_UINT8_T; + config false; + } // END of domainAdjacency definition. + + leaf domainConfigured { + type cml_data_types:CML_UINT8_T; + config false; + } // END of domainConfigured definition. + + leaf mcecBegin { + type cml_data_types:CML_UINT8_T; + config false; + } // END of mcecBegin definition. + + leaf nsmImiSyncUpDone { + type cml_data_types:CML_UINT8_T; + config false; + } // END of nsmImiSyncUpDone definition. + + leaf portalCount { + type cml_data_types:CML_UINT16_T; + config false; + } // END of portalCount definition. + + leaf mcecInvalidPduRx { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mcecInvalidPduRx definition. + + } // END of mcecDomain-container definition. + container idp { + config true; + + description + "mcec_idp"; + + leaf intraDomainLink { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "intra-domain-link"; + } // END of intraDomainLink definition. + + leaf neighDomainAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of neighDomainAddr definition. + + leaf neighDomainPriority { + type cml_data_types:CML_UINT32_T; + config false; + } // END of neighDomainPriority definition. + + leaf neighDomainSysNumber { + type cml_data_types:CML_UINT16_T; + config false; + } // END of neighDomainSysNumber definition. + + leaf neighDomainSync { + type cml_data_types:CML_UINT16_T; + config false; + } // END of neighDomainSync definition. + + leaf neighHelloTimeout { + type cml_data_types:CML_UINT16_T; + config false; + } // END of neighHelloTimeout definition. + + leaf differDomain { + type cml_data_types:CML_UINT16_T; + config false; + } // END of differDomain definition. + + leaf ntthellopdu { + type cml_data_types:CML_UINT16_T; + config false; + } // END of ntthellopdu definition. + + leaf portEnabled { + type cml_data_types:CML_UINT16_T; + config false; + } // END of portEnabled definition. + + leaf stpState { + type cml_data_types:CML_UINT16_T; + config false; + } // END of stpState definition. + + leaf helloPeriodicTxTimerExpired { + type cml_data_types:CML_UINT8_T; + config false; + } // END of helloPeriodicTxTimerExpired definition. + + leaf currentWhileTimerExpired { + type cml_data_types:CML_UINT8_T; + config false; + } // END of currentWhileTimerExpired definition. + + leaf mcecHelloRcvState { + type cml_data_types:CML_UINT8_T; + config false; + } // END of mcecHelloRcvState definition. + + leaf mcecHelloPeriodicTxState { + type cml_data_types:CML_UINT8_T; + config false; + } // END of mcecHelloPeriodicTxState definition. + + leaf mcecValidHelloPduTx { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mcecValidHelloPduTx definition. + + leaf mcecValidInfoPduTx { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mcecValidInfoPduTx definition. + + leaf mcecValidMacSyncPduTx { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mcecValidMacSyncPduTx definition. + + leaf mcecValidHelloPduRx { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mcecValidHelloPduRx definition. + + leaf mcecValidInfoPduRx { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mcecValidInfoPduRx definition. + + leaf mcecValidMacSyncPduRx { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mcecValidMacSyncPduRx definition. + + } // END of idp-container definition. + container macSync { + config false; + + description + "mac_sync *msyncp : mac synchronization structure"; + + leaf numberOfEntry { + type cml_data_types:CML_UINT16_T; + } // END of numberOfEntry definition. + + + list lmt { + + description + "Local MAC Table"; + + config false; + key "lmtMacAddr"; + + + leaf lmtIsAddEntry { + type cml_data_types:CML_UINT8_T; + } // END of lmtIsAddEntry definition. + + leaf lmtIsStaticEntry { + type cml_data_types:CML_UINT8_T; + } // END of lmtIsStaticEntry definition. + + leaf lmtVid { + type cml_data_types:CML_UINT16_T; + } // END of lmtVid definition. + + leaf lmtMacAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of lmtMacAddr definition. + + leaf lmtOifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of lmtOifName definition. + + } // End of lmt-list + + list rmt { + + description + "Remote MAC Table"; + + config false; + key "rmtMacAddr"; + + + leaf rmtIsAddEntry { + type cml_data_types:CML_UINT8_T; + } // END of rmtIsAddEntry definition. + + leaf rmtIsStaticEntry { + type cml_data_types:CML_UINT8_T; + } // END of rmtIsStaticEntry definition. + + leaf rmtVid { + type cml_data_types:CML_UINT16_T; + } // END of rmtVid definition. + + leaf rmtMacAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of rmtMacAddr definition. + + leaf rmtOifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of rmtOifName definition. + + } // End of rmt-list + } // END of macSync-container definition. + container mcecStpSync { + config false; + + description + "stp synchronization structure"; + + leaf mcecStpSyncFlags { + type cml_data_types:CML_UINT8_T; + } // END of mcecStpSyncFlags definition. + + leaf bridgePriority { + type cml_data_types:CML_UINT16_T; + } // END of bridgePriority definition. + + leaf pathcostMethod { + type cml_data_types:CML_UINT8_T; + } // END of pathcostMethod definition. + + leaf domainDigest { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of domainDigest definition. + + leaf neighDomainDigest { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of neighDomainDigest definition. + + leaf stpSyncNumberOfEntries { + type cml_data_types:CML_UINT8_T; + } // END of stpSyncNumberOfEntries definition. + + leaf tcnMlagId { + type cml_data_types:CML_UINT16_T; + } // END of tcnMlagId definition. + + + list mcecStpMlagIfSyncEntry { + + description + "mcecStpMlagIfSyncEntry"; + + config false; + key "mlagId"; + + + leaf mlagId { + type cml_data_types:CML_UINT16_T; + } // END of mlagId definition. + + leaf portPriority { + type cml_data_types:CML_UINT16_T; + } // END of portPriority definition. + + leaf pathCost { + type cml_data_types:CML_UINT32_T; + } // END of pathCost definition. + + leaf interfaceDigest { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of interfaceDigest definition. + + leaf neighInterfaceDigest { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of neighInterfaceDigest definition. + + } // End of mcecStpMlagIfSyncEntry-list + } // END of mcecStpSync-container definition. + } // END of mcecMaster-container definition. + } // END of mcecMaster-container definition. + + +} \ No newline at end of file diff --git a/yang-files/mlag.yang b/yang-files/mlag.yang new file mode 100644 index 00000000..e8ac2ee5 --- /dev/null +++ b/yang-files/mlag.yang @@ -0,0 +1,194 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : mlag.yang +* +*/ + +submodule mlag { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + description + "NSM Mlag configurations"; + + + revision "2016-07-02" { + description "Initial draft version for nsmMlag module."; + } + + + + grouping mlagAgg-grouping { + list mlagAgg { + + description + "mlagAgg"; + + config true; + key "mlagGroupNumber"; + + + leaf mlagGroupNumber { + type cml_data_types:CML_UINT16_T { + range "1..255"; + } + description "mlag"; + } // END of mlagGroupNumber definition. + + } // End of mlagAgg-list + } // END of mlagAgg-grouping definition. + + grouping nsmMlag-grouping { + container nsmMlag { + config false; + + description + "nsm mlag master"; + + + list mlagInterface { + + description + "struct nsm_mlag_admin_info"; + + config false; + key "mlagId"; + + + leaf mlagId { + type cml_data_types:CML_UINT16_T; + } // END of mlagId definition. + + leaf ifFlags { + type cml_data_types:CML_UINT16_T; + } // END of ifFlags definition. + + leaf bandwidth { + type cml_data_types:CML_UINT64_T; + } // END of bandwidth definition. + + leaf adminInfoConfig { + type cml_data_types:CML_UINT8_T; + } // END of adminInfoConfig definition. + + } // End of mlagInterface-list + container idp { + config false; + + description + "idp"; + + leaf idpIfname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of idpIfname definition. + + leaf idpIfIndex { + type cml_data_types:CML_UINT32_T; + } // END of idpIfIndex definition. + + leaf idpIfFlags { + type cml_data_types:CML_UINT8_T; + } // END of idpIfFlags definition. + + leaf ifType { + type cml_data_types:CML_UINT8_T; + } // END of ifType definition. + + leaf bridgeName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bridgeName definition. + + leaf switchport { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of switchport definition. + + leaf zifType { + type cml_data_types:CML_UINT8_T; + } // END of zifType definition. + + leaf info { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of info definition. + + } // END of idp-container definition. + container mstpSyncInfo { + config false; + + description + "mstpSyncInfo"; + + leaf msgType { + type cml_data_types:CML_UINT8_T; + } // END of msgType definition. + + leaf bridgePriority { + type cml_data_types:CML_UINT16_T; + } // END of bridgePriority definition. + + leaf pathcostMethod { + type cml_data_types:CML_UINT8_T; + } // END of pathcostMethod definition. + + leaf numOfEntries { + type cml_data_types:CML_UINT16_T; + } // END of numOfEntries definition. + + leaf-list domainDigest { + type cml_data_types:CML_UINT8_T; + } // END of domainDigest definition. + + + list mcecMstpIfSyncEntry { + + description + "nsm_mcec_mstp_if_sync_entry"; + + config false; + key "IfSyncMlagId"; + + + leaf IfSyncMlagId { + type cml_data_types:CML_UINT16_T; + } // END of IfSyncMlagId definition. + + leaf portPriority { + type cml_data_types:CML_UINT16_T; + } // END of portPriority definition. + + leaf pathCost { + type cml_data_types:CML_UINT32_T; + } // END of pathCost definition. + + leaf-list interfaceDigest { + type cml_data_types:CML_UINT8_T; + } // END of interfaceDigest definition. + + } // End of mcecMstpIfSyncEntry-list + } // END of mstpSyncInfo-container definition. + } // END of nsmMlag-container definition. + } // END of nsmMlag-container definition. + + +} \ No newline at end of file diff --git a/yang-files/mrib4.yang b/yang-files/mrib4.yang new file mode 100644 index 00000000..1524afc2 --- /dev/null +++ b/yang-files/mrib4.yang @@ -0,0 +1,322 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : mrib4.yang +* +*/ + +submodule mrib4 { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + + revision "2017-02-07" { + description "Fix for Jira13151."; + } + + revision "2017-02-02" { + description "changes for Documentation."; + } + + revision "2017-01-27" { + description "changes for Debug command."; + } + + revision "2016-10-06" { + description "Updated snmp oid."; + } + + + + grouping mrib4Vrf-grouping { + list mrib4Vrf { + + description + "mrib4Vrf"; + + config true; + key "vrfName"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + default "0"; + } // END of vrId definition. + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + leaf setMulticastFlag { + type cml_data_types:CML_BOOL_T; + default false; + description "ip multicast-routing"; + } // END of setMulticastFlag definition. + + leaf configs_flag { + type cml_data_types:CML_UINT32_T; + config false; + } // END of configs_flag definition. + + leaf rtLimit { + type cml_data_types:CML_UINT32_T { + range "1..2147483647"; + } + } // END of rtLimit definition. + + leaf rtThresh { + type cml_data_types:CML_UINT32_T { + range "1..2147483647"; + } + description "ip multicast route-limit"; + } // END of rtThresh definition. + + leaf debugFlag { + type cml_data_types:CML_MRIB4_DEBUG_T; + } // END of debugFlag definition. + + leaf termdebugFlag { + type cml_data_types:CML_MRIB4_DEBUG_T; + } // END of termdebugFlag definition. + + leaf interface_storage_type { + type cml_data_types:CML_UINT32_T; + config false; + } // END of interface_storage_type definition. + + leaf mrt_entry_count { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mrt_entry_count definition. + + leaf mrt_entry_sm_count { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mrt_entry_sm_count definition. + + leaf mrt_entry_dm_count { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mrt_entry_dm_count definition. + + leaf stat_poll_exptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of stat_poll_exptime definition. + + leaf num_nocache_recv { + type cml_data_types:CML_UINT32_T; + config false; + } // END of num_nocache_recv definition. + + leaf num_nocache_sent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of num_nocache_sent definition. + + leaf num_wrongvif_recv { + type cml_data_types:CML_UINT32_T; + config false; + } // END of num_wrongvif_recv definition. + + leaf num_wrongvif_sent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of num_wrongvif_sent definition. + + leaf num_wholepkt_recv { + type cml_data_types:CML_UINT32_T; + config false; + } // END of num_wholepkt_recv definition. + + leaf num_wholepkt_sent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of num_wholepkt_sent definition. + + leaf num_imm_stat_sent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of num_imm_stat_sent definition. + + leaf num_timed_stat_sent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of num_timed_stat_sent definition. + + leaf num_reg_pkt_sent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of num_reg_pkt_sent definition. + + leaf reg_ack_recv { + type cml_data_types:CML_UINT32_T; + config false; + } // END of reg_ack_recv definition. + + leaf reg_nack_recv { + type cml_data_types:CML_UINT32_T; + config false; + } // END of reg_nack_recv definition. + + leaf rate_nocache_recv { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of rate_nocache_recv definition. + + leaf rate_reg_pkt_sent { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of rate_reg_pkt_sent definition. + + + list mrib_mrt { + + description + "mribCMLSEPmrt"; + + config false; + key "mrib_any_src_group"; + + + leaf mrib_any_src_group { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrib_any_src_group definition. + + leaf iif_index { + type cml_data_types:CML_UINT16_T; + } // END of iif_index definition. + + leaf rpf_addr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of rpf_addr definition. + + leaf safi { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of safi definition. + + leaf route_type { + type cml_data_types:CML_UINT8_T; + } // END of route_type definition. + + leaf stats_exptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of stats_exptime definition. + + leaf pkts_fwd { + type cml_data_types:CML_UINT32_T; + } // END of pkts_fwd definition. + + leaf bytes_fwd { + type cml_data_types:CML_UINT32_T; + } // END of bytes_fwd definition. + + leaf wrong_if { + type cml_data_types:CML_UINT32_T; + } // END of wrong_if definition. + + + list olist_vifs { + + description + "olistCMLSEPvifs"; + + config false; + key "if_name"; + + + leaf if_name { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of if_name definition. + + leaf ttl { + type cml_data_types:CML_UINT8_T; + } // END of ttl definition. + + } // End of olist_vifs-list + } // End of mrib_mrt-list + } // End of mrib4Vrf-list + } // END of mrib4Vrf-grouping definition. + + + grouping mrib4Interface-grouping { + list mrib4Interface { + + description + "mrib4Interface"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf ttlThresh { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + description "ip multicast ttl-threshold"; + } // END of ttlThresh definition. + + leaf LocalAddress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of LocalAddress definition. + + leaf RemoteAddress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of RemoteAddress definition. + + leaf uptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of uptime definition. + + } // End of mrib4Interface-list + } // END of mrib4Interface-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/mstp.yang b/yang-files/mstp.yang index 377640ad..193fa43b 100644 --- a/yang-files/mstp.yang +++ b/yang-files/mstp.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -24,12 +24,48 @@ submodule mstp { prefix cml_data_types; } + import feature_list { + prefix feature_list; + } + description "Layer-2 bridge configurations"; - revision "2015-04-25" { - description "Revisied on 2015-04-25."; + revision "2017-03-05" { + description "change to delete mstp vlan instance."; + } + + revision "2017-02-27" { + description "added dependentObject for brigdePort."; + } + + revision "2017-02-21" { + description "added bridgeId in bridgePort table."; + } + + revision "2017-02-14" { + description "adding missing flag for cli generation."; + } + + revision "2017-02-07" { + description "mapped mstp datamodel strcuture with mstpd structure."; + } + + revision "2017-01-28" { + description "adding flag for default bridge objectlist."; + } + + revision "2017-01-25" { + description "fix for installation of spanning-tree commands."; + } + + revision "2017-01-10" { + description "changeing parent hierarchy for mstp objectlist."; + } + + revision "2016-10-29" { + description "Splited bridge and default-bridge related CLI's as separate objectlist."; } @@ -44,329 +80,255 @@ submodule mstp { key "instanceId"; - leaf vrId { - type cml_data_types:CML_UINT32_T; - default "0"; - config true; - } // END of vrId definition. - - leaf bridgeId { - type cml_data_types:CML_STRING_T; - config true; - } // END of bridgeId definition. - leaf instanceId { type cml_data_types:CML_INT32_T { range "1..63"; } - config true; description "bridge instance "; } // END of instanceId definition. - leaf instPriority { - type cml_data_types:CML_UINT32_T { - range "0..61440"; - } - default "32768"; - config true; - description "bridge instance priority"; - } // END of instPriority definition. - - leaf-list vlanId { - type cml_data_types:CML_UINT16_T; - config true; - } // END of vlanId definition. - - leaf bridgeEnabled { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf lowPort { + type cml_data_types:CML_UINT32_T; config false; - } // END of bridgeEnabled definition. + } // END of lowPort definition. - leaf topologyChange { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf master { + type cml_data_types:CML_UINT8_T; config false; - } // END of topologyChange definition. + } // END of master definition. - leaf topologychangeDetected { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf learningEnabled { + type cml_data_types:CML_UINT8_T; config false; - } // END of topologychangeDetected definition. + } // END of learningEnabled definition. - leaf cistmstpBridge { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf mstiMastered { + type cml_data_types:CML_UINT8_T; config false; - } // END of cistmstpBridge definition. + } // END of mstiMastered definition. - leaf externalrootPathcost { - mandatory true; - type cml_data_types:CML_UINT32_T; + leaf reselect { + type cml_data_types:CML_UINT8_T; config false; - } // END of externalrootPathcost definition. + } // END of reselect definition. - leaf internalrootPathcost { - mandatory true; - type cml_data_types:CML_UINT32_T; + leaf mstpEnabled { + type cml_data_types:CML_UINT8_T; config false; - } // END of internalrootPathcost definition. + } // END of mstpEnabled definition. - leaf cistbridgePriority { - mandatory true; - type cml_data_types:CML_UINT32_T; + leaf mstiBridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of cistbridgePriority definition. + } // END of mstiBridgeId definition. - leaf cistrootportIfindex { - mandatory true; - type cml_data_types:CML_INT32_T; + leaf recentRoot { + type cml_data_types:CML_UINT32_T; config false; - } // END of cistrootportIfindex definition. + } // END of recentRoot definition. - leaf totalnumberTopologychange { - mandatory true; - type cml_data_types:CML_INT32_T; + leaf brInstAllRrTimerCntt { + type cml_data_types:CML_UINT32_T; config false; - } // END of totalnumberTopologychange definition. + } // END of brInstAllRrTimerCntt definition. - leaf lasttimeTopologychange { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf mstidesignatedRoot { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of lasttimeTopologychange definition. + } // END of mstidesignatedRoot definition. - leaf cistdesignatedRoot { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf mstiDesignatedBridge { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of cistdesignatedRoot definition. + } // END of mstiDesignatedBridge definition. - leaf cistregisteredRoot { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf internalRootPathCost { + type cml_data_types:CML_UINT32_T; config false; - } // END of cistregisteredRoot definition. + } // END of internalRootPathCost definition. - leaf cistBridgeid { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf mstiRootportId { + type cml_data_types:CML_UINT32_T; config false; - } // END of cistBridgeid definition. + } // END of mstiRootportId definition. - leaf mstirootportIfindex { - mandatory true; + leaf mstiRootPortIfindex { type cml_data_types:CML_INT32_T; config false; - } // END of mstirootportIfindex definition. + } // END of mstiRootPortIfindex definition. - leaf mstibridgePriority { - mandatory true; - type cml_data_types:CML_UINT32_T; + leaf portIndex { + type cml_data_types:CML_INT32_T; config false; - } // END of mstibridgePriority definition. + } // END of portIndex definition. - leaf mstibridgeId { - mandatory true; - type cml_data_types:CML_UINT8_T; + leaf hopCount { + type cml_data_types:CML_INT32_T; config false; - } // END of mstibridgeId definition. + } // END of hopCount definition. - leaf mstidesignatedRoot { - mandatory true; - type cml_data_types:CML_UINT32_T; + leaf tcFlag { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of mstidesignatedRoot definition. + } // END of tcFlag definition. - leaf designatedPortid { - mandatory true; - type cml_data_types:CML_UINT16_T; + leaf insttopologychangedetected { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of designatedPortid definition. + } // END of insttopologychangedetected definition. - leaf mstipathCost { - mandatory true; - type cml_data_types:CML_UINT32_T; + leaf timeLastTopoChange { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of mstipathCost definition. + } // END of timeLastTopoChange definition. - leaf mstiPriority { - mandatory true; + leaf numTopoChanges { type cml_data_types:CML_INT32_T; config false; - } // END of mstiPriority definition. + } // END of numTopoChanges definition. - leaf messageAge { - mandatory true; + leaf totalNumTopoChanges { type cml_data_types:CML_INT32_T; config false; - } // END of messageAge definition. + } // END of totalNumTopoChanges definition. - leaf forwarddelayTimer { - mandatory true; + leaf tcInitiator { type cml_data_types:CML_INT32_T; config false; - } // END of forwarddelayTimer definition. + } // END of tcInitiator definition. - leaf messageageTimer { - mandatory true; - type cml_data_types:CML_INT32_T; + leaf insttcLastRcvdFrom { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of messageageTimer definition. + } // END of insttcLastRcvdFrom definition. - leaf helloTimer { - mandatory true; - type cml_data_types:CML_INT32_T; + leaf messageAge { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of helloTimer definition. + } // END of messageAge definition. - leaf instanceportconfbpduSent { - mandatory true; + leaf instanceMaxage { + if-feature feature_list:HAVE_RPVST_PLUS; type cml_data_types:CML_UINT32_T; config false; - } // END of instanceportconfbpduSent definition. + } // END of instanceMaxage definition. - leaf instanceportconfbpduRecieved { - mandatory true; + leaf fwdDelay { + if-feature feature_list:HAVE_RPVST_PLUS; type cml_data_types:CML_UINT32_T; config false; - } // END of instanceportconfbpduRecieved definition. + } // END of fwdDelay definition. - leaf instanceporttcnbpduSent { - mandatory true; + leaf helloTimeInstance { + if-feature feature_list:HAVE_RPVST_PLUS; type cml_data_types:CML_UINT32_T; config false; - } // END of instanceporttcnbpduSent definition. + } // END of helloTimeInstance definition. + + leaf designatedPortid { + type cml_data_types:CML_UINT16_T; + config false; + } // END of designatedPortid definition. - leaf instanceporttcnbpduRecieved { - mandatory true; + leaf mstipathCost { type cml_data_types:CML_UINT32_T; config false; - } // END of instanceporttcnbpduRecieved definition. + } // END of mstipathCost definition. - leaf cistmessageAge { - mandatory true; + leaf forwarddelayTimer { type cml_data_types:CML_INT32_T; config false; - } // END of cistmessageAge definition. + } // END of forwarddelayTimer definition. - leaf cistforwardTransition { - mandatory true; - type cml_data_types:CML_UINT32_T; + leaf messageageTimer { + type cml_data_types:CML_INT32_T; config false; - } // END of cistforwardTransition definition. + } // END of messageageTimer definition. - leaf portnextState { - mandatory true; - type cml_data_types:CML_STRING_T; + leaf instcistmessageAge { + type cml_data_types:CML_INT32_T; config false; - } // END of portnextState definition. + } // END of instcistmessageAge definition. leaf instanceporttopologyChangetime { - mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of instanceporttopologyChangetime definition. leaf bridgemacAddress { - mandatory true; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of bridgemacAddress definition. leaf stpmulticastAddress { - mandatory true; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of stpmulticastAddress definition. - leaf instanceTopologychangedetected { - mandatory true; - type cml_data_types:CML_STRING_T; - config false; - } // END of instanceTopologychangedetected definition. - leaf instlastTopologychangerecievedfrom { - mandatory true; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of instlastTopologychangerecievedfrom definition. - leaf instancemaxAge { - mandatory true; - type cml_data_types:CML_UINT32_T; - config false; - } // END of instancemaxAge definition. - - leaf instancetopologychangeInitiator { - mandatory true; - type cml_data_types:CML_INT32_T; - config false; - } // END of instancetopologychangeInitiator definition. - - leaf topologychangeInitiator { - mandatory true; - type cml_data_types:CML_INT32_T; - config false; - } // END of topologychangeInitiator definition. - leaf instancetopologyChange { - mandatory true; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of instancetopologyChange definition. leaf lasttopologychangeRecievedfrom { - mandatory true; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of lasttopologychangeRecievedfrom definition. leaf configFormat { - mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of configFormat definition. leaf configName { - mandatory true; - type cml_data_types:CML_INT32_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of configName definition. leaf configRevision { - mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of configRevision definition. leaf configDigest { - mandatory true; type cml_data_types:CML_INT32_T; config false; } // END of configDigest definition. - leaf instanceMstiporttopologyChangetime { - type cml_data_types:CML_INT32_T; - config false; - } // END of instanceMstiporttopologyChangetime definition. - - leaf instancePortNextState { - type cml_data_types:CML_UINT32_T; - config false; - } // END of instancePortNextState definition. - - leaf instanceTopologuChangeCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of instanceTopologuChangeCount definition. - - leaf mstiInstancedesignatedRoot { - type cml_data_types:CML_STRING_T; - config false; - } // END of mstiInstancedesignatedRoot definition. - list mstp_interface { @@ -378,264 +340,2319 @@ submodule mstp { leaf ifName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } description "bridge-group instance"; } // END of ifName definition. - leaf instportPriority { + leaf refCount { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of refCount definition. + + leaf typeintf { + type cml_data_types:CML_UINT8_T; + config false; + } // END of typeintf definition. + + leaf instifIndex { + type cml_data_types:CML_UINT8_T; + config false; + } // END of instifIndex definition. + + leaf mstiPriority { type cml_data_types:CML_INT16_T { range "0..240"; } default "128"; - config true; description "bridge-group instance priority"; - } // END of instportPriority definition. + } // END of mstiPriority definition. + + leaf mstiPortId { + type cml_data_types:CML_UINT8_T; + config false; + } // END of mstiPortId definition. leaf mstppathCost { type cml_data_types:CML_UINT32_T { - range "1..20000000"; + range "1..200000000"; } default "20000000"; - config true; description "bridge-group instance path-cost"; } // END of mstppathCost definition. - leaf cistAdminedge { - type cml_data_types:CML_STRING_T; + leaf internalRootpathCostintf { + type cml_data_types:CML_UINT32_T; config false; - } // END of cistAdminedge definition. + } // END of internalRootpathCostintf definition. - leaf cistOperedge { - type cml_data_types:CML_STRING_T; + leaf designatedInternalrootPathcost { + type cml_data_types:CML_UINT32_T; config false; - } // END of cistOperedge definition. + } // END of designatedInternalrootPathcost definition. - leaf cistPortrole { - type cml_data_types:CML_STRING_T; + leaf mstiRoot { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of cistPortrole definition. + } // END of mstiRoot definition. - leaf portName { - type cml_data_types:CML_STRING_T; + leaf designatedBridgePort { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of portName definition. + } // END of designatedBridgePort definition. - leaf portNumber { - type cml_data_types:CML_UINT32_T; + leaf designatedInsPortid { + type cml_data_types:CML_UINT16_T; config false; - } // END of portNumber definition. + } // END of designatedInsPortid definition. - leaf cistpathCost { + leaf messageAgeintf { type cml_data_types:CML_UINT32_T; config false; - } // END of cistpathCost definition. + } // END of messageAgeintf definition. - leaf cistPriority { - type cml_data_types:CML_INT32_T; + leaf maxAgeintf { + type cml_data_types:CML_UINT32_T; config false; - } // END of cistPriority definition. + } // END of maxAgeintf definition. - leaf cisthelloTime { - type cml_data_types:CML_INT32_T; + leaf fwdDelayintf { + type cml_data_types:CML_UINT32_T; config false; - } // END of cisthelloTime definition. + } // END of fwdDelayintf definition. - leaf cistforwardDelay { - type cml_data_types:CML_INT32_T; + leaf helloTimeintf { + type cml_data_types:CML_UINT32_T; config false; - } // END of cistforwardDelay definition. + } // END of helloTimeintf definition. - leaf portspanningTree { - type cml_data_types:CML_STRING_T; + leaf hopCountintf { + type cml_data_types:CML_UINT32_T; config false; - } // END of portspanningTree definition. + } // END of hopCountintf definition. - leaf porttopChangeack { - type cml_data_types:CML_STRING_T; + leaf instrestrictedTCN { + type cml_data_types:CML_BOOL_T; + default false; + description "spanning-tree instance restricted-tcn"; + } // END of instrestrictedTCN definition. + + leaf instrestrictedRole { + type cml_data_types:CML_BOOL_T; + default false; + description "spanning-tree instance restricted-role"; + } // END of instrestrictedRole definition. + + leaf portstate { + type cml_data_types:CML_UINT8_T; config false; - } // END of porttopChangeack definition. + } // END of portstate definition. - leaf configPending { - type cml_data_types:CML_STRING_T; + leaf portNextState { + type cml_data_types:CML_UINT8_T; config false; - } // END of configPending definition. + } // END of portNextState definition. - leaf portconfbpduSent { - type cml_data_types:CML_UINT32_T; + leaf portInfoType { + type cml_data_types:CML_UINT8_T; config false; - } // END of portconfbpduSent definition. + } // END of portInfoType definition. - leaf portconfbpduRecieved { - type cml_data_types:CML_UINT32_T; + leaf portRole { + type cml_data_types:CML_UINT8_T; config false; - } // END of portconfbpduRecieved definition. + } // END of portRole definition. - leaf porttcnbpduSent { - type cml_data_types:CML_UINT32_T; + leaf portSelectedRole { + type cml_data_types:CML_UINT8_T; config false; - } // END of porttcnbpduSent definition. + } // END of portSelectedRole definition. - leaf porttcnbpduRecieved { - type cml_data_types:CML_UINT32_T; + leaf portTopologyChange { + type cml_data_types:CML_UINT8_T; config false; - } // END of porttcnbpduRecieved definition. + } // END of portTopologyChange definition. - leaf portForwardTransition { - type cml_data_types:CML_UINT32_T; + leaf portSendProposal { + type cml_data_types:CML_UINT8_T; config false; - } // END of portForwardTransition definition. + } // END of portSendProposal definition. - leaf helloTimerstate { - type cml_data_types:CML_STRING_T; + leaf portreselect { + type cml_data_types:CML_UINT8_T; config false; - } // END of helloTimerstate definition. + } // END of portreselect definition. - leaf helloTimervalue { - type cml_data_types:CML_INT32_T; + leaf portUpdtInfo { + type cml_data_types:CML_UINT8_T; config false; - } // END of helloTimervalue definition. + } // END of portUpdtInfo definition. - leaf forwardTimerstate { - type cml_data_types:CML_STRING_T; + leaf portPathcostConfigured { + type cml_data_types:CML_UINT8_T; config false; - } // END of forwardTimerstate definition. + } // END of portPathcostConfigured definition. - leaf forwardTimervalue { - type cml_data_types:CML_INT32_T; + leaf tcAck { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_INT8_T; config false; - } // END of forwardTimervalue definition. + } // END of tcAck definition. - leaf messageTimerstate { - type cml_data_types:CML_STRING_T; + leaf portNewInfoSstp { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_INT8_T; config false; - } // END of messageTimerstate definition. + } // END of portNewInfoSstp definition. - leaf messageageTimervalue { - type cml_data_types:CML_INT32_T; + leaf portAnyMstiRootport { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_INT8_T; config false; - } // END of messageageTimervalue definition. + } // END of portAnyMstiRootport definition. - leaf topologychangeTimerstate { - type cml_data_types:CML_STRING_T; + leaf portAnyMstiDesigport { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_INT8_T; config false; - } // END of topologychangeTimerstate definition. + } // END of portAnyMstiDesigport definition. - leaf topologychangeTimervalue { + leaf portConfBpduSent { type cml_data_types:CML_INT32_T; config false; - } // END of topologychangeTimervalue definition. + } // END of portConfBpduSent definition. - leaf holdTimerstate { - type cml_data_types:CML_STRING_T; + leaf portConfBpduRcvd { + type cml_data_types:CML_UINT32_T; config false; - } // END of holdTimerstate definition. + } // END of portConfBpduRcvd definition. - leaf holdTimervalue { - type cml_data_types:CML_INT32_T; + leaf portTcnBpduSent { + type cml_data_types:CML_UINT32_T; config false; - } // END of holdTimervalue definition. + } // END of portTcnBpduSent definition. - leaf messageageExpiry { + leaf portTcnBpduRcvd { type cml_data_types:CML_UINT32_T; config false; - } // END of messageageExpiry definition. + } // END of portTcnBpduRcvd definition. leaf similarbpduCount { type cml_data_types:CML_UINT32_T; config false; } // END of similarbpduCount definition. - leaf sourcemacCount { - type cml_data_types:CML_INT32_T; + leaf cistAdminedge { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of sourcemacCount definition. + } // END of cistAdminedge definition. - leaf totalsourcemacRecieved { - type cml_data_types:CML_INT32_T; + leaf cistOperedge { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of totalsourcemacRecieved definition. + } // END of cistOperedge definition. - leaf portcistnextState { - type cml_data_types:CML_STRING_T; + leaf cistPortrole { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of portcistnextState definition. + } // END of cistPortrole definition. - leaf porttopologyChangetime { - type cml_data_types:CML_UINT32_T; - config false; - } // END of porttopologyChangetime definition. + leaf portName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of portName definition. - leaf designatedrootPathcost { + leaf portNumber { type cml_data_types:CML_UINT32_T; config false; - } // END of designatedrootPathcost definition. + } // END of portNumber definition. - leaf designatedInsPortid { - type cml_data_types:CML_UINT16_T; + leaf cistpathCost { + type cml_data_types:CML_UINT32_T; config false; - } // END of designatedInsPortid definition. + } // END of cistpathCost definition. - leaf mstiInstancedesignatedRoot { - type cml_data_types:CML_STRING_T; + leaf cistPriority { + type cml_data_types:CML_INT32_T; config false; - } // END of mstiInstancedesignatedRoot definition. + } // END of cistPriority definition. + + leaf cisthelloTime { + type cml_data_types:CML_INT32_T; + config false; + } // END of cisthelloTime definition. + + leaf cistforwardDelay { + type cml_data_types:CML_INT32_T; + config false; + } // END of cistforwardDelay definition. + + leaf portspanningTree { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of portspanningTree definition. + + leaf porttopChangeack { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of porttopChangeack definition. + + leaf configPending { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of configPending definition. + + leaf helloTimerstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of helloTimerstate definition. + + leaf helloTimervalue { + type cml_data_types:CML_INT32_T; + config false; + } // END of helloTimervalue definition. + + leaf forwardTimerstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of forwardTimerstate definition. + + leaf forwardTimervalue { + type cml_data_types:CML_INT32_T; + config false; + } // END of forwardTimervalue definition. + + leaf messageTimerstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of messageTimerstate definition. + + leaf messageageTimervalue { + type cml_data_types:CML_INT32_T; + config false; + } // END of messageageTimervalue definition. + + leaf topologychangeTimerstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of topologychangeTimerstate definition. + + leaf topologychangeTimervalue { + type cml_data_types:CML_INT32_T; + config false; + } // END of topologychangeTimervalue definition. + + leaf holdTimerstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of holdTimerstate definition. + + leaf holdTimervalue { + type cml_data_types:CML_INT32_T; + config false; + } // END of holdTimervalue definition. + + leaf portcistnextState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of portcistnextState definition. + + leaf porttopologyChangetime { + type cml_data_types:CML_UINT32_T; + config false; + } // END of porttopologyChangetime definition. - leaf mstiInstanceBridgeId { - type cml_data_types:CML_STRING_T; + leaf mstiInstancedesignatedRoot { + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; - } // END of mstiInstanceBridgeId definition. + } // END of mstiInstancedesignatedRoot definition. leaf stpMultiCastAddr { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of stpMultiCastAddr definition. leaf instanceBridgeMacAddress { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of instanceBridgeMacAddress definition. leaf instancetopologyChange { - mandatory true; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of instancetopologyChange definition. leaf instanceTopologychangedetected { - mandatory true; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of instanceTopologychangedetected definition. leaf instlastTopologychangerecievedfrom { - mandatory true; - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of instlastTopologychangerecievedfrom definition. leaf runtimevlanId { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of runtimevlanId definition. - leaf restrictedTCN { - type cml_data_types:CML_BOOL_T; - default false; - config true; - description "spanning-tree instance restricted-tcn"; - } // END of restrictedTCN definition. + leaf instanceportconfbpduSent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceportconfbpduSent definition. - leaf restrictedRole { - type cml_data_types:CML_BOOL_T; - default false; - config true; - description "spanning-tree instance restricted-role"; - } // END of restrictedRole definition. + leaf instanceportconfbpduRecieved { + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceportconfbpduRecieved definition. + + leaf instanceporttcnbpduSent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceporttcnbpduSent definition. + + leaf instanceporttcnbpduRecieved { + type cml_data_types:CML_UINT32_T; + config false; + } // END of instanceporttcnbpduRecieved definition. + + leaf instancetopologychangeInitiator { + type cml_data_types:CML_INT32_T; + config false; + } // END of instancetopologychangeInitiator definition. + + leaf instancePortNextState { + type cml_data_types:CML_UINT32_T; + config false; + } // END of instancePortNextState definition. } // End of mstp_interface-list + uses mstpinstance; } // End of mstp-list } // END of mstp-grouping definition. + grouping spanInstance-grouping { + list spanInstance { + if-feature feature_list:HAVE_DEFAULT_BRIDGE; + + description + "spanInstance"; + + config true; + key "instanceId"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + default "0"; + } // END of vrId definition. + + leaf instanceId { + type cml_data_types:CML_INT32_T { + range "1..63"; + } + description "bridge instance "; + } // END of instanceId definition. + + + list spanningInterface { + if-feature feature_list:HAVE_DEFAULT_BRIDGE; + + description + "Group of mstp attribute having interface property"; + + config true; + key "ifName"; + + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bridgeId definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bridge-group instance"; + } // END of ifName definition. + + leaf mstiPriority { + type cml_data_types:CML_INT16_T { + range "0..240"; + } + default "128"; + description "bridge-group instance priority"; + } // END of mstiPriority definition. + + leaf mstppathCost { + type cml_data_types:CML_UINT32_T { + range "1..200000000"; + } + default "20000000"; + description "bridge-group instance path-cost"; + } // END of mstppathCost definition. + + } // End of spanningInterface-list + uses mstpinstance; + } // End of spanInstance-list + } // END of spanInstance-grouping definition. + + + grouping mstpSpanningTree-grouping { + list mstpSpanningTree { + if-feature feature_list:HAVE_DEFAULT_BRIDGE; + + description + "mstpSpanningTree"; + + config true; + key "bridgeId"; + + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bridgeId definition. + + leaf bridgeShutdown { + type cml_data_types:CML_INT32_T; + default "1"; + } // END of bridgeShutdown definition. + + leaf forceVersion { + type cml_data_types:CML_INT32_T { + range "0..3"; + } + default "0"; + description "bridge spanning-tree force-version"; + } // END of forceVersion definition. + + leaf pathCostMethod { + type cml_data_types:CML_PATHCOST_METHOD_T; + default "default"; + } // END of pathCostMethod definition. + + leaf errdisableTimeoutEnable { + type cml_data_types:CML_BOOL_T; + default false; + description "bridge spanning-tree errdisable-timeout"; + } // END of errdisableTimeoutEnable definition. + + leaf errdisableTimeoutInterval { + type cml_data_types:CML_INT32_T { + range "10..1000000"; + } + default "300"; + description "bridge spanning-tree errdisable-timeout interval"; + } // END of errdisableTimeoutInterval definition. + + leaf bpduFilter { + type cml_data_types:CML_BOOL_T; + default false; + } // END of bpduFilter definition. + + leaf bpduguard { + type cml_data_types:CML_BOOL_T; + default false; + description "bridge spanning-tree portfast bpdu-guard"; + } // END of bpduguard definition. + + leaf revisionLevel { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + description "bridge revision"; + } // END of revisionLevel definition. + + leaf regionName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "Default"; + description "bridge region"; + } // END of regionName definition. + + uses mstpSpanning; + } // End of mstpSpanningTree-list + } // END of mstpSpanningTree-grouping definition. + + + grouping mstpbridge-grouping { + list mstpbridge { + + description + "mstpbridge"; + + config true; + key "bridgeId"; + + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bridgeId definition. + + leaf externalrootPathcost { + type cml_data_types:CML_UINT32_T; + config false; + } // END of externalrootPathcost definition. + + leaf cistPortRootid { + type cml_data_types:CML_UINT16_T; + config false; + } // END of cistPortRootid definition. + + leaf cistRootPortIfindex { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistRootPortIfindex definition. + + leaf bpduRecvPortIfindex { + type cml_data_types:CML_UINT32_T; + config false; + } // END of bpduRecvPortIfindex definition. + + leaf cistMaxAge { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistMaxAge definition. + + leaf brcistMessageAge { + type cml_data_types:CML_UINT32_T; + config false; + } // END of brcistMessageAge definition. + + leaf brcistHelloTime { + type cml_data_types:CML_UINT32_T; + config false; + } // END of brcistHelloTime definition. + + leaf brcistForwardDelay { + type cml_data_types:CML_UINT32_T; + config false; + } // END of brcistForwardDelay definition. + + leaf hopCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of hopCount definition. + + leaf forceVersion { + type cml_data_types:CML_INT32_T { + range "0..4"; + } + default "0"; + description "bridge spanning-tree force-version"; + } // END of forceVersion definition. + + leaf recentRoot { + type cml_data_types:CML_UINT32_T; + config false; + } // END of recentRoot definition. + + leaf brAllrrTimerCnt { + type cml_data_types:CML_UINT32_T; + config false; + } // END of brAllrrTimerCnt definition. + + leaf learningEnabled { + type cml_data_types:CML_UINT8_T; + config false; + } // END of learningEnabled definition. + + leaf bridgeForward { + type cml_data_types:CML_BRIDGE_FORWARD_T; + description "bridge multiple-spanning-tree"; + } // END of bridgeForward definition. + + leaf topologyChange { + type cml_data_types:CML_UINT8_T; + config false; + } // END of topologyChange definition. + + leaf topologychangeDetected { + type cml_data_types:CML_UINT8_T; + config false; + } // END of topologychangeDetected definition. + + leaf bridgeEnabled { + type cml_data_types:CML_UINT8_T; + config false; + } // END of bridgeEnabled definition. + + leaf isVlanAware { + type cml_data_types:CML_UINT8_T; + config false; + } // END of isVlanAware definition. + + leaf reselect { + type cml_data_types:CML_UINT8_T; + config false; + } // END of reselect definition. + + leaf ageingTimeIsFwdDelay { + type cml_data_types:CML_UINT8_T; + config false; + } // END of ageingTimeIsFwdDelay definition. + + leaf ceBridge { + type cml_data_types:CML_UINT8_T; + config false; + } // END of ceBridge definition. + + leaf cnBridge { + type cml_data_types:CML_UINT8_T; + config false; + } // END of cnBridge definition. + + leaf isDefault { + type cml_data_types:CML_UINT8_T; + config false; + } // END of isDefault definition. + + leaf pathCostMethod { + type cml_data_types:CML_PATHCOST_METHOD_T; + default "default"; + } // END of pathCostMethod definition. + + leaf portIndex { + type cml_data_types:CML_UINT8_T; + config false; + } // END of portIndex definition. + + leaf maxInstances { + type cml_data_types:CML_UINT16_T; + config false; + } // END of maxInstances definition. + + leaf numPorts { + type cml_data_types:CML_UINT16_T; + config false; + } // END of numPorts definition. + + leaf lasttimeTopologychange { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of lasttimeTopologychange definition. + + leaf numTopoChanges { + type cml_data_types:CML_UINT32_T; + config false; + } // END of numTopoChanges definition. + + leaf totalNumTopoChanges { + type cml_data_types:CML_UINT32_T; + config false; + } // END of totalNumTopoChanges definition. + + leaf maxAgeCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of maxAgeCount definition. + + leaf bpduguard { + type cml_data_types:CML_BOOL_T; + default false; + description "bridge spanning-tree portfast bpdu-guard"; + } // END of bpduguard definition. + + leaf errdisableTimeoutInterval { + type cml_data_types:CML_INT32_T { + range "10..1000000"; + } + default "300"; + description "bridge spanning-tree errdisable-timeout interval"; + } // END of errdisableTimeoutInterval definition. + + leaf errdisableTimeoutEnable { + type cml_data_types:CML_BOOL_T; + default false; + description "bridge spanning-tree errdisable-timeout"; + } // END of errdisableTimeoutEnable definition. + + leaf bpduFilter { + type cml_data_types:CML_BOOL_T; + default false; + } // END of bpduFilter definition. + + leaf operCisco { + type cml_data_types:CML_UINT8_T; + config false; + } // END of operCisco definition. + + leaf topologyType { + type cml_data_types:CML_UINT8_T; + config false; + } // END of topologyType definition. + + leaf tcFlag { + type cml_data_types:CML_UINT8_T; + config false; + } // END of tcFlag definition. + + leaf tcInitiator { + type cml_data_types:CML_UINT8_T; + config false; + } // END of tcInitiator definition. + + leaf tclastRcvdFrom { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of tclastRcvdFrom definition. + + leaf vlanInstanceMap { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_UINT16_T; + config false; + } // END of vlanInstanceMap definition. + + leaf custBpduProcess { + type cml_data_types:CML_UINT8_T; + config false; + } // END of custBpduProcess definition. + + leaf debug { + type cml_data_types:CML_UINT32_T; + } // END of debug definition. + + leaf debugStatus { + type cml_data_types:CML_INT32_T; + } // END of debugStatus definition. + + leaf revisionLevel { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + description "bridge revision"; + } // END of revisionLevel definition. + + leaf regionName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "Default"; + description "bridge region"; + } // END of regionName definition. + + leaf vId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of vId definition. + + leaf bridgePort { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bridgePort definition. + + leaf cistmstpBridge { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistmstpBridge definition. + + leaf cistdesignatedRoot { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistdesignatedRoot definition. + + leaf cistBridgeid { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistBridgeid definition. + + leaf cistregisteredRoot { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistregisteredRoot definition. + + leaf bridgeTopologyChange { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bridgeTopologyChange definition. + + leaf topologyChangeCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of topologyChangeCount definition. + + leaf brType { + type cml_data_types:CML_BRIDGE_TYPE_T; + } // END of brType definition. + + leaf spaningEnable { + type cml_data_types:CML_INT32_T; + default "1"; + description "bridge multiple-spanning-tree"; + } // END of spaningEnable definition. + + container routeTable { + config false; + + description + "VLAN tree indexed on vid"; + + leaf Id { + type cml_data_types:CML_UINT32_T; + } // END of Id definition. + + } // END of routeTable-container definition. + container mstpConfigInfo { + config false; + + description + "mstp configuration info"; + + leaf cfgFormatId { + type cml_data_types:CML_UINT8_T; + } // END of cfgFormatId definition. + + leaf cfgName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of cfgName definition. + + leaf cfgRevisionLvl { + type cml_data_types:CML_INT16_T; + } // END of cfgRevisionLvl definition. + + leaf cfgDigest { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of cfgDigest definition. + + } // END of mstpConfigInfo-container definition. + uses mstpSpanning; + } // End of mstpbridge-list + } // END of mstpbridge-grouping definition. + + + grouping spanningPort-grouping { + list spanningPort { + if-feature feature_list:HAVE_DEFAULT_BRIDGE; + + description + "spanningPort"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "0"; + } // END of bridgeId definition. + + leaf pathCost { + type cml_data_types:CML_UINT32_T { + range "1..200000000"; + } + } // END of pathCost definition. + + } // End of spanningPort-list + } // END of spanningPort-grouping definition. + + + grouping bridgePort-grouping { + list bridgePort { + + description + "bridgePort"; + + config true; + key "ifName"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + default "0"; + } // END of vrId definition. + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bridgeId definition. + + leaf devAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of devAddr definition. + + leaf Ifindex { + type cml_data_types:CML_INT32_T; + config false; + } // END of Ifindex definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf txCount { + type cml_data_types:CML_INT8_T; + config false; + } // END of txCount definition. + + leaf totalTxCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of totalTxCount definition. + + leaf rxCount { + type cml_data_types:CML_INT8_T; + config false; + } // END of rxCount definition. + + leaf forceVersion { + type cml_data_types:CML_INT8_T; + config false; + } // END of forceVersion definition. + + leaf infoInternal { + type cml_data_types:CML_INT8_T; + config false; + } // END of infoInternal definition. + + leaf rcvdInternal { + type cml_data_types:CML_INT8_T; + config false; + } // END of rcvdInternal definition. + + leaf adminp2pMac { + type cml_data_types:CML_LINK_TYPE_T; + default "point-to-point"; + description "spanning-tree link-type"; + } // END of adminp2pMac definition. + + leaf operp2pmac { + type cml_data_types:CML_INT8_T; + config false; + } // END of operp2pmac definition. + + leaf adminEdge { + type cml_data_types:CML_INT8_T; + config false; + } // END of adminEdge definition. + + leaf operEdge { + type cml_data_types:CML_INT8_T; + config false; + } // END of operEdge definition. + + leaf autoEdge { + type cml_data_types:CML_BOOL_T; + default false; + description "spanning-tree autoedge"; + } // END of autoEdge definition. + + leaf portfastConf { + type cml_data_types:CML_PORTEDGE_T; + default "portfast"; + description "spanning-tree edgeport"; + } // END of portfastConf definition. + + leaf portEnabled { + type cml_data_types:CML_INT8_T; + config false; + } // END of portEnabled definition. + + leaf rcvdmstp { + type cml_data_types:CML_INT8_T; + config false; + } // END of rcvdmstp definition. + + leaf rcvdstp { + type cml_data_types:CML_INT8_T; + config false; + } // END of rcvdstp definition. + + leaf rcvdrstp { + type cml_data_types:CML_INT8_T; + config false; + } // END of rcvdrstp definition. + + leaf rcvdspb { + type cml_data_types:CML_INT8_T; + config false; + } // END of rcvdspb definition. + + leaf sendmstp { + type cml_data_types:CML_INT8_T; + config false; + } // END of sendmstp definition. + + leaf agreednum { + type cml_data_types:CML_INT8_T; + config false; + } // END of agreednum definition. + + leaf discAgreedNum { + type cml_data_types:CML_INT8_T; + config false; + } // END of discAgreedNum definition. + + leaf agreedMisorder { + type cml_data_types:CML_INT8_T; + config false; + } // END of agreedMisorder definition. + + leaf agreeDigestValid { + type cml_data_types:CML_INT8_T; + config false; + } // END of agreeDigestValid definition. + + leaf agreedDigestValid { + type cml_data_types:CML_INT8_T; + config false; + } // END of agreedDigestValid definition. + + leaf agreeNum { + type cml_data_types:CML_INT8_T; + config false; + } // END of agreeNum definition. + + leaf discAgreeNum { + type cml_data_types:CML_INT8_T; + config false; + } // END of discAgreeNum definition. + + leaf agreedTopology { + type cml_data_types:CML_INT8_T; + config false; + } // END of agreedTopology definition. + + leaf sync { + type cml_data_types:CML_INT8_T; + config false; + } // END of sync definition. + + leaf spbAgreementDigest { + if-feature feature_list:HAVE_SPBD; + type cml_data_types:CML_INT8_T; + config false; + } // END of spbAgreementDigest definition. + + leaf tcAck { + type cml_data_types:CML_INT8_T; + config false; + } // END of tcAck definition. + + leaf selected { + type cml_data_types:CML_INT8_T; + config false; + } // END of selected definition. + + leaf sendProposal { + type cml_data_types:CML_INT8_T; + config false; + } // END of sendProposal definition. + + leaf rcvProposal { + type cml_data_types:CML_INT8_T; + config false; + } // END of rcvProposal definition. + + leaf reselect { + type cml_data_types:CML_INT8_T; + config false; + } // END of reselect definition. + + leaf updtInfo { + type cml_data_types:CML_INT8_T; + config false; + } // END of updtInfo definition. + + leaf disputed { + type cml_data_types:CML_INT8_T; + config false; + } // END of disputed definition. + + leaf agree { + type cml_data_types:CML_INT8_T; + config false; + } // END of agree definition. + + leaf agreed { + type cml_data_types:CML_INT8_T; + config false; + } // END of agreed definition. + + leaf configBpduPending { + type cml_data_types:CML_INT8_T; + config false; + } // END of configBpduPending definition. + + leaf isL2gp { + if-feature feature_list:HAVE_L2GP; + type cml_data_types:CML_INT8_T; + config false; + } // END of isL2gp definition. + + leaf enableBPDUrx { + if-feature feature_list:HAVE_L2GP; + type cml_data_types:CML_ENABLEBPDURX_T; + default "enableBPDUrx"; + } // END of enableBPDUrx definition. + + leaf psuedoRootId { + if-feature feature_list:HAVE_L2GP; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of psuedoRootId definition. + + leaf adminBpduguard { + type cml_data_types:CML_BPDU_T; + default "default"; + } // END of adminBpduguard definition. + + leaf operBpduguard { + type cml_data_types:CML_INT8_T; + config false; + } // END of operBpduguard definition. + + leaf adminBpdufilter { + type cml_data_types:CML_BPDU_T; + default "default"; + description "bridge spanning-tree portfast bpdu-filter"; + } // END of adminBpdufilter definition. + + leaf operBpdufilter { + type cml_data_types:CML_INT8_T; + config false; + } // END of operBpdufilter definition. + + leaf adminRootGuard { + type cml_data_types:CML_BOOL_T; + default false; + description "spanning-tree guard root"; + } // END of adminRootGuard definition. + + leaf operRootguard { + type cml_data_types:CML_INT8_T; + config false; + } // END of operRootguard definition. + + leaf ciscoCfgFormatId { + type cml_data_types:CML_INT8_T; + config false; + } // END of ciscoCfgFormatId definition. + + leaf restrictedRole { + type cml_data_types:CML_BOOL_T; + default false; + description "spanning-tree restricted-role"; + } // END of restrictedRole definition. + + leaf restrictedDomainRole { + type cml_data_types:CML_BOOL_T; + default false; + description "spanning-tree restricted-domain-role"; + } // END of restrictedDomainRole definition. + + leaf restrictedTCN { + type cml_data_types:CML_BOOL_T; + default false; + description "spanning-tree restricted-tcn"; + } // END of restrictedTCN definition. + + leaf helloTime { + type cml_data_types:CML_INT32_T { + range "1..10"; + } + default "2"; + } // END of helloTime definition. + + leaf refCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of refCount definition. + + leaf type { + type cml_data_types:CML_UINT32_T; + config false; + } // END of type definition. + + leaf portType { + type cml_data_types:CML_UINT32_T; + config false; + } // END of portType definition. + + leaf anyMstiRootport { + type cml_data_types:CML_UINT32_T; + config false; + } // END of anyMstiRootport definition. + + leaf anyMstiDesigport { + type cml_data_types:CML_UINT32_T; + config false; + } // END of anyMstiDesigport definition. + + leaf cistpathCost { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistpathCost definition. + + leaf cistPortid { + type cml_data_types:CML_UINT16_T; + config false; + } // END of cistPortid definition. + + leaf cistRoot { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistRoot definition. + + leaf cistregisteredRoot { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistregisteredRoot definition. + + leaf cistRecvRegisteredRoot { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistRecvRegisteredRoot definition. + + leaf cistDesignatedBridge { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistDesignatedBridge definition. + + leaf cistExternalRpc { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistExternalRpc definition. + + leaf cistInternalRpc { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistInternalRpc definition. + + leaf cistDesignatedExternalRpc { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistDesignatedExternalRpc definition. + + leaf cistDesignatedInternalRpc { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistDesignatedInternalRpc definition. + + leaf cistDesignatedportId { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistDesignatedportId definition. + + leaf cistMessageAge { + type cml_data_types:CML_INT32_T; + config false; + } // END of cistMessageAge definition. + + leaf cistforwardDelay { + type cml_data_types:CML_INT32_T; + config false; + } // END of cistforwardDelay definition. + + leaf cisthelloTime { + type cml_data_types:CML_INT32_T; + config false; + } // END of cisthelloTime definition. + + leaf hopCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of hopCount definition. + + leaf newInfoCist { + type cml_data_types:CML_BOOL_T; + config false; + } // END of newInfoCist definition. + + leaf newInfoMsti { + type cml_data_types:CML_BOOL_T; + config false; + } // END of newInfoMsti definition. + + leaf criticalBpdu { + type cml_data_types:CML_BOOL_T; + config false; + } // END of criticalBpdu definition. + + leaf cistState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistState definition. + + leaf cistNextState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistNextState definition. + + leaf cistInfoType { + type cml_data_types:CML_INT32_T; + config false; + } // END of cistInfoType definition. + + leaf cistPortrole { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistPortrole definition. + + leaf cistSelectedRole { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistSelectedRole definition. + + leaf cistTcState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistTcState definition. + + leaf cistForwardTransition { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistForwardTransition definition. + + leaf svid { + type cml_data_types:CML_INT16_T; + config false; + } // END of svid definition. + + leaf spanningTreeDisable { + type cml_data_types:CML_INT8_T; + config false; + } // END of spanningTreeDisable definition. + + leaf isid { + if-feature feature_list:HAVE_I_BEB; + type cml_data_types:CML_INT32_T; + config false; + } // END of isid definition. + + leaf pip_port { + if-feature feature_list:HAVE_I_BEB; + type cml_data_types:CML_INT32_T; + config false; + } // END of pip_port definition. + + leaf bvid { + if-feature feature_list:HAVE_I_BEB; + type cml_data_types:CML_INT32_T; + config false; + } // END of bvid definition. + + leaf rpvstEvent { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_INT32_T; + config false; + } // END of rpvstEvent definition. + + leaf rpvstBpduType { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_INT32_T; + config false; + } // END of rpvstBpduType definition. + + leaf newInfoSstp { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_INT32_T; + config false; + } // END of newInfoSstp definition. + + leaf vidTag { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_INT32_T; + config false; + } // END of vidTag definition. + + leaf defaultVlan { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_INT32_T; + config false; + } // END of defaultVlan definition. + + leaf confBpduSent { + type cml_data_types:CML_INT32_T; + config false; + } // END of confBpduSent definition. + + leaf confBpduRcvd { + type cml_data_types:CML_UINT32_T; + config false; + } // END of confBpduRcvd definition. + + leaf tcnBpduSent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of tcnBpduSent definition. + + leaf tcnBpduRcvd { + type cml_data_types:CML_UINT32_T; + config false; + } // END of tcnBpduRcvd definition. + + leaf sourcemacCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of sourcemacCount definition. + + leaf similarbpduCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of similarbpduCount definition. + + leaf msgAgeTimerCnt { + type cml_data_types:CML_UINT32_T; + config false; + } // END of msgAgeTimerCnt definition. + + leaf totalSrcMacCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of totalSrcMacCount definition. + + leaf agg { + type cml_data_types:CML_BOOL_T; + config false; + } // END of agg definition. + + leaf portTypeP2p { + type cml_data_types:CML_BOOL_T; + config false; + } // END of portTypeP2p definition. + + leaf topologyChange { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of topologyChange definition. + + leaf externalrootPathcost { + type cml_data_types:CML_UINT32_T; + config false; + } // END of externalrootPathcost definition. + + leaf bridgeEnabled { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bridgeEnabled definition. + + leaf cistmstpBridge { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistmstpBridge definition. + + leaf cistdesignatedRoot { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistdesignatedRoot definition. + + leaf cistBridgeid { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistBridgeid definition. + + leaf totalnumberTopologychange { + type cml_data_types:CML_INT32_T; + config false; + } // END of totalnumberTopologychange definition. + + leaf maxAgeCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of maxAgeCount definition. + + leaf bridgeTopologyChange { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bridgeTopologyChange definition. + + leaf topologyChangeCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of topologyChangeCount definition. + + leaf topologyChangeLastRecv { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of topologyChangeLastRecv definition. + + leaf portName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of portName definition. + + leaf portNumber { + type cml_data_types:CML_UINT32_T; + config false; + } // END of portNumber definition. + + leaf mstipathCost { + type cml_data_types:CML_UINT32_T; + config false; + } // END of mstipathCost definition. + + leaf designatedPortid { + type cml_data_types:CML_UINT16_T; + config false; + } // END of designatedPortid definition. + + leaf cistPriority { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cistPriority definition. + + leaf mstiInstanceRoot { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of mstiInstanceRoot definition. + + leaf maxAgePort { + type cml_data_types:CML_UINT32_T; + config false; + } // END of maxAgePort definition. + + leaf helloTimePort { + type cml_data_types:CML_INT32_T; + config false; + } // END of helloTimePort definition. + + leaf topologyChangeTimer { + type cml_data_types:CML_INT32_T; + config false; + } // END of topologyChangeTimer definition. + + leaf cistPortFast { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of cistPortFast definition. + + leaf bpduGuardState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bpduGuardState definition. + + leaf operBpduGuardState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of operBpduGuardState definition. + + leaf bpduFilterState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bpduFilterState definition. + + leaf operBpduFilterState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of operBpduFilterState definition. + + leaf rootGuardConfigState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of rootGuardConfigState definition. + + leaf rootGuardState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of rootGuardState definition. + + leaf version { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of version definition. + + leaf portRecieved { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of portRecieved definition. + + leaf portSend { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of portSend definition. + + leaf portFastCfg { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of portFastCfg definition. + + leaf portFastState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of portFastState definition. + + leaf pToPstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of pToPstate definition. + + leaf pToPCurrentstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of pToPCurrentstate definition. + + leaf autoEdgePCfg { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of autoEdgePCfg definition. + + leaf autoEdgetstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of autoEdgetstate definition. + + leaf bridgeDesignatedRoot { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bridgeDesignatedRoot definition. + + leaf portspanningTree { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of portspanningTree definition. + + leaf designatedBridge { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of designatedBridge definition. + + leaf helloTimer { + type cml_data_types:CML_INT32_T; + config false; + } // END of helloTimer definition. + + leaf vlanId { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + } // END of vlanId definition. + + leaf vlanrestrictedRole { + type cml_data_types:CML_BOOL_T; + default false; + description "spanning-tree restricted-role"; + } // END of vlanrestrictedRole definition. + + leaf vlanrestrictedTCN { + type cml_data_types:CML_BOOL_T; + default false; + description "spanning-tree restricted-tcn"; + } // END of vlanrestrictedTCN definition. + + + list bridgegroup { + + description + "bridgegroup"; + + config true; + key "bridgeId"; + + + leaf pathCost { + type cml_data_types:CML_UINT32_T { + range "1..200000000"; + } + } // END of pathCost definition. + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bridgeId definition. + + leaf portPriority { + type cml_data_types:CML_INT16_T { + range "0..240"; + } + default "128"; + description "bridge-group priority"; + } // END of portPriority definition. + + uses vlanportgrp; + } // End of bridgegroup-list + + list spanningGroup { + if-feature feature_list:HAVE_DEFAULT_BRIDGE; + + description + "spanningGroup"; + + config true; + key "bridgeId"; + + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bridgeId definition. + + uses vlanportgrp; + } // End of spanningGroup-list + } // End of bridgePort-list + } // END of bridgePort-grouping definition. + + + grouping mstTeBridge-grouping { + list mstTeBridge { + if-feature feature_list:HAVE_MSTPD; + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + + description + "mstTeBridge"; + + config true; + key "bridgeId"; + + + leaf bridgeId { + type cml_data_types:CML_BRIDGE_BACKBONE_ID_T; + } // END of bridgeId definition. + + leaf temsti { + type cml_data_types:CML_BOOL_T; + } // END of temsti definition. + + leaf tevlanId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of tevlanId definition. + + } // End of mstTeBridge-list + } // END of mstTeBridge-grouping definition. + + + grouping backboneBridge-grouping { + list backboneBridge { + + description + "backboneBridge"; + + config true; + key "bridgeId"; + + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bridgeId definition. + + leaf priority { + type cml_data_types:CML_UINT32_T { + range "0..61440"; + } + default "32768"; + description "bridge priority"; + } // END of priority definition. + + } // End of backboneBridge-list + } // END of backboneBridge-grouping definition. + + + grouping backboneBridgePort-grouping { + list backboneBridgePort { + + description + "backbone bridge interface command"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bridgeId definition. + + leaf portPriority { + type cml_data_types:CML_INT16_T { + range "0..240"; + } + default "128"; + description "bridge-group priority"; + } // END of portPriority definition. + + leaf pathCost { + type cml_data_types:CML_UINT32_T { + range "1..200000000"; + } + } // END of pathCost definition. + + } // End of backboneBridgePort-list + } // END of backboneBridgePort-grouping definition. + + + grouping backboneBridgeInstance-grouping { + list backboneBridgeInstance { + + description + "backboneBridgeInstance"; + + config true; + key "instanceId"; + + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "backbone"; + } // END of bridgeId definition. + + leaf instanceId { + type cml_data_types:CML_INT32_T { + range "1..63"; + } + description "bridge instance "; + } // END of instanceId definition. + + + list backboneInterface { + + description + "Group of mstp attribute having interface property"; + + config true; + key "ifName"; + + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bridgeId definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bridge-group instance"; + } // END of ifName definition. + + leaf mstiPriority { + type cml_data_types:CML_INT16_T { + range "0..240"; + } + default "128"; + description "bridge-group instance priority"; + } // END of mstiPriority definition. + + leaf mstppathCost { + type cml_data_types:CML_UINT32_T { + range "1..200000000"; + } + default "20000000"; + description "bridge-group instance path-cost"; + } // END of mstppathCost definition. + + } // End of backboneInterface-list + uses mstpinstance; + } // End of backboneBridgeInstance-list + } // END of backboneBridgeInstance-grouping definition. + + + grouping customerSpanningtree-grouping { + list customerSpanningtree { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + + description + "customerSpanningtree"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf cistBridgePriority { + type cml_data_types:CML_UINT32_T { + range "0..61440"; + } + default "61440"; + description "bridge priority"; + } // END of cistBridgePriority definition. + + leaf bridgeMaxAge { + type cml_data_types:CML_INT32_T { + range "6..40"; + } + default "20"; + description "bridge max-age"; + } // END of bridgeMaxAge definition. + + leaf bridgehelloTime { + type cml_data_types:CML_INT32_T { + range "1..10"; + } + default "2"; + description "bridge hello-time"; + } // END of bridgehelloTime definition. + + leaf bridgeforwardDelay { + type cml_data_types:CML_INT32_T { + range "4..30"; + } + default "15"; + description "bridge forward-time"; + } // END of bridgeforwardDelay definition. + + leaf transmitHoldCount { + type cml_data_types:CML_UINT8_T { + range "1..10"; + } + default "6"; + description "bridge transmit-holdcount"; + } // END of transmitHoldCount definition. + + leaf portPriority { + type cml_data_types:CML_INT16_T { + range "0..240"; + } + default "128"; + description "bridge-group priority"; + } // END of portPriority definition. + + leaf providerPortPriority { + type cml_data_types:CML_INT16_T { + range "0..240"; + } + default "128"; + description "bridge-group priority"; + } // END of providerPortPriority definition. + + leaf mstppathCost { + type cml_data_types:CML_UINT32_T { + range "1..200000000"; + } + default "20000000"; + description "bridge-group instance path-cost"; + } // END of mstppathCost definition. + + leaf mstpProviderpathCost { + type cml_data_types:CML_UINT32_T { + range "1..200000000"; + } + default "20000000"; + description "bridge-group instance path-cost"; + } // END of mstpProviderpathCost definition. + + leaf svlanId { + type cml_data_types:CML_UINT16_T { + range "1..4094"; + } + } // END of svlanId definition. + + } // End of customerSpanningtree-list + } // END of customerSpanningtree-grouping definition. + grouping mstpinstance { + leaf mstiBridgePriority { + type cml_data_types:CML_UINT32_T { + range "0..61440"; + } + default "32768"; + description "bridge instance priority"; + } // END of mstiBridgePriority definition. + + leaf-list vlanId { + type cml_data_types:CML_UINT16_T; + } // END of vlanId definition. + + } // END of mstpinstance definition. + grouping mstpSpanning { + leaf bridgeMaxAge { + type cml_data_types:CML_INT32_T { + range "6..40"; + } + default "20"; + description "bridge max-age"; + } // END of bridgeMaxAge definition. + + leaf bridgehelloTime { + type cml_data_types:CML_INT32_T { + range "1..10"; + } + default "2"; + description "bridge hello-time"; + } // END of bridgehelloTime definition. + + leaf bridgeforwardDelay { + type cml_data_types:CML_INT32_T { + range "4..30"; + } + default "15"; + description "bridge forward-time"; + } // END of bridgeforwardDelay definition. + + leaf bridgemaxHops { + type cml_data_types:CML_INT32_T { + range "1..40"; + } + default "20"; + description "bridge max-hops"; + } // END of bridgemaxHops definition. + + leaf cistBridgePriority { + type cml_data_types:CML_UINT32_T { + range "0..61440"; + } + default "32768"; + description "bridge priority"; + } // END of cistBridgePriority definition. + + leaf ageingTime { + type cml_data_types:CML_INT32_T { + range "10..1000000"; + } + default "300"; + description "bridge ageing time"; + } // END of ageingTime definition. + + leaf rpvstFlag { + type cml_data_types:CML_UINT16_T; + } // END of rpvstFlag definition. + + leaf ageingStatus { + type cml_data_types:CML_BRIDGE_AGEING_STATE; + description "bridge ageing"; + } // END of ageingStatus definition. + + leaf transmitHoldCount { + type cml_data_types:CML_UINT8_T { + range "1..10"; + } + default "6"; + description "bridge transmit-holdcount"; + } // END of transmitHoldCount definition. + + leaf adminCisco { + type cml_data_types:CML_ENABLE_DISABLE_T; + default "disable"; + description "bridge cisco-interoperability"; + } // END of adminCisco definition. + + leaf vlanPriority { + if-feature feature_list:HAVE_RPVST_PLUS; + type cml_data_types:CML_UINT32_T { + range "0..61440"; + } + default "32768"; + description "bridge vlan priority"; + } // END of vlanPriority definition. + + leaf vlanId { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + } // END of vlanId definition. + + } // END of mstpSpanning definition. + grouping vlanportgrp { + + list vlanport { + if-feature feature_list:HAVE_RPVST_PLUS; + + description + "vlan port commands"; + + config true; + key "vlanId"; + + + leaf vlanId { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + } // END of vlanId definition. + + leaf vlanportPriority { + type cml_data_types:CML_UINT32_T { + range "0..240"; + } + default "128"; + description "bridge vlan priority"; + } // END of vlanportPriority definition. + + leaf vlanpathCost { + type cml_data_types:CML_UINT32_T { + range "1..200000000"; + } + default "1"; + description "bridge vlan priority"; + } // END of vlanpathCost definition. + + } // End of vlanport-list + } // END of vlanportgrp definition. + + } \ No newline at end of file diff --git a/yang-files/nsmsnmp.yang b/yang-files/nsmsnmp.yang new file mode 100644 index 00000000..f9b9325b --- /dev/null +++ b/yang-files/nsmsnmp.yang @@ -0,0 +1,75 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : nsmsnmp.yang +* +*/ + +submodule nsmsnmp { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "Simple Network Management Protocol"; + + + revision "2017-02-20" { + description "Initial version of SNMP datamodel."; + } + + + grouping nsmsnmp-grouping { + container nsmsnmp { + config true; + + description + "snmp related operations"; + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf enabled { + type cml_data_types:CML_BOOL_T; + } // END of enabled definition. + + leaf syscontact { + if-feature feature_list:HAVE_SNMP_AGENT; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of syscontact definition. + + leaf syslocation { + if-feature feature_list:HAVE_SNMP_AGENT; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of syslocation definition. + + } // END of nsmsnmp-container definition. + } // END of nsmsnmp-container definition. + + +} \ No newline at end of file diff --git a/yang-files/ntp.yang b/yang-files/ntp.yang new file mode 100644 index 00000000..bc426406 --- /dev/null +++ b/yang-files/ntp.yang @@ -0,0 +1,206 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : ntp.yang +* +*/ + +submodule ntp { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "ntp configurations"; + + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of NTP datamodel."; + } + + + grouping ntp-grouping { + container ntp { + config true; + + description + "ntp"; + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf featurentp { + if-feature feature_list:HAVE_HOSTP_NTP; + type cml_data_types:CML_BOOL_T; + description "feature ntp"; + } // END of featurentp definition. + + leaf enableNTP { + if-feature feature_list:HAVE_HOSTP_NTP; + type cml_data_types:CML_BOOL_T; + description "enable ntp"; + } // END of enableNTP definition. + + leaf loggingNTP { + if-feature feature_list:HAVE_HOSTP_NTP; + type cml_data_types:CML_BOOL_T; + default false; + description "ntp logging"; + } // END of loggingNTP definition. + + leaf authenticateNTP { + if-feature feature_list:HAVE_HOSTP_NTP; + type cml_data_types:CML_BOOL_T; + default false; + description "ntp authenticate"; + } // END of authenticateNTP definition. + + leaf debugntp { + type cml_data_types:CML_BOOL_T; + default false; + description "debug ntp"; + } // END of debugntp definition. + + + list ntpKey { + + description + "ntpKey"; + + config true; + key "keyAuthenticate"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf keyAuthenticate { + type cml_data_types:CML_INT32_T { + range "1..65534"; + } + description "ntp authentication-key"; + } // END of keyAuthenticate definition. + + leaf authenticateScheme { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of authenticateScheme definition. + + } // End of ntpKey-list + + list trustedKey { + + description + "trustedKey"; + + config true; + key "trustedkeyNTP"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf trustedkeyNTP { + type cml_data_types:CML_INT32_T { + range "1..65534"; + } + description "ntp trusted-key"; + } // END of trustedkeyNTP definition. + + } // End of trustedKey-list + + list PeerOptions { + + description + "PeerOptions"; + + config true; + key "Address"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf mode { + mandatory true; + type cml_data_types:CML_NTP_MODE_T; + } // END of mode definition. + + leaf Address { + type cml_data_types:CML_HOSTNAME_T; + description "IP address"; + } // END of Address definition. + + leaf prefer { + type cml_data_types:CML_BOOL_T; + description " NTP preference"; + } // END of prefer definition. + + leaf key { + type cml_data_types:CML_UINT32_T { + range "1..65534"; + } + description "key"; + } // END of key definition. + + leaf minpoll { + type cml_data_types:CML_UINT16_T { + range "4..16"; + } + default "4"; + description "Min poll interval for NTP messages"; + } // END of minpoll definition. + + leaf maxpoll { + type cml_data_types:CML_UINT16_T { + range "4..16"; + } + default "6"; + description "Max poll interval for NTP messages"; + } // END of maxpoll definition. + + } // End of PeerOptions-list + } // END of ntp-container definition. + } // END of ntp-container definition. + + +} \ No newline at end of file diff --git a/yang-files/oambfd.yang b/yang-files/oambfd.yang index 71749eee..fd3b631c 100644 --- a/yang-files/oambfd.yang +++ b/yang-files/oambfd.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -28,16 +28,22 @@ submodule oambfd { } - revision "2016-10-20" { - description "Revisied on 2016-10-20."; } + revision "2016-12-26" { + description "Adding desc and ignore_doc changes."; + } + + revision "2016-10-10" { + description "Adding the new OAM-LPS DM."; + } grouping bfd-grouping { list bfd { - + if-feature feature_list:HAVE_BFD_MONO; + description - "bfd"; + "BFD basic configurations"; config true; key "bfdProcessId"; @@ -45,171 +51,487 @@ submodule oambfd { leaf vrId { type cml_data_types:CML_INT32_T; - config true; } // END of vrId definition. leaf bfdProcessId { - type cml_data_types:CML_BOOL_T; - config true; + type cml_data_types:CML_INT32_T; } // END of bfdProcessId definition. - leaf bfdGtsmState { - type cml_data_types:CML_BFD_GTSM_STATE_T; - config true; - description "bfd Gtsm(Generalized TTL Security Mechanism)"; - } // END of bfdGtsmState definition. + leaf enGtsmProtection { + type cml_data_types:CML_BFD_SESSION_STATE_T; + description "bfd gtsm"; + } // END of enGtsmProtection definition. - leaf bfdNotificationState { + leaf bfdNotfEn { type cml_data_types:CML_BFD_SESSION_STATE_T; - config true; - description "BFD Notification State"; - } // END of bfdNotificationState definition. + description "bfd notification "; + } // END of bfdNotfEn definition. - leaf bfdEchoState { + leaf isEchoSet { type cml_data_types:CML_BOOL_T; - config true; - description "BFD Echo State"; - } // END of bfdEchoState definition. + description "bfd echo"; + } // END of isEchoSet definition. - leaf bfdGtsmTtl { + leaf gtsmTtl { type cml_data_types:CML_UINT8_T { range "1..255"; } default "255"; - config true; - description "bfd GTSM TTL"; - } // END of bfdGtsmTtl definition. + description "bfd gtsm ttl"; + } // END of gtsmTtl definition. - leaf bfdSlowTimer { + leaf bfdStartTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bfdStartTime definition. + + leaf bfdSessionCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of bfdSessionCount definition. + + leaf bfdAdminState { + type cml_data_types:CML_OAMBFD_ADMIN_STATE_T; + config false; + } // END of bfdAdminState definition. + + leaf bfdImageType { + type cml_data_types:CML_OAMBFD_IMAGE_TYPE_T; + config false; + } // END of bfdImageType definition. + + leaf bfdLocalDisc { + type cml_data_types:CML_UINT32_T; + config false; + } // END of bfdLocalDisc definition. + + leaf slowTimerIntvl { type cml_data_types:CML_UINT32_T { range "1000..30000"; } default "2000"; - config true; - } // END of bfdSlowTimer definition. + description "bfd slow-timer"; + } // END of slowTimerIntvl definition. - leaf-list bfdMultihopIntervalIpv4Addr { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of bfdMultihopIntervalIpv4Addr definition. - leaf-list bfdIpv4MultihopMinTx { - type cml_data_types:CML_UINT32_T { - range "50..999"; - } - config true; - } // END of bfdIpv4MultihopMinTx definition. + list bfdSession { + + description + "bfd Session table for runtime attrs"; - leaf-list bfdIpv4MultihopMinRx { - type cml_data_types:CML_UINT32_T { - range "50..999"; - } - config true; - } // END of bfdIpv4MultihopMinRx definition. + config false; + key "bfdSessionIndex"; - leaf-list bfdIpv4MultihopMulti { - type cml_data_types:CML_UINT32_T { - range "3..50"; - } - config true; - } // END of bfdIpv4MultihopMulti definition. + + leaf bfdSessionIndex { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessionIndex definition. - leaf bfdMultihopIntervalIpv6Addr { - type cml_data_types:CML_IPV6_ADDR_T; - config true; - } // END of bfdMultihopIntervalIpv6Addr definition. + leaf bfdSessRemoteDisc { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessRemoteDisc definition. - leaf bfdIpv6MultihopMinTx { - type cml_data_types:CML_UINT32_T { - range "50..999"; - } - default "250"; - config true; - } // END of bfdIpv6MultihopMinTx definition. + leaf bfdLlType { + type cml_data_types:CML_OAMBFD_SESS_LOWER_LAYER_T; + } // END of bfdLlType definition. - leaf bfdIpv6MultihopMinRx { - type cml_data_types:CML_UINT32_T { - range "50..999"; - } - default "250"; - config true; - } // END of bfdIpv6MultihopMinRx definition. + leaf bfdSessionType { + type cml_data_types:CML_OAMBFD_SESSION_TYPE_T; + } // END of bfdSessionType definition. - leaf bfdIpv6MultihopMulti { - type cml_data_types:CML_UINT32_T { - range "3..50"; - } - default "3"; - config true; - } // END of bfdIpv6MultihopMulti definition. + leaf bfdSessionState { + type cml_data_types:CML_OAMBFD_SESSION_STATE_T; + } // END of bfdSessionState definition. + leaf bfdSessionUptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessionUptime definition. - list bfdMultihopKeyChain { - - description - "bfdMultihopKeyChain"; + leaf bfdRemoteAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdRemoteAddr definition. - config true; - key "bfdMultihopAddr"; + leaf bfdSessIfIdx { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessIfIdx definition. - - leaf bfdMultihopAddr { - type cml_data_types:CML_IP_ADDR_T; - config true; - description "BFD multihop-peer"; - } // END of bfdMultihopAddr definition. + leaf bfdSessVersion { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessVersion definition. - leaf bfdAuthType { - mandatory true; - type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; - config true; - description "BFD Authentication Type"; - } // END of bfdAuthType definition. + leaf bfdSessLocDisc { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessLocDisc definition. - leaf bfdKeyChain { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; - description "BFD key-chain"; - } // END of bfdKeyChain definition. + leaf bfdSessLocAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessLocAddr definition. - } // End of bfdMultihopKeyChain-list + leaf bfdRemotePort { + type cml_data_types:CML_UINT32_T; + } // END of bfdRemotePort definition. + + leaf bfdLocalPort { + type cml_data_types:CML_UINT32_T; + } // END of bfdLocalPort definition. + + leaf bfdLocalEchoPort { + type cml_data_types:CML_UINT32_T; + } // END of bfdLocalEchoPort definition. + + leaf bfdMplsLspType { + type cml_data_types:CML_UINT32_T; + } // END of bfdMplsLspType definition. + + leaf bfdMplsTnlName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdMplsTnlName definition. + + leaf bfdMplsFecAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdMplsFecAddr definition. + + leaf bfdMplsLspPingItvl { + type cml_data_types:CML_UINT32_T; + } // END of bfdMplsLspPingItvl definition. + + leaf bfdMplsFtnIndx { + type cml_data_types:CML_UINT32_T; + } // END of bfdMplsFtnIndx definition. + + leaf bfdMplsMinTx { + type cml_data_types:CML_UINT32_T; + } // END of bfdMplsMinTx definition. + + leaf bfdMplsMinRx { + type cml_data_types:CML_UINT32_T; + } // END of bfdMplsMinRx definition. + + leaf bfdMplsMult { + type cml_data_types:CML_UINT32_T; + } // END of bfdMplsMult definition. + + leaf bfdMplsTnlLabel { + type cml_data_types:CML_UINT32_T; + } // END of bfdMplsTnlLabel definition. + + leaf bfdVccvVcId { + type cml_data_types:CML_UINT32_T; + } // END of bfdVccvVcId definition. + + leaf bfdVccvInVcLabel { + type cml_data_types:CML_UINT32_T; + } // END of bfdVccvInVcLabel definition. + + leaf bfdVccvOutVcLabel { + type cml_data_types:CML_UINT32_T; + } // END of bfdVccvOutVcLabel definition. + + leaf bfdVccvCcType { + type cml_data_types:CML_UINT32_T; + } // END of bfdVccvCcType definition. + + leaf bfdVccvCvType { + type cml_data_types:CML_UINT32_T; + } // END of bfdVccvCvType definition. + + leaf bfdVccvAcIx { + type cml_data_types:CML_UINT32_T; + } // END of bfdVccvAcIx definition. + + leaf bfdVccvTnlLabel { + type cml_data_types:CML_UINT32_T; + } // END of bfdVccvTnlLabel definition. + + leaf bfdVccvPeerAddr { + type cml_data_types:CML_UINT32_T; + } // END of bfdVccvPeerAddr definition. + + leaf bfdMplstpMegName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdMplstpMegName definition. + + leaf bfdMplstpMeName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdMplstpMeName definition. + + leaf bfdMplstpPathType { + type cml_data_types:CML_UINT8_T; + } // END of bfdMplstpPathType definition. + + leaf bfdSessOptionFlag { + type cml_data_types:CML_OAMBFD_SESSION_FLAGS_T; + } // END of bfdSessOptionFlag definition. + + leaf bfdSessPerfDiag { + type cml_data_types:CML_OAMBFD_PERFORM_DIAG_T; + } // END of bfdSessPerfDiag definition. + + leaf bfdSessMinTx { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessMinTx definition. + + leaf bfdSessMinRx { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessMinRx definition. + + leaf bfdSessMultplier { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessMultplier definition. + + leaf bfdSessNegTx { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessNegTx definition. + + leaf bfdSessNegRx { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessNegRx definition. + + leaf bfdSessNegMultiplier { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessNegMultiplier definition. + + leaf bfdSessEchoTx { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessEchoTx definition. + + leaf bfdSessEchoRx { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessEchoRx definition. + + leaf bfdSessEchoIntvl { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessEchoIntvl definition. + + leaf bfdSessStorTye { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessStorTye definition. + + leaf bfdSessDownTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessDownTime definition. + + leaf bfdSessDisconTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessDisconTime definition. + + leaf bfdSessAuthKeyId { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessAuthKeyId definition. + + leaf bfdSessPktIn { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessPktIn definition. + + leaf bfdSessPktOut { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessPktOut definition. + + leaf bfdSessEchoOut { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessEchoOut definition. + + leaf bfdSessIpv6EchoOut { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessIpv6EchoOut definition. + + leaf bfdSessIpv6PktOut { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessIpv6PktOut definition. + + leaf bfdSessIpv6PktIn { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessIpv6PktIn definition. + + leaf bfdSessUpCount { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessUpCount definition. + + leaf bfdSessUpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessUpTime definition. + + leaf bfdSessHoldCntr { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessHoldCntr definition. + + leaf bfdSessHoldDown { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessHoldDown definition. + + leaf bfdSessFwdHelloCntr { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessFwdHelloCntr definition. + + leaf bfdSessPktVersion { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktVersion definition. + + leaf bfdSessPktDiag { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktDiag definition. + + leaf bfdSessPktState { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktState definition. + + leaf bfdSessPktDemandEn { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktDemandEn definition. + + leaf bfdSessPktPollSeq { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktPollSeq definition. + + leaf bfdSessPktFlagState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessPktFlagState definition. + + leaf bfdSessPktMult { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktMult definition. + + leaf bfdSessPktLength { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktLength definition. + + leaf bfdSessPktMyDisc { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktMyDisc definition. - list bfdMultihopKeyStr { + leaf bfdSessPktUrDisc { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktUrDisc definition. + + leaf bfdSessPktMinTx { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktMinTx definition. + + leaf bfdSessPktMinRx { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktMinRx definition. + + leaf bfdSessPktMinEchoIntvl { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessPktMinEchoIntvl definition. + + + list bfdSessionClientInfo { + + description + "BFD session client Info"; + + config false; + key "bfdSessProtoClientId"; + + + leaf bfdSessProtoClientId { + type cml_data_types:CML_UINT32_T; + } // END of bfdSessProtoClientId definition. + + leaf bfdSessClientFlag { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdSessClientFlag definition. + + } // End of bfdSessionClientInfo-list + } // End of bfdSession-list + + list bfdMultihopKeyChain { description - "bfdMultihopKeyStr"; + "BFD multihop peer configs"; config true; key "bfdMultihopAddr"; leaf bfdMultihopAddr { - type cml_data_types:CML_IP_ADDR_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of bfdMultihopAddr definition. leaf bfdAuthType { - mandatory true; type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; - config true; } // END of bfdAuthType definition. + leaf bfdKeyChain { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdKeyChain definition. + leaf bfdMultihopKeyId { - mandatory true; type cml_data_types:CML_UINT32_T { range "0..255"; } - config true; } // END of bfdMultihopKeyId definition. leaf bfdKeyStr { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of bfdKeyStr definition. - } // End of bfdMultihopKeyStr-list + leaf bfdTransmitIntvl { + type cml_data_types:CML_UINT32_T { + range "50..999"; + } + } // END of bfdTransmitIntvl definition. + + leaf bfdRecieveIntvl { + type cml_data_types:CML_UINT32_T { + range "50..999"; + } + } // END of bfdRecieveIntvl definition. + + leaf bfdHelloMultiplier { + type cml_data_types:CML_UINT32_T { + range "3..50"; + } + default "3"; + description "bfd interval "; + } // END of bfdHelloMultiplier definition. + + } // End of bfdMultihopKeyChain-list } // End of bfd-list } // END of bfd-grouping definition. @@ -218,234 +540,312 @@ submodule oambfd { list bfdInterface { description - "OSPF interface related operations"; + "BFD interface related operations"; config true; key "ifName"; leaf ifName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of ifName definition. leaf vrId { type cml_data_types:CML_INT32_T; - config true; } // END of vrId definition. - leaf bfdSessionState { - type cml_data_types:CML_BOOL_T; - config true; - } // END of bfdSessionState definition. - - leaf bfdIpv4State { - type cml_data_types:CML_BOOL_T; - config true; - description "BFD ipv4 State"; - } // END of bfdIpv4State definition. + leaf isBfdDisable { + type cml_data_types:CML_BFD_SESSION_STATE_T; + description "bfd disable"; + } // END of isBfdDisable definition. - leaf bfdMinTx { + leaf bfdIfTransmitIntvl { type cml_data_types:CML_UINT32_T { range "50..999"; } - default "250"; - config true; - description "bfd interval"; - } // END of bfdMinTx definition. + } // END of bfdIfTransmitIntvl definition. - leaf bfdMinRx { + leaf bfdIfRecieveIntvl { type cml_data_types:CML_UINT32_T { range "50..999"; } - default "250"; - config true; - } // END of bfdMinRx definition. + } // END of bfdIfRecieveIntvl definition. - leaf bfdIntervalMultiplier { + leaf bfdIfHelloMultiplier { type cml_data_types:CML_UINT32_T { range "3..50"; } default "3"; - config true; - description "bfd Interval Multiplier"; - } // END of bfdIntervalMultiplier definition. + description "bfd interval"; + } // END of bfdIfHelloMultiplier definition. leaf bfdEchoInterval { type cml_data_types:CML_UINT32_T { range "1..4294967"; } - default "1000"; - config true; + description "bfd echo interval"; } // END of bfdEchoInterval definition. + leaf bfdIfSrcAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "echo ipv4 source"; + } // END of bfdIfSrcAddr definition. + + leaf bfdIfAuthType { + type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; + } // END of bfdIfAuthType definition. + + leaf bfdIfKeyChain { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bfd multihop-peer A.B.C.D|X:X::X:X"; + } // END of bfdIfKeyChain definition. + + leaf bfdIfKeyId { + type cml_data_types:CML_UINT32_T { + range "0..255"; + } + } // END of bfdIfKeyId definition. + + leaf bfdIfKeyStr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bfd multihop-peer"; + } // END of bfdIfKeyStr definition. + + leaf bfdIfIndex { + type cml_data_types:CML_UINT32_T; + config false; + } // END of bfdIfIndex definition. - list bfdIpv4UserAdd { + leaf bfdIfState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bfdIfState definition. + + + list bfdIpv4UserIntfSessSrc { description - "bfdIpv4UserAdd"; + "BFD ipv4 user intf src related configs"; config true; - key "bfdUserSrcAddr"; + key "bfdIpv4UserSrcAddr"; - leaf bfdUserSrcAddr { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - description "bfd ipv4 User Session"; - } // END of bfdUserSrcAddr definition. + leaf bfdIpv4UserSrcAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdIpv4UserSrcAddr definition. - leaf bfdUserDestAddr { - mandatory true; - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of bfdUserDestAddr definition. - leaf multihop { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of multihop definition. + list bfdIpv4UserIntfSessDest { + + description + "BFD ipv4 user intf dest related configs"; - leaf demandMode { - mandatory true; - type cml_data_types:CML_BOOL_T; config true; - } // END of demandMode definition. + key "bfdIpv4UserDestAddr"; - leaf nonPersistant { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of nonPersistant definition. + + leaf bfdIpv4UserDestAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdIpv4UserDestAddr definition. - leaf adminDown { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of adminDown definition. + leaf multihopIpv4 { + type cml_data_types:CML_BOOL_T; + } // END of multihopIpv4 definition. + + leaf demandModeIpv4 { + type cml_data_types:CML_BOOL_T; + } // END of demandModeIpv4 definition. + + leaf nonPersistantIpv4 { + type cml_data_types:CML_BOOL_T; + } // END of nonPersistantIpv4 definition. + + leaf adminDownIpv4 { + type cml_data_types:CML_BOOL_T; + description "bfd session "; + } // END of adminDownIpv4 definition. - } // End of bfdIpv4UserAdd-list + } // End of bfdIpv4UserIntfSessDest-list + } // End of bfdIpv4UserIntfSessSrc-list - list bfdIpv6UserAdd { + list bfdIpv6UserIntfSessSrc { description - "bfdIpv6UserAdd"; + "BFD ipv6 user intf src related configs"; config true; key "bfdIpv6UserSrcAddr"; leaf bfdIpv6UserSrcAddr { - type cml_data_types:CML_IPV6_ADDR_T; - config true; - description "bfd ipv6 User Session"; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of bfdIpv6UserSrcAddr definition. - leaf bfdIpv6UserDestAddr { - mandatory true; - type cml_data_types:CML_IPV6_ADDR_T; - config true; - } // END of bfdIpv6UserDestAddr definition. - leaf ipv6Multihop { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of ipv6Multihop definition. + list bfdIpv6UserIntfSessDest { + + description + "BFD ipv6 user intf dest related configs"; - leaf ipv6DemandMode { - mandatory true; - type cml_data_types:CML_BOOL_T; config true; - } // END of ipv6DemandMode definition. + key "bfdIpv6UserDestAddr"; + + + leaf bfdIpv6UserDestAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bfdIpv6UserDestAddr definition. + + leaf multihopIpv6 { + type cml_data_types:CML_BOOL_T; + } // END of multihopIpv6 definition. + + leaf demandModeIpv6 { + type cml_data_types:CML_BOOL_T; + } // END of demandModeIpv6 definition. + + leaf nonPersistantIpv6 { + type cml_data_types:CML_BOOL_T; + } // END of nonPersistantIpv6 definition. + + leaf adminDownIpv6 { + type cml_data_types:CML_BOOL_T; + description "bfd session"; + } // END of adminDownIpv6 definition. + + } // End of bfdIpv6UserIntfSessDest-list + } // End of bfdIpv6UserIntfSessSrc-list + } // End of bfdInterface-list + } // END of bfdInterface-grouping definition. - leaf ipv6NonPersistant { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of ipv6NonPersistant definition. - leaf ipv6AdminDown { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of ipv6AdminDown definition. + grouping confModeDebug-grouping { + list confModeDebug { + + description + "config mode debug commands"; - } // End of bfdIpv6UserAdd-list + config true; + key "vrId"; - list bfdIfAuthKeyChain { - - description - "bfdIfAuthKeyChain"; + + leaf vrId { + type cml_data_types:CML_INT32_T; + } // END of vrId definition. - config true; - key "bfdIfAuthType"; + leaf isConfDebugAll { + type cml_data_types:CML_BOOL_T; + } // END of isConfDebugAll definition. - - leaf bfdIfAuthType { - type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; - config true; - } // END of bfdIfAuthType definition. + leaf confModePackets { + type cml_data_types:CML_BOOL_T; + } // END of confModePackets definition. - leaf bfdIfKeyChain { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; - } // END of bfdIfKeyChain definition. + leaf confModeEvents { + type cml_data_types:CML_BOOL_T; + } // END of confModeEvents definition. - } // End of bfdIfAuthKeyChain-list + leaf confModeIpcErr { + type cml_data_types:CML_BOOL_T; + } // END of confModeIpcErr definition. - list bfdIfAuthKeyStr { - - description - "bfdIfAuthKeyStr"; + leaf confModeIpcEvent { + type cml_data_types:CML_BOOL_T; + } // END of confModeIpcEvent definition. - config true; - key "bfdIfAuthType"; + leaf confModeSession { + type cml_data_types:CML_BOOL_T; + } // END of confModeSession definition. - - leaf bfdIfAuthType { - type cml_data_types:CML_BFD_MULTIHOP_AUTH_TYPE_T; - config true; - } // END of bfdIfAuthType definition. + leaf confModeNsm { + type cml_data_types:CML_BOOL_T; + } // END of confModeNsm definition. - leaf bfdIfKeyId { - mandatory true; - type cml_data_types:CML_UINT32_T { - range "0..255"; - } - config true; - } // END of bfdIfKeyId definition. + } // End of confModeDebug-list + } // END of confModeDebug-grouping definition. - leaf bfdIfKeyStr { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; - } // END of bfdIfKeyStr definition. - } // End of bfdIfAuthKeyStr-list - } // End of bfdInterface-list - } // END of bfdInterface-grouping definition. + grouping execModeDebug-grouping { + list execModeDebug { + + description + "exec mode debug commands"; + + config true; + key "vrId"; + + + leaf vrId { + type cml_data_types:CML_INT32_T; + } // END of vrId definition. + + leaf isExecDebugAll { + type cml_data_types:CML_BOOL_T; + } // END of isExecDebugAll definition. + + leaf execModePackets { + type cml_data_types:CML_BOOL_T; + } // END of execModePackets definition. + + leaf execModeEvents { + type cml_data_types:CML_BOOL_T; + } // END of execModeEvents definition. + + leaf execModeIpcErr { + type cml_data_types:CML_BOOL_T; + } // END of execModeIpcErr definition. + + leaf execModeIpcEvent { + type cml_data_types:CML_BOOL_T; + } // END of execModeIpcEvent definition. + + leaf execModeSession { + type cml_data_types:CML_BOOL_T; + } // END of execModeSession definition. + + leaf execModeNsm { + type cml_data_types:CML_BOOL_T; + } // END of execModeNsm definition. + + } // End of execModeDebug-list + } // END of execModeDebug-grouping definition. grouping oamMpls-grouping { container oamMpls { config true; description - "oamMpls"; + "Oam mpls configs"; - leaf pingRequest { + leaf mplsPingReq { + if-feature feature_list:HAVE_MPLS_OAM; type cml_data_types:CML_BOOL_T; - config true; - description "mpls ping request"; - } // END of pingRequest definition. + description "mpls ping request dsmap tlv"; + } // END of mplsPingReq definition. - leaf pingReply { + leaf mplsPingReply { + if-feature feature_list:HAVE_MPLS_OAM; type cml_data_types:CML_BOOL_T; - config true; - description "mpls ping reply"; - } // END of pingReply definition. + description "mpls ping reply tlv"; + } // END of mplsPingReply definition. } // END of oamMpls-container definition. } // END of oamMpls-container definition. diff --git a/yang-files/ospf.yang b/yang-files/ospf.yang index 938ba91b..46efef05 100644 --- a/yang-files/ospf.yang +++ b/yang-files/ospf.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -17,7 +17,6 @@ submodule ospf { belongs-to ZebOS { prefix ZebOS; } include interface; - include vrf; import cml_data_types { @@ -32,89 +31,476 @@ submodule ospf { "Layer-3 ospf configurations"; - revision "2016-08-10" { - description "Revisied on 2016-08-10."; + revision "2017-03-05" { + description "Added implicit_delete for Interface tables."; } + revision "2017-01-25" { + description "Fix for JIRA-13037,JIRA-13021,JIRA-13019."; + } + + revision "2017-01-23" { + description "Fix for JIRA-12899 (graceful-restart)."; + } + + revision "2017-01-10" { + description "Fix for JIRA-12271,12211,12385."; + } + + revision "2016-12-22" { + description "Added support for OSPF SMI auto generation."; + } + + revision "2016-09-29" { + description "Initial version of datamodel with Backend mapping."; + } + + revision "2016-02-25" { + description "Ospf vlink get-api implementation."; + } + + revision "2016-02-11" { + description "Ported changes from XP-master to ocnos-master."; + } + + revision "2016-02-03" { + description "Added utils function for encryption cases."; + } + + revision "2016-01-26" { + description "Addition of snmp oid for both IfTable and NeigborTable."; + } + + + + grouping ospfMaster-grouping { + list ospfMaster { + + description + "OSPF Master commands"; + + config true; + key "vrId"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + } // END of vrId definition. + + leaf multiInstanceSet { + if-feature feature_list:HAVE_OSPF_MULTI_INST; + type cml_data_types:CML_BOOL_T; + } // END of multiInstanceSet definition. + + leaf graceperiod { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_UINT16_T { + range "1..1800"; + } + description "grace period for graceful restart"; + } // END of graceperiod definition. + + leaf plannedOnly { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_BOOL_T; + description "ospf global config restart planned only"; + } // END of plannedOnly definition. + + leaf-list helperId { + type cml_data_types:CML_IPV4_ADDR_T; + description "OSPF Helper Never Router-ID list"; + } // END of helperId definition. + + container ospfDebug { + config true; + + description + "OSPF global debug flags"; + + leaf ospfDebugAllType { + type cml_data_types:CML_OSPF_ALL_DEBUG_T; + description "debug packet type for ospf"; + } // END of ospfDebugAllType definition. + + leaf ospfPacketDebugType { + type cml_data_types:CML_OSPF_PACKET_TYPE_T; + default "hello"; + description "debug packet type for ospf"; + } // END of ospfPacketDebugType definition. + + leaf ospfEventFlags { + type cml_data_types:CML_OSPF_DEBUG_EVENT_TYPE_T; + default "abr"; + description "debug event flags for ospf"; + } // END of ospfEventFlags definition. + + leaf ospfIfsmFlags { + type cml_data_types:CML_OSPF_DEBUG_IFSM_T; + default "status"; + description "debug interface state machine flags for ospf"; + } // END of ospfIfsmFlags definition. + + leaf ospfNfsmFlags { + type cml_data_types:CML_OSPF_DEBUG_NFSM_T; + default "status"; + description "debug nsm state machine flags for ospf"; + } // END of ospfNfsmFlags definition. + + leaf ospfLsaFlags { + type cml_data_types:CML_OSPF_DEBUG_LSA_T; + default "generate"; + description "debug lsa flags for ospf"; + } // END of ospfLsaFlags definition. + + leaf ospfNsmFlags { + type cml_data_types:CML_OSPF_DEBUG_NSM_T; + default "interface"; + description "debug nsm flags for ospf"; + } // END of ospfNsmFlags definition. + + leaf ospfRibFlags { + if-feature feature_list:HAVE_RIBD; + type cml_data_types:CML_OSPF_DEBUG_RIB_T; + default "interface"; + description "debug flags for ribd"; + } // END of ospfRibFlags definition. + + leaf ospfRibClientFlags { + if-feature feature_list:HAVE_RIBD; + type cml_data_types:CML_OSPF_DEBUG_RIB_CLIENT_T; + description "debug flags for ribd"; + } // END of ospfRibClientFlags definition. + + leaf ospfBfdFlags { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_BOOL_T; + description "debug bfd flags for ospf"; + } // END of ospfBfdFlags definition. + + leaf ospfRtCalcflags { + type cml_data_types:CML_OSPF_DEBUG_ROUTE_T; + default "spf"; + description "debug route cal flags for ospf"; + } // END of ospfRtCalcflags definition. + + leaf ospfDatabaseTimerflags { + type cml_data_types:CML_BOOL_T; + description "debug database timer flags for ospf"; + } // END of ospfDatabaseTimerflags definition. + + leaf ospfRedistributeFlags { + type cml_data_types:CML_OSPF_DEBUG_REDIST_T; + description "debug redistribute flags for ospf"; + } // END of ospfRedistributeFlags definition. + + leaf ospfGracefulRestartFlags { + type cml_data_types:CML_OSPF_DEBUG_GRACEFUL_T; + description "debug graceful restart flags for ospf"; + } // END of ospfGracefulRestartFlags definition. + + leaf ospfPolicyFlags { + type cml_data_types:CML_BOOL_T; + description "debug policy flags for ospf"; + } // END of ospfPolicyFlags definition. + + leaf ospfRetransmissionFlags { + type cml_data_types:CML_BOOL_T; + description "debug retransmission flags for ospf"; + } // END of ospfRetransmissionFlags definition. + + leaf ospfLfaRouteFlags { + if-feature feature_list:HAVE_OSPF_LFA; + type cml_data_types:CML_BOOL_T; + description "debug Lfa flags for ospf"; + } // END of ospfLfaRouteFlags definition. + + leaf ospfHaFlags { + if-feature feature_list:HAVE_OSPF_SSO; + type cml_data_types:CML_BOOL_T; + description "debug HA flags for ospf"; + } // END of ospfHaFlags definition. + + leaf ospfSrFlags { + if-feature feature_list:HAVE_SR_MPLS; + type cml_data_types:CML_BOOL_T; + description "debug segment routing flags for ospf"; + } // END of ospfSrFlags definition. + + } // END of ospfDebug-container definition. + container helperPOlicy { + config true; + + description + "Helper policy for Graceful Restart"; + + leaf MaxGracePeriod { + type cml_data_types:CML_UINT16_T { + range "1..1800"; + } + description "Helper limit grace period for Graceful Restart"; + } // END of MaxGracePeriod definition. + + } // END of helperPOlicy-container definition. + } // End of ospfMaster-list + } // END of ospfMaster-grouping definition. grouping ospf-grouping { list ospf { description - "ospf"; + "OSPF attributes for each ospf process id"; config true; key "ospfProcessId"; + leaf ospfUpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ospfUpTime definition. + + leaf ddCountIn { + type cml_data_types:CML_UINT16_T; + config false; + } // END of ddCountIn definition. + + leaf ddCountOut { + type cml_data_types:CML_UINT16_T; + config false; + } // END of ddCountOut definition. + + leaf externalLsaCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of externalLsaCount definition. + + leaf externalLsaChecksum { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of externalLsaChecksum definition. + + leaf opaqueLsaCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of opaqueLsaCount definition. + + leaf opaqueLsaChecksum { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of opaqueLsaChecksum definition. + + leaf nonDefaulExternalLsaCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of nonDefaulExternalLsaCount definition. + + leaf lsdbExceedOverflowInterval { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lsdbExceedOverflowInterval definition. + + leaf lsaOriginateCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lsaOriginateCount definition. + + leaf lsaRecievedCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of lsaRecievedCount definition. + + leaf areaCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of areaCount definition. + + leaf dsteStatus { + if-feature feature_list:HAVE_DSTE; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of dsteStatus definition. + + leaf ospfPacketSendBuffer { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfPacketSendBuffer definition. + + leaf ospfLsaBuffer { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfLsaBuffer definition. + + leaf ospfPacketUnusedCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfPacketUnusedCount definition. + + leaf ospfTotalPacketUnusedCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfTotalPacketUnusedCount definition. + + leaf ospfStatsUpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ospfStatsUpTime definition. + + leaf ospfRouterIdChanges { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfRouterIdChanges definition. + + leaf ospfDRElectionCounter { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfDRElectionCounter definition. + + leaf ospfOlderLsaReceived { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfOlderLsaReceived definition. + + leaf ospfNbrStateChangeCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfNbrStateChangeCount definition. + + leaf ospfNbrExpirationCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfNbrExpirationCount definition. + + leaf ospfNbrBadLsReqsCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfNbrBadLsReqsCount definition. + + leaf ospfNbrSeqNumMismatchCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfNbrSeqNumMismatchCount definition. + + leaf ospfSpfFull { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfSpfFull definition. + + leaf ospfSpfSummary { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfSpfSummary definition. + + leaf ospfSpfExternal { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfSpfExternal definition. + + leaf defaultRouterId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of defaultRouterId definition. + leaf vrId { type cml_data_types:CML_UINT32_T; default "0"; - config true; } // END of vrId definition. leaf ospfProcessId { - type cml_data_types:CML_INT32_T { + type cml_data_types:CML_UINT16_T { range "0..65535"; } - config true; } // END of ospfProcessId definition. leaf vrfName { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of vrfName definition. - leaf ospfShutDown { + leaf routerId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + } // END of routerId definition. + + leaf floodReduction { type cml_data_types:CML_BOOL_T; - config true; - } // END of ospfShutDown definition. + } // END of floodReduction definition. - leaf domainType { - type cml_data_types:CML_OSPF_DOMAIN_TYPE_T; - config true; - } // END of domainType definition. + leaf isCompitableRfc1583 { + type cml_data_types:CML_BOOL_T; + } // END of isCompitableRfc1583 definition. - leaf nullDomainValue { + leaf isdbSummary { type cml_data_types:CML_BOOL_T; - config true; - description "domain-id"; - } // END of nullDomainValue definition. + } // END of isdbSummary definition. - leaf domainValue { - type cml_data_types:CML_INT32_T; - config true; - } // END of domainValue definition. + leaf bfdEnabled { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_BOOL_T; + } // END of bfdEnabled definition. - leaf isPrimaryDomainId { + leaf cspfEnabled { + if-feature feature_list:HAVE_OSPF_CSPF; type cml_data_types:CML_BOOL_T; - config true; - } // END of isPrimaryDomainId definition. + } // END of cspfEnabled definition. + + leaf cspfTieBreak { + if-feature feature_list:HAVE_OSPF_CSPF; + type cml_data_types:CML_OSPF6_CSPF_TYPE_T; + } // END of cspfTieBreak definition. + + leaf cspfDefRetryInterval { + if-feature feature_list:HAVE_OSPF_CSPF; + type cml_data_types:CML_UINT16_T { + range "1..3600"; + } + } // END of cspfDefRetryInterval definition. - leaf isPassiveIfDefault { + leaf cspfBetterProtection { + if-feature feature_list:HAVE_OSPF_CSPF; + if-feature feature_list:HAVE_GMPLS; type cml_data_types:CML_BOOL_T; - config true; - } // END of isPassiveIfDefault definition. + } // END of cspfBetterProtection definition. + + leaf vrfLiteEnable { + if-feature feature_list:HAVE_VRF_OSPF; + type cml_data_types:CML_BOOL_T; + } // END of vrfLiteEnable definition. + + leaf logAdjacencyDebugType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of logAdjacencyDebugType definition. + + leaf shutDown { + type cml_data_types:CML_BOOL_T; + } // END of shutDown definition. leaf areaBorderType { type cml_data_types:CML_OSPF_ABR_TYPE_T; - default "cisco"; - config true; } // END of areaBorderType definition. - leaf spfStartDelay { - type cml_data_types:CML_UINT32_T; - config true; - } // END of spfStartDelay definition. - leaf spfMinDelay { type cml_data_types:CML_UINT32_T { range "0..2147483647"; } default "500"; - config true; } // END of spfMinDelay definition. leaf spfMaxDelay { @@ -122,8 +508,6 @@ submodule ospf { range "0..2147483647"; } default "5000"; - config true; - description "timers spf exp"; } // END of spfMaxDelay definition. leaf throttleTimersStartDelay { @@ -131,24 +515,20 @@ submodule ospf { range "0..600000"; } default "0"; - config true; } // END of throttleTimersStartDelay definition. - leaf holdInterval { + leaf throttleMinInterval { type cml_data_types:CML_UINT32_T { range "1..600000"; } default "5000"; - config true; - } // END of holdInterval definition. + } // END of throttleMinInterval definition. leaf throttleTimersMaxDelay { type cml_data_types:CML_UINT32_T { range "1..600000"; } default "5000"; - config true; - description "timers throttle lsa"; } // END of throttleTimersMaxDelay definition. leaf lsaMinArrival { @@ -156,7 +536,6 @@ submodule ospf { range "0..600000"; } default "1"; - config true; } // END of lsaMinArrival definition. leaf referenceBandwidth { @@ -164,7 +543,6 @@ submodule ospf { range "1..4294967"; } default "100000"; - config true; } // END of referenceBandwidth definition. leaf maxDBDescriptor { @@ -172,2954 +550,1284 @@ submodule ospf { range "1..65535"; } default "5000"; - config true; } // END of maxDBDescriptor definition. - leaf maxUnusePackets { - type cml_data_types:CML_UINT32_T { - range "0..65535"; - } - default "200"; - config true; - } // END of maxUnusePackets definition. + leaf restartMethod { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_BOOL_T; + } // END of restartMethod definition. + + leaf restartMethodlls { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_BOOL_T; + } // END of restartMethodlls definition. + + leaf isCapabilityOpaque { + if-feature feature_list:HAVE_OPAQUE_LSA; + type cml_data_types:CML_BOOL_T; + } // END of isCapabilityOpaque definition. + + leaf isCapabilityTe { + if-feature feature_list:HAVE_OSPF_TE; + type cml_data_types:CML_OSPF_CAPABILITY_TE_T; + } // END of isCapabilityTe definition. - leaf maxLsaPacket { + leaf metricValue { type cml_data_types:CML_UINT32_T { - range "0..65535"; + range "1..16777214"; } - default "200"; - config true; - } // END of maxLsaPacket definition. + default "2"; + } // END of metricValue definition. leaf lsdbExternalLimit { + if-feature feature_list:HAVE_OSPF_DB_OVERFLOW; type cml_data_types:CML_UINT32_T { range "0..2147483647"; } default "100000"; - config true; } // END of lsdbExternalLimit definition. leaf exitOverflowInterval { - type cml_data_types:CML_INT32_T { + if-feature feature_list:HAVE_OSPF_DB_OVERFLOW; + type cml_data_types:CML_UINT32_T { range "0..65535"; } default "0"; - config true; - description "overflow database external"; } // END of exitOverflowInterval definition. - leaf metricValue { - type cml_data_types:CML_INT32_T { - range "1..16777214"; + leaf lsdbLimit { + type cml_data_types:CML_UINT32_T { + range "0..4294967294"; } - default "2"; - config true; - } // END of metricValue definition. + default "0"; + } // END of lsdbLimit definition. - leaf adminDistance { - type cml_data_types:CML_INT32_T { - range "1..255"; - } - default "110"; - config true; - description "admin distance"; - } // END of adminDistance definition. - - leaf restartMethod { - type cml_data_types:CML_BOOL_T; - config true; - } // END of restartMethod definition. - - leaf restartMethodLls { - type cml_data_types:CML_BOOL_T; - config true; - } // END of restartMethodLls definition. - - leaf logAdjacencyDebugType { - type cml_data_types:CML_STRING_T; - default "breif"; - config true; - } // END of logAdjacencyDebugType definition. + leaf lsdbLimitType { + type cml_data_types:CML_OSPF_ACTION_TYPE_T; + default "hard"; + } // END of lsdbLimitType definition. leaf maxAreaLimit { type cml_data_types:CML_UINT32_T { range "1..4294967294"; } - config true; } // END of maxAreaLimit definition. - leaf trapFlagBit { - type cml_data_types:CML_INT32_T; - config true; - } // END of trapFlagBit definition. - - leaf bandwidthType { - type cml_data_types:CML_STRING_T; - config true; - } // END of bandwidthType definition. - - leaf lsdbLimit { + leaf ospfmaxUnusePackets { type cml_data_types:CML_UINT32_T { - range "0..4294967294"; - } - default "0"; - config true; - } // END of lsdbLimit definition. - - leaf actionType { - type cml_data_types:CML_OSPF_ACTION_TYPE_T; - default "soft"; - config true; - } // END of actionType definition. - - leaf isLsdbLimit { - type cml_data_types:CML_BOOL_T; - config true; - description "overflow database"; - } // END of isLsdbLimit definition. - - leaf tieBreakField { - type cml_data_types:CML_STRING_T; - default "random"; - config true; - } // END of tieBreakField definition. - - leaf cspfTieBreakField { - type cml_data_types:CML_STRING_T; - default "random"; - config true; - } // END of cspfTieBreakField definition. - - leaf retryInterval { - type cml_data_types:CML_UINT16_T { - range "1..3600"; + range "0..65535"; } - default "1"; - config true; - } // END of retryInterval definition. + default "200"; + } // END of ospfmaxUnusePackets definition. - leaf cspfRetryInterval { + leaf lsaunuseMax { type cml_data_types:CML_UINT16_T { - range "1..3600"; + range "0..65535"; } - default "1"; - config true; - } // END of cspfRetryInterval definition. - - leaf isCompitableRfc1583 { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isCompitableRfc1583 definition. - - leaf checkCompatibleRfc1583 { - type cml_data_types:CML_BOOL_T; - config true; - } // END of checkCompatibleRfc1583 definition. - - leaf isCSPF { - if-feature feature_list:HAVE_OSPF_CSPF; - type cml_data_types:CML_BOOL_T; - config true; - } // END of isCSPF definition. - - leaf isEnableCSPF { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isEnableCSPF definition. - - leaf isTE { - if-feature feature_list:HAVE_OSPF_TE; - type cml_data_types:CML_BOOL_T; - config true; - description "capability te/traffic-engineering"; - } // END of isTE definition. - - leaf isEnableTE { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isEnableTE definition. - - leaf isOpaqueLsa { - type cml_data_types:CML_BOOL_T; - config true; - description "capability opaque"; - } // END of isOpaqueLsa definition. - - leaf checkOpaqueLsa { - type cml_data_types:CML_BOOL_T; - config true; - description "opaque-lsa-capable"; - } // END of checkOpaqueLsa definition. + } // END of lsaunuseMax definition. leaf refreshTimer { type cml_data_types:CML_UINT32_T { range "10..1800"; } default "10"; - config true; } // END of refreshTimer definition. - leaf dbSummaryOpt { - type cml_data_types:CML_BOOL_T; - config true; - } // END of dbSummaryOpt definition. - - leaf capabilityVrfLite { - if-feature feature_list:HAVE_VRF_OSPF; + leaf isFrrSet { + if-feature feature_list:HAVE_OSPF_LFA; type cml_data_types:CML_BOOL_T; - config true; - } // END of capabilityVrfLite definition. - - leaf accessListName { - type cml_data_types:CML_STRING_T; - config true; - } // END of accessListName definition. - - leaf-list routeSourceDistType { - type cml_data_types:CML_OSPF_DIST_ROUTE_SOURCE_TYPE_T; - config true; - description "distribute-list"; - } // END of routeSourceDistType definition. + } // END of isFrrSet definition. - leaf-list secondaryOspfProcId { + leaf adminDistance { type cml_data_types:CML_INT32_T { - range "1..65535"; + range "1..255"; } - config true; - description "distribute-list ospf"; - } // END of secondaryOspfProcId definition. + } // END of adminDistance definition. - leaf isDistributeListIn { - type cml_data_types:CML_BOOL_T; - config true; - description "distribute-list"; - } // END of isDistributeListIn definition. - leaf opaqueAsDesc { - type cml_data_types:CML_STRING_T; - config false; - } // END of opaqueAsDesc definition. + list passiveInterface { + + description + "OSPF Passive Interface list"; - leaf opaqueAsIfName { - type cml_data_types:CML_STRING_T; - config false; - } // END of opaqueAsIfName definition. + config true; + key "passiveIfName"; - leaf opaqueAsAdvRouter { - type cml_data_types:CML_STRING_T; - config false; - } // END of opaqueAsAdvRouter definition. + + leaf passiveIfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of passiveIfName definition. - leaf opaqueAsType { - type cml_data_types:CML_INT32_T; - config false; - } // END of opaqueAsType definition. + leaf-list passiveIfAddr { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of passiveIfAddr definition. - leaf opaqueAsId { - type cml_data_types:CML_UINT32_T; - config false; - } // END of opaqueAsId definition. + } // End of passiveInterface-list - leaf opaqueAsLength { - type cml_data_types:CML_UINT32_T; - config false; - } // END of opaqueAsLength definition. + list default-information { + + description + "Default external route Information"; - leaf opaqueAreaDesc { - type cml_data_types:CML_STRING_T; - config false; - } // END of opaqueAreaDesc definition. + config true; + key "defaultInformationOriginate"; - leaf opaqueAreaIfName { - type cml_data_types:CML_STRING_T; - config false; - } // END of opaqueAreaIfName definition. + + leaf defaultInformationOriginate { + type cml_data_types:CML_BOOL_T; + } // END of defaultInformationOriginate definition. - leaf opaqueAreaAdvRouter { - type cml_data_types:CML_STRING_T; - config false; - } // END of opaqueAreaAdvRouter definition. + container default-information-always { + config true; - leaf opaqueAreaType { - type cml_data_types:CML_INT32_T; - config false; - } // END of opaqueAreaType definition. + description + "Default external route Information Always"; - leaf opaqueAreaId { - type cml_data_types:CML_UINT32_T; - config false; - } // END of opaqueAreaId definition. + leaf metric { + type cml_data_types:CML_UINT32_T { + range "0..16777214"; + } + } // END of metric definition. - leaf opaqueAreaLength { - type cml_data_types:CML_UINT32_T; - config false; - } // END of opaqueAreaLength definition. + leaf metricType { + type cml_data_types:CML_OSPF_METRIC_TYPE_T; + } // END of metricType definition. - leaf opaqueLinkDesc { - type cml_data_types:CML_STRING_T; - config false; - } // END of opaqueLinkDesc definition. + leaf routeMap { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of routeMap definition. - leaf opaqueLinkIfName { - type cml_data_types:CML_STRING_T; - config false; - } // END of opaqueLinkIfName definition. + leaf alwaysSet { + type cml_data_types:CML_BOOL_T; + default true; + } // END of alwaysSet definition. - leaf opaqueLinkAdvRouter { - type cml_data_types:CML_STRING_T; - config false; - } // END of opaqueLinkAdvRouter definition. + } // END of default-information-always-container definition. + } // End of default-information-list - leaf opaqueLinkType { - type cml_data_types:CML_INT32_T; - config false; - } // END of opaqueLinkType definition. + list frr_pref { + if-feature feature_list:HAVE_OSPF_LFA; - leaf opaqueLinkId { - type cml_data_types:CML_UINT32_T; - config false; - } // END of opaqueLinkId definition. + description + "Keeps user preferences, lower index in the array is higher priority"; - leaf opaqueLinkLength { - type cml_data_types:CML_UINT32_T; - config false; - } // END of opaqueLinkLength definition. + config true; + key "frrPrefIndex"; - leaf teUnResBWState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teUnResBWState definition. + + leaf frrPrefIndex { + type cml_data_types:CML_UINT32_T { + range "1..10"; + } + } // END of frrPrefIndex definition. - leaf teUnResBWPrio { - type cml_data_types:CML_STRING_T; - config false; - } // END of teUnResBWPrio definition. + leaf frrPrefVal { + mandatory true; + if-feature feature_list:HAVE_OSPF_LFA; + type cml_data_types:CML_OSPF_FRR_TIE_BREAK_VAL_T; + } // END of frrPrefVal definition. - leaf teResourceColorState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teResourceColorState definition. + } // End of frr_pref-list - leaf teResourceColorVal { - type cml_data_types:CML_INT32_T; - config false; - } // END of teResourceColorVal definition. + list srcDistance { + + description + "srcDistance"; - leaf teRemoteId { - type cml_data_types:CML_STRING_T; - config false; - } // END of teRemoteId definition. + config true; + key "distprefix"; - leaf teLocalId { - type cml_data_types:CML_STRING_T; - config false; - } // END of teLocalId definition. + + leaf distprefix { + type cml_data_types:CML_IPV4_ADDR_PREFIX_T; + } // END of distprefix definition. - leaf teLinkLocalRemoteIdState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLinkLocalRemoteIdState definition. + leaf aclDistance { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + } // END of aclDistance definition. - leaf teLinkSwitchCapState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLinkSwitchCapState definition. + leaf accessListName { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of accessListName definition. - leaf teSwitchCap { - type cml_data_types:CML_STRING_T; - config false; - } // END of teSwitchCap definition. + } // End of srcDistance-list - leaf teEncodeType { - type cml_data_types:CML_STRING_T; - config false; - } // END of teEncodeType definition. + list distributeList { + if-feature feature_list:HAVE_ACL; - leaf teMaxLspBWPriCount { - type cml_data_types:CML_INT32_T; - config false; - } // END of teMaxLspBWPriCount definition. + description + "Distribute list for OSPF Protocol"; - leaf teMaxLspBWPri { - type cml_data_types:CML_STRING_T; - config false; - } // END of teMaxLspBWPri definition. + config true; + key "distAccessListName"; - leaf teMinLspBW { - type cml_data_types:CML_STRING_T; - config false; - } // END of teMinLspBW definition. + + leaf distAccessListName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of distAccessListName definition. - leaf teCapMtu { - type cml_data_types:CML_INT32_T; - config false; - } // END of teCapMtu definition. + leaf ospfDistIn { + type cml_data_types:CML_BOOL_T; + } // END of ospfDistIn definition. - leaf teRiskGrpState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teRiskGrpState definition. - leaf teProtectionState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teProtectionState definition. + list distributeListProtocol { + + description + "Distribute list for OSPF Protocol"; - leaf teProtectionType { - type cml_data_types:CML_STRING_T; - config false; - } // END of teProtectionType definition. + config true; + key "ospfdistProtocol"; - leaf teRiskGrpVal { - type cml_data_types:CML_UINT32_T; - config false; - } // END of teRiskGrpVal definition. + + leaf ospfdistProtocol { + type cml_data_types:CML_OSPF_DIST_ROUTE_SOURCE_TYPE_T; + } // END of ospfdistProtocol definition. - leaf vrfIfName { - type cml_data_types:CML_STRING_T; - config false; - } // END of vrfIfName definition. + } // End of distributeListProtocol-list - leaf vrfIvName { - type cml_data_types:CML_STRING_T; - config false; - } // END of vrfIvName definition. + list distributeListOspf { + + description + "Distribute list for OSPF Protocol"; - leaf igpShortcutDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of igpShortcutDetail definition. + config true; + key "ospfdistOspfProtocol"; - leaf igpShortcutLspDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of igpShortcutLspDetail definition. + + leaf ospfdistOspfProtocol { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + } // END of ospfdistOspfProtocol definition. - leaf lspP2mpId { - type cml_data_types:CML_UINT32_T; - config false; - } // END of lspP2mpId definition. + } // End of distributeListOspf-list + } // End of distributeList-list - leaf lspId { - type cml_data_types:CML_UINT32_T; - config false; - } // END of lspId definition. + list redistributeProc { + + description + "reditribute routes internally to other ospf process id"; - leaf lspIngress { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspIngress definition. + config true; + key "secondaryOspfProcessId"; - leaf lspEgress { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspEgress definition. + + leaf secondaryOspfProcessId { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + } // END of secondaryOspfProcessId definition. - leaf lspExTunnelId { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspExTunnelId definition. + leaf redistOspfMetricType { + type cml_data_types:CML_OSPF_METRIC_TYPE_T; + default "2"; + } // END of redistOspfMetricType definition. - leaf lspType { - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspType definition. + leaf redistOspfMetricValue { + type cml_data_types:CML_INT32_T { + range "0..16777214"; + } + default "0"; + } // END of redistOspfMetricValue definition. - leaf lspClientId { - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspClientId definition. + leaf redistOspfTag { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + } // END of redistOspfTag definition. - leaf lspState { - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspState definition. + leaf ospfrouteMapName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default ""; + } // END of ospfrouteMapName definition. - leaf lspSetupPri { - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspSetupPri definition. + } // End of redistributeProc-list - leaf lspHoldPri { - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspHoldPri definition. + list redistribute { + + description + "redistribute routes to external process (bgp/static etc.)"; - leaf lspBidirectionalStatus { - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspBidirectionalStatus definition. + config true; + key "routeSourceType"; - leaf lspBandwidth { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspBandwidth definition. + + leaf routeSourceType { + type cml_data_types:CML_OSPF_ROUTE_SOURCE_TYPE_T; + } // END of routeSourceType definition. - leaf lspBWStat { - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspBWStat definition. + leaf redistMetricType { + type cml_data_types:CML_OSPF_METRIC_TYPE_T; + } // END of redistMetricType definition. - leaf lspHopLimit { - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspHopLimit definition. + leaf redistMetricValue { + type cml_data_types:CML_INT32_T { + range "0..16777214"; + } + } // END of redistMetricValue definition. - leaf lspAdmControl { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspAdmControl definition. + leaf redistTag { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + } // END of redistTag definition. - leaf lspIncludeMask { - type cml_data_types:CML_UINT32_T; - config false; - } // END of lspIncludeMask definition. + leaf routeMapName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default ""; + } // END of routeMapName definition. - leaf lspExcludeMask { - type cml_data_types:CML_UINT32_T; - config false; - } // END of lspExcludeMask definition. + } // End of redistribute-list - leaf lspAttrRetry { - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspAttrRetry definition. + list neighbor { + + description + "ospf neighbour"; - leaf lspRetryInt { - type cml_data_types:CML_UINT16_T; - config false; - } // END of lspRetryInt definition. + config true; + key "neighborIpAddr"; - leaf lspRetryLimit { - type cml_data_types:CML_UINT16_T; - config false; - } // END of lspRetryLimit definition. + + leaf neighborIpAddr { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of neighborIpAddr definition. - leaf lspTeMetric { - type cml_data_types:CML_UINT32_T; - config false; - } // END of lspTeMetric definition. + leaf neighborCost { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + default "10"; + } // END of neighborCost definition. - leaf lspPathStat { - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspPathStat definition. + leaf ospfNbmaNbrStatus { + type cml_data_types:CML_OSPF_NBMA_ROW_STATUS; + } // END of ospfNbmaNbrStatus definition. - leaf lspPathDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspPathDetail definition. + container nbrOptions { + config true; - leaf lspExcludePathStat { - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspExcludePathStat definition. + description + "nbrOptions"; - leaf lspExcludePathDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspExcludePathDetail definition. + leaf neighborStaticPriority { + type cml_data_types:CML_UINT8_T { + range "0..255"; + } + default "0"; + } // END of neighborStaticPriority definition. - leaf lspSwitchCapStat { - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspSwitchCapStat definition. + leaf neighborPollInterval { + type cml_data_types:CML_INT32_T { + range "1..2147483647"; + } + default "120"; + } // END of neighborPollInterval definition. - leaf lspSwitchCapEncodeType { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspSwitchCapEncodeType definition. + } // END of nbrOptions-container definition. + } // End of neighbor-list - leaf lspSwitchCap { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspSwitchCap definition. + list summary { + + description + "ospf summary"; - leaf lspProtectionRev { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspProtectionRev definition. + config true; + key "summaryAddr"; - leaf lspProtectionFwd { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspProtectionFwd definition. + + leaf summaryAddr { + type cml_data_types:CML_IPV4_PREFIX_T; + } // END of summaryAddr definition. - leaf lspAttrProtectionStat { - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspAttrProtectionStat definition. + leaf summaryAddressNotAdvertise { + type cml_data_types:CML_BOOL_T; + } // END of summaryAddressNotAdvertise definition. - leaf lspRouteStat { - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspRouteStat definition. + leaf addressTag { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + } // END of addressTag definition. - leaf lspRouteDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of lspRouteDetail definition. + } // End of summary-list - leaf lspSrlgDetail { - type cml_data_types:CML_UINT32_T; - config false; - } // END of lspSrlgDetail definition. + list area { + + description + "ospf area"; - leaf lspSrlgStat { - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspSrlgStat definition. + config true; + key "areaId"; - leaf multiAreaIfName { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiAreaIfName definition. + + leaf AreaInterfaceCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of AreaInterfaceCount definition. - leaf multiAreaNbrAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiAreaNbrAddr definition. + leaf AreaNeighborCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of AreaNeighborCount definition. - leaf isMultiIpv4Num { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isMultiIpv4Num definition. + leaf spfLastExexTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of spfLastExexTime definition. - leaf multiIdentAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiIdentAddr definition. + leaf spfExecCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of spfExecCount definition. - leaf multiAreaDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiAreaDetail definition. + leaf areaLsaCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of areaLsaCount definition. - leaf multiMtuVal { - type cml_data_types:CML_INT8_T; - config false; - } // END of multiMtuVal definition. + leaf areaLsaChecksum { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of areaLsaChecksum definition. - leaf multiNetworkMsg { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiNetworkMsg definition. + leaf nssaTranslatorCount { + if-feature feature_list:HAVE_NSSA; + type cml_data_types:CML_INT32_T; + config false; + } // END of nssaTranslatorCount definition. - leaf multiOutputCost { - type cml_data_types:CML_UINT32_T; - config false; - } // END of multiOutputCost definition. + leaf nssaTranslatorState { + if-feature feature_list:HAVE_NSSA; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of nssaTranslatorState definition. - leaf transmitInt { - type cml_data_types:CML_INT32_T; - config false; - } // END of transmitInt definition. + leaf areaId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of areaId definition. - leaf multiTransmitState { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiTransmitState definition. + leaf areaAuthType { + type cml_data_types:CML_OSPF_AREA_AUTHENTICATION_TYPE_T; + } // END of areaAuthType definition. - leaf multiTeMetric { - type cml_data_types:CML_UINT32_T; - config false; - } // END of multiTeMetric definition. + leaf areaShortcutType { + type cml_data_types:CML_OSPF_AREA_SHORTCUT_TYPE_T; + default "default"; + } // END of areaShortcutType definition. - leaf dbFilterGetState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of dbFilterGetState definition. + leaf exportListName { + if-feature feature_list:HAVE_ACL; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + } // END of exportListName definition. - leaf multiHelloInt { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiHelloInt definition. + leaf importListName { + if-feature feature_list:HAVE_ACL; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + } // END of importListName definition. - leaf multiDeadInt { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiDeadInt definition. - leaf multiRetransmitInt { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiRetransmitInt definition. + list filterPrefixList { + if-feature feature_list:HAVE_ACL; - leaf restartMethodTypeState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of restartMethodTypeState definition. + description + "filterPrefixList"; - leaf restartOOBResyncTimeout { - type cml_data_types:CML_UINT32_T; - config false; - } // END of restartOOBResyncTimeout definition. + config true; + key "prefixType"; - leaf multiIfTypeLoopbackState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of multiIfTypeLoopbackState definition. + + leaf prefixName { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of prefixName definition. - leaf ifPassiveState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of ifPassiveState definition. + leaf prefixType { + type cml_data_types:CML_OSPF_AREA_FILTER_LIST_PREFIX_T; + } // END of prefixType definition. - leaf multiHelloTimeDueIn { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiHelloTimeDueIn definition. + } // End of filterPrefixList-list - leaf multiNbrCountAll { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiNbrCountAll definition. + list filterAccessList { + if-feature feature_list:HAVE_ACL; - leaf multiAdjacentNbrCountAll { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiAdjacentNbrCountAll definition. + description + "filterAccessList"; - leaf multiCrypto { - type cml_data_types:CML_UINT32_T; - config false; - } // END of multiCrypto definition. + config true; + key "accessType"; - leaf multiHelloPacketDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiHelloPacketDetail definition. + + leaf accessName { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of accessName definition. - leaf multiLSReqDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiLSReqDetail definition. + leaf accessType { + type cml_data_types:CML_OSPF_AREA_FILTER_LIST_PREFIX_T; + } // END of accessType definition. - leaf multiLSAckDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiLSAckDetail definition. + } // End of filterAccessList-list - leaf teDBRTAddrLsaAge { - type cml_data_types:CML_INT32_T; - config false; - } // END of teDBRTAddrLsaAge definition. + list hostAddr { + + description + "ospf host entries"; - leaf teDBLinkLsaAge { - type cml_data_types:CML_INT32_T; - config false; - } // END of teDBLinkLsaAge definition. + config true; + key "hostIpAddr"; - leaf teOpaqueType { - type cml_data_types:CML_INT32_T; - config false; - } // END of teOpaqueType definition. + + leaf hostIpAddr { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of hostIpAddr definition. - leaf teLsaHeaderTypeMsg { - type cml_data_types:CML_STRING_T; - config false; - } // END of teLsaHeaderTypeMsg definition. + leaf hostEntryCost { + type cml_data_types:CML_INT32_T { + range "0..65535"; + } + default "0"; + } // END of hostEntryCost definition. - leaf teLsaHeaderType { - type cml_data_types:CML_UINT8_T; - config false; - } // END of teLsaHeaderType definition. + } // End of hostAddr-list - leaf teLsaOptions { - type cml_data_types:CML_UINT8_T; - config false; - } // END of teLsaOptions definition. + list network { + + description + "ospf network"; - leaf teInstance { - type cml_data_types:CML_INT32_T; - config false; - } // END of teInstance definition. + config true; + key "networkPrefix"; - leaf teAdvrRouter { - type cml_data_types:CML_STRING_T; - config false; - } // END of teAdvrRouter definition. + + leaf networkPrefix { + type cml_data_types:CML_IPV4_PREFIX_T; + } // END of networkPrefix definition. - leaf teLSSeqNum { - type cml_data_types:CML_INT32_T; - config false; - } // END of teLSSeqNum definition. + leaf networkMask { + type cml_data_types:CML_INT32_T; + } // END of networkMask definition. - leaf teLSChecksum { - type cml_data_types:CML_UINT16_T; - config false; - } // END of teLSChecksum definition. + leaf InstanceId { + mandatory true; + if-feature feature_list:HAVE_OSPF_MULTI_INST; + type cml_data_types:CML_INT16_T { + range "0..255"; + } + } // END of InstanceId definition. - leaf teLength { - type cml_data_types:CML_UINT16_T; - config false; - } // END of teLength definition. - leaf teRouterState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teRouterState definition. + list ospfInterfaceNeighbor { + + description + "ospfInterfaceNeighbor"; - leaf teRouterAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of teRouterAddr definition. + config false; + key "ospfNbrIfname"; - leaf teLinkTypeState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLinkTypeState definition. + + leaf ospfNbrIfname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ospfNbrIfname definition. + + + list ospfNeighborRuntime { + + description + "ospfNeighborRuntime"; + + config false; + key "ospfNbrRouterId"; + + + leaf ospfNbrRouterId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ospfNbrRouterId definition. + + leaf ospfNbrOptions { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ospfNbrOptions definition. + + leaf ospfNeighborState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ospfNeighborState definition. + + leaf ospfNbrEvents { + type cml_data_types:CML_UINT32_T; + } // END of ospfNbrEvents definition. + + leaf ospfNbrAddressLessIndex { + type cml_data_types:CML_UINT32_T; + } // END of ospfNbrAddressLessIndex definition. + + leaf ospfNbrLsRetransQLen { + type cml_data_types:CML_UINT32_T; + } // END of ospfNbrLsRetransQLen definition. + + leaf ospfNbmaNbrPermanence { + type cml_data_types:CML_UINT32_T; + } // END of ospfNbmaNbrPermanence definition. + + leaf ospfNbrHelloSuppressed { + type cml_data_types:CML_UINT32_T; + } // END of ospfNbrHelloSuppressed definition. + + leaf ospfNbrRestartHelperStatus { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_UINT32_T; + } // END of ospfNbrRestartHelperStatus definition. + + leaf ospfNbrRestartHelperAge { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_UINT32_T; + } // END of ospfNbrRestartHelperAge definition. + + leaf ospfNbrRestartHelperExitReason { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_UINT32_T; + } // END of ospfNbrRestartHelperExitReason definition. + + leaf ospfLsDbCount { + type cml_data_types:CML_UINT32_T; + } // END of ospfLsDbCount definition. + + leaf ospfLsRequestCount { + type cml_data_types:CML_UINT32_T; + } // END of ospfLsRequestCount definition. + + leaf ospfLsRetransmitCount { + type cml_data_types:CML_UINT32_T; + } // END of ospfLsRetransmitCount definition. + + leaf llsOptions { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of llsOptions definition. + + leaf llsExtendedOption { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of llsExtendedOption definition. + + leaf lastOobResyncTime { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of lastOobResyncTime definition. + + leaf oobResyncTimeout { + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of oobResyncTimeout definition. + + leaf deadTimerDueTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of deadTimerDueTime definition. + + leaf ospfPollTimerDueIn { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ospfPollTimerDueIn definition. + + leaf ospfNeighborUpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ospfNeighborUpTime definition. + + leaf ospfCryptSeqNum { + if-feature feature_list:HAVE_MD5; + type cml_data_types:CML_UINT32_T; + } // END of ospfCryptSeqNum definition. + + leaf ospfDesignatedRouter { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ospfDesignatedRouter definition. + + leaf ospfBackDesignatedRouter { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ospfBackDesignatedRouter definition. + + } // End of ospfNeighborRuntime-list + } // End of ospfInterfaceNeighbor-list + } // End of network-list + + list virtLink { + + description + "ospf virtual link"; - leaf teLinkType { - type cml_data_types:CML_STRING_T; - config false; - } // END of teLinkType definition. + config true; + key "peerId"; - leaf teLinkIdState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLinkIdState definition. + + leaf peerId { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of peerId definition. - leaf teLinkId { - type cml_data_types:CML_STRING_T; - config false; - } // END of teLinkId definition. + leaf vlinkAuthType { + type cml_data_types:CML_OSPF_VLINK_AUTH_TYPE_T; + default "authentication-null"; + } // END of vlinkAuthType definition. - leaf teLocalInterfaceState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLocalInterfaceState definition. + leaf vlinkMsgDigestKeyId { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + } // END of vlinkMsgDigestKeyId definition. - leaf teLocalInterfaceAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of teLocalInterfaceAddr definition. + leaf vlinkMsgDigestKey { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default ""; + } // END of vlinkMsgDigestKey definition. - leaf teRemoteInterfaceState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teRemoteInterfaceState definition. - - leaf teRemoteInterfaceAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of teRemoteInterfaceAddr definition. - - leaf teLinkMetricState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLinkMetricState definition. - - leaf teLinkMetric { - type cml_data_types:CML_UINT32_T; - config false; - } // END of teLinkMetric definition. - - leaf teMaxResBWState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teMaxResBWState definition. - - leaf teMaxResBW { - type cml_data_types:CML_STRING_T; - config false; - } // END of teMaxResBW definition. - - leaf teMaxBWState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teMaxBWState definition. - - leaf teMaxBW { - type cml_data_types:CML_STRING_T; - config false; - } // END of teMaxBW definition. - - leaf teLinkAttrBc { - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLinkAttrBc definition. + leaf vlinkAuthKey { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default ""; + } // END of vlinkAuthKey definition. - leaf teBWConsModel { - type cml_data_types:CML_UINT8_T; - config false; - } // END of teBWConsModel definition. + leaf vlinkRetransIntvl { + type cml_data_types:CML_INT32_T { + range "1..1800"; + } + default "5"; + } // END of vlinkRetransIntvl definition. - leaf teBWCons { - type cml_data_types:CML_STRING_T; - config false; - } // END of teBWCons definition. + leaf vlinkTransmitDelay { + type cml_data_types:CML_INT32_T { + range "1..3600"; + } + default "1"; + } // END of vlinkTransmitDelay definition. - leaf teBWCtr { - type cml_data_types:CML_INT32_T; - config false; - } // END of teBWCtr definition. + leaf vlinkHelloInterval { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + default "10"; + } // END of vlinkHelloInterval definition. - leaf ibufSize { - type cml_data_types:CML_UINT32_T; - config false; - } // END of ibufSize definition. + leaf vlinkDeadInterval { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + default "40"; + } // END of vlinkDeadInterval definition. - leaf lsaunuseCount { - type cml_data_types:CML_UINT16_T; - config false; - } // END of lsaunuseCount definition. + leaf vlinkWaitInterval { + type cml_data_types:CML_INT32_T; + config false; + description "wait timer interval"; + } // END of vlinkWaitInterval definition. - leaf lsaunuseMax { - type cml_data_types:CML_UINT16_T; - config false; - } // END of lsaunuseMax definition. + leaf vlinkName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Virtual Link Name"; + } // END of vlinkName definition. - leaf opunuseMax { - type cml_data_types:CML_UINT16_T; - config false; - } // END of opunuseMax definition. + leaf vlinkStatus { + type cml_data_types:CML_OSPF_VLINK_STATUS_T; + config false; + description "Virtual Link Status"; + } // END of vlinkStatus definition. - leaf opunuseCount { - type cml_data_types:CML_UINT16_T; - config false; - } // END of opunuseCount definition. + leaf vlinkInterface { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Virtual Link Interface"; + } // END of vlinkInterface definition. - leaf obufSize { - type cml_data_types:CML_UINT32_T; - config false; - } // END of obufSize definition. + leaf vlinkLocalAddress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Virtual Link Local address"; + } // END of vlinkLocalAddress definition. - leaf lbufSize { - type cml_data_types:CML_UINT32_T; - config false; - } // END of lbufSize definition. + leaf vlinkRemoteAddress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Virtual Link Remote address"; + } // END of vlinkRemoteAddress definition. - leaf abrDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of abrDetail definition. + leaf vlinkHelloDue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Virtual Link Hello due"; + } // END of vlinkHelloDue definition. - leaf asbrDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of asbrDetail definition. + leaf vlinkInterfaceState { + type cml_data_types:CML_OSPF_VLINK_INTERFACE_STATE_T; + config false; + description "Virtual Link Interface State"; + } // END of vlinkInterfaceState definition. - leaf isOspfPathTypeTwo { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isOspfPathTypeTwo definition. + leaf vlinkAdjState { + type cml_data_types:CML_OSPF_VLINK_ADJ_STATE_T; + config false; + description "Virtual Link Adjacency state"; + } // END of vlinkAdjState definition. - leaf isOspfPathDiscard { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isOspfPathDiscard definition. + container vlinkbfd { + config true; - leaf isOspfNextHopCon { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isOspfNextHopCon definition. + description + "Bidirectional Forwarding Detection"; - leaf isOspfPathCodeArea { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isOspfPathCodeArea definition. + leaf vlinkFallOverBfd { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_BOOL_T; + } // END of vlinkFallOverBfd definition. - leaf ospfPathAreaDetails { - type cml_data_types:CML_STRING_T; - config false; - } // END of ospfPathAreaDetails definition. + } // END of vlinkbfd-container definition. + } // End of virtLink-list - leaf ospfPathIfName { - type cml_data_types:CML_STRING_T; - config false; - } // END of ospfPathIfName definition. + list range { + + description + "ospf range"; - leaf ospfPathNbrId { - type cml_data_types:CML_STRING_T; - config false; - } // END of ospfPathNbrId definition. + config true; + key "rangeId"; - leaf ospfPathCodeStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of ospfPathCodeStr definition. + + leaf rangeId { + type cml_data_types:CML_IPV4_PREFIX_T; + } // END of rangeId definition. - leaf ospfPathCodeNStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of ospfPathCodeNStr definition. + leaf rangeAdvertise { + type cml_data_types:CML_OSPF_AREA_RANGE_ADVERTISE_T; + } // END of rangeAdvertise definition. - leaf ospfPathCodePrefix { - type cml_data_types:CML_STRING_T; - config false; - } // END of ospfPathCodePrefix definition. + leaf substituteAddr { + type cml_data_types:CML_IPV4_PREFIX_T; + } // END of substituteAddr definition. - leaf ospfPathCodeCostPrefix { - type cml_data_types:CML_STRING_T; - config false; - } // END of ospfPathCodeCostPrefix definition. + leaf subAddrPrefix { + type cml_data_types:CML_UINT8_T; + } // END of subAddrPrefix definition. - leaf areaCount { - type cml_data_types:CML_INT8_T; - config false; - } // END of areaCount definition. + } // End of range-list + container stubNssa { + config true; - leaf vrfNameStat { - type cml_data_types:CML_STRING_T; - config false; - } // END of vrfNameStat definition. + description + "ospf area stub/nssa configuration"; - leaf lttMaxDelayMic { - type cml_data_types:CML_STRING_T; - config false; - } // END of lttMaxDelayMic definition. + leaf isStubArea { + type cml_data_types:CML_BOOL_T; + } // END of isStubArea definition. - leaf lttHoldIntMic { - type cml_data_types:CML_STRING_T; - config false; - } // END of lttHoldIntMic definition. + leaf isNssaArea { + type cml_data_types:CML_BOOL_T; + } // END of isNssaArea definition. - leaf lttStartDelayMic { - type cml_data_types:CML_STRING_T; - config false; - } // END of lttStartDelayMic definition. + leaf stubAreaNoSummary { + type cml_data_types:CML_BOOL_T; + } // END of stubAreaNoSummary definition. - leaf lttArivalDelayMic { - type cml_data_types:CML_STRING_T; - config false; - } // END of lttArivalDelayMic definition. + leaf nssaStabilityInterval { + type cml_data_types:CML_INT32_T { + range "0..2147483647"; + } + default "40"; + } // END of nssaStabilityInterval definition. - leaf abrType { - type cml_data_types:CML_STRING_T; - config false; - } // END of abrType definition. + leaf nssaTranslatorRole { + type cml_data_types:CML_OSPF_TRANSLATOR_ROLE_T; + default "candidate"; + } // END of nssaTranslatorRole definition. - leaf isAbrType { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isAbrType definition. + leaf nssaDefaultOriginMetric { + type cml_data_types:CML_INT32_T { + range "0..16777214"; + } + default "0"; + } // END of nssaDefaultOriginMetric definition. - leaf lttArivalDelay { - type cml_data_types:CML_STRING_T; - config false; - } // END of lttArivalDelay definition. + leaf nssaDefaultOriginMetricType { + type cml_data_types:CML_INT32_T { + range "1..2"; + } + default "2"; + } // END of nssaDefaultOriginMetricType definition. - leaf lttMaxDelay { - type cml_data_types:CML_STRING_T; - config false; - } // END of lttMaxDelay definition. + leaf isNssaNoDist { + type cml_data_types:CML_BOOL_T; + } // END of isNssaNoDist definition. - leaf lttHoldInt { - type cml_data_types:CML_STRING_T; - config false; - } // END of lttHoldInt definition. + leaf isNssaDefaultOriginate { + type cml_data_types:CML_BOOL_T; + } // END of isNssaDefaultOriginate definition. - leaf lttStartDelay { - type cml_data_types:CML_STRING_T; - config false; - } // END of lttStartDelay definition. + leaf nssaAreaNoSummary { + type cml_data_types:CML_BOOL_T; + } // END of nssaAreaNoSummary definition. - leaf maxSpfDelay { - type cml_data_types:CML_STRING_T; - config false; - } // END of maxSpfDelay definition. + leaf areaCost { + type cml_data_types:CML_UINT32_T { + range "0..16777215"; + } + default "1"; + } // END of areaCost definition. - leaf minSpfDelay { - type cml_data_types:CML_STRING_T; - config false; - } // END of minSpfDelay definition. + leaf nssarouteMap { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nssarouteMap definition. - leaf processUpTime { - type cml_data_types:CML_STRING_T; - config false; - } // END of processUpTime definition. + } // END of stubNssa-container definition. + } // End of area-list + container distance { + config true; - leaf restartMethodType { - type cml_data_types:CML_STRING_T; - config false; - } // END of restartMethodType definition. + description + "Define an administrative distance"; - leaf dbOverFlow { - type cml_data_types:CML_STRING_T; - config false; - } // END of dbOverFlow definition. + leaf distanceIntra { + type cml_data_types:CML_UINT32_T { + range "1..255"; + } + } // END of distanceIntra definition. - leaf tOverFlowExit { - type cml_data_types:CML_STRING_T; - config false; - } // END of tOverFlowExit definition. + leaf distanceInter { + type cml_data_types:CML_UINT32_T { + range "1..255"; + } + } // END of distanceInter definition. - leaf ddReceived { - type cml_data_types:CML_UINT16_T; - config false; - } // END of ddReceived definition. + leaf distanceExternal { + type cml_data_types:CML_UINT32_T { + range "1..255"; + } + } // END of distanceExternal definition. - leaf outDdSent { - type cml_data_types:CML_UINT16_T; - config false; - } // END of outDdSent definition. + } // END of distance-container definition. + container domain-id { + config true; - leaf externalLsaCount { - type cml_data_types:CML_UINT32_T; - config false; - } // END of externalLsaCount definition. + description + "domainCMLSEPid"; - leaf externalLsaChecksum { - type cml_data_types:CML_UINT32_T; - config false; - } // END of externalLsaChecksum definition. + leaf domainPrimaryAddr { + if-feature feature_list:HAVE_VRF_OSPF; + type cml_data_types:CML_IPV4_ADDR_T; + } // END of domainPrimaryAddr definition. - leaf nonDefaultExternalLsa { - type cml_data_types:CML_UINT32_T; - config false; - } // END of nonDefaultExternalLsa definition. + leaf domainNull { + if-feature feature_list:HAVE_VRF_OSPF; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of domainNull definition. - leaf isLsdbLimitR { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isLsdbLimitR definition. + leaf domainType { + if-feature feature_list:HAVE_VRF_OSPF; + type cml_data_types:CML_OSPF_DOMAIN_TYPE_T; + } // END of domainType definition. - leaf isLsdbExtLimit { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isLsdbExtLimit definition. + leaf domainHexValue { + if-feature feature_list:HAVE_VRF_OSPF; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of domainHexValue definition. - leaf isVrfEnabled { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isVrfEnabled definition. + leaf domainTypeSecondary { + if-feature feature_list:HAVE_VRF_OSPF; + type cml_data_types:CML_BOOL_T; + } // END of domainTypeSecondary definition. - leaf asbrType { - type cml_data_types:CML_BOOL_T; - config false; - } // END of asbrType definition. - leaf lsdbExtLimit { - type cml_data_types:CML_STRING_T; - config false; - } // END of lsdbExtLimit definition. + list domainIdSecondary { + if-feature feature_list:HAVE_VRF_OSPF; - leaf restartType { - type cml_data_types:CML_STRING_T; - config false; - } // END of restartType definition. + description + "domainIdSecondary"; - leaf lsdbLimitR { - type cml_data_types:CML_STRING_T; - config false; - } // END of lsdbLimitR definition. + config true; + key "domainSecondaryAddr"; - leaf lsaOriginateCount { - type cml_data_types:CML_STRING_T; - config false; - } // END of lsaOriginateCount definition. + + leaf domainSecondaryAddr { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of domainSecondaryAddr definition. - leaf refreshInterval { - type cml_data_types:CML_INT16_T; - config false; - } // END of refreshInterval definition. + } // End of domainIdSecondary-list + } // END of domain-id-container definition. + uses TrafficStats; + } // End of ospf-list + } // END of ospf-grouping definition. - leaf rxLsaCount { - type cml_data_types:CML_UINT32_T; - config false; - } // END of rxLsaCount definition. - leaf distanceAccessListName { - type cml_data_types:CML_STRING_T; - config true; - description "distance Access List Name"; - } // END of distanceAccessListName definition. + grouping ospfInterface-grouping { + list ospfInterface { + + description + "OSPF interface related operations"; - leaf sourceIpAddr { - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - } // END of sourceIpAddr definition. + config true; + key "ifName"; - leaf isAllDistance { - type cml_data_types:CML_INT32_T { - range "1..255"; + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; } - config true; - } // END of isAllDistance definition. - - leaf routerId { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of routerId definition. - - leaf ospfRouterId { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of ospfRouterId definition. - - leaf isLogAdjSet { - type cml_data_types:CML_BOOL_T; - config true; - description "log-adjacency-changes"; - } // END of isLogAdjSet definition. - - leaf isFrrSet { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isFrrSet definition. - - leaf isDna { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isDna definition. - - leaf cspfProctectionType { - type cml_data_types:CML_BOOL_T; - config true; - } // END of cspfProctectionType definition. - - leaf isBfdIfSet { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isBfdIfSet definition. - - leaf mlinkNbr { - type cml_data_types:CML_STRING_T; - config true; - } // END of mlinkNbr definition. - - - list passiveIf { - - description - "passiveIf"; - - config true; - key "passiveIfName"; - - - leaf passiveIfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of passiveIfName definition. - - leaf passiveIfIpAddr { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; - } // END of passiveIfIpAddr definition. - - } // End of passiveIf-list - - list noPassiveIfRun { - - description - "noPassiveIfRun"; - - config false; - key "noPassiveIfName"; - - - leaf noPassiveIfName { - type cml_data_types:CML_STRING_T; - config false; - } // END of noPassiveIfName definition. - - leaf noPassiveIfIpAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of noPassiveIfIpAddr definition. - - } // End of noPassiveIfRun-list - - list ospfDefaultInformation { - - description - "ospfDefaultInformation"; - - config true; - key "defaultOrigin"; - - - leaf defaultOrigin { - type cml_data_types:CML_BOOL_T; - config true; - description "default-information originate"; - } // END of defaultOrigin definition. - - leaf defaultAlways { - type cml_data_types:CML_BOOL_T; - config true; - } // END of defaultAlways definition. - - leaf defaultMetric { - type cml_data_types:CML_INT32_T { - range "0..16777214"; - } - default "0"; - config true; - } // END of defaultMetric definition. - - leaf defaultMetricType { - type cml_data_types:CML_OSPF_METRIC_TYPE_T; - default "2"; - config true; - } // END of defaultMetricType definition. - - leaf redistRouteMapName { - type cml_data_types:CML_STRING_T; - config true; - } // END of redistRouteMapName definition. - - } // End of ospfDefaultInformation-list - - list frrTieBreak { - - description - "frrTieBreak"; - - config true; - key "frrTieBreakVal"; - - - leaf frrTieBreakVal { - type cml_data_types:CML_OSPF_FRR_TIE_BREAK_VAL_T; - config true; - } // END of frrTieBreakVal definition. - - leaf frrTieBreakIndex { - mandatory true; - type cml_data_types:CML_UINT32_T { - range "1..10"; - } - config true; - } // END of frrTieBreakIndex definition. - - leaf isFrrPrioSet { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of isFrrPrioSet definition. - - } // End of frrTieBreak-list - - list summaryAddress { - - description - "summaryAddress"; - - config true; - key "summaryAddr"; - - - leaf summaryAddr { - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - } // END of summaryAddr definition. - - leaf summaryAddrMask { - mandatory true; - type cml_data_types:CML_INT32_T; - config true; - } // END of summaryAddrMask definition. - - leaf summaryAddressNotAdvertise { - type cml_data_types:CML_BOOL_T; - config true; - } // END of summaryAddressNotAdvertise definition. - - leaf addressTag { - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - config true; - description "summary-address with tag Value"; - } // END of addressTag definition. - - } // End of summaryAddress-list - - list hostAddr { - - description - "hostAddr"; - - config true; - key "hostIpAddr"; - - - leaf hostIpAddr { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of hostIpAddr definition. - - - list hostArea { - - description - "hostArea"; - - config true; - key "hostAreaId"; - - - leaf hostAreaId { - type cml_data_types:CML_STRING_T; - config true; - description "host Area"; - } // END of hostAreaId definition. - - leaf hostEntryCost { - type cml_data_types:CML_INT32_T { - range "0..65535"; - } - config true; - description "host Area Cost"; - } // END of hostEntryCost definition. - - } // End of hostArea-list - } // End of hostAddr-list - - list area { - - description - "area"; - - config true; - key "areaId"; - - - leaf areaId { - type cml_data_types:CML_STRING_T; - config true; - } // END of areaId definition. - - leaf areaAuthType { - type cml_data_types:CML_BOOL_T; - config true; - } // END of areaAuthType definition. - - leaf areaAuthMsgType { - type cml_data_types:CML_BOOL_T; - config true; - } // END of areaAuthMsgType definition. - - leaf exportListName { - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - } // END of exportListName definition. - - leaf importListName { - type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - } // END of importListName definition. - - leaf areaCost { - type cml_data_types:CML_UINT32_T { - range "0..16777215"; - } - default "1"; - config true; - } // END of areaCost definition. - - leaf areaShortcutType { - type cml_data_types:CML_OSPF_AREA_SHORTCUT_TYPE_T; - default "default"; - config true; - description "area shortcut"; - } // END of areaShortcutType definition. - - leaf addrAggrType { - type cml_data_types:CML_INT32_T; - config true; - } // END of addrAggrType definition. - - leaf mask { - type cml_data_types:CML_STRING_T; - config true; - } // END of mask definition. - - leaf areaAggrStatus { - type cml_data_types:CML_INT32_T; - config true; - } // END of areaAggrStatus definition. - - leaf areaAggrEffect { - type cml_data_types:CML_INT32_T; - config true; - } // END of areaAggrEffect definition. - - leaf routeTag { - type cml_data_types:CML_UINT32_T; - config true; - } // END of routeTag definition. - - leaf isAreaBackbone { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isAreaBackbone definition. - - leaf isAreaActive { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isAreaActive definition. - - leaf areaIdStr { - type cml_data_types:CML_STRING_T; - config false; - } // END of areaIdStr definition. - - leaf areaIfCount { - type cml_data_types:CML_UINT32_T; - config false; - } // END of areaIfCount definition. - - leaf activeIfCount { - type cml_data_types:CML_UINT16_T; - config false; - } // END of activeIfCount definition. - - leaf fullVirtNbrCount { - type cml_data_types:CML_UINT16_T; - config false; - } // END of fullVirtNbrCount definition. - - leaf checkSumLsa { - type cml_data_types:CML_UINT32_T; - config false; - } // END of checkSumLsa definition. - - leaf countLsa { - type cml_data_types:CML_UINT32_T; - config false; - } // END of countLsa definition. - - leaf spfLastExec { - type cml_data_types:CML_STRING_T; - config false; - } // END of spfLastExec definition. - - leaf nssaTransState { - type cml_data_types:CML_STRING_T; - config false; - } // END of nssaTransState definition. - - leaf nssaTransEventCount { - type cml_data_types:CML_INT8_T; - config false; - } // END of nssaTransEventCount definition. - - leaf fullAdjacentNbr { - type cml_data_types:CML_UINT16_T; - config false; - } // END of fullAdjacentNbr definition. - - leaf spfExecutionCount { - type cml_data_types:CML_UINT32_T; - config false; - } // END of spfExecutionCount definition. - - - list filterPrefixList { - - description - "filterPrefixList"; - - config true; - key "prefixName"; - - - leaf prefixName { - type cml_data_types:CML_STRING_T; - config true; - } // END of prefixName definition. - - - list filterPrefixType { - - description - "filterPrefixType"; - - config true; - key "prefixType"; - - - leaf prefixType { - type cml_data_types:CML_OSPF_AREA_FILTER_LIST_PREFIX_T; - config true; - description "area filter-list"; - } // END of prefixType definition. - - } // End of filterPrefixType-list - } // End of filterPrefixList-list - - list filterAccessList { - - description - "filterAccessList"; - - config true; - key "accessName"; - - - leaf accessName { - type cml_data_types:CML_STRING_T; - config true; - } // END of accessName definition. - - - list filterAccessType { - - description - "filterAccessType"; - - config true; - key "accessType"; - - - leaf accessType { - type cml_data_types:CML_OSPF_AREA_FILTER_LIST_PREFIX_T; - config true; - } // END of accessType definition. - - } // End of filterAccessType-list - } // End of filterAccessList-list - - list rangeArea { - - description - "rangeArea"; - - config true; - key "ospfAreaRange"; - - - leaf ospfAreaRange { - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - description "ospf Area Range"; - } // END of ospfAreaRange definition. - - leaf isAreaRangeAdvertise { - type cml_data_types:CML_BOOL_T; - config true; - description "area range as advertise"; - } // END of isAreaRangeAdvertise definition. - - leaf isAreaRangeNotAdvertise { - type cml_data_types:CML_BOOL_T; - config true; - description "area range as not-advertise"; - } // END of isAreaRangeNotAdvertise definition. - - leaf substituteAddr { - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - description "area range with substitute"; - } // END of substituteAddr definition. - - } // End of rangeArea-list - - list rangeMaskArea { - - description - "rangeMaskArea"; - - config true; - key "areaRange"; - - - leaf areaRange { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of areaRange definition. - - - list rangeMaskLenArea { - - description - "rangeMaskLenArea"; - - config true; - key "areaRangeMask"; - - - leaf areaRangeMask { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - description "area range with mask"; - } // END of areaRangeMask definition. - - leaf rangeMaskAdvertise { - type cml_data_types:CML_BOOL_T; - config true; - description "area range with mask as advertise"; - } // END of rangeMaskAdvertise definition. - - leaf rangeMaskNotAdvertise { - type cml_data_types:CML_BOOL_T; - config true; - description "area range with mask as not-advertise"; - } // END of rangeMaskNotAdvertise definition. - - } // End of rangeMaskLenArea-list - } // End of rangeMaskArea-list - - list nssaArea { - - description - "nssaArea"; - - config true; - key "isNssaArea"; - - - leaf isNssaArea { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isNssaArea definition. - - leaf nssaStabilityInterval { - type cml_data_types:CML_INT32_T { - range "0..2147483647"; - } - default "40"; - config true; - } // END of nssaStabilityInterval definition. - - leaf nssaTranslatorRole { - type cml_data_types:CML_OSPF_TRANSLATOR_ROLE_T; - config true; - } // END of nssaTranslatorRole definition. - - leaf nssaDefaultOriginMetric { - type cml_data_types:CML_INT32_T { - range "1..16777214"; - } - default "1"; - config true; - } // END of nssaDefaultOriginMetric definition. - - leaf nssaDefaultOriginMetricType { - type cml_data_types:CML_INT32_T { - range "1..2"; - } - config true; - } // END of nssaDefaultOriginMetricType definition. - - leaf isNssaNoDist { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isNssaNoDist definition. - - leaf isNssaDefaultOriginate { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isNssaDefaultOriginate definition. - - leaf nssaAreaNoSummary { - type cml_data_types:CML_BOOL_T; - config true; - } // END of nssaAreaNoSummary definition. - - leaf nssaRouteMapName { - type cml_data_types:CML_STRING_T; - config true; - } // END of nssaRouteMapName definition. - - container nssaAreaTranslator { - config true; - - description - "nssaAreaTranslator"; - - leaf nssaAreaTranslatorRole { - type cml_data_types:CML_OSPF_NSSA_TRANSLATOR_ROLE_T; - config true; - description "area nssa"; - } // END of nssaAreaTranslatorRole definition. - - } // END of nssaAreaTranslator-container definition. - } // End of nssaArea-list - - list stubArea { - - description - "stubArea"; - - config true; - key "isStubArea"; - - - leaf isStubArea { - type cml_data_types:CML_BOOL_T; - config true; - description "area stub"; - } // END of isStubArea definition. - - leaf stubAreaNoSummary { - type cml_data_types:CML_BOOL_T; - config true; - description "area stub no-summary"; - } // END of stubAreaNoSummary definition. - - } // End of stubArea-list - - list vlinkArea { - - description - "vlinkArea"; - - config true; - key "peerId"; - - - leaf peerId { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - description "area virtual-link"; - } // END of peerId definition. - - leaf virtMsgDigestKeyId { - type cml_data_types:CML_UINT8_T { - range "0..255"; - } - config true; - } // END of virtMsgDigestKeyId definition. - - leaf virtMsgDigestKeyStr { - type cml_data_types:CML_STRING_T; - config true; - } // END of virtMsgDigestKeyStr definition. - - leaf ifVirtAuthKey { - type cml_data_types:CML_STRING_T; - config true; - } // END of ifVirtAuthKey definition. - - leaf virtIfRetransIntvl { - type cml_data_types:CML_INT32_T { - range "1..3600"; - } - default "5"; - config true; - } // END of virtIfRetransIntvl definition. - - leaf ifVirtTransmitDelay { - type cml_data_types:CML_INT32_T { - range "1..3600"; - } - default "1"; - config true; - } // END of ifVirtTransmitDelay definition. - - leaf ifVirtHelloInterval { - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - default "10"; - config true; - } // END of ifVirtHelloInterval definition. - - leaf ifVirtDeadInterval { - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - default "40"; - config true; - } // END of ifVirtDeadInterval definition. - - leaf ifVirtAuthType { - type cml_data_types:CML_OSPF_VIRT_AUTH_TYPE_T; - config true; - } // END of ifVirtAuthType definition. - - leaf vlinkName { - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkName definition. - - leaf vlinkStat { - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkStat definition. - - leaf vlinkInterface { - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkInterface definition. - - leaf vlinkIdentAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkIdentAddr definition. - - leaf vlinkRemoteAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkRemoteAddr definition. - - leaf vlinkTransDelayState { - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkTransDelayState definition. - - leaf vlinkHelloTimeDump { - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkHelloTimeDump definition. - - leaf vlinkNbrState { - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkNbrState definition. - - leaf isVlinkBfdSet { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isVlinkBfdSet definition. - - } // End of vlinkArea-list - } // End of area-list - - list network { - - description - "network"; - - config true; - key "ospfNetAddr"; - - - leaf ospfNetAddr { - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - } // END of ospfNetAddr definition. - - - list networkArea { - - description - "networkArea"; - - config true; - key "networkAreaId"; - - - leaf networkAreaId { - type cml_data_types:CML_STRING_T; - config true; - description "network area"; - } // END of networkAreaId definition. - - leaf ospfInterfaceInstanceId { - mandatory true; - type cml_data_types:CML_INT16_T { - range "0..255"; - } - config true; - } // END of ospfInterfaceInstanceId definition. - - } // End of networkArea-list - } // End of network-list - - list networkMask { - - description - "networkMask"; - - config true; - key "ospfNetAddrMask"; - - - leaf ospfNetAddrMask { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - description "Network Area with Mask"; - } // END of ospfNetAddrMask definition. - - leaf netMask { - mandatory true; - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of netMask definition. - - leaf networkAreaIdMask { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; - } // END of networkAreaIdMask definition. - - leaf ospfInterfaceInstanceIdMask { - mandatory true; - type cml_data_types:CML_INT16_T { - range "0..255"; - } - config true; - } // END of ospfInterfaceInstanceIdMask definition. - - } // End of networkMask-list - - list neighborRun { - - description - "neighborRun"; - - config false; - key "neighborViaInterfaceName"; - - - leaf neighborViaInterfaceName { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborViaInterfaceName definition. - - leaf neighborDownState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of neighborDownState definition. - - leaf neighborPri { - type cml_data_types:CML_UINT8_T; - config false; - } // END of neighborPri definition. - - leaf neighborInstanceId { - type cml_data_types:CML_UINT8_T; - config false; - } // END of neighborInstanceId definition. - - leaf neighborState { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborState definition. - - leaf neighborInterfaceAddress { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborInterfaceAddress definition. - - leaf neighborViaInterfaceNamePvt { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborViaInterfaceNamePvt definition. - - leaf neighborId { - type cml_data_types:CML_IPV4_ADDR_T; - config false; - } // END of neighborId definition. - - leaf neighborInterfaceInputAddress { - type cml_data_types:CML_IPV4_ADDR_T; - config false; - } // END of neighborInterfaceInputAddress definition. - - leaf neighborDeadTimeDueIn { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborDeadTimeDueIn definition. - - leaf neighborRetransmitCount { - type cml_data_types:CML_UINT32_T; - config false; - } // END of neighborRetransmitCount definition. - - leaf neighborRequestCount { - type cml_data_types:CML_UINT32_T; - config false; - } // END of neighborRequestCount definition. - - leaf neighborDbSummaryCount { - type cml_data_types:CML_INT8_T; - config false; - } // END of neighborDbSummaryCount definition. - - leaf neighborArea { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborArea definition. - - leaf neighborChangeState { - type cml_data_types:CML_UINT32_T; - config false; - } // END of neighborChangeState definition. - - leaf neighborDRouterId { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborDRouterId definition. - - leaf neighborBDRouterId { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborBDRouterId definition. - - leaf neighborOptions { - type cml_data_types:CML_UINT32_T; - config false; - } // END of neighborOptions definition. - - leaf neighborOptionDump { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborOptionDump definition. - - leaf neighborExtendedOptions { - type cml_data_types:CML_UINT32_T; - config false; - } // END of neighborExtendedOptions definition. - - leaf neighborExtendedOptionDump { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborExtendedOptionDump definition. - - leaf restartState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of restartState definition. - - leaf neighborUptime { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborUptime definition. - - leaf neighborOOBResyncState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of neighborOOBResyncState definition. - - leaf neighborLastOOBState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of neighborLastOOBState definition. - - leaf neighborTResyncState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of neighborTResyncState definition. - - leaf neighborTResync { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborTResync definition. - - leaf neighborOOBUptime { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborOOBUptime definition. - - leaf neighborPollDueIn { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborPollDueIn definition. - - leaf cryptSeqNum { - type cml_data_types:CML_UINT32_T; - config false; - } // END of cryptSeqNum definition. - - leaf neighborThreadInactivityTimer { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborThreadInactivityTimer definition. - - leaf neighborThreadDBDescriptionRetransmition { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborThreadDBDescriptionRetransmition definition. - - leaf neighborLsRequestRetransmition { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborLsRequestRetransmition definition. - - leaf neighborLsUpdateRetransmition { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborLsUpdateRetransmition definition. - - leaf neighborThreadPolltimer { - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborThreadPolltimer definition. - - } // End of neighborRun-list - - list neighbor { - - description - "neighbor"; - - config true; - key "neighborIpAddr"; - - - leaf neighborIpAddr { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - description "Neighbor Addr"; - } // END of neighborIpAddr definition. - - leaf neighborStaticPriority { - type cml_data_types:CML_UINT8_T { - range "0..255"; - } - default "0"; - config true; - } // END of neighborStaticPriority definition. - - leaf nbrPollInterval { - type cml_data_types:CML_INT32_T { - range "1..2147483647"; - } - default "120"; - config true; - } // END of nbrPollInterval definition. - - leaf neighborCost { - type cml_data_types:CML_UINT16_T { - range "1..65535"; - } - default "10"; - config true; - description "neighbor area with Cost,poll-interval"; - } // END of neighborCost definition. - - } // End of neighbor-list - - list redistributeProc { - - description - "redistributeProc"; - - config true; - key "secondaryOspfProcessId"; - - - leaf secondaryOspfProcessId { - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - config true; - } // END of secondaryOspfProcessId definition. - - leaf redistMetricType { - type cml_data_types:CML_OSPF_METRIC_TYPE_T; - default "2"; - config true; - } // END of redistMetricType definition. - - leaf redistMetricValue { - type cml_data_types:CML_INT32_T { - range "0..16777214"; - } - default "0"; - config true; - } // END of redistMetricValue definition. - - leaf redistTag { - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - default "0"; - config true; - } // END of redistTag definition. - - leaf routeMapName { - type cml_data_types:CML_STRING_T; - config true; - } // END of routeMapName definition. - - } // End of redistributeProc-list - - list redistribute { - - description - "redistribute"; - - config true; - key "routeSourceType"; - - - leaf routeSourceType { - type cml_data_types:CML_OSPF_ROUTE_SOURCE_TYPE_T; - config true; - description "Ospf redistribute"; - } // END of routeSourceType definition. - - leaf redistMetricType { - type cml_data_types:CML_OSPF_METRIC_TYPE_T; - default "2"; - config true; - } // END of redistMetricType definition. - - leaf redistMetricValue { - type cml_data_types:CML_INT32_T { - range "0..16777214"; - } - default "0"; - config true; - } // END of redistMetricValue definition. - - leaf redistTag { - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - default "0"; - config true; - } // END of redistTag definition. - - leaf routeMapName { - type cml_data_types:CML_STRING_T; - config true; - description "Ospf redistribute with metric-type,route-map"; - } // END of routeMapName definition. - - } // End of redistribute-list - container distanceTypes { - config true; - - description - "distanceTypes"; - - leaf intraAreaDistance { - type cml_data_types:CML_INT32_T { - range "1..255"; - } - default "110"; - config true; - } // END of intraAreaDistance definition. - - leaf interAreaDistance { - type cml_data_types:CML_INT32_T { - range "1..255"; - } - default "110"; - config true; - } // END of interAreaDistance definition. - - leaf externalDistance { - type cml_data_types:CML_INT32_T { - range "1..255"; - } - default "110"; - config true; - description "external Distance"; - } // END of externalDistance definition. - - } // END of distanceTypes-container definition. - } // End of ospf-list - } // END of ospf-grouping definition. - - - grouping ospfInterface-grouping { - list ospfInterface { - - description - "OSPF interface related operations"; - - config true; - key "ifName"; - - - leaf ifName { - type cml_data_types:CML_STRING_T; - config true; - } // END of ifName definition. - - leaf ifBfdSet { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ifBfdSet definition. - - leaf ifBfdDisable { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ifBfdDisable definition. - - leaf holdDownTimer { - type cml_data_types:CML_UINT32_T { - range "1..2147483"; - } - default "70000"; - config true; - } // END of holdDownTimer definition. - - leaf fastRerouteIfSet { - type cml_data_types:CML_BOOL_T; - config true; - } // END of fastRerouteIfSet definition. - - leaf ifNetworkType { - type cml_data_types:CML_OSPF_NETWORK_T; - default "point-to-point"; - config true; - } // END of ifNetworkType definition. - - leaf isNetworkP2mp { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isNetworkP2mp definition. - - leaf ifAuthType { - type cml_data_types:CML_OSPF_AUTH_TYPE_T; - default "simple"; - config true; - } // END of ifAuthType definition. - - leaf ifAuthKeyEncryption { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ifAuthKeyEncryption definition. - - leaf ifAuthKey { - type cml_data_types:CML_STRING_T; - config true; - description "ospf authentication-key with IP address of the interface."; - } // END of ifAuthKey definition. - - leaf ifCost { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "10"; - config true; - } // END of ifCost definition. - - leaf ifDeadInterval { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "40"; - config true; - } // END of ifDeadInterval definition. - - leaf ifHelloInterval { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "10"; - config true; - } // END of ifHelloInterval definition. - - leaf isMtuIgnore { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isMtuIgnore definition. - - leaf ifTransmitDelay { - type cml_data_types:CML_UINT32_T { - range "1..3600"; - } - default "1"; - config true; - } // END of ifTransmitDelay definition. - - leaf ifPriority { - type cml_data_types:CML_UINT8_T { - range "0..255"; - } - default "1"; - config true; - } // END of ifPriority definition. - - leaf ifRetransmitInterval { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "5"; - config true; - } // END of ifRetransmitInterval definition. - - leaf ifDatabaseFilter { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ifDatabaseFilter definition. - - leaf ifMtu { - type cml_data_types:CML_UINT16_T { - range "576..65535"; - } - default "576"; - config true; - } // END of ifMtu definition. - - leaf ifDisableAll { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ifDisableAll definition. + } // END of ifName definition. leaf ifTEMetric { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "1"; - config true; - } // END of ifTEMetric definition. - - leaf ifResyncTimeout { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "40"; - config true; - } // END of ifResyncTimeout definition. - - leaf ifDna { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ifDna definition. - - leaf isIfRunning { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isIfRunning definition. - - leaf inputIfName { - type cml_data_types:CML_STRING_T; - config false; - } // END of inputIfName definition. - - leaf intName { - type cml_data_types:CML_STRING_T; - config false; - } // END of intName definition. - - leaf ifIdentAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifIdentAddr definition. - - leaf ifpCost { - type cml_data_types:CML_UINT32_T; - config false; - } // END of ifpCost definition. - - leaf isIpv4Unnumbered { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isIpv4Unnumbered definition. - - leaf isIfPriStatus { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isIfPriStatus definition. - - leaf isMultiIf { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isMultiIf definition. - - leaf isMultiIfPriStatus { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isMultiIfPriStatus definition. - - leaf ifAreaDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifAreaDetail definition. - - leaf ifProcId { - type cml_data_types:CML_UINT16_T; - config false; - } // END of ifProcId definition. - - leaf ifRouterId { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifRouterId definition. - - leaf ifIntNetworkType { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifIntNetworkType definition. - - leaf ifTransDelayGet { - type cml_data_types:CML_UINT32_T; - config false; - } // END of ifTransDelayGet definition. - - leaf ifTransDelayState { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifTransDelayState definition. - - leaf multiIfTeMetric { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiIfTeMetric definition. - - leaf ifIdentPriority { - type cml_data_types:CML_INT32_T; - config false; - } // END of ifIdentPriority definition. - - leaf isLdpIgpSync { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isLdpIgpSync definition. - - leaf isLdpIgpHoldDown { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isLdpIgpHoldDown definition. - - leaf LdpIgpHoldDownVal { - type cml_data_types:CML_STRING_T; - config false; - } // END of LdpIgpHoldDownVal definition. - - leaf isInterfaceType { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isInterfaceType definition. - - leaf interfaceDRDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of interfaceDRDetail definition. - - leaf ifDbFilterGetState { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifDbFilterGetState definition. - - leaf ifHelloInt { - type cml_data_types:CML_INT32_T; - config false; - } // END of ifHelloInt definition. - - leaf ifDeadInt { - type cml_data_types:CML_INT32_T; - config false; - } // END of ifDeadInt definition. - - leaf ifRetransmitInt { - type cml_data_types:CML_INT32_T; - config false; - } // END of ifRetransmitInt definition. - - leaf ifRestartMethodTypeState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of ifRestartMethodTypeState definition. - - leaf ifRestartOOBResyncTimeout { - type cml_data_types:CML_UINT32_T; - config false; - } // END of ifRestartOOBResyncTimeout definition. - - leaf ifTypeLoopbackState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of ifTypeLoopbackState definition. - - leaf ifIntPassiveState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of ifIntPassiveState definition. - - leaf ifHelloTimeDueIn { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifHelloTimeDueIn definition. - - leaf ifNbrCountAll { - type cml_data_types:CML_INT32_T; - config false; - } // END of ifNbrCountAll definition. - - leaf ifAdjacentNbrCountAll { - type cml_data_types:CML_INT32_T; - config false; - } // END of ifAdjacentNbrCountAll definition. - - leaf ifCrypto { - type cml_data_types:CML_UINT32_T; - config false; - } // END of ifCrypto definition. - - leaf ifHelloPacketDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifHelloPacketDetail definition. - - leaf ifLSReqDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifLSReqDetail definition. - - leaf ifLSAckDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of ifLSAckDetail definition. - - leaf intIfMtu { - type cml_data_types:CML_INT32_T; - config false; - } // END of intIfMtu definition. - - leaf multiIfIdentAddr { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiIfIdentAddr definition. - - leaf multiIfpCost { - type cml_data_types:CML_UINT32_T; - config false; - } // END of multiIfpCost definition. - - leaf multiIsIpv4Unnumbered { - type cml_data_types:CML_BOOL_T; - config false; - } // END of multiIsIpv4Unnumbered definition. - - leaf multiIfAreaDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiIfAreaDetail definition. - - leaf multiIfProcId { - type cml_data_types:CML_UINT16_T; - config false; - } // END of multiIfProcId definition. - - leaf multiIfRouterId { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiIfRouterId definition. - - leaf multiIfNetworkType { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiIfNetworkType definition. - - leaf multiIfTransDelayGet { - type cml_data_types:CML_UINT32_T; - config false; - } // END of multiIfTransDelayGet definition. - - leaf multiIfTransDelayState { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiIfTransDelayState definition. - - leaf multiIfIdentPriority { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiIfIdentPriority definition. - - leaf isIfSyncParams { - type cml_data_types:CML_BOOL_T; - config false; - } // END of isIfSyncParams definition. - - leaf multiIsLdpIgpSync { - type cml_data_types:CML_BOOL_T; - config false; - } // END of multiIsLdpIgpSync definition. - - leaf multiIsLdpIgpHoldDown { - type cml_data_types:CML_BOOL_T; - config false; - } // END of multiIsLdpIgpHoldDown definition. - - leaf multiLdpIgpHoldDownVal { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiLdpIgpHoldDownVal definition. - - leaf multiIsInterfaceType { - type cml_data_types:CML_BOOL_T; - config false; - } // END of multiIsInterfaceType definition. - - leaf multiinterfaceDRDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiinterfaceDRDetail definition. - - leaf multiIfDbFilterGetState { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiIfDbFilterGetState definition. - - leaf multiIfHelloInt { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiIfHelloInt definition. - - leaf multiIfDeadInt { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiIfDeadInt definition. - - leaf multiIfRetransmitInt { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiIfRetransmitInt definition. - - leaf multiIfRestartMethodTypeState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of multiIfRestartMethodTypeState definition. - - leaf multiIfRestartOOBResyncTimeout { - type cml_data_types:CML_UINT32_T; - config false; - } // END of multiIfRestartOOBResyncTimeout definition. + if-feature feature_list:HAVE_OSPF_TE; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + } // END of ifTEMetric definition. - leaf multiIsIfTypeLoopbackState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of multiIsIfTypeLoopbackState definition. + leaf ifBfdEnable { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_OSPF_BFD_STATE; + } // END of ifBfdEnable definition. - leaf multiIfIntPassiveState { - type cml_data_types:CML_BOOL_T; - config false; - } // END of multiIfIntPassiveState definition. + leaf ifNetworkType { + type cml_data_types:CML_OSPF_NETWORK_T; + } // END of ifNetworkType definition. - leaf multiIfHelloTimeDueIn { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiIfHelloTimeDueIn definition. + leaf ospfProcess { + type cml_data_types:CML_UINT16_T { + range "0..65535"; + } + } // END of ospfProcess definition. - leaf multiIfNbrCountAll { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiIfNbrCountAll definition. + leaf multiAreaId { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of multiAreaId definition. - leaf multiIfAdjacentNbrCountAll { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiIfAdjacentNbrCountAll definition. + leaf neighborAddr { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of neighborAddr definition. - leaf multiIfCrypto { - type cml_data_types:CML_UINT32_T; - config false; - } // END of multiIfCrypto definition. + leaf ifMtu { + type cml_data_types:CML_UINT16_T { + range "576..65535"; + } + default "576"; + } // END of ifMtu definition. - leaf multiIfHelloPacketDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiIfHelloPacketDetail definition. + leaf ifDisableAll { + type cml_data_types:CML_BOOL_T; + } // END of ifDisableAll definition. - leaf multiIfLSReqDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiIfLSReqDetail definition. + leaf fastRerouteIfSet { + type cml_data_types:CML_BOOL_T; + } // END of fastRerouteIfSet definition. - leaf multiIfLSAckDetail { - type cml_data_types:CML_STRING_T; - config false; - } // END of multiIfLSAckDetail definition. + leaf ifFloodReduction { + type cml_data_types:CML_BOOL_T; + } // END of ifFloodReduction definition. - leaf multiIfMtu { - type cml_data_types:CML_INT32_T; - config false; - } // END of multiIfMtu definition. + leaf ifDemandCircuit { + if-feature feature_list:HAVE_OSPF_OD; + if-feature feature_list:HAVE_OSPF_MULTI_INST; + type cml_data_types:CML_BOOL_T; + } // END of ifDemandCircuit definition. - list ospfMultiAreaIf { + list ospfInterfaceAddr { description - "ospfMultiAreaIf"; + "OSPF interface addr related operations"; config true; - key "ifOpsfProcId"; + key "ipOspfAddr"; - leaf ifOpsfProcId { - type cml_data_types:CML_INT32_T { - range "0..65535"; + leaf ipOspfAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; } - config true; - } // END of ifOpsfProcId definition. + } // END of ipOspfAddr definition. + leaf ifAuthTypeAddr { + type cml_data_types:CML_OSPF_AUTH_TYPE_T; + default "simple"; + } // END of ifAuthTypeAddr definition. - list ospfMultiAreaId { - - description - "ospfMultiAreaId"; + leaf ifAuthKeyAddr { + type cml_data_types:CML_STRING_T { + length "1..8"; + } + } // END of ifAuthKeyAddr definition. - config true; - key "ifOspfAreaId"; + leaf ospfIfAdminStat { + type cml_data_types:CML_OSPF_IF_STATE; + } // END of ospfIfAdminStat definition. - - leaf ifOspfAreaId { - type cml_data_types:CML_STRING_T; - config true; - } // END of ifOspfAreaId definition. + leaf authKeyEncryptionAddr { + type cml_data_types:CML_OSPF_MD5_T; + } // END of authKeyEncryptionAddr definition. - leaf ifOspfNbrId { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; - } // END of ifOspfNbrId definition. + leaf ospfIfAreaId { + if-feature feature_list:HAVE_OSPF_MULTI_INST; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ospfIfAreaId definition. - } // End of ospfMultiAreaId-list - } // End of ospfMultiAreaIf-list + leaf ifStatus { + if-feature feature_list:HAVE_OSPF_MULTI_INST; + type cml_data_types:CML_OSPF_ROW_STATUS; + } // END of ifStatus definition. - list ospfCryptKey { - - description - "ospfCryptKey"; + leaf ospfIfMulticastForwarding { + if-feature feature_list:HAVE_OSPF_MULTI_INST; + type cml_data_types:CML_UINT32_T; + } // END of ospfIfMulticastForwarding definition. - config true; - key "msgDigestKeyId"; + leaf ospfIfDemand { + if-feature feature_list:HAVE_OSPF_MULTI_INST; + type cml_data_types:CML_UINT32_T; + } // END of ospfIfDemand definition. - - leaf msgDigestKeyId { - type cml_data_types:CML_UINT32_T { - range "1..255"; - } - config true; - } // END of msgDigestKeyId definition. + leaf ospfAddressLessIf { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfAddressLessIf definition. - leaf msgDigestKeyEncryption { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of msgDigestKeyEncryption definition. + leaf ospfIfState { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfIfState definition. - leaf msgifAuthKey { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; - } // END of msgifAuthKey definition. + leaf ospfIfEvents { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfIfEvents definition. - } // End of ospfCryptKey-list + leaf ospfIfLsaCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfIfLsaCount definition. - list ospfInterfaceParamsAddrList { - - description - "ospfInterfaceParamsAddrList"; + leaf ospfIfLsaCksumSum { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfIfLsaCksumSum definition. - config true; - key "ipOspfAddr"; + leaf ospfIfDesignatedRouter { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ospfIfDesignatedRouter definition. - - leaf ipOspfAddr { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of ipOspfAddr definition. + leaf ospfIfBackupDesignatedRouter { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ospfIfBackupDesignatedRouter definition. - leaf ifAuthTypeAddr { - type cml_data_types:CML_OSPF_AUTH_TYPE_T; - default "simple"; - config true; - } // END of ifAuthTypeAddr definition. + leaf ospfIfDesignatedRouterId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ospfIfDesignatedRouterId definition. - leaf ifAuthKeyEncryptionAddr { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ifAuthKeyEncryptionAddr definition. + leaf ospfIfBackupDesignatedRouterId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ospfIfBackupDesignatedRouterId definition. - leaf ifAuthKeyAddr { - type cml_data_types:CML_STRING_T; - config true; - } // END of ifAuthKeyAddr definition. + leaf ifPriorityAddr { + type cml_data_types:CML_UINT8_T { + range "0..255"; + } + default "1"; + } // END of ifPriorityAddr definition. leaf ifCostAddr { type cml_data_types:CML_UINT32_T { range "1..65535"; } default "10"; - config true; } // END of ifCostAddr definition. leaf ifDeadIntervalAddr { @@ -3127,7 +1835,6 @@ submodule ospf { range "1..65535"; } default "40"; - config true; } // END of ifDeadIntervalAddr definition. leaf ifHelloIntervalAddr { @@ -3135,56 +1842,42 @@ submodule ospf { range "1..65535"; } default "10"; - config true; } // END of ifHelloIntervalAddr definition. - leaf isMtuIgnoreAddr { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isMtuIgnoreAddr definition. + leaf ifRetransmitIntervalAddr { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "5"; + } // END of ifRetransmitIntervalAddr definition. leaf ifTransmitDelayAddr { type cml_data_types:CML_UINT32_T { range "1..3600"; } default "1"; - config true; } // END of ifTransmitDelayAddr definition. - leaf ifPriorityAddr { - type cml_data_types:CML_UINT8_T { - range "0..255"; - } - default "1"; - config true; - } // END of ifPriorityAddr definition. - - leaf ifRetransmitIntervalAddr { - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "5"; - config true; - } // END of ifRetransmitIntervalAddr definition. - leaf ifDatabaseFilterAddr { type cml_data_types:CML_BOOL_T; - config true; } // END of ifDatabaseFilterAddr definition. + leaf isMtuIgnoreAddr { + type cml_data_types:CML_BOOL_T; + } // END of isMtuIgnoreAddr definition. + leaf ifResyncTimeoutAddr { type cml_data_types:CML_UINT32_T { range "1..65535"; } default "40"; - config true; } // END of ifResyncTimeoutAddr definition. - list ospfCryptKeyAddr { + list ospfInterfaceMessageDigestKey { description - "ospfCryptKeyAddr"; + "OSPF message-digest-key related operations"; config true; key "msgDigestKeyIdAddr"; @@ -3194,197 +1887,233 @@ submodule ospf { type cml_data_types:CML_UINT32_T { range "1..255"; } - config true; } // END of msgDigestKeyIdAddr definition. leaf msgDigestKeyEncryptionAddr { mandatory true; - type cml_data_types:CML_BOOL_T; - config true; + type cml_data_types:CML_OSPF_MD5_T; } // END of msgDigestKeyEncryptionAddr definition. leaf msgifAuthKeyAddr { mandatory true; - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "1..16"; + } } // END of msgifAuthKeyAddr definition. - } // End of ospfCryptKeyAddr-list - } // End of ospfInterfaceParamsAddrList-list + } // End of ospfInterfaceMessageDigestKey-list + } // End of ospfInterfaceAddr-list + uses TrafficStats; } // End of ospfInterface-list } // END of ospfInterface-grouping definition. - grouping ospfGlobal-grouping { - list ospfGlobal { - - description - "ospfGlobal"; - - config true; - key "vrId"; - - - leaf vrId { - type cml_data_types:CML_UINT32_T; - config true; - } // END of vrId definition. - - leaf isEnableExtMultiInst { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isEnableExtMultiInst definition. - - leaf debug { - type cml_data_types:CML_OSPF_DEBUG_T; - config true; - } // END of debug definition. - - leaf packetType { - type cml_data_types:CML_OSPF_DEBUG_PACKET_TYPE_T; - config true; - } // END of packetType definition. - - leaf debugMode { - type cml_data_types:CML_OSPF_DEBUG_PACKET_MODE_T; - config true; - } // END of debugMode definition. - - leaf debugDetail { - type cml_data_types:CML_BOOL_T; - config true; - } // END of debugDetail definition. - - leaf restartSeconds { - type cml_data_types:CML_INT32_T { - range "1..1800"; - } - default "120"; - config true; - } // END of restartSeconds definition. - - leaf hitlessRestartSeconds { - type cml_data_types:CML_INT32_T { - range "1..1800"; - } - default "120"; - config true; - } // END of hitlessRestartSeconds definition. - - leaf isDebug { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isDebug definition. - - leaf isDebugPacket { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isDebugPacket definition. - - leaf isCspfeventDebug { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isCspfeventDebug definition. - - leaf isCspfhexdumpDebug { - type cml_data_types:CML_BOOL_T; - config true; - } // END of isCspfhexdumpDebug definition. - - leaf gracefulRestartPlanned { - type cml_data_types:CML_BOOL_T; - config true; - } // END of gracefulRestartPlanned definition. - - container restartConfig { - config true; - - description - "restartConfig"; - - leaf never { - type cml_data_types:CML_BOOL_T; - config true; - description "ospf hitless-restart helper"; - } // END of never definition. - - leaf nbrRouterId { - type cml_data_types:CML_STRING_T; - config true; - } // END of nbrRouterId definition. - - leaf restartAll { - type cml_data_types:CML_BOOL_T; - config true; - } // END of restartAll definition. - - } // END of restartConfig-container definition. - container restartAllConfig { - config true; - - description - "restartAllConfig"; - - leaf onlyReload { - type cml_data_types:CML_BOOL_T; - config true; - } // END of onlyReload definition. - - leaf onlyUpgrade { - type cml_data_types:CML_BOOL_T; - config true; - } // END of onlyUpgrade definition. - - leaf restartHelperPeriod { - type cml_data_types:CML_INT32_T { - range "1..1800"; - } - default "120"; - config true; - } // END of restartHelperPeriod definition. - - } // END of restartAllConfig-container definition. - } // End of ospfGlobal-list - } // END of ospfGlobal-grouping definition. - - grouping teLinkOspf-grouping { list teLinkOspf { - + if-feature feature_list:HAVE_GMPLS; + if-feature feature_list:HAVE_OSPF_TE; + description "teLinkOspf"; config true; - key "teLinkName"; + key "teName"; - leaf teLinkName { - type cml_data_types:CML_STRING_T; - config true; - } // END of teLinkName definition. - - leaf linkLocalEnable { - type cml_data_types:CML_OSPF_TELINK_LOCAL_T; - config true; - description "te-link"; - } // END of linkLocalEnable definition. + leaf teName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of teName definition. - leaf teFloodOspfId { - type cml_data_types:CML_INT32_T { + leaf teLinkOspfInstance { + type cml_data_types:CML_UINT16_T { range "0..65535"; } - default "0"; - config true; - } // END of teFloodOspfId definition. + } // END of teLinkOspfInstance definition. - leaf teFloodareaId { - type cml_data_types:CML_STRING_T; - config true; - description "Te Flood Ospf Id"; - } // END of teFloodareaId definition. + leaf teLinkAreaId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of teLinkAreaId definition. + + leaf teLinkTEMetric { + if-feature feature_list:HAVE_OSPF_TE; + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + } // END of teLinkTEMetric definition. + + leaf telinkLocalEnable { + if-feature feature_list:HAVE_OSPF_TE; + if-feature feature_list:HAVE_GMPLS; + type cml_data_types:CML_BOOL_T; + } // END of telinkLocalEnable definition. } // End of teLinkOspf-list } // END of teLinkOspf-grouping definition. + grouping TrafficStats { + leaf trafficTimeStamp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of trafficTimeStamp definition. + + leaf totalStatsIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of totalStatsIn definition. + + leaf totalStatsOut { + type cml_data_types:CML_INT32_T; + config false; + } // END of totalStatsOut definition. + + leaf errorsDropIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of errorsDropIn definition. + + leaf errorsDropOut { + type cml_data_types:CML_INT32_T; + config false; + } // END of errorsDropOut definition. + + leaf errorsHellosIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of errorsHellosIn definition. + + leaf dbdsIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of dbdsIn definition. + + leaf lsreqIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of lsreqIn definition. + + leaf lsuIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of lsuIn definition. + + leaf lsacksIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of lsacksIn definition. + + leaf unknownIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of unknownIn definition. + + leaf unknownOut { + type cml_data_types:CML_INT32_T; + config false; + } // END of unknownOut definition. + + leaf badVersion { + type cml_data_types:CML_INT32_T; + config false; + } // END of badVersion definition. + + leaf badCrc { + type cml_data_types:CML_INT32_T; + config false; + } // END of badCrc definition. + + leaf invalidSrc { + type cml_data_types:CML_INT32_T; + config false; + } // END of invalidSrc definition. + + leaf invalidDSt { + type cml_data_types:CML_INT32_T; + config false; + } // END of invalidDSt definition. + + leaf noNbr { + type cml_data_types:CML_INT32_T; + config false; + } // END of noNbr definition. + + leaf passive { + type cml_data_types:CML_INT32_T; + config false; + } // END of passive definition. + + leaf wrongArea { + type cml_data_types:CML_INT32_T; + config false; + } // END of wrongArea definition. + + leaf pktLength { + type cml_data_types:CML_INT32_T; + config false; + } // END of pktLength definition. + + leaf badAuth { + type cml_data_types:CML_INT32_T; + config false; + } // END of badAuth definition. + + leaf statsHelloIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of statsHelloIn definition. + + leaf statsDbDescIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of statsDbDescIn definition. + + leaf statsLsReqIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of statsLsReqIn definition. + + leaf statsLsUpdIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of statsLsUpdIn definition. + + leaf statsLsAckIn { + type cml_data_types:CML_INT32_T; + config false; + } // END of statsLsAckIn definition. + + leaf statsHelloOut { + type cml_data_types:CML_INT32_T; + config false; + } // END of statsHelloOut definition. + + leaf statsDbDescOut { + type cml_data_types:CML_INT32_T; + config false; + } // END of statsDbDescOut definition. + + leaf statsLsReqOut { + type cml_data_types:CML_INT32_T; + config false; + } // END of statsLsReqOut definition. + + leaf statsLsUpdOut { + type cml_data_types:CML_INT32_T; + config false; + } // END of statsLsUpdOut definition. + + leaf statsLsAckOut { + type cml_data_types:CML_INT32_T; + config false; + } // END of statsLsAckOut definition. + + } // END of TrafficStats definition. } \ No newline at end of file diff --git a/yang-files/ospf6.yang b/yang-files/ospf6.yang deleted file mode 100644 index 38bfb284..00000000 --- a/yang-files/ospf6.yang +++ /dev/null @@ -1,2401 +0,0 @@ -/* -* Copyright (C) 2016 IP Infusion, Inc. -* All Rights Reserved. -* -*** Auto generated by zebmdc - -* Unless required by applicable law or agreed to in writing, -* software distributed under the License is distributed on an -* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -* KIND, either express or implied. - -* File name : ospf6.yang -* -*/ - -submodule ospf6 { - - belongs-to ZebOS { prefix ZebOS; } - include interface; - include vrf; - - - import cml_data_types { - prefix cml_data_types; - } - - description - "Layer-3 ospf configurations"; - - - revision "2016-08-08" { - description "Revisied on 2016-08-08."; } - - - - grouping ospf6-grouping { - list ospf6 { - - - description - "ospf6"; - - config true; - key "ospf6ProcessTag"; - - - leaf vrId { - - type cml_data_types:CML_UINT32_T; - default "0"; - config true; - } // END of vrId definition. - - leaf ospf6ProcessTag { - - type cml_data_types:CML_STRING_T; - config true; - description "router ipv6 ospf"; - } // END of ospf6ProcessTag definition. - - leaf ospf6logAdjacency { - - type cml_data_types:CML_STRING_T; - config true; - } // END of ospf6logAdjacency definition. - - leaf ospf6RouterId { - - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of ospf6RouterId definition. - - leaf ospf6ReferenceBandWidth { - - type cml_data_types:CML_INT32_T { - range "1..4294967"; - } - default "100000"; - config true; - } // END of ospf6ReferenceBandWidth definition. - - leaf maxDBDescriptor { - - type cml_data_types:CML_UINT16_T { - range "1..65535"; - } - default "5"; - config true; - } // END of maxDBDescriptor definition. - - leaf maxUnusePkt { - - type cml_data_types:CML_UINT32_T { - range "0..65535"; - } - default "200"; - config true; - } // END of maxUnusePkt definition. - - leaf maxUnuseLsa { - - type cml_data_types:CML_UINT32_T { - range "0..65535"; - } - default "200"; - config true; - } // END of maxUnuseLsa definition. - - leaf ospf6DefaultMetric { - - type cml_data_types:CML_UINT32_T { - range "1..16777214"; - } - default "20"; - config true; - } // END of ospf6DefaultMetric definition. - - leaf abrType { - - type cml_data_types:CML_OSPF6_ABR_TYPE_T; - default "cisco"; - config true; - } // END of abrType definition. - - leaf ospf6AdminDistance { - - type cml_data_types:CML_INT32_T { - range "1..254"; - } - default "110"; - config true; - } // END of ospf6AdminDistance definition. - - leaf minDelay { - - type cml_data_types:CML_UINT32_T { - range "0..2147483647"; - } - default "500"; - config true; - } // END of minDelay definition. - - leaf maxDelay { - - type cml_data_types:CML_UINT32_T { - range "0..2147483647"; - } - default "50000"; - config true; - description "timers spf exp"; - } // END of maxDelay definition. - - leaf ospf6ShutdownStatus { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6ShutdownStatus definition. - - leaf ospf6FRKeepAllPath { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6FRKeepAllPath definition. - - leaf isPassiveIfDefault { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of isPassiveIfDefault definition. - - leaf ospf6CapabilityTE { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6CapabilityTE definition. - - leaf ospf6CspfCapability { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6CspfCapability definition. - - leaf ospf6EnableCspf { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6EnableCspf definition. - - leaf ospf6EnableDBSummary { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6EnableDBSummary definition. - - leaf tieBreak { - - type cml_data_types:CML_OSPF6_CSPF_TYPE_T; - default "random"; - config true; - } // END of tieBreak definition. - - leaf cspfInterval { - - type cml_data_types:CML_UINT16_T { - range "1..3600"; - } - default "10"; - config true; - } // END of cspfInterval definition. - - leaf ospf6CapabilityRestartMethod { - - type cml_data_types:CML_BOOL_T; - default true; - config true; - } // END of ospf6CapabilityRestartMethod definition. - - leaf bfdAllInterface { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of bfdAllInterface definition. - - leaf teDBRTAddrLsaAge { - - type cml_data_types:CML_INT32_T; - config false; - } // END of teDBRTAddrLsaAge definition. - - leaf teLsaHeaderMsgType { - - type cml_data_types:CML_STRING_T; - config false; - } // END of teLsaHeaderMsgType definition. - - leaf teLsaHeaderType { - - type cml_data_types:CML_UINT8_T; - config false; - } // END of teLsaHeaderType definition. - - leaf teInstance { - - type cml_data_types:CML_INT32_T; - config false; - } // END of teInstance definition. - - leaf teAdvrRouter { - - type cml_data_types:CML_STRING_T; - config false; - } // END of teAdvrRouter definition. - - leaf teLSSeqNum { - - type cml_data_types:CML_INT32_T; - config false; - } // END of teLSSeqNum definition. - - leaf teLSChecksum { - - type cml_data_types:CML_UINT16_T; - config false; - } // END of teLSChecksum definition. - - leaf teLength { - - type cml_data_types:CML_UINT16_T; - config false; - } // END of teLength definition. - - leaf teRouterState { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teRouterState definition. - - leaf teNeighborState { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teNeighborState definition. - - leaf teNeighborInterfaceId { - - type cml_data_types:CML_INT32_T; - config false; - } // END of teNeighborInterfaceId definition. - - leaf teNeighborRouterId { - - type cml_data_types:CML_STRING_T; - config false; - } // END of teNeighborRouterId definition. - - leaf teRouterAddr { - - type cml_data_types:CML_STRING_T; - config false; - } // END of teRouterAddr definition. - - leaf teLocalInterfaceState { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLocalInterfaceState definition. - - leaf teLocalInterfaceAddr { - - type cml_data_types:CML_STRING_T; - config false; - } // END of teLocalInterfaceAddr definition. - - leaf teRemoteInterfaceState { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teRemoteInterfaceState definition. - - leaf teRemoteInterfaceAddr { - - type cml_data_types:CML_STRING_T; - config false; - } // END of teRemoteInterfaceAddr definition. - - leaf teLinkMetricState { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLinkMetricState definition. - - leaf teLinkMetric { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of teLinkMetric definition. - - leaf teMaxResBWState { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teMaxResBWState definition. - - leaf teMaxResBW { - - type cml_data_types:CML_INT32_T; - config false; - } // END of teMaxResBW definition. - - leaf teMaxBWState { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teMaxBWState definition. - - leaf teMaxBW { - - type cml_data_types:CML_INT32_T; - config false; - } // END of teMaxBW definition. - - leaf teLinkAttrBc { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLinkAttrBc definition. - - leaf teBWConsModel { - - type cml_data_types:CML_UINT8_T; - config false; - } // END of teBWConsModel definition. - - leaf teUnResBWState { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teUnResBWState definition. - - leaf teUnResBWPrio { - - type cml_data_types:CML_STRING_T; - config false; - } // END of teUnResBWPrio definition. - - leaf teResourceColorState { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teResourceColorState definition. - - leaf teResourceColorVal { - - type cml_data_types:CML_INT32_T; - config false; - } // END of teResourceColorVal definition. - - leaf teBWCons { - - type cml_data_types:CML_STRING_T; - config false; - } // END of teBWCons definition. - - leaf teBWCtr { - - type cml_data_types:CML_INT32_T; - config false; - } // END of teBWCtr definition. - - leaf teLinkStateType { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLinkStateType definition. - - leaf teLinkType { - - type cml_data_types:CML_STRING_T; - config false; - } // END of teLinkType definition. - - leaf teLinkStateID { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of teLinkStateID definition. - - leaf teLinkId { - - type cml_data_types:CML_STRING_T; - config false; - } // END of teLinkId definition. - - leaf pathCode { - - type cml_data_types:CML_STRING_T; - config false; - } // END of pathCode definition. - - leaf pathCost { - - type cml_data_types:CML_STRING_T; - config false; - } // END of pathCost definition. - - leaf nextHop { - - type cml_data_types:CML_STRING_T; - config false; - } // END of nextHop definition. - - leaf ifPathCode { - - type cml_data_types:CML_STRING_T; - config false; - } // END of ifPathCode definition. - - leaf areaTransit { - - type cml_data_types:CML_STRING_T; - config false; - } // END of areaTransit definition. - - leaf nhAddr { - - type cml_data_types:CML_STRING_T; - config false; - } // END of nhAddr definition. - - leaf lspP2mpId { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of lspP2mpId definition. - - leaf lspId { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of lspId definition. - - leaf lspIngress { - - type cml_data_types:CML_STRING_T; - config false; - } // END of lspIngress definition. - - leaf lspEgress { - - type cml_data_types:CML_STRING_T; - config false; - } // END of lspEgress definition. - - leaf lspExTunnelId { - - type cml_data_types:CML_STRING_T; - config false; - } // END of lspExTunnelId definition. - - leaf lspType { - - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspType definition. - - leaf lspClientId { - - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspClientId definition. - - leaf lspState { - - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspState definition. - - leaf lspSetupPri { - - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspSetupPri definition. - - leaf lspHoldPri { - - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspHoldPri definition. - - leaf lspBidirectionalStatus { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspBidirectionalStatus definition. - - leaf lspBandwidth { - - type cml_data_types:CML_STRING_T; - config false; - } // END of lspBandwidth definition. - - leaf lspBWStat { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspBWStat definition. - - leaf lspHopLimit { - - type cml_data_types:CML_UINT8_T; - config false; - } // END of lspHopLimit definition. - - leaf lspAdmControl { - - type cml_data_types:CML_INT32_T; - config false; - } // END of lspAdmControl definition. - - leaf lspIncludeMask { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of lspIncludeMask definition. - - leaf lspExcludeMask { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of lspExcludeMask definition. - - leaf lspAttrRetry { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspAttrRetry definition. - - leaf lspRetryInt { - - type cml_data_types:CML_UINT16_T; - config false; - } // END of lspRetryInt definition. - - leaf lspRetryLimit { - - type cml_data_types:CML_UINT16_T; - config false; - } // END of lspRetryLimit definition. - - leaf lspTeMetric { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of lspTeMetric definition. - - leaf lspPathStat { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspPathStat definition. - - leaf lspPathDetail { - - type cml_data_types:CML_STRING_T; - config false; - } // END of lspPathDetail definition. - - leaf lspExcludePathStat { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspExcludePathStat definition. - - leaf lspExcludePathDetail { - - type cml_data_types:CML_STRING_T; - config false; - } // END of lspExcludePathDetail definition. - - leaf lspRouteStat { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of lspRouteStat definition. - - leaf lspRouteDetail { - - type cml_data_types:CML_STRING_T; - config false; - } // END of lspRouteDetail definition. - - leaf isAbrType { - - type cml_data_types:CML_STRING_T; - config false; - } // END of isAbrType definition. - - leaf isAbrStateType { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of isAbrStateType definition. - - leaf vrfIfName { - - type cml_data_types:CML_STRING_T; - config false; - } // END of vrfIfName definition. - - leaf vrfIvName { - - type cml_data_types:CML_STRING_T; - config false; - } // END of vrfIvName definition. - - leaf asbrSet { - - type cml_data_types:CML_UINT8_T; - config false; - } // END of asbrSet definition. - - leaf spfMinDelay { - - type cml_data_types:CML_STRING_T; - config false; - } // END of spfMinDelay definition. - - leaf spfMaxDelay { - - type cml_data_types:CML_STRING_T; - config false; - } // END of spfMaxDelay definition. - - leaf ddCountIn { - - type cml_data_types:CML_UINT16_T; - config false; - } // END of ddCountIn definition. - - leaf ddCountOut { - - type cml_data_types:CML_UINT16_T; - config false; - } // END of ddCountOut definition. - - leaf externalLsa { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of externalLsa definition. - - leaf checksum { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of checksum definition. - - leaf unknownLsa { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of unknownLsa definition. - - leaf selfLsa { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of selfLsa definition. - - leaf recvLsa { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of recvLsa definition. - - leaf processUpTime { - - type cml_data_types:CML_STRING_T; - config false; - } // END of processUpTime definition. - - leaf restartMethodType { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of restartMethodType definition. - - leaf areaCount { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of areaCount definition. - - leaf obufSize { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of obufSize definition. - - leaf lbufSize { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of lbufSize definition. - - leaf ibufSize { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of ibufSize definition. - - leaf opunuseMax { - - type cml_data_types:CML_UINT16_T; - config false; - } // END of opunuseMax definition. - - leaf opunuseCount { - - type cml_data_types:CML_UINT16_T; - config false; - } // END of opunuseCount definition. - - leaf lsaunuseCount { - - type cml_data_types:CML_UINT16_T; - config false; - } // END of lsaunuseCount definition. - - leaf lsaunuseMax { - - type cml_data_types:CML_UINT16_T; - config false; - } // END of lsaunuseMax definition. - - leaf accessListName { - - type cml_data_types:CML_STRING_T; - config true; - } // END of accessListName definition. - - leaf ospf6DistIn { - - type cml_data_types:CML_BOOL_T; - config true; - description "distribute-list in"; - } // END of ospf6DistIn definition. - - leaf-list ospf6RedistProtocolDist { - - type cml_data_types:CML_OSPF6_DIST_ROUTE_SOURCE_TYPE_T; - config true; - description "distribute-list out"; - } // END of ospf6RedistProtocolDist definition. - - leaf-list ospf6DistributeTag { - - type cml_data_types:CML_STRING_T; - config true; - description "distribute-list out ospf"; - } // END of ospf6DistributeTag definition. - - - list passiveIf { - - - description - "passiveIf"; - - config true; - key "passiveIfName"; - - - leaf passiveIfName { - - type cml_data_types:CML_STRING_T; - config true; - description "passive-interface with interface name"; - } // END of passiveIfName definition. - - } // End of passiveIf-list - - list noPassiveIf { - - - description - "noPassiveIf"; - - config false; - key "noPassiveIfName"; - - - leaf noPassiveIfName { - - type cml_data_types:CML_STRING_T; - config false; - } // END of noPassiveIfName definition. - - } // End of noPassiveIf-list - - list neighborRun { - - - description - "neighborRun"; - - config false; - key "neighborIf"; - - - leaf neighborIf { - - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborIf definition. - - leaf neighborPriority { - - type cml_data_types:CML_UINT8_T; - config false; - } // END of neighborPriority definition. - - leaf neighborDownState { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of neighborDownState definition. - - leaf neighborRetransmitCount { - - type cml_data_types:CML_INT32_T; - config false; - } // END of neighborRetransmitCount definition. - - leaf neighborRequestCount { - - type cml_data_types:CML_INT32_T; - config false; - } // END of neighborRequestCount definition. - - leaf neighborDbSummaryCount { - - type cml_data_types:CML_INT32_T; - config false; - } // END of neighborDbSummaryCount definition. - - leaf neighborChangeState { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of neighborChangeState definition. - - leaf neighborArea { - - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborArea definition. - - leaf neighborInterfaceAddress { - - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborInterfaceAddress definition. - - leaf neighborDRouterId { - - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborDRouterId definition. - - leaf neighborBDRouterId { - - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborBDRouterId definition. - - leaf neighborOptions { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of neighborOptions definition. - - leaf neighborOptionDump { - - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborOptionDump definition. - - leaf neighborState { - - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborState definition. - - leaf neighborDeadTime { - - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborDeadTime definition. - - leaf neighborId { - - type cml_data_types:CML_IPV4_ADDR_T; - config false; - } // END of neighborId definition. - - leaf neighborInst { - - type cml_data_types:CML_STRING_T; - config false; - } // END of neighborInst definition. - - } // End of neighborRun-list - - list frrTieBreak { - - - description - "frrTieBreak"; - - config true; - key "frrTieBreakVal"; - - - leaf frrTieBreakVal { - - type cml_data_types:CML_OSPF_FRR_TIE_BREAK_VAL_T; - config true; - } // END of frrTieBreakVal definition. - - leaf frrTieBreakIndex { - mandatory true; - type cml_data_types:CML_UINT32_T { - range "1..4"; - } - config true; - } // END of frrTieBreakIndex definition. - - leaf isFrrPrioSet { - mandatory true; - type cml_data_types:CML_BOOL_T; - config true; - } // END of isFrrPrioSet definition. - - } // End of frrTieBreak-list - - list summaryAddress { - - - description - "summaryAddress"; - - config true; - key "summaryIpv6Addr"; - - - leaf summaryIpv6Addr { - - type cml_data_types:CML_IPV6_PREFIX_T; - config true; - } // END of summaryIpv6Addr definition. - - leaf addressNotMask6len { - - type cml_data_types:CML_BOOL_T; - config true; - description "summary-address with not-advertise"; - } // END of addressNotMask6len definition. - - leaf summaryRoute6Tag { - - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - config true; - description "summary-address with all-tag "; - } // END of summaryRoute6Tag definition. - - leaf summaryRoute6TranslateTag { - - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - config true; - description "summary-address with translate-tag"; - } // END of summaryRoute6TranslateTag definition. - - } // End of summaryAddress-list - - list ospf6Area { - - - description - "ospf6Area"; - - config true; - key "areaId"; - - - leaf areaId { - - type cml_data_types:CML_STRING_T; - config true; - } // END of areaId definition. - - leaf defaultCost { - - type cml_data_types:CML_INT32_T { - range "1..16777215"; - } - default "1"; - config true; - description "area default-cost"; - } // END of defaultCost definition. - - leaf isAreaType { - - type cml_data_types:CML_STRING_T; - config false; - } // END of isAreaType definition. - - leaf isAreaActive { - - type cml_data_types:CML_UINT8_T; - config false; - } // END of isAreaActive definition. - - leaf activeIfCount { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of activeIfCount definition. - - leaf areaIfCount { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of areaIfCount definition. - - leaf spfCalcCount { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of spfCalcCount definition. - - leaf areaLsdbCountAll { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of areaLsdbCountAll definition. - - leaf areaChecksum { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of areaChecksum definition. - - leaf areaStrId { - - type cml_data_types:CML_STRING_T; - config false; - } // END of areaStrId definition. - - leaf isAreaDefault { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of isAreaDefault definition. - - leaf isAreaNssa { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of isAreaNssa definition. - - leaf areaUnknownLsa { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of areaUnknownLsa definition. - - leaf isNssaDisabled { - - type cml_data_types:CML_STRING_T; - config false; - } // END of isNssaDisabled definition. - - leaf vlinkName { - - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkName definition. - - leaf transitArea { - - type cml_data_types:CML_STRING_T; - config false; - } // END of transitArea definition. - - leaf authEnabled { - - type cml_data_types:CML_STRING_T; - config false; - } // END of authEnabled definition. - - leaf authStateEnabled { - - type cml_data_types:CML_STRING_T; - config false; - } // END of authStateEnabled definition. - - leaf localAddr { - - type cml_data_types:CML_STRING_T; - config false; - } // END of localAddr definition. - - leaf remoteAddr { - - type cml_data_types:CML_STRING_T; - config false; - } // END of remoteAddr definition. - - leaf ifFsmState { - - type cml_data_types:CML_STRING_T; - config false; - } // END of ifFsmState definition. - - leaf helloDueIn { - - type cml_data_types:CML_STRING_T; - config false; - } // END of helloDueIn definition. - - leaf ifPassiveState { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of ifPassiveState definition. - - leaf vlinkAdjState { - - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkAdjState definition. - - leaf vlinkState { - - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkState definition. - - leaf vlinkInterface { - - type cml_data_types:CML_STRING_T; - config false; - } // END of vlinkInterface definition. - - - list areaStub { - - - description - "areaStub"; - - config true; - key "isAreaStub"; - - - leaf isAreaStub { - - type cml_data_types:CML_BOOL_T; - config true; - description "area stub"; - } // END of isAreaStub definition. - - leaf ospf6AreaSummary { - - type cml_data_types:CML_BOOL_T; - config true; - description "area stub no-summary"; - } // END of ospf6AreaSummary definition. - - } // End of areaStub-list - - list areaVlink { - - - description - "areaVlink"; - - config true; - key "peerId"; - - - leaf peerId { - - type cml_data_types:CML_IPV4_ADDR_T; - config true; - description "area virtual-link"; - } // END of peerId definition. - - leaf virtualLinkRetransmitInterval { - - type cml_data_types:CML_INT32_T { - range "1..1800"; - } - default "1"; - config true; - } // END of virtualLinkRetransmitInterval definition. - - leaf virtualLinkTransmitDelay { - - type cml_data_types:CML_INT32_T { - range "1..1800"; - } - default "1"; - config true; - } // END of virtualLinkTransmitDelay definition. - - leaf virtualLinkHelloInterval { - - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - default "1"; - config true; - } // END of virtualLinkHelloInterval definition. - - leaf virtualLinkDeadInterval { - - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - default "1"; - config true; - } // END of virtualLinkDeadInterval definition. - - leaf areaVlinkTimer { - - type cml_data_types:CML_STRING_T; - config true; - } // END of areaVlinkTimer definition. - - leaf virtualLinkSeconds { - - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - config true; - } // END of virtualLinkSeconds definition. - - leaf VirtualLinkInstanceId { - - type cml_data_types:CML_INT32_T { - range "0..255"; - } - default "0"; - config true; - description "area virtual-link options"; - } // END of VirtualLinkInstanceId definition. - - } // End of areaVlink-list - - list areaNssa { - - - description - "areaNssa"; - - config true; - key "ospf6Nssa"; - - - leaf ospf6Nssa { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6Nssa definition. - - leaf stabilityInterval { - - type cml_data_types:CML_INT32_T { - range "0..2147483647"; - } - default "40"; - config true; - } // END of stabilityInterval definition. - - leaf nssaAreaSummary { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of nssaAreaSummary definition. - - leaf ospf6AreaNssaTransRole { - - type cml_data_types:CML_OSPF6_TRANSLATOR_ROLE_T; - default "candidate"; - config true; - } // END of ospf6AreaNssaTransRole definition. - - leaf ospf6DefaultOriginMetric { - - type cml_data_types:CML_INT32_T { - range "1..16777214"; - } - default "1"; - config true; - } // END of ospf6DefaultOriginMetric definition. - - leaf ospf6DefaultOriginMetricType { - - type cml_data_types:CML_OSPF6_METRIC_TYPE_T; - config true; - } // END of ospf6DefaultOriginMetricType definition. - - leaf ospf6NssaRedist { - - type cml_data_types:CML_BOOL_T; - default true; - config true; - } // END of ospf6NssaRedist definition. - - leaf ospf6NssaDefaultInfo { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6NssaDefaultInfo definition. - - leaf NssaRouteMapName { - - type cml_data_types:CML_STRING_T; - config true; - description "area nssa"; - } // END of NssaRouteMapName definition. - - container nssaAreaTranslator { - - config true; - - description - "nssaAreaTranslator"; - - leaf nssaAreaTranslatorRole { - - type cml_data_types:CML_OSPF6_NSSA_TRANSLATOR_ROLE_T; - config true; - description "area nssa"; - } // END of nssaAreaTranslatorRole definition. - - } // END of nssaAreaTranslator-container definition. - } // End of areaNssa-list - - list rangeipv6 { - - - description - "rangeipv6"; - - config true; - key "areaRangeAddr"; - - - leaf areaRangeAddr { - - type cml_data_types:CML_IPV6_PREFIX_T; - config true; - description "area range"; - } // END of areaRangeAddr definition. - - leaf ospf6AreaRangeStatus { - mandatory true; - type cml_data_types:CML_OSPF6_AREA_RANGE_T; - config true; - } // END of ospf6AreaRangeStatus definition. - - } // End of rangeipv6-list - } // End of ospf6Area-list - - list redistributeProc { - - - description - "redistributeProc"; - - config true; - key "sourceOspf6Tag"; - - - leaf sourceOspf6Tag { - - type cml_data_types:CML_STRING_T; - config true; - } // END of sourceOspf6Tag definition. - - leaf ospf6RedistMetricType { - - type cml_data_types:CML_OSPF6_METRIC_TYPE_T; - default "2"; - config true; - } // END of ospf6RedistMetricType definition. - - leaf ospf6RedistMetricValue { - - type cml_data_types:CML_UINT32_T { - range "0..16777214"; - } - config true; - } // END of ospf6RedistMetricValue definition. - - leaf ospf6RedistTagVal { - - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - default "0"; - config true; - } // END of ospf6RedistTagVal definition. - - leaf ospf6RouteMapName { - - type cml_data_types:CML_STRING_T; - config true; - description "redistribute ospf options"; - } // END of ospf6RouteMapName definition. - - } // End of redistributeProc-list - - list redistribute { - - - description - "redistribute"; - - config true; - key "ospf6RedistProtocol"; - - - leaf ospf6RedistProtocol { - - type cml_data_types:CML_OSPF6_ROUTE_SOURCE_TYPE_T; - config true; - } // END of ospf6RedistProtocol definition. - - leaf ospf6RedistMetricType { - - type cml_data_types:CML_OSPF6_METRIC_TYPE_T; - default "2"; - config true; - } // END of ospf6RedistMetricType definition. - - leaf ospf6RedistMetricValue { - - type cml_data_types:CML_UINT32_T { - range "0..16777214"; - } - config true; - } // END of ospf6RedistMetricValue definition. - - leaf ospf6RedistTagVal { - - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - default "0"; - config true; - } // END of ospf6RedistTagVal definition. - - leaf ospf6RouteMapName { - - type cml_data_types:CML_STRING_T; - config true; - description "redistribute options"; - } // END of ospf6RouteMapName definition. - - } // End of redistribute-list - - list ospf6DefaultInformation { - - - description - "ospf6DefaultInformation"; - - config true; - key "ospf6RedistDefaultOrigin"; - - - leaf ospf6RedistDefaultOrigin { - - type cml_data_types:CML_BOOL_T; - config true; - description "default-information originate"; - } // END of ospf6RedistDefaultOrigin definition. - - leaf ospf6RedistDefaultOriginAlways { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6RedistDefaultOriginAlways definition. - - leaf ospf6RedistDefaultMetric { - - type cml_data_types:CML_OSPF6_METRIC_TYPE_T; - config true; - } // END of ospf6RedistDefaultMetric definition. - - leaf ospf6RedistDefaultMetricValue { - - type cml_data_types:CML_UINT32_T { - range "0..16777214"; - } - config true; - } // END of ospf6RedistDefaultMetricValue definition. - - leaf routeMapName { - - type cml_data_types:CML_STRING_T; - config true; - description "default-information originate options"; - } // END of routeMapName definition. - - } // End of ospf6DefaultInformation-list - - list addressFamily { - - - description - "addressFamily"; - - config true; - key "addFamily"; - - - leaf addFamily { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of addFamily definition. - - - list afRangeipv4 { - - - description - "afRangeipv4"; - - config true; - key "areaId"; - - - leaf areaId { - - type cml_data_types:CML_STRING_T; - config true; - } // END of areaId definition. - - - list rangeipv4 { - - - description - "rangeipv4"; - - config true; - key "areaRangeIpv4Addr"; - - - leaf areaRangeIpv4Addr { - - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - description "area range for address-family ipv4"; - } // END of areaRangeIpv4Addr definition. - - leaf ospfAreaRangeStatus { - mandatory true; - type cml_data_types:CML_OSPF6_AREA_RANGE_T; - config true; - } // END of ospfAreaRangeStatus definition. - - } // End of rangeipv4-list - } // End of afRangeipv4-list - - list addressRedistribute { - - - description - "addressRedistribute"; - - config true; - key "ospfRedistProtocol"; - - - leaf ospfRedistProtocol { - - type cml_data_types:CML_OSPF6_AF_ROUTE_SOURCE_TYPE_T; - config true; - description "redistribute for address-family ipv4"; - } // END of ospfRedistProtocol definition. - - leaf ospfRedistMetricType { - - type cml_data_types:CML_OSPF6_METRIC_TYPE_T; - default "2"; - config true; - } // END of ospfRedistMetricType definition. - - leaf ospfRedistMetricValue { - - type cml_data_types:CML_UINT32_T { - range "0..16777214"; - } - default "0"; - config true; - } // END of ospfRedistMetricValue definition. - - leaf ospfRedistTagVal { - - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - default "0"; - config true; - } // END of ospfRedistTagVal definition. - - leaf ospfRouteMapName { - - type cml_data_types:CML_STRING_T; - config true; - description "redistribute options for address-family ipv4"; - } // END of ospfRouteMapName definition. - - } // End of addressRedistribute-list - - list addressRedistributeProc { - - - description - "addressRedistributeProc"; - - config true; - key "sourceOspfTag"; - - - leaf sourceOspfTag { - - type cml_data_types:CML_INT32_T { - range "1..65535"; - } - config true; - description "redistribute ospf for address-family ipv4"; - } // END of sourceOspfTag definition. - - leaf ospfRedistMetricType { - - type cml_data_types:CML_OSPF6_METRIC_TYPE_T; - default "2"; - config true; - } // END of ospfRedistMetricType definition. - - leaf ospfRedistMetricValue { - - type cml_data_types:CML_UINT32_T { - range "0..16777214"; - } - default "0"; - config true; - } // END of ospfRedistMetricValue definition. - - leaf ospfRedistTagVal { - - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - default "0"; - config true; - } // END of ospfRedistTagVal definition. - - leaf ospfRouteMapName { - - type cml_data_types:CML_STRING_T; - config true; - description "redistribute ospf options for address-family ipv4"; - } // END of ospfRouteMapName definition. - - } // End of addressRedistributeProc-list - - list summaryAddressIpv4 { - - - description - "summaryAddressIpv4"; - - config true; - key "summaryIpv4Addr"; - - - leaf summaryIpv4Addr { - - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - description "summary-address for ipv4 address-family"; - } // END of summaryIpv4Addr definition. - - leaf summaryRouteTag { - - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - config true; - description "summary-address with tag for ipv4 address-family"; - } // END of summaryRouteTag definition. - - leaf addressNotMask4len { - - type cml_data_types:CML_BOOL_T; - config true; - description "summary-address with not-advertise for ipv4 address-family"; - } // END of addressNotMask4len definition. - - } // End of summaryAddressIpv4-list - - list ospf6FamilyDefaultInformation { - - - description - "ospf6FamilyDefaultInformation"; - - config true; - key "ospf6FamRedistDefaultOrigin"; - - - leaf ospf6FamRedistDefaultOrigin { - - type cml_data_types:CML_BOOL_T; - config true; - description "default-information originate for address-family ipv4"; - } // END of ospf6FamRedistDefaultOrigin definition. - - leaf ospf6FamRedistDefaultOriginAlways { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6FamRedistDefaultOriginAlways definition. - - leaf ospf6FamRedistDefaultMetric { - - type cml_data_types:CML_OSPF6_METRIC_TYPE_T; - config true; - } // END of ospf6FamRedistDefaultMetric definition. - - leaf ospf6FamRedistDefaultMetricValue { - - type cml_data_types:CML_UINT32_T { - range "0..16777214"; - } - config true; - } // END of ospf6FamRedistDefaultMetricValue definition. - - leaf ospf6FamRouteMapName { - - type cml_data_types:CML_STRING_T; - config true; - description "default-information originate options for address-family ipv4"; - } // END of ospf6FamRouteMapName definition. - - } // End of ospf6FamilyDefaultInformation-list - } // End of addressFamily-list - container distanceTypes { - - config true; - - description - "distanceTypes"; - - leaf intraDistance { - - type cml_data_types:CML_INT32_T { - range "1..254"; - } - default "110"; - config true; - } // END of intraDistance definition. - - leaf interDistance { - - type cml_data_types:CML_INT32_T { - range "1..254"; - } - default "110"; - config true; - } // END of interDistance definition. - - leaf externalDistance { - - type cml_data_types:CML_INT32_T { - range "1..254"; - } - default "110"; - config true; - description "distance ospfv3"; - } // END of externalDistance definition. - - } // END of distanceTypes-container definition. - } // End of ospf6-list - } // END of ospf6-grouping definition. - - - grouping ospf6Interface-grouping { - list ospf6Interface { - - - description - "OSPFv3 interface related operations"; - - config true; - key "ifName"; - - - leaf ifName { - - type cml_data_types:CML_STRING_T; - config true; - } // END of ifName definition. - - leaf isDisable { - - type cml_data_types:CML_INT32_T; - config true; - } // END of isDisable definition. - - leaf bfdDisable { - - type cml_data_types:CML_BOOL_T; - default false; - config true; - } // END of bfdDisable definition. - - - list ospf6IfinstanceId { - - - description - "OSPFv3 instanceId of interface related operations"; - - config true; - key "instanceId"; - - - leaf instanceId { - - type cml_data_types:CML_INT32_T { - range "0..31 | 64..95"; - } - config true; - } // END of instanceId definition. - - leaf ospf6IfType { - - type cml_data_types:CML_OSPF6_NETWORK_T; - config true; - } // END of ospf6IfType definition. - - leaf ospf6IfMultiType { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6IfMultiType definition. - - leaf ospf6IfPriority { - - type cml_data_types:CML_INT32_T { - range "0..255"; - } - default "1"; - config true; - } // END of ospf6IfPriority definition. - - leaf ifMtuIgnore { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ifMtuIgnore definition. - - leaf ospf6IfCost { - - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "10"; - config true; - } // END of ospf6IfCost definition. - - leaf transmitDelay { - - type cml_data_types:CML_UINT32_T { - range "1..1800"; - } - default "1"; - config true; - } // END of transmitDelay definition. - - leaf retransmitInterval { - - type cml_data_types:CML_UINT32_T { - range "1..1800"; - } - default "5"; - config true; - } // END of retransmitInterval definition. - - leaf helloInterval { - - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "10"; - config true; - } // END of helloInterval definition. - - leaf deadInterval { - - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "40"; - config true; - } // END of deadInterval definition. - - leaf ospf6TeMetric { - - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "10"; - config true; - } // END of ospf6TeMetric definition. - - leaf ospf6LsaSuppressionValue { - - type cml_data_types:CML_OSPF6_LSA_SUPRESSION_STATE_T; - default "enable"; - config true; - } // END of ospf6LsaSuppressionValue definition. - - leaf fastRerouteIfSet { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of fastRerouteIfSet definition. - - leaf ifAreaId { - - type cml_data_types:CML_STRING_T; - config true; - } // END of ifAreaId definition. - - leaf ifProcessTag { - - type cml_data_types:CML_STRING_T; - default ""; - config true; - description "ipv6 router ospf"; - } // END of ifProcessTag definition. - - leaf ifProcessTagPresent { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ifProcessTagPresent definition. - - leaf ifState { - - type cml_data_types:CML_STRING_T; - config false; - } // END of ifState definition. - - leaf ifIndex { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of ifIndex definition. - - leaf ipAddr { - - type cml_data_types:CML_STRING_T; - config false; - } // END of ipAddr definition. - - leaf ipLinkLocalAddr { - - type cml_data_types:CML_STRING_T; - config false; - } // END of ipLinkLocalAddr definition. - - leaf ipLinkAddr { - - type cml_data_types:CML_STRING_T; - config false; - } // END of ipLinkAddr definition. - - leaf interfaceProcessTag { - - type cml_data_types:CML_STRING_T; - config false; - } // END of interfaceProcessTag definition. - - leaf interfaceAreaId { - - type cml_data_types:CML_STRING_T; - config false; - } // END of interfaceAreaId definition. - - leaf interfaceRouterId { - - type cml_data_types:CML_STRING_T; - config false; - } // END of interfaceRouterId definition. - - leaf interfaceInstanceId { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of interfaceInstanceId definition. - - leaf stateChange { - - type cml_data_types:CML_STRING_T; - config false; - } // END of stateChange definition. - - leaf neighborCount { - - type cml_data_types:CML_INT32_T; - config false; - } // END of neighborCount definition. - - leaf adjNeighborCount { - - type cml_data_types:CML_INT32_T; - config false; - } // END of adjNeighborCount definition. - - leaf designatedRouterId { - - type cml_data_types:CML_STRING_T; - config false; - } // END of designatedRouterId definition. - - leaf backupDesignatedRouterId { - - type cml_data_types:CML_STRING_T; - config false; - } // END of backupDesignatedRouterId definition. - - leaf interfaceIfType { - - type cml_data_types:CML_STRING_T; - config false; - } // END of interfaceIfType definition. - - leaf interfaceIfCost { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of interfaceIfCost definition. - - leaf interfaceTeMetric { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of interfaceTeMetric definition. - - leaf interfaceTransmitDelay { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of interfaceTransmitDelay definition. - - leaf interfaceFsmState { - - type cml_data_types:CML_STRING_T; - config false; - } // END of interfaceFsmState definition. - - leaf interfaceIfPriority { - - type cml_data_types:CML_INT32_T; - config false; - } // END of interfaceIfPriority definition. - - leaf interfaceHelloInterval { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of interfaceHelloInterval definition. - - leaf interfaceIfPassiveState { - - type cml_data_types:CML_STRING_T; - config false; - } // END of interfaceIfPassiveState definition. - - leaf interfaceDeadInterval { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of interfaceDeadInterval definition. - - leaf interfaceRetransmitInterval { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of interfaceRetransmitInterval definition. - - leaf interfaceHelloDueIn { - - type cml_data_types:CML_STRING_T; - config false; - } // END of interfaceHelloDueIn definition. - - leaf interfaceStateChange { - - type cml_data_types:CML_UINT32_T; - config false; - } // END of interfaceStateChange definition. - - leaf interfaceNeighborCount { - - type cml_data_types:CML_INT32_T; - config false; - } // END of interfaceNeighborCount definition. - - leaf isInterfaceType { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of isInterfaceType definition. - - leaf isIfLoopBackType { - - type cml_data_types:CML_BOOL_T; - config false; - } // END of isIfLoopBackType definition. - - leaf intName { - - type cml_data_types:CML_STRING_T; - config false; - } // END of intName definition. - - - list ospf6InterfaceNbrStatic { - - - description - "ospf6InterfaceNbrStatic"; - - config true; - key "ospf6NeighborAddr"; - - - leaf ospf6NeighborAddr { - - type cml_data_types:CML_IPV6_ADDR_T; - config true; - } // END of ospf6NeighborAddr definition. - - leaf ospf6IfNbrCost { - - type cml_data_types:CML_UINT32_T { - range "1..65535"; - } - default "10"; - config true; - description "ipv6 ospf neighbor cost"; - } // END of ospf6IfNbrCost definition. - - leaf ospf6IfNbrPollInterval { - - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - config true; - description "ipv6 ospf neighbor poll-interval"; - } // END of ospf6IfNbrPollInterval definition. - - leaf ospf6IfNbrPriority { - - type cml_data_types:CML_INT32_T { - range "0..255"; - } - config true; - description "ipv6 ospf neighbor priority"; - } // END of ospf6IfNbrPriority definition. - - } // End of ospf6InterfaceNbrStatic-list - } // End of ospf6IfinstanceId-list - } // End of ospf6Interface-list - } // END of ospf6Interface-grouping definition. - - - grouping ospf6Global-grouping { - list ospf6Global { - - - description - "ospf6Global"; - - config true; - key "vrId"; - - - leaf vrId { - - type cml_data_types:CML_UINT32_T; - config true; - } // END of vrId definition. - - leaf gracePeriod { - - type cml_data_types:CML_INT32_T { - range "1..1800"; - } - default "120"; - config true; - description "ipv6 ospf restart"; - } // END of gracePeriod definition. - - leaf gracefulRestartPlanned { - - type cml_data_types:CML_BOOL_T; - config true; - description "graceful-restart ospfv3 planned-only"; - } // END of gracefulRestartPlanned definition. - - leaf ospf6RouterSingleline { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6RouterSingleline definition. - - leaf ospf6Debug { - - type cml_data_types:CML_OSPF6_DEBUG_T; - config true; - } // END of ospf6Debug definition. - - leaf isDebug { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of isDebug definition. - - leaf ospf6Packet { - - type cml_data_types:CML_OSPF6_DEBUG_PACKET_TYPE_T; - config true; - } // END of ospf6Packet definition. - - leaf ospf6PacketDebug { - - type cml_data_types:CML_BOOL_T; - config true; - } // END of ospf6PacketDebug definition. - - container restartConfig { - - config true; - - description - "restartConfig"; - - leaf never { - - type cml_data_types:CML_BOOL_T; - config true; - description "ipv6 ospf restart helper never"; - } // END of never definition. - - leaf nbrRouterId { - - type cml_data_types:CML_STRING_T; - config true; - description "ipv6 ospf restart helper never router-id"; - } // END of nbrRouterId definition. - - leaf restartAll { - - type cml_data_types:CML_BOOL_T; - config true; - description "ipv6 ospf restart helper never router-id all"; - } // END of restartAll definition. - - } // END of restartConfig-container definition. - container restartAllConfig { - - config true; - - description - "restartAllConfig"; - - leaf onlyReload { - - type cml_data_types:CML_BOOL_T; - config true; - description "ipv6 ospf restart helper only-reload"; - } // END of onlyReload definition. - - leaf onlyUpgrade { - - type cml_data_types:CML_BOOL_T; - config true; - description "ipv6 ospf restart helper only-upgrade"; - } // END of onlyUpgrade definition. - - leaf restartHelperPeriod { - - type cml_data_types:CML_INT32_T { - range "1..1800"; - } - default "120"; - config true; - description "ipv6 ospf restart helper max-grace-period"; - } // END of restartHelperPeriod definition. - - } // END of restartAllConfig-container definition. - } // End of ospf6Global-list - } // END of ospf6Global-grouping definition. - - - grouping ospf6Vrf-grouping { - list ospf6Vrf { - - - description - "Enable an IPv6 VRF routing process"; - - config true; - key "vrId"; - - - leaf vrId { - - type cml_data_types:CML_UINT32_T; - config true; - } // END of vrId definition. - - leaf vrfName { - - type cml_data_types:CML_STRING_T; - config true; - } // END of vrfName definition. - - } // End of ospf6Vrf-list - } // END of ospf6Vrf-grouping definition. - - -} \ No newline at end of file diff --git a/yang-files/ospfv3.yang b/yang-files/ospfv3.yang index 9bb017bb..13860227 100644 --- a/yang-files/ospfv3.yang +++ b/yang-files/ospfv3.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -33,6 +33,18 @@ submodule ospfv3 { "Layer-3 OSPFv3 configurations"; + revision "2017-03-05" { + description "Added implicit_delete for Interface tables."; + } + + revision "2017-02-23" { + description "Updated Summary address APIs."; + } + + revision "2017-02-14" { + description "Updated Runtime attributes."; + } + revision "2016-10-20" { description "Modified according to backend structures."; } @@ -51,12 +63,10 @@ submodule ospfv3 { leaf vrId { type cml_data_types:CML_UINT32_T; - config true; } // END of vrId definition. leaf displaySingleLine { type cml_data_types:CML_BOOL_T; - config true; } // END of displaySingleLine definition. leaf gracePeriod { @@ -64,13 +74,11 @@ submodule ospfv3 { type cml_data_types:CML_UINT16_T { range "1..1800"; } - config true; } // END of gracePeriod definition. leaf restartPlannedOnly { if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_BOOL_T; - config true; } // END of restartPlannedOnly definition. @@ -84,153 +92,155 @@ submodule ospfv3 { leaf ospf6ProcessTag { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "router ipv6 ospf"; } // END of ospf6ProcessTag definition. leaf vrfName { if-feature feature_list:HAVE_VRF_OSPF6; - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of vrfName definition. leaf routerId { type cml_data_types:CML_IPV4_ADDR_T; - config true; } // END of routerId definition. leaf config_frr { if-feature feature_list:HAVE_OSPF6_LFA; type cml_data_types:CML_BOOL_T; - config true; } // END of config_frr definition. leaf abrType { type cml_data_types:CML_OSPF6_ABR_TYPE_T; - config true; } // END of abrType definition. leaf teEnabled { if-feature feature_list:HAVE_OSPF6_TE; type cml_data_types:CML_BOOL_T; - config true; } // END of teEnabled definition. leaf restartMethod { if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_BOOL_T; - config true; } // END of restartMethod definition. leaf dbSummaryOpt { type cml_data_types:CML_BOOL_T; - config true; } // END of dbSummaryOpt definition. leaf bfdEnabled { if-feature feature_list:HAVE_BFD; type cml_data_types:CML_BOOL_T; - config true; } // END of bfdEnabled definition. leaf floodReductionEnabled { if-feature feature_list:HAVE_OSPF6_OD; type cml_data_types:CML_BOOL_T; - config true; } // END of floodReductionEnabled definition. leaf-list passiveIfName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "passive-interface with interface name"; } // END of passiveIfName definition. leaf defaultMetric { type cml_data_types:CML_UINT32_T { range "1..16777214"; } - config true; } // END of defaultMetric definition. leaf minspfDelay { type cml_data_types:CML_UINT32_T { range "0..2147483647"; } - config true; } // END of minspfDelay definition. leaf maxspfDelay { type cml_data_types:CML_UINT32_T { range "0..2147483647"; } - config true; } // END of maxspfDelay definition. leaf minDelay { type cml_data_types:CML_UINT32_T { range "0..2147483647"; } - config true; } // END of minDelay definition. leaf maxDelay { type cml_data_types:CML_UINT32_T { range "0..2147483647"; } - config true; + description "timers spf exp"; } // END of maxDelay definition. leaf refBandwidth { type cml_data_types:CML_UINT32_T { range "1..4294967"; } - config true; } // END of refBandwidth definition. leaf maxConcurrentDd { type cml_data_types:CML_UINT16_T { range "1..65535"; } - config true; } // END of maxConcurrentDd definition. leaf maxUnusePacket { type cml_data_types:CML_UINT32_T { range "0..65535"; } - config true; } // END of maxUnusePacket definition. leaf maxUnuseLsa { type cml_data_types:CML_UINT32_T { range "0..65535"; } - config true; } // END of maxUnuseLsa definition. leaf distanceAll { type cml_data_types:CML_UINT16_T { range "1..254"; } - config true; } // END of distanceAll definition. leaf shutDown { type cml_data_types:CML_BOOL_T; - config true; } // END of shutDown definition. leaf logAdjChanges { type cml_data_types:CML_BOOL_T; - config true; } // END of logAdjChanges definition. leaf logAdjChangesDetail { type cml_data_types:CML_BOOL_T; - config true; } // END of logAdjChangesDetail definition. + leaf ospfv3VersionNumber { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ospfv3VersionNumber definition. + + leaf ospfv3AreaBdrRtrStatus { + type cml_data_types:CML_BOOL_T; + config false; + } // END of ospfv3AreaBdrRtrStatus definition. + + leaf ospfv3ASBdrRtrStatus { + type cml_data_types:CML_BOOL_T; + config false; + } // END of ospfv3ASBdrRtrStatus definition. + leaf processUpTime { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of processUpTime definition. @@ -250,7 +260,9 @@ submodule ospfv3 { } // END of extenalLSACount definition. leaf lsdbChecksum { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of lsdbChecksum definition. @@ -281,7 +293,8 @@ submodule ospfv3 { list frr_pref { - + if-feature feature_list:HAVE_OSPF6_LFA; + description "Keeps user preferences, lower index in the array is higher priority"; @@ -293,13 +306,12 @@ submodule ospfv3 { type cml_data_types:CML_UINT32_T { range "1..4"; } - config true; } // END of frrPrefIndex definition. leaf frrPrefVal { mandatory true; + if-feature feature_list:HAVE_OSPF6_LFA; type cml_data_types:CML_OSPF_FRR_TIE_BREAK_VAL_T; - config true; } // END of frrPrefVal definition. } // End of frr_pref-list @@ -315,14 +327,13 @@ submodule ospfv3 { leaf areaId { type cml_data_types:CML_AREA_T; - config true; } // END of areaId definition. leaf areaDefaultCost { type cml_data_types:CML_UINT32_T { range "0..16777215"; } - config true; + description "area default-cost"; } // END of areaDefaultCost definition. leaf isAreaBackbone { @@ -356,7 +367,9 @@ submodule ospfv3 { } // END of lsaCount definition. leaf lsdbChecksum { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of lsdbChecksum definition. @@ -381,13 +394,13 @@ submodule ospfv3 { leaf vertexlinkId { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of vertexlinkId definition. leaf vertexDistance { type cml_data_types:CML_UINT32_T; - config false; } // END of vertexDistance definition. uses ospf6NextHop; @@ -404,12 +417,11 @@ submodule ospfv3 { leaf rangeAddr { type cml_data_types:CML_IPV6_PREFIX_T; - config true; + description "area range"; } // END of rangeAddr definition. leaf rangeStatus { type cml_data_types:CML_OSPF6_AREA_RANGE_T; - config true; } // END of rangeStatus definition. } // End of areaRangeIPv6-list @@ -425,57 +437,55 @@ submodule ospfv3 { leaf peerId { type cml_data_types:CML_IPV4_ADDR_T; - config true; + description "area virtual-link"; } // END of peerId definition. leaf helloInterval { type cml_data_types:CML_UINT32_T { range "1..65535"; } - config true; } // END of helloInterval definition. leaf deadInterval { type cml_data_types:CML_UINT32_T { range "1..65535"; } - config true; } // END of deadInterval definition. leaf retransmitInterval { type cml_data_types:CML_UINT32_T { range "1..1800"; } - config true; } // END of retransmitInterval definition. leaf transmitDelay { type cml_data_types:CML_UINT32_T { range "1..1800"; } - config true; } // END of transmitDelay definition. leaf fallOverBfd { if-feature feature_list:HAVE_BFD; type cml_data_types:CML_BOOL_T; - config true; } // END of fallOverBfd definition. leaf instanceId { type cml_data_types:CML_UINT32_T { range "0..31 | 64..95"; } - config true; } // END of instanceId definition. leaf vlinkName { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of vlinkName definition. leaf vlinkInterfaceName { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of vlinkInterfaceName definition. @@ -495,27 +505,37 @@ submodule ospfv3 { } // END of vlinkIsDNAEnabled definition. leaf vlinkLocalAddress { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of vlinkLocalAddress definition. leaf vlinkRemoteAddress { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of vlinkRemoteAddress definition. leaf vlinkState { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of vlinkState definition. leaf vlinkHelloDueTime { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of vlinkHelloDueTime definition. leaf vlinkAdjacencyState { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of vlinkAdjacencyState definition. @@ -529,67 +549,59 @@ submodule ospfv3 { leaf isAreaStub { type cml_data_types:CML_BOOL_T; - config true; + description "area stub"; } // END of isAreaStub definition. leaf isAreaStubNoSummary { type cml_data_types:CML_BOOL_T; - config true; + description "area stub no-summary"; } // END of isAreaStubNoSummary definition. leaf isAreaNssa { if-feature feature_list:HAVE_NSSA; type cml_data_types:CML_BOOL_T; - config true; } // END of isAreaNssa definition. leaf translator-role { type cml_data_types:CML_OSPF6_TRANSLATOR_ROLE_T; - config true; } // END of translator-role definition. leaf stability-interval { type cml_data_types:CML_UINT32_T { range "0..2147483647"; } - config true; } // END of stability-interval definition. leaf no-redistribution { type cml_data_types:CML_BOOL_T; - config true; } // END of no-redistribution definition. leaf isAreaNoSummary { type cml_data_types:CML_BOOL_T; - config true; } // END of isAreaNoSummary definition. leaf translatorRole { type cml_data_types:CML_OSPF6_NSSA_TRANSLATOR_ROLE_T; - config true; } // END of translatorRole definition. leaf nssadefaultInformationOriginate { type cml_data_types:CML_BOOL_T; - config true; } // END of nssadefaultInformationOriginate definition. leaf nssaMetric { type cml_data_types:CML_UINT32_T { range "0..16777214"; } - config true; } // END of nssaMetric definition. leaf nssaMetricType { type cml_data_types:CML_OSPF_METRIC_TYPE_T; - config true; } // END of nssaMetricType definition. leaf nssarouteMap { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nssarouteMap definition. } // END of area_table_stub-container definition. @@ -607,7 +619,6 @@ submodule ospfv3 { leaf isAddrFamily { type cml_data_types:CML_BOOL_T; - config true; } // END of isAddrFamily definition. @@ -622,7 +633,6 @@ submodule ospfv3 { leaf areaId { type cml_data_types:CML_AREA_T; - config true; } // END of areaId definition. @@ -636,13 +646,11 @@ submodule ospfv3 { leaf rangeAddrIPV4 { - type cml_data_types:CML_IPV4_PREFIX_T; - config true; + type cml_data_types:CML_IPV4_ADDR_PREFIX_T; } // END of rangeAddrIPV4 definition. leaf rangeStatusIPv4 { type cml_data_types:CML_OSPF6_AREA_RANGE_T; - config true; } // END of rangeStatusIPv4 definition. } // End of areaRangeIPv4-list @@ -659,19 +667,17 @@ submodule ospfv3 { leaf summaryIpv4Addr { type cml_data_types:CML_IPV4_PREFIX_T; - config true; } // END of summaryIpv4Addr definition. leaf setTag { type cml_data_types:CML_UINT32_T { range "0..4294967295"; } - config true; } // END of setTag definition. leaf not-advertise { type cml_data_types:CML_BOOL_T; - config true; + description "summary-address with not-advertise"; } // END of not-advertise definition. } // End of summaryAddressIpv4-list @@ -680,7 +686,8 @@ submodule ospfv3 { } // End of addressFamily-list list distributeList { - + if-feature feature_list:HAVE_ACL; + description "Distribute list for OSPFv3 Protocol"; @@ -689,13 +696,13 @@ submodule ospfv3 { leaf accessListName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of accessListName definition. leaf ospf6DistIn { type cml_data_types:CML_BOOL_T; - config true; } // END of ospf6DistIn definition. @@ -710,7 +717,6 @@ submodule ospfv3 { leaf ospf6distProtocol { type cml_data_types:CML_OSPF6_ROUTE_SOURCE_TYPE_T; - config true; } // END of ospf6distProtocol definition. } // End of distributeListProtocol-list @@ -726,7 +732,6 @@ submodule ospfv3 { leaf ospf6distOspfProtocol { type cml_data_types:CML_OSPF_AREA_ID_T; - config true; } // END of ospf6distOspfProtocol definition. } // End of distributeListOspf-list @@ -743,26 +748,26 @@ submodule ospfv3 { leaf summaryIpv6Addr { type cml_data_types:CML_IPV6_PREFIX_T; - config true; } // END of summaryIpv6Addr definition. leaf all-tag { type cml_data_types:CML_UINT32_T { range "0..4294967295"; } - config true; + default "0"; + description "summary-address with all-tag "; } // END of all-tag definition. leaf not-advertise6 { type cml_data_types:CML_BOOL_T; - config true; } // END of not-advertise6 definition. leaf translate-tag { type cml_data_types:CML_UINT32_T { range "0..4294967295"; } - config true; + default "0"; + description "summary-address with translate-tag"; } // END of translate-tag definition. } // End of summaryAddressIpv6-list @@ -775,13 +780,11 @@ submodule ospfv3 { leaf cspfEnabled { if-feature feature_list:HAVE_OSPF6_CSPF; type cml_data_types:CML_BOOL_T; - config true; } // END of cspfEnabled definition. leaf cspfTieBreak { if-feature feature_list:HAVE_OSPF6_CSPF; type cml_data_types:CML_OSPF6_CSPF_TYPE_T; - config true; } // END of cspfTieBreak definition. leaf cspfDefRetryInterval { @@ -789,7 +792,6 @@ submodule ospfv3 { type cml_data_types:CML_UINT16_T { range "1..3600"; } - config true; } // END of cspfDefRetryInterval definition. } // END of cspf-container definition. @@ -803,27 +805,25 @@ submodule ospfv3 { type cml_data_types:CML_UINT32_T { range "1..254"; } - config true; } // END of distanceIntra definition. leaf distanceInter { type cml_data_types:CML_UINT32_T { range "1..254"; } - config true; } // END of distanceInter definition. leaf distanceExternal { type cml_data_types:CML_UINT32_T { range "1..254"; } - config true; } // END of distanceExternal definition. } // END of distance-container definition. uses redistribute; uses default-information-originate; uses lsdb; + uses Route; } // End of ospf6-list list ospf6Interface { @@ -836,13 +836,13 @@ submodule ospfv3 { leaf ifName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of ifName definition. leaf ifShutDown { type cml_data_types:CML_BOOL_T; - config true; } // END of ifShutDown definition. @@ -859,19 +859,16 @@ submodule ospfv3 { type cml_data_types:CML_INT32_T { range "0..31 | 64..95"; } - config true; } // END of instanceId6 definition. leaf networkType { type cml_data_types:CML_OSPF6_NETWORK_T; - config true; } // END of networkType definition. leaf cost { type cml_data_types:CML_UINT32_T { range "1..65535"; } - config true; } // END of cost definition. leaf teMetric { @@ -879,88 +876,226 @@ submodule ospfv3 { type cml_data_types:CML_UINT32_T { range "1..65535"; } - config true; } // END of teMetric definition. leaf ifHelloInterval { type cml_data_types:CML_UINT32_T { range "1..65535"; } - config true; } // END of ifHelloInterval definition. leaf ifDeadInterval { type cml_data_types:CML_UINT32_T { range "1..65535"; } - config true; } // END of ifDeadInterval definition. leaf ifRetransmitInterval { type cml_data_types:CML_UINT32_T { range "1..1800"; } - config true; } // END of ifRetransmitInterval definition. leaf ifPriority { type cml_data_types:CML_UINT8_T { range "0..255"; } - config true; } // END of ifPriority definition. leaf ifTransmitDelay { type cml_data_types:CML_UINT32_T { range "1..1800"; } - config true; } // END of ifTransmitDelay definition. leaf ifMtuIgnore { type cml_data_types:CML_BOOL_T; - config true; } // END of ifMtuIgnore definition. leaf ifDemandCircuit { if-feature feature_list:HAVE_OSPF6_OD; type cml_data_types:CML_BOOL_T; - config true; } // END of ifDemandCircuit definition. leaf ifFloodReduction { if-feature feature_list:HAVE_OSPF6_OD; type cml_data_types:CML_BOOL_T; - config true; } // END of ifFloodReduction definition. leaf ifFrrDisable { if-feature feature_list:HAVE_OSPF6_LFA; type cml_data_types:CML_BOOL_T; - config true; } // END of ifFrrDisable definition. leaf ifAreaId { type cml_data_types:CML_AREA_T; - config true; } // END of ifAreaId definition. leaf ifTagId { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; } // END of ifTagId definition. leaf ifLinkLsaSuppression { type cml_data_types:CML_OSPF6_LSA_SUPRESSION_STATE_T; - config true; } // END of ifLinkLsaSuppression definition. leaf ifBfdEnable { if-feature feature_list:HAVE_BFD; type cml_data_types:CML_BOOL_T; - config true; } // END of ifBfdEnable definition. + leaf InterfaceLineProtocolState { + type cml_data_types:CML_INTERFACE_ADMIN_STATE_T; + config false; + } // END of InterfaceLineProtocolState definition. + + leaf InterfaceIfIndex { + type cml_data_types:CML_UINT32_T; + config false; + } // END of InterfaceIfIndex definition. + + leaf InterfaceIPV6Address { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of InterfaceIPV6Address definition. + + leaf InterfaceIPV6LinkLocalAddress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of InterfaceIPV6LinkLocalAddress definition. + + leaf Ospfv3ProcessId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of Ospfv3ProcessId definition. + + leaf Ospfv3RouterId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of Ospfv3RouterId definition. + + leaf InterfaceState { + type cml_data_types:CML_OSPF_INTERFACE_STATE_MSG_T; + config false; + } // END of InterfaceState definition. + + leaf DesignatedRouter { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of DesignatedRouter definition. + + leaf DRInterfaceAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of DRInterfaceAddr definition. + + leaf BackUpDesignatedRouter { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of BackUpDesignatedRouter definition. + + leaf BackUpDRInterfaceAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of BackUpDRInterfaceAddr definition. + + leaf HelloDueIn { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of HelloDueIn definition. + + leaf NeighborCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of NeighborCount definition. + + leaf AdjacentNeighborCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of AdjacentNeighborCount definition. + + leaf SuppressHelloCount { + if-feature feature_list:HAVE_OSPF6_OD; + type cml_data_types:CML_UINT32_T; + config false; + } // END of SuppressHelloCount definition. + + leaf HelloReceived { + type cml_data_types:CML_UINT32_T; + config false; + } // END of HelloReceived definition. + + leaf HelloSent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of HelloSent definition. + + leaf DDReceived { + type cml_data_types:CML_UINT32_T; + config false; + } // END of DDReceived definition. + + leaf DDSent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of DDSent definition. + + leaf LSReqReceived { + type cml_data_types:CML_UINT32_T; + config false; + } // END of LSReqReceived definition. + + leaf LSReqSent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of LSReqSent definition. + + leaf LSUpdReceived { + type cml_data_types:CML_UINT32_T; + config false; + } // END of LSUpdReceived definition. + + leaf LSUpdSent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of LSUpdSent definition. + + leaf LSAckReceived { + type cml_data_types:CML_UINT32_T; + config false; + } // END of LSAckReceived definition. + + leaf LSAckSent { + type cml_data_types:CML_UINT32_T; + config false; + } // END of LSAckSent definition. + + leaf LSAckDiscarded { + type cml_data_types:CML_UINT32_T; + config false; + } // END of LSAckDiscarded definition. + list nbrStatic { @@ -973,37 +1108,37 @@ submodule ospfv3 { leaf nbrStaticAddr { type cml_data_types:CML_IPV6_ADDR_T; - config true; } // END of nbrStaticAddr definition. leaf nbrStaticPollInterval { type cml_data_types:CML_UINT32_T { range "0..4294967295"; } - config true; } // END of nbrStaticPollInterval definition. leaf nbrStaticCost { type cml_data_types:CML_UINT32_T { range "1..65535"; } - config true; } // END of nbrStaticCost definition. leaf nbrStaticPriority { type cml_data_types:CML_UINT8_T { - range "1..255"; + range "0..255"; } - config true; } // END of nbrStaticPriority definition. leaf nbrInterfaceState { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of nbrInterfaceState definition. leaf nbrInterfaceDesc { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of nbrInterfaceDesc definition. @@ -1019,88 +1154,91 @@ submodule ospfv3 { leaf nbrRouterId { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nbrRouterId definition. leaf nbrInterfaceAddress { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nbrInterfaceAddress definition. leaf nbrAreaId { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nbrAreaId definition. leaf nbrTimerDump { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nbrTimerDump definition. leaf nbrState { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nbrState definition. leaf nbrStateMessage { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nbrStateMessage definition. leaf nbrStateChange { type cml_data_types:CML_UINT32_T; - config false; } // END of nbrStateChange definition. leaf nbrPriority { type cml_data_types:CML_UINT8_T; - config false; } // END of nbrPriority definition. leaf nbrisHelloSuppressed { type cml_data_types:CML_BOOL_T; - config false; } // END of nbrisHelloSuppressed definition. leaf nbrDRouter { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nbrDRouter definition. leaf nbrBDRouter { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nbrBDRouter definition. leaf nbrOptions { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nbrOptions definition. leaf nbrDeadTimer { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nbrDeadTimer definition. leaf nbrDbSummaryCount { type cml_data_types:CML_UINT32_T; - config false; } // END of nbrDbSummaryCount definition. leaf nbrLsRequestCount { type cml_data_types:CML_UINT32_T; - config false; } // END of nbrLsRequestCount definition. leaf nbrLsRetransmissionCount { type cml_data_types:CML_UINT32_T; - config false; } // END of nbrLsRetransmissionCount definition. leaf nbrBfdEnabled { type cml_data_types:CML_BOOL_T; - config false; } // END of nbrBfdEnabled definition. container asbr { @@ -1141,73 +1279,61 @@ submodule ospfv3 { leaf debugIfsm { type cml_data_types:CML_OSPF6_DEBUG_IFSM_T; default "status"; - config true; } // END of debugIfsm definition. leaf debugNfsm { type cml_data_types:CML_OSPF6_DEBUG_IFSM_T; default "status"; - config true; } // END of debugNfsm definition. leaf debugLsa { type cml_data_types:CML_OSPF6_DEBUG_LSA_T; default "generate"; - config true; } // END of debugLsa definition. leaf debugNsm { type cml_data_types:CML_OSPF6_DEBUG_RIB_T; default "interface"; - config true; } // END of debugNsm definition. leaf debugRib { if-feature feature_list:HAVE_RIBD; type cml_data_types:CML_OSPF6_DEBUG_RIB_T; default "interface"; - config true; } // END of debugRib definition. leaf debugRoute { type cml_data_types:CML_OSPF6_DEBUG_ROUTE_T; default "spf"; - config true; } // END of debugRoute definition. leaf debugRetransmission { type cml_data_types:CML_BOOL_T; default false; - config true; } // END of debugRetransmission definition. leaf debugBfd { if-feature feature_list:HAVE_BFD; type cml_data_types:CML_BOOL_T; - config true; } // END of debugBfd definition. leaf debugAll { type cml_data_types:CML_BOOL_T; - config true; } // END of debugAll definition. leaf debugEvent { type cml_data_types:CML_OSPF6_DEBUG_EVENT_T; default "abr"; - config true; } // END of debugEvent definition. leaf debugPacket { type cml_data_types:CML_OSPF6_DEBUG_PACKET_TYPE_T; - config true; } // END of debugPacket definition. leaf debugLfa { if-feature feature_list:HAVE_OSPF6_LFA; type cml_data_types:CML_BOOL_T; default false; - config true; } // END of debugLfa definition. } // END of ospf6Debug-container definition. @@ -1215,12 +1341,16 @@ submodule ospfv3 { } // END of ospf6_master-grouping definition. grouping lsdb { leaf lsdbIfName { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of lsdbIfName definition. leaf lsdbAreaId { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of lsdbAreaId definition. @@ -1236,7 +1366,6 @@ submodule ospfv3 { leaf lsdbSlotType { type cml_data_types:CML_UINT32_T; - config false; } // END of lsdbSlotType definition. @@ -1250,53 +1379,53 @@ submodule ospfv3 { leaf lsaLinkId { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of lsaLinkId definition. leaf lsaAge { type cml_data_types:CML_UINT32_T; - config false; } // END of lsaAge definition. leaf lsaType { type cml_data_types:CML_UINT32_T; - config false; } // END of lsaType definition. leaf lsaLength { type cml_data_types:CML_UINT32_T; - config false; } // END of lsaLength definition. leaf lsaAdvRouter { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of lsaAdvRouter definition. leaf lsaSeqNum { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of lsaSeqNum definition. leaf lsaCheckSum { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of lsaCheckSum definition. leaf isLsaInterRouter { type cml_data_types:CML_BOOL_T; - config false; } // END of isLsaInterRouter definition. leaf lsaRouterLinkCount { type cml_data_types:CML_UINT32_T; - config false; } // END of lsaRouterLinkCount definition. leaf lsaRefTypeStr { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of lsaRefTypeStr definition. } // End of lsa-list @@ -1314,13 +1443,13 @@ submodule ospfv3 { leaf routeIPV6Prefix { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of routeIPV6Prefix definition. leaf routeDistance { type cml_data_types:CML_UINT8_T; - config false; } // END of routeDistance definition. container ospf6Path { @@ -1330,28 +1459,31 @@ submodule ospfv3 { "OSPFv3 path details for different routes"; leaf pathType { - type cml_data_types:CML_UINT32_T; - config false; + type cml_data_types:CML_OSPF6_PATH_TYPE_T; } // END of pathType definition. leaf pathCode { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of pathCode definition. + leaf pathDiscardConnection { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of pathDiscardConnection definition. + leaf pathCost { type cml_data_types:CML_UINT32_T; - config false; } // END of pathCost definition. leaf pathType2Cost { type cml_data_types:CML_UINT32_T; - config false; } // END of pathType2Cost definition. leaf pathFlags { - type cml_data_types:CML_UINT8_T; - config false; + type cml_data_types:CML_OSPF6_PATH_FLAGS_T; } // END of pathFlags definition. } // END of ospf6Path-container definition. @@ -1370,43 +1502,45 @@ submodule ospfv3 { leaf nextHopAddr { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nextHopAddr definition. leaf nextHopInterfaceName { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nextHopInterfaceName definition. leaf nextHopTransitAreaId { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nextHopTransitAreaId definition. leaf nextHopAreaId { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nextHopAreaId definition. leaf isNextHopConnected { type cml_data_types:CML_BOOL_T; - config false; } // END of isNextHopConnected definition. leaf nextHopIsAreaTransit { type cml_data_types:CML_BOOL_T; - config false; } // END of nextHopIsAreaTransit definition. leaf IsnextHopInvalid { type cml_data_types:CML_BOOL_T; - config false; } // END of IsnextHopInvalid definition. leaf nextHopCode { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of nextHopCode definition. } // End of nextHop-list @@ -1415,7 +1549,6 @@ submodule ospfv3 { leaf restartHelperOnlyReload { if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_BOOL_T; - config true; } // END of restartHelperOnlyReload definition. leaf restartHelperOnlyGracePeriod { @@ -1423,19 +1556,18 @@ submodule ospfv3 { type cml_data_types:CML_UINT16_T { range "1..1800"; } - config true; } // END of restartHelperOnlyGracePeriod definition. leaf restartHelperOnlyUpgrade { if-feature feature_list:HAVE_RESTART; type cml_data_types:CML_BOOL_T; - config true; } // END of restartHelperOnlyUpgrade definition. leaf-list restartHelperRouterId { if-feature feature_list:HAVE_RESTART; - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of restartHelperRouterId definition. } // END of helper definition. @@ -1452,7 +1584,6 @@ submodule ospfv3 { leaf defaultInformationOriginate { type cml_data_types:CML_BOOL_T; - config true; } // END of defaultInformationOriginate definition. container default-information-always { @@ -1463,7 +1594,6 @@ submodule ospfv3 { leaf alwaysSet { type cml_data_types:CML_BOOL_T; - config true; } // END of alwaysSet definition. uses metric-group; @@ -1483,7 +1613,6 @@ submodule ospfv3 { leaf ospf6RedistProtocol { type cml_data_types:CML_OSPF6_ROUTE_SOURCE_TYPE_T; - config true; } // END of ospf6RedistProtocol definition. container redistribute-tag { @@ -1497,7 +1626,6 @@ submodule ospfv3 { range "0..4294967295"; } default "0"; - config true; } // END of ospf6RedistTagVal definition. uses metric-group; @@ -1515,7 +1643,6 @@ submodule ospfv3 { leaf ospf6RedistOspfProtocol { type cml_data_types:CML_OSPF_AREA_ID_T; - config true; } // END of ospf6RedistOspfProtocol definition. container redistribute-tag { @@ -1529,7 +1656,6 @@ submodule ospfv3 { range "0..4294967295"; } default "0"; - config true; } // END of ospf6RedistOspfTagVal definition. uses metric-group; @@ -1541,17 +1667,16 @@ submodule ospfv3 { type cml_data_types:CML_UINT32_T { range "0..16777214"; } - config true; } // END of metric definition. leaf metricType { type cml_data_types:CML_OSPF_METRIC_TYPE_T; - config true; } // END of metricType definition. leaf routeMap { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of routeMap definition. } // END of metric-group definition. diff --git a/yang-files/pbb.yang b/yang-files/pbb.yang new file mode 100644 index 00000000..4fc63ac3 --- /dev/null +++ b/yang-files/pbb.yang @@ -0,0 +1,779 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : pbb.yang +* +*/ + +submodule pbb { + + belongs-to ZebOS { prefix ZebOS; } + include vlan; + include bridge; + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "provider back bone"; + + + revision "2016-10-14" { + description "Revisied on 2016-10-14."; + } + + + + grouping bebBridge-grouping { + list bebBridge { + + description + "bebBridge"; + + config true; + key "vrId"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + } // END of vrId definition. + + leaf bridgeId { + type cml_data_types:CML_BRIDGE_BACKBONE_T; + } // END of bridgeId definition. + + + list nsmMsgVlan { + + description + "nsmMsgVlan"; + + config true; + key "vlanId"; + + + leaf vlanInstOper { + type cml_data_types:CML_VLAN_OPT_TYPE_T; + } // END of vlanInstOper definition. + + leaf vlanId { + type cml_data_types:CML_UINT32_T { + range "2..4094"; + } + } // END of vlanId definition. + + leaf bridgeId { + type cml_data_types:CML_BRIDGE_BACKBONE_T; + } // END of bridgeId definition. + + leaf cindex { + type cml_data_types:CML_UINT16_T; + config false; + } // END of cindex definition. + + leaf flags { + type cml_data_types:CML_UINT16_T; + config false; + } // END of flags definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ifName definition. + + leaf brInstance { + type cml_data_types:CML_UINT16_T; + config false; + } // END of brInstance definition. + + } // End of nsmMsgVlan-list + + list nsmMsgVlanRange { + + description + "nsmMsgVlanRange"; + + config true; + key "vlanStart"; + + + leaf vlanInstOper { + type cml_data_types:CML_VLAN_OPT_TYPE_T; + } // END of vlanInstOper definition. + + leaf vlanStart { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + } // END of vlanStart definition. + + leaf vlanEnd { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + } // END of vlanEnd definition. + + leaf bridgeId { + type cml_data_types:CML_BRIDGE_BACKBONE_T; + } // END of bridgeId definition. + + } // End of nsmMsgVlanRange-list + + list pbbTeInstEntry { + + description + "pbbTeInstEntry"; + + config true; + key "teSid"; + + + leaf teSid { + type cml_data_types:CML_UINT32_T; + } // END of teSid definition. + + leaf teTrunkName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default ""; + } // END of teTrunkName definition. + + leaf tesiState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of tesiState definition. + + leaf tesiRefCount { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of tesiRefCount definition. + + leaf currentEspIndex { + type cml_data_types:CML_UINT32_T; + config false; + } // END of currentEspIndex definition. + + leaf storageType { + type cml_data_types:CML_UINT8_T; + config false; + } // END of storageType definition. + + leaf pbbRowStatus { + type cml_data_types:CML_UINT8_T; + config false; + } // END of pbbRowStatus definition. + + leaf tesiMode { + type cml_data_types:CML_TESI_MODE_T; + } // END of tesiMode definition. + + leaf tesiType { + type cml_data_types:CML_TESI_TYPE_T; + } // END of tesiType definition. + + + list cbpInterface { + if-feature feature_list:HAVE_I_BEB; + + description + "cbpInterface"; + + config true; + key "cbpIfp"; + + + leaf cbpIfp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of cbpIfp definition. + + } // End of cbpInterface-list + container nsmMsgPbbEspPnp { + if-feature feature_list:HAVE_I_BEB; + config true; + + description + "nsmMsgPbbEspPnp"; + + leaf espPnpTesid { + type cml_data_types:CML_UINT32_T; + config false; + } // END of espPnpTesid definition. + + leaf pnpAddDel { + type cml_data_types:CML_PNPADDDEL_T; + } // END of pnpAddDel definition. + + leaf pnpIfindex { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of pnpIfindex definition. + + leaf cbpIfindex { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cbpIfindex definition. + + } // END of nsmMsgPbbEspPnp-container definition. + } // End of pbbTeInstEntry-list + + list bebVlanPort { + + description + "bebVlanPort"; + + config true; + key "pvid"; + + + leaf ifName { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf pvid { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + } // END of pvid definition. + + leaf mode { + type cml_data_types:CML_NSMVLANPORT_MODE_T; + } // END of mode definition. + + leaf subMode { + type cml_data_types:CML_UINT16_T; + config false; + } // END of subMode definition. + + leaf pvlanMode { + type cml_data_types:CML_UINT16_T; + config false; + } // END of pvlanMode definition. + + leaf pvlanConfigured { + type cml_data_types:CML_BOOL_T; + config false; + } // END of pvlanConfigured definition. + + leaf defaultVlanMode { + type cml_data_types:CML_BOOL_T; + config false; + } // END of defaultVlanMode definition. + + leaf vlanStacking { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of vlanStacking definition. + + leaf stackMode { + type cml_data_types:CML_UINT16_T; + config false; + } // END of stackMode definition. + + leaf tagEthtype { + type cml_data_types:CML_UINT16_T; + config false; + } // END of tagEthtype definition. + + leaf flags { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of flags definition. + + leaf config { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of config definition. + + leaf portConfig { + type cml_data_types:CML_UINT16_T; + config false; + } // END of portConfig definition. + + leaf defaultUserPriority { + type cml_data_types:CML_INT32_T; + config false; + } // END of defaultUserPriority definition. + + leaf uniDefaultEvc { + type cml_data_types:CML_INT16_T; + config false; + } // END of uniDefaultEvc definition. + + } // End of bebVlanPort-list + + list svlanId { + + description + "svlanId"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf svlanId { + type cml_data_types:CML_INT16_T { + range "2..4094"; + } + } // END of svlanId definition. + + leaf svlanLow { + type cml_data_types:CML_INT16_T { + range "2..4094"; + } + } // END of svlanLow definition. + + leaf svidHigh { + type cml_data_types:CML_INT16_T { + range "2..4094"; + } + } // END of svidHigh definition. + + leaf svlanInsName { + type cml_data_types:CML_SVLAN_INSTANCE_NAME_T; + } // END of svlanInsName definition. + + leaf serviceType { + type cml_data_types:CML_INT16_T; + config false; + } // END of serviceType definition. + + leaf bundleStatus { + type cml_data_types:CML_INT16_T; + config false; + } // END of bundleStatus definition. + + leaf svlanrefPortNum { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of svlanrefPortNum definition. + + } // End of svlanId-list + container g8031ProtectionGroup { + if-feature feature_list:HAVE_G8031; + config true; + + description + "g8031ProtectionGroup"; + + leaf gbridgeId { + if-feature feature_list:HAVE_G8031; + type cml_data_types:CML_BRIDGE_BACKBONE_T; + } // END of gbridgeId definition. + + leaf ifindexW { + if-feature feature_list:HAVE_G8031; + type cml_data_types:CML_UINT32_T; + } // END of ifindexW definition. + + leaf ifindexP { + if-feature feature_list:HAVE_G8031; + type cml_data_types:CML_UINT32_T; + } // END of ifindexP definition. + + leaf epsId { + if-feature feature_list:HAVE_G8031; + type cml_data_types:CML_UINT32_T; + } // END of epsId definition. + + leaf g8031InstanceId { + if-feature feature_list:HAVE_G8031; + type cml_data_types:CML_UINT32_T; + config false; + } // END of g8031InstanceId definition. + + leaf primaryVidg8031 { + if-feature feature_list:HAVE_G8031; + type cml_data_types:CML_UINT32_T; + config false; + } // END of primaryVidg8031 definition. + + leaf instance { + if-feature feature_list:HAVE_G8031; + type cml_data_types:CML_UINT32_T { + range "1..64"; + } + } // END of instance definition. + + } // END of g8031ProtectionGroup-container definition. + container nsmG8032Ring { + if-feature feature_list:HAVE_G8032; + config true; + + description + "nsmG8032Ring"; + + leaf ringbridgeId { + if-feature feature_list:HAVE_G8032; + type cml_data_types:CML_BRIDGE_BACKBONE_T; + } // END of ringbridgeId definition. + + leaf g8032RingId { + if-feature feature_list:HAVE_G8032; + type cml_data_types:CML_UINT32_T; + } // END of g8032RingId definition. + + leaf ringInstance { + if-feature feature_list:HAVE_G8032; + type cml_data_types:CML_UINT32_T { + range "1..64"; + } + } // END of ringInstance definition. + + leaf ringIfindexE { + if-feature feature_list:HAVE_G8032; + type cml_data_types:CML_UINT32_T; + } // END of ringIfindexE definition. + + leaf ringIfindexW { + if-feature feature_list:HAVE_G8032; + type cml_data_types:CML_UINT32_T; + } // END of ringIfindexW definition. + + leaf primaryvidg8032 { + if-feature feature_list:HAVE_G8032; + type cml_data_types:CML_UINT32_T; + config false; + } // END of primaryvidg8032 definition. + + leaf g8032InstanceId { + if-feature feature_list:HAVE_G8032; + type cml_data_types:CML_UINT32_T; + config false; + } // END of g8032InstanceId definition. + + } // END of nsmG8032Ring-container definition. + } // End of bebBridge-list + } // END of bebBridge-grouping definition. + + + grouping pbbInterface-grouping { + list pbbInterface { + + description + " Group of bridge attribute having interface property"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "interface status"; + } // END of ifName definition. + + + list providerNwBvlan { + + description + "providerNwBvlan"; + + config true; + key "pbbBvid"; + + + leaf pbbBvid { + type cml_data_types:CML_UINT32_T { + range "2..4094"; + } + } // END of pbbBvid definition. + + } // End of providerNwBvlan-list + + list vipTbl { + + description + "vipTbl"; + + config true; + key "srvInsName"; + + + leaf srvInsName { + type cml_data_types:CML_CMBCKBONE_INSTANCE_T; + } // END of srvInsName definition. + + leaf defaultDstBmac { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of defaultDstBmac definition. + + leaf srvType { + type cml_data_types:CML_VIP_TRAFFIC_T; + } // END of srvType definition. + + } // End of vipTbl-list + + list cbpSrvinstTbl { + if-feature feature_list:HAVE_I_BEB; + + description + "cbpSrvinstTbl"; + + config true; + key "cbpInsStart"; + + + leaf cbpInsStart { + type cml_data_types:CML_UINT32_T { + range "1..16777214"; + } + } // END of cbpInsStart definition. + + leaf cbpInsEnd { + type cml_data_types:CML_UINT32_T { + range "1..16777214"; + } + } // END of cbpInsEnd definition. + + leaf bvid { + type cml_data_types:CML_UINT32_T { + range "2..4094"; + } + } // END of bvid definition. + + leaf defaultDstBmac { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of defaultDstBmac definition. + + leaf ptMptType { + type cml_data_types:CML_BOOL_T; + } // END of ptMptType definition. + + leaf localSid { + type cml_data_types:CML_UINT32_T { + range "2..16777214"; + } + } // END of localSid definition. + + leaf edge { + type cml_data_types:CML_UINT8_T; + } // END of edge definition. + + leaf mode { + type cml_data_types:CML_BEB_MODE_T; + default "none"; + } // END of mode definition. + + leaf status { + type cml_data_types:CML_UINT32_T; + config false; + } // END of status definition. + + } // End of cbpSrvinstTbl-list + + list pbbTeInstEntryIf { + if-feature feature_list:HAVE_I_BEB; + + description + "pbbTeInstEntryIf"; + + config true; + key "teSid"; + + + leaf teSid { + type cml_data_types:CML_UINT32_T; + } // END of teSid definition. + + leaf remoteMac { + if-feature feature_list:HAVE_GMPLS; + if-feature feature_list:HAVE_GELS; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of remoteMac definition. + + leaf espVid { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + } // END of espVid definition. + + leaf multicast { + type cml_data_types:CML_BOOL_T; + default false; + } // END of multicast definition. + + leaf mcastRxMac { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mcastRxMac definition. + + leaf egress { + type cml_data_types:CML_BOOL_T; + } // END of egress definition. + + leaf ingress { + type cml_data_types:CML_BOOL_T; + } // END of ingress definition. + + } // End of pbbTeInstEntryIf-list + container pipTbl { + config true; + + description + "pipTbl"; + + leaf pipSrcBmac { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of pipSrcBmac definition. + + leaf pipPortName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of pipPortName definition. + + leaf pipVipMap { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of pipVipMap definition. + + } // END of pipTbl-container definition. + container pbbTeApsGrp { + config true; + + description + "pbbTeApsGrp"; + + leaf apsGrpId { + type cml_data_types:CML_UINT32_T; + } // END of apsGrpId definition. + + leaf instance { + type cml_data_types:CML_UINT32_T; + config false; + } // END of instance definition. + + leaf tesidW { + type cml_data_types:CML_UINT32_T; + } // END of tesidW definition. + + leaf tesidB { + type cml_data_types:CML_UINT32_T; + } // END of tesidB definition. + + leaf storageType { + type cml_data_types:CML_UINT8_T; + config false; + } // END of storageType definition. + + leaf pbbTeApsRowStatus { + type cml_data_types:CML_UINT8_T; + config false; + } // END of pbbTeApsRowStatus definition. + + } // END of pbbTeApsGrp-container definition. + container pbbTeIsid { + config true; + + description + "pbbTeIsid"; + + leaf apsGrpId { + type cml_data_types:CML_UINT32_T; + } // END of apsGrpId definition. + + leaf isidOptType { + type cml_data_types:CML_ASPTEISID_T; + } // END of isidOptType definition. + + leaf teIsid { + type cml_data_types:CML_UINT32_T; + } // END of teIsid definition. + + leaf storageType { + type cml_data_types:CML_UINT8_T; + config false; + } // END of storageType definition. + + leaf pbbTeRowStatus { + type cml_data_types:CML_UINT8_T; + config false; + } // END of pbbTeRowStatus definition. + + } // END of pbbTeIsid-container definition. + container cnpSrvTblKey { + config true; + + description + "cnpSrvTblKey"; + + leaf cnpSid { + type cml_data_types:CML_CNP_INSTANCE_T; + } // END of cnpSid definition. + + leaf icompId { + type cml_data_types:CML_INT32_T; + config false; + } // END of icompId definition. + + leaf icompPortNum { + type cml_data_types:CML_INT32_T; + config false; + } // END of icompPortNum definition. + + leaf refPortNum { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of refPortNum definition. + + } // END of cnpSrvTblKey-container definition. + } // End of pbbInterface-list + } // END of pbbInterface-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/pim.yang b/yang-files/pim.yang new file mode 100644 index 00000000..72ed89c2 --- /dev/null +++ b/yang-files/pim.yang @@ -0,0 +1,87 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : pim.yang +* +*/ + +submodule pim { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + + revision "2017-02-02" { + description "Fix for JIRA-13119 (implicit delete)."; + } + + revision "2017-01-03" { + description "commands supported for both pim ipv4 and ipv6."; + } + + + + grouping pimDebug-grouping { + list pimDebug { + + description + "pimDebug"; + + config true; + key "vrfName"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + leaf debugall { + type cml_data_types:CML_BOOL_T; + description "debug pim all"; + } // END of debugall definition. + + } // End of pimDebug-list + } // END of pimDebug-grouping definition. + + + grouping pimTermDebug-grouping { + list pimTermDebug { + + description + "pimTermDebug"; + + config true; + key "vrfName"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + leaf debugtermall { + type cml_data_types:CML_BOOL_T; + description "debug pim all"; + } // END of debugtermall definition. + + } // End of pimTermDebug-list + } // END of pimTermDebug-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/pim4.yang b/yang-files/pim4.yang new file mode 100644 index 00000000..02c4c78e --- /dev/null +++ b/yang-files/pim4.yang @@ -0,0 +1,2250 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : pim4.yang +* +*/ + +submodule pim4 { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + + revision "2017-02-27" { + description "Removed HAVE_NAMED_ACL flag."; + } + + revision "2017-02-22" { + description "defect fix for JIRA-13743."; + } + + revision "2017-02-11" { + description "Fix for JIRA-13336."; + } + + revision "2017-02-02" { + description "Fix for JIRA-12990 (debug ip pim)."; + } + + revision "2017-01-27" { + description "Added implicit delete tag for anycast-rp objectlist."; + } + + revision "2017-01-03" { + description "Initial version of pim4 datamodel."; + } + + + + grouping pim4Vrf-grouping { + list pim4Vrf { + + description + "pim4Vrf"; + + config true; + key "vrfName"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + leaf registerReachCheckSetFlag { + type cml_data_types:CML_BOOL_T; + description "ip pim register-rp-reachability"; + } // END of registerReachCheckSetFlag definition. + + leaf registerRateLimit { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + description "ip pim register-rate-limit"; + } // END of registerRateLimit definition. + + leaf ignoreRpSet { + type cml_data_types:CML_BOOL_T; + default false; + description "ip pim ignore-rp-set-priority"; + } // END of ignoreRpSet definition. + + leaf bidirEnable { + if-feature feature_list:HAVE_PIM_BIDIR; + type cml_data_types:CML_BOOL_T; + description "ip pim bidir-enable"; + } // END of bidirEnable definition. + + leaf bidirOfferInterval { + if-feature feature_list:HAVE_PIM_BIDIR; + type cml_data_types:CML_INT32_T { + range "1..20000"; + } + default "100"; + } // END of bidirOfferInterval definition. + + leaf bidirIsMsec { + if-feature feature_list:HAVE_PIM_BIDIR; + type cml_data_types:CML_BOOL_T; + description "ip pim bidir-offer-interval"; + } // END of bidirIsMsec definition. + + leaf bidirOfferLimit { + if-feature feature_list:HAVE_PIM_BIDIR; + type cml_data_types:CML_UINT32_T { + range "4..100"; + } + description "ip pim bidir-offer-limit"; + } // END of bidirOfferLimit definition. + + leaf ssmAclDefaultFlag { + type cml_data_types:CML_PIM_SSM_ACL_TYPE_T; + description "ip pim ssm"; + } // END of ssmAclDefaultFlag definition. + + leaf routerId { + type cml_data_types:CML_IPV4_ADDR_T; + description "ip pim router-id"; + } // END of routerId definition. + + leaf ovrd_rp_cnt { + type cml_data_types:CML_UINT32_T; + config false; + description "Count of override configured static RPs"; + } // END of ovrd_rp_cnt definition. + + leaf registerSuppressTime { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + description "ip pim register-suppression"; + } // END of registerSuppressTime definition. + + leaf keepalive { + type cml_data_types:CML_UINT16_T; + config false; + description "SNMP set or get"; + } // END of keepalive definition. + + leaf registerKeepAliveTime { + type cml_data_types:CML_UINT16_T { + range "1..65535"; + } + description "ip pim rp-register-kat"; + } // END of registerKeepAliveTime definition. + + leaf sptFlag { + type cml_data_types:CML_BOOL_T; + } // END of sptFlag definition. + + leaf sptName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip pim spt-threshold"; + } // END of sptName definition. + + leaf sourceAddr { + type cml_data_types:CML_IPV4_ADDR_T; + description "ip pim register-source"; + } // END of sourceAddr definition. + + leaf acceptAclRegisterName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip pim accept-register"; + } // END of acceptAclRegisterName definition. + + leaf checksumFlag { + type cml_data_types:CML_BOOL_T; + } // END of checksumFlag definition. + + leaf chksumAclName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip pim cisco-register-checksum"; + } // END of chksumAclName definition. + + leaf joinPruneTime { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + description "ip pim jp-timer"; + } // END of joinPruneTime definition. + + leaf mrt_counter_xxrp { + type cml_data_types:CML_UINT32_T; + config false; + description "Counters"; + } // END of mrt_counter_xxrp definition. + + leaf mrt_counter_xg { + type cml_data_types:CML_UINT32_T; + config false; + description "Counters"; + } // END of mrt_counter_xg definition. + + leaf mrt_counter_sg { + type cml_data_types:CML_UINT32_T; + config false; + description "Counters"; + } // END of mrt_counter_sg definition. + + leaf mrt_counter_sgrpt { + type cml_data_types:CML_UINT32_T; + config false; + description "Counters"; + } // END of mrt_counter_sgrpt definition. + + leaf mrt_vif_counter_xxrp { + type cml_data_types:CML_UINT32_T; + config false; + description "Counters"; + } // END of mrt_vif_counter_xxrp definition. + + leaf mrt_vif_counter_xg { + type cml_data_types:CML_UINT32_T; + config false; + description "Counters"; + } // END of mrt_vif_counter_xg definition. + + leaf mrt_vif_counter_sg { + type cml_data_types:CML_UINT32_T; + config false; + description "Counters"; + } // END of mrt_vif_counter_sg definition. + + leaf mrt_vif_counter_sgrpt { + type cml_data_types:CML_UINT32_T; + config false; + description "Counters"; + } // END of mrt_vif_counter_sgrpt definition. + + leaf pim_out_asserts { + if-feature feature_list:HAVE_SNMP; + type cml_data_types:CML_UINT32_T; + config false; + description "SNMP out assert"; + } // END of pim_out_asserts definition. + + leaf pim_in_asserts { + if-feature feature_list:HAVE_SNMP; + type cml_data_types:CML_UINT32_T; + config false; + description "SNMP in assert"; + } // END of pim_in_asserts definition. + + + list pimreg { + + description + "Register State (at the DR)"; + + config false; + key "regSgPrefix"; + + + leaf regSgPrefix { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Owning MRT entry"; + } // END of regSgPrefix definition. + + leaf regState { + type cml_data_types:CML_UINT8_T; + description "Register state"; + } // END of regState definition. + + leaf regLastRp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Register Stop timer"; + } // END of regLastRp definition. + + leaf regCurrPkt { + type cml_data_types:CML_UINT32_T; + description "Register rate limiting"; + } // END of regCurrPkt definition. + + } // End of pimreg-list + + list ecmpbundle { + if-feature feature_list:HAVE_PIM_ECMP_REDIRECT; + + description + "ecmpbundle"; + + config true; + key "bundleName"; + + + leaf bundleName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip pim ecmp-bundle"; + } // END of bundleName definition. + + container viflist { + config false; + + description + "viflist"; + + leaf ecmpcurnumblks { + type cml_data_types:CML_UINT32_T; + description "Number of blocks"; + } // END of ecmpcurnumblks definition. + + leaf ecmpbitmapblk { + type cml_data_types:CML_UINT32_T; + description "points to the map"; + } // END of ecmpbitmapblk definition. + + } // END of viflist-container definition. + } // End of ecmpbundle-list + + list pimNexthop { + + description + "PIM nexthop cache"; + + config false; + key "nexthopDestinationAddress"; + + + leaf nexthopDestinationAddress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Owning route node"; + } // END of nexthopDestinationAddress definition. + + leaf nexthopDestType { + type cml_data_types:CML_UINT32_T; + description "Nexthop Status Flags"; + } // END of nexthopDestType definition. + + leaf nheSize { + type cml_data_types:CML_UINT32_T; + description "Nexthop entries"; + } // END of nheSize definition. + + leaf nexthopPreference { + type cml_data_types:CML_UINT32_T; + description "Mcast nexthop reference counter"; + } // END of nexthopPreference definition. + + leaf nexthopMetric { + type cml_data_types:CML_UINT32_T; + description "Metric associated with this next hop"; + } // END of nexthopMetric definition. + + leaf nexthopReferenceCount { + type cml_data_types:CML_UINT32_T; + description "Preference"; + } // END of nexthopReferenceCount definition. + + leaf nexthopRouteType { + type cml_data_types:CML_UINT8_T; + description "Route type of the RPF check route"; + } // END of nexthopRouteType definition. + + leaf nexthopRoutesubType { + type cml_data_types:CML_UINT8_T; + description "iBGP/eBGP used by MSDP"; + } // END of nexthopRoutesubType definition. + + leaf nexthopprefixlen { + type cml_data_types:CML_UINT8_T; + description "Prefix length of the RPF check route"; + } // END of nexthopprefixlen definition. + + leaf nexthopsafi { + if-feature feature_list:HAVE_SNMP; + type cml_data_types:CML_UINT8_T; + description "SAFI"; + } // END of nexthopsafi definition. + + leaf nexthopAddress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nexthopAddress definition. + + leaf nexthopifIndex { + type cml_data_types:CML_UINT32_T; + } // END of nexthopifIndex definition. + + leaf nexthopName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nexthopName definition. + + + list nexthop { + + description + "nhe_list"; + + config false; + key "nhgateipv4"; + + + leaf nhtype { + type cml_data_types:CML_UINT8_T; + } // END of nhtype definition. + + leaf nhflags { + type cml_data_types:CML_UINT16_T; + } // END of nhflags definition. + + leaf nhsnmproutetype { + type cml_data_types:CML_UINT8_T; + } // END of nhsnmproutetype definition. + + leaf nhractivenexthop { + type cml_data_types:CML_UINT8_T; + } // END of nhractivenexthop definition. + + leaf nhrtype { + type cml_data_types:CML_UINT8_T; + } // END of nhrtype definition. + + leaf nhrifindex { + type cml_data_types:CML_UINT8_T; + } // END of nhrifindex definition. + + leaf nhifindex { + type cml_data_types:CML_UINT8_T; + } // END of nhifindex definition. + + leaf nhbfdifindex { + type cml_data_types:CML_UINT8_T; + } // END of nhbfdifindex definition. + + leaf nhifname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nhifname definition. + + leaf nhgateipv4 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nhgateipv4 definition. + + leaf nhgateipv6 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nhgateipv6 definition. + + } // End of nexthop-list + container bgpmsgipv4route { + if-feature feature_list:HAVE_PIM_MSDP; + config false; + + description + "Will have BGP info to reach the address"; + + leaf bgpprefix { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpprefix definition. + + leaf bgpprefixlen { + type cml_data_types:CML_UINT8_T; + } // END of bgpprefixlen definition. + + leaf bgppeeraddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgppeeraddr definition. + + leaf bgpifindex { + type cml_data_types:CML_UINT8_T; + } // END of bgpifindex definition. + + leaf bgpnextHopaddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bgpnextHopaddr definition. + + leaf bgpascount { + type cml_data_types:CML_UINT32_T; + } // END of bgpascount definition. + + leaf bgpaspath { + type cml_data_types:CML_UINT8_T; + } // END of bgpaspath definition. + + } // END of bgpmsgipv4route-container definition. + } // End of pimNexthop-list + + list pimMrt { + + description + "Mode independent top-level MRT structure"; + + config false; + key "mrtprefixsg"; + + + leaf mrtprefixsg { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtprefixsg definition. + + leaf mrtprefixlen { + type cml_data_types:CML_UINT32_T; + } // END of mrtprefixlen definition. + + leaf mrtmode { + type cml_data_types:CML_UINT8_T; + } // END of mrtmode definition. + + leaf mrttype { + type cml_data_types:CML_UINT8_T; + } // END of mrttype definition. + + leaf mrtflags { + type cml_data_types:CML_UINT32_T; + } // END of mrtflags definition. + + leaf mrtuptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtuptime definition. + + leaf mrtnhaddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtnhaddr definition. + + leaf mrtnhifname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtnhifname definition. + + leaf mrtlastrp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtlastrp definition. + + leaf mrtjoinedOlist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtjoinedOlist definition. + + leaf mrtinheritedOlist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtinheritedOlist definition. + + leaf mrtprunedOlist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtprunedOlist definition. + + leaf mrtlocalOlist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtlocalOlist definition. + + leaf mrtsptswitch { + type cml_data_types:CML_BOOL_T; + } // END of mrtsptswitch definition. + + leaf mrtOlist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtOlist definition. + + container pimmrtusstatexxrp { + config false; + + description + "Upstream (*,*,RP) state"; + + leaf mrtusstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtusstate definition. + + leaf mrtusJttimer { + type cml_data_types:CML_UINT32_T; + description "Join or Prune timer"; + } // END of mrtusJttimer definition. + + leaf mrtusLastRpfNbrAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Last RPF neighbor"; + } // END of mrtusLastRpfNbrAddr definition. + + leaf mrtusLastRpNextHopAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Last MRIB.nexthop(RP) Used to generate MRIB.nexthop(RP) changes"; + } // END of mrtusLastRpNextHopAddr definition. + + } // END of pimmrtusstatexxrp-container definition. + container pimmrtusstatexg { + config false; + + description + "Upstream (*,G) state"; + + leaf mrtusxgstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtusxgstate definition. + + leaf mrtusxgJttimer { + type cml_data_types:CML_UINT32_T; + description "Join or Prune timer"; + } // END of mrtusxgJttimer definition. + + leaf mrtusxglastrpfnbraddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Last RPF neighbor"; + } // END of mrtusxglastrpfnbraddr definition. + + leaf mrtusxgKatTimer { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "(*,G) Keepalive timer"; + } // END of mrtusxgKatTimer definition. + + leaf mrtusxgrpusVifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "This vif should always be in the olist. Also can't depend on last_rpf_nbr"; + } // END of mrtusxgrpusVifName definition. + + leaf mrtusxgrpusVifId { + type cml_data_types:CML_INT32_T; + description "This vif should always be in the olist. Also can't depend on last_rpf_nbr"; + } // END of mrtusxgrpusVifId definition. + + } // END of pimmrtusstatexg-container definition. + } // End of pimMrt-list + + list pimmrtfcr { + + description + "The per-source S Forwarding Record in the (*,G) state"; + + config false; + key "mrtfcraddr"; + + + leaf mrtfcraddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Address of the source S"; + } // END of mrtfcraddr definition. + + leaf mrtfcrkat { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "KAT timer for FCR"; + } // END of mrtfcrkat definition. + + leaf mrtfcrinheritedOlist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "inherited_olist for each FCR in the (*,G) state"; + } // END of mrtfcrinheritedOlist definition. + + } // End of pimmrtfcr-list + + list staticconf { + + description + "List of static RP configuration"; + + config true; + key "staticRpAddr"; + + + leaf staticRpAddr { + type cml_data_types:CML_IPV4_ADDR_T; + description "ip pim rp-address"; + } // END of staticRpAddr definition. + + leaf staticAccessListName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of staticAccessListName definition. + + leaf overrideFlag { + type cml_data_types:CML_BOOL_T; + default false; + } // END of overrideFlag definition. + + leaf bidirFlag { + if-feature feature_list:HAVE_PIM_BIDIR; + type cml_data_types:CML_BOOL_T; + description "ip pim rp-address"; + } // END of bidirFlag definition. + + } // End of staticconf-list + + list rpset { + + description + "PIM static RP tree"; + + config false; + key "rpGrp"; + + + leaf rpGrp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Group Range Address."; + } // END of rpGrp definition. + + leaf rpFlags { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Flags"; + } // END of rpFlags definition. + + leaf rpfragmentTag { + type cml_data_types:CML_UINT16_T; + description "BSM fragment tag"; + } // END of rpfragmentTag definition. + + leaf rpnumRp { + type cml_data_types:CML_UINT32_T; + description "Number of RPs in this RP set"; + } // END of rpnumRp definition. + + leaf rpsetExptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of rpsetExptime definition. + + } // End of rpset-list + + list anycastrp { + + description + "Anycast-rp structure"; + + config true; + key "anycastRendezvousPointAddr"; + + + leaf anycastRendezvousPointAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of anycastRendezvousPointAddr definition. + + leaf anycastFlag { + type cml_data_types:CML_UINT32_T; + config false; + description "Flags"; + } // END of anycastFlag definition. + + + list anycastrpmem { + + description + "Anycast-rp structure"; + + config true; + key "memberRendezvousPointAddr"; + + + leaf memberRendezvousPointAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip pim anycast-rp"; + } // END of memberRendezvousPointAddr definition. + + } // End of anycastrpmem-list + + list anycastmemberrp { + + description + "member_rp"; + + config false; + key "memberRpAddr"; + + + leaf memberRpAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Member address"; + } // END of memberRpAddr definition. + + leaf memberFlag { + type cml_data_types:CML_UINT32_T; + description "Flags"; + } // END of memberFlag definition. + + } // End of anycastmemberrp-list + } // End of anycastrp-list + + list rpinfo { + + description + "Route table of PIM Bidir"; + + config false; + key "RpinfoAddr"; + + + leaf RpinfoAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of RpinfoAddr definition. + + leaf dfelectionreferencecount { + type cml_data_types:CML_INT32_T; + } // END of dfelectionreferencecount definition. + + } // End of rpinfo-list + + list denseMember { + if-feature feature_list:HAVE_PIM_SMDM; + + description + "To configure explicit dense member"; + + config true; + key "denseGrp"; + + + leaf denseGrp { + type cml_data_types:CML_IPV4_ADDR_T; + description "ip pim dense-group"; + } // END of denseGrp definition. + + } // End of denseMember-list + container pimstat { + config false; + + description + "pimstat"; + + leaf join_sent { + type cml_data_types:CML_UINT32_T; + } // END of join_sent definition. + + leaf join_rcvd { + type cml_data_types:CML_UINT32_T; + } // END of join_rcvd definition. + + leaf reg_pkt_rcvd { + type cml_data_types:CML_UINT32_T; + } // END of reg_pkt_rcvd definition. + + leaf reg_null_rcvd { + type cml_data_types:CML_UINT32_T; + } // END of reg_null_rcvd definition. + + leaf regstop_sent { + type cml_data_types:CML_UINT32_T; + } // END of regstop_sent definition. + + leaf regstop_rcvd { + type cml_data_types:CML_UINT32_T; + } // END of regstop_rcvd definition. + + } // END of pimstat-container definition. + container pimlastassert { + config false; + + description + "SNMP"; + + leaf ifindex { + type cml_data_types:CML_UINT32_T; + description "Interface index"; + } // END of ifindex definition. + + leaf group { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of group definition. + + leaf source { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of source definition. + + } // END of pimlastassert-container definition. + container pimtrapobjects { + config false; + + description + "SNMP"; + + leaf nbr_loss_trap_period { + type cml_data_types:CML_UINT32_T; + } // END of nbr_loss_trap_period definition. + + leaf nbr_loss_count { + type cml_data_types:CML_UINT32_T; + } // END of nbr_loss_count definition. + + leaf invalid_reg_trap_period { + type cml_data_types:CML_UINT32_T; + } // END of invalid_reg_trap_period definition. + + leaf invalid_reg_msgs_rcvd { + type cml_data_types:CML_UINT32_T; + } // END of invalid_reg_msgs_rcvd definition. + + leaf invalid_reg_origin { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of invalid_reg_origin definition. + + leaf invalid_reg_group { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of invalid_reg_group definition. + + leaf invalid_reg_rp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of invalid_reg_rp definition. + + leaf invalid_join_prune_trap_period { + type cml_data_types:CML_UINT32_T; + } // END of invalid_join_prune_trap_period definition. + + leaf invalid_join_prune_msgs_rcvd { + type cml_data_types:CML_UINT32_T; + } // END of invalid_join_prune_msgs_rcvd definition. + + leaf invalid_join_prune_origin { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of invalid_join_prune_origin definition. + + leaf invalid_join_prune_group { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of invalid_join_prune_group definition. + + leaf invalid_join_prune_rp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of invalid_join_prune_rp definition. + + leaf rp_mapping_trap_period { + type cml_data_types:CML_UINT32_T; + } // END of rp_mapping_trap_period definition. + + leaf rp_mapping_change_count { + type cml_data_types:CML_UINT32_T; + } // END of rp_mapping_change_count definition. + + leaf interface_election_trap_period { + type cml_data_types:CML_UINT32_T; + } // END of interface_election_trap_period definition. + + leaf interface_election_win_count { + type cml_data_types:CML_UINT32_T; + } // END of interface_election_win_count definition. + + leaf invalid_join_prune_grp_mode { + type cml_data_types:CML_UINT8_T; + } // END of invalid_join_prune_grp_mode definition. + + } // END of pimtrapobjects-container definition. + container iamDrList { + config false; + + description + "Bitmap: bit is set if I am DR on the vif"; + + leaf curnumblks { + type cml_data_types:CML_UINT32_T; + description "Number of blocks"; + } // END of curnumblks definition. + + leaf bitmapblk { + type cml_data_types:CML_UINT32_T; + description "points to the map"; + } // END of bitmapblk definition. + + } // END of iamDrList-container definition. + container msdp { + config true; + + description + "Handle the PIM MSDP API layer which will interact with the external MSDP daemon"; + + leaf cflags { + type cml_data_types:CML_UINT32_T; + config false; + } // END of cflags definition. + + leaf cifname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Originator-id"; + } // END of cifname definition. + + leaf saeCount { + type cml_data_types:CML_UINT32_T; + config false; + description "SAE count"; + } // END of saeCount definition. + + + list saCache { + + description + "SA-CACHE"; + + config true; + key "msdpsrcAddr"; + + + leaf msdpsrcAddr { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of msdpsrcAddr definition. + + leaf msdpgrpAddr { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + } // END of msdpgrpAddr definition. + + leaf msdpRpAddr { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_T; + } // END of msdpRpAddr definition. + + } // End of saCache-list + + list msdpsacacheentry { + + description + "SA-CACHE"; + + config false; + key "sarpAddr"; + + + leaf sarpAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "RP addr"; + } // END of sarpAddr definition. + + leaf sarpfpeer { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The RPF peer which advertised this entry"; + } // END of sarpfpeer definition. + + leaf sarpflags { + type cml_data_types:CML_UINT32_T; + } // END of sarpflags definition. + + leaf sarpuptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Uptime"; + } // END of sarpuptime definition. + + leaf sarpforwardcount { + type cml_data_types:CML_UINT8_T; + description "Prvent cache storms. The RP,S,G entry will be forwarded only twice in a SA Advertisement interval"; + } // END of sarpforwardcount definition. + + } // End of msdpsacacheentry-list + + list msdpPeer { + + description + "List of MSDP peers"; + + config true; + key "PeerAddr"; + + + leaf PeerAddr { + type cml_data_types:CML_IPV4_ADDR_T; + description "Peer ipv4 address"; + } // END of PeerAddr definition. + + leaf connectSrc { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of connectSrc definition. + + leaf msdppassword { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of msdppassword definition. + + leaf meshGrpName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Group name"; + } // END of meshGrpName definition. + + leaf prefixList { + type cml_data_types:CML_MSDP_DEFAULT_PREFIX_T; + } // END of prefixList definition. + + leaf defaultPeerAddr { + type cml_data_types:CML_BOOL_T; + description "Peer ipv4 address"; + } // END of defaultPeerAddr definition. + + leaf Peermeshgrpname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description " Mesh group name"; + } // END of Peermeshgrpname definition. + + leaf peerflags { + type cml_data_types:CML_UINT32_T; + config false; + } // END of peerflags definition. + + leaf peerasno { + type cml_data_types:CML_UINT32_T; + config false; + description "AS no from BGP. First time rpf_check logic will initiate a query"; + } // END of peerasno definition. + + leaf connretrycount { + type cml_data_types:CML_UINT32_T; + config false; + description "MSDP Peer FSM ConnectRetryCounter"; + } // END of connretrycount definition. + + leaf sockport { + type cml_data_types:CML_UINT32_T; + config false; + description "MSDP Peer Port Number"; + } // END of sockport definition. + + leaf peerrole { + type cml_data_types:CML_UINT32_T; + config false; + description "Active or Passive role"; + } // END of peerrole definition. + + leaf peerstate { + type cml_data_types:CML_UINT32_T; + config false; + description "State of current session"; + } // END of peerstate definition. + + leaf peeroldstate { + type cml_data_types:CML_UINT32_T; + config false; + description "State of current session"; + } // END of peeroldstate definition. + + leaf peerdesc { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Description of the peer"; + } // END of peerdesc definition. + + leaf peerhost { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Printable address of the peer"; + } // END of peerhost definition. + + leaf peerupdateIf { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of peerupdateIf definition. + + leaf peerversion { + type cml_data_types:CML_UINT8_T; + config false; + description "Peer BGP version"; + } // END of peerversion definition. + + leaf peerkeepalivein { + type cml_data_types:CML_UINT32_T; + config false; + description "Keepalive input count"; + } // END of peerkeepalivein definition. + + leaf peerkeepaliveout { + type cml_data_types:CML_UINT32_T; + config false; + description "Keepalive output count"; + } // END of peerkeepaliveout definition. + + leaf peerpasswdType { + type cml_data_types:CML_UINT8_T; + config false; + description "MSDP peer MD5 authentication setting"; + } // END of peerpasswdType definition. + + container peernotifyinfo { + config false; + + description + "MSDP Peer Notification Information"; + + leaf peernoterrcode { + type cml_data_types:CML_UINT16_T; + } // END of peernoterrcode definition. + + leaf peernoterrsubode { + type cml_data_types:CML_UINT16_T; + } // END of peernoterrsubode definition. + + leaf peernoterrdirsent { + type cml_data_types:CML_UINT16_T; + } // END of peernoterrdirsent definition. + + leaf peernoterrdlen { + type cml_data_types:CML_UINT32_T; + } // END of peernoterrdlen definition. + + leaf peernoterrdata { + type cml_data_types:CML_UINT8_T; + } // END of peernoterrdata definition. + + } // END of peernotifyinfo-container definition. + } // End of msdpPeer-list + } // END of msdp-container definition. + container pimmrtusstatesg { + config false; + + description + " Upstream (S,G) state"; + + leaf mrtussgstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtussgstate definition. + + leaf mrtussgJttimer { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Join or Prune timer"; + } // END of mrtussgJttimer definition. + + leaf mrtussglastrpfnbraddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Last RPF neighbor"; + } // END of mrtussglastrpfnbraddr definition. + + leaf mrtussgKatTimer { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "(*,G) Keepalive timer"; + } // END of mrtussgKatTimer definition. + + leaf mrtussgsptBit { + type cml_data_types:CML_BOOL_T; + description "SPT bit"; + } // END of mrtussgsptBit definition. + + leaf mrtussgKatPeriod { + type cml_data_types:CML_UINT16_T; + description "(S,G) Keepalive perioed"; + } // END of mrtussgKatPeriod definition. + + } // END of pimmrtusstatesg-container definition. + container pimmrtusstatesgrpt { + config false; + + description + "Upstream (S,G,rpt) state"; + + leaf mrtussgrptstate { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrtussgrptstate definition. + + leaf mrtussgrptOttimer { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "(S,G,rpt) Override timer"; + } // END of mrtussgrptOttimer definition. + + } // END of pimmrtusstatesgrpt-container definition. + container pimbsr { + config true; + + description + "BSR and C-RP information"; + + leaf bsrRole { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Role"; + } // END of bsrRole definition. + + leaf bsrState { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of bsrState definition. + + leaf bsrInteropSet { + type cml_data_types:CML_BOOL_T; + } // END of bsrInteropSet definition. + + leaf bsrifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + description "ip pim bsr-candidate"; + } // END of bsrifName definition. + + leaf hashMask { + type cml_data_types:CML_UINT8_T { + range "0..32"; + } + description "ip pim bsr-candidate"; + } // END of hashMask definition. + + leaf candidatePriority { + type cml_data_types:CML_UINT8_T { + range "0..255"; + } + description "ip pim bsr-candidate"; + } // END of candidatePriority definition. + + leaf bsrAddress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Bootstrap router's IP address"; + } // END of bsrAddress definition. + + leaf myHashMasklen { + type cml_data_types:CML_UINT32_T; + config false; + description "My configured hash mask length"; + } // END of myHashMasklen definition. + + leaf bsrPriority { + type cml_data_types:CML_UINT32_T; + config false; + description "Higher value is higher priority"; + } // END of bsrPriority definition. + + leaf bsrUpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Uptime"; + } // END of bsrUpTime definition. + + leaf bsrExpiryTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Expirytime"; + } // END of bsrExpiryTime definition. + + + list pimrpset { + + description + "Group tree for RP Set"; + + config false; + key "bsrrpgrp"; + + + leaf bsrrpgrp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Group Range Address"; + } // END of bsrrpgrp definition. + + leaf bsrFlags { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Flags"; + } // END of bsrFlags definition. + + leaf bsrFragmentTag { + type cml_data_types:CML_UINT16_T; + description "BSM fragment tag"; + } // END of bsrFragmentTag definition. + + leaf bsrnumRp { + type cml_data_types:CML_UINT32_T; + description "Number of RPs in this RP set"; + } // END of bsrnumRp definition. + + leaf bsrrpsetExptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bsrrpsetExptime definition. + + + list pimrp { + + description + "Pointer to the beginning of RP list"; + + config false; + key "rpAddr"; + + + leaf rpAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Address of RP"; + } // END of rpAddr definition. + + leaf rpFrom { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "From"; + } // END of rpFrom definition. + + leaf rpMode { + type cml_data_types:CML_UINT8_T; + description "PIM Mode"; + } // END of rpMode definition. + + leaf rpType { + type cml_data_types:CML_UINT32_T; + description "Type of RP entry"; + } // END of rpType definition. + + leaf rpFlags { + type cml_data_types:CML_UINT32_T; + description "Flags"; + } // END of rpFlags definition. + + leaf rpPriority { + type cml_data_types:CML_UINT32_T; + description "Priority"; + } // END of rpPriority definition. + + leaf rpHoldTime { + type cml_data_types:CML_UINT16_T; + description "HoldTime"; + } // END of rpHoldTime definition. + + leaf rpUptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "UPtime"; + } // END of rpUptime definition. + + leaf rpExptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ExpireTime"; + } // END of rpExptime definition. + + leaf rpRefCnt { + type cml_data_types:CML_INT32_T; + description "Reference count for embedded RP"; + } // END of rpRefCnt definition. + + } // End of pimrp-list + } // End of pimrpset-list + + list pimcrp { + + description + "List of C-RPs"; + + config true; + key "rpifName"; + + + leaf rpifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of rpifName definition. + + leaf rpbidirFlag { + if-feature feature_list:HAVE_PIM_BIDIR; + type cml_data_types:CML_BOOL_T; + default true; + } // END of rpbidirFlag definition. + + leaf groupAccessCtrlListName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of groupAccessCtrlListName definition. + + leaf candidateAdvertiseInterval { + type cml_data_types:CML_INT32_T { + range "1..16383"; + } + } // END of candidateAdvertiseInterval definition. + + leaf rendezvousPointCandidatePriority { + type cml_data_types:CML_INT32_T { + range "0..255"; + } + description "ip pim rp-candidate"; + } // END of rendezvousPointCandidatePriority definition. + + leaf bsrCandidateRpAddress { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "C-RP address"; + } // END of bsrCandidateRpAddress definition. + + leaf bsrdirConfig { + type cml_data_types:CML_UINT8_T; + config false; + description "CRP configuration"; + } // END of bsrdirConfig definition. + + leaf bsrdirmode { + type cml_data_types:CML_UINT8_T; + config false; + description "Enable or Disable.Used by SNMP for RowStatus"; + } // END of bsrdirmode definition. + + leaf bsrAdvertisementInterval { + type cml_data_types:CML_UINT32_T; + config false; + description "C-RP Advertisement interval"; + } // END of bsrAdvertisementInterval definition. + + leaf bsrcrpHoldtime { + type cml_data_types:CML_UINT16_T; + config false; + description "C-RP holdtime"; + } // END of bsrcrpHoldtime definition. + + leaf bsrcrpExpTime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description " C-RP expire time"; + } // END of bsrcrpExpTime definition. + + leaf bsrnumgrprange { + type cml_data_types:CML_UINT16_T; + config false; + description "C-RP holdtime"; + } // END of bsrnumgrprange definition. + + leaf bsrcrpbackoffcnt { + type cml_data_types:CML_UINT8_T; + config false; + description "Backoff cnt"; + } // END of bsrcrpbackoffcnt definition. + + + list crpgrprng { + + description + "Route table of grp_range"; + + config false; + key "bsrcrpPrefix"; + + + leaf bsrcrpPrefix { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Group Range prefix"; + } // END of bsrcrpPrefix definition. + + } // End of crpgrprng-list + } // End of pimcrp-list + } // END of pimbsr-container definition. + } // End of pim4Vrf-list + } // END of pim4Vrf-grouping definition. + + + grouping pim4Interface-grouping { + list pim4Interface { + + description + "pim4Interface"; + + config true; + key "ifName"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + default "0"; + description "VR ID of the VR"; + } // END of vrId definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf vifMode { + type cml_data_types:CML_PIM_MODE_TYPE_T; + description "ip pim"; + } // END of vifMode definition. + + leaf if_index { + type cml_data_types:CML_INT32_T; + config false; + description "VIF index When this index is negative, VIF is not yet registered"; + } // END of if_index definition. + + leaf if_config { + type cml_data_types:CML_UINT32_T; + config false; + description "Configure"; + } // END of if_config definition. + + leaf if_flags { + type cml_data_types:CML_UINT32_T; + config false; + description "Flags"; + } // END of if_flags definition. + + leaf vifExcludeGenIdSetFlag { + type cml_data_types:CML_BOOL_T; + default false; + description "ip pim exclude-genid"; + } // END of vifExcludeGenIdSetFlag definition. + + leaf vifBootstrapRouterBorderFlag { + type cml_data_types:CML_BOOL_T; + default false; + description "ip pim bsr-border"; + } // END of vifBootstrapRouterBorderFlag definition. + + leaf vifUnicastBootstrapMechanismSetFlag { + type cml_data_types:CML_BOOL_T; + default false; + description "ip pim unicast-bsm"; + } // END of vifUnicastBootstrapMechanismSetFlag definition. + + leaf passiveSet { + type cml_data_types:CML_BOOL_T; + default false; + description "ip pim passive"; + } // END of passiveSet definition. + + leaf if_addr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "VIF Primary Address"; + } // END of if_addr definition. + + leaf if_addr_global { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "VIF Primary Address"; + } // END of if_addr_global definition. + + leaf vifHelloInterval { + type cml_data_types:CML_UINT32_T { + range "1..18724"; + } + description "ip pim hello-interval"; + } // END of vifHelloInterval definition. + + leaf hello_holdtime { + type cml_data_types:CML_UINT32_T; + config false; + description "Hello holdtime"; + } // END of hello_holdtime definition. + + leaf vifaclNeighborFilterName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip pim neighbor-filter"; + } // END of vifaclNeighborFilterName definition. + + leaf bidirAclNbrFilter { + if-feature feature_list:HAVE_PIM_BIDIR; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip pim bidir-neighbor-filter"; + } // END of bidirAclNbrFilter definition. + + leaf bundleBindName { + if-feature feature_list:HAVE_PIM_ECMP_REDIRECT; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip pim bind ecmp-bundle"; + } // END of bundleBindName definition. + + leaf ecm_flow_count { + type cml_data_types:CML_UINT32_T; + config false; + description "For ECMP traffic load balancing.The VIF with the least flow count will be chosen for new joins"; + } // END of ecm_flow_count definition. + + leaf dr_addr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "VIF DR address"; + } // END of dr_addr definition. + + leaf vifStateRefreshOriginateInterval { + type cml_data_types:CML_UINT16_T { + range "1..100"; + } + description "ip pim state-refresh origination-interval"; + } // END of vifStateRefreshOriginateInterval definition. + + leaf vif_sr_ttl_min { + type cml_data_types:CML_UINT8_T; + config false; + description "VIF SR Message TTL Min. Threshold (# of hops)"; + } // END of vif_sr_ttl_min definition. + + leaf t_effective_prop_dly { + type cml_data_types:CML_INT16_T; + config false; + description "SM Effective Propogation Delay"; + } // END of t_effective_prop_dly definition. + + leaf vif_pd { + type cml_data_types:CML_UINT16_T; + config false; + description "DM VIF Propagation-delay value (millisec)"; + } // END of vif_pd definition. + + leaf t_effective_ovrd_int { + type cml_data_types:CML_UINT16_T; + config false; + description "SM Effective Override interval"; + } // END of t_effective_ovrd_int definition. + + leaf vif_oi { + type cml_data_types:CML_UINT16_T; + config false; + description "DM VIF Override-Interval timer value (millisec)"; + } // END of vif_oi definition. + + leaf vif_pi { + type cml_data_types:CML_UINT16_T; + config false; + description "DM VIF PruneLimit-Interval timer value(millisec)"; + } // END of vif_pi definition. + + leaf vif_gi { + type cml_data_types:CML_UINT16_T; + config false; + description "DM VIF GraftRetry-Interval timer value(millisec)"; + } // END of vif_gi definition. + + leaf trig_hello_delay { + type cml_data_types:CML_UINT16_T; + config false; + description "Triggered Hello timer"; + } // END of trig_hello_delay definition. + + leaf jp_tperiodic { + type cml_data_types:CML_UINT16_T; + config false; + description "used for jt_timer"; + } // END of jp_tperiodic definition. + + leaf jp_holdtime { + type cml_data_types:CML_UINT16_T; + config false; + description "per interface timer intervals, used in jp header"; + } // END of jp_holdtime definition. + + leaf t_override { + type cml_data_types:CML_UINT16_T; + config false; + description "Randomized delay to prevent implosion of override messages"; + } // END of t_override definition. + + leaf t_suppressed { + type cml_data_types:CML_UINT16_T; + config false; + description "Supression period"; + } // END of t_suppressed definition. + + leaf t_assert_override_int { + type cml_data_types:CML_UINT16_T; + config false; + description "Per interface Assert time values"; + } // END of t_assert_override_int definition. + + leaf t_assert_time { + type cml_data_types:CML_UINT16_T; + config false; + description "Per interface Assert time values"; + } // END of t_assert_time definition. + + + list pimneighbor { + + description + "PIM neighbors"; + + config false; + key "nbr_addr"; + + + leaf nbr_addr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Neighbor's address"; + } // END of nbr_addr definition. + + leaf nbr_flags { + type cml_data_types:CML_UINT32_T; + description "Neighbor's Flags"; + } // END of nbr_flags definition. + + leaf nbr_uptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Neighbors' Uptime"; + } // END of nbr_uptime definition. + + leaf nbr_exptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Neighbors' Uptime"; + } // END of nbr_exptime definition. + + leaf nbr_gen_id { + type cml_data_types:CML_UINT32_T; + description "Neighbors' Generation ID."; + } // END of nbr_gen_id definition. + + leaf nbr_sr_interval { + type cml_data_types:CML_UINT8_T; + description "Neighbors' SR Interval (secs)"; + } // END of nbr_sr_interval definition. + + leaf nbr_pd { + type cml_data_types:CML_UINT16_T; + description "Neighbors' LAN-prune-delay timer value (msecs)"; + } // END of nbr_pd definition. + + leaf nbr_oi { + type cml_data_types:CML_UINT16_T; + description "Neighbors' Override-Interval timer value (msecs)"; + } // END of nbr_oi definition. + + leaf jp_header_group_count { + type cml_data_types:CML_UINT8_T; + description "Have to update the no_of_groups while sending"; + } // END of jp_header_group_count definition. + + leaf group_count { + type cml_data_types:CML_UINT8_T; + description "Have to update the no_of_groups while sending"; + } // END of group_count definition. + + + list jpbulkmessage { + + description + "Join/Prune Message bulking"; + + config false; + key "bulk_data"; + + + leaf bulk_data { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of bulk_data definition. + + leaf bulk_putp { + type cml_data_types:CML_INT32_T; + } // END of bulk_putp definition. + + leaf bulk_getp { + type cml_data_types:CML_INT32_T; + } // END of bulk_getp definition. + + leaf bulk_endp { + type cml_data_types:CML_INT32_T; + } // END of bulk_endp definition. + + leaf bulk_size { + type cml_data_types:CML_INT32_T; + } // END of bulk_size definition. + + } // End of jpbulkmessage-list + container nbrpimpackethello { + config false; + + description + "Hello variables which will be used for the packet transmission"; + + leaf nbrhold_time { + type cml_data_types:CML_UINT16_T; + } // END of nbrhold_time definition. + + leaf nbrlan_time { + type cml_data_types:CML_UINT16_T; + } // END of nbrlan_time definition. + + leaf nbrpriroity { + type cml_data_types:CML_UINT32_T; + } // END of nbrpriroity definition. + + leaf nbroverride_interval { + type cml_data_types:CML_UINT16_T; + } // END of nbroverride_interval definition. + + leaf nbrgenid { + type cml_data_types:CML_UINT32_T; + } // END of nbrgenid definition. + + leaf nbrrouter_id { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nbrrouter_id definition. + + leaf nbrlocal_id { + type cml_data_types:CML_UINT32_T; + } // END of nbrlocal_id definition. + + + list nbraddrlist { + + description + "VIF Secondary Address List"; + + config false; + key "nbrif_addr"; + + + leaf nbrif_addr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nbrif_addr definition. + + } // End of nbraddrlist-list + } // END of nbrpimpackethello-container definition. + } // End of pimneighbor-list + + list pimvifmember { + + description + "VIF Local Membership Table, Key: (G)"; + + config false; + key "vifprefixsg"; + + + leaf vifprefixsg { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "The key(G,S) for the table."; + } // END of vifprefixsg definition. + + leaf vifprefixflags { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vifprefixflags definition. + + leaf viflags { + type cml_data_types:CML_UINT32_T; + description "Flags"; + } // END of viflags definition. + + leaf viftype { + type cml_data_types:CML_INT8_T; + description "Local membership type"; + } // END of viftype definition. + + leaf vifstate { + type cml_data_types:CML_INT8_T; + description "Local membership state"; + } // END of vifstate definition. + + + list srctable { + + description + "P-Trie of membership source records"; + + config false; + key "srcinfo"; + + + leaf srcinfo { + type cml_data_types:CML_INT32_T; + description "P-Trie of membership source records"; + } // END of srcinfo definition. + + } // End of srctable-list + } // End of pimvifmember-list + container pimpackethello { + config true; + + description + "Hello variables which will be used for the packet transmission"; + + leaf vifHelloHoldTimeInterval { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + description "ip pim hello-holdtime"; + } // END of vifHelloHoldTimeInterval definition. + + leaf vifPropagationDelay { + type cml_data_types:CML_UINT16_T { + range "0..32767"; + } + description "ip pim propagation-delay"; + } // END of vifPropagationDelay definition. + + leaf vifDesignatedRouterPriority { + type cml_data_types:CML_UINT32_T { + range "0..4294967294"; + } + description "ip pim dr-priority"; + } // END of vifDesignatedRouterPriority definition. + + leaf override_interval { + type cml_data_types:CML_UINT16_T; + config false; + } // END of override_interval definition. + + leaf genid { + type cml_data_types:CML_UINT32_T; + config false; + } // END of genid definition. + + leaf router_id { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of router_id definition. + + leaf local_id { + type cml_data_types:CML_UINT32_T; + config false; + } // END of local_id definition. + + + list addrlist { + + description + "VIF Secondary Address List"; + + config false; + key "if_addr"; + + + leaf if_addr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of if_addr definition. + + } // End of addrlist-list + } // END of pimpackethello-container definition. + } // End of pim4Interface-list + } // END of pim4Interface-grouping definition. + + + grouping pim4Debug-grouping { + list pim4Debug { + + description + "pim4Debug"; + + config true; + key "vrfName"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + default "0"; + } // END of vrId definition. + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + leaf temprun { + type cml_data_types:CML_BOOL_T; + config false; + } // END of temprun definition. + + container debugmsdp { + config true; + + description + "debugmsdp"; + + leaf debugMsdp { + if-feature feature_list:HAVE_PIM_MSDP; + type cml_data_types:CML_BOOL_T; + } // END of debugMsdp definition. + + leaf termdebugMsdp { + if-feature feature_list:HAVE_PIM_MSDP; + type cml_data_types:CML_BOOL_T; + } // END of termdebugMsdp definition. + + } // END of debugmsdp-container definition. + container debugType { + config true; + + description + "debugType"; + + leaf debugType { + type cml_data_types:CML_PIM_DEBUG_TYPE_T; + description "debug ip pim"; + } // END of debugType definition. + + leaf debugtermType { + type cml_data_types:CML_PIM_DEBUG_TYPE_T; + description "debug ip pim"; + } // END of debugtermType definition. + + } // END of debugType-container definition. + } // End of pim4Debug-list + } // END of pim4Debug-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/plist.yang b/yang-files/plist.yang new file mode 100644 index 00000000..6183c40e --- /dev/null +++ b/yang-files/plist.yang @@ -0,0 +1,270 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : plist.yang +* +*/ + +submodule plist { + + belongs-to ZebOS { prefix ZebOS; } + include vr; + + + import cml_data_types { + prefix cml_data_types; + } + + + revision "2016-12-29" { + description "OSPF module inclusion."; + } + + revision "2016-10-20" { + description "Initial version of plist datamodel."; + } + + + + grouping prefixMaster-grouping { + list prefixMaster { + + description + "Master structure"; + + config true; + key "vrId"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + description "Virtual Router ID"; + } // END of vrId definition. + + leaf seqnum { + type cml_data_types:CML_BOOL_T; + } // END of seqnum definition. + + + list ipPrefix { + + description + "List of struct prefix_list"; + + config true; + key "plistname"; + + + leaf plistname { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of plistname definition. + + leaf description { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + } // END of description definition. + + leaf count { + type cml_data_types:CML_INT32_T; + config false; + } // END of count definition. + + leaf rangeCount { + type cml_data_types:CML_INT32_T; + config false; + } // END of rangeCount definition. + + + list ipPrefixEntry { + + description + "Each prefix-list's entry"; + + config true; + key "seq"; + + + leaf seq { + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + } // END of seq definition. + + leaf type { + mandatory true; + type cml_data_types:CML_PREFIX_LIST_TYPE; + } // END of type definition. + + leaf network { + mandatory true; + type cml_data_types:CML_IPV4_ADDR_PREFIX_T; + } // END of network definition. + + leaf minPrefixLength { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "0..32"; + } + } // END of minPrefixLength definition. + + leaf maxPrefixLength { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "0..32"; + } + } // END of maxPrefixLength definition. + + leaf eqPrefixLength { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "0..32"; + } + } // END of eqPrefixLength definition. + + leaf any { + mandatory true; + type cml_data_types:CML_BOOL_T; + } // END of any definition. + + leaf refCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of refCount definition. + + leaf hitCount { + type cml_data_types:CML_UINT32_T; + config false; + } // END of hitCount definition. + + } // End of ipPrefixEntry-list + } // End of ipPrefix-list + } // End of prefixMaster-list + } // END of prefixMaster-grouping definition. + + + grouping prefixMaster6-grouping { + list prefixMaster6 { + + description + "Master structure of prefix_list"; + + config true; + key "vrId"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + description "Virtual Router ID"; + } // END of vrId definition. + + leaf ipv6Seqnum { + type cml_data_types:CML_BOOL_T; + } // END of ipv6Seqnum definition. + + + list ipv6Prefix { + + description + "List of struct prefix_list"; + + config true; + key "plistname6"; + + + leaf plistname6 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of plistname6 definition. + + leaf description6 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + } // END of description6 definition. + + leaf count6 { + type cml_data_types:CML_INT32_T; + config false; + } // END of count6 definition. + + leaf rangeCount6 { + type cml_data_types:CML_INT32_T; + config false; + } // END of rangeCount6 definition. + + + list ipv6PrefixEntry { + + description + "Each prefix-list's entry"; + + config true; + key "seq6"; + + + leaf seq6 { + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + } // END of seq6 definition. + + leaf type6 { + mandatory true; + type cml_data_types:CML_PREFIX_LIST_TYPE; + } // END of type6 definition. + + leaf network6 { + mandatory true; + type cml_data_types:CML_IPV6_PREFIX_T; + } // END of network6 definition. + + leaf minPrefixLength6 { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "0..128"; + } + } // END of minPrefixLength6 definition. + + leaf maxPrefixLength6 { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "0..128"; + } + } // END of maxPrefixLength6 definition. + + leaf any6 { + mandatory true; + type cml_data_types:CML_BOOL_T; + } // END of any6 definition. + + leaf refCount6 { + type cml_data_types:CML_UINT32_T; + config false; + } // END of refCount6 definition. + + leaf hitCount6 { + type cml_data_types:CML_UINT32_T; + config false; + } // END of hitCount6 definition. + + } // End of ipv6PrefixEntry-list + } // End of ipv6Prefix-list + } // End of prefixMaster6-list + } // END of prefixMaster6-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/pserv.yang b/yang-files/pserv.yang new file mode 100644 index 00000000..5039a527 --- /dev/null +++ b/yang-files/pserv.yang @@ -0,0 +1,93 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : pserv.yang +* +*/ + +submodule pserv { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "pserv configurations"; + + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of PSERV datamodel."; + } + + + grouping pservd-grouping { + container pservd { + config true; + + description + "pservd"; + + leaf featuresoftware_watchdog { + if-feature feature_list:HAVE_PSERVD; + type cml_data_types:CML_BOOL_T; + description "feature software-watchdog"; + } // END of featuresoftware_watchdog definition. + + leaf keepalivetime { + if-feature feature_list:HAVE_PSERVD; + type cml_data_types:CML_UINT32_T { + range "30..1800"; + } + description "software-watchdog keep-alive-time"; + } // END of keepalivetime definition. + + + list watchdog { + + description + "watchdog"; + + config true; + key "enablesoftware_watchdog"; + + + leaf enablesoftware_watchdog { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "software-watchdog"; + } // END of enablesoftware_watchdog definition. + + leaf pservglobals { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "protocol status"; + } // END of pservglobals definition. + + } // End of watchdog-list + } // END of pservd-container definition. + } // END of pservd-container definition. + + +} \ No newline at end of file diff --git a/yang-files/radius.yang b/yang-files/radius.yang new file mode 100644 index 00000000..bde9e710 --- /dev/null +++ b/yang-files/radius.yang @@ -0,0 +1,172 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : radius.yang +* +*/ + +submodule radius { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "Layer-3 radius configurations"; + + + revision "2017-02-12" { + description "Added smi-server-modules tag(this datamodel is common for auth and hostp)."; + } + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of RADIUS datamodel."; + } + + + + grouping Hostpdradius-grouping { + list Hostpdradius { + if-feature feature_list:HAVE_AAA; + + description + "hostaddr structure"; + + config true; + key "hostAddr"; + + + leaf hostAddr { + type cml_data_types:CML_HOSTPNAME_T; + } // END of hostAddr definition. + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf key { + type cml_data_types:CML_BOOL_T; + } // END of key definition. + + leaf keyType { + type cml_data_types:CML_HOSTP_KEY_TYPE_T; + default "0"; + } // END of keyType definition. + + leaf keyWord { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of keyWord definition. + + leaf authPort { + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + default "1812"; + description "radius-server host auth-port"; + } // END of authPort definition. + + leaf acctPort { + type cml_data_types:CML_UINT32_T { + range "0..65535"; + } + default "1813"; + description "radius-server host acct-port"; + } // END of acctPort definition. + + leaf timeout { + type cml_data_types:CML_UINT32_T { + range "1..60"; + } + default "5"; + } // END of timeout definition. + + } // End of Hostpdradius-list + } // END of Hostpdradius-grouping definition. + + grouping radius-grouping { + container radius { + if-feature feature_list:HAVE_AAA; + config true; + + description + "radius related commands"; + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf globalTimeout { + type cml_data_types:CML_UINT32_T { + range "1..60"; + } + default "5"; + description "radius-server timeout"; + } // END of globalTimeout definition. + + leaf key { + type cml_data_types:CML_BOOL_T; + description "This key is used as default if no other key is configured"; + } // END of key definition. + + leaf globalKeytype { + type cml_data_types:CML_HOSTP_KEY_TYPE_T; + default "0"; + } // END of globalKeytype definition. + + leaf globalKeyword { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "radius-server key"; + } // END of globalKeyword definition. + + leaf debugradius { + type cml_data_types:CML_BOOL_T; + description "debug radius"; + } // END of debugradius definition. + + leaf debugradiusconfig { + type cml_data_types:CML_BOOL_T; + } // END of debugradiusconfig definition. + + leaf deadtime { + type cml_data_types:CML_UINT32_T; + } // END of deadtime definition. + + leaf retransmit { + type cml_data_types:CML_UINT32_T; + } // END of retransmit definition. + + } // END of radius-container definition. + } // END of radius-container definition. + + +} \ No newline at end of file diff --git a/yang-files/rib.yang b/yang-files/rib.yang index 49b90b60..13b7c431 100644 --- a/yang-files/rib.yang +++ b/yang-files/rib.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -18,7 +18,6 @@ submodule rib { belongs-to ZebOS { prefix ZebOS; } include interface; include vrf; - include vr; import cml_data_types { @@ -30,392 +29,449 @@ submodule rib { } + revision "2017-02-27" { + description "Added implicit delete tags."; + } + revision "2016-09-15" { description "Revisied on 2016-09-15."; } + revision "2016-01-03" { + description "Added implicit delete tags.."; + } + - grouping rib-grouping { - list rib { + grouping ribInterface-grouping { + list ribInterface { description - "rib"; + "RIB BFD interface related operations"; config true; - key "vrId"; + key "ifName"; - leaf vrId { - type cml_data_types:CML_UINT32_T; - config true; - } // END of vrId definition. + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. - leaf fibRetain { + leaf staticBfd { + if-feature feature_list:HAVE_BFD; type cml_data_types:CML_BOOL_T; - config true; - } // END of fibRetain definition. + } // END of staticBfd definition. - leaf multipathNum { - type cml_data_types:CML_UINT8_T { - range "1..64"; - } - default "1"; - config true; - } // END of multipathNum definition. + leaf staticBfdDisable { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_BOOL_T; + } // END of staticBfdDisable definition. - leaf maxStaticRoutes { - type cml_data_types:CML_UINT32_T { - range "1..4294967294"; - } - default "4294967294"; - config true; - } // END of maxStaticRoutes definition. + leaf ipv6StaticBfd { + if-feature feature_list:HAVE_IPV6; + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_BOOL_T; + } // END of ipv6StaticBfd definition. - leaf maxFibRoutes { - type cml_data_types:CML_UINT32_T { - range "1..16384"; - } - config true; - } // END of maxFibRoutes definition. + leaf ipv6StaticBfdDisable { + if-feature feature_list:HAVE_IPV6; + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_BOOL_T; + } // END of ipv6StaticBfdDisable definition. - leaf debugType { - type cml_data_types:CML_RIB_DEBUG_TYPE_T; - default "all"; - config true; - } // END of debugType definition. + } // End of ribInterface-list + } // END of ribInterface-grouping definition. + grouping ribRuntimeGrp { + leaf subType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of subType definition. - leaf debugIpv6 { - type cml_data_types:CML_RIB_DEBUG_IPV6_TYPE_T; - config true; - } // END of debugIpv6 definition. + leaf distance { + type cml_data_types:CML_UINT8_T; + config false; + } // END of distance definition. - leaf unDebug { - type cml_data_types:CML_RIB_DEBUG_TYPE_T; - default "all"; - config true; - } // END of unDebug definition. + leaf metric { + type cml_data_types:CML_UINT8_T; + config false; + } // END of metric definition. + leaf blackHole { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of blackHole definition. - list ribIpv4 { - - description - "ribIpv4"; + leaf ribUptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ribUptime definition. - config true; - key "destPrefix"; + leaf ribFibStatus { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ribFibStatus definition. - - leaf destPrefix { - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - } // END of destPrefix definition. + list nextHopRunTime { + + description + "nextHopRunTime"; - list ribIpv4Mask { - - description - "ribIpv4Mask"; + config false; + key "gwAddrRuntime"; - config true; - key "destAddrMask"; + + leaf gwAddrRuntime { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of gwAddrRuntime definition. - - leaf destAddrMask { - type cml_data_types:CML_INT32_T; - config true; - } // END of destAddrMask definition. + leaf gwLastResort { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of gwLastResort definition. + leaf nexthopIfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nexthopIfName definition. - list ribStaticGwAddr { - - description - "ribStaticGwAddr"; + leaf nexthopIfIndex { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nexthopIfIndex definition. - config true; - key "gwAddr"; + leaf nexthopFlagActive { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nexthopFlagActive definition. - - leaf gwAddr { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of gwAddr definition. + leaf nexthopFibStatus { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nexthopFibStatus definition. - leaf ribStaticBfd { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ribStaticBfd definition. + } // End of nextHopRunTime-list + } // END of ribRuntimeGrp definition. + grouping ribVrfAfiGrp { + leaf totalRoutes { + type cml_data_types:CML_UINT32_T; + config false; + } // END of totalRoutes definition. - leaf ribStaticBfdDisable { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ribStaticBfdDisable definition. + leaf totalPaths { + type cml_data_types:CML_UINT32_T; + config false; + } // END of totalPaths definition. - container ribAttr { - config true; + leaf countFib { + type cml_data_types:CML_UINT32_T; + config false; + } // END of countFib definition. - description - "ribAttr"; + leaf ecmpRoutes { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ecmpRoutes definition. - uses ribAttr; - } // END of ribAttr-container definition. - } // End of ribStaticGwAddr-list + leaf ecmpPaths { + type cml_data_types:CML_UINT32_T; + config false; + } // END of ecmpPaths definition. - list ribStaticIfName { - - description - "ribStaticIfName"; + leaf ecmpPathCntr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of ecmpPathCntr definition. - config true; - key "gwIfName"; - - leaf gwIfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of gwIfName definition. + list routeSource { + + description + "routeSource"; - uses ribAttr; - } // End of ribStaticIfName-list - } // End of ribIpv4Mask-list + config false; + key "routeType"; - list ribRuntime { - - description - "ribRuntime"; + + leaf routeType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of routeType definition. - config false; - key "type"; + leaf routeTypeCount { + type cml_data_types:CML_UINT32_T; + } // END of routeTypeCount definition. - - leaf type { - type cml_data_types:CML_STRING_T; - config false; - } // END of type definition. + } // End of routeSource-list + } // END of ribVrfAfiGrp definition. + grouping ribAttr { + leaf distValue { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + } // END of distValue definition. - uses ribRuntimeGrp; - } // End of ribRuntime-list - } // End of ribIpv4-list + leaf tagVal { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + default "0"; + } // END of tagVal definition. - list ribIpv4Vrf { - - description - "ribIpv4Vrf"; + leaf description { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of description definition. - config true; - key "vrfName"; + } // END of ribAttr definition. - - leaf vrfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of vrfName definition. + grouping rib-grouping { + container rib { + config true; + description + "rib"; - list vrfDestPrefix { - - description - "vrfDestPrefix"; + leaf fibRetain { + if-feature feature_list:HAVE_L3; + type cml_data_types:CML_FIB_RETAIN_T; + default "60"; + } // END of fibRetain definition. - config true; - key "destVrfPrefix"; + leaf multipathNum { + if-feature feature_list:HAVE_MULTIPATH; + type cml_data_types:CML_UINT8_T { + range "1..64"; + } + default "1"; + } // END of multipathNum definition. - - leaf destVrfPrefix { - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - } // END of destVrfPrefix definition. + leaf maxStaticRoutes { + type cml_data_types:CML_UINT32_T { + range "1..4294967294"; + } + default "4294967294"; + } // END of maxStaticRoutes definition. + leaf maxFibRoutes { + type cml_data_types:CML_UINT32_T { + range "1..16384"; + } + } // END of maxFibRoutes definition. - list vrfIfName { - - description - "vrfIfName"; + leaf debugTypeExit { + type cml_data_types:CML_RIB_DEBUG_EXIT_TYPE_T; + default "all"; + } // END of debugTypeExit definition. - config true; - key "gwVrfIfName"; + leaf debugIpExit { + type cml_data_types:CML_RIB_DEBUG_ROUTING_TYPE_T; + } // END of debugIpExit definition. - - leaf gwVrfIfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of gwVrfIfName definition. + leaf debugIpv6Exit { + type cml_data_types:CML_RIB_DEBUG_ROUTING_TYPE_T; + } // END of debugIpv6Exit definition. - uses ribAttr; - } // End of vrfIfName-list + leaf unDebug { + type cml_data_types:CML_RIB_UNDEBUG_TYPE_T; + default "all"; + } // END of unDebug definition. - list vrfGwAddr { - - description - "vrfGwAddr"; + leaf debugType { + type cml_data_types:CML_RIB_DEBUG_TYPE_T; + default "all"; + } // END of debugType definition. - config true; - key "vrfGwAddr"; + leaf debugIp { + type cml_data_types:CML_RIB_DEBUG_ROUTING_TYPE_T; + } // END of debugIp definition. - - leaf vrfGwAddr { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of vrfGwAddr definition. + leaf debugIpv6 { + type cml_data_types:CML_RIB_DEBUG_ROUTING_TYPE_T; + } // END of debugIpv6 definition. - list vrfGwAddrIfName { - - description - "vrfGwAddrIfName"; + list ribIpv4 { + + description + "ribIpv4"; - config true; - key "gwVrfIfNameAddr"; + config true; + key "destPrefix"; - - leaf gwVrfIfNameAddr { - type cml_data_types:CML_STRING_T; - config true; - } // END of gwVrfIfNameAddr definition. + + leaf destPrefix { + type cml_data_types:CML_IPV4_PREFIX_T; + } // END of destPrefix definition. - uses ribAttr; - } // End of vrfGwAddrIfName-list - } // End of vrfGwAddr-list - list ribRuntime { - - description - "ribRuntime"; + list ribStaticGwAddr { + + description + "ribStaticGwAddr"; - config false; - key "type"; + config true; + key "gwAddr"; - - leaf type { - type cml_data_types:CML_STRING_T; - config false; - } // END of type definition. + + leaf gwAddr { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of gwAddr definition. - uses ribRuntimeGrp; - } // End of ribRuntime-list - } // End of vrfDestPrefix-list - container ribIpv4VrfAfi { - config false; + container ribBfd { + config true; description - "ribIpv4VrfAfi"; + "ribBfd"; - uses ribVrfAfiGrp; - } // END of ribIpv4VrfAfi-container definition. - } // End of ribIpv4Vrf-list + leaf ribStaticBfd { + type cml_data_types:CML_BOOL_T; + } // END of ribStaticBfd definition. + + leaf ribStaticBfdDisable { + type cml_data_types:CML_BOOL_T; + } // END of ribStaticBfdDisable definition. + + } // END of ribBfd-container definition. + uses ribAttr; + } // End of ribStaticGwAddr-list - list ribIpv6 { + list ribStaticIfName { description - "ribIpv6"; + "ribStaticIfName"; config true; - key "ipv6DestPrefix"; + key "gwIfName"; - leaf ipv6DestPrefix { - type cml_data_types:CML_IPV6_PREFIX_T; - config true; - } // END of ipv6DestPrefix definition. + leaf gwIfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of gwIfName definition. + uses ribAttr; + } // End of ribStaticIfName-list - list ribIpv6GwAddr { - - description - "ribIpv6GwAddr"; + list ribRuntime { + + description + "ribRuntime"; - config true; - key "ipv6GwAddr"; + config false; + key "type"; - - leaf ipv6GwAddr { - type cml_data_types:CML_IPV6_ADDR_T; - config true; - } // END of ipv6GwAddr definition. + + leaf type { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of type definition. - leaf ipv6DistVal { - type cml_data_types:CML_INT32_T { - range "1..255"; - } - default "1"; - config true; - } // END of ipv6DistVal definition. + uses ribRuntimeGrp; + } // End of ribRuntime-list + } // End of ribIpv4-list - leaf ribIpv6StaticBfd { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ribIpv6StaticBfd definition. + list ribIpv4Vrf { + if-feature feature_list:HAVE_VRF; - leaf ribIpv6StaticBfdDisable { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ribIpv6StaticBfdDisable definition. + description + "ribIpv4Vrf"; - } // End of ribIpv6GwAddr-list + config true; + key "vrfName"; - list ribIpv6GwIfName { + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + + list vrfDestPrefix { + + description + "vrfDestPrefix"; + + config true; + key "destVrfPrefix"; + + + leaf destVrfPrefix { + type cml_data_types:CML_IPV4_PREFIX_T; + } // END of destVrfPrefix definition. + + + list vrfIfName { description - "ribIpv6GwIfName"; + "vrfIfName"; config true; - key "ipv6GwIfName"; + key "gwVrfIfName"; - leaf ipv6GwIfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of ipv6GwIfName definition. - - leaf ipv6DistVal { - type cml_data_types:CML_INT32_T { - range "1..255"; + leaf gwVrfIfName { + type cml_data_types:CML_STRING_T { + length "0..255"; } - default "1"; - config true; - } // END of ipv6DistVal definition. + } // END of gwVrfIfName definition. - } // End of ribIpv6GwIfName-list + uses ribAttr; + } // End of vrfIfName-list - list ribIpv6GwAddrIfName { + list vrfGwAddr { description - "ribIpv6GwAddrIfName"; + "vrfGwAddr"; config true; - key "ipv6GateWayAddr"; + key "vrfGwAddr"; - leaf ipv6GateWayAddr { - type cml_data_types:CML_IPV6_ADDR_T; - config true; - } // END of ipv6GateWayAddr definition. + leaf vrfGwAddr { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of vrfGwAddr definition. - list ribIpv6GwIfName { + list vrfGwAddrIfName { description - "ribIpv6GwIfName"; + "vrfGwAddrIfName"; config true; - key "ipv6GateWayIfName"; + key "gwVrfIfNameAddr"; - leaf ipv6GateWayIfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of ipv6GateWayIfName definition. - - leaf distValgwAddr { - type cml_data_types:CML_INT32_T { - range "1..255"; + leaf gwVrfIfNameAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; } - default "1"; - config true; - } // END of distValgwAddr definition. + } // END of gwVrfIfNameAddr definition. - } // End of ribIpv6GwIfName-list - } // End of ribIpv6GwAddrIfName-list + uses ribAttr; + } // End of vrfGwAddrIfName-list + } // End of vrfGwAddr-list list ribRuntime { @@ -427,484 +483,427 @@ submodule rib { leaf type { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of type definition. uses ribRuntimeGrp; } // End of ribRuntime-list - } // End of ribIpv6-list + } // End of vrfDestPrefix-list + container ribIpv4VrfAfi { + config false; - list ribIpv6Vrf { - description - "ribIpv6Vrf"; - - config true; - key "vrfName"; + "ribIpv4VrfAfi"; - - leaf vrfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of vrfName definition. - - - list vrfDestPrefix { - - description - "vrfDestPrefix"; + uses ribVrfAfiGrp; + } // END of ribIpv4VrfAfi-container definition. + } // End of ribIpv4Vrf-list - config true; - key "ipv6VrfDestPrefix"; + list ribIpv6 { + if-feature feature_list:HAVE_IPV6; - - leaf ipv6VrfDestPrefix { - type cml_data_types:CML_IPV6_PREFIX_T; - config true; - } // END of ipv6VrfDestPrefix definition. + description + "ribIpv6"; + config true; + key "ipv6DestPrefix"; - list vrfIpv6GwAddr { - - description - "vrfIpv6GwAddr"; + + leaf ipv6DestPrefix { + type cml_data_types:CML_IPV6_PREFIX_T; + } // END of ipv6DestPrefix definition. - config true; - key "ipv6VrfGwAddr"; - - leaf ipv6VrfGwAddr { - type cml_data_types:CML_IPV6_ADDR_T; - config true; - } // END of ipv6VrfGwAddr definition. + list ribIpv6GwAddr { + + description + "ribIpv6GwAddr"; + config true; + key "ipv6GwAddr"; - list vrfGwAddrIfName { - - description - "vrfGwAddrIfName"; + + leaf ipv6GwAddr { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of ipv6GwAddr definition. - config true; - key "ipv6VrfgwIfName"; + leaf ipv6DistVal { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + } // END of ipv6DistVal definition. - - leaf ipv6VrfgwIfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of ipv6VrfgwIfName definition. + leaf ribIpv6StaticBfd { + type cml_data_types:CML_BOOL_T; + } // END of ribIpv6StaticBfd definition. - } // End of vrfGwAddrIfName-list - } // End of vrfIpv6GwAddr-list + leaf ribIpv6StaticBfdDisable { + type cml_data_types:CML_BOOL_T; + } // END of ribIpv6StaticBfdDisable definition. - list ribRuntime { - - description - "ribRuntime"; + } // End of ribIpv6GwAddr-list - config false; - key "type"; + list ribIpv6GwIfName { + + description + "ribIpv6GwIfName"; - - leaf type { - type cml_data_types:CML_STRING_T; - config false; - } // END of type definition. + config true; + key "ipv6GwIfName"; - uses ribRuntimeGrp; - } // End of ribRuntime-list - } // End of vrfDestPrefix-list - container ribIpv6VrfAfi { - config false; + + leaf ipv6GwIfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ipv6GwIfName definition. - description - "ribIpv6VrfAfi"; + leaf ipv6DistVal { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + } // END of ipv6DistVal definition. - uses ribVrfAfiGrp; - } // END of ribIpv6VrfAfi-container definition. - } // End of ribIpv6Vrf-list + } // End of ribIpv6GwIfName-list - list ribMrouteVRF { + list ribIpv6GwAddrIfName { description - "ribMrouteVRF"; + "ribIpv6GwAddrIfName"; config true; - key "vrfName"; + key "ipv6GateWayAddr"; - leaf vrfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of vrfName definition. + leaf ipv6GateWayAddr { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of ipv6GateWayAddr definition. - list ribMroute { + list ribIpv6GwIfName { description - "ribMroute"; + "ribIpv6GwIfName"; config true; - key "srcPrfix"; + key "ipv6GateWayIfName"; - leaf srcPrfix { - type cml_data_types:CML_IPV4_PREFIX_T; - config true; - } // END of srcPrfix definition. + leaf ipv6GateWayIfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ipv6GateWayIfName definition. + leaf distValgwAddr { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + } // END of distValgwAddr definition. - list mrouteProtoType { - - description - "mrouteProtoType"; + } // End of ribIpv6GwIfName-list + } // End of ribIpv6GwAddrIfName-list - config true; - key "mrouteIpv4Proto"; + list ribRuntime { + + description + "ribRuntime"; - - leaf mrouteIpv4Proto { - type cml_data_types:CML_MROUTE_ROUTETYPE_T; - config true; - } // END of mrouteIpv4Proto definition. + config false; + key "type"; - leaf rpfRoute { - type cml_data_types:CML_IPV4_ADDR_T; - config true; - } // END of rpfRoute definition. + + leaf type { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of type definition. - leaf adminDist { - type cml_data_types:CML_INT32_T { - range "1..255"; - } - config true; - } // END of adminDist definition. + uses ribRuntimeGrp; + } // End of ribRuntime-list + } // End of ribIpv6-list - } // End of mrouteProtoType-list - } // End of ribMroute-list - } // End of ribMrouteVRF-list + list ribIpv6Vrf { + if-feature feature_list:HAVE_VRF; + + description + "ribIpv6Vrf"; + + config true; + key "vrfName"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + + list vrfDestPrefix { + if-feature feature_list:HAVE_IPV6; - list ribIpv6MrouteVRF { - description - "ribIpv6MrouteVRF"; + "vrfDestPrefix"; config true; - key "vrfName"; + key "ipv6VrfDestPrefix"; - leaf vrfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of vrfName definition. + leaf ipv6VrfDestPrefix { + type cml_data_types:CML_IPV6_PREFIX_T; + } // END of ipv6VrfDestPrefix definition. - list ribMrouteIpv6 { + list vrfIpv6GwAddr { description - "ribMrouteIpv6"; + "vrfIpv6GwAddr"; config true; - key "srcPrfixIpv6"; + key "ipv6VrfGwAddr"; - leaf srcPrfixIpv6 { - type cml_data_types:CML_IPV6_PREFIX_T; - config true; - } // END of srcPrfixIpv6 definition. + leaf ipv6VrfGwAddr { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of ipv6VrfGwAddr definition. - list mrouteIpv6ProtoType { + list vrfGwAddrIfName { description - "mrouteIpv6ProtoType"; + "vrfGwAddrIfName"; config true; - key "mrouteIpv6Proto"; + key "ipv6VrfgwIfName"; - leaf mrouteIpv6Proto { - type cml_data_types:CML_MROUTE_ROUTETYPE_T; - config true; - } // END of mrouteIpv6Proto definition. + leaf ipv6VrfgwIfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ipv6VrfgwIfName definition. - leaf gwIpv6Mroute { - type cml_data_types:CML_MROUTE_GW_ADDR_T; - config true; - } // END of gwIpv6Mroute definition. + } // End of vrfGwAddrIfName-list + } // End of vrfIpv6GwAddr-list - leaf adminDist { - type cml_data_types:CML_INT32_T { - range "1..255"; - } - config true; - } // END of adminDist definition. + list ribRuntime { + + description + "ribRuntime"; + config false; + key "type"; - list ipv6MrouteGwAddr { - - description - "ipv6MrouteGwAddr"; + + leaf type { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of type definition. - config true; - key "mrouteIpv6gwAddr"; + uses ribRuntimeGrp; + } // End of ribRuntime-list + } // End of vrfDestPrefix-list + container ribIpv6VrfAfi { + config false; - - leaf mrouteIpv6gwAddr { - type cml_data_types:CML_IPV6_ADDR_T; - config true; - } // END of mrouteIpv6gwAddr definition. - - - list ipv6MrouteGwIfName { - - description - "ipv6MrouteGwIfName"; - - config true; - key "mrouteIpv6gwIfName"; - - - leaf mrouteIpv6gwIfName { - type cml_data_types:CML_STRING_T; - config true; - } // END of mrouteIpv6gwIfName definition. - - leaf adminDist { - type cml_data_types:CML_INT32_T { - range "1..255"; - } - config true; - } // END of adminDist definition. - - } // End of ipv6MrouteGwIfName-list - } // End of ipv6MrouteGwAddr-list - } // End of mrouteIpv6ProtoType-list - } // End of ribMrouteIpv6-list - } // End of ribIpv6MrouteVRF-list - - list ribInterface { - description - "RIB BFD interface related operations"; - - config true; - key "ifName"; + "ribIpv6VrfAfi"; - - leaf ifName { - type cml_data_types:CML_STRING_T; - config true; - } // END of ifName definition. + uses ribVrfAfiGrp; + } // END of ribIpv6VrfAfi-container definition. + } // End of ribIpv6Vrf-list - leaf staticBfd { - type cml_data_types:CML_BOOL_T; - config true; - } // END of staticBfd definition. + list ribMrouteVRF { + if-feature feature_list:HAVE_VRF; - leaf staticBfdDisable { - type cml_data_types:CML_BOOL_T; - config true; - } // END of staticBfdDisable definition. + description + "ribMrouteVRF"; - leaf ipv6StaticBfd { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ipv6StaticBfd definition. + config true; + key "vrfName"; - leaf ipv6StaticBfdDisable { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ipv6StaticBfdDisable definition. + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. - } // End of ribInterface-list - container fib { - config true; + list ribMroute { + description - "fib"; + "ribMroute"; - container retain { - config true; + config true; + key "srcPrfix"; + + + leaf srcPrfix { + type cml_data_types:CML_IPV4_PREFIX_T; + } // END of srcPrfix definition. + + list mrouteProtoType { + description - "retain"; + "mrouteProtoType"; - leaf fibRetainTime { - type cml_data_types:CML_UINT16_T { - range "1..65535"; - } - default "60"; - config true; - } // END of fibRetainTime definition. + config true; + key "mrouteIpv4Proto"; - } // END of retain-container definition. - } // END of fib-container definition. - container ribAfi { - config false; + + leaf mrouteIpv4Proto { + type cml_data_types:CML_MROUTE_ROUTETYPE_T; + } // END of mrouteIpv4Proto definition. - description - "ribAfi"; + leaf rpfRoute { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of rpfRoute definition. - uses ribVrfAfiGrp; - } // END of ribAfi-container definition. - container ribIpv6Afi { - config false; + leaf adminDist { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + } // END of adminDist definition. - description - "ribIpv6Afi"; + } // End of mrouteProtoType-list + } // End of ribMroute-list + } // End of ribMrouteVRF-list - uses ribVrfAfiGrp; - } // END of ribIpv6Afi-container definition. - container ribVrf { - config true; + list ribIpv6MrouteVRF { + if-feature feature_list:HAVE_VRF; - description - "ribVrf"; + description + "ribIpv6MrouteVRF"; - leaf ribVrfConfBfdIpv4 { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ribVrfConfBfdIpv4 definition. + config true; + key "vrfName"; - leaf ribVrfConfBfdIpv6 { - type cml_data_types:CML_BOOL_T; - config true; - } // END of ribVrfConfBfdIpv6 definition. + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. - } // END of ribVrf-container definition. - } // End of rib-list - } // END of rib-grouping definition. - grouping ribRuntimeGrp { - leaf subType { - type cml_data_types:CML_STRING_T; - config false; - } // END of subType definition. - leaf metric { - type cml_data_types:CML_UINT8_T; - config false; - } // END of metric definition. + list ribMrouteIpv6 { + if-feature feature_list:HAVE_IPV6; - leaf blackHole { - type cml_data_types:CML_STRING_T; - config false; - } // END of blackHole definition. + description + "ribMrouteIpv6"; + config true; + key "srcPrfixIpv6"; - list nextHopRunTime { - - description - "nextHopRunTime"; + + leaf srcPrfixIpv6 { + type cml_data_types:CML_IPV6_PREFIX_T; + } // END of srcPrfixIpv6 definition. - config false; - key "gwAddrRuntime"; - - leaf gwAddrRuntime { - type cml_data_types:CML_IPV4_ADDR_T; - config false; - } // END of gwAddrRuntime definition. + list mrouteIpv6ProtoType { + + description + "mrouteIpv6ProtoType"; - leaf gwLastResort { - type cml_data_types:CML_IPV4_ADDR_T; - config false; - } // END of gwLastResort definition. + config true; + key "mrouteIpv6Proto"; - leaf nexthopIfName { - type cml_data_types:CML_STRING_T; - config false; - } // END of nexthopIfName definition. + + leaf mrouteIpv6Proto { + type cml_data_types:CML_MROUTE_ROUTETYPE_T; + } // END of mrouteIpv6Proto definition. - leaf nexthopIfIndex { - type cml_data_types:CML_STRING_T; - config false; - } // END of nexthopIfIndex definition. + leaf gwIpv6Mroute { + type cml_data_types:CML_MROUTE_GW_ADDR_T; + } // END of gwIpv6Mroute definition. - leaf nexthopFlagActive { - type cml_data_types:CML_STRING_T; - config false; - } // END of nexthopFlagActive definition. + leaf adminDist { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + } // END of adminDist definition. - } // End of nextHopRunTime-list - } // END of ribRuntimeGrp definition. - grouping ribVrfAfiGrp { - leaf totalRoutes { - type cml_data_types:CML_UINT32_T; - config false; - } // END of totalRoutes definition. - leaf totalPaths { - type cml_data_types:CML_UINT32_T; - config false; - } // END of totalPaths definition. + list ipv6MrouteGwAddr { + + description + "ipv6MrouteGwAddr"; - leaf countFib { - type cml_data_types:CML_UINT32_T; - config false; - } // END of countFib definition. + config true; + key "mrouteIpv6gwAddr"; - leaf ecmpRoutes { - type cml_data_types:CML_UINT32_T; - config false; - } // END of ecmpRoutes definition. + + leaf mrouteIpv6gwAddr { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of mrouteIpv6gwAddr definition. - leaf ecmpPaths { - type cml_data_types:CML_UINT32_T; - config false; - } // END of ecmpPaths definition. - leaf ecmpPathCntr { - type cml_data_types:CML_STRING_T; - config false; - } // END of ecmpPathCntr definition. + list ipv6MrouteGwIfName { + + description + "ipv6MrouteGwIfName"; + + config true; + key "mrouteIpv6gwIfName"; + + leaf mrouteIpv6gwIfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mrouteIpv6gwIfName definition. + + leaf adminDist { + type cml_data_types:CML_INT32_T { + range "1..255"; + } + } // END of adminDist definition. + + } // End of ipv6MrouteGwIfName-list + } // End of ipv6MrouteGwAddr-list + } // End of mrouteIpv6ProtoType-list + } // End of ribMrouteIpv6-list + } // End of ribIpv6MrouteVRF-list + container ribAfi { + config false; - list routeSource { - description - "routeSource"; + "ribAfi"; - config false; - key "routeType"; + uses ribVrfAfiGrp; + } // END of ribAfi-container definition. + container ribIpv6Afi { + config false; - - leaf routeType { - type cml_data_types:CML_STRING_T; - config false; - } // END of routeType definition. + description + "ribIpv6Afi"; - leaf routeTypeCount { - type cml_data_types:CML_UINT32_T; - config false; - } // END of routeTypeCount definition. + uses ribVrfAfiGrp; + } // END of ribIpv6Afi-container definition. + container ribVrf { + config true; - } // End of routeSource-list - } // END of ribVrfAfiGrp definition. - grouping ribAttr { - leaf distValue { - mandatory true; - type cml_data_types:CML_INT32_T { - range "1..255"; - } - config true; - } // END of distValue definition. + description + "ribVrf"; - leaf tagVal { - mandatory true; - type cml_data_types:CML_UINT32_T { - range "0..4294967295"; - } - config true; - } // END of tagVal definition. + leaf ribVrfConfBfdIpv4 { + type cml_data_types:CML_BOOL_T; + } // END of ribVrfConfBfdIpv4 definition. - leaf description { - mandatory true; - type cml_data_types:CML_STRING_T; - config true; - } // END of description definition. + leaf ribVrfConfBfdIpv6 { + type cml_data_types:CML_BOOL_T; + } // END of ribVrfConfBfdIpv6 definition. - } // END of ribAttr definition. + } // END of ribVrf-container definition. + } // END of rib-container definition. + } // END of rib-container definition. } \ No newline at end of file diff --git a/yang-files/rip.yang b/yang-files/rip.yang new file mode 100644 index 00000000..01b7610b --- /dev/null +++ b/yang-files/rip.yang @@ -0,0 +1,766 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : rip.yang +* +*/ + +submodule rip { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "Routing Information Protocol"; + + + revision "2017-02-11" { + description "Added Config and runtime attributes."; + } + + grouping ripContents { + leaf version { + type cml_data_types:CML_UINT8_T { + range "1..2"; + } + default "2"; + description "version"; + } // END of version definition. + + leaf-list enableNetwork { + type cml_data_types:CML_IPV4_PREFIX_T; + description "network"; + } // END of enableNetwork definition. + + leaf-list enableInterface { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "network"; + } // END of enableInterface definition. + + leaf-list neighbor { + type cml_data_types:CML_IPV4_ADDR_T; + description "neighbor"; + } // END of neighbor definition. + + leaf defaultInformation { + type cml_data_types:CML_RIP_DEFAULT_ORIGINATE_T; + description "default-information originate"; + } // END of defaultInformation definition. + + leaf defaultMapName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + } // END of defaultMapName definition. + + leaf defaultMetric { + type cml_data_types:CML_INT32_T { + range "1..15"; + } + description "default-metric"; + } // END of defaultMetric definition. + + leaf metricType { + type cml_data_types:CML_RIP_METRIC_T; + default "disable"; + description "cisco-metric-behavior"; + } // END of metricType definition. + + leaf defaultDistance { + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + description "distance"; + } // END of defaultDistance definition. + + leaf pcounter { + type cml_data_types:CML_UINT32_T; + config false; + } // END of pcounter definition. + + leaf pconnect { + type cml_data_types:CML_UINT32_T; + config false; + } // END of pconnect definition. + + leaf protocolUpdateDueTime { + type cml_data_types:CML_UINT32_T; + config false; + } // END of protocolUpdateDueTime definition. + + + list ripOffsetDistributeListIfname { + + description + "ripOffsetDistributeListIfname"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + uses ripListCmdsUtility; + } // End of ripOffsetDistributeListIfname-list + + list distanceTable { + + description + "distanceTable"; + + config true; + key "sourceAddr"; + + + leaf sourceAddr { + type cml_data_types:CML_IPV4_PREFIX_T; + description "distance"; + } // END of sourceAddr definition. + + leaf distance { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "1..255"; + } + } // END of distance definition. + + leaf alistVal { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of alistVal definition. + + } // End of distanceTable-list + + list ripInterface { + + description + "RIP specific interface configuration"; + + config false; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf ifFlags { + type cml_data_types:CML_UINT8_T; + } // END of ifFlags definition. + + leaf lock { + type cml_data_types:CML_UINT16_T; + } // END of lock definition. + + leaf ifAuthMode { + type cml_data_types:CML_RIP_AUTH_MODE_T; + } // END of ifAuthMode definition. + + leaf ifAuthStr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifAuthStr definition. + + leaf ifKeyChain { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifKeyChain definition. + + leaf ifSplitHorizon { + type cml_data_types:CML_RIP_SPLIT_HORIZON_T; + } // END of ifSplitHorizon definition. + + leaf ifSendVersionType { + type cml_data_types:CML_RIP_SEND_VERSION_TYPE_T; + } // END of ifSendVersionType definition. + + leaf ifRecvVersionType { + type cml_data_types:CML_RIP_RECV_VERSION_TYPE_T; + } // END of ifRecvVersionType definition. + + leaf-list ifAccessList { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifAccessList definition. + + leaf-list ifPrefixList { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifPrefixList definition. + + leaf ifAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifAddr definition. + + leaf sentMcastUpdates { + type cml_data_types:CML_UINT32_T; + } // END of sentMcastUpdates definition. + + leaf sentMcastRequests { + type cml_data_types:CML_UINT32_T; + } // END of sentMcastRequests definition. + + leaf sentUnicastUpdates { + type cml_data_types:CML_UINT32_T; + } // END of sentUnicastUpdates definition. + + leaf sentUnicastRequests { + type cml_data_types:CML_UINT32_T; + } // END of sentUnicastRequests definition. + + leaf recvMcastUpdates { + type cml_data_types:CML_UINT32_T; + } // END of recvMcastUpdates definition. + + leaf recvMcastRequests { + type cml_data_types:CML_UINT32_T; + } // END of recvMcastRequests definition. + + leaf recvUnicastUpdates { + type cml_data_types:CML_UINT32_T; + } // END of recvUnicastUpdates definition. + + leaf recvUnicastRequests { + type cml_data_types:CML_UINT32_T; + } // END of recvUnicastRequests definition. + + leaf recvBadpackets { + type cml_data_types:CML_UINT32_T; + } // END of recvBadpackets definition. + + leaf recvBadroutes { + type cml_data_types:CML_UINT32_T; + } // END of recvBadroutes definition. + + leaf sentUpdates { + type cml_data_types:CML_UINT32_T; + } // END of sentUpdates definition. + + } // End of ripInterface-list + + list ripDatabase { + + description + "RIP routing information base"; + + config false; + key "prefix"; + + + leaf prefix { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of prefix definition. + + leaf routeType { + type cml_data_types:CML_INT32_T; + } // END of routeType definition. + + leaf subType { + type cml_data_types:CML_INT32_T; + } // END of subType definition. + + leaf tag { + type cml_data_types:CML_UINT16_T; + } // END of tag definition. + + leaf distance { + type cml_data_types:CML_UINT8_T; + } // END of distance definition. + + leaf flags { + type cml_data_types:CML_UINT8_T; + } // END of flags definition. + + leaf routeCounter { + type cml_data_types:CML_UINT32_T; + } // END of routeCounter definition. + + + list nexthop { + + description + "RIP nexthop"; + + config false; + key "nextHopAddr"; + + + leaf nextHopAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopAddr definition. + + leaf from { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of from definition. + + leaf ifindex { + type cml_data_types:CML_UINT32_T; + } // END of ifindex definition. + + leaf nexthopFlags { + type cml_data_types:CML_UINT8_T; + } // END of nexthopFlags definition. + + leaf routeMetric { + type cml_data_types:CML_UINT32_T; + } // END of routeMetric definition. + + leaf timeout { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of timeout definition. + + leaf nextHopOut { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopOut definition. + + leaf metricSet { + type cml_data_types:CML_UINT8_T; + } // END of metricSet definition. + + leaf metricOut { + type cml_data_types:CML_UINT32_T; + } // END of metricOut definition. + + leaf ifindexOut { + type cml_data_types:CML_UINT32_T; + } // END of ifindexOut definition. + + leaf nexthopTimeoutTime { + type cml_data_types:CML_UINT32_T; + } // END of nexthopTimeoutTime definition. + + } // End of nexthop-list + } // End of ripDatabase-list + + list ripPeer { + + description + "RIP peer table"; + + config false; + key "peerAddr"; + + + leaf peerAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of peerAddr definition. + + leaf domain { + type cml_data_types:CML_INT32_T; + } // END of domain definition. + + leaf uptime { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of uptime definition. + + leaf ifindex { + type cml_data_types:CML_INT32_T; + } // END of ifindex definition. + + leaf peerVersion { + type cml_data_types:CML_UINT8_T; + } // END of peerVersion definition. + + leaf peerFlags { + type cml_data_types:CML_UINT8_T; + } // END of peerFlags definition. + + leaf recvBadpackets { + type cml_data_types:CML_INT32_T; + } // END of recvBadpackets definition. + + leaf recvBadroutes { + type cml_data_types:CML_INT32_T; + } // END of recvBadroutes definition. + + } // End of ripPeer-list + uses ripListCmdsUtility; + } // END of ripContents definition. + grouping ripListCmdsUtility { + + list offsetList { + + description + "offsetList"; + + config true; + key "directStr"; + + + leaf alistName { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "offset-list"; + } // END of alistName definition. + + leaf directStr { + type cml_data_types:CML_RIP_DIRECTION_T; + } // END of directStr definition. + + leaf metric { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "0..16"; + } + } // END of metric definition. + + } // End of offsetList-list + + list distributionList { + + description + "distributionList"; + + config true; + key "directionStr"; + + + leaf listName { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "distribute-list"; + } // END of listName definition. + + leaf directionStr { + type cml_data_types:CML_RIP_DIRECTION_T; + } // END of directionStr definition. + + } // End of distributionList-list + + list distributionPrefixList { + + description + "distributionPrefixList"; + + config true; + key "distributeType"; + + + leaf prefixListName { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "distribute-list"; + } // END of prefixListName definition. + + leaf distributeType { + type cml_data_types:CML_RIP_DIRECTION_T; + } // END of distributeType definition. + + } // End of distributionPrefixList-list + } // END of ripListCmdsUtility definition. + + grouping ripConfiguration-grouping { + container ripConfiguration { + config true; + + description + "RIP master for system wide configuration and variables"; + + leaf gracePeriod { + if-feature feature_list:HAVE_RIP_GR_SUPPORT; + if-feature feature_list:HAVE_RESTART; + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "65535"; + description "rip restart grace-period"; + } // END of gracePeriod definition. + + leaf globalQueries { + type cml_data_types:CML_INT32_T; + config false; + } // END of globalQueries definition. + + leaf globalRouteChanges { + type cml_data_types:CML_INT32_T; + config false; + } // END of globalRouteChanges definition. + + leaf debugFlag { + type cml_data_types:CML_RIP_DEBUG_T; + description "debug rip"; + } // END of debugFlag definition. + + + list ripIntParam { + + description + "RIP interface parameter pool"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf receivePacket { + type cml_data_types:CML_BOOL_T; + description "ip rip receive-packet"; + } // END of receivePacket definition. + + leaf sendPacket { + type cml_data_types:CML_BOOL_T; + description "ip rip send-packet"; + } // END of sendPacket definition. + + leaf recvVersionType { + type cml_data_types:CML_RIP_RECV_VERSION_TYPE_T; + description "ip rip receive version"; + } // END of recvVersionType definition. + + leaf sendVersionType { + type cml_data_types:CML_RIP_SEND_VERSION_TYPE_T; + default "1"; + description "ip rip send version"; + } // END of sendVersionType definition. + + leaf authMode { + type cml_data_types:CML_RIP_AUTH_MODE_T; + description "ip rip authentication mode"; + } // END of authMode definition. + + leaf authString { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip rip authentication string"; + } // END of authString definition. + + leaf keyChain { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "ip rip authentication key-chain"; + } // END of keyChain definition. + + leaf splitHorizon { + type cml_data_types:CML_RIP_SPLIT_HORIZON_T; + description "ip rip split-horizon"; + } // END of splitHorizon definition. + + } // End of ripIntParam-list + container rip { + presence "yes"; + config true; + + description + "RIP Default instance"; + + leaf ripDefaultInstance { + mandatory true; + type cml_data_types:CML_RIP_INSTANCE_T; + description "router rip"; + } // END of ripDefaultInstance definition. + + leaf-list passiveifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "passive-interface"; + } // END of passiveifName definition. + + leaf-list route { + type cml_data_types:CML_IPV4_ADDR_T; + description "route"; + } // END of route definition. + + leaf BFDfalloverCheck { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_BOOL_T; + } // END of BFDfalloverCheck definition. + + leaf-list bfdNeighborAddr { + if-feature feature_list:HAVE_BFD; + type cml_data_types:CML_IPV4_ADDR_T; + } // END of bfdNeighborAddr definition. + + leaf updateTime { + type cml_data_types:CML_UINT32_T { + range "5..2147483647"; + } + default "30"; + } // END of updateTime definition. + + leaf timeoutTime { + type cml_data_types:CML_UINT32_T { + range "5..2147483647"; + } + default "180"; + } // END of timeoutTime definition. + + leaf garbageTime { + type cml_data_types:CML_UINT32_T { + range "5..2147483647"; + } + default "120"; + description "timers basic"; + } // END of garbageTime definition. + + leaf maxPrefixString { + type cml_data_types:CML_UINT32_T { + range "1..65535"; + } + default "1"; + description "maximum-prefix"; + } // END of maxPrefixString definition. + + leaf thresholdStr { + type cml_data_types:CML_INT32_T { + range "1..100"; + } + default "75"; + } // END of thresholdStr definition. + + leaf recvBufsize { + type cml_data_types:CML_UINT32_T { + range "8192..2147483647"; + } + default "8192"; + description "recv-buffer-size"; + } // END of recvBufsize definition. + + + list redistributeMap { + + description + "redistributeMap"; + + config true; + key "routeTypeVal"; + + + leaf routeTypeVal { + type cml_data_types:CML_RIP_REDIST_PROTOS_T; + description "redistribute"; + } // END of routeTypeVal definition. + + leaf metric { + mandatory true; + type cml_data_types:CML_INT32_T { + range "0..16"; + } + } // END of metric definition. + + leaf routeMap { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of routeMap definition. + + } // End of redistributeMap-list + + list vrfRip { + if-feature feature_list:HAVE_VRF_RIP; + + description + "Configure a RIP address family for each VRF configured"; + + config true; + key "vrfName"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + + list redistributeMapVRF { + + description + "redistributeMapVRF"; + + config true; + key "vrfRouteType"; + + + leaf vrfRouteType { + type cml_data_types:CML_RIP_VRF_REDIST_PROTOS_T; + description "redistribute"; + } // END of vrfRouteType definition. + + leaf metric { + mandatory true; + type cml_data_types:CML_INT32_T { + range "0..16"; + } + } // END of metric definition. + + leaf vrfRouteMap { + mandatory true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfRouteMap definition. + + } // End of redistributeMapVRF-list + uses ripContents; + } // End of vrfRip-list + uses ripContents; + } // END of rip-container definition. + } // END of ripConfiguration-container definition. + } // END of ripConfiguration-container definition. + + +} \ No newline at end of file diff --git a/yang-files/routemap.yang b/yang-files/routemap.yang new file mode 100644 index 00000000..4c672a9c --- /dev/null +++ b/yang-files/routemap.yang @@ -0,0 +1,423 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : routemap.yang +* +*/ + +submodule routemap { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "Layer-3 pbr configurations"; + + + revision "2016-12-28" { + description "support added for auto generation of routemap commands."; + } + + revision "2016-01-03" { + description "support added for implicit delete tags."; + } + + + + grouping pbrConfig-grouping { + list pbrConfig { + + description + "PBR Config related operations"; + + config true; + key "RouteMap"; + + + leaf vrId { + type cml_data_types:CML_UINT32_T; + default "0"; + } // END of vrId definition. + + leaf RouteMap { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of RouteMap definition. + + + list pbrPermit { + + description + "PBR Config related operations"; + + config true; + key "RmapPermit"; + + + leaf RmapPermit { + type cml_data_types:CML_RMAP_PERMIT_T; + } // END of RmapPermit definition. + + + list pbrSeq { + + description + "PBR Config related operations"; + + config true; + key "RmapSeq"; + + + leaf RmapSeq { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + } // END of RmapSeq definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf forwardInterface { + type cml_data_types:CML_FORWARDTYPE_T; + } // END of forwardInterface definition. + + leaf matchMetric { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + } // END of matchMetric definition. + + leaf metricValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of metricValue definition. + + leaf spfMinLength { + if-feature feature_list:HAVE_PBR; + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + default "500"; + } // END of spfMinLength definition. + + leaf spfMaxLength { + if-feature feature_list:HAVE_PBR; + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + default "5000"; + } // END of spfMaxLength definition. + + leaf vlanId { + if-feature feature_list:HAVE_PBR; + if-feature feature_list:HAVE_VLAN; + type cml_data_types:CML_STRING_T; + } // END of vlanId definition. + + leaf MacList { + if-feature feature_list:HAVE_PBR; + if-feature feature_list:HAVE_VLAN; + type cml_data_types:CML_STRING_T { + length "0..63"; + } + } // END of MacList definition. + + leaf Address { + type cml_data_types:CML_ROUTEMAP_LIST_T; + } // END of Address definition. + + leaf prefixList { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of prefixList definition. + + leaf matchNexthop { + type cml_data_types:CML_ROUTEMAP_LIST_T; + } // END of matchNexthop definition. + + leaf matchPeer { + type cml_data_types:CML_ROUTEMAP_LIST_T; + } // END of matchPeer definition. + + leaf matchPeerV6 { + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_ROUTEMAP_LIST_T; + } // END of matchPeerV6 definition. + + leaf nextHopPlist { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopPlist definition. + + leaf loadShare { + type cml_data_types:CML_BOOL_T; + } // END of loadShare definition. + + leaf NextHop { + if-feature feature_list:HAVE_PBR; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of NextHop definition. + + leaf NextHopv6 { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of NextHopv6 definition. + + leaf defaultHop { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of defaultHop definition. + + leaf DefaultHopV6 { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of DefaultHopV6 definition. + + leaf localHopV6 { + type cml_data_types:CML_IPV6_ADDR_T; + } // END of localHopV6 definition. + + leaf nexthopPeerAddr { + type cml_data_types:CML_BOOL_T; + } // END of nexthopPeerAddr definition. + + leaf asPathTag { + type cml_data_types:CML_BOOL_T; + } // END of asPathTag definition. + + leaf addPathRmap { + if-feature feature_list:HAVE_BGP_ADD_PATH; + type cml_data_types:CML_ADDPATH_RMAP_T; + } // END of addPathRmap definition. + + leaf Addressv6 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of Addressv6 definition. + + leaf prefixList6 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of prefixList6 definition. + + leaf matchNexthop6 { + if-feature feature_list:HAVE_ACL; + type cml_data_types:CML_ROUTEMAP_MATCH_T; + } // END of matchNexthop6 definition. + + leaf nextHopPlist6 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of nextHopPlist6 definition. + + leaf vpn4NextHopAddr { + if-feature feature_list:HAVE_VRF; + type cml_data_types:CML_IPV4_ADDR_T; + } // END of vpn4NextHopAddr definition. + + leaf matchNextTagValue { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of matchNextTagValue definition. + + leaf matchRouteType { + type cml_data_types:CML_ROUTEMAP_EXTERNAL_TYPE_LIST; + } // END of matchRouteType definition. + + leaf destRoutingTagValue { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + } // END of destRoutingTagValue definition. + + leaf matchAspathTag { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of matchAspathTag definition. + + leaf ospfMetricType { + type cml_data_types:CML_ROUTEMAP_OSPF_METRIC_TYPE_LIST; + } // END of ospfMetricType definition. + + leaf isisMetricType { + type cml_data_types:CML_ROUTEMAP_ISIS_METRIC_TYPE_LIST; + } // END of isisMetricType definition. + + leaf matchOriginCode { + type cml_data_types:CML_ROUTEMAP_ORIGIN_CODE; + } // END of matchOriginCode definition. + + leaf exactMatch { + type cml_data_types:CML_ROUT_MAP_EXACT_MATCH_T; + } // END of exactMatch definition. + + leaf matchCommunity { + type cml_data_types:CML_ROUTEMAP_COMMUNITY_LIST_T; + } // END of matchCommunity definition. + + leaf matchExtCommunity { + type cml_data_types:CML_ROUTEMAP_COMMUNITY_LIST_T; + } // END of matchExtCommunity definition. + + leaf prependLastAs { + type cml_data_types:CML_UINT32_T { + range "1..10"; + } + } // END of prependLastAs definition. + + leaf originCode { + type cml_data_types:CML_ROUTEMAP_ORIGIN_CODE; + } // END of originCode definition. + + leaf localPreference { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of localPreference definition. + + leaf weight { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of weight definition. + + leaf atomicAggregate { + type cml_data_types:CML_BOOL_T; + } // END of atomicAggregate definition. + + leaf aggregatorIpAddress { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of aggregatorIpAddress definition. + + leaf aggregatorAs { + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + } // END of aggregatorAs definition. + + leaf originatorId { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of originatorId definition. + + leaf communityList { + type cml_data_types:CML_ROUTEMAP_COMMUNITY_LIST_T; + } // END of communityList definition. + + leaf unreachabilityHalftime { + type cml_data_types:CML_UINT16_T { + range "1..45"; + } + } // END of unreachabilityHalftime definition. + + leaf maxSupressStableRouteTime { + type cml_data_types:CML_UINT16_T { + range "1..255"; + } + } // END of maxSupressStableRouteTime definition. + + leaf supressRouteTime { + type cml_data_types:CML_UINT16_T { + range "1..20000"; + } + } // END of supressRouteTime definition. + + leaf reuseRouteTime { + type cml_data_types:CML_UINT16_T { + range "1..20000"; + } + } // END of reuseRouteTime definition. + + leaf reachabilityHalfTime { + type cml_data_types:CML_UINT16_T { + range "1..45"; + } + } // END of reachabilityHalfTime definition. + + leaf level { + type cml_data_types:CML_LEVEL_LIST_T; + } // END of level definition. + + leaf asPathPrepend { + if-feature feature_list:HAVE_EXT_CAP_ASN; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of asPathPrepend definition. + + leaf additive { + type cml_data_types:CML_ROUTEMAP_ADDITIVE_LIST_T; + } // END of additive definition. + + leaf community { + type cml_data_types:CML_ROUTEMAP_COMMUNITY_T; + } // END of community definition. + + leaf extAdditive { + type cml_data_types:CML_ROUTEMAP_ADDITIVE_LIST_T; + } // END of extAdditive definition. + + leaf extCommunityRt { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of extCommunityRt definition. + + leaf extCommunitySo { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of extCommunitySo definition. + + leaf extCommunityCost { + type cml_data_types:CML_UINT32_T { + range "0..4294967295"; + } + } // END of extCommunityCost definition. + + leaf extCommunityId { + type cml_data_types:CML_INT32_T { + range "0..255"; + } + } // END of extCommunityId definition. + + leaf communityCostComparision { + type cml_data_types:CML_ROUTEMAP_COST_COMPARISION_T; + } // END of communityCostComparision definition. + + } // End of pbrSeq-list + } // End of pbrPermit-list + } // End of pbrConfig-list + } // END of pbrConfig-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/sflow.yang b/yang-files/sflow.yang new file mode 100644 index 00000000..b4559824 --- /dev/null +++ b/yang-files/sflow.yang @@ -0,0 +1,225 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : sflow.yang +* +*/ + +submodule sflow { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "sflow configurations"; + + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of SFLOW datamodel."; + } + + + grouping sflow-grouping { + container sflow { + presence "yes"; + config true; + + description + "sflow"; + + leaf sflowInstance { + mandatory true; + type cml_data_types:CML_BOOL_T; + description "sflow"; + } // END of sflowInstance definition. + + leaf collectorIP { + if-feature feature_list:HAVE_SFLOW; + type cml_data_types:CML_IPV4_ADDR_T; + } // END of collectorIP definition. + + leaf port { + if-feature feature_list:HAVE_SFLOW; + type cml_data_types:CML_INT32_T { + range "1024..65535"; + } + description "sFlow Collector Port Number"; + } // END of port definition. + + leaf receiver-time-out { + if-feature feature_list:HAVE_SFLOW; + type cml_data_types:CML_UINT32_T { + range "0..2147483647"; + } + description "receiver timeout value in sec"; + } // END of receiver-time-out definition. + + leaf max-datagram-size { + if-feature feature_list:HAVE_SFLOW; + type cml_data_types:CML_UINT16_T { + range "200..9000"; + } + description "sflow collector"; + } // END of max-datagram-size definition. + + leaf rate { + if-feature feature_list:HAVE_SFLOW; + if-feature feature_list:HAVE_BROADCOM; + type cml_data_types:CML_UINT32_T { + range "0..32000"; + } + description "Rate in packets per second"; + } // END of rate definition. + + leaf cache-size { + if-feature feature_list:HAVE_SFLOW; + if-feature feature_list:HAVE_ACL; + type cml_data_types:CML_UINT32_T { + range "1000..10000"; + } + } // END of cache-size definition. + + leaf accessrate { + if-feature feature_list:HAVE_SFLOW; + if-feature feature_list:HAVE_ACL; + if-feature feature_list:HAVE_BROADCOM; + type cml_data_types:CML_UINT16_T { + range "0..1000"; + } + } // END of accessrate definition. + + + list sflowInterfaceConfigs { + + description + "sampling and polling-interval configs of an interface"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + container pollingInterface { + config true; + + description + "pollingInterface"; + + leaf poll-interval { + type cml_data_types:CML_UINT8_T { + range "5..60"; + } + description "sflow interface poll-interval"; + } // END of poll-interval definition. + + } // END of pollingInterface-container definition. + container samplingIngress { + config true; + + description + "samplingIngress"; + + leaf ingressInstance { + type cml_data_types:CML_BOOL_T; + description "direction ingress"; + } // END of ingressInstance definition. + + leaf sampling-rate-Ingress { + type cml_data_types:CML_UINT32_T { + range "1024..1073741823"; + } + } // END of sampling-rate-Ingress definition. + + leaf max-header-size-Ingress { + type cml_data_types:CML_UINT16_T { + range "128..256"; + } + description "maximum header size"; + } // END of max-header-size-Ingress definition. + + } // END of samplingIngress-container definition. + container samplingEgress { + config true; + + description + "samplingEgress"; + + leaf egressInstance { + type cml_data_types:CML_BOOL_T; + description "direction egress"; + } // END of egressInstance definition. + + leaf sampling-rate-Egress { + type cml_data_types:CML_UINT32_T { + range "1024..1073741823"; + } + } // END of sampling-rate-Egress definition. + + leaf max-header-size-Egress { + type cml_data_types:CML_UINT16_T { + range "128..256"; + } + description "maximum header size"; + } // END of max-header-size-Egress definition. + + } // END of samplingEgress-container definition. + container samplingEnable { + config true; + + description + "samplingEnable"; + + leaf samplingEnable { + type cml_data_types:CML_BOOL_T; + description "Enable or Disable sampling rate configured on an interface"; + } // END of samplingEnable definition. + + } // END of samplingEnable-container definition. + } // End of sflowInterfaceConfigs-list + } // END of sflow-container definition. + } // END of sflow-container definition. + + grouping debugsflow-grouping { + container debugsflow { + config true; + + description + "debugsflow"; + + leaf debugsflow { + if-feature feature_list:HAVE_SFLOW; + type cml_data_types:SFLOW_DEBUG_OPTIONS_T; + default "all"; + } // END of debugsflow definition. + + } // END of debugsflow-container definition. + } // END of debugsflow-container definition. + + +} \ No newline at end of file diff --git a/yang-files/snmp.yang b/yang-files/snmp.yang new file mode 100644 index 00000000..83a249c9 --- /dev/null +++ b/yang-files/snmp.yang @@ -0,0 +1,408 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : snmp.yang +* +*/ + +submodule snmp { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "Simple Network Management Protocol"; + + + revision "2017-02-20" { + description "Added snmp server enable cli."; + } + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of SNMP datamodel."; + } + + + grouping snmp-grouping { + container snmp { + config true; + + description + "snmp related operations"; + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf enabled { + type cml_data_types:CML_BOOL_T; + } // END of enabled definition. + + leaf tcpsession { + if-feature feature_list:HAVE_SNMP_AGENT; + type cml_data_types:CML_BOOL_T; + description "snmp-server tcp-session"; + } // END of tcpsession definition. + + leaf linkup { + type cml_data_types:CML_BOOL_T; + } // END of linkup definition. + + leaf linkdown { + type cml_data_types:CML_BOOL_T; + } // END of linkdown definition. + + leaf trapenable { + type cml_data_types:CML_BOOL_T; + } // END of trapenable definition. + + leaf pktIn { + type cml_data_types:CML_UINT32_T; + config false; + description "SNMP packets input"; + } // END of pktIn definition. + + leaf pktInBadVer { + type cml_data_types:CML_UINT32_T; + config false; + description "Bad SNMP versions"; + } // END of pktInBadVer definition. + + leaf pktInUnknownCommunity { + type cml_data_types:CML_UINT32_T; + config false; + description "Unknown community name"; + } // END of pktInUnknownCommunity definition. + + leaf pktInIllOperation { + type cml_data_types:CML_UINT32_T; + config false; + description "Illegal operation for community name supplied"; + } // END of pktInIllOperation definition. + + leaf pktInEncodingError { + type cml_data_types:CML_UINT32_T; + config false; + description "Encoding errors"; + } // END of pktInEncodingError definition. + + leaf pktInRequestedVariables { + type cml_data_types:CML_UINT32_T; + config false; + description "Number of requested variables"; + } // END of pktInRequestedVariables definition. + + leaf pktInNumOfSetRequest { + type cml_data_types:CML_UINT32_T; + config false; + description "Number of altered variables"; + } // END of pktInNumOfSetRequest definition. + + leaf pktInNumOfGetPdu { + type cml_data_types:CML_UINT32_T; + config false; + description "Get-request PDUs"; + } // END of pktInNumOfGetPdu definition. + + leaf pktInNumOfGetNextPdu { + type cml_data_types:CML_UINT32_T; + config false; + description "Get-next PDUs"; + } // END of pktInNumOfGetNextPdu definition. + + leaf pktInNumOfSetPdu { + type cml_data_types:CML_UINT32_T; + config false; + description "Set-request PDUs"; + } // END of pktInNumOfSetPdu definition. + + leaf pktOut { + type cml_data_types:CML_UINT32_T; + config false; + description "SNMP packets output"; + } // END of pktOut definition. + + leaf pktOutTooBigError { + type cml_data_types:CML_UINT32_T; + config false; + description "Too big errors"; + } // END of pktOutTooBigError definition. + + leaf pktOutNoSuchNameError { + type cml_data_types:CML_UINT32_T; + config false; + description "No such name errors"; + } // END of pktOutNoSuchNameError definition. + + leaf pktOutBadValueError { + type cml_data_types:CML_UINT32_T; + config false; + description "Bad values errors"; + } // END of pktOutBadValueError definition. + + leaf pktOutGenError { + type cml_data_types:CML_UINT32_T; + config false; + description "General errors"; + } // END of pktOutGenError definition. + + leaf pktOutRespPdu { + type cml_data_types:CML_UINT32_T; + config false; + description "Response PDUs"; + } // END of pktOutRespPdu definition. + + leaf pktOutTrapPdu { + type cml_data_types:CML_UINT32_T; + config false; + description "Trap PDUs"; + } // END of pktOutTrapPdu definition. + + leaf engineID { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "snmp engineId"; + } // END of engineID definition. + + leaf debug { + type cml_data_types:CML_BOOL_T; + } // END of debug definition. + + + list snmpview { + if-feature feature_list:HAVE_SNMP_AGENT; + + description + "List of SNMP Views configured"; + + config true; + key "view"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf view { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of view definition. + + leaf snmpoid { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of snmpoid definition. + + leaf oidtree { + type cml_data_types:CML_SNMP_OID_TREE_T; + description "snmp-server view"; + } // END of oidtree definition. + + } // End of snmpview-list + + list snmpCommunity { + if-feature feature_list:HAVE_SNMP_AGENT; + + description + "List of SNMP communities configured"; + + config true; + key "community"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf community { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "snmp-server community"; + } // END of community definition. + + leaf communityView { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "view name"; + } // END of communityView definition. + + leaf communityViewVersion { + type cml_data_types:CML_SNMP_VERSION_T; + } // END of communityViewVersion definition. + + leaf communityViewVersionAccess { + type cml_data_types:CML_SNMP_ACCESS_T; + description "snmp-server community view"; + } // END of communityViewVersionAccess definition. + + leaf communityGroup { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "snmp-server community group"; + } // END of communityGroup definition. + + leaf communityAccess { + type cml_data_types:CML_SNMP_ACCESS_T; + description "snmp-server community access-privileges"; + } // END of communityAccess definition. + + leaf communityAcl { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "snmp-server community usr-acl"; + } // END of communityAcl definition. + + } // End of snmpCommunity-list + + list snmpuser { + if-feature feature_list:HAVE_SNMP_AGENT; + if-feature feature_list:HAVE_SNMP_V3; + + description + "List of SNMP users configured"; + + config true; + key "user"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf user { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of user definition. + + leaf usertype { + type cml_data_types:CML_SNMP_USER_T; + } // END of usertype definition. + + leaf authtype { + type cml_data_types:CML_SNMP_AUTH_T; + } // END of authtype definition. + + leaf authpassword { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of authpassword definition. + + leaf privtype { + type cml_data_types:CML_SNMP_PRIV_T; + } // END of privtype definition. + + leaf privpassword { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of privpassword definition. + + } // End of snmpuser-list + + list snmphost { + if-feature feature_list:HAVE_SNMP_AGENT; + + description + "remote_trap_host_configurations"; + + config true; + key "host"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf host { + type cml_data_types:CML_HOSTPNAME_T; + } // END of host definition. + + leaf hosttraps { + type cml_data_types:CML_SNMP_TYPE_T; + } // END of hosttraps definition. + + leaf version { + type cml_data_types:CML_SNMP_VERSION_T; + } // END of version definition. + + leaf versionstr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of versionstr definition. + + leaf version3 { + type cml_data_types:CML_VERSION3_T; + } // END of version3 definition. + + leaf version3str { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of version3str definition. + + leaf hostuser { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of hostuser definition. + + leaf udp { + type cml_data_types:CML_INT32_T { + range "1..65535"; + } + default "162"; + } // END of udp definition. + + } // End of snmphost-list + } // END of snmp-container definition. + } // END of snmp-container definition. + + +} \ No newline at end of file diff --git a/yang-files/ssh.yang b/yang-files/ssh.yang new file mode 100644 index 00000000..9fdf6ebe --- /dev/null +++ b/yang-files/ssh.yang @@ -0,0 +1,116 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : ssh.yang +* +*/ + +submodule ssh { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "ssh configurations"; + + + revision "2017-01-19" { + description "Changed vrf name as normal attr as it is optional parameter."; + } + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of SSH datamodel."; + } + + + grouping ssh-grouping { + container ssh { + config true; + + description + "ssh related operations"; + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf featuressh { + if-feature feature_list:HAVE_SSH_SERVER; + type cml_data_types:CML_BOOL_T; + description "feature ssh"; + } // END of featuressh definition. + + leaf serverPort { + if-feature feature_list:HAVE_SSH_SERVER; + type cml_data_types:CML_INT32_T { + range "1024..65535"; + } + description "SSH server port"; + } // END of serverPort definition. + + leaf loginAttempts { + if-feature feature_list:HAVE_SSH_SERVER; + type cml_data_types:CML_INT32_T; + default "3"; + description "ssh login-attempts"; + } // END of loginAttempts definition. + + leaf rsa { + if-feature feature_list:HAVE_SSH_SERVER; + type cml_data_types:CML_BOOL_T; + } // END of rsa definition. + + leaf dsa { + if-feature feature_list:HAVE_SSH_SERVER; + type cml_data_types:CML_BOOL_T; + } // END of dsa definition. + + leaf length { + if-feature feature_list:HAVE_SSH_SERVER; + type cml_data_types:CML_UINT32_T { + range "768..2048"; + } + } // END of length definition. + + leaf force { + if-feature feature_list:HAVE_SSH_SERVER; + type cml_data_types:CML_BOOL_T; + default false; + } // END of force definition. + + leaf debugssh { + if-feature feature_list:HAVE_SSH_SERVER; + type cml_data_types:CML_BOOL_T; + default false; + description "debug ssh server"; + } // END of debugssh definition. + + } // END of ssh-container definition. + } // END of ssh-container definition. + + +} \ No newline at end of file diff --git a/yang-files/switchportinterface.yang b/yang-files/switchportinterface.yang new file mode 100644 index 00000000..35a60937 --- /dev/null +++ b/yang-files/switchportinterface.yang @@ -0,0 +1,400 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : switchportinterface.yang +* +*/ + +submodule switchportinterface { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include vlan; + include bridge; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "switchport configuration"; + + + revision "2017-03-03" { + description "vlaninterface datamodel has been changed to switchportinterface."; + } + + revision "2017-02-25" { + description "added support for show cml running-config."; + } + + revision "2017-02-14" { + description "adding missing flag for cli generation."; + } + + revision "2017-02-10" { + description "modified customer-edge commands."; + } + + revision "2017-01-27" { + description "added support for l2protocol commands."; + } + + + + grouping switchportInterface-grouping { + list switchportInterface { + + description + "switchportInterface"; + + config true; + key "ifName"; + + + leaf vrId { + type cml_data_types:CML_INT32_T; + default "0"; + } // END of vrId definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf switchPortMode { + mandatory true; + type cml_data_types:CML_VLAN_PORT_MODE_T; + } // END of switchPortMode definition. + + leaf vlanAddExcept { + type cml_data_types:CML_VLAN_EXCEPT_T; + } // END of vlanAddExcept definition. + + leaf vlanId { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + description "switchport (access|hybrid|native trunk)"; + } // END of vlanId definition. + + leaf nativeVlanId { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + description "switchport trunk native"; + } // END of nativeVlanId definition. + + leaf allowedVlanRange { + type cml_data_types:CML_STRING_T; + description "switchport (access|hybrid|native trunk)"; + } // END of allowedVlanRange definition. + + leaf exceptVlanRange { + type cml_data_types:CML_STRING_T; + description "switchport (access|hybrid|native trunk)"; + } // END of exceptVlanRange definition. + + leaf customerEdgeType { + type cml_data_types:CML_VLAN_PORT_MODE_T; + } // END of customerEdgeType definition. + + leaf edgeVlanType { + type cml_data_types:CML_EDGE_VLAN_TYPE_T; + } // END of edgeVlanType definition. + + leaf vlanOperType { + type cml_data_types:CML_VLAN_OPER_TYPE_T; + } // END of vlanOperType definition. + + leaf cvlanRegWord { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of cvlanRegWord definition. + + leaf edgevlanId { + type cml_data_types:CML_UINT16_T; + } // END of edgevlanId definition. + + leaf-list transVlanId { + type cml_data_types:CML_UINT16_T; + } // END of transVlanId definition. + + leaf edgevlanIdRange { + type cml_data_types:CML_STRING_T; + } // END of edgevlanIdRange definition. + + leaf egressTagged { + type cml_data_types:CML_EGERSS_TAGGED_TYPE_T; + } // END of egressTagged definition. + + leaf edgeSvlan { + type cml_data_types:CML_UINT16_T; + } // END of edgeSvlan definition. + + leaf allowedVlan { + type cml_data_types:CML_ALLOWEDVLAN_T; + } // END of allowedVlan definition. + + leaf egrType { + type cml_data_types:CML_EGERSS_TAGGED_TYPE_T; + } // END of egrType definition. + + leaf vlanPbrPortMode { + type cml_data_types:CML_UINT8_T; + } // END of vlanPbrPortMode definition. + + leaf vlanPortIngressFilter { + type cml_data_types:CML_ENABLE_DISABLE_T; + default "enable"; + description "switchport mode hybrid ingress-filter"; + } // END of vlanPortIngressFilter definition. + + leaf frameType { + type cml_data_types:CML_VLAN_FRAME_TYPE_T; + default "all"; + description "switchport mode hybrid acceptable-frame-type"; + } // END of frameType definition. + + + list staticMac { + + description + "staticMac"; + + config true; + key "macAddr"; + + + leaf vlanIdMac { + type cml_data_types:CML_UINT16_T; + } // END of vlanIdMac definition. + + leaf svlanId { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + } // END of svlanId definition. + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "1..32"; + } + description "mac Address"; + } // END of bridgeId definition. + + leaf macAddr { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "mac Address"; + } // END of macAddr definition. + + leaf discardForward { + type cml_data_types:CML_DISCARDFORWARD_T; + } // END of discardForward definition. + + leaf priorityOverWrite { + type cml_data_types:CML_UINT8_T { + range "0..7"; + } + } // END of priorityOverWrite definition. + + leaf overMacType { + type cml_data_types:CML_OVERMACTYPE_T; + } // END of overMacType definition. + + } // End of staticMac-list + + list vlanUserTable { + + description + "vlanUserTable"; + + config true; + key "userPriority"; + + + leaf userPriority { + type cml_data_types:CML_UINT8_T { + range "0..7"; + } + } // END of userPriority definition. + + leaf regenPriority { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "0..7"; + } + } // END of regenPriority definition. + + } // End of vlanUserTable-list + + list vlanTraffic { + + description + "vlanTraffic"; + + config true; + key "userPriority"; + + + leaf userPriority { + type cml_data_types:CML_UINT8_T { + range "0..7"; + } + } // END of userPriority definition. + + leaf trafficClass { + type cml_data_types:CML_UINT8_T { + range "1..8"; + } + } // END of trafficClass definition. + + leaf trafficClassValue { + mandatory true; + type cml_data_types:CML_UINT8_T { + range "0..7"; + } + } // END of trafficClassValue definition. + + } // End of vlanTraffic-list + } // End of switchportInterface-list + } // END of switchportInterface-grouping definition. + + + grouping macAddressTable-grouping { + list macAddressTable { + + description + "macAddressTable"; + + config true; + key "macTable"; + + + leaf macTable { + type cml_data_types:CML_INT32_T; + } // END of macTable definition. + + leaf bridgeId { + type cml_data_types:CML_STRING_T { + length "1..32"; + } + description "mac Address"; + } // END of bridgeId definition. + + leaf macLimit { + type cml_data_types:CML_INT32_T; + } // END of macLimit definition. + + leaf macLimitRange { + type cml_data_types:CML_INT32_T { + range "5..32768"; + } + } // END of macLimitRange definition. + + leaf vlanRange { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "bridge instance vlan"; + } // END of vlanRange definition. + + leaf macLearn { + type cml_data_types:CML_INT32_T; + default "0"; + } // END of macLearn definition. + + } // End of macAddressTable-list + } // END of macAddressTable-grouping definition. + + + grouping vlanStacking-grouping { + list vlanStacking { + + description + "vlanStacking"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf vlanStackEnable { + type cml_data_types:CML_VLANSTACK_T; + } // END of vlanStackEnable definition. + + leaf etherType { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "0x8100"; + } // END of etherType definition. + + } // End of vlanStacking-list + } // END of vlanStacking-grouping definition. + + + grouping l2protocol-grouping { + list l2protocol { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + + description + "l2protocol"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf l2protocolType { + type cml_data_types:CML_L2_PROTOCOL_T; + } // END of l2protocolType definition. + + leaf l2discardprotocolType { + type cml_data_types:CML_DISCARD_L2_PROTOCOL_T; + } // END of l2discardprotocolType definition. + + leaf discard { + type cml_data_types:CML_BOOL_T; + } // END of discard definition. + + leaf peer { + type cml_data_types:CML_BOOL_T; + } // END of peer definition. + + leaf tunnelVlan { + type cml_data_types:CML_INT32_T; + } // END of tunnelVlan definition. + + } // End of l2protocol-list + } // END of l2protocol-grouping definition. + + +} \ No newline at end of file diff --git a/yang-files/syslog.yang b/yang-files/syslog.yang new file mode 100644 index 00000000..456c5ba8 --- /dev/null +++ b/yang-files/syslog.yang @@ -0,0 +1,113 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : syslog.yang +* +*/ + +submodule syslog { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "hostp syslog configurations"; + + + revision "2017-01-12" { + description "Changed vrf name as normal attr as it is optional parameter."; + } + + revision "2016-10-28" { + description "Initial version of SYSLOG datamodel."; + } + + + grouping hostpsyslog-grouping { + container hostpsyslog { + config true; + + description + "syslog related operations"; + + leaf defaultVrfSourceInterface { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of defaultVrfSourceInterface definition. + + leaf mgmtVrfSrcInterface { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mgmtVrfSrcInterface definition. + + leaf debuglogging { + if-feature feature_list:HAVE_DEBUG_MODULE_SEVERITY; + type cml_data_types:CML_LEVEL_T; + default "debuglogging"; + description "debug logging"; + } // END of debuglogging definition. + + leaf debug { + type cml_data_types:CML_BOOL_T; + description "debug logging"; + } // END of debug definition. + + + list syslogServer { + + description + "list of servers"; + + config true; + key "ServerAddr"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf ServerAddr { + type cml_data_types:CML_HOSTPNAME_T; + description "logging server"; + } // END of ServerAddr definition. + + leaf ServerSeverity { + type cml_data_types:CML_INT8_T { + range "0..7"; + } + default "7"; + } // END of ServerSeverity definition. + + leaf ServerFacility { + type cml_data_types:CML_FACILITY_T; + default "local7"; + } // END of ServerFacility definition. + + } // End of syslogServer-list + } // END of hostpsyslog-container definition. + } // END of hostpsyslog-container definition. + + +} \ No newline at end of file diff --git a/yang-files/tacacs.yang b/yang-files/tacacs.yang new file mode 100644 index 00000000..9ba09c5b --- /dev/null +++ b/yang-files/tacacs.yang @@ -0,0 +1,188 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : tacacs.yang +* +*/ + +submodule tacacs { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "Layer-3 tacacs configurations"; + + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of TAcacs datamodel."; + } + + + grouping tacacs-grouping { + container tacacs { + presence "yes"; + config true; + + description + "tacacs related operations"; + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf featureTacacs { + mandatory true; + type cml_data_types:CML_BOOL_T; + } // END of featureTacacs definition. + + leaf key { + if-feature feature_list:HAVE_HOSTPD; + if-feature feature_list:HAVE_AAA; + if-feature feature_list:HAVE_TACACS_CLIENT; + type cml_data_types:CML_BOOL_T; + default false; + description "Global key"; + } // END of key definition. + + leaf tacacsKeyEnable { + if-feature feature_list:HAVE_HOSTPD; + if-feature feature_list:HAVE_AAA; + if-feature feature_list:HAVE_TACACS_CLIENT; + type cml_data_types:CML_HOSTP_KEY_TYPE_T; + default "0"; + } // END of tacacsKeyEnable definition. + + leaf tacacsKeyWord { + if-feature feature_list:HAVE_HOSTPD; + if-feature feature_list:HAVE_AAA; + if-feature feature_list:HAVE_TACACS_CLIENT; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "tacacs-server key"; + } // END of tacacsKeyWord definition. + + leaf tacacsTimeOut { + if-feature feature_list:HAVE_HOSTPD; + if-feature feature_list:HAVE_AAA; + if-feature feature_list:HAVE_TACACS_CLIENT; + type cml_data_types:CML_UINT32_T { + range "1..60"; + } + default "5"; + description "tacacs-server timeout"; + } // END of tacacsTimeOut definition. + + leaf debugtacacs { + if-feature feature_list:HAVE_HOSTPD; + if-feature feature_list:HAVE_AAA; + if-feature feature_list:HAVE_TACACS_CLIENT; + type cml_data_types:CML_BOOL_T; + description "debug tacacs+"; + } // END of debugtacacs definition. + + leaf debugtacacsConfig { + if-feature feature_list:HAVE_HOSTPD; + if-feature feature_list:HAVE_AAA; + if-feature feature_list:HAVE_TACACS_CLIENT; + type cml_data_types:CML_BOOL_T; + description "Enable/Disable debug"; + } // END of debugtacacsConfig definition. + + + list tacacshost { + + description + "tacacshost"; + + config true; + key "hostAddr"; + + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf hostAddr { + type cml_data_types:CML_HOSTPNAME_T; + } // END of hostAddr definition. + + leaf key { + if-feature feature_list:HAVE_HOSTPD; + if-feature feature_list:HAVE_AAA; + if-feature feature_list:HAVE_TACACS_CLIENT; + type cml_data_types:CML_BOOL_T; + default false; + } // END of key definition. + + leaf keyEnable { + if-feature feature_list:HAVE_HOSTPD; + if-feature feature_list:HAVE_AAA; + if-feature feature_list:HAVE_TACACS_CLIENT; + type cml_data_types:CML_HOSTP_KEY_TYPE_T; + default "0"; + } // END of keyEnable definition. + + leaf keyWord { + if-feature feature_list:HAVE_HOSTPD; + if-feature feature_list:HAVE_AAA; + if-feature feature_list:HAVE_TACACS_CLIENT; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of keyWord definition. + + leaf port { + if-feature feature_list:HAVE_HOSTPD; + if-feature feature_list:HAVE_AAA; + if-feature feature_list:HAVE_TACACS_CLIENT; + type cml_data_types:CML_UINT32_T { + range "1025..65535"; + } + } // END of port definition. + + leaf timeout { + if-feature feature_list:HAVE_HOSTPD; + if-feature feature_list:HAVE_AAA; + if-feature feature_list:HAVE_TACACS_CLIENT; + type cml_data_types:CML_UINT32_T { + range "1..60"; + } + default "5"; + description "To represent the timeout configured by the user"; + } // END of timeout definition. + + } // End of tacacshost-list + } // END of tacacs-container definition. + } // END of tacacs-container definition. + + +} \ No newline at end of file diff --git a/yang-files/telnet.yang b/yang-files/telnet.yang new file mode 100644 index 00000000..18fecfea --- /dev/null +++ b/yang-files/telnet.yang @@ -0,0 +1,85 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : telnet.yang +* +*/ + +submodule telnet { + + belongs-to ZebOS { prefix ZebOS; } + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "Telnet configurations"; + + + revision "2017-01-19" { + description "Changed vrf name as normal attr as it is optional parameter."; + } + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of TELNET datamodel."; + } + + + grouping telnet-grouping { + container telnet { + config true; + + description + "telnet related commands"; + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "default"; + } // END of vrfName definition. + + leaf featureTelnet { + type cml_data_types:CML_BOOL_T; + description "feature telnet"; + } // END of featureTelnet definition. + + leaf port { + if-feature feature_list:HAVE_TELNET_SERVER; + type cml_data_types:CML_INT32_T { + range "1024..65535"; + } + description "Telnet server port"; + } // END of port definition. + + leaf debugtelnet { + if-feature feature_list:HAVE_TELNET_SERVER; + type cml_data_types:CML_BOOL_T; + default false; + description "debug telnet server"; + } // END of debugtelnet definition. + + } // END of telnet-container definition. + } // END of telnet-container definition. + + +} \ No newline at end of file diff --git a/yang-files/tfo.yang b/yang-files/tfo.yang new file mode 100644 index 00000000..d8fbaa8a --- /dev/null +++ b/yang-files/tfo.yang @@ -0,0 +1,163 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : tfo.yang +* +*/ + +submodule tfo { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "tfo_configuration"; + + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of TFO datamodel."; + } + + + grouping tfo-grouping { + container tfo { + config true; + + description + "tfo"; + + leaf tfostate { + if-feature feature_list:HAVE_TFO; + type cml_data_types:CML_ENABLE_DISABLE_T; + description "TFO"; + } // END of tfostate definition. + + + list fog_id { + if-feature feature_list:HAVE_TFO; + + description + "structure list will be list of struct fog_info"; + + config true; + key "fogid"; + + + leaf fogid { + type cml_data_types:CML_UINT32_T { + range "1..64"; + } + description "FOG tfc"; + } // END of fogid definition. + + leaf fogen { + mandatory true; + type cml_data_types:CML_ENABLE_DISABLE_T; + description "FOG status"; + } // END of fogen definition. + + leaf tfc { + if-feature feature_list:HAVE_TFO; + type cml_data_types:CML_UINT32_T { + range "0..63"; + } + description "fog tfc"; + } // END of tfc definition. + + leaf mpg_link_failure_cnt { + type cml_data_types:CML_INT64_T; + config false; + description "MPG Failure detection count"; + } // END of mpg_link_failure_cnt definition. + + leaf mpg_link_recover_cnt { + type cml_data_types:CML_INT64_T; + config false; + description "MPG link recover count"; + } // END of mpg_link_recover_cnt definition. + + leaf cpg_auto_disable_cnt { + type cml_data_types:CML_INT64_T; + config false; + description "CPG Auto Disable Count"; + } // END of cpg_auto_disable_cnt definition. + + leaf cpg_auto_enable_cnt { + type cml_data_types:CML_INT64_T; + config false; + description "CPG auto enable count"; + } // END of cpg_auto_enable_cnt definition. + + leaf cpg_disable_status { + type cml_data_types:CML_INT64_T; + config false; + description "To track CPG status"; + } // END of cpg_disable_status definition. + + leaf mpg_disable_status { + type cml_data_types:CML_INT64_T; + config false; + description "To track MPG status"; + } // END of mpg_disable_status definition. + + } // End of fog_id-list + + list tfo_interface { + if-feature feature_list:HAVE_TFO; + + description + "structure list will be list of strict interface. which will point MPG links and CPG links"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf fog { + type cml_data_types:CML_UINT32_T { + range "1..64"; + } + } // END of fog definition. + + leaf fog_type { + type cml_data_types:CML_FOG_IFCTYPE_T; + description "fog type"; + } // END of fog_type definition. + + leaf link_type { + type cml_data_types:CML_FOG_LINK_TYPE_T; + description "link type"; + } // END of link_type definition. + + } // End of tfo_interface-list + } // END of tfo-container definition. + } // END of tfo-container definition. + + +} \ No newline at end of file diff --git a/yang-files/usermgmt.yang b/yang-files/usermgmt.yang new file mode 100644 index 00000000..57d89a82 --- /dev/null +++ b/yang-files/usermgmt.yang @@ -0,0 +1,98 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : usermgmt.yang +* +*/ + +submodule usermgmt { + + belongs-to ZebOS { prefix ZebOS; } + + + import cml_data_types { + prefix cml_data_types; + } + + description + "Layer-3 usermgmt configurations"; + + + revision "2017-01-19" { + description "User not created properly-[jira-12851]."; + } + + revision "2016-12-27" { + description "Added snmp oid and documentation tag."; + } + + revision "2016-10-28" { + description "Initial version of USERMGMT datamodel."; + } + + + + grouping usermgmt-grouping { + list usermgmt { + + description + "usermgmt"; + + config true; + key "username"; + + + leaf username { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + description "Login name of the user"; + } // END of username definition. + + leaf encryptPassword { + type cml_data_types:CML_STRING_T { + length "26..106"; + } + } // END of encryptPassword definition. + + leaf password { + type cml_data_types:CML_STRING_T { + length "8..32"; + } + description "username"; + } // END of password definition. + + leaf role { + type cml_data_types:USER_MGMT_ROLE_OPTIONS_T; + default "network-user"; + description "username with role"; + } // END of role definition. + + } // End of usermgmt-list + } // END of usermgmt-grouping definition. + + grouping userDebug-grouping { + container userDebug { + config true; + + description + "userDebug"; + + leaf debuguser { + type cml_data_types:CML_BOOL_T; + description "debug user-mgmt"; + } // END of debuguser definition. + + } // END of userDebug-container definition. + } // END of userDebug-container definition. + + +} \ No newline at end of file diff --git a/yang-files/vlan.yang b/yang-files/vlan.yang index fd2539d9..8a906c59 100644 --- a/yang-files/vlan.yang +++ b/yang-files/vlan.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -16,15 +16,48 @@ submodule vlan { belongs-to ZebOS { prefix ZebOS; } + include interface; import cml_data_types { prefix cml_data_types; } + import feature_list { + prefix feature_list; + } + + description + "vlan configuration"; + + + revision "2017-03-05" { + description "added support for deletion of vlan type."; + } + + revision "2017-03-03" { + description "Added support for private-vlan host and promiscuous."; + } + + revision "2017-02-25" { + description "added support for show cml running-config."; + } + + revision "2017-02-24" { + description "cliflag added in vlanAccess objectlist."; + } + + revision "2017-02-21" { + description "changes for private-vlan."; + } + + revision "2017-02-14" { + description "adding missing flag for cli generation."; + } - revision "2016-10-20" { - description "Revisied on 2016-10-20."; } + revision "2017-01-28" { + description "mapped vlan objectlist with nsm vlan structure."; + } @@ -38,78 +71,335 @@ submodule vlan { key "vlanId"; - leaf vrId { - type cml_data_types:CML_INT32_T; - default "0"; - config true; - } // END of vrId definition. - leaf bridgeId { type cml_data_types:CML_STRING_T { length "1..32"; } - config true; } // END of bridgeId definition. + leaf vlanName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + default "NULL"; + } // END of vlanName definition. + leaf vlanId { type cml_data_types:CML_UINT16_T { range "2..4094"; } - config true; + description "vlanId to be created "; } // END of vlanId definition. - leaf vlanName { + leaf vlanType { + type cml_data_types:CML_VLAN_TYPE_T; + } // END of vlanType definition. + + leaf associateAddRemove { + type cml_data_types:CML_PVLAN_ADD_REMOVE_TYPE_T; + } // END of associateAddRemove definition. + + leaf associateVid { type cml_data_types:CML_STRING_T; - default "NULL"; - config true; - } // END of vlanName definition. + } // END of associateVid definition. + + leaf pvlanConfigured { + if-feature feature_list:HAVE_PVLAN; + type cml_data_types:CML_INT32_T; + config false; + } // END of pvlanConfigured definition. + + leaf evcId { + type cml_data_types:CML_INT8_T; + config false; + } // END of evcId definition. + + leaf ovcId { + type cml_data_types:CML_INT8_T; + config false; + } // END of ovcId definition. + + leaf pvlanType { + type cml_data_types:CML_PVLAN_TYPE_T; + } // END of pvlanType definition. + + leaf preserveCos { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_INT8_T; + config false; + } // END of preserveCos definition. + + leaf preserveVlanid { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_INT8_T; + config false; + } // END of preserveVlanid definition. + + leaf maxUni { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_INT8_T; + config false; + } // END of maxUni definition. + + leaf dscpCos { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_INT8_T; + config false; + } // END of dscpCos definition. + + leaf pcpCos { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_INT8_T; + config false; + } // END of pcpCos definition. + + leaf pcpDscpFlag { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_INT8_T; + config false; + } // END of pcpDscpFlag definition. leaf vlanState { mandatory true; type cml_data_types:CML_VLANSTATE_T; - config true; description "vlan state"; } // END of vlanState definition. - leaf vlanType { - type cml_data_types:CML_VLAN_TYPE_T; - default "custmor"; - config true; - } // END of vlanType definition. - leaf mtuVal { type cml_data_types:CML_UINT32_T; default "1500"; - config true; } // END of mtuVal definition. + leaf instance { + type cml_data_types:CML_INT32_T; + config false; + } // END of instance definition. + + leaf primaryVid { + if-feature feature_list:HAVE_G8032V2; + type cml_data_types:CML_INT8_T; + config false; + } // END of primaryVid definition. + + leaf erpsBitmask { + if-feature feature_list:NSM_VLAN_ERPS_CONF; + type cml_data_types:CML_INT8_T; + config false; + } // END of erpsBitmask definition. + + leaf operStatus { + if-feature feature_list:NSM_VLAN_ERPS_CONF; + type cml_data_types:CML_INT8_T; + config false; + } // END of operStatus definition. + + leaf bind { + if-feature feature_list:HAVE_NVO; + type cml_data_types:CML_INT8_T; + config false; + } // END of bind definition. + + leaf isAllowed { + type cml_data_types:CML_ALLOWED_FORBIDDEN_T; + default "forbidden"; + } // END of isAllowed definition. + + leaf multicast { + type cml_data_types:CML_BOOL_T; + default false; + } // END of multicast definition. + + leaf addFlag { + type cml_data_types:CML_ADD_REMOVE_T; + default "remove"; + } // END of addFlag definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + leaf bridgeName { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of bridgeName definition. leaf vlanRuntimeName { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of vlanRuntimeName definition. leaf vlanRuntimeState { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of vlanRuntimeState definition. - leaf vlanHwState { - type cml_data_types:CML_STRING_T; - config false; - } // END of vlanHwState definition. - leaf taggedInterface { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; } // END of taggedInterface definition. + container nsmvlanbmp { + config false; + + description + "nsm vlan bitmap information"; + + leaf bitmap { + if-feature feature_list:HAVE_PROVIDER_BRIDGE; + type cml_data_types:CML_INT32_T; + } // END of bitmap definition. + + } // END of nsmvlanbmp-container definition. + container nsmOvcInfo { + config false; + + description + "nsm ovc vlan information"; + + leaf ovcId { + type cml_data_types:CML_INT8_T; + } // END of ovcId definition. + + leaf oepid { + type cml_data_types:CML_INT8_T; + } // END of oepid definition. + + leaf preserveVlan { + type cml_data_types:CML_INT8_T; + } // END of preserveVlan definition. + + leaf num_ovcs { + type cml_data_types:CML_INT16_T; + } // END of num_ovcs definition. + + } // END of nsmOvcInfo-container definition. } // End of vlan-list } // END of vlan-grouping definition. + grouping pvlan-grouping { + list pvlan { + + description + "mapped private-vlan instance with nsm pvlan struct"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf pvlanId { + type cml_data_types:CML_UINT16_T { + range "2..4094"; + } + description "vlanId to be created "; + } // END of pvlanId definition. + + leaf pvlanMode { + type cml_data_types:CML_PVLAN_MODE_T; + } // END of pvlanMode definition. + + leaf pvlanMapAssociateAddRemove { + type cml_data_types:CML_PVLAN_ADD_REMOVE_TYPE_T; + } // END of pvlanMapAssociateAddRemove definition. + + leaf pvlanAssociate { + type cml_data_types:CML_UINT32_T; + } // END of pvlanAssociate definition. + + leaf pvlanMapVid { + type cml_data_types:CML_STRING_T; + } // END of pvlanMapVid definition. + + } // End of pvlan-list + } // END of pvlan-grouping definition. + + + grouping vlanAccessMap-grouping { + list vlanAccessMap { + + description + "vlanAccessMap"; + + config true; + key "accessMap"; + + + leaf vrId { + type cml_data_types:CML_INT32_T; + default "0"; + } // END of vrId definition. + + leaf accessMap { + type cml_data_types:CML_STRING_T { + length "1..32"; + } + } // END of accessMap definition. + + leaf sequenceNum { + mandatory true; + type cml_data_types:CML_UINT32_T { + range "1..4294967295"; + } + } // END of sequenceNum definition. + + leaf statisticsEntry { + type cml_data_types:CML_INT32_T; + } // END of statisticsEntry definition. + + leaf acttype { + type cml_data_types:CML_ACLTYPE_T; + } // END of acttype definition. + + leaf accessGroup { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of accessGroup definition. + + leaf vlanFilter { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vlanFilter definition. + + leaf vlanRange { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vlanRange definition. + + leaf actionType { + type cml_data_types:CML_ACTIONTYPE_T; + } // END of actionType definition. + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf vlanAccessEnd { + type cml_data_types:CML_INT32_T; + } // END of vlanAccessEnd definition. + + } // End of vlanAccessMap-list + } // END of vlanAccessMap-grouping definition. + + } \ No newline at end of file diff --git a/yang-files/vlaninterface.yang b/yang-files/vlaninterface.yang deleted file mode 100644 index 4daf4a92..00000000 --- a/yang-files/vlaninterface.yang +++ /dev/null @@ -1,261 +0,0 @@ -/* -* Copyright (C) 2016 IP Infusion, Inc. -* All Rights Reserved. -* -*** Auto generated by zebmdc - -* Unless required by applicable law or agreed to in writing, -* software distributed under the License is distributed on an -* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -* KIND, either express or implied. - -* File name : vlaninterface.yang -* -*/ - -submodule vlaninterface { - - belongs-to ZebOS { prefix ZebOS; } - include interface; - include vlan; - include bridge; - - - import cml_data_types { - prefix cml_data_types; - } - - - revision "2016-10-20" { - description "Revisied on 2016-10-20."; } - - - - grouping vlaninterface-grouping { - list vlaninterface { - - description - "vlaninterface"; - - config true; - key "ifName"; - - - leaf vrId { - type cml_data_types:CML_INT32_T; - default "0"; - config true; - } // END of vrId definition. - - leaf ifName { - type cml_data_types:CML_STRING_T; - config true; - description "switchport mode"; - } // END of ifName definition. - - leaf vlanPortMode { - mandatory true; - type cml_data_types:CML_VLAN_PORT_MODE_T; - config true; - } // END of vlanPortMode definition. - - leaf vlanPortIngressFilter { - type cml_data_types:CML_ENABLE_DISABLE_T; - default "enable"; - config true; - description "switchport mode hybrid ingress-filter"; - } // END of vlanPortIngressFilter definition. - - leaf frameType { - type cml_data_types:CML_VLAN_FRAME_TYPE_T; - default "all"; - config true; - description "switchport mode hybrid acceptable-frame-type"; - } // END of frameType definition. - - - list staticMac { - - description - "staticMac"; - - config true; - key "macAddr"; - - - leaf vlanIdMac { - type cml_data_types:CML_UINT16_T { - range "2..4096"; - } - config true; - } // END of vlanIdMac definition. - - leaf bridgeId { - type cml_data_types:CML_STRING_T { - length "1..32"; - } - config true; - description "mac Address"; - } // END of bridgeId definition. - - leaf macAddr { - type cml_data_types:CML_STRING_T; - config true; - description "mac Address"; - } // END of macAddr definition. - - leaf discardForward { - type cml_data_types:CML_DISCARDFORWARD_T; - config true; - } // END of discardForward definition. - - leaf priorityOverWrite { - type cml_data_types:CML_UINT8_T { - range "0..7"; - } - config true; - } // END of priorityOverWrite definition. - - leaf overMacType { - type cml_data_types:CML_OVERMACTYPE_T; - config true; - } // END of overMacType definition. - - } // End of staticMac-list - - list vlanInterfaceBound { - - description - "vlanInterfaceBound"; - - config true; - key "vlanId"; - - - leaf vlanId { - type cml_data_types:CML_UINT16_T; - config true; - description "switchport (access|hybrid|native trunk)"; - } // END of vlanId definition. - - leaf vlanPortMode { - mandatory true; - type cml_data_types:CML_VLAN_PORT_MODE_T; - config true; - } // END of vlanPortMode definition. - - } // End of vlanInterfaceBound-list - - list allowedvlan { - - description - "allowedvlan"; - - config true; - key "allowedVlanId"; - - - leaf allowedVlanId { - type cml_data_types:CML_UINT16_T; - config true; - description "switchport allowed (hybrid|trunk)"; - } // END of allowedVlanId definition. - - leaf vlanPortMode { - mandatory true; - type cml_data_types:CML_VLAN_PORT_MODE_T; - config true; - } // END of vlanPortMode definition. - - leaf egrType { - type cml_data_types:CML_ENABLE_DISABLE_T; - config true; - } // END of egrType definition. - - } // End of allowedvlan-list - - list excludevlan { - - description - "excludevlan"; - - config true; - key "excludeVlanId"; - - - leaf excludeVlanId { - type cml_data_types:CML_UINT16_T; - config true; - } // END of excludeVlanId definition. - - leaf vlanPortMode { - mandatory true; - type cml_data_types:CML_VLAN_PORT_MODE_T; - config true; - } // END of vlanPortMode definition. - - } // End of excludevlan-list - - list vlanUserTable { - - description - "vlanUserTable"; - - config true; - key "userPriority"; - - - leaf userPriority { - type cml_data_types:CML_UINT8_T { - range "0..7"; - } - config true; - } // END of userPriority definition. - - leaf regenPriority { - mandatory true; - type cml_data_types:CML_UINT8_T { - range "0..7"; - } - config true; - } // END of regenPriority definition. - - } // End of vlanUserTable-list - - list vlanTraffic { - - description - "vlanTraffic"; - - config true; - key "userPriority"; - - - leaf userPriority { - type cml_data_types:CML_UINT8_T { - range "0..7"; - } - config true; - } // END of userPriority definition. - - leaf trafficClass { - type cml_data_types:CML_UINT8_T { - range "1..8"; - } - config true; - } // END of trafficClass definition. - - leaf trafficClassValue { - mandatory true; - type cml_data_types:CML_UINT8_T { - range "0..7"; - } - config true; - } // END of trafficClassValue definition. - - } // End of vlanTraffic-list - } // End of vlaninterface-list - } // END of vlaninterface-grouping definition. - - -} \ No newline at end of file diff --git a/yang-files/vr.yang b/yang-files/vr.yang index f81bf827..a28fec54 100644 --- a/yang-files/vr.yang +++ b/yang-files/vr.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -16,23 +16,49 @@ submodule vr { belongs-to ZebOS { prefix ZebOS; } - include interface; include bridge; + include pim; + include mstp; + include rip; + include lacp; + include dhcpc; + include radius; + include auth; + include rib; + include igmp; + include pim4; include oambfd; + include hqos; + include mrib4; + include vrrp; + include vxlan; + include switchportinterface; + include vlan; include lag; - include l3vrrp; - include lacp; include vrf; - include lldpv2; + include interface; + include keychain; + include aclinterface; + include cmm; + include routemap; include ospf; + include acl; include bgp; - include vlaninterface; + include pbb; + include igmpsnooping; import cml_data_types { prefix cml_data_types; } + description + "Virtual router"; + + + revision "2016-10-29" { + description "Added configurable attributes and operations."; + } revision "2015-10-08" { description "Revisied on 2015-10-08."; @@ -44,7 +70,7 @@ submodule vr { list vr { description - "vr"; + "Virtual router object"; config true; key "vrId"; @@ -54,41 +80,98 @@ submodule vr { type cml_data_types:CML_UINT32_T { range "0..255"; } - config true; } // END of vrId definition. - leaf vrName { - type cml_data_types:CML_STRING_T; - config true; - } // END of vrName definition. + leaf name { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of name definition. - leaf protocol { - type cml_data_types:CML_STRING_T; - config true; - } // END of protocol definition. - leaf ipv6Protocol { - type cml_data_types:CML_STRING_T; - config true; - } // END of ipv6Protocol definition. + list vrInstances { + + description + "object for virtual router configurations"; + config true; + key "vrName"; + + + leaf vrName { + type cml_data_types:CML_STRING_T { + length "1..12"; + } + } // END of vrName definition. + + leaf description { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of description definition. + + leaf protocol { + type cml_data_types:CML_VR_PROTOCOL_T; + } // END of protocol definition. + + } // End of vrInstances-list uses bridge-grouping; + uses spanningTree-grouping; + uses pimDebug-grouping; + uses pimTermDebug-grouping; + uses mstpSpanningTree-grouping; + uses mstpbridge-grouping; + uses spanningPort-grouping; + uses bridgePort-grouping; + uses backboneBridge-grouping; + uses backboneBridgeInstance-grouping; + uses customerSpanningtree-grouping; + uses ripConfiguration-grouping; + uses nsmlacpInterface-grouping; + uses nsmportInterface-grouping; + uses DHCPClientInterface-grouping; + uses Hostpdradius-grouping; + uses radius-grouping; + uses authPort-grouping; + uses authmac-grouping; + uses ribInterface-grouping; + uses rib-grouping; + uses mrib4Igmp-grouping; + uses mrib4IgmpInterface-grouping; + uses pim4Vrf-grouping; + uses pim4Interface-grouping; + uses pim4Debug-grouping; uses bfd-grouping; uses bfdInterface-grouping; - uses lacpInterface-grouping; + uses qos-grouping; + uses mrib4Vrf-grouping; + uses mrib4Interface-grouping; uses Vrrp4Instance-grouping; uses Vrrp6Instance-grouping; - uses nsmlacpInterface-grouping; - uses nsmportInterface-grouping; + uses vrrp-grouping; + uses nsmnvo-grouping; + uses switchportInterface-grouping; + uses macAddressTable-grouping; + uses vlanStacking-grouping; + uses l2protocol-grouping; + uses pvlan-grouping; + uses vlanAccessMap-grouping; + uses lacpInterface-grouping; uses vrf-grouping; uses interface-grouping; - uses lldpv2Interface-grouping; + uses keychain-grouping; + uses aclInterface-grouping; + uses dmmMonitorPort-grouping; + uses pbrConfig-grouping; uses ospf-grouping; uses ospfInterface-grouping; uses teLinkOspf-grouping; + uses accessMasterIPv4-grouping; + uses accessMasterIPv6-grouping; uses bgp-grouping; uses vrfTable-grouping; - uses vlaninterface-grouping; + uses pbbInterface-grouping; + uses igmpSnoopInterface-grouping; } // End of vr-list } // END of vr-grouping definition. diff --git a/yang-files/vrf.yang b/yang-files/vrf.yang index 380ab3f0..c78a9045 100644 --- a/yang-files/vrf.yang +++ b/yang-files/vrf.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -22,8 +22,23 @@ submodule vrf { prefix cml_data_types; } + import feature_list { + prefix feature_list; + } + + description + "VPN Routing/Forwarding"; + + + revision "2016-12-30" { + description "Changes ported from XP-master."; + } - revision "2015-04-25" { + revision "2016-12-28" { + description "Added support for MAC VRF."; + } + + revision "2015-10-22" { description "Initial draft version."; } @@ -39,17 +54,17 @@ submodule vrf { key "vrfName"; - leaf vrId { - type cml_data_types:CML_UINT32_T; - default "0"; - config true; - } // END of vrId definition. - leaf vrfName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of vrfName definition. + leaf macVrf { + if-feature feature_list:HAVE_BGP_EVPN; + type cml_data_types:CML_BOOL_T; + } // END of macVrf definition. + leaf vrfId { type cml_data_types:CML_UINT32_T; config false; @@ -61,13 +76,15 @@ submodule vrf { } // END of fibId definition. leaf description { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of description definition. leaf routerId { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of routerId definition. } // End of vrf-list diff --git a/yang-files/l3vrrp.yang b/yang-files/vrrp.yang similarity index 76% rename from yang-files/l3vrrp.yang rename to yang-files/vrrp.yang index b6811833..4772e781 100644 --- a/yang-files/l3vrrp.yang +++ b/yang-files/vrrp.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -9,11 +9,11 @@ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. -* File name : l3vrrp.yang +* File name : vrrp.yang * */ -submodule l3vrrp { +submodule vrrp { belongs-to ZebOS { prefix ZebOS; } include interface; @@ -31,8 +31,24 @@ submodule l3vrrp { "Virtual Router Redundancy Protocol Configurations"; - revision "2016-08-01" { - description "Revisied on 2016-08-01."; + revision "2017-03-09" { + description "defect fix for JIRA-14208."; + } + + revision "2017-03-05" { + description "defect fix for JIRA-14042."; + } + + revision "2017-02-22" { + description "defect fix for JIRA-13624(GET)."; + } + + revision "2017-01-19" { + description "defect fix for JIRA-12146,12139."; + } + + revision "2016-09-01" { + description "Revisied on 2016-09-01."; } @@ -50,7 +66,6 @@ submodule l3vrrp { leaf vrId { type cml_data_types:CML_UINT32_T; default "0"; - config true; description "Virtual Router Id"; } // END of vrId definition. @@ -58,7 +73,6 @@ submodule l3vrrp { type cml_data_types:CML_INT32_T { range "1..255"; } - config true; description "vrrp instance id"; } // END of vrrpid definition. @@ -73,57 +87,78 @@ submodule l3vrrp { leaf ifName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } description "router vrrp"; } // END of ifName definition. leaf sender_ipv4 { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; description "Sender IP address"; } // END of sender_ipv4 definition. leaf primary_addr { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; description "Primary IPv4 address"; } // END of primary_addr definition. leaf adv_src_v4 { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; description "Source IPv4 address of advertisement"; } // END of adv_src_v4 definition. leaf ai_vip_v4 { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; description "Virtual IP address"; } // END of ai_vip_v4 definition. + leaf operational_primary_ipv4 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Operational primary IP address"; + } // END of operational_primary_ipv4 definition. + + leaf operational_master_ipv4 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Operational master IP address"; + } // END of operational_master_ipv4 definition. + leaf v2compatible { type cml_data_types:CML_BOOL_T; - config true; + default false; description "v2-compatible"; } // END of v2compatible definition. leaf virtualip { type cml_data_types:CML_IPV4_ADDR_T; - config true; description "virtual-ip"; } // END of virtualip definition. leaf conf_owner { type cml_data_types:CML_BOOL_T; - default false; - config true; description "virtual-ip as owner"; } // END of conf_owner definition. leaf operationalip { type cml_data_types:CML_IPV4_ADDR_T; - config true; description "opeartional Ip address"; } // END of operationalip definition. @@ -146,7 +181,6 @@ submodule l3vrrp { leaf vrId { type cml_data_types:CML_UINT32_T; default "0"; - config true; description "virtual Router Id"; } // END of vrId definition. @@ -154,7 +188,6 @@ submodule l3vrrp { type cml_data_types:CML_INT32_T { range "1..255"; } - config true; description "router vrrp instance"; } // END of vrrp6id definition. @@ -169,38 +202,55 @@ submodule l3vrrp { leaf ifName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } description "router ipv6 vrrp"; } // END of ifName definition. leaf virtualip6 { type cml_data_types:CML_IPV6_ADDR_T; - config true; description "virtual-ipv6"; } // END of virtualip6 definition. leaf owner6 { type cml_data_types:CML_BOOL_T; - default false; - config true; description "virtual-ipv6 as owner"; } // END of owner6 definition. leaf operationalip6 { type cml_data_types:CML_IPV6_ADDR_T; - config true; description "operational ipv6 address"; } // END of operationalip6 definition. + leaf operational_primary_ipv6 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Operational primary IP address"; + } // END of operational_primary_ipv6 definition. + + leaf operational_master_ipv6 { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + description "Operational master IP address"; + } // END of operational_master_ipv6 definition. + leaf adv_src_6 { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; description "Source IPv6 address of advertisement"; } // END of adv_src_6 definition. leaf ai_vip_v6 { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; description "Virtual IPv6 address"; } // END of ai_vip_v6 definition. @@ -211,27 +261,26 @@ submodule l3vrrp { } // END of Vrrp6Instance-grouping definition. grouping vrrp_configurations { leaf circuitifName { - type cml_data_types:CML_STRING_T; - config true; + type cml_data_types:CML_STRING_T { + length "0..255"; + } } // END of circuitifName definition. leaf prioritydelta { type cml_data_types:CML_UINT8_T { range "1..253"; } - config true; description "circuit-failover"; } // END of prioritydelta definition. leaf enable { type cml_data_types:CML_ENABLE_DISABLE_T; - config true; description "enable VRRP session on the router"; } // END of enable definition. leaf preemptmode { type cml_data_types:CML_VRRP_PREEMPT_MODE_T; - config true; + default "true"; description "preemption enable"; } // END of preemptmode definition. @@ -240,7 +289,6 @@ submodule l3vrrp { range "1..255"; } default "255"; - config true; description "Priority"; } // END of priority definition. @@ -248,7 +296,6 @@ submodule l3vrrp { type cml_data_types:CML_INT32_T { range "1..500000"; } - config true; description "switch back delay"; } // END of switchback definition. @@ -256,32 +303,40 @@ submodule l3vrrp { type cml_data_types:CML_INT32_T { range "5..4095"; } - config true; + default "100"; description "Advertisement interval"; } // END of advertiseinterval definition. leaf acceptmode { type cml_data_types:CML_VRRP_ACCEPT_MODE_T; - config true; + default "false"; description "accept mode enable"; } // END of acceptmode definition. + leaf multicastMembership { + type cml_data_types:CML_VRRP_MEMEBER_STATE; + config false; + description "state of Multicast membership on interface"; + } // END of multicastMembership definition. + leaf vrrp_old_mac { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; description "Old Mac for each VRRP session"; } // END of vrrp_old_mac definition. leaf prev_state { - type cml_data_types:CML_INT8_T; + type cml_data_types:CML_VRRP_STATE_T; config false; description "Previous State."; } // END of prev_state definition. leaf state { - type cml_data_types:CML_INT8_T; + type cml_data_types:CML_VRRP_STATE_T; config false; - description "Current State."; + description "vrrp state"; } // END of state definition. leaf af_type { @@ -295,6 +350,12 @@ submodule l3vrrp { config false; } // END of oper_ip_status definition. + leaf ifindex { + type cml_data_types:CML_INT32_T; + config false; + description "Interface. (ifindex)"; + } // END of ifindex definition. + leaf owner { type cml_data_types:CML_BOOL_T; config false; @@ -302,7 +363,7 @@ submodule l3vrrp { } // END of owner definition. leaf run_priority { - type cml_data_types:CML_BOOL_T; + type cml_data_types:CML_INT16_T; config false; description "Priority"; } // END of run_priority definition. @@ -320,7 +381,9 @@ submodule l3vrrp { } // END of master_adv_int definition. leaf vmac_mbyte_word { - type cml_data_types:CML_STRING_T; + type cml_data_types:CML_STRING_T { + length "0..255"; + } config false; description "Virtual Mac"; } // END of vmac_mbyte_word definition. @@ -385,6 +448,12 @@ submodule l3vrrp { description "VRRP Circuit Failover priority"; } // END of pri_zero_pkts_sent definition. + leaf admin_state { + type cml_data_types:CML_UINT8_T; + config false; + description "SNMP variables (admin_state)"; + } // END of admin_state definition. + leaf rowstatus { type cml_data_types:CML_INT32_T; config false; @@ -537,61 +606,57 @@ submodule l3vrrp { leaf ver_type { type cml_data_types:CML_UINT8_T; - config false; description "Version and Type"; } // END of ver_type definition. leaf advert_vrid { type cml_data_types:CML_UINT8_T; - config false; description "VrId"; } // END of advert_vrid definition. leaf advert_priority { type cml_data_types:CML_UINT8_T; - config false; description "Priority"; } // END of advert_priority definition. leaf advert_num_ip_addrs { type cml_data_types:CML_UINT8_T; - config false; description "Number of IP addresses to backup"; } // END of advert_num_ip_addrs definition. leaf advert_auth_type { type cml_data_types:CML_UINT8_T; - config false; description "Auth type"; } // END of advert_auth_type definition. leaf advert_advt_int { type cml_data_types:CML_UINT8_T; - config false; description "Advertisement interval"; } // END of advert_advt_int definition. leaf advert_cksum { type cml_data_types:CML_INT32_T; - config false; description "VRRP Checksum"; } // END of advert_cksum definition. leaf advert_ipv4_address { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } description "Virtual IP address"; } // END of advert_ipv4_address definition. leaf advert_ipv6_address { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } description "Virtual IPv6 address"; } // END of advert_ipv6_address definition. leaf advert_auth_data { - type cml_data_types:CML_STRING_T; - config false; + type cml_data_types:CML_STRING_T { + length "0..255"; + } description "Auth data"; } // END of advert_auth_data definition. @@ -607,13 +672,13 @@ submodule l3vrrp { leaf vmac { type cml_data_types:CML_VRRP_VMAC_T; - config true; + default "enable"; description "vrrp vmac"; } // END of vmac definition. leaf compatible { type cml_data_types:CML_VRRP_VMAC_T; - config true; + default "disable"; description "vrrp compatible-v2"; } // END of compatible definition. @@ -659,6 +724,63 @@ submodule l3vrrp { description "Instance table associate count value"; } // END of vrrp_asso_tbl_cnt definition. + leaf vrrp_sock { + type cml_data_types:CML_INT32_T; + config false; + description "Send/Recv socket (sock)"; + } // END of vrrp_sock definition. + + leaf vrrp_sock_net { + type cml_data_types:CML_INT32_T; + config false; + description "VRRP forwarding (layer 2) sockets (sock_net)"; + } // END of vrrp_sock_net definition. + + leaf vrrp_sock_promisc { + type cml_data_types:CML_INT32_T; + config false; + description "(sock_promisc)"; + } // END of vrrp_sock_promisc definition. + + leaf vrrp_sock_garp { + type cml_data_types:CML_INT32_T; + config false; + description "(sock_garp)"; + } // END of vrrp_sock_garp definition. + + leaf sock_vrrp { + type cml_data_types:CML_INT32_T; + config false; + description "(sock_vrrp)"; + } // END of sock_vrrp definition. + + leaf proto_err_reason { + type cml_data_types:CML_INT32_T; + config false; + description "(proto_err_reason)"; + } // END of proto_err_reason definition. + + leaf sock_pf_ndadvt { + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_INT32_T; + config false; + description "sock PF_PACKET for sending neighbor advrt (sock_pf_ndadvt)"; + } // END of sock_pf_ndadvt definition. + + leaf ipv6_sock { + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_INT32_T; + config false; + description "(vrrp->ipv6_sock)"; + } // END of ipv6_sock definition. + + leaf icmpv6_sock { + if-feature feature_list:HAVE_IPV6; + type cml_data_types:CML_INT32_T; + config false; + description "(vrrp->icmppv6_sock)"; + } // END of icmpv6_sock definition. + } // END of vrrp-container definition. } // END of vrrp-container definition. @@ -671,7 +793,6 @@ submodule l3vrrp { leaf debugflag { type cml_data_types:CML_VRRP_DEBUG_T; - config true; description "debug vrrp"; } // END of debugflag definition. diff --git a/yang-files/vxlan.yang b/yang-files/vxlan.yang new file mode 100644 index 00000000..b9882c9b --- /dev/null +++ b/yang-files/vxlan.yang @@ -0,0 +1,393 @@ +/* +* Copyright (C) 2016 IP Infusion, Inc. +* All Rights Reserved. +* +*** Auto generated by zebmdc + +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. + +* File name : vxlan.yang +* +*/ + +submodule vxlan { + + belongs-to ZebOS { prefix ZebOS; } + include interface; + include vlan; + include vrf; + + + import cml_data_types { + prefix cml_data_types; + } + + import feature_list { + prefix feature_list; + } + + description + "vxlan datamodel"; + + + revision "2016-12-28" { + description "Added extra commands in vxlan ."; + } + + revision "2016-03-05" { + description "changes for Jira-13917."; + } + + revision "2016-02-20" { + description "changes for bug fixes."; + } + + revision "2016-02-10" { + description "Added Get APIs in vxlan."; + } + + revision "2015-10-22" { + description "Initial draft version."; + } + + + grouping nsmnvo-grouping { + container nsmnvo { + presence "yes"; + config true; + + description + "nsm_nvo_master structure"; + + leaf nvoGlobalFlag { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of nvoGlobalFlag definition. + + leaf vxlanEnable { + mandatory true; + type cml_data_types:CML_BOOL_T; + } // END of vxlanEnable definition. + + leaf vtepIpv4 { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of vtepIpv4 definition. + + leaf isDynamicLearning { + type cml_data_types:CML_BOOL_T; + config false; + } // END of isDynamicLearning definition. + + leaf vxlanVtepGlobal { + type cml_data_types:CML_BOOL_T; + config false; + } // END of vxlanVtepGlobal definition. + + leaf vtepMcastSock { + type cml_data_types:CML_INT32_T; + config false; + } // END of vtepMcastSock definition. + + leaf nvgreEnable { + if-feature feature_list:HAVE_NVGRE; + type cml_data_types:CML_BOOL_T; + config false; + } // END of nvgreEnable definition. + + leaf nvgreBgpEnable { + if-feature feature_list:HAVE_NVGRE; + type cml_data_types:CML_BOOL_T; + config false; + } // END of nvgreBgpEnable definition. + + leaf isBgpUp { + if-feature feature_list:HAVE_BGP_EVPN; + type cml_data_types:CML_BOOL_T; + config false; + } // END of isBgpUp definition. + + + list nvoTenant { + if-feature feature_list:HAVE_NVO; + + description + "nvoTenant"; + + config true; + key "nvoId"; + + + leaf nvoId { + type cml_data_types:CML_UINT32_T { + range "1..16777215"; + } + } // END of nvoId definition. + + leaf type { + type cml_data_types:CML_BOOL_T; + } // END of type definition. + + leaf mcastIp { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of mcastIp definition. + + leaf ingRepl { + type cml_data_types:CML_BOOL_T; + } // END of ingRepl definition. + + leaf innerVidDisabled { + type cml_data_types:CML_BOOL_T; + } // END of innerVidDisabled definition. + + leaf hostReachabilityProtocol { + type cml_data_types:CML_BOOL_T; + } // END of hostReachabilityProtocol definition. + + leaf vrfName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vrfName definition. + + leaf rdStr { + if-feature feature_list:HAVE_BGP_EVPN; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of rdStr definition. + + leaf rtStr { + if-feature feature_list:HAVE_BGP_EVPN; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of rtStr definition. + + leaf mode { + type cml_data_types:CML_VXLAN_MODE_T; + config false; + } // END of mode definition. + + leaf vrfId { + type cml_data_types:CML_UINT32_T; + config false; + } // END of vrfId definition. + + leaf config { + type cml_data_types:CML_UINT32_T; + config false; + } // END of config definition. + + leaf vtepFlag { + type cml_data_types:CML_BOOL_T; + config false; + } // END of vtepFlag definition. + + + list nvoIfInfo { + + description + "nvo_if_info"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + } // End of nvoIfInfo-list + + list nvoIfVlanInfo { + + description + "nvo_if_info"; + + config true; + key "ifName"; + + + leaf ifName { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of ifName definition. + + leaf-list vlanId { + type cml_data_types:CML_STRING_T { + length "0..255"; + } + } // END of vlanId definition. + + leaf dfFlags { + if-feature feature_list:HAVE_BGP_EVPN; + type cml_data_types:CML_STRING_T { + length "0..255"; + } + config false; + } // END of dfFlags definition. + + } // End of nvoIfVlanInfo-list + + list nvoTunnelIndex { + + description + "nvoTunnel"; + + config false; + key "index"; + + + leaf index { + type cml_data_types:CML_UINT8_T; + } // END of index definition. + + + list nvoTunnel { + + description + "nvoTunnel"; + + config false; + key "sip"; + + + leaf sip { + type cml_data_types:CML_UINT8_T; + } // END of sip definition. + + leaf type { + type cml_data_types:CML_UINT8_T; + } // END of type definition. + + leaf mode { + type cml_data_types:CML_UINT8_T; + } // END of mode definition. + + leaf resolved { + type cml_data_types:CML_BOOL_T; + } // END of resolved definition. + + leaf addedToHw { + type cml_data_types:CML_BOOL_T; + } // END of addedToHw definition. + + leaf refCount { + type cml_data_types:CML_UINT16_T; + } // END of refCount definition. + + leaf egressIfindex { + type cml_data_types:CML_UINT32_T; + } // END of egressIfindex definition. + + leaf dip { + type cml_data_types:CML_INT32_T; + } // END of dip definition. + + leaf sport { + type cml_data_types:CML_UINT16_T; + } // END of sport definition. + + leaf dport { + type cml_data_types:CML_UINT16_T; + } // END of dport definition. + + } // End of nvoTunnel-list + } // End of nvoTunnelIndex-list + + list nvoArpCacheInfo { + + description + "nvoArpCacheInfo"; + + config false; + key "hostIp"; + + + leaf hostIp { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of hostIp definition. + + leaf hostMac { + type cml_data_types:CML_UINT8_T; + } // END of hostMac definition. + + leaf hostType { + type cml_data_types:CML_UINT8_T; + } // END of hostType definition. + + leaf ifindex { + type cml_data_types:CML_INT32_T; + } // END of ifindex definition. + + } // End of nvoArpCacheInfo-list + + list nvoMacMapping { + + description + "nvoMacMapping"; + + config false; + key "macAddr"; + + + leaf macAddr { + type cml_data_types:CML_UINT8_T; + } // END of macAddr definition. + + leaf prefix { + type cml_data_types:CML_IPV4_ADDR_T; + } // END of prefix definition. + + leaf type { + type cml_data_types:CML_UINT8_T; + } // END of type definition. + + leaf sticky { + type cml_data_types:CML_BOOL_T; + } // END of sticky definition. + + } // End of nvoMacMapping-list + + list nvoIfMap { + + description + "nvoIfMap"; + + config false; + key "ifmapindex"; + + + leaf ifmapindex { + type cml_data_types:CML_UINT32_T; + } // END of ifmapindex definition. + + leaf nvoMapType { + type cml_data_types:CML_UINT8_T; + } // END of nvoMapType definition. + + leaf vlanCount { + type cml_data_types:CML_UINT32_T; + } // END of vlanCount definition. + + leaf dfFlags { + type cml_data_types:CML_UINT8_T; + } // END of dfFlags definition. + + } // End of nvoIfMap-list + } // End of nvoTenant-list + } // END of nsmnvo-container definition. + } // END of nsmnvo-container definition. + + +} \ No newline at end of file diff --git a/yang-files/zebmcli.yang b/yang-files/zebmcli.yang index 3ce58e30..83ab06d7 100644 --- a/yang-files/zebmcli.yang +++ b/yang-files/zebmcli.yang @@ -1,5 +1,5 @@ /* -* Copyright (C) 2016 IP Infusion, Inc. +* Copyright (C) 2016 IP Infusion, Inc. * All Rights Reserved. * *** Auto generated by zebmdc @@ -27,12 +27,6 @@ module zebmcli { revision "2015-10-15" { description "initial version: revisied on 2015-10-15.";} - rpc commit-transaction { - } - - rpc abort-transaction { - } - rpc rollback-transaction { input { @@ -63,4 +57,30 @@ module zebmcli { } } + rpc set-transaction-limit { + + input { + leaf transaction-limit { + type cml_data_types:CML_UINT32_T; + mandatory true; + } + } + } + + rpc show-savepoint { + output { + leaf-list savepoint { + type cml_data_types:CML_STRING_T; + } + } + } + + rpc show-transaction-limit { + output { + leaf transaction-limit { + type cml_data_types:CML_STRING_T; + } + } + } + } \ No newline at end of file