rfc-7184

Definition of Managed Objects for the Optimized Link State Routing Protocol Version 2

U. Herberg, R. Cole, T. Clausen
date2014-04 streamIETF areartg wgmanet statusPROPOSED STANDARD pages86 canonicalhttps://www.rfc-editor.org/rfc/rfc7184 doi10.17487/RFC7184
This document defines the Management Information Base (MIB) module for configuring and managing the Optimized Link State Routing Protocol version 2 (OLSRv2). The OLSRv2-MIB module is structured into configuration information, state information, performance information, and notifications. This additional state and performance information is useful for troubleshooting problems and performance issues of the routing protocol. Two levels of compliance allow this MIB module to be deployed on constrained routers.

Extracted elements (25)

design-rationale §7

The MIB module stores metric values in full integer form (not compressed) so that managers can set and read precise values; the OLSRv2 protocol code derives the 12-bit compressed representation as needed. This separates management-plane precision from wire-protocol encoding.

routing, snmp

design-rationale §6.2

The OLSRv2-MIB State Group tables are constructed as extensions to corresponding NHDP-MIB (RFC 6779) tables using the SMIv2 AUGMENTS clause, sharing common indexes (nhdpIfIndex, nhdpDiscIfIndex, nhdpDiscRouterIndex). This avoids duplicate neighbor discovery state and enables cross-referencing between both MIBs within a single SNMP context.

routing, snmp

design-rationale §5

Two compliance levels (minimal and full) are defined to allow the OLSRv2-MIB module to be deployed on constrained routers that cannot support the full set of MIB objects. This mirrors a similar approach in the NHDP-MIB (RFC 6779).

routing, snmp

interoperability-note §6.2

An OLSRv2 instance MUST have an associated NHDP instance (RFC 6130) running on the same device. The OLSRv2-MIB module imports table entries from the NHDP-MIB (RFC 6779) and cannot populate neighbor state objects without an operational NHDP instance.

routing, snmp

normative-requirement §7 MUST

If a network manager attempts to set olsrv2AdminStatus to 'enabled' when no interface on the device has NHDP enabled, the device MUST fail the SNMP set with inconsistentValue. If all NHDP-enabled interfaces are subsequently disabled or removed, olsrv2AdminStatus MUST be set to 'disabled'.

routing, snmp

normative-requirement §7 MUST

If olsrv2AdminStatus is set to 'disabled' (by management or other means), then all associated olsrv2InterfaceAdminStatus objects MUST be set to 'disabled' as well.

routing, snmp

normative-requirement §7 SHOULD

Persistent configuration objects (including olsrv2AdminStatus, originator address, all timer parameters, willingness values, and link metric type) SHOULD be saved to non-volatile storage when written, so configuration survives device restarts.

routing, snmp

normative-requirement §7 MUST

The time granularity constant C used by the Olsrv2TimeValueCompressedForm32TC textual convention MUST be the same as used by NHDP (RFC 6130). The maximum value of C is constrained to no greater than 1/1024 seconds due to the Unsigned32 millisecond representation limit of 3932160000 ms.

routing, snmp

normative-requirement §7 MUST

When OLSRv2 uses the 8-bit exponent-mantissa compressed time form, MIB time values (stored as integer milliseconds) MUST be translated into the exponent-mantissa form using the algorithm in RFC 5497 Section 5 (finding the next larger time value) before use in protocol messages.

routing, snmp

normative-requirement §7 MUST

When olsrv2LinkMetricType changes, all link metric information recorded by this router is invalid and the router MUST take the actions described in RFC 7181 Sections 5.5 (Parameter Change Constraints) and 17 (Information Base Changes).

routing, snmp

protocol-element §7

olsrv2Iib2HopSetTable extends the NHDP 2-Hop Set (via AUGMENTS on nhdpIib2HopSetEntry) with two OLSRv2-specific fields: N2_in_metric (olsrv2Iib2HopSetInMetricValue) and N2_out_metric (olsrv2Iib2HopSetOutMetricValue), both read-only, encoding the metric between the 2-hop neighbor and the intermediate 1-hop neighbor.

routing, snmp

protocol-element §7

olsrv2IibLinkSetTable extends the NHDP IIB Link Set (via AUGMENTS on nhdpIibLinkSetEntry) with three OLSRv2-specific fields per link tuple: L_in_metric (olsrv2IibLinkSetInMetricValue, read-only), L_out_metric (olsrv2IibLinkSetOutMetricValue, read-write), and L_mpr_selector (olsrv2IibLinkSetMprSelector, a boolean indicating this router is a flooding MPR selector of the neighbor).

routing, snmp

protocol-element §5.3

