RFC 7184
Definition of Managed Objects for the Optimized Link State Routing Protocol Version 2
RFC 7184: Definition of Managed Objects for the Optimized Link State Routing Protocol Version 2 π
Okay bestie, here's the quick intel π This is an Internet Standards Track document, published in April 2014 with ISSN 2070-1721. The authors are U. Herberg (Fujitsu Laboratories of America), R. Cole (US Army CERDEC), and T. Clausen (LIX, Ecole Polytechnique). The title block doesn't list anything it obsoletes or updates, so it's a clean slate π§
Abstract
Okay so this doc 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 split into configuration info, state info, performance info, and notifications. The state and performance stuff is seriously useful when you're troubleshooting the routing protocol π And there are two levels of compliance, so it can run on constrained routers too, which is giving practical π
Status of This Memo
This is an Internet Standards Track document. πΈ
It's a product of the Internet Engineering Task Force (IETF) and represents the consensus of the IETF community. It went through public review and got approved for publication by the Internet Engineering Steering Group (IESG). If you want more on Internet Standards, check Section 2 of RFC 5741 π
For the current status, any errata, and how to send feedback, go to http://www.rfc-editor.org/info/rfc7184 β¨
Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the document authors. All rights reserved. Β©οΈ
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) as in effect on the date of publication. Please read these carefully, because they spell out your rights and restrictions for this document π Code Components pulled from this document must include the Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions, and they come without warranty, as described in the Simplified BSD License π«Ά
Table of Contents
1. Introduction ....................................................2
2. The Internet-Standard Management Framework ......................3
3. Conventions .....................................................3
4. Overview ........................................................3
4.1. Terms ......................................................4
5. Structure of the MIB Module .....................................4
5.1. The Configuration Group ....................................5
5.2. The State Group ............................................5
5.3. The Performance Group ......................................5
5.4. The Notifications Group ....................................5
5.5. Tables and Indexing ........................................6
6. Relationship to Other MIB Modules ...............................9
6.1. Relationship to the SNMPv2-MIB .............................9
6.2. Relationship to the NHDP-MIB ...............................9
6.3. MIB Modules Required for IMPORTS ...........................9
7. Definitions ....................................................10
8. Security Considerations ........................................77
9. Applicability Statement ........................................80
10. IANA Considerations ...........................................81
11. Acknowledgements ..............................................81
12. References ....................................................82
12.1. Normative References .....................................82
12.2. Informative References ...................................83
Appendix A. IANAolsrv2LinkMetricType-MIB ..........................84
1. Introduction β¨
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. Config is only part of the story here: the extra state and performance info is what helps you troubleshoot problems and performance issues in the routing protocol π§ Different levels of compliance let implementers use smaller subsets of all the defined objects, so this MIB module can be deployed on even more constrained routers π
2. The Internet-Standard Management Framework π
For a detailed overview of the documents that describe the current Internet-Standard Management Framework, check out Section 7 of [RFC3410] π
Managed objects are accessed through a virtual information store called the Management Information Base, or MIB. MIB objects are usually accessed through the Simple Network Management Protocol (SNMP). Objects in the MIB module are defined using the mechanisms in the Structure of Management Information (SMI). This document specifies a MIB module that is compliant to the SMIv2, which is described in STD 58, [RFC2578], STD 58, [RFC2579] and STD 58 [RFC2580] π§
3. Conventions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119] π
4. Overview πΈ
The Optimized Link State Routing Protocol version 2 (OLSRv2) [RFC7181] is a table-driven, proactive routing protocol. In plain English, it swaps topology info with other routers in the network periodically π OLSRv2 is an optimization of the classical link state routing protocol, and its key concept is multipoint relays (MPRs). Each router picks a set of its neighbor routers (which "cover" all of its symmetrically connected 2-hop neighbor routers) as MPRs. Then MPRs get used for both flooding reduction and topology reduction. It's giving efficiency π
This document gives management and control capabilities for an OLSRv2 instance. That means management apps can monitor the state and performance of an OLSRv2 router, and they can change settings of the OLSRv2 instance, like router or interface parameters such as message intervals βοΈ
OLSRv2 depends on the neighborhood info discovered by the "Mobile Ad Hoc Network (MANET) Neighborhood Discovery Protocol (NHDP)" [RFC6130]. So the OLSRv2-MIB module is aligned with the NHDP-MIB module [RFC6779] and augments several of its tables and objects. The big thing is that router interfaces and discovered neighbors share common indexes, as described in Section 5.2 π«Ά
4.1. Terms
The following definitions apply throughout this document:
- Configuration Objects - switches, tables, and objects that are initialized to default settings or set through the management interface defined by this MIB module.
- State Objects - automatically generated values that define the current operating state of the OLSRv2 protocol instance in the router.
- Performance Objects - automatically generated values that help an administrator or automated tool assess the performance of the OLSRv2 process on the router.
- Notification Objects - objects that define triggers and associated notification messages, allowing for asynchronous tracking of predefined events on the managed router. π
5. Structure of the MIB Module π
This section shows the structure of the OLSRv2-MIB module. The objects are arranged like this:
olsrv2MIBObjects- defines the objects forming the basis for the OLSRv2-MIB module. These objects are divided up by function into the following groups:- Configuration Group - defining objects related to the configuration of the OLSRv2 instance on the router.
- State Group - defining objects that reflect the current state of the OLSRv2 instance running on the router.
- Performance Group - defining objects that are useful to a management system when characterizing the performance of OLSRv2 on the router and in the MANET.
olsrv2MIBNotifications- objects defining OLSRv2-MIB module notifications.olsrv2MIBConformance- defining the minimal and maximal conformance requirements for implementations of this MIB module. π
5.1. The Configuration Group βοΈ
The OLSRv2 router is configured with a set of controls. The authoritative list of configuration controls within the OLSRv2-MIB module is found in the MIB module itself. In general, the OLSRv2-MIB module was built to support all configuration objects defined in [RFC7181]. For all of the configuration parameters, the same constraints and default values as defined in [RFC7181] are followed π«§
5.2. The State Group π
The State Group reports current state information of a router running [RFC7181]. The OLSRv2-MIB module State Group tables were designed to contain the complete set of state information defined within the Information Bases in [RFC7181] ποΈ
The OLSRv2-MIB module State Group tables are built as extensions to the corresponding tables in the State Group of the NHDP-MIB module [RFC6779]. The AUGMENTS clause is used, when possible, to make these table extensions. Also, the State Group tables in this MIB module line up with the corresponding tables in the NHDP-MIB module [RFC6779], as described in Section 6.2 π
5.3. The Performance Group π
The Performance Group reports values relevant to system performance. Frequent changes of sets, or frequent recalculation of the Routing Set or the MPRs, can hurt OLSRv2 performance. This MIB module defines several objects that can be polled, for example to calculate histories or monitor how often changes happen. That helps the network administrator spot unusual topology changes or other changes that affect the stability and reliability of the MANET π One such framework is specified in REPORT-MIB [REPORT-MIB] π¦
5.4. The Notifications Group π
The Notifications Group has three parts: Control (olsrv2NotificationsControl), Objects (olsrv2NotificationsObjects), and States (olsrv2NotificationsStates). The Control part defines objects that control how often notifications get generated. The Objects part defines the supported notifications, and the States part defines extra info carried within the notifications π
The olsrv2NotificationsObjects sub-tree holds the list of notifications supported within the OLSRv2-MIB module, along with their intended purpose or utility π§Ύ
The same mechanisms for improving network performance by reducing the number of notifications apply as defined in Section 5.1 of [RFC6779]. These objects define the thresholds and time windows for specific notifications defined in the NHDP-MIB module: olsrv2RoutingSetRecalculationCountThreshold, olsrv2RoutingSetRecalculationCountWindow, olsrv2MPRSetRecalculationCountThreshold, and olsrv2MPRSetRecalculationCountWindow π
5.5. Tables and Indexing β¨
okay bestie, this is where we figure out how every table in the OLSRv2-MIB gets its keys π. The tables are indexed by these constructs, no cap:
nhdpIfIndex- the ifIndex of the local router on which NHDP is configured. This is defined in the NHDP-MIB.nhdpDiscIfIndex- a locally managed index representing a known interface on a neighboring router. This is defined in the NHDP-MIB.nhdpDiscRouterIndex- a locally managed index representing an ID of a known neighboring router. This is defined in the NHDP-MIB.{olsrv2LibOrigSetIpAddrType, olsrv2LibOrigSetIpAddr}- this index (pair) uniquely identifies recently used originator addresses found within theolsrv2LibOrigSetTable.{olsrv2LibLocAttNetSetIpAddrType, olsrv2LibLocAttNetSetIpAddr, olsrv2LibLocAttNetSetIpAddrPrefixLen}- this index (triplet) uniquely identifies local attached networks reachable through local (non-OLSRv2) interfaces on this router. These are recorded in theolsrv2LibLocAttNetSetTable.{olsrv2TibAdRemoteRouterSetIpAddrType, olsrv2TibAdRemoteRouterSetIpAddr}- this index (pair) uniquely identifies each router in the network that transmits Topology Control (TC) messages received by this router. These records are recorded in theolsrv2TibAdRemoteRouterSetIpAddr.{olsrv2TibRouterTopologySetFromOrigIpAddrType, olsrv2TibRouterTopologySetFromOrigIpAddr, olsrv2TibRouterTopologySetToOrigIpAddrType, olsrv2TibRouterTopologySetToOrigIpAddr}- this index (quadruplet) uniquely identifies discovered links within the network recorded by this router. Information associated with each link is stored in theolsrv2TibRouterTopologySetTable.{olsrv2TibRoutableAddressTopologySetFromOrigIpAddrType, olsrv2TibRoutableAddressTopologySetFromOrigIpAddr, olsrv2TibRoutableAddressTopologySetFromDestIpAddrType, olsrv2TibRoutableAddressTopologySetFromDestIpAddr}- this index (quadruplet) uniquely identifies reachable addresses within the network and the router's advertising of these addresses. This information is stored in theolsrv2TibRoutableAddressTopologySetTable.{olsrv2TibAttNetworksSetOrigIpAddrType, olsrv2TibAttNetworksSetOrigIpAddr, olsrv2TibAttNetworksSetNetIpAddrType, olsrv2TibAttNetworksSetNetIpAddr, olsrv2TibAttNetworksSetNetIpAddrPrefixLen}- this index (quintuplet) uniquely identifies the networks (which may be outside the MANET) and the routers through which these networks can be reached. This information is stored in theolsrv2TibAttNetworksSetTable.{olsrv2TibRoutingSetDestIpAddrType, olsrv2TibRoutingSetDestIpAddr, olsrv2TibRoutingSetDestIpAddrPrefixLen}- this index (triplet) uniquely identifies the address of a reachable destination in the network. This indexes theolsrv2TibRoutingSetTable, which contains the next-hop information to reach the indexed addresses.
Now here's how those tables and their indexing actually line up π :
olsrv2InterfaceTable- describes the OLSRv2 status on the NHDP interfaces of this router. This table augmentsnhdpInterfaceEntryand, as such, it is indexed by the{nhdpIfIndex}from the NHDP-MIB.olsrv2IibLinkSetTable- records all links from other routers that are, or recently were, 1-hop neighbors. This table augmentsnhdpIibLinkSetEntryand, as such, it is indexed bynhdpIfIndexandnhdpDiscIfIndex.olsrv2Iib2HopSetTable- records network addresses of symmetric 2-hop neighbors and the links to the associated 1-hop neighbors. This table augmentsnhdpIib2HopSetEntryand, as such, it is indexed by{nhdpIfIndex, nhdpDiscIfIndex, nhdpIib2HopSetIpAddressType, nhdpIib2HopSetIpAddress}.olsrv2LibOrigSetTable- records addresses that were recently used as originator addresses by this router. This table is indexed by{olsrv2LibOrigSetIpAddrType, olsrv2LibOrigSetIpAddr}.olsrv2LibLocAttNetSetTable- records its local non-OLSRv2 interfaces via which it can act as a gateway to other networks. This table is indexed by{olsrv2LibLocAttNetSetIpAddrType, olsrv2LibLocAttNetSetIpAddr, olsrv2LibLocAttNetSetIpAddrPrefixLen}.olsrv2NibNeighborSetTable- records all network addresses of each 1-hop neighbor. This table augmentsnhdpNibNeighborSetEntryand, as such, it is indexed by the{nhdpDiscRouterIndex}.olsrv2TibAdRemoteRouterSetTable- records information describing each remote router in the network that transmits TC messages. This table is indexed by{olsrv2TibAdRemoteRouterSetIpAddrType, olsrv2TibAdRemoteRouterSetIpAddr}.olsrv2TibRouterTopologySetTable- records topology information about the network. This table is indexed by{olsrv2TibRouterTopologySetFromOrigIpAddrType, olsrv2TibRouterTopologySetFromOrigIpAddr, olsrv2TibRouterTopologySetToOrigIpAddrType, olsrv2TibRouterTopologySetToOrigIpAddr}.olsrv2TibRoutableAddressTopologySetTable- records topology information about the routable addresses within the MANET and via which routers they may be reached. This table is indexed by{olsrv2TibRoutableAddressTopologySetFromOrigIpAddrType, olsrv2TibRoutableAddressTopologySetFromOrigIpAddr, olsrv2TibRoutableAddressTopologySetFromDestIpAddrType, olsrv2TibRoutableAddressTopologySetFromDestIpAddr}.olsrv2TibAttNetworksSetTable- records information about networks (which may be outside the MANET) attached to other routers and their routable addresses. This table is indexed by{olsrv2TibAttNetworksSetOrigIpAddrType, olsrv2TibAttNetworksSetOrigIpAddr, olsrv2TibAttNetworksSetNetIpAddrType, olsrv2TibAttNetworksSetNetIpAddr, olsrv2TibAttNetworksSetNetIpAddrPrefixLen}.olsrv2TibRoutingSetTable- records the first hop along a selected path to each destination for which any such path is known. This table is indexed by{olsrv2TibRoutingSetDestIpAddrType, olsrv2TibRoutingSetDestIpAddr, olsrv2TibRoutingSetDestIpAddrPrefixLen}.olsrv2InterfacePerfTable- records performance counters for each active OLSRv2 interface on this device. This table augmentsnhdpInterfacePerfEntryand, as such, it is indexed by{nhdpIfIndex}from the NHDP-MIB.
6. Relationship to Other MIB Modules π§
okay so this section is all about how the MIB modules in this document hang out with other standards, especially the ones carrying their own MIB modules π«Ά. Any MIB modules and specific imported definitions that SHOULD be implemented alongside this one get called out right here.
6.1. Relationship to the SNMPv2-MIB
The System group in the SNMPv2-MIB module [RFC3418] is mandatory for all systems, and its objects apply to the entity as a whole. It gives identification of the management entity plus some other system-wide data. The OLSRv2-MIB module does not duplicate those objects, because we are not about to copy-paste what's already there π.
6.2. Relationship to the NHDP-MIB
OLSRv2 depends on the neighborhood information discovered by [RFC6130] πΈ. An instance of OLSRv2 MUST have an associated instance of NHDP running on the same device for the discovery and routing system to work properly. So that the OLSRv2-MIB module can correctly fill in the objects about discovered neighbors, the State Group tables of the NHDP-MIB module [RFC6779] are aligned with the State Group tables of this MIB module. This is done with the AUGMENTS capability of SMIv2 (where appropriate), which lets you cross-reference info between the two MIB modules within a given SNMP context. Main character energy π.
6.3. MIB Modules Required for IMPORTS
The OLSRv2-MIB module IMPORTS objects from NHDP-MIB [RFC6779], SNMPv2-SMI [RFC2578], SNMPv2-TC [RFC2579], SNMPv2-CONF [RFC2580], IF-MIB [RFC2863], and INET-ADDRESS-MIB [RFC4001]. It also IMPORTS objects from the IANAolsrv2LinkMetricType-MIB, which lives at http://www.iana.org/assignments/ianaolsrv2linkmetrictype-mib π¦.
7. Definitions π
this section is the whole OLSRv2-MIB module as defined by the spec, so here it is in all its glory β¨:
OLSRv2-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, Counter32, Counter64,
Integer32, Unsigned32, mib-2, TimeTicks,
NOTIFICATION-TYPE
FROM SNMPv2-SMI -- RFC 2578
TEXTUAL-CONVENTION, TimeStamp, TruthValue
FROM SNMPv2-TC -- RFC 2579
MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
FROM SNMPv2-CONF -- STD 58
InetAddressType, InetAddress,
InetAddressPrefixLength
FROM INET-ADDRESS-MIB -- RFC 4001
nhdpInterfaceEntry,
nhdpIibLinkSetEntry, nhdpIib2HopSetEntry,
nhdpNibNeighborSetEntry, nhdpInterfacePerfEntry
FROM NHDP-MIB -- RFC 6779
IANAolsrv2LinkMetricTypeTC
FROM IANA-OLSRv2-LINK-METRIC-TYPE-MIB
;
manetOlsrv2MIB MODULE-IDENTITY
LAST-UPDATED "201404090000Z" -- 09 April 2014
ORGANIZATION "IETF MANET Working Group"
CONTACT-INFO
"WG E-Mail: manet@ietf.org
WG Chairs: sratliff@cisco.com
jmacker@nrl.navy.mil
Editors: Ulrich Herberg
Fujitsu Laboratories of America
1240 East Arques Avenue
Sunnyvale, CA 94085
USA
Email: ulrich@herberg.name
URI: http://www.herberg.name/
Thomas Heide Clausen
Ecole Polytechnique
LIX
91128 Palaiseau Cedex
France
Email: T.Clausen@computer.org
URI: http://www.thomasclausen.org/
Robert G. Cole
US Army CERDEC
Space and Terrestrial Communications
6010 Frankford Street
Bldg 6010, Room 453H
Aberdeen Proving Ground, MD 21005
USA
Phone: +1 443 395-8744
Email: robert.g.cole@us.army.mil
URI: http://www.cs.jhu.edu/~rgcole"
DESCRIPTION
"This OLSRv2-MIB module is applicable to routers
implementing the Optimized Link State Routing
Protocol version 2 (OLSRv2) defined in RFC 7181.
Copyright (c) 2014 IETF Trust and the persons
identified as authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with
or without modification, is permitted pursuant to, and
subject to the license terms contained in, the Simplified
BSD License set forth in Section 4.c of the IETF Trust's
Legal Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info).
This version of this MIB module is part of RFC 7184; see
the RFC itself for full legal notices."
-- Revision History
REVISION "201404090000Z" -- 09 April 2014
DESCRIPTION
"Initial version of this MIB module,
published as RFC 7184."
::= { mib-2 219 }
--
-- TEXTUAL CONVENTIONS
--
Okay bestie, these are the textual conventions, which are basically custom types that the rest of the MIB reuses π Let's go π
Olsrv2MetricValueCompressedFormTC ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"OLSRv2 Metrics are expressed in terms of a Link Metric
Compressed Form within the OLSRv2 protocol. This textual
convention defines the syntax of the metric objects
consistent with the definitions of the OLSRv2 Link
Metric Compressed Form in Section 6.2 of RFC 7181.
The 12-bit compressed form of a link metric uses a modified
form of a representation with an 8-bit mantissa (denoted a)
and a 4-bit exponent (denoted b). Note that if represented
as the 12-bit value 256b+a, then the ordering of those 12-bit
values is identical to the ordering of the represented values.
The value so represented is (257+a)2^b - 256, where ^ denotes
exponentiation. This has a minimum value
(when a = 0 and b = 0) of MINIMUM_METRIC = 1 and a maximum
value (when a = 255 and b = 15) of MAXIMUM_METRIC = 2^24 - 256.
Hence, the metric values so represented range from 1 to
16776960. The special value of 0 is reserved for the
UNKNOWN_METRIC value.
If a network manager sets the metric value 'm' through the
MIB module, then the OLSRv2 code can both use this value
and derive a compressed representation of 'm' (as used in
messages) as specified in Section 6.2 of RFC7181.
The value 'm' is persistently stored by the MIB module.
If the MIB module is pulling this metric's value from some other
source, e.g., the protocol instance, then this value is stored
as is."
SYNTAX Unsigned32 (0..16776960)
Olsrv2TimeValueCompressedForm32TC ::= TEXTUAL-CONVENTION
DISPLAY-HINT "x"
STATUS current
DESCRIPTION
"OLSRv2 time values may be expressed in terms of a compressed
form within the OLSRv2 protocol. This textual convention
defines the syntax of the time objects defined in terms of
an integer number of milliseconds, consistent with the
definitions of the 8-bit exponent-mantissa compressed form
defined in Section 5 of RFC 5497. Time values with this
representation are defined in terms of a constant C, which
is represented in terms of seconds. The constant C
(time granularity) is used as specified in RFC 5497.
It MUST be the same as is used by NHDP (RFC 6130).
The 8-bit compressed form of a time value uses a modified
form of a representation with a 3-bit mantissa (denoted a)
and a 5-bit exponent (denoted b). Note that if represented
as the 8-bit value 8b+a, then the ordering of those 8-bit
values is identical to the ordering of the represented values.
The minimum time value that can be represented in this manner
is C. The maximum time value that can be represented in
this manner is 15 * 2^28 * C, 15*268,435,456 * C,
4,026,531,840 * C, or about 45 days if, for example,
C = 1/1024 second.
This TEXTUAL-CONVENTION limits the maximum value of the
time granularity constant C to be no greater than 1/1024
seconds due to its use of the Unsigned32 syntax limiting
the maximum number of milliseconds to no more than
3932160000.
When OLSRv2 uses this 8-bit exponent-mantissa compressed
form, this object value MUST be translated from the
integer form represented in this MIB module into the
exponent-mantissa form for the OLSRv2 protocol to use
according to the algorithm defined in Section 5 of
RFC 5497 for finding the next larger time value within
the exponent-mantissa format.
If a network manager sets the time value 't' through the
MIB module, then the OLSRv2 code can derive
'compressed_t' = T(a,b) according to the algorithm
in RFC 5497 and 'compressed_t' is the value represented
in the OLSRv2 messages. But, the value 't' is persistently
stored by the MIB module. If the MIB module is pulling
this time parameter from some other source that is using
the compressed form, i.e., the protocol instance, then
this value is stored as is, after converting from
number of time constants C into number of milliseconds."
SYNTAX Unsigned32 (1..3932160000)
Olsrv2StatusTC ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Controls the operation of the OLSRv2
protocol on the device or a specific interface.
For example, for an interface, 'enabled' indicates
that OLSRv2 is permitted to operate,
and 'disabled' indicates that it is not."
SYNTAX INTEGER {
enabled (1),
disabled (2)
}
WillingnessTC ::= TEXTUAL-CONVENTION
DISPLAY-HINT "x"
STATUS current
DESCRIPTION
"A willingness value that evaluates to the
device's interest in participating in
a particular function, process, or behavior.
The willingness ranges from a low value of
WILL_NEVER(0) to a high value of
WILL_ALWAYS(15). For each parameter x,
there is an associated willingness value
W(x) such that WILL_NEVER < W(x) <= WILL_ALWAYS."
SYNTAX Unsigned32 (0..15)
Next up are the top-level OID assignments. These are just the branches the notifications, objects and conformance stuff hang off of, so it's basically the family tree π³π§
--
-- Top-Level Object Identifier Assignments
--
olsrv2MIBNotifications OBJECT IDENTIFIER ::= { manetOlsrv2MIB 0 }
olsrv2MIBObjects OBJECT IDENTIFIER ::= { manetOlsrv2MIB 1 }
olsrv2MIBConformance OBJECT IDENTIFIER ::= { manetOlsrv2MIB 2 }
--
-- olsrv2ConfigurationGroup
--
-- Contains the OLSRv2 objects that configure specific
-- options that determine the overall performance and operation
-- of the OLSRv2 routing process.
olsrv2ConfigurationGroup OBJECT IDENTIFIER ::= {olsrv2MIBObjects 1}
olsrv2AdminStatus OBJECT-TYPE
SYNTAX Olsrv2StatusTC
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The configured status of the OLSRv2 process
on this device. 'enabled(1)' means that
OLSRv2 is configured to run on this device.
'disabled(2)' mean that the OLSRv2 process
is configured off.
Operation of the OLSRv2 protocol
requires the operation of the Neighborhood
Discovery Protocol (RFC 6130). Hence, this
object cannot have a status of 'enabled'
unless at least one interface on the device
is a MANET interface with NHDP enabled on that
interface. If a network manager attempts to
set this object to 'enabled' when no interfaces
on this device have NHDP enabled, the device
MUST fail the set with inconsistentValue.
If all device interfaces running NHDP become
disabled or removed, then the
olsrv2AdminStatus MUST be 'disabled'.
If the network manager, or other means, sets
this object to 'disabled', then the associated
interface specific objects, i.e., the
olsrv2InterfaceAdminStatus objects MUST all
be 'disabled'.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
DEFVAL { disabled }
::= { olsrv2ConfigurationGroup 1 }
olsrv2InterfaceTable OBJECT-TYPE
SYNTAX SEQUENCE OF Olsrv2InterfaceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The olsrv2InterfaceTable describes the OLSRv2
status on the NHDP interfaces of this router.
As such, this table augments the nhdpInterfaceTable
defined in the NHDP-MIB (RFC 6779). NHDP interfaces
are explicitly defined by network management, command
line interface (CLI) or other means for interfaces on
the device that are intended to run MANET protocols.
The olsrv2InterfaceTable contains a single object: the
olsrv2InterfaceAdminStatus object. This
object is set by network management, or by
other means, e.g., CLI.
A conceptual row in this table exists if and only
if a corresponding entry in the nhdpInterfaceTable
exists. If the corresponding entry with nhdpIfIndex
value is deleted from the nhdpInterfaceTable, then
the entry in this table is automatically deleted and
OLSRv2 is disabled on this interface,
and all configuration and state information
related to this interface is to be removed
from memory.
The olsrv2InterfaceAdminStatus can only be
'enabled' if the corresponding olsrv2AdminStatus
object is also set to 'enabled'."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2ConfigurationGroup 2 }
olsrv2InterfaceEntry OBJECT-TYPE
SYNTAX Olsrv2InterfaceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The olsrv2InterfaceEntry describes one OLSRv2
local interface configuration as indexed by
its nhdpIfIndex, as defined in the
NHDP-MIB (RFC 6779).
The objects in this table are persistent, and when
written, the device SHOULD save the change to
non-volatile storage. For further information
on the storage behavior for these objects, refer
to the description for the nhdpIfRowStatus
object in the NHDP-MIB (RFC6779)."
REFERENCE
"RFC 6779 - Definition of Managed Objects for
the Neighborhood Discovery Protocol,
Herberg, U., Cole, R.G., and I. Chakeres,
October 2012"
AUGMENTS { nhdpInterfaceEntry }
::= { olsrv2InterfaceTable 1 }
Olsrv2InterfaceEntry ::=
SEQUENCE {
olsrv2InterfaceAdminStatus
Olsrv2StatusTC
}
olsrv2InterfaceAdminStatus OBJECT-TYPE
SYNTAX Olsrv2StatusTC
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The OLSRv2 interface's administrative status.
The value 'enabled(1)' denotes that the interface
is permitted to participate in the OLSRv2 routing
process. The value 'disabled(2)' denotes that
the interface is not permitted to participate
in the OLSRv2 routing process.
The configuration objects for the OLSRv2 routing
process, other than the administrative status objects,
are common to all interfaces on this device.
As such, the OLSRv2 configuration objects are globally
defined for the device and are not contained within
the olsrv2InterfaceTable."
DEFVAL { disabled }
::= { olsrv2InterfaceEntry 1 }
olsrv2OrigIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The type of the olsrv2OrigIpAddr, as defined
in the InetAddress MIB module (RFC 4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2ConfigurationGroup 3 }
olsrv2OrigIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The router's originator address. An address that
is unique (within the MANET) to this router.
Okay bestie, the cute part where we get into the local history times and message intervals is next ππ
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2ConfigurationGroup 4 }
--
-- Local History Times
--
olsrv2OHoldTime OBJECT-TYPE
SYNTAX Unsigned32
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2OHoldTime corresponds to
O_HOLD_TIME of OLSRv2, and represents the
time for which a recently used and replaced
originator address is used to recognize the router's
own messages.
Guidance for setting this object may be found
in Section 5 of the OLSRv2 specification (RFC 7181),
which indicates that:
o olsrv2OHoldTime > 0
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 30000 }
::= { olsrv2ConfigurationGroup 5 }
--
-- Message intervals
--
olsrv2TcInterval OBJECT-TYPE
SYNTAX Olsrv2TimeValueCompressedForm32TC
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2TcInterval corresponds to
TC_INTERVAL of OLSRv2 and represents the
maximum time between the transmission of
two successive TC messages by this router.
Guidance for setting this object may be found
in Section 5 of the OLSRv2 specification (RFC 7181),
which indicates that:
o olsrv2TcInterval > 0
o olsrv2TcInterval >= olsrv2TcMinInterval
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Representing Time.
RFC 5497 - Representing Multi-Value Time in
Mobile Ad Hoc Networks (MANETs),
Clausen, T. and C. Dearlove, March 2009.
and
Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 5000 }
::= { olsrv2ConfigurationGroup 6 }
olsrv2TcMinInterval OBJECT-TYPE
SYNTAX Olsrv2TimeValueCompressedForm32TC
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2TcMinInterval corresponds to
TC_MIN_INTERVAL of OLSRv2 and represents
the minimum interval between transmission of
two successive TC messages by this router.
Guidance for setting this object may be found
in Section 5 of the OLSRv2 specification (RFC 7181),
which indicates that:
o olsrv2TcInterval >= olsrv2TcMinInterval
The OLSRv2 protocol may choose to represent this
time interval in terms of the 8-bit exponent-mantissa
form defined in Section 5 of RFC 5497. When this
is the case, this object value MUST be translated
from the integer form represented in this
MIB module into the exponent-mantissa form for the
OLSRv2 protocol to use according to the algorithm
defined in Section 5 of RFC 5497 for finding the
next larger time value within the exponent-mantissa
format.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Representing Time.
RFC 5497 - Representing Multi-Value Time in
Mobile Ad Hoc Networks (MANETs),
Clausen, T. and C. Dearlove, March 2009.
and
Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 1250 }
::= { olsrv2ConfigurationGroup 7 }
--
-- Advertised information validity times
--
olsrv2THoldTime OBJECT-TYPE
SYNTAX Olsrv2TimeValueCompressedForm32TC
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2THoldTime corresponds to
T_HOLD_TIME of OLSRv2 and is used as the
minimum value in the TLV with
Type = VALIDITY_TIME included in all
TC messages sent by this router.
Guidance for setting this object may be found
in Section 5 of the OLSRv2 specification (RFC 7181),
which indicates that:
o olsrv2THoldTime >= olsrv2TcInterval
o If TC messages can be lost, then
olsrv2THoldTime SHOULD be
significantly greater than olsrv2TcInterval;
a value >= 3 x olsrv2TcInterval is RECOMMENDED.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Representing Time.
RFC 5497 - Representing Multi-Value Time in
Mobile Ad Hoc Networks (MANETs),
Clausen, T. and C. Dearlove, March 2009.
and
Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 15000 }
::= { olsrv2ConfigurationGroup 8 }
olsrv2AHoldTime OBJECT-TYPE
SYNTAX Olsrv2TimeValueCompressedForm32TC
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2AHoldTime corresponds to
A_HOLD_TIME of OLSRv2 and represents
the period during which TC messages are sent
after they no longer have any advertised
information to report, but are sent in order
to accelerate outdated information removal by other
routers.
Guidance for setting this object may be found
in Section 5 of the OLSRv2 specification (RFC 7181),
which indicates that:
o If TC messages can be lost, then
olsrv2AHoldTime SHOULD be
significantly greater than olsrv2TcInterval;
a value >= 3 x olsrv2TcInterval is
RECOMMENDED.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Representing Time.
RFC 5497 - Representing Multi-Value Time in
Mobile Ad Hoc Networks (MANETs),
Clausen, T. and C. Dearlove, March 2009.
and
Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 15000 }
::= { olsrv2ConfigurationGroup 9 }
--
-- Received message validity times
--
olsrv2RxHoldTime OBJECT-TYPE
SYNTAX Unsigned32
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2RxHoldTime corresponds to
RX_HOLD_TIME of OLSRv2 and represents the period
after receipt of a message by the appropriate OLSRv2
interface of this router for which that information
is recorded, in order that the message is recognized
as having been previously received on this OLSRv2
interface.
Guidance for setting this object may be found
in Section 5 of the OLSRv2 specification (RFC 7181),
which indicates that:
o olsrv2RxHoldTime > 0
o This parameter SHOULD be greater
than the maximum difference in time that a
message may take to traverse the MANET,
taking into account any message forwarding
jitter as well as propagation, queuing,
and processing delays.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 30000 }
::= { olsrv2ConfigurationGroup 10 }
olsrv2PHoldTime OBJECT-TYPE
SYNTAX Unsigned32
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2PHoldTime corresponds to
P_HOLD_TIME of OLSRv2 and represents the period
after receipt of a message that is processed by
this router for which that information is recorded,
in order that the message is not processed again
if received again.
Guidance for setting this object may be found
in Section 5 of the OLSRv2 specification (RFC 7181),
which indicates that:
o olsrv2PHoldTime > 0
o This parameter SHOULD be greater
than the maximum difference in time that a
message may take to traverse the MANET,
taking into account any message forwarding
jitter as well as propagation, queuing,
and processing delays.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 30000 }
::= { olsrv2ConfigurationGroup 11 }
olsrv2FHoldTime OBJECT-TYPE
SYNTAX Unsigned32
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2FHoldTime corresponds to
F_HOLD_TIME of OLSRv2 and represents the period
after receipt of a message that is forwarded by this
router for which that information is recorded, in order
that the message is not forwarded again if received again.
Guidance for setting this object may be found
in Section 5 of the OLSRv2 specification (RFC 7181),
which indicates that:
o olsrv2FHoldTime > 0
o This parameter SHOULD be greater
than the maximum difference in time that a
message may take to traverse the MANET,
taking into account any message forwarding
jitter as well as propagation, queuing,
and processing delays.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 30000 }
::= { olsrv2ConfigurationGroup 12 }
--
-- Jitter times
--
okay so the config group ends with the jitter knobs and hop limits, and honestly they're giving main character energy πβ¨
olsrv2TpMaxJitter OBJECT-TYPE
SYNTAX Unsigned32
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2TpMaxJitter corresponds to
TP_MAXJITTER of OLSRv2 and represents the value
of MAXJITTER used in RFC 5148 for periodically
generated TC messages sent by this router.
For constraints on these parameters, see RFC 5148.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 500 }
::= { olsrv2ConfigurationGroup 13 }
olsrv2TtMaxJitter OBJECT-TYPE
SYNTAX Unsigned32
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2TtMaxJitter corresponds to
TT_MAXJITTER of OLSRv2 and represents the value
of MAXJITTER used in RFC 5148 for externally
triggered TC messages sent by this router.
For constraints on these parameters, see RFC 5148.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 500 }
::= { olsrv2ConfigurationGroup 14 }
olsrv2FMaxJitter OBJECT-TYPE
SYNTAX Unsigned32
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2FMaxJitter corresponds to
F_MAXJITTER of OLSRv2 and represents the
default value of MAXJITTER used in RFC 5148 for
messages forwarded by this router.
For constraints on these parameters, see RFC 5148.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 500 }
::= { olsrv2ConfigurationGroup 15 }
--
-- Hop limits
--
olsrv2TcHopLimit OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
UNITS "hops"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2TcHopLimit corresponds to
TC_HOP_LIMIT of OLSRv2.
Guidance for setting this object may be found
in Section 5 of the OLSRv2 specification (RFC 7181),
which indicates that:
o The maximum value of
olsrv2TcHopLimit >= the network diameter
in hops, a value of 255 is RECOMMENDED.
o olsrv2TcHopLimit >= 2.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 255 }
::= { olsrv2ConfigurationGroup 16 }
Next up is the willingness stuff, and it's giving "who gets to route and who gets to flood" πΈπ¦
--
-- Willingness
--
olsrv2WillRouting OBJECT-TYPE
SYNTAX WillingnessTC
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2WillRouting corresponds to
WILL_ROUTING of OLSRv2.
Guidance for setting this object may be found
in Section 5 of the OLSRv2 specification (RFC 7181),
which indicates that:
o WILL_NEVER (0) <= olsrv2WillRouting <=
WILL_ALWAYS (15)
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 7 }
::= { olsrv2ConfigurationGroup 17 }
olsrv2WillFlooding OBJECT-TYPE
SYNTAX WillingnessTC
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2WillFlooding corresponds to
WILL_FLOODING of OLSRv2.
Guidance for setting this object may be found
in Section 5 of the OLSRv2 specification (RFC 7181),
which indicates that:
o WILL_NEVER (0) <= olsrv2WillFlooding <=
WILL_ALWAYS (15)
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { 7 }
::= { olsrv2ConfigurationGroup 18 }
olsrv2LinkMetricType OBJECT-TYPE
SYNTAX IANAolsrv2LinkMetricTypeTC
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2LinkMetricType corresponds to
LINK_METRIC_TYPE of OLSRv2.
If olsrv2LinkMetricType changes, then all
link metric information recorded by this router
is invalid. The router MUST take the
actions described in Section 5.5.
'Parameter Change Constraints' and
Section 17 'Information Base Changes'
in RFC 7181.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"Section 5 on Protocol Parameters.
RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
DEFVAL { unknown }
::= { olsrv2ConfigurationGroup 19 }
--
-- olsrv2StateGroup
--
--
-- Contains information describing the current state of
-- the OLSRv2 process.
--
olsrv2StateGroup OBJECT IDENTIFIER ::= { olsrv2MIBObjects 2 }
The state group is where the router's live view of its neighbours lives, and the link set is the first stop π§π
--
-- Interface Information Base (IIB)
--
--
-- Link Set from RFC 6130, extended by L_in_metric,
-- L_out_metric, and L_mpr_selector entries for each tuple
--
olsrv2IibLinkSetTable OBJECT-TYPE
SYNTAX SEQUENCE OF Olsrv2IibLinkSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A Link Set of an interface records all links
from other routers that are, or recently
were, 1-hop neighbors."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2StateGroup 1 }
olsrv2IibLinkSetEntry OBJECT-TYPE
SYNTAX Olsrv2IibLinkSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A Link Set consists of Link Tuples, each
representing a single link indexed by the
local and remote interface pair. Each Link Set
from NHDP is extended by OLSRv2 by the following
fields:
(L_in_metric (olsrv2IibLinkSetInMetricValue),
L_out_metric (olsrv2IibLinkSetOutMetricValue),
L_mpr_selector (olsrv2IibLinkSetMprSelector))"
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
AUGMENTS { nhdpIibLinkSetEntry }
::= { olsrv2IibLinkSetTable 1 }
Olsrv2IibLinkSetEntry ::=
SEQUENCE {
olsrv2IibLinkSetInMetricValue
Olsrv2MetricValueCompressedFormTC,
olsrv2IibLinkSetOutMetricValue
Olsrv2MetricValueCompressedFormTC,
olsrv2IibLinkSetMprSelector
TruthValue
}
olsrv2IibLinkSetInMetricValue OBJECT-TYPE
SYNTAX Olsrv2MetricValueCompressedFormTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"olsrv2IibLinkSetInMetricValue is the metric of the link
from the OLSRv2 interface with addresses
L_neighbor_iface_addr_list to this OLSRv2 interface.
The L_neighbor_iface_addr_list is identified by
the nhdpDiscIfIndex, which is an index to the
nhdpIibLinkSetTable, which this table augments."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2IibLinkSetEntry 1 }
olsrv2IibLinkSetOutMetricValue OBJECT-TYPE
SYNTAX Olsrv2MetricValueCompressedFormTC
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"olsrv2IibLinkSetOutMetricValue is the metric of the
link to the OLSRv2 interface with addresses
L_neighbor_iface_addr_list from this OLSRv2 interface.
The L_neighbor_iface_addr_list is identified by
the nhdpDiscIfIndex, which is an index to the
nhdpIibLinkSetTable, which this table augments."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2IibLinkSetEntry 2 }
olsrv2IibLinkSetMprSelector OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"olsrv2IibLinkSetMprSelector is a boolean flag,
recording whether this neighbor has selected this router
as a flooding MPR, i.e., is a flooding MPR selector
of this router."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2IibLinkSetEntry 3 }
Now the 2-hop set, which is where the router keeps track of friends-of-friends π―ββοΈπ
--
-- 2-Hop Set; from RFC 6130, extended by OLSRv2 by the
-- following fields: N2_in_metric, N2_out_metric
--
olsrv2Iib2HopSetTable OBJECT-TYPE
SYNTAX SEQUENCE OF Olsrv2Iib2HopSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A 2-Hop Set of an interface records network
addresses of symmetric 2-hop neighbors, and
the symmetric links to symmetric 1-hop neighbors
through which these symmetric 2-hop neighbors
can be reached. It consists of 2-Hop Tuples."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2StateGroup 2 }
olsrv2Iib2HopSetEntry OBJECT-TYPE
SYNTAX Olsrv2Iib2HopSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"olsrv2Iib2HopSetTable consists of 2-Hop Tuples,
each representing a single network address of
a symmetric 2-hop neighbor and a single MANET
interface of a symmetric 1-hop neighbor.
Each 2-Hop Set from NHDP is extended by
OLSRv2 by the following fields:
okay so the next bit is the tail end of the 2-hop set entry, and then we're into the Local Information Base π§ the Originator Set and Local Attached Network Set are giving main character energy, no cap π
(N2_in_metric (olsrv2Iib2HopSetInMetricValue),
N2_out_metric (olsrv2Iib2HopSetOutMetricValue))"
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
AUGMENTS { nhdpIib2HopSetEntry }
::= { olsrv2Iib2HopSetTable 1 }
Olsrv2Iib2HopSetEntry ::=
SEQUENCE {
olsrv2Iib2HopSetInMetricValue
Olsrv2MetricValueCompressedFormTC,
olsrv2Iib2HopSetOutMetricValue
Olsrv2MetricValueCompressedFormTC
}
olsrv2Iib2HopSetInMetricValue OBJECT-TYPE
SYNTAX Olsrv2MetricValueCompressedFormTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"olsrv2Iib2HopSetInMetricValue is the neighbor
metric from the router with address
N2_2hop_iface_addr to the router
with OLSRv2 interface addresses
N2_neighbor_iface_addr_list.
The N2_2hop_iface_addr is identified by the
(nhdpIib2HopSetIpAddressType,
nhdpIib2HopSetIpAddress) pair from the
nhdpIibLinkSetTable, which this table augments.
The N2_neighbor_iface_addr_list is defined by
the nhdpDiscIfIndex, which is an index of the
nhdpIibLinkSetTable, which this table augments."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014.
and
RFC 6779 - Definition of Managed Objects for the
Neighborhood Discovery Process, Herberg, U.,
Cole, R., and I. Chakeres, October 2012."
::= { olsrv2Iib2HopSetEntry 1 }
olsrv2Iib2HopSetOutMetricValue OBJECT-TYPE
SYNTAX Olsrv2MetricValueCompressedFormTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"olsrv2Iib2HopSetOutMetricValue is the neighbor metric
to the router with address N2_2hop_iface_addr
from the router with OLSRv2 interface addresses
N2_neighbor_iface_addr_list.
The N2_2hop_iface_addr is identified by the
(nhdpIib2HopSetIpAddressType,
nhdpIib2HopSetIpAddress) pair from the
nhdpIibLinkSetTable, which this table augments.
The N2_neighbor_iface_addr_list is defined by
the nhdpDiscIfIndex, which is an index of the
nhdpIibLinkSetTable, which this table augments."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014.
and
RFC 6779 - Definition of Managed Objects for the
Neighborhood Discovery Process, Herberg, U.,
Cole, R., and I. Chakeres, October 2012."
::= { olsrv2Iib2HopSetEntry 2 }
--
-- Local Information Base - as defined in RFC 6130,
-- extended by the addition of an Originator Set,
-- defined in Section 6.1 and a Local Attached
-- Network Set, defined in Section 6.2.
--
--
-- Originator Set
--
olsrv2LibOrigSetTable OBJECT-TYPE
SYNTAX SEQUENCE OF Olsrv2LibOrigSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A router's Originator Set records addresses
that were recently used as originator addresses
by this router."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2StateGroup 3 }
olsrv2LibOrigSetEntry OBJECT-TYPE
SYNTAX Olsrv2LibOrigSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A router's Originator Set consists of
Originator Tuples:
(O_orig_addr (olsrv2LibOrigSetIpAddrType
and olsrv2LibOrigSetIpAddr),
O_time (olsrv2LibOrigSetExpireTime))."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
INDEX { olsrv2LibOrigSetIpAddrType,
olsrv2LibOrigSetIpAddr }
::= { olsrv2LibOrigSetTable 1 }
Olsrv2LibOrigSetEntry ::=
SEQUENCE {
olsrv2LibOrigSetIpAddrType
InetAddressType,
olsrv2LibOrigSetIpAddr
InetAddress,
olsrv2LibOrigSetExpireTime
TimeStamp
}
olsrv2LibOrigSetIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The type of the olsrv2LibOrigSetIpAddr,
as defined in the InetAddress MIB (RFC4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2LibOrigSetEntry 1 }
olsrv2LibOrigSetIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An originator address recently employed
by this router."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2LibOrigSetEntry 2 }
olsrv2LibOrigSetExpireTime OBJECT-TYPE
SYNTAX TimeStamp
UNITS "centiseconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"olsrv2LibOrigSetExpireTime specifies the value
of sysUptime when this entry SHOULD expire and be
removed from the olsrv2LibOrigSetTable. This time
is determined at the time the entry is added,
derived from the following expression:
O_time := current time + O_HOLD_TIME
where O_time is olsrv2LibOrigSetExpireTime,
current_time is current sysUptime, and
O_HOLD_TIME is a parameter of the OLSRv2
protocol. In the event that the
O_HOLD_TIME is changed, the
olsrv2LibOrigSetExpireTime needs to be
recomputed for each of the entries in this table."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2LibOrigSetEntry 3 }
--
-- Local Attached Network Set
--
olsrv2LibLocAttNetSetTable OBJECT-TYPE
SYNTAX SEQUENCE OF Olsrv2LibLocAttNetSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A router's Local Attached Network Set records
its local non-OLSRv2 interfaces via which it
can act as a gateway to other networks."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2StateGroup 4 }
olsrv2LibLocAttNetSetEntry OBJECT-TYPE
SYNTAX Olsrv2LibLocAttNetSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The entries include the Local Attached
Network Tuples:
(AL_net_addr (olsrv2LibLocAttNetSetIpAddr),
AL_dist (olsrv2LibLocAttNetSetDistance),
AL_metric (olsrv2LibLocAttNetSetMetricValue)
)
where:
AL_net_addr is the network address
of an attached network that can
be reached via this router. The
AL_net_addr is defined in this MIB
module by the tuple
(olsrv2LibLocAttNetSetIpAddrType,
olsrv2LibLocAttNetSetIpAddr,
olsrv2LibLocAttNetSetIpAddrPrefixLen).
AL_dist is the number of hops to
the network with address AL_net_addr
from this router. The AL_dist is
defined in this MIB module by the
olsrv2LibLocAttNetSetDistance object.
AL_metric is the metric of the link to
the attached network with address
AL_net_addr from this router. The
AL_metric is defined in this MIB module
by the olsrv2LibLocAttNetSetMetricValue
object.
OLSRv2 (RFC 7181) defines the rules for managing
entries within this table, e.g., populating
and purging entries. Specific instructions for the
olsrv2LibLocAttNetSetEntry(s) are found in
Sections 7.2 and 17 of OLSRv2 (RFC 7181)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
INDEX { olsrv2LibLocAttNetSetIpAddrType,
olsrv2LibLocAttNetSetIpAddr,
olsrv2LibLocAttNetSetIpAddrPrefixLen }
::= { olsrv2LibLocAttNetSetTable 1 }
Olsrv2LibLocAttNetSetEntry ::=
SEQUENCE {
olsrv2LibLocAttNetSetIpAddrType
InetAddressType,
olsrv2LibLocAttNetSetIpAddr
InetAddress,
olsrv2LibLocAttNetSetIpAddrPrefixLen
InetAddressPrefixLength,
olsrv2LibLocAttNetSetDistance
Unsigned32,
olsrv2LibLocAttNetSetMetricValue
Olsrv2MetricValueCompressedFormTC
}
olsrv2LibLocAttNetSetIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The type of the olsrv2LibLocAttNetSetIpAddr, as defined
in the InetAddress MIB (RFC 4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2LibLocAttNetSetEntry 1 }
olsrv2LibLocAttNetSetIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This is the network address of an attached
network that can be reached via this router."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2LibLocAttNetSetEntry 2 }
olsrv2LibLocAttNetSetIpAddrPrefixLen OBJECT-TYPE
SYNTAX InetAddressPrefixLength
UNITS "bits"
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Indicates the number of leading one bits that form the
mask to be logically ANDed with the destination address
before being compared to the value in the
olsrv2LibLocAttNetSetIpAddr field."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2LibLocAttNetSetEntry 3 }
olsrv2LibLocAttNetSetDistance OBJECT-TYPE
SYNTAX Unsigned32 (1..255)
UNITS "hops"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object specifies the number of hops
to the network with address
olsrv2LibLocAttNetSetIpAddr from this router."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2LibLocAttNetSetEntry 4 }
that's the end of the Local Attached Network Set bits for this part π¦ the Local Attached Network Set stuff is up next, so stay tuned bestie π«Άβ¨
olsrv2LibLocAttNetSetMetricValue OBJECT-TYPE SYNTAX Olsrv2MetricValueCompressedFormTC MAX-ACCESS read-only STATUS current DESCRIPTION "This object specifies the metric of the link to the attached network with address AL_net_addr from this router. The AL_net_addr is defined by the tuple (olsrv2LibLocAttNetSetIpAddrType, olsrv2LibLocAttNetSetIpAddr, olsrv2LibLocAttNetSetIpAddrPrefixLen)." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2LibLocAttNetSetEntry 5 }
-- -- Neighbor Information Base --
-- -- Neighbor Set - as defined in RFC 6130, -- extended by OLSRv2 by the addition of the following -- elements to each Neighbor Tuple: -- N_orig_addr (olsrv2NibNeighborSetNOrigIpAddrType, -- olsrv2NibNeighborSetNOrigIpAddr) -- N_in_metric (olsrv2NibNeighborSetNInMetricValue) -- N_out_metric (olsrv2NibNeighborSetNOutMetricValue) -- N_will_flooding (olsrv2NibNeighborSetNWillFlooding) -- N_will_routing (olsrv2NibNeighborSetNWillRouting) -- N_flooding_mpr (olsrv2NibNeighborSetNFloodingMpr) -- N_routing_mpr (olsrv2NibNeighborSetNRoutingMpr) -- N_mpr_selector (olsrv2NibNeighborSetNMprSelector) -- N_advertised (olsrv2NibNeighborSetNAdvertised) --
olsrv2NibNeighborSetTable OBJECT-TYPE SYNTAX SEQUENCE OF Olsrv2NibNeighborSetEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A router's Neighbor Set records all network addresses of each 1-hop neighbor. It consists of Neighbor Tuples, each representing a single 1-hop neighbor." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2StateGroup 5 }
olsrv2NibNeighborSetEntry OBJECT-TYPE SYNTAX Olsrv2NibNeighborSetEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each Neighbor Tuple in the Neighbor Set, defined in RFC 6130, has these additional elements: N_orig_addr (olsrv2NibNeighborSetNOrigIpAddrType, olsrv2NibNeighborSetNOrigIpAddr) N_in_metric (olsrv2NibNeighborSetNInMetricValue) N_out_metric (olsrv2NibNeighborSetNOutMetricValue) N_will_flooding (olsrv2NibNeighborSetNWillFlooding) N_will_routing (olsrv2NibNeighborSetNWillRouting) N_flooding_mpr (olsrv2NibNeighborSetNFloodingMpr) N_routing_mpr (olsrv2NibNeighborSetNRoutingMpr) N_mpr_selector (olsrv2NibNeighborSetNMprSelector) N_advertised (olsrv2NibNeighborSetNAdvertised) defined here as extensions."
REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." AUGMENTS { nhdpNibNeighborSetEntry } ::= { olsrv2NibNeighborSetTable 1 }
Olsrv2NibNeighborSetEntry ::= SEQUENCE { olsrv2NibNeighborSetNOrigIpAddrType InetAddressType, olsrv2NibNeighborSetNOrigIpAddr InetAddress, olsrv2NibNeighborSetNInMetricValue Olsrv2MetricValueCompressedFormTC, olsrv2NibNeighborSetNOutMetricValue Olsrv2MetricValueCompressedFormTC, olsrv2NibNeighborSetNWillFlooding WillingnessTC, olsrv2NibNeighborSetNWillRouting WillingnessTC, olsrv2NibNeighborSetNFloodingMpr TruthValue, olsrv2NibNeighborSetNRoutingMpr TruthValue, olsrv2NibNeighborSetNMprSelector TruthValue, olsrv2NibNeighborSetNAdvertised TruthValue }
olsrv2NibNeighborSetNOrigIpAddrType OBJECT-TYPE SYNTAX InetAddressType { ipv4(1) , ipv6(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "The type of the olsrv2NibNeighborSetNOrigIpAddr, as defined in the InetAddress MIB module (RFC4001).
Only the values 'ipv4(1)' and 'ipv6(2)' are supported." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2NibNeighborSetEntry 1 }
olsrv2NibNeighborSetNOrigIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16)) MAX-ACCESS read-only STATUS current DESCRIPTION "This is the originator IP address of the neighbor represented by this table entry." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2NibNeighborSetEntry 2 }
olsrv2NibNeighborSetNInMetricValue OBJECT-TYPE SYNTAX Olsrv2MetricValueCompressedFormTC MAX-ACCESS read-only STATUS current DESCRIPTION "This object is the neighbor metric of any link from this neighbor to an OLSRv2 interface of this router, i.e., the minimum of all corresponding L_in_metric (olsrv2IibLinkSetInMetricValue) with L_status = SYMMETRIC and L_in_metric (olsrv2IibLinkSetInMetricValue) != UNKNOWN_METRIC, UNKNOWN_METRIC if there are no such Link Tuples. UNKNOWN_METRIC has a value of 0." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2NibNeighborSetEntry 3 }
olsrv2NibNeighborSetNOutMetricValue OBJECT-TYPE SYNTAX Olsrv2MetricValueCompressedFormTC MAX-ACCESS read-only STATUS current DESCRIPTION "This object is the neighbor metric of any link from an OLSRv2 interface of this router to this neighbor, i.e., the minimum of all corresponding L_out_metric (olsrv2IibLinkSetOutMetricValue) with L_status = SYMMETRIC and L_out_metric (olsrv2IibLinkSetOutMetricValue) != UNKNOWN_METRIC, UNKNOWN_METRIC if there are no such Link Tuples. UNKNOWN_METRIC has a value of 0." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2NibNeighborSetEntry 4 }
olsrv2NibNeighborSetNWillFlooding OBJECT-TYPE SYNTAX WillingnessTC MAX-ACCESS read-only STATUS current DESCRIPTION "This object is the neighbor's willingness to be selected as a flooding MPR, in the range from WILL_NEVER to WILL_ALWAYS, both inclusive, taking the value WILL_NEVER if no OLSRv2 specific information is received from this neighbor." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2NibNeighborSetEntry 5 }
olsrv2NibNeighborSetNWillRouting OBJECT-TYPE SYNTAX WillingnessTC MAX-ACCESS read-only STATUS current DESCRIPTION "This object is the neighbor's willingness to be selected as a routing MPR, in the range from WILL_NEVER to WILL_ALWAYS, both inclusive, taking the value WILL_NEVER if no OLSRv2 specific information is received from this neighbor." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2NibNeighborSetEntry 6 }
olsrv2NibNeighborSetNFloodingMpr OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "This object is a boolean flag, recording whether this neighbor is selected as a flooding MPR by this router." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2NibNeighborSetEntry 7 } olsrv2NibNeighborSetNRoutingMpr OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "This object is a boolean flag, recording whether this neighbor is selected as a routing MPR by this router." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2NibNeighborSetEntry 8 }
olsrv2NibNeighborSetNMprSelector OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "This object is a boolean flag, recording whether this neighbor has selected this router as a routing MPR, i.e., is a routing MPR selector of this router.
When set to 'true', then this router is selected as a routing MPR by the neighbor router. When set to 'false', then this router is not selected by the neighbor as a routing MPR." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2NibNeighborSetEntry 9 }
olsrv2NibNeighborSetNAdvertised OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "This object, N_mpr_selector (olsrv2NibNeighborSetNMprSelector), is a boolean flag, recording whether this router has elected to advertise a link to this neighbor in its TC messages." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014."
::= { olsrv2NibNeighborSetEntry 10 }
olsrv2NibNeighborSetTableAnsn OBJECT-TYPE SYNTAX Unsigned32 (0..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "Advertised Neighbor Sequence Number (ANSN), is a variable, whose value is included in TC messages to indicate the freshness of the information transmitted." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2StateGroup 6 }
-- -- Topology Information Base - this Information -- Base is specific to OLSRv2 and is defined in -- Section 10 of RFC 7181. --
-- -- Advertising Remote Router Set --
olsrv2TibAdRemoteRouterSetTable OBJECT-TYPE SYNTAX SEQUENCE OF Olsrv2TibAdRemoteRouterSetEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A router's Advertising Remote Router Set records information describing each remote router in the network that transmits TC messages." REFERENCE "RFC 7181 - The Optimized Link State Routing Protocol Version 2, Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg, April 2014." ::= { olsrv2StateGroup 7 }
okay so the Advertised Neighbor Set table is where the router keeps its ANSN-tagged remote router info, and the sequence number wraparound stuff is literally so iconic π§π
olsrv2TibAdRemoteRouterSetEntry OBJECT-TYPE
SYNTAX Olsrv2TibAdRemoteRouterSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A router's Advertised Neighbor Set Table entry
consists of Advertising Remote Router Tuples:
(AR_orig_addr (olsrv2TibAdRemoteRouterSetIpAddrType,
olsrv2TibAdRemoteRouterSetIpAddr),
AR_seq_number (olsrv2TibAdRemoteRouterSetMaxSeqNo),
AR_time (olsrv2TibAdRemoteRouterSetExpireTime).
Addresses associated with this router are
found in the NHDP-MIB module's nhdpDiscIfSetTable.
OLSRv2 (RFC 7181) defines the rules for managing
entries within this table, e.g., populating
and purging entries. Specific instructions for the
olsrv2TibAdRemoteRouterSetEntry(s) are found in
Section 10.1 and Section 17 of OLSRv2 (RFC 7181)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
INDEX { olsrv2TibAdRemoteRouterSetIpAddrType,
olsrv2TibAdRemoteRouterSetIpAddr }
::= { olsrv2TibAdRemoteRouterSetTable 1 }
Olsrv2TibAdRemoteRouterSetEntry ::=
SEQUENCE {
olsrv2TibAdRemoteRouterSetIpAddrType
InetAddressType,
olsrv2TibAdRemoteRouterSetIpAddr
InetAddress,
olsrv2TibAdRemoteRouterSetMaxSeqNo
Unsigned32,
olsrv2TibAdRemoteRouterSetExpireTime
TimeStamp
}
olsrv2TibAdRemoteRouterSetIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The type of the olsrv2TibAdRemoteRouterSetIpAddr,
as defined in the InetAddress MIB module (RFC4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAdRemoteRouterSetEntry 1 }
olsrv2TibAdRemoteRouterSetIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This is the originator address of a received
TC message."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAdRemoteRouterSetEntry 2 }
olsrv2TibAdRemoteRouterSetMaxSeqNo OBJECT-TYPE
SYNTAX Unsigned32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This is the greatest Advertised Neighbor Sequence
Number (ANSN) in any TC message
received that originated from the router
with originator address
olsrv2TibAdRemoteRouterSetIpAddr.
Sequence numbers are used in the OLSRv2 protocol
for the purpose of discarding 'old' information,
i.e., messages received out of order. However,
with a limited number of bits for representing
sequence numbers, wraparound (that the sequence
number is incremented from the maximum possible
value to zero) will occur. To prevent this from
interfering with the operation of this protocol,
OLSRv2 implementations observe the following when
determining the ordering of sequence numbers.
In OLSRv2, MAXVALUE designates one more than the
largest possible value for a sequence number.
For a 16-bit sequence number, MAXVALUE is 65536.
The sequence number S1 is said to be 'greater than'
the sequence number S2 if:
o S1 > S2 AND S1 - S2 < MAXVALUE/2 OR
o S2 > S1 AND S2 - S1 > MAXVALUE/2
When sequence numbers S1 and S2 differ by MAXVALUE/2,
their ordering cannot be determined. In this case,
which should not occur, either ordering may be
assumed.
Thus, when comparing two messages, it is possible
- even in the presence of wraparound - to determine
which message contains the most recent information."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAdRemoteRouterSetEntry 3 }
olsrv2TibAdRemoteRouterSetExpireTime OBJECT-TYPE
SYNTAX TimeStamp
UNITS "centiseconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"olsrv2TibAdRemoteRouterSetExpireTime specifies the value
of sysUptime when this entry SHOULD expire and be
removed from the olsrv2TibAdRemoteRouterSetTable."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAdRemoteRouterSetEntry 4 }
--
-- Router Topology Set
--
olsrv2TibRouterTopologySetTable OBJECT-TYPE
SYNTAX SEQUENCE OF Olsrv2TibRouterTopologySetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A router's Router Topology Set records topology
information about the network."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2StateGroup 8 }
olsrv2TibRouterTopologySetEntry OBJECT-TYPE
SYNTAX Olsrv2TibRouterTopologySetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"It consists of Router Topology Tuples:
(TR_from_orig_addr
(olsrv2TibRouterTopologySetFromOrigIpAddrType,
olsrv2TibRouterTopologySetFromOrigIpAddr),
TR_to_orig_addr
(olsrv2TibRouterTopologySetToOrigIpAddrType,
olsrv2TibRouterTopologySetToOrigIpAddr),
TR_seq_number (olsrv2TibRouterTopologySetSeqNo),
TR_metric (olsrv2TibRouterTopologySetMetricValue),
TR_time (olsrv2TibRouterTopologySetExpireTime)).
OLSRv2 (RFC 7181) defines the rules for managing
entries within this table, e.g., populating
and purging entries. Specific instructions for the
olsrv2TibRouterTopologySetEntry(s) are found in
Section 10.2 and Section 17 of OLSRv2 (RFC 7181)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
INDEX { olsrv2TibRouterTopologySetFromOrigIpAddrType,
olsrv2TibRouterTopologySetFromOrigIpAddr,
olsrv2TibRouterTopologySetToOrigIpAddrType,
olsrv2TibRouterTopologySetToOrigIpAddr }
::= { olsrv2TibRouterTopologySetTable 1 }
Olsrv2TibRouterTopologySetEntry ::=
SEQUENCE {
olsrv2TibRouterTopologySetFromOrigIpAddrType
InetAddressType,
olsrv2TibRouterTopologySetFromOrigIpAddr
InetAddress,
olsrv2TibRouterTopologySetToOrigIpAddrType
InetAddressType,
olsrv2TibRouterTopologySetToOrigIpAddr
InetAddress,
olsrv2TibRouterTopologySetSeqNo
Unsigned32,
olsrv2TibRouterTopologySetMetricValue
Olsrv2MetricValueCompressedFormTC,
olsrv2TibRouterTopologySetExpireTime
TimeStamp
}
olsrv2TibRouterTopologySetFromOrigIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The type of the olsrv2TibRouterTopologySetFromOrigIpAddr,
as defined in the InetAddress MIB module (RFC4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRouterTopologySetEntry 1 }
olsrv2TibRouterTopologySetFromOrigIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This is the originator address of a router that can
reach the router with originator address TR_to_orig_addr
in one hop."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRouterTopologySetEntry 2 }
olsrv2TibRouterTopologySetToOrigIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The type of the olsrv2TibRouterTopologySetToOrigIpAddr,
as defined in the InetAddress MIB module (RFC4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRouterTopologySetEntry 3 }
olsrv2TibRouterTopologySetToOrigIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This is the originator address of a router that can be
reached by the router with originator address
TR_to_orig_addr in one hop."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRouterTopologySetEntry 4 }
olsrv2TibRouterTopologySetSeqNo OBJECT-TYPE
SYNTAX Unsigned32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This is the greatest Advertised Neighbor Sequence
Number (ANSN) in any TC message
received that originated from the router
with originator address TR_from_orig_addr,
i.e., that contributed to the information
contained in this Tuple and that is defined by the
objects:
(olsrv2TibRouterTopologySetFromOrigIpAddrType,
olsrv2TibRouterTopologySetFromOrigIpAddr).
Sequence numbers are used in the OLSRv2 protocol
for the purpose of discarding 'old' information,
i.e., messages received out of order. However,
with a limited number of bits for representing
sequence numbers, wraparound (that the sequence
number is incremented from the maximum possible
value to zero) will occur. To prevent this from
interfering with the operation of this protocol,
OLSRv2 implementations observe the following when
determining the ordering of sequence numbers.
In OLSRv2, MAXVALUE designates one more than the
largest possible value for a sequence number.
For a 16-bit sequence number, MAXVALUE is 65536.
The sequence number S1 is said to be 'greater than'
the sequence number S2 if:
o S1 > S2 AND S1 - S2 < MAXVALUE/2 OR
o S2 > S1 AND S2 - S1 > MAXVALUE/2
When sequence numbers S1 and S2 differ by MAXVALUE/2,
their ordering cannot be determined. In this case,
which should not occur, either ordering may be
assumed.
Okay so, picking up right where the TC sequence number checks wrap up π Here's the rest of that table entry, the Routable Address Topology Set, and the start of the Attached Network Set. π
Thus, when comparing two messages, it is possible
- even in the presence of wraparound - to determine
which message contains the most recent information."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRouterTopologySetEntry 5 }
olsrv2TibRouterTopologySetMetricValue OBJECT-TYPE
SYNTAX Olsrv2MetricValueCompressedFormTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This is the neighbor metric from the router
with originator address TR_from_orig_addr
(olsrv2TibRouterTopologySetFromOrigIpAddrType,
olsrv2TibRouterTopologySetFromOrigIpAddr) to
the router with originator address TR_to_orig_addr
(olsrv2TibRouterTopologySetToOrigIpAddrType,
olsrv2TibRouterTopologySetToOrigIpAddr)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRouterTopologySetEntry 6 }
olsrv2TibRouterTopologySetExpireTime OBJECT-TYPE
SYNTAX TimeStamp
UNITS "centiseconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"olsrv2TibRouterTopologySetExpireTime specifies the value
of sysUptime when this entry SHOULD expire and be
removed from the olsrv2TibRouterTopologySetTable."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRouterTopologySetEntry 7 }
--
-- Routable Address Topology Set
--
olsrv2TibRoutableAddressTopologySetTable OBJECT-TYPE
SYNTAX SEQUENCE OF Olsrv2TibRoutableAddressTopologySetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A router's Routable Address Topology Set records topology
information about the routable addresses within the MANET,
including via which routers they may be reached."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2StateGroup 9 }
olsrv2TibRoutableAddressTopologySetEntry OBJECT-TYPE
SYNTAX Olsrv2TibRoutableAddressTopologySetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"It consists of Router Topology Tuples:
(TA_from_orig_addr
(olsrv2TibRoutableAddressTopologySetFromOrigIpAddrType
olsrv2TibRoutableAddressTopologySetFromOrigIpAddr),
TA_dest_addr
(olsrv2TibRoutableAddressTopologySetFromDestIpAddrType
olsrv2TibRoutableAddressTopologySetFromDestIpAddr),
TA_seq_number (olsrv2TibRoutableAddressTopologySetSeqNo)
TA_metric (olsrv2TibRoutableAddressTopologySetMetricValue)
TA_time (olsrv2TibRoutableAddressTopologySetExpireTime)
)
OLSRv2 (RFC 7181) defines the rules for managing
entries within this table, e.g., populating
and purging entries. Specific instructions for the
olsrv2TibRoutableAddressTopologySetEntry(s) are found
in Section 10.3 and Section 17 of OLSRv2 (RFC 7181)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
INDEX { olsrv2TibRoutableAddressTopologySetFromOrigIpAddrType,
olsrv2TibRoutableAddressTopologySetFromOrigIpAddr,
olsrv2TibRoutableAddressTopologySetDestIpAddrType,
olsrv2TibRoutableAddressTopologySetDestIpAddr }
::= { olsrv2TibRoutableAddressTopologySetTable 1 }
Olsrv2TibRoutableAddressTopologySetEntry ::=
SEQUENCE {
olsrv2TibRoutableAddressTopologySetFromOrigIpAddrType
InetAddressType,
olsrv2TibRoutableAddressTopologySetFromOrigIpAddr
InetAddress,
olsrv2TibRoutableAddressTopologySetDestIpAddrType
InetAddressType,
olsrv2TibRoutableAddressTopologySetDestIpAddr
InetAddress,
olsrv2TibRoutableAddressTopologySetSeqNo
Unsigned32,
olsrv2TibRoutableAddressTopologySetMetricValue
Olsrv2MetricValueCompressedFormTC,
olsrv2TibRoutableAddressTopologySetExpireTime
TimeStamp
}
olsrv2TibRoutableAddressTopologySetFromOrigIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The type of the
olsrv2TibRoutableAddressTopologySetFromOrigIpAddr,
as defined in the InetAddress MIB module (RFC 4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutableAddressTopologySetEntry 1 }
olsrv2TibRoutableAddressTopologySetFromOrigIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This is the originator address of a router that can
reach the router with routable address TA_dest_addr
in one hop."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutableAddressTopologySetEntry 2 }
olsrv2TibRoutableAddressTopologySetDestIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The type of the olsrv2TibRouterTopologySetToOrigIpAddr,
as defined in the InetAddress MIB module (RFC 4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutableAddressTopologySetEntry 3 }
olsrv2TibRoutableAddressTopologySetDestIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This is a routable address of a router that can be
reached by the router with originator address
TA_from_orig_addr in one hop. The TA_from_orig_addr
is defined by the tuple
(olsrv2TibRoutableAddressTopologySetFromOrigIpAddrType
olsrv2TibRoutableAddressTopologySetFromOrigIpAddr)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutableAddressTopologySetEntry 4 }
olsrv2TibRoutableAddressTopologySetSeqNo OBJECT-TYPE
SYNTAX Unsigned32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This is the greatest Advertised Neighbor Sequence
Number (ANSN) in any TC message
received that originated from the router
with originator address TA_from_orig_addr,
i.e., that contributed to the information
contained in this Tuple. The TA_from_orig_addr
is defined by the tuple
(olsrv2TibRoutableAddressTopologySetFromOrigIpAddrType
olsrv2TibRoutableAddressTopologySetFromOrigIpAddr)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutableAddressTopologySetEntry 5 }
olsrv2TibRoutableAddressTopologySetMetricValue OBJECT-TYPE
SYNTAX Olsrv2MetricValueCompressedFormTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This is the neighbor metric from the router
with originator address TA_from_orig_addr (defined
by the tuple
(olsrv2TibRoutableAddressTopologySetFromOrigIpAddrType
olsrv2TibRoutableAddressTopologySetFromOrigIpAddr))
to the router with OLSRv2 interface address TA_dest_addr
(defined by the tuple
(olsrv2TibRoutableAddressTopologySetFromDestIpAddrType
olsrv2TibRoutableAddressTopologySetFromDestIpAddr))."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutableAddressTopologySetEntry 6 }
olsrv2TibRoutableAddressTopologySetExpireTime OBJECT-TYPE
SYNTAX TimeStamp
UNITS "centiseconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"olsrv2TibRoutableAddressTopologySetExpireTime
specifies the value of sysUptime when this entry
SHOULD expire and be removed from the
olsrv2TibRoutableAddressTopologySetTable."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutableAddressTopologySetEntry 7 }
--
-- Attached Network Set
--
olsrv2TibAttNetworksSetTable OBJECT-TYPE
SYNTAX SEQUENCE OF Olsrv2TibAttNetworksSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A router's Attached Network Set records information
about networks (which may be outside the MANET)
attached to other routers and their routable addresses."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2StateGroup 10 }
olsrv2TibAttNetworksSetEntry OBJECT-TYPE
SYNTAX Olsrv2TibAttNetworksSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"It consists of Attached Network Tuples:
(AN_orig_addr
(olsrv2TibAttNetworksSetOrigIpAddrType,
olsrv2TibAttNetworksSetOrigIpAddr),
AN_net_addr
(olsrv2TibAttNetworksSetNetIpAddrType,
olsrv2TibAttNetworksSetNetIpAddr,
olsrv2TibAttNetworksSetNetIpAddrPrefixLen),
AN_seq_number (olsrv2TibAttNetworksSetSeqNo),
AN_dist (olsrv2TibAttNetworksSetDist),
AN_metric (olsrv2TibAttNetworksSetMetricValue),
AN_time (olsrv2TibAttNetworksSetExpireTime)
)
OLSRv2 (RFC 7181) defines the rules for managing
entries within this table, e.g., populating
and purging entries. Specific instructions for the
olsrv2TibRoutableAddressTopologySetEntry(s) are found
in Section 10.4 and Section 17 of OLSRv2 (RFC 7181)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
INDEX { olsrv2TibAttNetworksSetOrigIpAddrType,
olsrv2TibAttNetworksSetOrigIpAddr,
olsrv2TibAttNetworksSetNetIpAddrType,
olsrv2TibAttNetworksSetNetIpAddr,
olsrv2TibAttNetworksSetNetIpAddrPrefixLen }
::= { olsrv2TibAttNetworksSetTable 1 }
Okay so the attached networks set is where the gateway magic lives π§ Every row says which router can act as a gateway to which network, how far away it is, and when the entry expires. Let's go π
Olsrv2TibAttNetworksSetEntry ::=
SEQUENCE {
olsrv2TibAttNetworksSetOrigIpAddrType
InetAddressType,
olsrv2TibAttNetworksSetOrigIpAddr
InetAddress,
olsrv2TibAttNetworksSetNetIpAddrType
InetAddressType,
olsrv2TibAttNetworksSetNetIpAddr
InetAddress,
olsrv2TibAttNetworksSetNetIpAddrPrefixLen
InetAddressPrefixLength,
olsrv2TibAttNetworksSetSeqNo
Unsigned32,
olsrv2TibAttNetworksSetDist
Unsigned32,
olsrv2TibAttNetworksSetMetricValue
Olsrv2MetricValueCompressedFormTC,
olsrv2TibAttNetworksSetExpireTime
TimeStamp
}
olsrv2TibAttNetworksSetOrigIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The type of the olsrv2TibAttNetworksSetOrigIpAddr,
as defined in the InetAddress MIB module (RFC4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAttNetworksSetEntry 1 }
olsrv2TibAttNetworksSetOrigIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This is the originator address, of type
olsrv2TibAttNetworksSetOrigIpAddrType, of a
router that can act as gateway to the
network with address AN_net_addr. The
AN_net_addr is defined by the tuple
(olsrv2TibAttNetworksSetNetIpAddrType,
olsrv2TibAttNetworksSetNetIpAddr,
olsrv2TibAttNetworksSetNetIpAddrPrefixLen)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAttNetworksSetEntry 2 }
olsrv2TibAttNetworksSetNetIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The type of the olsrv2TibAttNetworksSetNetIpAddr,
as defined in the InetAddress MIB module (RFC 4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAttNetworksSetEntry 3 }
olsrv2TibAttNetworksSetNetIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This is the network address, of type
olsrv2TibAttNetworksSetNetIpAddrType, of an
attached network, that may be reached via
the router with originator address AN_orig_addr.
The AN_orig_addr is defined by the tuple
(olsrv2TibAttNetworksSetOrigIpAddrType,
olsrv2TibAttNetworksSetOrigIpAddr)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAttNetworksSetEntry 4 }
olsrv2TibAttNetworksSetNetIpAddrPrefixLen OBJECT-TYPE
SYNTAX InetAddressPrefixLength
UNITS "bits"
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Indicates the number of leading one bits that form the
mask to be logically ANDed with the destination address
before being compared to the value in the
olsrv2TibAttNetworksSetNetIpAddr field."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAttNetworksSetEntry 5 }
olsrv2TibAttNetworksSetSeqNo OBJECT-TYPE
SYNTAX Unsigned32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This is the greatest Advertised Neighbor Sequence
Number (ANSN) in any TC message received
that originated from the router
with originator address AN_orig_addr
(i.e., that contributed to the information
contained in this Tuple). The AN_orig_addr
is defined by the tuple
(olsrv2TibAttNetworksSetOrigIpAddrType,
olsrv2TibAttNetworksSetOrigIpAddr).
Sequence numbers are used in the OLSRv2 protocol
for the purpose of discarding 'old' information,
i.e., messages received out of order. However,
with a limited number of bits for representing
sequence numbers, wraparound (that the sequence
number is incremented from the maximum possible
value to zero) will occur. To prevent this from
interfering with the operation of this protocol,
the following MUST be observed when determining
the ordering of sequence numbers.
The term MAXVALUE designates in the following one
more than the largest possible value for a sequence
number. For a 16-bit sequence number (as are those
defined in this specification), MAXVALUE is 65536.
The sequence number S1 is said to be 'greater than'
the sequence number S2 if:
o S1 > S2 AND S1 - S2 < MAXVALUE/2 OR
o S2 > S1 AND S2 - S1 > MAXVALUE/2
When sequence numbers S1 and S2 differ by MAXVALUE/2,
their ordering cannot be determined. In this case,
which should not occur, either ordering may be
assumed.
Thus, when comparing two messages, it is possible
- even in the presence of wraparound - to determine
which message contains the most recent information."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAttNetworksSetEntry 6 }
olsrv2TibAttNetworksSetDist OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
UNITS "hops"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of hops to the network
with address AN_net_addr from the router with
originator address AN_orig_addr.
The AN_orig_addr is defined by the tuple
(olsrv2TibAttNetworksSetOrigIpAddrType,
olsrv2TibAttNetworksSetOrigIpAddr)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAttNetworksSetEntry 7 }
olsrv2TibAttNetworksSetMetricValue OBJECT-TYPE
SYNTAX Olsrv2MetricValueCompressedFormTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The metric of the link from the router with
originator address AN_orig_addr to the attached
network with address AN_net_addr.
The AN_net_addr is defined by the tuple
(olsrv2TibAttNetworksSetNetIpAddrType,
olsrv2TibAttNetworksSetNetIpAddr,
olsrv2TibAttNetworksSetNetIpAddrPrefixLen)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAttNetworksSetEntry 9 }
olsrv2TibAttNetworksSetExpireTime OBJECT-TYPE
SYNTAX TimeStamp
UNITS "centiseconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"olsrv2TibAttNetworksSetExpireTime
specifies the value of sysUptime when this
entry SHOULD expire and be removed from the
olsrv2TibAttNetworksSetTable."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibAttNetworksSetEntry 10 }
--
-- Routing Set
--
olsrv2TibRoutingSetTable OBJECT-TYPE
SYNTAX SEQUENCE OF Olsrv2TibRoutingSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A router's Routing Set records the first hop along a
selected path to each destination for which any such
path is known."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2StateGroup 11 }
olsrv2TibRoutingSetEntry OBJECT-TYPE
SYNTAX Olsrv2TibRoutingSetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"It consists of Routing Tuples:
(R_dest_addr, R_next_iface_addr,
R_local_iface_addr, R_dist, R_metric)"
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
INDEX { olsrv2TibRoutingSetDestIpAddrType,
olsrv2TibRoutingSetDestIpAddr,
olsrv2TibRoutingSetDestIpAddrPrefixLen }
::= { olsrv2TibRoutingSetTable 1 }
Olsrv2TibRoutingSetEntry ::=
SEQUENCE {
olsrv2TibRoutingSetDestIpAddrType
InetAddressType,
olsrv2TibRoutingSetDestIpAddr
InetAddress,
olsrv2TibRoutingSetDestIpAddrPrefixLen
InetAddressPrefixLength,
olsrv2TibRoutingSetNextIfIpAddrType
InetAddressType,
olsrv2TibRoutingSetNextIfIpAddr
InetAddress,
olsrv2TibRoutingSetLocalIfIpAddrType
InetAddressType,
olsrv2TibRoutingSetLocalIfIpAddr
InetAddress,
olsrv2TibRoutingSetDist
Unsigned32,
olsrv2TibRoutingSetMetricValue
Unsigned32
}
olsrv2TibRoutingSetDestIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The type of the olsrv2TibRoutingSetDestIpAddr,
as defined in the InetAddress MIB module (RFC 4001).
Only the values 'ipv4(1)' and 'ipv6(2)' are
supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutingSetEntry 1 }
olsrv2TibRoutingSetDestIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This is the address of the destination,
either the address of an interface of
a destination router or the network
address of an attached network."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutingSetEntry 2 }
olsrv2TibRoutingSetDestIpAddrPrefixLen OBJECT-TYPE
SYNTAX InetAddressPrefixLength
UNITS "bits"
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Indicates the number of leading one bits that form the
mask to be logically ANDed with the destination address
before being compared to the value in the
olsrv2TibRoutingSetDestIpAddr field.
okay bestie, the MIB is still going and this next bit is all about the routing set entries π
Note: This definition needs to be consistent
with the current forwarding table MIB module description.
Specifically, it SHOULD allow for longest prefix
matching of network addresses."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutingSetEntry 3 }
olsrv2TibRoutingSetNextIfIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The type of the olsrv2TibRoutingSetNextIfIpAddr,
as defined in the InetAddress MIB module (RFC 4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutingSetEntry 4 }
olsrv2TibRoutingSetNextIfIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object is the OLSRv2 interface address of the
next hop on the selected path to the
destination."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutingSetEntry 5 }
olsrv2TibRoutingSetLocalIfIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The type of the olsrv2TibRoutingSetLocalIfIpAddr
and olsrv2TibRoutingSetNextIfIpAddr,
as defined in the InetAddress MIB module (RFC 4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutingSetEntry 6 }
olsrv2TibRoutingSetLocalIfIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object is the address of the local OLSRv2
interface over which a packet must be
sent to reach the destination by the
selected path."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutingSetEntry 7 }
olsrv2TibRoutingSetDist OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
UNITS "hops"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object is the number of hops on the selected
path to the destination."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutingSetEntry 8 }
olsrv2TibRoutingSetMetricValue OBJECT-TYPE
SYNTAX Unsigned32(0..4294901760)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object is the metric of the route
to the destination with address R_dest_addr.
The maximum value of this object can be
256 times MAXIMUM_METRIC,
as represented in Olsrv2MetricValueCompressedFormTC, i.e.,
4294901760."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2TibRoutingSetEntry 9 }
the routing set objects are basically the whole story of where a packet goes next π¦ next hop, local interface, hop count, and metric, all stored as read-only so you can look but not touch π
now we're in the performance group πβ¨ it's all counters that help you see how the OLSRv2 process is actually doing
--
-- OLSRv2 Performance Group
--
--
-- Contains objects that help to characterize the
-- performance of the OLSRv2 routing process.
--
olsrv2PerformanceObjGrp OBJECT IDENTIFIER ::= {olsrv2MIBObjects 3}
--
-- Objects per local interface
--
olsrv2InterfacePerfTable OBJECT-TYPE
SYNTAX SEQUENCE OF Olsrv2InterfacePerfEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table summarizes performance objects that are
measured per each active local OLSRv2 interface.
If the olsrv2InterfaceAdminStatus of the interface
changes to 'disabled', then the row associated with this
interface SHOULD be removed from this table."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2PerformanceObjGrp 1 }
olsrv2InterfacePerfEntry OBJECT-TYPE
SYNTAX Olsrv2InterfacePerfEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A single entry contains performance counters for
each active local OLSRv2 interface."
AUGMENTS { nhdpInterfacePerfEntry }
::= { olsrv2InterfacePerfTable 1 }
Olsrv2InterfacePerfEntry ::=
SEQUENCE {
olsrv2IfTcMessageXmits
Counter32,
olsrv2IfTcMessageRecvd
Counter32,
olsrv2IfTcMessageXmitAccumulatedSize
Counter64,
olsrv2IfTcMessageRecvdAccumulatedSize
Counter64,
olsrv2IfTcMessageTriggeredXmits
Counter32,
olsrv2IfTcMessagePeriodicXmits
Counter32,
olsrv2IfTcMessageForwardedXmits
Counter32,
olsrv2IfTcMessageXmitAccumulatedMPRSelectorCount
Counter32
}
so the table is per local interface, and the table's SHOULD-remove rule kicks in when an interface goes 'disabled' π that's the one place this part uses SHOULD in caps, so it's a real requirement, not a vibe
olsrv2IfTcMessageXmits OBJECT-TYPE
SYNTAX Counter32
UNITS "messages"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A counter is incremented each time a TC
message has been transmitted on that interface."
::= { olsrv2InterfacePerfEntry 1 }
olsrv2IfTcMessageRecvd OBJECT-TYPE
SYNTAX Counter32
UNITS "messages"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A counter is incremented each time a
TC message has been received on that interface.
This excludes all messages that are ignored due to
OLSRv2 protocol procedures, such as messages
considered invalid for processing by this router,
as defined in Section 16.3.1 of OLSRv2 (RFC 7181)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2InterfacePerfEntry 2 }
olsrv2IfTcMessageXmitAccumulatedSize OBJECT-TYPE
SYNTAX Counter64
UNITS "octets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A counter is incremented by the number of octets in
a TC message each time a TC message has been sent."
::= { olsrv2InterfacePerfEntry 3 }
olsrv2IfTcMessageRecvdAccumulatedSize OBJECT-TYPE
SYNTAX Counter64
UNITS "octets"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A counter is incremented by the number of octets in
a TC message each time a TC message has been received.
This excludes all messages that are ignored due to
OLSRv2 protocol procedures, such as messages
considered invalid for processing by this router,
as defined in Section 16.3.1 of OLSRv2 (RFC 7181)."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2InterfacePerfEntry 4 }
olsrv2IfTcMessageTriggeredXmits OBJECT-TYPE
SYNTAX Counter32
UNITS "messages"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A counter is incremented each time a triggered
TC message has been sent."
::= { olsrv2InterfacePerfEntry 5 }
olsrv2IfTcMessagePeriodicXmits OBJECT-TYPE
SYNTAX Counter32
UNITS "messages"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A counter is incremented each time a periodic
TC message has been sent."
::= { olsrv2InterfacePerfEntry 6 }
olsrv2IfTcMessageForwardedXmits OBJECT-TYPE
SYNTAX Counter32
UNITS "messages"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A counter is incremented each time a
TC message has been forwarded."
::= { olsrv2InterfacePerfEntry 7 }
olsrv2IfTcMessageXmitAccumulatedMPRSelectorCount OBJECT-TYPE
SYNTAX Counter32
UNITS "advertised MPR selectors"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A counter is incremented by the number of advertised
MPR selectors in a TC each time a TC
message has been sent."
::= { olsrv2InterfacePerfEntry 8 }
these counters are giving full stats-nerd energy π they count TC messages sent, received, triggered, periodic, forwarded, plus the bytes and the MPR selectors π
--
-- Objects concerning the Routing Set
--
olsrv2RoutingSetRecalculationCount OBJECT-TYPE
SYNTAX Counter32
UNITS "recalculations"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This counter increments each time the Routing Set has
been recalculated."
::= { olsrv2PerformanceObjGrp 2 }
--
-- Objects concerning the MPR set
--
olsrv2MPRSetRecalculationCount OBJECT-TYPE
SYNTAX Counter32
UNITS "recalculations"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This counter increments each time the MPRs
of this router have been recalculated for
any of its interfaces."
::= { olsrv2PerformanceObjGrp 3 }
--
-- Notifications
--
olsrv2NotificationsObjects OBJECT IDENTIFIER ::=
{ olsrv2MIBNotifications 0 }
olsrv2NotificationsControl OBJECT IDENTIFIER ::=
{ olsrv2MIBNotifications 1 }
olsrv2NotificationsStates OBJECT IDENTIFIER ::=
{ olsrv2MIBNotifications 2 }
-- olsrv2NotificationsObjects
olsrv2RouterStatusChange NOTIFICATION-TYPE
OBJECTS { olsrv2OrigIpAddrType, -- The address type of
-- the originator of
-- the notification.
olsrv2OrigIpAddr, -- The originator of
-- the notification.
olsrv2AdminStatus -- The new state.
}
STATUS current
DESCRIPTION
"olsrv2RouterStatusChange is a notification generated
when the OLSRv2 router changes it status.
The router status is maintained in the
olsrv2AdminStatus object."
::= { olsrv2NotificationsObjects 1 }
the counters wrap up and then the notifications start, and the router-status-change one is the first alert in the line π¨β¨ main character energy for sure π
Okay bestie, this is where the notifications get loud πβ¨ The router tells you when its originator address changes, and it also pings you when recalculations pile up.
olsrv2OrigIpAddrChange NOTIFICATION-TYPE
OBJECTS { olsrv2OrigIpAddrType, -- The address type of
-- the originator of
-- the notification.
olsrv2OrigIpAddr, -- The originator of
-- the notification.
olsrv2PreviousOrigIpAddrType, -- The address
-- type of the previous
-- address of
-- the originator of
-- the notification.
olsrv2PreviousOrigIpAddr -- The previous
-- address of the
-- originator of
-- the notification.
}
STATUS current
DESCRIPTION
"olsrv2OrigIpAddrChange is a notification generated when
the OLSRv2 router changes it originator IP address.
The notification includes the new and the previous
originator IP address of the OLSRv2 router."
::= { olsrv2NotificationsObjects 2 }
olsrv2RoutingSetRecalculationCountChange NOTIFICATION-TYPE
OBJECTS { olsrv2OrigIpAddrType, -- The address type of
-- the originator of
-- the notification.
olsrv2OrigIpAddr, -- The originator of
-- the notification.
olsrv2RoutingSetRecalculationCount -- Number
-- of the
-- Routing Set
-- recalculations.
}
STATUS current
DESCRIPTION
"The olsrv2RoutingSetRecalculationCountChange
notification is generated when a significant number of
Routing Set recalculations have occurred in a short time.
This notification SHOULD be generated no more than once
per olsrv2RoutingSetRecalculationCountWindow.
The network administrator SHOULD select
appropriate values for 'significant number of
Routing Set recalculations' and 'short time' through
the settings of the
olsrv2RoutingSetRecalculationCountThreshold
and olsrv2RoutingSetRecalculationCountWindow objects."
::= { olsrv2NotificationsObjects 3 }
olsrv2MPRSetRecalculationCountChange NOTIFICATION-TYPE
OBJECTS { olsrv2OrigIpAddrType, -- The address type of
-- the originator of
-- the notification.
olsrv2OrigIpAddr, -- The originator of
-- the notification.
olsrv2MPRSetRecalculationCount -- Number of
-- MPR set
-- recalculations.
}
STATUS current
DESCRIPTION
"The olsrv2MPRSetRecalculationCountChange
notification is generated when a significant
number of MPR set recalculations occur in
a short period of time. This notification
SHOULD be generated no more than once
per olsrv2MPRSetRecalculationCountWindow.
The network administrator SHOULD select
appropriate values for 'significant number of
MPR set recalculations' and 'short period of
time' through the settings of the
olsrv2MPRSetRecalculationCountThreshold and
olsrv2MPRSetRecalculationCountWindow objects."
::= { olsrv2NotificationsObjects 4 }
So the originator change alert fires whenever the router swaps its originator IP, and it carries both the new address and the old one π Main character energy for IP addresses π
Then the two recalculation alerts are like the router yelling "I've been recalculating way too much, bestie π". They're only meant to go off once per window max, so you don't get spammed. The admin picks what counts as "significant" and "short time" using the threshold and window knobs coming up next π
-- olsrv2NotificationsControl
olsrv2RoutingSetRecalculationCountThreshold OBJECT-TYPE
SYNTAX Integer32 (0..255)
UNITS "recalculations"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"A threshold value for the
olsrv2RoutingSetRecalculationCount object.
If the number of occurrences exceeds this
threshold within the previous
olsrv2RoutingSetRecalculationCountWindow,
then the olsrv2RoutingSetRecalculationCountChange
notification is to be generated.
It is RECOMMENDED that the value of this
threshold be set to at least 20 and higher
in dense topologies with frequent expected
topology changes."
DEFVAL { 20 }
::= { olsrv2NotificationsControl 1 }
olsrv2RoutingSetRecalculationCountWindow OBJECT-TYPE
SYNTAX TimeTicks
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object is used to determine whether to generate
an olsrv2RoutingSetRecalculationCountChange notification.
This object represents an interval from the present moment,
extending into the past, expressed in hundredths of
a second. If the change in the value of the
olsrv2RoutingSetRecalculationCount object during
this interval has exceeded the value of
olsrv2RoutingSetRecalculationCountThreshold, then
an olsrv2RoutingSetRecalculationCountChange notification
is generated.
It is RECOMMENDED that the value for this
window be set to at least 5 times the
nhdpHelloInterval (whose default value is
2 seconds."
DEFVAL { 1000 }
::= { olsrv2NotificationsControl 2 }
olsrv2MPRSetRecalculationCountThreshold OBJECT-TYPE
SYNTAX Integer32 (0..255)
UNITS "recalculations"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"A threshold value for the
olsrv2MPRSetRecalculationCount object.
If the number of occurrences exceeds this
threshold within the previous
olsrv2MPRSetRecalculationCountWindow,
then the
olsrv2MPRSetRecalculationCountChange
notification is to be generated.
It is RECOMMENDED that the value of this
threshold be set to at least 20 and higher
in dense topologies with frequent expected
topology changes."
DEFVAL { 20 }
::= { olsrv2NotificationsControl 3 }
olsrv2MPRSetRecalculationCountWindow OBJECT-TYPE
SYNTAX TimeTicks
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object is used to determine whether to generate
an olsrv2MPRSetRecalculationCountChange notification.
This object represents an interval from the present moment,
extending into the past, expressed in hundredths of
a second. If the change in the value of the
olsrv2MPRSetRecalculationCount object during
that interval has exceeded the value of
olsrv2MPRSetRecalculationCountThreshold, then the
an olsrv2MPRSetRecalculationCountChange notification
is generated.
It is RECOMMENDED that the value for this
window be set to at least 5 times the
nhdpHelloInterval."
DEFVAL { 1000 }
::= { olsrv2NotificationsControl 4 }
The threshold objects are the trigger dials ποΈ Both default to 20 and are read-write, and the spec RECOMMENDED starting at 20 or higher in dense topologies where things change a lot πΈ
The window objects measure time in hundredths of a second, so the default 1000 means 10 seconds π The spec RECOMMENDED setting them to at least 5 times the nhdpHelloInterval, which defaults to 2 seconds π¦
Now the state objects, which are the router's memory of where it used to live π§
olsrv2PreviousOrigIpAddrType OBJECT-TYPE
SYNTAX InetAddressType { ipv4(1) , ipv6(2) }
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The type of the olsrv2PreviousOrigIpAddr,
as defined in the InetAddress MIB module (RFC 4001).
Only the values 'ipv4(1)' and
'ipv6(2)' are supported.
This object MUST have the same persistence
characteristics as olsrv2PreviousOrigIpAddr."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2NotificationsStates 1 }
olsrv2PreviousOrigIpAddr OBJECT-TYPE
SYNTAX InetAddress (SIZE(4|16))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The previous origination IP address
of this OLSRv2 router.
This object SHOULD be updated each time
the olsrv2OrigIpAddr is modified.
This object is persistent, and when written,
the entity SHOULD save the change to
non-volatile storage."
REFERENCE
"RFC 7181 - The Optimized Link State Routing Protocol
Version 2, Clausen, T., Dearlove, C., Jacquet, P.,
and U. Herberg, April 2014."
::= { olsrv2NotificationsStates 2 }
The type object only ever holds ipv4(1) or ipv6(2), and it MUST keep the same persistence as the address it describes π The address object is 4 or 16 octets, so it's either IPv4 or IPv6 π It's persistent too, and the spec says it SHOULD get updated whenever olsrv2OrigIpAddr changes, plus saved to non-volatile storage when written πΎ
Time for the compliance paperwork, bestie π
--
-- Compliance Statements
--
olsrv2Compliances OBJECT IDENTIFIER ::= { olsrv2MIBConformance 1 }
olsrv2MIBGroups OBJECT IDENTIFIER ::= { olsrv2MIBConformance 2 }
olsrv2BasicCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The basic implementation requirements for
managed network entities that implement
the OLSRv2 routing process."
MODULE -- this module
MANDATORY-GROUPS { olsrv2ConfigObjectsGroup }
::= { olsrv2Compliances 1 }
olsrv2FullCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The full implementation requirements for
managed network entities that implement
the OLSRv2 routing process."
MODULE -- this module
MANDATORY-GROUPS { olsrv2ConfigObjectsGroup,
olsrv2StateObjectsGroup,
olsrv2PerfObjectsGroup,
olsrv2NotificationsObjectsGroup,
olsrv2NotificationsGroup }
::= { olsrv2Compliances 2 }
--
-- Units of Conformance
--
olsrv2ConfigObjectsGroup OBJECT-GROUP
OBJECTS {
olsrv2AdminStatus,
olsrv2InterfaceAdminStatus,
olsrv2OrigIpAddrType,
olsrv2OrigIpAddr,
olsrv2OHoldTime,
olsrv2TcInterval,
olsrv2TcMinInterval,
olsrv2THoldTime,
olsrv2AHoldTime,
olsrv2RxHoldTime,
olsrv2PHoldTime,
olsrv2FHoldTime,
olsrv2TpMaxJitter,
olsrv2TtMaxJitter,
olsrv2FMaxJitter,
olsrv2TcHopLimit,
olsrv2WillFlooding,
olsrv2WillRouting,
olsrv2LinkMetricType
}
STATUS current
DESCRIPTION
"Objects to permit configuration of OLSRv2.
All of these SHOULD be backed by non-volatile
storage."
::= { olsrv2MIBGroups 1 }
There are two compliance levels π The basic one only requires the config group, and the full one requires the config, state, performance, notifications objects, and notifications groups all together π
Last bit: the config group is for setting up OLSRv2, and all of those objects SHOULD be backed by non-volatile storage so your settings survive a reboot π
olsrv2StateObjectsGroup OBJECT-GROUP
OBJECTS {
olsrv2LibOrigSetExpireTime,
olsrv2LibLocAttNetSetDistance,
olsrv2LibLocAttNetSetMetricValue,
olsrv2IibLinkSetInMetricValue,
olsrv2IibLinkSetOutMetricValue,
olsrv2IibLinkSetMprSelector,
olsrv2Iib2HopSetInMetricValue,
olsrv2Iib2HopSetOutMetricValue,
olsrv2NibNeighborSetNOrigIpAddrType,
olsrv2NibNeighborSetNOrigIpAddr,
olsrv2NibNeighborSetNInMetricValue,
olsrv2NibNeighborSetNOutMetricValue,
olsrv2NibNeighborSetNWillFlooding,
olsrv2NibNeighborSetNWillRouting,
olsrv2NibNeighborSetNFloodingMpr,
olsrv2NibNeighborSetNRoutingMpr,
olsrv2NibNeighborSetNMprSelector,
olsrv2NibNeighborSetNAdvertised,
olsrv2NibNeighborSetTableAnsn,
olsrv2TibAdRemoteRouterSetMaxSeqNo,
olsrv2TibAdRemoteRouterSetExpireTime,
olsrv2TibRouterTopologySetSeqNo,
olsrv2TibRouterTopologySetMetricValue,
olsrv2TibRouterTopologySetExpireTime,
olsrv2TibRoutableAddressTopologySetExpireTime,
olsrv2TibRoutableAddressTopologySetSeqNo,
olsrv2TibRoutableAddressTopologySetMetricValue,
olsrv2TibAttNetworksSetSeqNo,
olsrv2TibAttNetworksSetDist,
olsrv2TibAttNetworksSetMetricValue,
olsrv2TibAttNetworksSetExpireTime,
olsrv2TibRoutingSetNextIfIpAddrType,
olsrv2TibRoutingSetNextIfIpAddr,
olsrv2TibRoutingSetLocalIfIpAddrType,
olsrv2TibRoutingSetLocalIfIpAddr,
olsrv2TibRoutingSetDist,
olsrv2TibRoutingSetMetricValue
}
STATUS current
DESCRIPTION
"Objects to permit monitoring of OLSRv2 state."
::= { olsrv2MIBGroups 2 }
olsrv2PerfObjectsGroup OBJECT-GROUP
OBJECTS {
olsrv2IfTcMessageXmits,
olsrv2IfTcMessageRecvd,
olsrv2IfTcMessageXmitAccumulatedSize,
olsrv2IfTcMessageRecvdAccumulatedSize,
olsrv2IfTcMessageTriggeredXmits,
olsrv2IfTcMessagePeriodicXmits,
olsrv2IfTcMessageForwardedXmits,
olsrv2IfTcMessageXmitAccumulatedMPRSelectorCount,
olsrv2RoutingSetRecalculationCount,
olsrv2MPRSetRecalculationCount
}
STATUS current
DESCRIPTION
"Objects to support monitoring of OLSRv2 performance."
::= { olsrv2MIBGroups 3 }
olsrv2NotificationsObjectsGroup OBJECT-GROUP
OBJECTS {
olsrv2RoutingSetRecalculationCountThreshold,
olsrv2RoutingSetRecalculationCountWindow,
olsrv2MPRSetRecalculationCountThreshold,
olsrv2MPRSetRecalculationCountWindow,
olsrv2PreviousOrigIpAddrType,
olsrv2PreviousOrigIpAddr
}
STATUS current
DESCRIPTION
"Objects to support the notification types in the
olsrv2NotificationsGroup. Some of these appear in
notification payloads, others serve to control
notification generation."
::= { olsrv2MIBGroups 4 }
olsrv2NotificationsGroup NOTIFICATION-GROUP
NOTIFICATIONS {
olsrv2RouterStatusChange,
olsrv2OrigIpAddrChange,
olsrv2RoutingSetRecalculationCountChange,
olsrv2MPRSetRecalculationCountChange
}
STATUS current
DESCRIPTION
"Notification types to support management of OLSRv2."
::= { olsrv2MIBGroups 5 }
END
8. Security Considerations π
Okay bestie, this section is serious, so buckle up π This MIB module defines objects for configuring, monitoring, and getting notifications about OLSRv2 [RFC7181]. OLSRv2 lets routers learn the topology of the routing domain by swapping TC messages, so they can work out shortest paths to every destination router in that domain β¨
There are a bunch of management objects in this MIB module with a MAX-ACCESS of read-write and/or read-create. Those can be sensitive or vulnerable in some network environments. SET operations with no proper protection, in a non-secure environment, can seriously mess with network operations π Here are the tables and objects, and why they're sensitive:
olsrv2TcInterval,olsrv2TcMinInterval: these writable objects control how fast TC messages get sent. Set them too high and it could turn into a form of DoS attack by overloading interface resources. Set them too low and OLSRv2 might not converge fast enough to give accurate routes to every destination in the domain.olsrv2TcHopLimit: defines the hop limit for TC messages. Set too low, messages won't be forwarded beyond the defined scope, so routers further away from the message originator won't be able to build appropriate topology graphs π§olsrv2OHoldTime,olsrv2THoldTime,olsrv2AHoldTime,olsrv2RxHoldTime,olsrv2PHoldTime,olsrv2FHoldTime: these define hold times for tuples in the different Information Bases of OLSRv2. Set too low, information expires super quickly, which may harm correct operation of the routing protocol.olsrv2WillFloodingandolsrv2WillRouting: these define how willing this router is to become an MPR. If set toWILL_NEVER(0), the managed router won't forward any TC messages and won't accept a selection to become an MPR from neighbouring routers. If set toWILL_ALWAYS(15), neighbours will prefer this router during MPR selection, so it may attract more traffic πolsrv2TpMaxJitter,olsrv2TtMaxJitter,olsrv2FMaxJitter: these define jitter values for TC message transmission and forwarding. Set too low, control traffic may get lost when collisions occur.olsrv2LinkMetricType: defines the type of link metric a router uses (for example ETX or hop count). Whenever this value changes, all link metric information the router has recorded becomes invalid, which resets information acquired from other routers in the MANET. Also, ifolsrv2LinkMetricTypeon a router is set to a value that other routers in the MANET don't know, those routers won't be able to establish routes to that router or through it. Existing routes to a router with an unknownolsrv2LinkMetricTypewill be removed.
Heads up: a bad value in that last one can wipe out routes across the whole MANET, so treat it with care π¨
Some of the readable objects in this MIB module (meaning objects with a MAX-ACCESS other than not-accessible) may also be sensitive or vulnerable in some environments. So it's important to control even GET and/or NOTIFY access to them, and possibly encrypt their values when they're sent over the network via SNMP π Here are the tables and objects, and why:
olsrv2TibRouterTopologySetTable: this table contains information on the topology of the MANET, specifically the IP addresses of the routers in the MANET (as identified by theolsrv2TibRouterTopologySetFromOrigIpAddrandolsrv2TibRouterTopologySetToOrigIpAddrobjects). It gives an adversary broad information about the members of the MANET, all in one single table. That can be used to speed up attacks on the other members without having to go through a laborious discovery process of their own π
Some of the tables in this MIB module AUGMENT tables defined in NHDP-MIB [RFC6779]. So care must be taken when configuring access control here, to make sure the permissions granted for the AUGMENTing tables are consistent with the access controls permitted within the NHDP-MIB. The list below identifies the AUGMENTing tables and their NHDP-MIB counterparts. It is RECOMMENDED that access control policies for these table pairs are consistently set π«Ά
- The
olsrv2InterfaceTableAUGMENTs thenhdpInterfaceTable. - The
olsrv2IibLinkSetTableAUGMENTs thenhdpIibLinkSetTable. - The
olsrv2Iib2HopSetTableAUGMENTs thenhdpIib2HopSetTable. - The
olsrv2NibNeighborSetTableAUGMENTs thenhdpNibNeighborSetTable. - The
olsrv2InterfacePerfTableAUGMENTs thenhdpInterfacePerfTable.
MANET technology is often deployed to support emergency services or military tactical applications. In those applications it's imperative to keep the communications network running properly and to protect the sensitive information related to how it operates π‘οΈ So when implementing these capabilities, the full use of SNMPv3 cryptographic mechanisms for authentication and privacy is RECOMMENDED π
SNMP versions prior to SNMPv3 didn't include adequate security. Even if the network itself is secure (for example by using IPsec), there's no control over who on that 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]). Implementations claiming compliance with 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's then a customer/operator responsibility to make sure the SNMP entity giving access to an instance of this MIB module is properly configured, so access to the objects is only given to principals (users) with legitimate rights to GET or SET (change/create/delete) them π
9. Applicability Statement β¨
okay so this section is basically the "where does this MIB actually make sense?" talk π§ This document describes objects for configuring parameters of the Optimized Link State Routing Protocol version 2 (OLSRv2) [RFC7181] process on a router. This MIB module, called OLSRv2-MIB, also reports state, performance info, and notifications. OLSRv2 depends on info gathered by the Neighborhood Discovery Protocol [RFC6130] to do its thing, and NHDP is managed through the NHDP-MIB [RFC6779] π
MANET deployments can be wildly different, bestie π The topology dynamics, channel capacity, loss rates, traffic flow directions, and the memory and CPU of the routers can all vary a ton. SNMP, and therefore this MIB module, only fits a subset of MANET deployments, specifically ones:
- In which routers have enough memory and CPU resources to run SNMP and expose the MIB module.
- Where a Network Management System (NMS) is defined to which notifications are generated and from which routers can be managed.
- Where this NMS is reachable from routers in the MANET most of the time (as notifications to the NMS and management information from the NMS to the router will be lost when connectivity is temporarily lost). This requires that the topology of the MANET is only moderately dynamic.
- Where the underlying wireless channel supports enough bandwidth to run SNMP, and where loss rates of the channel are not exhaustive.
Certain MANET deployments are a great fit for this MIB πΈ Community networks with non-mobile routers, dynamic topology because of changing link quality, and a predefined gateway (that could also serve as NMS) are all examples of networks where this MIB applies. Other, more constrained MANET deployments may not be able to run SNMP and will need different management protocols, no cap π«Ά
Some level of configuration, i.e., read-write objects, is desirable for OLSRv2 deployments. Topology-related config is critical for initial system startup β¨ It covers things like enabling OLSRv2 on new interfaces, or initially configuring OLSRv2 on a router's interfaces through the olsrv2InterfaceAdminStatus object. OLSRv2 lets you do some performance tuning through various protocol parameters, and this MIB lets you configure those parameters through read-write objects such as olsrv2TcHopLimit or olsrv2FMaxJitter. Other read-write objects control Notification behavior through this MIB, e.g., the olsrv2RoutingSetRecalculationCountThreshold object π
A fuller discussion of MANET network management applicability is coming later, and it's handled elsewhere. [MGMT-SNAP] gives a snapshot of OLSRv2-routed MANET management as it's currently deployed, while [MANET-MGMT] is meant to give specific guidelines on MANET network management, looking at the various MIB modules that have been written π
10. IANA Considerations π¦
IANA now maintains the IANAolsrv2LinkMetricType-MIB and keeps it synchronized with the "LINK_METRIC Address Block TLV Type Extensions" registry at http://www.iana.org/assignments/manet-parameters.
The MIB modules in this document use the following IANA-assigned OBJECT IDENTIFIER values, recorded in the SMI Numbers registry:
Descriptor OBJECT IDENTIFIER value
---------- -----------------------
OLSRv2-MIB { mib-2 219 }
IANA-OLSRv2-LINK-METRIC-TYPE-MIB { mib-2 221 }
11. Acknowledgements π«Ά
The authors want to thank Randy Presuhn, Benoit Claise, Adrian Farrel, and the entire MANET WG for reviewing this document π
This MIB document uses the template written 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.
[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.
[RFC3418] Presuhn, R., "Management Information Base (MIB) for the
Simple Network Management Protocol (SNMP)", STD 62, RFC
3418, 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.
[RFC4001] Daniele, M., Haberman, B., Routhier, S., and J.
Schoenwaelder, "Textual Conventions for Internet Network
Addresses", RFC 4001, February 2005.
[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.
[RFC6130] Clausen, T., Dearlove, C., and J. Dean, "Mobile Ad Hoc
Network (MANET) Neighborhood Discovery Protocol (NHDP)",
RFC 6130, April 2011.
[RFC6353] Hardaker, W., "Transport Layer Security (TLS) Transport
Model for the Simple Network Management Protocol
(SNMP)", RFC 6353, July 2011.
[RFC6779] Herberg, U., Cole, R., and I. Chakeres, "Definition of
Managed Objects for the Neighborhood Discovery
Protocol", RFC 6779, October 2012.
[RFC7181] Clausen, T., Dearlove, C., Jacquet, P., and U. Herberg,
"The Optimized Link State Routing Protocol Version 2",
RFC 7181, April 2014.
12.2. Informative References
[MANET-MGMT] Nguyen, J., Cole, R., Herberg, U., Yi, J., and J. Dean,
"Network Management of Mobile Ad hoc Networks (MANET):
Architecture, Use Cases, and Applicability", Work in
Progress, February 2013.
[MGMT-SNAP] Clausen, T. and U. Herberg, "Snapshot of OLSRv2-Routed
MANET Management", Work in Progress, February 2014.
[REPORT-MIB] Cole, R., Macker, J., and A. Bierman, "Definition of
Managed Objects for Performance Reporting", Work in
Progress, November 2012.
[RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart,
"Introduction and Applicability Statements for Internet-
Standard Management Framework", RFC 3410, December 2002.
Appendix A. IANAolsrv2LinkMetricType-MIB π§
This document sets up the IANAolsrv2LinkMetricType-MIB module. IANA now maintains it and keeps it synchronized with the "LINK_METRIC Address Block TLV Type Extensions" registry at http://www.iana.org/assignments/manet-parameters. If there are any discrepancies (e.g., future updates to the MIB), the IANA site is the definitive source for this MIB π
IANA-OLSRv2-LINK-METRIC-TYPE-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, mib-2
FROM SNMPv2-SMI
TEXTUAL-CONVENTION
FROM SNMPv2-TC;
ianaolsrv2LinkMetricType MODULE-IDENTITY
LAST-UPDATED "201404090000Z" -- 09 April 2014
ORGANIZATION "IANA"
CONTACT-INFO "Internet Assigned Numbers Authority
Postal: ICANN
12025 Waterfront Drive, Suite 300
Los Angeles, CA 90094-2536
Tel: +1 310 301 5800
E-Mail: iana@iana.org"
DESCRIPTION "This MIB module defines the
IANAolsrv2LinkMetricType Textual
Convention, and thus the enumerated values of
the olsrv2LinkMetricType object defined in
the OLSRv2-MIB."
REVISION "201404090000Z" -- 09 April 2014
DESCRIPTION "Initial version of this MIB as published in
RFC 7184."
::= { mib-2 221 }
IANAolsrv2LinkMetricTypeTC ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This data type is used as the syntax of the
olsrv2LinkMetricType object in the definition
of the OLSRv2-MIB module.
The olsrv2LinkMetricType corresponds to
LINK_METRIC_TYPE of OLSRv2 (RFC 7181).
OLSRv2 uses bidirectional additive link metrics
to determine shortest distance routes (i.e.,
routes with smallest total of link metric values).
OLSRv2 has established a registry for the LINK_METRIC_TYPEs
(denoted 'LINK_METRIC Address Block TLV Type Extensions'):
http://www.iana.org/assignments/manet-parameters/
This is done in Section 24.5 in OLSRv2 (RFC 7181).
The LINK_METRIC_TYPE (which has as corresponding
object in the MIB module olsrv2LinkMetricType)
corresponds to the type extension of
the LINK_METRIC TLV that is set up in the
'LINK_METRIC Address Block TLV Type Extensions' registry.
Whenever new link metric types are added to that registry,
IANA MUST update this textual convention accordingly.
The definition of this textual convention with the
addition of newly assigned values is published
periodically by the IANA, in either the Assigned
Numbers RFC, or some derivative of it specific to
Internet Network Management number assignments. (The
latest arrangements can be obtained by contacting the
IANA.)
Requests for new values should be made to IANA via
email (iana@iana.org)."
SYNTAX INTEGER {
unknown(0) -- Link metric meaning assigned
-- by administrative action
-- 1-223 Unassigned
-- 224-255 Reserved for
-- Experimental Use
}
END
Authors' Addresses π
Ulrich Herberg
Fujitsu Laboratories of America
1240 East Arques Avenue
Sunnyvale, CA 94085
USA
EMail: ulrich@herberg.name
URI: http://www.herberg.name/
Robert G. Cole
US Army CERDEC
6010 Frankford Road, Bldg 6010
Aberdeen Proving Ground, Maryland 21005
USA
Phone: +1 443 395 8744
EMail: robert.g.cole@us.army.mil
URI: http://www.cs.jhu.edu/~rgcole/
Thomas Heide Clausen
LIX, Ecole Polytechnique
Palaiseau Cedex 91128
France
Phone: +33 6 6058 9349
EMail: T.Clausen@computer.org
URI: http://www.ThomasClausen.org/
π¦ where this page comes from
- ietf: rfc7184 2014-04
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms