From 63e34d2a0e3b28fdccb27de3476002b47a54d9f2 Mon Sep 17 00:00:00 2001 From: Subeesh Sivanandan Date: Fri, 1 Jul 2016 12:42:30 +0530 Subject: [PATCH 1/9] 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 2/9] 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 3/9] 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 4/9] 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 5/9] 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 6/9] 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 7/9] 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 8/9] 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 9/9] 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.