nhdpNibNeighborSetEntry OBJECT-TYPE SYNTAX NhdpNibNeighborSetEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A router's Neighbor Set consists of Neighbor Tuples, each representing a single 1-hop neighbor: (N_neighbor_addr_list, N_symmetric)" REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" INDEX { nhdpDiscRouterIndex } ::= { nhdpNibNeighborSetTable 1 } NhdpNibNeighborSetEntry ::= SEQUENCE { nhdpNibNeighborSetNSymmetric TruthValue } nhdpNibNeighborSetNSymmetric OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "nhdpNibNeighborNSymmetric corresponds to N_symmetric of NHDP and is a boolean flag, describing if this is a symmetric 1-hop neighbor." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpNibNeighborSetEntry 1 } -- -- Lost Neighbor Set -- nhdpNibLostNeighborSetTable OBJECT-TYPE SYNTAX SEQUENCE OF NhdpNibLostNeighborSetEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A router's Lost Neighbor Set records network addresses of routers that were recently symmetric 1-hop neighbors but are now
advertised as lost." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpStateObjGrp 7 } nhdpNibLostNeighborSetEntry OBJECT-TYPE SYNTAX NhdpNibLostNeighborSetEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A router's Lost Neighbor Set consists of Lost Neighbor Tuples, each representing a single such network address: (NL_neighbor_addr, NL_time)" REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" INDEX { nhdpDiscRouterIndex } ::= { nhdpNibLostNeighborSetTable 1 } NhdpNibLostNeighborSetEntry ::= SEQUENCE { nhdpNibLostNeighborSetNLTime TimeStamp } nhdpNibLostNeighborSetNLTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "nhdpNibLostNeighborSetNLTime specifies the value of sysUptime when this entry should expire and be removed from the nhdpNibLostNeighborSetTable." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpNibLostNeighborSetEntry 1 } -- -- nhdpPerformanceObjGrp --
-- Contains objects that help to characterize the performance of -- the NHDP process, typically counters. -- nhdpPerformanceObjGrp OBJECT IDENTIFIER ::= { nhdpObjects 3 } -- -- Objects per local interface -- nhdpInterfacePerfTable OBJECT-TYPE SYNTAX SEQUENCE OF NhdpInterfacePerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table summarizes performance objects that are measured per local NHDP interface." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpPerformanceObjGrp 1 } nhdpInterfacePerfEntry OBJECT-TYPE SYNTAX NhdpInterfacePerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A single entry contains performance counters for a local NHDP interface." INDEX { nhdpIfIndex } ::= { nhdpInterfacePerfTable 1 } NhdpInterfacePerfEntry ::= SEQUENCE { nhdpIfHelloMessageXmits Counter32, nhdpIfHelloMessageRecvd Counter32, nhdpIfHelloMessageXmitAccumulatedSize Counter64, nhdpIfHelloMessageRecvdAccumulatedSize Counter64, nhdpIfHelloMessageTriggeredXmits Counter32, nhdpIfHelloMessagePeriodicXmits Counter32, nhdpIfHelloMessageXmitAccumulatedSymmetricNeighborCount
Counter32, nhdpIfHelloMessageXmitAccumulatedHeardNeighborCount Counter32, nhdpIfHelloMessageXmitAccumulatedLostNeighborCount Counter32 } nhdpIfHelloMessageXmits OBJECT-TYPE SYNTAX Counter32 UNITS "messages" MAX-ACCESS read-only STATUS current DESCRIPTION "A counter is incremented each time a HELLO message has been transmitted on that interface." ::= { nhdpInterfacePerfEntry 1 } nhdpIfHelloMessageRecvd OBJECT-TYPE SYNTAX Counter32 UNITS "messages" MAX-ACCESS read-only STATUS current DESCRIPTION "A counter is incremented each time a HELLO message has been received on that interface." ::= { nhdpInterfacePerfEntry 2 } nhdpIfHelloMessageXmitAccumulatedSize OBJECT-TYPE SYNTAX Counter64 UNITS "octets" MAX-ACCESS read-only STATUS current DESCRIPTION "A counter is incremented by the number of octets in a HELLO message each time a HELLO message has been sent." ::= { nhdpInterfacePerfEntry 3 } nhdpIfHelloMessageRecvdAccumulatedSize OBJECT-TYPE SYNTAX Counter64 UNITS "octets" MAX-ACCESS read-only STATUS current DESCRIPTION "A counter is incremented by the number of octets in a HELLO message each time a HELLO message has been received." ::= { nhdpInterfacePerfEntry 4 }
nhdpIfHelloMessageTriggeredXmits OBJECT-TYPE SYNTAX Counter32 UNITS "messages" MAX-ACCESS read-only STATUS current DESCRIPTION "A counter is incremented each time a triggered HELLO message has been sent." ::= { nhdpInterfacePerfEntry 5 } nhdpIfHelloMessagePeriodicXmits OBJECT-TYPE SYNTAX Counter32 UNITS "messages" MAX-ACCESS read-only STATUS current DESCRIPTION "A counter is incremented each time a periodic HELLO message has been sent." ::= { nhdpInterfacePerfEntry 6 } nhdpIfHelloMessageXmitAccumulatedSymmetricNeighborCount OBJECT-TYPE SYNTAX Counter32 UNITS "neighbors" MAX-ACCESS read-only STATUS current DESCRIPTION "A counter is incremented by the number of advertised symmetric neighbors in a HELLO each time a HELLO message has been sent." ::= { nhdpInterfacePerfEntry 7 } nhdpIfHelloMessageXmitAccumulatedHeardNeighborCount OBJECT-TYPE SYNTAX Counter32 UNITS "neighbors" MAX-ACCESS read-only STATUS current DESCRIPTION "A counter is incremented by the number of advertised heard neighbors in a HELLO each time a HELLO message has been sent." ::= { nhdpInterfacePerfEntry 8 } nhdpIfHelloMessageXmitAccumulatedLostNeighborCount OBJECT-TYPE SYNTAX Counter32 UNITS "neighbors" MAX-ACCESS read-only STATUS current DESCRIPTION
"A counter is incremented by the number of advertised lost neighbors in a HELLO each time a HELLO message has been sent." ::= { nhdpInterfacePerfEntry 9 } -- -- Objects per discovered neighbor interface -- nhdpDiscIfSetPerfTable OBJECT-TYPE SYNTAX SEQUENCE OF NhdpDiscIfSetPerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A router's set of performance properties for each discovered interface of a neighbor." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpPerformanceObjGrp 2 } nhdpDiscIfSetPerfEntry OBJECT-TYPE SYNTAX NhdpDiscIfSetPerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "There is an entry for each discovered interface of a neighbor." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" INDEX { nhdpDiscIfIndex } ::= { nhdpDiscIfSetPerfTable 1 } NhdpDiscIfSetPerfEntry ::= SEQUENCE { nhdpDiscIfRecvdPackets Counter32, nhdpDiscIfExpectedPackets Counter32 } nhdpDiscIfRecvdPackets OBJECT-TYPE SYNTAX Counter32 UNITS "packets" MAX-ACCESS read-only STATUS current
DESCRIPTION "This counter increments each time this router receives a packet from that interface of the neighbor." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpDiscIfSetPerfEntry 1 } nhdpDiscIfExpectedPackets OBJECT-TYPE SYNTAX Counter32 UNITS "packets" MAX-ACCESS read-only STATUS current DESCRIPTION "This counter increments by the number of missed packets from this neighbor based on the packet sequence number each time this router receives a packet from that interface of the neighbor." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpDiscIfSetPerfEntry 2 } -- -- Objects concerning the Neighbor Set -- nhdpNibNeighborSetChanges OBJECT-TYPE SYNTAX Counter32 UNITS "changes" MAX-ACCESS read-only STATUS current DESCRIPTION "This counter increments each time the Neighbor Set changes. A change occurs whenever a new Neighbor Tuple has been added, a Neighbor Tuple has been removed, or any entry of a Neighbor Tuple has been modified." ::= { nhdpPerformanceObjGrp 3 } -- -- Objects per discovered neighbor -- nhdpDiscNeighborSetPerfTable OBJECT-TYPE SYNTAX SEQUENCE OF NhdpDiscNeighborSetPerfEntry
MAX-ACCESS not-accessible STATUS current DESCRIPTION "A router's set of discovered neighbors and their properties." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpPerformanceObjGrp 4 } nhdpDiscNeighborSetPerfEntry OBJECT-TYPE SYNTAX NhdpDiscNeighborSetPerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The entries include the nhdpDiscRouterIndex of the discovered router as well as performance objects related to changes of the Neighbor Set." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" INDEX { nhdpDiscRouterIndex } ::= { nhdpDiscNeighborSetPerfTable 1 } NhdpDiscNeighborSetPerfEntry ::= SEQUENCE { nhdpDiscNeighborNibNeighborSetChanges Counter32, nhdpDiscNeighborNibNeighborSetUpTime TimeStamp, nhdpDiscNeighborNibNeighborSetReachableLinkChanges Counter32 } nhdpDiscNeighborNibNeighborSetChanges OBJECT-TYPE SYNTAX Counter32 UNITS "changes" MAX-ACCESS read-only STATUS current DESCRIPTION "This object returns the number of changes to the given Neighbor Tuple." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove,
C., and J. Dean, April 2011" ::= { nhdpDiscNeighborSetPerfEntry 1 } nhdpDiscNeighborNibNeighborSetUpTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "This object returns the sysUpTime when the neighbor becomes 'nbrup'. A neighbor is said to become 'nbrup' if a new nhdpNibNeighborSetEntry is created for a particular nhdpNibNeighborSetRouterIndex. It becomes 'nbrdown' if the entry for that neighbor has been deleted." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpDiscNeighborSetPerfEntry 2 } nhdpDiscNeighborNibNeighborSetReachableLinkChanges OBJECT-TYPE SYNTAX Counter32 UNITS "changes" MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts each time the neighbor changes the interface(s) over which it is reachable. A change in the set of Link Tuples corresponding to the appropriate Neighbor Tuple is registered, i.e., a corresponding Link Tuple is added or removed from the set of all corresponding Link Tuples." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpDiscNeighborSetPerfEntry 3 } -- -- Objects per discovered 2-hop neighbor -- nhdpIib2HopSetPerfTable OBJECT-TYPE SYNTAX SEQUENCE OF NhdpIib2HopSetPerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains performance objects per discovered 2-hop neighbor."
REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpPerformanceObjGrp 5 } nhdpIib2HopSetPerfEntry OBJECT-TYPE SYNTAX NhdpIib2HopSetPerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The entries contain performance objects per discovered 2-hop neighbor." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" INDEX { nhdpDiscRouterIndex } ::= { nhdpIib2HopSetPerfTable 1 } NhdpIib2HopSetPerfEntry ::= SEQUENCE { nhdpIib2HopSetPerfChanges Counter32, nhdpIib2HopSetPerfUpTime TimeStamp } nhdpIib2HopSetPerfChanges OBJECT-TYPE SYNTAX Counter32 UNITS "changes" MAX-ACCESS read-only STATUS current DESCRIPTION "This object counts the changes of the union of all N2_neighbor_iface_addr_list of 2-Hop Tuples with an N2_2hop_addr equal to one of the given 2-hop neighbor's addresses." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpIib2HopSetPerfEntry 1 } nhdpIib2HopSetPerfUpTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current
DESCRIPTION "This object returns the sysUpTime when the 2-Hop Tuple corresponding to the given 2-hop neighbor IP address was registered in the nhdpIib2HopSetTable." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpIib2HopSetPerfEntry 2 } -- -- nhdpNotifications -- nhdpNotificationsObjects OBJECT IDENTIFIER ::= { nhdpNotifications 0 } nhdpNotificationsControl OBJECT IDENTIFIER ::= { nhdpNotifications 1 } nhdpNotificationsStates OBJECT IDENTIFIER ::= { nhdpNotifications 2 } -- nhdpNotificationsObjects nhdpNbrStateChange NOTIFICATION-TYPE OBJECTS { nhdpIfName, -- The originator of -- the notification. nhdpNbrState -- The new state } STATUS current DESCRIPTION "nhdpNbrStateChange is a notification sent when more than nhdpNbrStateChangeThreshold neighbors change their status (i.e., 'down(0)', 'asymmetric(1)', or 'symmetric(2)') within a time window of nhdpNbrStateChangeWindow." ::= { nhdpNotificationsObjects 1 } nhdp2HopNbrStateChange NOTIFICATION-TYPE OBJECTS { nhdpIfName, -- The originator -- of the notification nhdp2HopNbrState -- The new state } STATUS current DESCRIPTION "nhdp2HopNbrStateChange is a notification sent when more than nhdp2HopNbrStateChangeThreshold 2-hop neighbors change their status (i.e., 'down(0)' or 'up(1)') within a time window of nhdp2HopNbrStateChangeWindow." ::= { nhdpNotificationsObjects 2 }
nhdpIfStateChange NOTIFICATION-TYPE OBJECTS { nhdpIfName, -- The local interface nhdpIfStatus -- The new status } STATUS current DESCRIPTION "nhdpIfStateChange is a notification sent when nhdpIfStatus has changed on this interface." ::= { nhdpNotificationsObjects 3 } -- nhdpNotificationsControl nhdpNbrStateChangeThreshold OBJECT-TYPE SYNTAX Integer32 (0..255) UNITS "changes" MAX-ACCESS read-write STATUS current DESCRIPTION "A threshold value for the nhdpNbrStateChange object. If the number of occurrences exceeds this threshold within the previous nhdpNbrStateChangeWindow, then the nhdpNbrStateChange notification is to be sent. It is recommended that the value of this threshold be set to at least 10 and higher in dense topologies with frequent expected topology changes." DEFVAL { 10 } ::= { nhdpNotificationsControl 1 } nhdpNbrStateChangeWindow OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-write STATUS current DESCRIPTION "A time window for the nhdpNbrStateChange object. If the number of occurrences exceeds the nhdpNbrStateChangeThreshold within the previous nhdpNbrStateChangeWindow, then the nhdpNbrStateChange notification is to be sent. It is recommended that the value for this window be set to at least 5 times the nhdpHelloInterval.
This object represents the time in hundredths of a second." DEFVAL { 1000 } ::= { nhdpNotificationsControl 2 } nhdp2HopNbrStateChangeThreshold OBJECT-TYPE SYNTAX Integer32 (0..255) UNITS "changes" MAX-ACCESS read-write STATUS current DESCRIPTION "A threshold value for the nhdp2HopNbrStateChange object. If the number of occurrences exceeds this threshold within the previous nhdp2HopNbrStateChangeWindow, then the nhdp2HopNbrStateChange notification is to be sent. It is recommended that the value of this threshold be set to at least 10 and higher when topologies are expected to be highly dynamic." DEFVAL { 10 } ::= { nhdpNotificationsControl 3 } nhdp2HopNbrStateChangeWindow OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-write STATUS current DESCRIPTION "A time window for the nhdp2HopNbrStateChange object. If the number of occurrences exceeds the nhdp2HopNbrStateChangeThreshold within the previous nhdp2HopNbrStateChangeWindow, then the nhdp2HopNbrStateChange notification is to be sent. It is recommended that the value for this window be set to at least 5 times nhdpHelloInterval. This object represents the time in hundredths of a second." DEFVAL { 1000 } ::= { nhdpNotificationsControl 4 } -- nhdpNotificationStates
nhdpNbrState OBJECT-TYPE SYNTAX INTEGER { down(0), asymmetric(1), symmetric(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "NHDP neighbor states. In NHDP, it is not necessary to remove Protocol Tuples from Protocol Sets at the exact time indicated, only to behave as if the Protocol Tuples were removed at that time. This case is indicated here as 'down(0)', all other cases being indicated as 'asymmetric(1)' or 'symmetric(2)'. If 'down(0)', the direct neighbor is also added to the nhdpNibLostNeighborSetTable." ::= { nhdpNotificationsStates 1 } nhdp2HopNbrState OBJECT-TYPE SYNTAX INTEGER { down(0), up(1) } MAX-ACCESS read-only STATUS current DESCRIPTION "NHDP 2-hop neighbor states. In NHDP, it is not necessary to remove Protocol Tuples from Protocol Sets at the exact time indicated, only to behave as if the Protocol Tuples were removed at that time. This case is indicated here as 'down(0)'; otherwise, it is 'up(1)'." ::= { nhdpNotificationsStates 2 } -- -- nhdpConformance information -- nhdpCompliances OBJECT IDENTIFIER ::= { nhdpConformance 1 } nhdpMIBGroups OBJECT IDENTIFIER ::= { nhdpConformance 2 } -- Compliance Statements nhdpBasicCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The basic implementation requirements for managed network entities that implement NHDP."
MODULE -- this module MANDATORY-GROUPS { nhdpConfigurationGroup } ::= { nhdpCompliances 1 } nhdpFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The full implementation requirements for managed network entities that implement NHDP." MODULE -- this module MANDATORY-GROUPS { nhdpConfigurationGroup, nhdpStateGroup, nhdpNotificationObjectGroup, nhdpNotificationGroup, nhdpPerformanceGroup } ::= { nhdpCompliances 2 } -- -- Units of Conformance -- nhdpConfigurationGroup OBJECT-GROUP OBJECTS { nhdpIfName, nhdpIfStatus, nhdpHelloInterval, nhdpHelloMinInterval, nhdpRefreshInterval, nhdpLHoldTime, nhdpHHoldTime, nhdpHystAcceptQuality, nhdpHystRejectQuality, nhdpInitialQuality, nhdpInitialPending, nhdpHpMaxJitter, nhdpHtMaxJitter, nhdpNHoldTime, nhdpIHoldTime, nhdpIfRowStatus, nhdpLibLocalIfSetIfIndex, nhdpLibLocalIfSetIpAddrType, nhdpLibLocalIfSetIpAddr, nhdpLibLocalIfSetIpAddrPrefixLen, nhdpLibLocalIfSetRowStatus, nhdpLibRemovedIfAddrSetIpAddrType, nhdpLibRemovedIfAddrSetIpAddr,
nhdpLibRemovedIfAddrSetIpAddrPrefixLen, nhdpLibRemovedIfAddrSetIfIndex, nhdpLibRemovedIfAddrSetIRTime } STATUS current DESCRIPTION "Set of NHDP configuration objects implemented in this module." ::= { nhdpMIBGroups 2 } nhdpStateGroup OBJECT-GROUP OBJECTS { nhdpUpTime, nhdpIfStateUpTime, nhdpDiscRouterIndex, nhdpDiscIfIndex, nhdpDiscIfSetIpAddrType, nhdpDiscIfSetIpAddr, nhdpDiscIfSetIpAddrPrefixLen, nhdpIibLinkSetLHeardTime, nhdpIibLinkSetLSymTime, nhdpIibLinkSetLPending, nhdpIibLinkSetLLost, nhdpIibLinkSetLTime, nhdpIib2HopSetIpAddrPrefixLen, nhdpIib2HopSet1HopIfIndex, nhdpIib2HopSetN2Time, nhdpNibNeighborSetNSymmetric, nhdpNibLostNeighborSetNLTime } STATUS current DESCRIPTION "Set of NHDP state objects implemented in this module." ::= { nhdpMIBGroups 3 } nhdpPerformanceGroup OBJECT-GROUP OBJECTS { nhdpIfHelloMessageXmits, nhdpIfHelloMessageRecvd, nhdpIfHelloMessageXmitAccumulatedSize, nhdpIfHelloMessageRecvdAccumulatedSize, nhdpIfHelloMessageTriggeredXmits, nhdpIfHelloMessagePeriodicXmits, nhdpIfHelloMessageXmitAccumulatedSymmetricNeighborCount, nhdpIfHelloMessageXmitAccumulatedHeardNeighborCount, nhdpIfHelloMessageXmitAccumulatedLostNeighborCount, nhdpDiscIfRecvdPackets,
nhdpDiscIfExpectedPackets, nhdpNibNeighborSetChanges, nhdpDiscNeighborNibNeighborSetChanges, nhdpDiscNeighborNibNeighborSetUpTime, nhdpDiscNeighborNibNeighborSetReachableLinkChanges, nhdpIib2HopSetPerfChanges, nhdpIib2HopSetPerfUpTime } STATUS current DESCRIPTION "Set of NHDP performance objects implemented in this module." ::= { nhdpMIBGroups 4 } nhdpNotificationObjectGroup OBJECT-GROUP OBJECTS { nhdpNbrStateChangeThreshold, nhdpNbrStateChangeWindow, nhdp2HopNbrStateChangeThreshold, nhdp2HopNbrStateChangeWindow, nhdpNbrState, nhdp2HopNbrState } STATUS current DESCRIPTION "Set of NHDP notification objects implemented in this module." ::= { nhdpMIBGroups 5 } nhdpNotificationGroup NOTIFICATION-GROUP NOTIFICATIONS { nhdpNbrStateChange, nhdp2HopNbrStateChange, nhdpIfStateChange } STATUS current DESCRIPTION "Set of NHDP notifications implemented in this module." ::= { nhdpMIBGroups 6 } END
8. Security Considerations
This MIB module defines objects for the configuration, monitoring, and notification of the Neighborhood Discovery Protocol [RFC6130]. NHDP allows routers to acquire topological information up to two hops away by virtue of exchanging HELLO messages. The information acquired by NHDP may be used by routing protocols. The neighborhood information, exchanged between routers using NHDP, serves these routing protocols as a baseline for calculating paths to all destinations in the MANET, relay set selection for network-wide transmissions, etc. There are a number of management objects defined in this MIB module with a MAX-ACCESS clause of read-write and/or read-create. Such objects may be considered sensitive or vulnerable in some network environments. The support for SET operations in a non-secure environment without proper protection can have a negative effect on network operations. These are the tables and objects and their sensitivity/vulnerability: o nhdpIfStatus - This writable object turns on or off the NHDP process for the specified interface. If disabled, higher-level protocol functions, e.g., routing, would fail, causing network- wide disruptions. o nhdpHelloInterval, nhdpHelloMinInterval, and nhdpRefreshInterval - These writable objects control the rate at which HELLO messages are sent on an interface. If set at too high a rate, this could represent a form of denial-of-service (DoS) attack by overloading interface resources. o nhdpHystAcceptQuality, nhdpHystRejectQuality, nhdpInitialQuality, and nhdpInitialPending - These writable objects affect the perceived quality of the NHDP links and hence the overall stability of the network. If improperly set, these settings could result in network-wide disruptions. o nhdpInterfaceTable - This table contains writable objects that affect the overall performance and stability of the NHDP process. Failure of the NHDP process would result in network-wide failure. Particularly sensitive objects from this table are discussed in the previous list items. This is the only table in the NHDP-MIB module with writable objects. Some of the readable objects in this MIB module (i.e., objects with a MAX-ACCESS other than not-accessible) may be considered sensitive or vulnerable in some network environments. It is thus important to control even GET and/or NOTIFY access to these objects and possibly
to even encrypt the values of these objects when sending them over the network via SNMP. These are the tables and objects and their sensitivity/vulnerability: o nhdpDiscIfSetTable - The object contains information on discovered neighbors, specifically their IP address in the nhdpDiscIfSetIpAddr object. This information provides an adversary broad information on the members of the MANET, located within this single table. This information can be used to expedite attacks on the other members of the MANET without having to go through a laborious discovery process on their own. This object is the index into the table and has a MAX-ACCESS of 'not- accessible'. However, this information can be exposed using SNMP operations. MANET technology is often deployed to support communications of emergency services or military tactical applications. In these applications, it is imperative to maintain the proper operation of the communications network and to protect sensitive information related to its operation. Therefore, it is RECOMMENDED to provide support for the Transport Security Model (TSM) [RFC5591] in combination with TLS/DTLS [RFC6353]. SNMP versions prior to SNMPv3 did not include adequate security. Even if the network itself is secure (for example by using IPsec), there is no control as to who on the secure network is allowed to access and GET/SET (read/change/create/delete) the objects in this MIB module. Implementations MUST provide the security features described by the SNMPv3 framework (see [RFC3410]), including full support for authentication and privacy via the User-based Security Model (USM) [RFC3414] with the AES cipher algorithm [RFC3826]. Implementations MAY also provide support for the Transport Security Model (TSM) [RFC5591] in combination with a secure transport such as SSH [RFC5592] or TLS/DTLS [RFC6353]. Further, deployment of SNMP versions prior to SNMPv3 is NOT RECOMMENDED. Instead, it is RECOMMENDED to deploy SNMPv3 and to enable cryptographic security. It is then a customer/operator responsibility to ensure that the SNMP entity giving access to an instance of this MIB module is properly configured to give access to the objects only to those principals (users) that have legitimate rights to indeed GET or SET (change/create/delete) them.
9. Applicability Statement
This document describes objects for configuring parameters of the Neighborhood Discovery Protocol [RFC6130] process on a router. This MIB module, denoted NHDP-MIB, also reports state, performance information, and notifications. This section provides some examples of how this MIB module can be used in MANET network deployments. A fuller discussion of MANET network management use cases and challenges will be provided elsewhere. NHDP is designed to allow routers to automatically discover and track routers one hop remote (denoted "neighbors") and routers two hops remote (denoted "two-hop neighbors"). This information is used by other MANET protocols in operation on the router to perform routing, multicast forwarding, and other functions with ad hoc and mobile networks. In the following, three example scenarios are listed where this MIB module is useful: o For a Parking Lot Initial Configuration Situation - It is common for the vehicles comprising the MANET being forward deployed at a remote location, e.g., the site of a natural disaster, to be off- loaded in a parking lot where an initial configuration of the networking devices is performed. The configuration is loaded into the devices from a fixed location Network Operation Center (NOC) at the parking lot, and the vehicles are stationary at the parking lot while the configuration changes are made. Standards-based methods for configuration management from the co-located NOC are necessary for this deployment option. o For Mobile Vehicles with Low-Bandwidth Satellite Link to a Fixed NOC - Here, the vehicles carrying the MANET routers carry multiple wireless interfaces, one of which is a relatively low-bandwidth, on-the-move satellite connection that interconnects a fix NOC to the nodes of the MANET. Standards-based methods for monitoring and fault management from the fixed NOC are necessary for this deployment option. o For Fixed NOC and Mobile Local Manager in Larger Vehicles - for larger vehicles, a hierarchical network management arrangement is useful. Centralized network management is performed from a fixed NOC while local management is performed locally from within the vehicles. Standards-based methods for configuration, monitoring, and fault management are necessary for this deployment option.
10. IANA Considerations
The MIB module in this document uses the following IANA-assigned OBJECT IDENTIFIER value recorded in the SMI Numbers registry: Descriptor OBJECT IDENTIFIER value ---------- ----------------------- NHDP-MIB { mib-2 213 }11. Acknowledgements
The authors wish to thank Benoit Claise, Thomas Clausen, Justin Dean, Adrian Farrel, Joel Halpern, Al Morton, and Thomas Nadeau for their detailed reviews and insightful comments regarding this document. This MIB document uses the template authored by D. Harrington, which is based on contributions from the MIB Doctors, especially Juergen Schoenwaelder, Dave Perkins, C.M. Heard, and Randy Presuhn.12. References
12.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2578] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. [RFC2579] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [RFC2580] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999. [RFC2863] McCloghrie, K. and F. Kastenholz, "The Interfaces Group MIB", RFC 2863, June 2000. [RFC3418] Presuhn, R., "Management Information Base (MIB) for the Simple Network Management Protocol (SNMP)", STD 62, RFC 3418, December 2002.
[RFC4001] Daniele, M., Haberman, B., Routhier, S., and J. Schoenwaelder, "Textual Conventions for Internet Network Addresses", RFC 4001, February 2005. [RFC6130] Clausen, T., Dearlove, C., and J. Dean, "Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP)", RFC 6130, April 2011. [RFC6340] Presuhn, R., "Textual Conventions for the Representation of Floating-Point Numbers", RFC 6340, August 2011.12.2. Informative References
[REPORT-MIB] Cole, R., Macker, J., and A. Bierman, "Definition of Managed Objects for Performance Reporting", Work in Progress, January 2012. [RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart, "Introduction and Applicability Statements for Internet-Standard Management Framework", RFC 3410, December 2002. [RFC3414] Blumenthal, U. and B. Wijnen, "User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)", STD 62, RFC 3414, December 2002. [RFC3826] Blumenthal, U., Maino, F., and K. McCloghrie, "The Advanced Encryption Standard (AES) Cipher Algorithm in the SNMP User-based Security Model", RFC 3826, June 2004. [RFC4750] Joyal, D., Galecki, P., Giacalone, S., Coltun, R., and F. Baker, "OSPF Version 2 Management Information Base", RFC 4750, December 2006. [RFC5148] Clausen, T., Dearlove, C., and B. Adamson, "Jitter Considerations in Mobile Ad Hoc Networks (MANETs)", RFC 5148, February 2008. [RFC5591] Harrington, D. and W. Hardaker, "Transport Security Model for the Simple Network Management Protocol (SNMP)", RFC 5591, June 2009. [RFC5592] Harrington, D., Salowey, J., and W. Hardaker, "Secure Shell Transport Model for the Simple Network Management Protocol (SNMP)", RFC 5592, June 2009.
[RFC6353] Hardaker, W., "Transport Layer Security (TLS) Transport Model for the Simple Network Management Protocol (SNMP)", RFC 6353, July 2011.Authors' Addresses
Ulrich Herberg LIX, Ecole Polytechnique 91128 Palaiseau Cedex France EMail: ulrich@herberg.name URI: http://www.herberg.name/ Robert G. Cole US Army CERDEC Space and Terrestrial Communications 6010 Frankford Road, Bldg 6010, Room 453H Aberdeen Proving Ground, Maryland 21005 United States Phone: +1 443 395-8744 EMail: robert.g.cole@us.army.mil URI: http://www.cs.jhu.edu/~rgcole/ Ian D Chakeres DRS CenGen 9250 Bendix Road North Columbia, Maryland 21045 United States EMail: ian.chakeres@gmail.com URI: http://www.ianchak.com/