olsrv2InterfacePerfTable augments the NHDP nhdpInterfacePerfEntry (indexed by nhdpIfIndex) to expose per-interface OLSRv2 performance counters. Frequent routing set or MPR set recalculations can signal topology instability and are surfaced here for monitoring by frameworks such as REPORT-MIB.

routing, snmp, measurement

protocol-element §7

olsrv2LibLocAttNetSetTable records Local Attached Network Tuples: each entry identifies a non-OLSRv2 network reachable via this router as a gateway, indexed by {IpAddrType, IpAddr, PrefixLen}, with distance in hops (AL_dist) and metric (AL_metric) to the attached network.

routing, snmp

protocol-element §7

olsrv2LibOrigSetTable records all originator addresses recently used by this router. Each entry (Originator Tuple) is indexed by {IpAddrType, IpAddr} and contains an expiry timestamp (olsrv2LibOrigSetExpireTime) derived as current sysUpTime + O_HOLD_TIME.

routing, snmp

protocol-element §7

olsrv2NibNeighborSetTable extends the NHDP Neighbor Set (via AUGMENTS) with nine OLSRv2 fields per neighbor tuple: N_orig_addr, N_in_metric, N_out_metric, N_will_flooding, N_will_routing, N_flooding_mpr, N_routing_mpr, N_mpr_selector (routing MPR selector), and N_advertised (whether this router advertises a link to this neighbor in TC messages).

routing, snmp

protocol-element §7

olsrv2NibNeighborSetTableAnsn exposes the Advertised Neighbor Sequence Number (ANSN) as a read-only Unsigned32 (0..65535). This value is included in TC messages to indicate the freshness of advertised neighbor information.

routing, snmp

protocol-element §5.4

The Notifications Group defines threshold-based controls to prevent notification storms: olsrv2RoutingSetRecalculationCountThreshold and olsrv2RoutingSetRecalculationCountWindow (for routing set recalculation events) and olsrv2MPRSetRecalculationCountThreshold and olsrv2MPRSetRecalculationCountWindow (for MPR set recalculation events).

routing, snmp, measurement

protocol-element §5

The OLSRv2-MIB module is organized into four functional groups: Configuration Group (protocol parameters), State Group (current operating state reflecting RFC 7181 Information Bases), Performance Group (operational metrics for troubleshooting), and Notifications Group (asynchronous event triggers). The module is assigned OID { mib-2 219 }.

routing, snmp, measurement

protocol-element §5.5

The Topology Information Base is represented by five tables: olsrv2TibAdRemoteRouterSetTable (routers transmitting TC messages), olsrv2TibRouterTopologySetTable (discovered inter-router links indexed by from/to originator address pairs), olsrv2TibRoutableAddressTopologySetTable (routable addresses and advertising routers), olsrv2TibAttNetworksSetTable (external attached networks), and olsrv2TibRoutingSetTable (next-hop routing entries).

routing, snmp

protocol-element §7

WillingnessTC encodes a router's willingness to serve as an MPR (flooding or routing) as an Unsigned32 in range 0 (WILL_NEVER) to 15 (WILL_ALWAYS). Olsrv2StatusTC is an INTEGER with values enabled(1) and disabled(2) controlling OLSRv2 operation per-device and per-interface.

routing, snmp

registry §10

The OLSRv2-MIB module is assigned the OID { mib-2 219 } by IANA. The module also imports IANAolsrv2LinkMetricTypeTC from the IANAolsrv2LinkMetricType-MIB, whose definition is provided in Appendix A and maintained at the IANA registry for OLSRv2 link metric types.

routing, snmp, registry

security-consideration §8

The OLSRv2-MIB contains numerous read-write configuration objects (message intervals, hop limits, willingness, link metric type) that directly affect routing behavior; unauthorized writes could destabilize the MANET. Implementations must apply SNMP access control (e.g., SNMPv3 USM/VACM) to restrict write access to these objects.

routing, snmp, security

wire-format §7

The Olsrv2MetricValueCompressedFormTC textual convention encodes OLSRv2 link metrics as a 12-bit compressed value with an 8-bit mantissa (a) and 4-bit exponent (b), representing the value (257+a)*2^b - 256. Valid metric values range from 1 to 16776960 (MAXIMUM_METRIC); the special value 0 is reserved for UNKNOWN_METRIC.

routing, snmp

wire-format §7

The Olsrv2TimeValueCompressedForm32TC textual convention stores OLSRv2 time values as an Unsigned32 in milliseconds (range 1..3932160000), corresponding to the 8-bit exponent-mantissa compressed form (3-bit mantissa, 5-bit exponent) defined in RFC 5497. The MIB stores the integer millisecond value; the protocol derives the compressed form via the RFC 5497 algorithm.

routing, snmp