-- -- Neighbor Set -- -- The Neighbor Set Table is small because -- most of the corresponding information is found -- in the nhdpDiscoveredIfTable above. -- nhdpNibNeighborSetTable OBJECT-TYPE SYNTAX SEQUENCE OF NhdpNibNeighborSetEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A router's Neighbor Set records all network addresses of each 1-hop neighbor." REFERENCE "RFC 6130 - Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP), Clausen, T., Dearlove, C., and J. Dean, April 2011" ::= { nhdpStateObjGrp 6 } 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. nhdpIfPerfCounterDiscontinuityTime indicates the most recent occasion at which any one or more of this interface's counters listed in this table suffered a discontinuity."
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, nhdpIfPerfCounterDiscontinuityTime TimeStamp } 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 } nhdpIfPerfCounterDiscontinuityTime 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. If no such discontinuities have occurred since the last reinitialization of the local management subsystem, then this object contains a zero value." ::= { nhdpInterfacePerfEntry 10 }
-- -- 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 a new nhdpNibNeighborSetEntry has been created for a particular nhdpNibNeighborSetRouterIndex." 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 nhdp2HopNbrState 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), notconsidered(2) } 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 either 'up(1)', if N2_lost for the 2-Hop Tuple is equal to false, or 'notconsidered(2)' otherwise." ::= { 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 } nhdpFullCompliance2 MODULE-COMPLIANCE STATUS current DESCRIPTION "The full implementation requirements for managed network entities that implement NHDP." MODULE -- this module MANDATORY-GROUPS { nhdpConfigurationGroup, nhdpStateGroup2, nhdpNotificationObjectGroup, nhdpNotificationGroup, nhdpPerformanceGroup } ::= { nhdpCompliances 3 } -- -- 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 } nhdpPerformanceGroup OBJECT-GROUP OBJECTS { nhdpIfHelloMessageXmits, nhdpIfHelloMessageRecvd, nhdpIfHelloMessageXmitAccumulatedSize, nhdpIfHelloMessageRecvdAccumulatedSize, nhdpIfHelloMessageTriggeredXmits, nhdpIfHelloMessagePeriodicXmits, nhdpIfHelloMessageXmitAccumulatedSymmetricNeighborCount, nhdpIfHelloMessageXmitAccumulatedHeardNeighborCount, nhdpIfHelloMessageXmitAccumulatedLostNeighborCount, nhdpIfPerfCounterDiscontinuityTime, 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 } nhdpStateGroup2 OBJECT-GROUP OBJECTS { nhdpUpTime, nhdpIfStateUpTime, nhdpDiscRouterIndex, nhdpDiscIfIndex, nhdpDiscIfSetIpAddrType, nhdpDiscIfSetIpAddr, nhdpDiscIfSetIpAddrPrefixLen, nhdpIibLinkSetLHeardTime, nhdpIibLinkSetLSymTime, nhdpIibLinkSetLPending, nhdpIibLinkSetLLost, nhdpIibLinkSetLTime, nhdpIib2HopSetIpAddrPrefixLen, nhdpIib2HopSet1HopIfIndex, nhdpIib2HopSetN2Time, nhdpIib2HopSetN2Lost, nhdpNibNeighborSetNSymmetric, nhdpNibLostNeighborSetNLTime }
STATUS current DESCRIPTION "Set of NHDP state objects implemented in this module." ::= { nhdpMIBGroups 7 } -- -- Deprecated compliance statements and groups -- nhdpFullCompliance MODULE-COMPLIANCE STATUS deprecated DESCRIPTION "The full implementation requirements for managed network entities that implement NHDP. For version-independence, this compliance statement is deprecated in favor of nhdpFullCompliance2." MODULE -- this module MANDATORY-GROUPS { nhdpConfigurationGroup, nhdpStateGroup, nhdpNotificationObjectGroup, nhdpNotificationGroup, nhdpPerformanceGroup } ::= { nhdpCompliances 2 } nhdpStateGroup OBJECT-GROUP OBJECTS { nhdpUpTime, nhdpIfStateUpTime, nhdpDiscRouterIndex, nhdpDiscIfIndex, nhdpDiscIfSetIpAddrType, nhdpDiscIfSetIpAddr, nhdpDiscIfSetIpAddrPrefixLen, nhdpIibLinkSetLHeardTime, nhdpIibLinkSetLSymTime, nhdpIibLinkSetLPending, nhdpIibLinkSetLLost, nhdpIibLinkSetLTime, nhdpIib2HopSetIpAddrPrefixLen, nhdpIib2HopSet1HopIfIndex, nhdpIib2HopSetN2Time, nhdpNibNeighborSetNSymmetric, nhdpNibLostNeighborSetNLTime
} STATUS deprecated DESCRIPTION "Set of NHDP state objects implemented in this module. For version-independence, this compliance statement is deprecated in favor of nhdpStateGroup2." ::= { nhdpMIBGroups 3 } END8. Security Considerations
This MIB module defines objects for the configuration, monitoring, and notification of the Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP) [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 opens devices to attack. 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 SHOULD provide the security features described by the SNMPv3 framework (see [RFC3410]), and implementations claiming compliance to the SNMPv3 standard MUST include 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 Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP) [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. NHDP is designed to allow routers to automatically discover and track routers one hop remote (denoted "neighbors") and routers two hops remote (denoted "2-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 Operations 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: Description OBJECT IDENTIFIER value ----------- ----------------------- NHDP-MIB { mib-2 213 }11. References
11.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, <http://www.rfc-editor.org/info/rfc2119>. [RFC2578] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, DOI 10.17487/RFC2578, April 1999, <http://www.rfc-editor.org/info/rfc2578>. [RFC2579] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., "Textual Conventions for SMIv2", STD 58, RFC 2579, DOI 10.17487/RFC2579, April 1999, <http://www.rfc-editor.org/info/rfc2579>. [RFC2580] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., "Conformance Statements for SMIv2", STD 58, RFC 2580, DOI 10.17487/RFC2580, April 1999, <http://www.rfc-editor.org/info/rfc2580>. [RFC2863] McCloghrie, K. and F. Kastenholz, "The Interfaces Group MIB", RFC 2863, DOI 10.17487/RFC2863, June 2000, <http://www.rfc-editor.org/info/rfc2863>. [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, DOI 10.17487/RFC3414, December 2002, <http://www.rfc-editor.org/info/rfc3414>.
[RFC3418] Presuhn, R., Ed., "Management Information Base (MIB) for the Simple Network Management Protocol (SNMP)", STD 62, RFC 3418, DOI 10.17487/RFC3418, December 2002, <http://www.rfc-editor.org/info/rfc3418>. [RFC3826] Blumenthal, U., Maino, F., and K. McCloghrie, "The Advanced Encryption Standard (AES) Cipher Algorithm in the SNMP User-based Security Model", RFC 3826, DOI 10.17487/RFC3826, June 2004, <http://www.rfc-editor.org/info/rfc3826>. [RFC4001] Daniele, M., Haberman, B., Routhier, S., and J. Schoenwaelder, "Textual Conventions for Internet Network Addresses", RFC 4001, DOI 10.17487/RFC4001, February 2005, <http://www.rfc-editor.org/info/rfc4001>. [RFC5591] Harrington, D. and W. Hardaker, "Transport Security Model for the Simple Network Management Protocol (SNMP)", STD 78, RFC 5591, DOI 10.17487/RFC5591, June 2009, <http://www.rfc-editor.org/info/rfc5591>. [RFC5592] Harrington, D., Salowey, J., and W. Hardaker, "Secure Shell Transport Model for the Simple Network Management Protocol (SNMP)", RFC 5592, DOI 10.17487/RFC5592, June 2009, <http://www.rfc-editor.org/info/rfc5592>. [RFC6130] Clausen, T., Dearlove, C., and J. Dean, "Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP)", RFC 6130, DOI 10.17487/RFC6130, April 2011, <http://www.rfc-editor.org/info/rfc6130>. [RFC6340] Presuhn, R., "Textual Conventions for the Representation of Floating-Point Numbers", RFC 6340, DOI 10.17487/RFC6340, August 2011, <http://www.rfc-editor.org/info/rfc6340>. [RFC6353] Hardaker, W., "Transport Layer Security (TLS) Transport Model for the Simple Network Management Protocol (SNMP)", STD 78, RFC 6353, DOI 10.17487/RFC6353, July 2011, <http://www.rfc-editor.org/info/rfc6353>. [RFC7466] Dearlove, C. and T. Clausen, "An Optimization for the Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP)", RFC 7466, DOI 10.17487/RFC7466, March 2015, <http://www.rfc-editor.org/info/rfc7466>.
11.2. Informative References
[RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart, "Introduction and Applicability Statements for Internet- Standard Management Framework", RFC 3410, DOI 10.17487/RFC3410, December 2002, <http://www.rfc-editor.org/info/rfc3410>. [RFC3411] Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture for Describing Simple Network Management Protocol (SNMP) Management Frameworks", STD 62, RFC 3411, DOI 10.17487/RFC3411, December 2002, <http://www.rfc-editor.org/info/rfc3411>. [RFC4750] Joyal, D., Ed., Galecki, P., Ed., Giacalone, S., Ed., Coltun, R., and F. Baker, "OSPF Version 2 Management Information Base", RFC 4750, DOI 10.17487/RFC4750, December 2006, <http://www.rfc-editor.org/info/rfc4750>. [RFC5148] Clausen, T., Dearlove, C., and B. Adamson, "Jitter Considerations in Mobile Ad Hoc Networks (MANETs)", RFC 5148, DOI 10.17487/RFC5148, February 2008, <http://www.rfc-editor.org/info/rfc5148>. [RFC6779] Herberg, U., Cole, R., and I. Chakeres, "Definition of Managed Objects for the Neighborhood Discovery Protocol", RFC 6779, DOI 10.17487/RFC6779, October 2012, <http://www.rfc-editor.org/info/rfc6779>.
Acknowledgements
The authors wish to thank Benoit Claise, Elwyn Davies, Justin Dean, Adrian Farrel, Joel Halpern, Michael MacFaden, Al Morton, and Thomas Nadeau for their detailed reviews and insightful comments regarding RFC 6779 and 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.Authors' Addresses
Ulrich Herberg United States of America Email: ulrich@herberg.name URI: http://www.herberg.name/ Robert G. Cole US Army CERDEC Space and Terrestrial Communications 6010 Frankford Road Aberdeen Proving Ground, Maryland 21005 United States of America Phone: +1 443 395-8744 Email: rgcole01@comcast.net URI: http://www.cs.jhu.edu/~rgcole/ Ian D Chakeres Delvin Ellicott City, Maryland 21042 United States of America Email: ian.chakeres@gmail.com URI: http://www.ianchak.com/ Thomas Heide Clausen Ecole Polytechnique Phone: +33 6 6058 9349 Email: T.Clausen@computer.org URI: http://www.ThomasClausen.org/