Network Working Group M. Greene Request for Comments: 2677 Contractor Category: Standards Track J. Cucchiara IronBridge Networks J. Luciani Bay Networks August 1999 Definitions of Managed Objects for the NBMA Next Hop Resolution Protocol (NHRP) Status of this Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (1999). All Rights Reserved. Abstract This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it describes managed objects for the Next Hop Resolution Protocol (NHRP) as defined in RFC 2332. Table of Contents 1 Introduction ................................................. 2 2 The SNMP Management Framework ................................ 2 3 Structure of the MIB ......................................... 3 3.1 The NHRP General Group ..................................... 3 3.1.1 The NHRP Cache Table ..................................... 4 3.1.2 The NHRP Purge Request Table ............................. 4 3.2 The NHRP Client Group ...................................... 4 3.2.1 The NHRP Client Table .................................... 4 3.2.2 The NHRP Client Registration Table ....................... 5 3.2.3 The NHRP Client NHS Table ................................ 5 3.2.4 The NHRP Client Statistics Table ......................... 5 3.3 The NHRP Server Group ...................................... 5 3.3.1 The NHRP Server Table .................................... 5 3.3.2 The NHRP Server Cache Table .............................. 5 3.3.3 The NHRP Server NHC Table ................................ 6 Greene, et al. Standards Track [Page 1] RFC 2677 NHRP MIB August 1999 3.3.4 The NHRP Server Statistics Table ......................... 6 4 NBMA Next Hop Resolution Protocol MIB Definitions ............ 6 5 IANA Considerations .......................................... 62 6 Security ..................................................... 62 7 Intellectual Property ........................................ 63 8 Acknowledgments .............................................. 63 9 References ................................................... 64 10 Authors' Addresses .......................................... 66 11 Full Copyright Statement .................................... 67 1. Introduction This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it describes managed objects for the Next Hop Resolution Protocol (NHRP) as defined in RFC 2332 [17]. The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [21]. 2. The SNMP Management Framework The SNMP Management Framework presently consists of five major components: o An overall architecture, described in RFC 2571 [1]. o Mechanisms for describing and naming objects and events for the purpose of management. The first version of this Structure of Management Information (SMI) is called SMIv1 and described in STD 16, RFC 1155 [2], STD 16, RFC 1212 [3] and RFC 1215 [4]. The second version, called SMIv2, is described in STD 58, RFC 2578 [5], STD 58, RFC 2579 [6] and STD 58, RFC 2580 [7]. o Message protocols for transferring management information. The first version of the SNMP message protocol is called SNMPv1 and described in STD 15, RFC 1157 [8]. A second version of the SNMP message protocol, which is not an Internet standards track protocol, is called SNMPv2c and described in RFC 1901 [9] and RFC 1906 [10]. The third version of the message protocol is called SNMPv3 and described in RFC 1906 [10], RFC 2572 [11] and RFC 2574 [12]. Greene, et al. Standards Track [Page 2] RFC 2677 NHRP MIB August 1999 o Protocol operations for accessing management information. The first set of protocol operations and associated PDU formats is described in STD 15, RFC 1157 [8]. A second set of protocol operations and associated PDU formats is described in RFC 1905 [13]. o A set of fundamental applications described in RFC 2573 [14] and the view-based access control mechanism described in RFC 2575 [15]. A more detailed introduction to the current SNMP Management Framework can be found in RFC 2570 [16]. Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. Objects in the MIB are defined using the mechanisms defined in the SMI. This memo specifies a MIB module that is compliant to the SMIv2. A MIB conforming to the SMIv1 can be produced through the appropriate translations. The resulting translated MIB must be semantically equivalent, except where objects or events are omitted because no translation is possible (use of Counter64). Some machine readable information in SMIv2 will be converted into textual descriptions in SMIv1 during the translation process. However, this loss of machine readable information is not considered to change the semantics of the MIB. 3. Structure of the MIB The NHRP MIB contains three groups: the General Group, the Client Group, and the Server Group. 3.1. The NHRP General Group The General Group contains objects that apply to both clients and servers -- in particular the nhrpNextIndex scalar object, the NHRP Cache Table and the NHRP Purge Request Table. The nhrpNextIndex scalar object is used to provide unique indices for the nhprClientIndex in the nhrpClientTable and the nhrpServerIndex in the nhrpServerTable. If used consistently, this object may prevent conflicts when multiple managers attempt to create rows simultaneously in the same table. Greene, et al. Standards Track [Page 3] RFC 2677 NHRP MIB August 1999 3.1.1. The NHRP Cache Table The NHRP Cache Table represents the internetwork layer address to NBMA address cache that is maintained by both NHRP clients and NHRP servers. The NHRP Cache Table contains an ifIndex as part of the Index Clause. This ifIndex represents the use of a generic ifIndex, such that the value of this ifIndex SHOULD reflect a specific NBMA subnetwork related interface as determined by an implementation. For example, assuming that the NBMA subnetwork is ATM, then it is up to the implementors of this MIB to determine their own ATM interface layering (assuming compliance with the IF-MIB, RFC 2233 [18] and the ATM-MIB, RFC 2515 [19]). In other words, assuming that the NBMA subnetwork is ATM, the ifIndex in the NHRP Cache Table would represent the ifIndex containing or consisting of the VC (or shortcut) denoted by this Table entry. The indexing scheme for the NHRP Cache Table is very similar to the MPC Ingress Cache Table and the MPS Ingress Cache Table in the Multiprotocol Over ATM (MPOA) MIB [23]. This MIB and the MPOA MIB were designed to be complementary and non-overlapping. The MPOA MIB should also support this MIB. The MPOA MIB was designed prior to this MIB, and was designed by the LANE/MPOA Working Group in the ATM FORUM. The indexing scheme of the NHRP Cache Table (and the NHRP Server Cache Table) reflect the indexing scheme of the MPC Ingress Cache Table and the MPS Ingress Cache Table. Although, other indexing schemes could have been used for the NHRP Cache Table, a consistent indexing scheme between these tables was thought to be more advantageous from an implementation standpoint. 3.1.2. The NHRP Purge Request Table The NHRP Purge Request Table is a way to track Purge Request Information. 3.2. The NHRP Client Group The Client Group contains objects that only apply to NHRP clients (NHCs). 3.2.1. The NHRP Client Table The NHRP Client Table contains entries for NHRP Next Hop Clients (NHCs) associated with this agent. Each row in the table represents a single NHC. The RequestID used in Registration requests needs to be saved to non-volatile storage. Depending upon the implementation, Greene, et al. Standards Track [Page 4] RFC 2677 NHRP MIB August 1999 this may or may not impact how the StorageType is used. For a complete description of how the Registration RequestID is used, see Section 5.2.3 of [17]. 3.2.2. The NHRP Client Registration Table The NHRP Client Registration Table contains information on registration requests which need to be maintained by the Clients. Each entry in this table represents a single registration request. Note: since the NHRP specification does not mandate a refresh algorithm, this table omits refresh information, however, this table does contain information for all the registration requests which need to be maintained by the NHRP Clients. 3.2.3. The NHRP Client NHS Table The NHRP Client NHS Table contains the NBMA subnetwork addresses of servers configured for use by the client. By default, the agent will add an entry to this table which corresponds to the client's default router. 3.2.4. The NHRP Client Statistics Table The NHRP Client Statistics Table contains NHRP statistics maintained by a client. These statistics include counters on requests and replies, as well as counters for errors which are encountered by the Clients. 3.3. The NHRP Server Group The Server Group contains objects that only apply to NHRP servers (NHSes). 3.3.1. The NHRP Server Table The NHRP Server Table contains entries for each server associated with this agent. 3.3.2. The NHRP Server Cache Table The NHRP Server Cache Table contains additional objects that a server keeps for each entry in its cache. This table extends the NHRP Cache Table defined in the General Group. Greene, et al. Standards Track [Page 5] RFC 2677 NHRP MIB August 1999 3.3.3. The NHRP Server NHC Table This table contains information about all the Clients known to the Servers. 3.3.4. The NHRP Server Statistics Table The NHRP Server Statistics Table contains NHRP statistics maintained by a server. These statistics include counters on requests and replies, as well as counters for errors which are encountered by the Servers. 4. NBMA Next Hop Resolution Protocol MIB Definitions NHRP-MIB DEFINITIONS ::= BEGIN IMPORTS OBJECT-TYPE, MODULE-IDENTITY, mib-2, Integer32, Counter32, Unsigned32 FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF TEXTUAL-CONVENTION, TruthValue, RowStatus, StorageType, TimeStamp FROM SNMPv2-TC ifIndex FROM IF-MIB AddressFamilyNumbers FROM IANA-ADDRESS-FAMILY-NUMBERS-MIB ; nhrpMIB MODULE-IDENTITY LAST-UPDATED "9908260000Z" -- August 26, 1999 ORGANIZATION "Internetworking Over NBMA (ion) Working Group" CONTACT-INFO "Maria Greene (maria@xedia.com) Contractor Joan Cucchiara (joan@ironbridgenetworks.com) IronBridge Networks James V. Luciani (luciani@baynetworks.com) Bay Networks" Greene, et al. Standards Track [Page 6] RFC 2677 NHRP MIB August 1999 DESCRIPTION "This MIB contains managed object definitions for the Next Hop Resolution Procol, NHRP, as defined in RFC 2332 [17]." -- revision history REVISION "9908260000Z" -- August 26, 1999 DESCRIPTION "Initial version, published as RFC 2677." ::= { mib-2 71 } --**************************************************************** -- NHRP Textual Conventions --**************************************************************** NhrpGenAddr ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The value of an internetwork layer or NBMA address." SYNTAX OCTET STRING (SIZE (0..64)) nhrpObjects OBJECT IDENTIFIER ::= { nhrpMIB 1 } --**************************************************************** -- NHRP General (Client and Server) Objects --**************************************************************** nhrpGeneralObjects OBJECT IDENTIFIER ::= { nhrpObjects 1 } -- -- The following scalar is to be used to -- provided indices for the -- nhrpClientTable, and/or the nhrpServerTable. -- nhrpNextIndex OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "This scalar is used for creating rows in the nhrpClientTable and the nhrpServerTable. The value of this variable is a currently unused value for nhrpClientIndex and nhrpServerIndex. Greene, et al. Standards Track [Page 7] RFC 2677 NHRP MIB August 1999 The value returned when reading this variable must be unique for the NHC's and NHS's indices associated with this row. Subsequent attempts to read this variable must return different values. NOTE: this object exists in the General Group because it is to be used in establishing rows in the nhrpClientTable and the nhrpServerTable. In other words, the value retrieved from this object could become the value of nhrpClientIndex and nhprServerIndex. In the situation of an agent re-initialization the value of this object must be saved in non-volatile storage. This variable will return the special value 0 if no new rows can be created." ::= { nhrpGeneralObjects 1 } -- -- The NHRP Cache Table -- nhrpCacheTable OBJECT-TYPE SYNTAX SEQUENCE OF NhrpCacheEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains mappings between internetwork layer addresses and NBMA subnetwork layer addresses." ::= { nhrpGeneralObjects 2 } nhrpCacheEntry OBJECT-TYPE SYNTAX NhrpCacheEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A cached mapping between an internetwork layer address and an NBMA address. Entries can be created by the network administrator using the nhrpCacheRowStatus column, or they may be added dynamically based on protocol operation (including NHRP, SCSP, and others, such as ATMARP). When created based by NHRP protocol operations this entry is largely based on contents contained in the Client Information Entry (CIE). Greene, et al. Standards Track [Page 8] RFC 2677 NHRP MIB August 1999 Zero or more Client Information Entries (CIEs) may be included in the NHRP Packet. For a complete description of the CIE, refer to Section 5.2.0.1 of RFC 2332 [17]." INDEX { nhrpCacheInternetworkAddrType, nhrpCacheInternetworkAddr, ifIndex, nhrpCacheIndex } ::= { nhrpCacheTable 1 } NhrpCacheEntry ::= SEQUENCE { nhrpCacheInternetworkAddrType AddressFamilyNumbers, nhrpCacheInternetworkAddr NhrpGenAddr, nhrpCacheIndex Unsigned32, nhrpCachePrefixLength Integer32, nhrpCacheNextHopInternetworkAddr NhrpGenAddr, nhrpCacheNbmaAddrType AddressFamilyNumbers, nhrpCacheNbmaAddr NhrpGenAddr, nhrpCacheNbmaSubaddr NhrpGenAddr, nhrpCacheType INTEGER, nhrpCacheState INTEGER, nhrpCacheHoldingTimeValid TruthValue, nhrpCacheHoldingTime Unsigned32, nhrpCacheNegotiatedMtu Integer32, nhrpCachePreference Integer32, nhrpCacheStorageType StorageType, nhrpCacheRowStatus RowStatus } nhrpCacheInternetworkAddrType OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS not-accessible STATUS current DESCRIPTION "The internetwork layer address type of this Next Hop Resolution Cache entry. The value of this object indicates how to interpret the values of nhrpCacheInternetworkAddr and nhrpCacheNextHopInternetworkAddr." ::= { nhrpCacheEntry 1 } nhrpCacheInternetworkAddr OBJECT-TYPE SYNTAX NhrpGenAddr MAX-ACCESS not-accessible STATUS current Greene, et al. Standards Track [Page 9] RFC 2677 NHRP MIB August 1999 DESCRIPTION "The value of the internetwork address of the destination." ::= { nhrpCacheEntry 2 } nhrpCacheIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An identifier for this entry that has local significance within the scope of the General Group. This identifier is used here to uniquely identify this row, and also used in the 'nhrpPurgeTable' for the value of the 'nhrpPurgeCacheIdentifier'." ::= { nhrpCacheEntry 3 } nhrpCachePrefixLength OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-only STATUS current DESCRIPTION "The number of bits that define the internetwork layer prefix associated with the nhrpCacheInternetworkAddr." ::= { nhrpCacheEntry 4 } nhrpCacheNextHopInternetworkAddr OBJECT-TYPE SYNTAX NhrpGenAddr MAX-ACCESS read-create STATUS current DESCRIPTION "The value of the internetwork address of the next hop." ::= { nhrpCacheEntry 5 } nhrpCacheNbmaAddrType OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS read-create STATUS current DESCRIPTION "The NBMA address type. The value of this object indicates how to interpret the values of nhrpCacheNbmaAddr and nhrpCacheNbmaSubaddr." ::= { nhrpCacheEntry 6 } Greene, et al. Standards Track [Page 10] RFC 2677 NHRP MIB August 1999 nhrpCacheNbmaAddr OBJECT-TYPE SYNTAX NhrpGenAddr MAX-ACCESS read-create STATUS current DESCRIPTION "The value of the NBMA subnetwork address of the next hop." ::= { nhrpCacheEntry 7 } nhrpCacheNbmaSubaddr OBJECT-TYPE SYNTAX NhrpGenAddr MAX-ACCESS read-create STATUS current DESCRIPTION "The value of the NBMA subaddress of the next hop. If there is no subaddress concept for the NBMA address family, this value will be a zero-length OCTET STRING." ::= { nhrpCacheEntry 8 } nhrpCacheType OBJECT-TYPE SYNTAX INTEGER { other(1), register(2), resolveAuthoritative(3), resoveNonauthoritative(4), transit(5), administrativelyAdded(6), atmarp(7), scsp(8) } MAX-ACCESS read-create STATUS current DESCRIPTION "An indication of how this cache entry was created. The values are: 'other(1)' The entry was added by some other means. 'register(2)' In a server, added based on a client registration. 'resolveAuthoritative(3)' In a client, added based on receiving an Authoritative NHRP Resolution Reply. Greene, et al. Standards Track [Page 11] RFC 2677 NHRP MIB August 1999 'resolveNonauthoritative(4)' In a client, added based on receiving a Nonauthoritative NHRP Resolution Reply. 'transit(5)' In a transit server, added by examining a forwarded NHRP packet. 'administrativelyAdded(6)' In a client or server, manually added by the administrator. The StorageType of this entry is reflected in 'nhrpCacheStorageType'. 'atmarp(7)' The entry was added due to an ATMARP. 'scsp(8)' The entry was added due to SCSP. When the entry is under creation using the nhrpCacheRowStatus column, the only value that can be specified by the administrator is 'administrativelyAdded'. Attempting to set any other value will cause an 'inconsistentValue' error. The value cannot be modified once the entry is active." ::= { nhrpCacheEntry 9 } nhrpCacheState OBJECT-TYPE SYNTAX INTEGER { incomplete(1), ackReply(2), nakReply(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "An indication of the state of this entry. The values are: 'incomplete(1)' The client has sent a NHRP Resolution Request but has not yet received the NHRP Resolution Reply. Greene, et al. Standards Track [Page 12] RFC 2677 NHRP MIB August 1999 'ackReply(2)' For a client or server, this is a cached valid mapping. 'nakReply(3)' For a client or server, this is a cached NAK mapping." ::= { nhrpCacheEntry 10 } nhrpCacheHoldingTimeValid OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "True(1) is returned if the value of 'nhrpCacheType' is not 'administrativelyAdded'. Since the value of 'nhrpCacheType' was not configured by a user, the value of 'nhrpCacheHoldingTime' is considered valid. In other words, the value of 'nhrpCacheHoldingTime' represents the Holding Time for the cache Entry. If 'nhrpCacheType has been configured by a user, (i.e. the value of 'nhrpCacheType' is 'administrativelyAdded') then false(2) will be returned. This indicates that the value of 'nhrpCacheHoldingTime' is undefined because this row could possibly be backed up in nonvolatile storage." ::= { nhrpCacheEntry 11 } nhrpCacheHoldingTime OBJECT-TYPE SYNTAX Unsigned32(0..65535) UNITS "seconds" MAX-ACCESS read-only STATUS current DESCRIPTION "If the value of 'nhrpCacheHoldingTimeValid is true(1) then this object represents the number of seconds that the cache entry will remain in this table. When this value reaches 0 (zero) the row should be deleted. If the value of 'nhrpCacheHoldingTimeValid is false(2) then this object is undefined." ::= { nhrpCacheEntry 12 } Greene, et al. Standards Track [Page 13] RFC 2677 NHRP MIB August 1999 nhrpCacheNegotiatedMtu OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum transmission unit (MTU) that was negotiated or registered for this entity. In other words, this is the actual MTU being used." ::= { nhrpCacheEntry 13 } nhrpCachePreference OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "An object which reflects the Preference value of the Client Information Entry (CIE). Zero or more Client Information Entries (CIEs) may be included in the NHRP Packet. One of the fields in the CIE is the Preference. For a complete description of the CIE, refer to Section 5.2.0.1 of RFC 2332 [17]." REFERENCE "Section 5.2.0.1 Mandatory Part Format, RFC 2332 [17]." ::= { nhrpCacheEntry 14 } nhrpCacheStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "This value only has meaning when the 'nhrpCacheType' has the value of 'administrativelyAdded'. When the row is created due to being 'administrativelyAdded', this object reflects whether this row is kept in volatile storage and lost upon reboot or if this row is backed up by non-volatile or permanent storage. If the value of 'nhrpCacheType' has a value which is not 'administrativelyAdded, then the value of this object is 'other(1)'." DEFVAL { nonVolatile } ::= { nhrpCacheEntry 15 } Greene, et al. Standards Track [Page 14] RFC 2677 NHRP MIB August 1999 nhrpCacheRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "An object that allows entries in this table to be created and deleted using the RowStatus convention." ::= { nhrpCacheEntry 16 } -- -- The NHRP Purge Request Table -- nhrpPurgeReqTable OBJECT-TYPE SYNTAX SEQUENCE OF NhrpPurgeReqEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table will track Purge Request Information." ::= { nhrpGeneralObjects 3 } nhrpPurgeReqEntry OBJECT-TYPE SYNTAX NhrpPurgeReqEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information regarding a Purge Request." INDEX { nhrpPurgeIndex } ::= { nhrpPurgeReqTable 1 } NhrpPurgeReqEntry ::= SEQUENCE { nhrpPurgeIndex Unsigned32, nhrpPurgeCacheIdentifier Unsigned32, nhrpPurgePrefixLength Integer32, nhrpPurgeRequestID Unsigned32, nhrpPurgeReplyExpected TruthValue, nhrpPurgeRowStatus RowStatus } nhrpPurgeIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An index for this entry that has local significance within the scope of this table." ::= { nhrpPurgeReqEntry 1 } Greene, et al. Standards Track [Page 15] RFC 2677 NHRP MIB August 1999 nhrpPurgeCacheIdentifier OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS read-create STATUS current DESCRIPTION "This object identifies which row in 'nhrpCacheTable' is being purged. This object should have the same value as the 'nhrpCacheIndex' in the 'nhrpCacheTable'." ::= { nhrpPurgeReqEntry 2 } nhrpPurgePrefixLength OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-only STATUS current DESCRIPTION "In the case of NHRP Purge Requests, this specifies the equivalence class of addresses which match the first 'Prefix Length' bit positions of the Client Protocol Address specified in the Client Information Entry (CIE)." ::= { nhrpPurgeReqEntry 3 } nhrpPurgeRequestID OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The Request ID used in the purge request." ::= { nhrpPurgeReqEntry 4 } nhrpPurgeReplyExpected OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "An indication of whether this Purge Request has the 'N' Bit cleared (off)." ::= { nhrpPurgeReqEntry 5 } nhrpPurgeRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "An object that allows entries in this table to be created and deleted using the RowStatus convention." ::= { nhrpPurgeReqEntry 6 } Greene, et al. Standards Track [Page 16] RFC 2677 NHRP MIB August 1999 --**************************************************************** -- NHRP Client Objects --**************************************************************** nhrpClientObjects OBJECT IDENTIFIER ::= { nhrpObjects 2 } -- -- The NHRP Client Table -- nhrpClientTable OBJECT-TYPE SYNTAX SEQUENCE OF NhrpClientEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about NHRP clients (NHCs) managed by this agent." ::= { nhrpClientObjects 1 } nhrpClientEntry OBJECT-TYPE SYNTAX NhrpClientEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about a single NHC." INDEX { nhrpClientIndex } ::= { nhrpClientTable 1 } NhrpClientEntry ::= SEQUENCE { nhrpClientIndex Unsigned32, nhrpClientInternetworkAddrType AddressFamilyNumbers, nhrpClientInternetworkAddr NhrpGenAddr, nhrpClientNbmaAddrType AddressFamilyNumbers, nhrpClientNbmaAddr NhrpGenAddr, nhrpClientNbmaSubaddr NhrpGenAddr, nhrpClientInitialRequestTimeout Integer32, nhrpClientRegistrationRequestRetries Integer32, nhrpClientResolutionRequestRetries Integer32, nhrpClientPurgeRequestRetries Integer32, nhrpClientDefaultMtu Unsigned32, nhrpClientHoldTime Unsigned32, nhrpClientRequestID Unsigned32, nhrpClientStorageType StorageType, nhrpClientRowStatus RowStatus } Greene, et al. Standards Track [Page 17] RFC 2677 NHRP MIB August 1999 nhrpClientIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An identifier for the NHRP client that is unique within the scope of this agent. The 'nhrpNextIndex' value should be consulted (read), prior to creating a row in this table, and the value returned from reading 'nhrpNextIndex' should be used as this object's value." ::= { nhrpClientEntry 1 } nhrpClientInternetworkAddrType OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS read-create STATUS current DESCRIPTION "The type of the internetwork layer address of this client. This object indicates how the value of nhrpClientInternetworkAddr is to be interpreted." ::= { nhrpClientEntry 2 } nhrpClientInternetworkAddr OBJECT-TYPE SYNTAX NhrpGenAddr MAX-ACCESS read-create STATUS current DESCRIPTION "The value of the internetwork layer address of this client." ::= { nhrpClientEntry 3 } nhrpClientNbmaAddrType OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS read-create STATUS current DESCRIPTION "The type of the NBMA subnetwork address of this client. This object indicates how the values of nhrpClientNbmaAddr and nhrpClientNbmaSubaddr are to be interpreted." ::= { nhrpClientEntry 4 } nhrpClientNbmaAddr OBJECT-TYPE SYNTAX NhrpGenAddr MAX-ACCESS read-create STATUS current Greene, et al. Standards Track [Page 18] RFC 2677 NHRP MIB August 1999 DESCRIPTION "The NBMA subnetwork address of this client." ::= { nhrpClientEntry 5 } nhrpClientNbmaSubaddr OBJECT-TYPE SYNTAX NhrpGenAddr MAX-ACCESS read-create STATUS current DESCRIPTION "The NBMA subaddress of this client. For NBMA address families without a subaddress concept, this will be a zero-length OCTET STRING." ::= { nhrpClientEntry 6 } nhrpClientInitialRequestTimeout OBJECT-TYPE SYNTAX Integer32 (1..900) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The number of seconds that the client will wait before timing out an NHRP initial request. This object only has meaning for the initial timeout period." DEFVAL { 10 } ::= { nhrpClientEntry 7 } nhrpClientRegistrationRequestRetries OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "The number of times the client will retry the registration request before failure. A value of 0 means don't retry. A value of 65535 means retry forever." DEFVAL { 3 } ::= { nhrpClientEntry 8 } nhrpClientResolutionRequestRetries OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "The number of times the client will retry the resolution request before failure. A value of 0 means don't retry. A value of 65535 means retry forever." DEFVAL { 3 } ::= { nhrpClientEntry 9 } Greene, et al. Standards Track [Page 19] RFC 2677 NHRP MIB August 1999 nhrpClientPurgeRequestRetries OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "The number of times the client will retry a purge request before failure. A value of 0 means don't retry. A value of 65535 means retry forever." DEFVAL { 3 } ::= { nhrpClientEntry 10 } nhrpClientDefaultMtu OBJECT-TYPE SYNTAX Unsigned32 (0..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "The default maximum transmission unit (MTU) of the LIS/LAG which this client should use. This object will be initialized by the agent to the default MTU of the LIS/LAG (which is 9180) unless a different MTU value is specified during creation of this Client." REFERENCE "RFC 2225 [25], Classical IP and ARP over ATM, Section 7, DEFAULT VALUE FOR IP MTU OVER ATM AAL5." DEFVAL { 9180 } ::= { nhrpClientEntry 11 } nhrpClientHoldTime OBJECT-TYPE SYNTAX Unsigned32(0..65535) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The hold time the client will register." DEFVAL { 900 } ::= { nhrpClientEntry 12 } nhrpClientRequestID OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The Request ID used to register this client with its server. According to Section 5.2.3 of the NHRP Specification, RFC 2332 [17], the Request ID must be kept in non-volatile storage, so that if an NHC crashes and re-initializes, it will use a different Greene, et al. Standards Track [Page 20] RFC 2677 NHRP MIB August 1999 Request ID during the registration process when reregistering with the same NHS." REFERENCE "Section 5.2.3 NHRP Registration Request, RFC 2332 [17]." ::= { nhrpClientEntry 13 } nhrpClientStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "This object defines whether this row is kept in volatile storage and lost upon a Client crash or reboot situation, or if this row is backed up by nonvolatile or permanent storage." DEFVAL { nonVolatile } ::= { nhrpClientEntry 14 } nhrpClientRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "An object that allows entries in this table to be created and deleted using the RowStatus convention." ::= { nhrpClientEntry 15 } -- -- The NHRP Client Registration Table -- nhrpClientRegistrationTable OBJECT-TYPE SYNTAX SEQUENCE OF NhrpClientRegistrationEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of Registration Request Information that needs to be maintained by the NHCs (clients)." REFERENCE "Section 5.2.3 NHRP Registration Request, RFC 2332 [17]." ::= { nhrpClientObjects 2 } nhrpClientRegistrationEntry OBJECT-TYPE SYNTAX NhrpClientRegistrationEntry MAX-ACCESS not-accessible STATUS current Greene, et al. Standards Track [Page 21] RFC 2677 NHRP MIB August 1999 DESCRIPTION "An NHC needs to maintain registration request information between the NHC and the NHS. An entry in this table represents information for a single registration request." INDEX { nhrpClientIndex, nhrpClientRegIndex } ::= { nhrpClientRegistrationTable 1 } NhrpClientRegistrationEntry ::= SEQUENCE { nhrpClientRegIndex Unsigned32, nhrpClientRegUniqueness INTEGER, nhrpClientRegState INTEGER, nhrpClientRegRowStatus RowStatus } nhrpClientRegIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An identifier for this entry such that it identifies a specific Registration Request from the NHC represented by the nhrpClientIndex." ::= { nhrpClientRegistrationEntry 1 } nhrpClientRegUniqueness OBJECT-TYPE SYNTAX INTEGER { requestUnique(1), requestNotUnique(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "The Uniqueness indicator for this Registration Request. If this object has the value of requestUnique(1), then the Uniqueness bit is set in the the NHRP Registration Request represented by this row. The value cannot be changed once the row is created." ::= { nhrpClientRegistrationEntry 2 } nhrpClientRegState OBJECT-TYPE SYNTAX INTEGER { other(1), registering(2), ackRegisterReply(3), nakRegisterReply(4) Greene, et al. Standards Track [Page 22] RFC 2677 NHRP MIB August 1999 } MAX-ACCESS read-only STATUS current DESCRIPTION "The registration state of this client. The values are: 'other(1)' The state of the registration request is not one of 'registering', 'ackRegisterReply' or 'nakRegisterReply'. 'registering(2)' A registration request has been issued and a registration reply is expected. 'ackRegisterReply(3)' A positive registration reply has been received. 'nakRegisterReply(4)' The client has received a negative registration reply (NAK)." ::= { nhrpClientRegistrationEntry 3 } nhrpClientRegRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "An object that allows entries in this table to be created and deleted using the RowStatus convention." ::= { nhrpClientRegistrationEntry 4 } -- -- The NHRP Client->Server Table -- nhrpClientNhsTable OBJECT-TYPE SYNTAX SEQUENCE OF NhrpClientNhsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of NHSes that are available for use by this NHC (client). By default, the agent will add an entry to this table that corresponds to the client's default router." ::= { nhrpClientObjects 3 } Greene, et al. Standards Track [Page 23] RFC 2677 NHRP MIB August 1999 nhrpClientNhsEntry OBJECT-TYPE SYNTAX NhrpClientNhsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An NHS that may be used by an NHC." INDEX { nhrpClientIndex, nhrpClientNhsIndex } ::= { nhrpClientNhsTable 1 } NhrpClientNhsEntry ::= SEQUENCE { nhrpClientNhsIndex Unsigned32, nhrpClientNhsInternetworkAddrType AddressFamilyNumbers, nhrpClientNhsInternetworkAddr NhrpGenAddr, nhrpClientNhsNbmaAddrType AddressFamilyNumbers, nhrpClientNhsNbmaAddr NhrpGenAddr, nhrpClientNhsNbmaSubaddr NhrpGenAddr, nhrpClientNhsInUse TruthValue, nhrpClientNhsRowStatus RowStatus } nhrpClientNhsIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An identifier for an NHS available to an NHC." ::= { nhrpClientNhsEntry 1 } nhrpClientNhsInternetworkAddrType OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS read-create STATUS current DESCRIPTION "The type of the internetwork layer address of the NHRP server represented in this entry. This object indicates how the value of nhrpClientNhsInternetworkAddr is to be interpreted." ::= { nhrpClientNhsEntry 2 } nhrpClientNhsInternetworkAddr OBJECT-TYPE SYNTAX NhrpGenAddr MAX-ACCESS read-create STATUS current DESCRIPTION "The value of the destination internetwork layer address of the NHRP server represented by this Greene, et al. Standards Track [Page 24] RFC 2677 NHRP MIB August 1999 entry. If this value is not known, this will be a zero-length OCTET STRING." ::= { nhrpClientNhsEntry 3 } nhrpClientNhsNbmaAddrType OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS read-create STATUS current DESCRIPTION "The type of the NBMA subnetwork address of the NHRP Server represented by this entry. This object indicates how the values of nhrpClientNhsNbmaAddr and nhrpClientNhsNbmaSubaddr are to be interpreted." ::= { nhrpClientNhsEntry 4 } nhrpClientNhsNbmaAddr OBJECT-TYPE SYNTAX NhrpGenAddr MAX-ACCESS read-create STATUS current DESCRIPTION "The NBMA subnetwork address of the NHS. The type of the address is indicated by the corresponding value of nhrpClientNhsNbmaAddrType." ::= { nhrpClientNhsEntry 5 } nhrpClientNhsNbmaSubaddr OBJECT-TYPE SYNTAX NhrpGenAddr MAX-ACCESS read-create STATUS current DESCRIPTION "The NBMA subaddress of the NHS. For NMBA address families that do not have the concept of subaddress, this will be a zero-length OCTET STRING." ::= { nhrpClientNhsEntry 6 } nhrpClientNhsInUse OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "An indication of whether this NHS is in use by the NHC." ::= { nhrpClientNhsEntry 7 } nhrpClientNhsRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current Greene, et al. Standards Track [Page 25] RFC 2677 NHRP MIB August 1999 DESCRIPTION "An object that allows entries in this table to be created and deleted using the RowStatus convention." ::= { nhrpClientNhsEntry 8 } -- -- The NHRP Client StatisticsTable -- nhrpClientStatTable OBJECT-TYPE SYNTAX SEQUENCE OF NhrpClientStatEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains statistics collected by NHRP clients." ::= { nhrpClientObj