Internet DRAFT - draft-sehgal-roll-rpl-mib
draft-sehgal-roll-rpl-mib
Internet Engineering Task Force K. Korte
Internet-Draft J. Schoenwaelder
Intended status: Standards Track A. Sehgal
Expires: August 26, 2013 Jacobs University
T. Tsou
Huawei Technologies (USA)
C. Zhou
Huawei Technologies
February 22, 2013
Definition of Managed Objects for the IPv6 Routing Protocol for Low
Power and Lossy Networks (RPL)
draft-sehgal-roll-rpl-mib-06
Abstract
This memo defines a portion of the Management Information Base (MIB)
for use with network management protocols in the Internet community.
In particular, it defines objects for managing the IPv6 Routing
Protocol for Low Power and Lossy Networks (RPL).
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on August 26, 2013.
Copyright Notice
Copyright (c) 2013 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) in effect on the date of
publication of this document. Please review these documents
Korte, et al. Expires August 26, 2013 [Page 1]
Internet-Draft RPL-MIB February 2013
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. The Internet-Standard Management Framework . . . . . . . . . . 3
3. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 3
4. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
5. Relationship to Other MIB Modules . . . . . . . . . . . . . . 5
6. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 5
7. Security Considerations . . . . . . . . . . . . . . . . . . . 29
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 31
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 31
10.1. Normative References . . . . . . . . . . . . . . . . . . 31
10.2. Informative References . . . . . . . . . . . . . . . . . 32
Appendix A. JSON Representation . . . . . . . . . . . . . . . . . 32
Korte, et al. Expires August 26, 2013 [Page 2]
Internet-Draft RPL-MIB February 2013
1. Introduction
This memo defines a portion of the Management Information Base (MIB)
for use with network management protocols. In particular it defines
objects for managing the IPv6 Routing Protocol for Low Power and
Lossy Networks (RPL) [RFC6550]. It also provides management access
to the Trickle [RFC6206] parameters as they are used by RPL.
2. The Internet-Standard Management Framework
For a detailed overview of the documents that describe the current
Internet-Standard Management Framework, please refer to section 7 of
RFC 3410 [RFC3410].
Managed objects are accessed via a virtual information store, termed
the Management Information Base or MIB. MIB objects are generally
accessed through the Simple Network Management Protocol (SNMP).
Objects in the MIB are defined using the mechanisms defined in the
Structure of Management Information (SMI). This memo specifies a MIB
module that is compliant to the SMIv2, which is described in STD 58,
RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580
[RFC2580].
3. Conventions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
4. Overview
The MIB module is organized into a group of scalars and tables.
# RPL-MIB registration tree (generated by smidump 0.4.8)
-rplMib(1.3.6.1.2.1.XXXX)
+-rplNotifications(0)
+-rplObjects(1)
+-rplDefaults(1)
| +- rwn RplDISMode rplDefaultDISMode(1)
| +- rwn Unsigned32 rplDefaultDISMessages(2)
| +- rwn Unsigned32 rplDefaultDISTimeout(3)
| +- rwn RplDAODelay rplDefaultDAODelay(4)
| +- rwn TruthValue rplDefaultDAOAckEnabled(5)
| +- rwn RplDodagPreference rplDefaultPreference(6)
| +- rwn RplMinHopRankIncrease rplDefaultMinHopRankIncrease(7)
| +- rwn Unsigned32 rplDefaultMaxRankIncrease(8)
| +- rwn RplModeOfOperation rplDefaultModeOfOperation(9)
Korte, et al. Expires August 26, 2013 [Page 3]
Internet-Draft RPL-MIB February 2013
| +- rwn Unsigned32 rplDefaultIntervalDoublings(10)
| +- rwn Unsigned32 rplDefaultIntervalMin(11)
| +- rwn Unsigned32 rplDefaultRedundancyConstant(12)
+-rplActive(2)
| +- rwn RplInstanceID rplActiveInstance(1)
| +- rwn InetAddressIPv6 rplActiveDodag(2)
| +- rwn Unsigned32 rplActiveDodagTriggerSequence(3)
+-rplOCPTable(3)
| +-rplOCPEntry(1) [rplOCPCodepoint]
| +- --- RplObjectiveCodePoint rplOCPCodepoint(1)
| +- rwn TruthValue rplOCPEnabled(2)
+-rplInstanceTable(4)
| +-rplInstanceEntry(1) [rplInstanceID]
| +- --- RplInstanceID rplInstanceID(1)
| +- r-n RplDISMode rplInstanceDISMode(2)
| +- r-n Unsigned32 rplInstanceDISMessages(3)
| +- r-n Unsigned32 rplInstanceDISTimeout(4)
| +- r-n RplModeOfOperation rplInstanceModeOfOperation(5)
+-rplDodagTable(5)
| +-rplDodagEntry(1) [rplInstanceID,rplDodagIndex]
| +- --- Unsigned32 rplDodagIndex(1)
| +- --- InetAddressIPv6 rplDodagRoot(2)
| +- r-n RplDodagVersionNumber rplDodagVersion(3)
| +- r-n RplRank rplDodagRank(4)
| +- r-n Enumeration rplDodagState(5)
| +- r-n RplObjectiveCodePoint rplDodagOCP(6)
| +- r-n RplDAODelay rplDodagDAODelay(7)
| +- r-n TruthValue rplDodagDAOAckEnabled(8)
| +- r-n RplDodagPreference rplDodagPreference(9)
| +- r-n RplMinHopRankIncrease rplDodagMinHopRankIncrease(10)
| +- r-n Unsigned32 rplDodagMaxRankIncrease(11)
| +- r-n Unsigned32 rplDodagIntervalDoublings(12)
| +- r-n Unsigned32 rplDodagIntervalMin(13)
| +- r-n Unsigned32 rplDodagRedundancyConstant(14)
| +- r-n RplPathControlSize rplDodagPathControlSize(15)
+-rplDodagParentTable(6)
| +-rplDodagParentEntry(1) [rplInstanceID,rplDodagIndex,
| | rplDodagParentID]
| +- --- InetAddressIPv6 rplDodagParentID(1)
| +- r-n InterfaceIndex rplDodagParentIf(2)
+-rplDodagChildTable(7)
| +-rplDodagChildEntry(1) [rplInstanceID,rplDodagIndex,
| | rplDodagChildID]
| +- --- InetAddressIPv6 rplDodagChildID(1)
| +- r-n InterfaceIndex rplDodagChildIf(2)
+-rplStats(8)
| +- r-n Counter32 rplMemOverflows(1)
| +- r-n Counter32 rplParseErrors(2)
Korte, et al. Expires August 26, 2013 [Page 4]
Internet-Draft RPL-MIB February 2013
| +- r-n Counter32 rplUnknownMsgTypes(3)
| +- r-n Counter32 rplSecurityPolicyViolations(4)
| +- r-n Counter32 rplIntegrityCheckFailures(5)
| +- r-n Counter32 rplReplayProtectionFailures(6)
| +- r-n Counter32 rplValidParentFailures(7)
| +- r-n Counter32 rplNoInstanceIDs(8)
| +- r-n Counter32 rplTriggeredLocalRepairs(9)
| +- r-n Counter32 rplTriggeredGlobalRepairs(10)
| +- r-n Counter32 rplNoParentSecs(11)
| +- r-n Counter32 rplActiveNoParentSecs(12)
| +- r-n Counter32 rplOBitSetDownwards(13)
| +- r-n Counter32 rplOBitClearedUpwards(14)
| +- r-n Counter32 rplFBitSet(15)
| +- r-n Counter32 rplRBitSet(16)
| +- r-n Counter32 rplTrickleTimerResets(17)
+-rplMsgStatsTable(9)
+-rplMsgStatsEntry(1) [rplMsgStatsType]
+- --- RplMessageType rplMsgStatsType(1)
+- r-n Counter32 rplMsgStatsInMsgs(2)
+- r-n Counter32 rplMsgStatsOutMsgs(3)
5. Relationship to Other MIB Modules
The MIB module IMPORTS definitions from SNMPv2-SMI [RFC2578],
SNMPv2-TC [RFC2579], SNMPv2-CONF [RFC2580], IF-MIB [RFC2863] and the
INET-ADDRESS-MIB [RFC4001].
The IPv6 routing table SHOULD be exposed via the inetCidrRouteTable
defined in the IP-FORWARD-MIB [RFC4292]. Since an RPL node can
participate in multiple RPL instances, the inetCidrRoutePolicy object
SHOULD carry the OID of the rplInstanceID instance, including the
value of rplInstanceID.
The prefixes used by DODAGs SHOULD be exported via the
ipAddressPrefixTable of the IP-MIB [RFC4293]. The value of
ipAddressPrefixOrigin should be routeradv(5).
6. Definitions
RPL-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, Counter32, mib-2
FROM SNMPv2-SMI -- RFC 2578
TEXTUAL-CONVENTION, TruthValue
FROM SNMPv2-TC -- RFC 2579
OBJECT-GROUP, MODULE-COMPLIANCE
FROM SNMPv2-CONF -- RFC 2580
Korte, et al. Expires August 26, 2013 [Page 5]
Internet-Draft RPL-MIB February 2013
InterfaceIndex
FROM IF-MIB -- RFC 2863
InetAddressIPv6
FROM INET-ADDRESS-MIB; -- RFC 4001
rplMib MODULE-IDENTITY
LAST-UPDATED "201302200000Z"
ORGANIZATION
"Jacobs University Bremen"
CONTACT-INFO
"Kevin Dominik Korte
Jacobs University Bremen
Email: k.korte@jacobs-university.de
Anuj Sehgal
Jacobs University Bremen
Email: s.anuj@jacobs-university.de
Juergen Schoenwaelder
Jacobs University Bremen
Email: j.schoenwaelder@jacobs-university.de
Tina Tsou
Huawei Technologies
Email: tina.tsou.zouting@huawei.com
Cathy Zhou
Huawei Technologies
Email: cathyzhou@huawei.com"
DESCRIPTION
"The MIB module for monitoring nodes implementing the IPv6
routing protocol for low power and lossy networks (RPL).
Copyright (c) 2013 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)."
REVISION "201302200000Z"
DESCRIPTION
"Initial version, published as RFC XXXX."
-- RFC Ed.: replace XXXX with actual RFC number & remove this note
Korte, et al. Expires August 26, 2013 [Page 6]
Internet-Draft RPL-MIB February 2013
::= { mib-2 XXXX }
RplMessageType ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"The type of an RPL control message as defined in Section
6 of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
SYNTAX Unsigned32 (0..255)
RplInstanceID ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"A global or local RPLInstanceID as defined in Section 5.1
of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
SYNTAX Unsigned32 (0..255)
RplDodagVersionNumber ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"The version number of a DODAG as defined in Section 6.3 of
RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
SYNTAX Unsigned32 (0..255)
RplRank ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"The rank of a node within a DODAG as defined in Section 6.3
of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
SYNTAX Unsigned32 (0..65535)
RplObjectiveCodePoint ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"The Objective Code Point of a DODAG as defined in
Section 6.7.6 of RFC 6550."
Korte, et al. Expires August 26, 2013 [Page 7]
Internet-Draft RPL-MIB February 2013
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
SYNTAX Unsigned32 (0..65535)
RplDISMode ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Determines whether a DIS message is send upon boot-up
or not as defined in Section 18.2.1.1 of RFC 6550:
silent(1) do not send DIS messages
send(2) send DIS messages"
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
SYNTAX INTEGER {
silent(1),
send(2)
}
RplModeOfOperation ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The mode of operation of an RPL instance as defined in
Section 6.3.1 of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
SYNTAX INTEGER {
noDownwardRoutes(0),
nonStoringMode(1),
storingWithoutMulticastSupport(2),
storingWithMulticastSupport(3)
}
RplDAODelay ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"The delay time used for aggregation before a DAO message
is send."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
SYNTAX Unsigned32
RplDodagPreference ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"The preference of a DODAG compared to another DODAG of the
Korte, et al. Expires August 26, 2013 [Page 8]
Internet-Draft RPL-MIB February 2013
same instance as defined in Section 6.3 of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
SYNTAX Unsigned32 (0..7)
RplMinHopRankIncrease ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"The minimal increase of a rank within a single hop as
defined in Section 6.7.6 of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
SYNTAX Unsigned32 (0..131071)
RplPathControlSize ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"The Path Control Size within a DODAG as defined in
Section 6.7.6 of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
SYNTAX Unsigned32 (0..7)
-- object definitions
rplNotifications OBJECT IDENTIFIER ::= { rplMib 0 }
rplObjects OBJECT IDENTIFIER ::= { rplMib 1 }
rplConformance OBJECT IDENTIFIER ::= { rplMib 2 }
rplDefaults OBJECT IDENTIFIER ::= { rplObjects 1 }
rplDefaultDISMode OBJECT-TYPE
SYNTAX RplDISMode
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Determines whether a DIS message is send upon boot-up.
Changes to this value may not persist across restarts."
::= { rplDefaults 1 }
rplDefaultDISMessages OBJECT-TYPE
SYNTAX Unsigned32 (1..255)
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The number of DIS messages that are sent as an initial
Korte, et al. Expires August 26, 2013 [Page 9]
Internet-Draft RPL-MIB February 2013
probe for nearby DODAGs if the DIS mode is 'send'. The
value of this object is ignored if the DIS mode is
'silent'. Changes to this value may not persist across
restarts."
DEFVAL { 1 }
::= { rplDefaults 2 }
rplDefaultDISTimeout OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The number of seconds after which a node in DIS mode 'send'
in the absence of DIO messages may decide to root a
floating DODAG. Changes to this value may not persist
across restarts."
DEFVAL { 60 }
::= { rplDefaults 3 }
rplDefaultDAODelay OBJECT-TYPE
SYNTAX RplDAODelay
UNITS "milliseconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The default delay for aggregations before a DAO is send.
Changes to this value may not persist across restarts."
DEFVAL { 1000 }
::= { rplDefaults 4 }
rplDefaultDAOAckEnabled OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Indicates whether DAO Acknowledgements are sent on this
RPL instance. Changes to this value may not persist
across restarts."
DEFVAL { false }
::= { rplDefaults 5 }
rplDefaultPreference OBJECT-TYPE
SYNTAX RplDodagPreference
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The default preference of this DODAG compared to other
Korte, et al. Expires August 26, 2013 [Page 10]
Internet-Draft RPL-MIB February 2013
DODAGs within the same instance. Changes to this value
may not persist across restarts."
DEFVAL { 0 }
::= { rplDefaults 6 }
rplDefaultMinHopRankIncrease OBJECT-TYPE
SYNTAX RplMinHopRankIncrease
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The default minimum increase of the rank in a single hop.
Changes to this value may not persist across restarts."
DEFVAL { 256 }
::= { rplDefaults 7 }
rplDefaultMaxRankIncrease OBJECT-TYPE
SYNTAX Unsigned32 (0..65535)
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The default maximum allowable increase in rank in support
of local repair. If DAGMaxRankIncrease is 0 then this
mechanism is disabled. Changes to this value may not
persist across restarts."
DEFVAL { 65535 }
::= { rplDefaults 8 }
rplDefaultModeOfOperation OBJECT-TYPE
SYNTAX RplModeOfOperation
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The mode of operation of the RPL instance. Changes to this
value may not persist across restarts."
DEFVAL { storingWithoutMulticastSupport }
::= { rplDefaults 9 }
rplDefaultIntervalDoublings OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The default Imax parameter of the DIO trickle timer. Changes
to this value may not persist across restarts."
REFERENCE
"RFC 6206: The Trickle Algorithm"
DEFVAL { 20 }
::= { rplDefaults 10 }
Korte, et al. Expires August 26, 2013 [Page 11]
Internet-Draft RPL-MIB February 2013
rplDefaultIntervalMin OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The default Imin parameter of the DIO trickle timer. Changes
to this value may not persist across restarts."
REFERENCE
"RFC 6206: The Trickle Algorithm"
DEFVAL { 3 }
::= { rplDefaults 11 }
rplDefaultRedundancyConstant OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The default k parameter of the DIO trickle timer. Changes to
this value may not persist across restarts."
REFERENCE
"RFC 6206: The Trickle Algorithm"
DEFVAL { 10 }
::= { rplDefaults 12 }
rplActive OBJECT IDENTIFIER ::= { rplObjects 2 }
rplActiveInstance OBJECT-TYPE
SYNTAX RplInstanceID
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The currently active RPL Instance. Changes to this value
may not persist across restarts."
::= { rplActive 1 }
rplActiveDodag OBJECT-TYPE
SYNTAX InetAddressIPv6
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The currently active RPL DODAG in the active RPL Instance.
Changes to this value may not persist across restarts."
::= { rplActive 2 }
rplActiveDodagTriggerSequence OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
MAX-ACCESS read-write
STATUS current
Korte, et al. Expires August 26, 2013 [Page 12]
Internet-Draft RPL-MIB February 2013
DESCRIPTION
"The DAO Trigger Sequence Number (DTSN) of the active
DODAG as defined in Section 6.3.1 of RFC 6550. Changes to
this value may not persist across restarts."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
::= { rplActive 3 }
rplOCPTable OBJECT-TYPE
SYNTAX SEQUENCE OF RplOCPEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The table of all supported Objective Code Points (OCPs)."
::= { rplObjects 3 }
rplOCPEntry OBJECT-TYPE
SYNTAX RplOCPEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry representing a supported Objective Code Point."
INDEX { rplOCPCodepoint }
::= { rplOCPTable 1 }
RplOCPEntry ::= SEQUENCE {
rplOCPCodepoint RplObjectiveCodePoint,
rplOCPEnabled TruthValue
}
rplOCPCodepoint OBJECT-TYPE
SYNTAX RplObjectiveCodePoint
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A supported Objective Code Point."
::= { rplOCPEntry 1 }
rplOCPEnabled OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Enables the usage of this Objective Code Point. Changes to
this value may not persist across restarts."
::= { rplOCPEntry 2 }
rplInstanceTable OBJECT-TYPE
Korte, et al. Expires August 26, 2013 [Page 13]
Internet-Draft RPL-MIB February 2013
SYNTAX SEQUENCE OF RplInstanceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The table represents information about all known
RPL Instances."
::= { rplObjects 4 }
rplInstanceEntry OBJECT-TYPE
SYNTAX RplInstanceEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry representing information about a RPL Instance."
INDEX { rplInstanceID }
::= { rplInstanceTable 1 }
RplInstanceEntry ::= SEQUENCE {
rplInstanceID RplInstanceID,
rplInstanceDISMode RplDISMode,
rplInstanceDISMessages Unsigned32,
rplInstanceDISTimeout Unsigned32,
rplInstanceModeOfOperation RplModeOfOperation
}
rplInstanceID OBJECT-TYPE
SYNTAX RplInstanceID
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The InstanceID of this RPL Instance."
::= { rplInstanceEntry 1 }
rplInstanceDISMode OBJECT-TYPE
SYNTAX RplDISMode
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Reports whether a DIS message is send for this instance
upon boot-up."
::= { rplInstanceEntry 2 }
rplInstanceDISMessages OBJECT-TYPE
SYNTAX Unsigned32 (1..255)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of DIS messages that are sent as an initial
Korte, et al. Expires August 26, 2013 [Page 14]
Internet-Draft RPL-MIB February 2013
probe for nearby DODAGs if the DIS mode is 'send'."
::= { rplInstanceEntry 3 }
rplInstanceDISTimeout OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
UNITS "seconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of seconds after which a node in DIS mode 'send'
in the absence of DIO messages may decide to root a
floating DODAG."
::= { rplInstanceEntry 4 }
rplInstanceModeOfOperation OBJECT-TYPE
SYNTAX RplModeOfOperation
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The mode of operation of the RPL instance."
::= { rplInstanceEntry 5 }
rplDodagTable OBJECT-TYPE
SYNTAX SEQUENCE OF RplDodagEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The table represents information about all locally known
DODAGs."
::= { rplObjects 5 }
rplDodagEntry OBJECT-TYPE
SYNTAX RplDodagEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry representing information about a DODAG."
INDEX { rplInstanceID, rplDodagIndex }
::= { rplDodagTable 1 }
RplDodagEntry ::= SEQUENCE {
rplDodagIndex Unsigned32,
rplDodagID InetAddressIPv6,
rplDodagVersion RplDodagVersionNumber,
rplDodagRank RplRank,
rplDodagState INTEGER,
rplDodagOCP RplObjectiveCodePoint,
rplDodagDAODelay RplDAODelay,
Korte, et al. Expires August 26, 2013 [Page 15]
Internet-Draft RPL-MIB February 2013
rplDodagDAOAckEnabled TruthValue,
rplDodagPreference RplDodagPreference,
rplDodagMinHopRankIncrease RplMinHopRankIncrease,
rplDodagMaxRankIncrease Unsigned32,
rplDodagIntervalDoublings Unsigned32,
rplDodagIntervalMin Unsigned32,
rplDodagRedundancyConstant Unsigned32,
rplDodagPathControlSize RplPathControlSize
}
rplDodagIndex OBJECT-TYPE
SYNTAX Unsigned32 (1..4294967295)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The index identifying a DODAG within an RPL instance. This
index is used to keep the table indexes short. The RPL protocol
identifies a DODAG within an RPL instance by the DODAGID."
::= { rplDodagEntry 1 }
rplDodagID OBJECT-TYPE
SYNTAX InetAddressIPv6
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The identifier of a DODAG root (DODAGID) of this RPL
instance. The root of the DODAG reports its own IPv6
address as the DODAG root. This is uniquely identifying
a DODAG within an RPL instance."
::= { rplDodagEntry 2 }
rplDodagVersion OBJECT-TYPE
SYNTAX RplDodagVersionNumber
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The version of the DODAG in this RPL instance."
::= { rplDodagEntry 3 }
rplDodagRank OBJECT-TYPE
SYNTAX RplRank
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The rank of the node within the DODAG."
::= { rplDodagEntry 4 }
rplDodagState OBJECT-TYPE
Korte, et al. Expires August 26, 2013 [Page 16]
Internet-Draft RPL-MIB February 2013
SYNTAX INTEGER {
other(0),
grounded(1),
floating(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The status of the DODAG:
other(0) An unknown state.
grounded(1) The DODAG is grounded.
floating(2) The DODAG is floating (not grounded)."
::= { rplDodagEntry 5 }
rplDodagOCP OBJECT-TYPE
SYNTAX RplObjectiveCodePoint
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The Objective Code Point of this DODAG."
::= { rplDodagEntry 6 }
rplDodagDAODelay OBJECT-TYPE
SYNTAX RplDAODelay
UNITS "milliseconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The delay for aggregations before a DAO is send."
::= { rplDodagEntry 7 }
rplDodagDAOAckEnabled OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates whether DAO Acknowledgements are sent on this
DODAG."
::= { rplDodagEntry 8 }
rplDodagPreference OBJECT-TYPE
SYNTAX RplDodagPreference
MAX-ACCESS read-only
STATUS current
DESCRIPTION
Korte, et al. Expires August 26, 2013 [Page 17]
Internet-Draft RPL-MIB February 2013
"How preferred this DODAG is compared to other DODAGs
within the same instance."
::= { rplDodagEntry 9 }
rplDodagMinHopRankIncrease OBJECT-TYPE
SYNTAX RplMinHopRankIncrease
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The minimum increase of the rank in a single hop."
::= { rplDodagEntry 10 }
rplDodagMaxRankIncrease OBJECT-TYPE
SYNTAX Unsigned32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The maximum allowable increase in rank in support of local
repair. If DAGMaxRankIncrease is 0 then this mechanism is
disabled."
::= { rplDodagEntry 11 }
rplDodagIntervalDoublings OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The Imax parameter of the DIO trickle timer."
REFERENCE
"RFC 6206: The Trickle Algorithm"
::= { rplDodagEntry 12 }
rplDodagIntervalMin OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The Imin parameter of the DIO trickle timer."
REFERENCE
"RFC 6206: The Trickle Algorithm"
::= { rplDodagEntry 13 }
rplDodagRedundancyConstant OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The k parameter of the DIO trickle timer."
Korte, et al. Expires August 26, 2013 [Page 18]
Internet-Draft RPL-MIB February 2013
REFERENCE
"RFC 6206: The Trickle Algorithm"
::= { rplDodagEntry 14 }
rplDodagPathControlSize OBJECT-TYPE
SYNTAX RplPathControlSize
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The Path Control Size of this DODAG."
::= { rplDodagEntry 15 }
rplDodagParentTable OBJECT-TYPE
SYNTAX SEQUENCE OF RplDodagParentEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The list of parents of a DODAG."
::= { rplObjects 6 }
rplDodagParentEntry OBJECT-TYPE
SYNTAX RplDodagParentEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a known DODAG parent."
INDEX { rplInstanceID, rplDodagIndex, rplDodagParentID }
::= { rplDodagParentTable 1 }
RplDodagParentEntry ::= SEQUENCE {
rplDodagParentID InetAddressIPv6,
rplDodagParentIf InterfaceIndex
}
rplDodagParentID OBJECT-TYPE
SYNTAX InetAddressIPv6
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The address of a parent associated with this DODAG."
::= { rplDodagParentEntry 1 }
rplDodagParentIf OBJECT-TYPE
SYNTAX InterfaceIndex
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The interface over which the parent can be reached."
Korte, et al. Expires August 26, 2013 [Page 19]
Internet-Draft RPL-MIB February 2013
::= { rplDodagParentEntry 2 }
rplDodagChildTable OBJECT-TYPE
SYNTAX SEQUENCE OF RplDodagChildEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The list of children of a DODAG."
::= { rplObjects 7 }
rplDodagChildEntry OBJECT-TYPE
SYNTAX RplDodagChildEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a known DODAG child."
INDEX { rplInstanceID, rplDodagIndex, rplDodagChildID }
::= { rplDodagChildTable 1 }
RplDodagChildEntry ::= SEQUENCE {
rplDodagChildID InetAddressIPv6,
rplDodagChildIf InterfaceIndex
}
rplDodagChildID OBJECT-TYPE
SYNTAX InetAddressIPv6
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The address of an RPL child associated with this DODAG."
::= { rplDodagChildEntry 1 }
rplDodagChildIf OBJECT-TYPE
SYNTAX InterfaceIndex
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The interface over which the child can be reached."
::= { rplDodagChildEntry 2 }
rplStats OBJECT IDENTIFIER ::= { rplObjects 8 }
rplMemOverflows OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of memory allocation failures (e.g., routing table
Korte, et al. Expires August 26, 2013 [Page 20]
Internet-Draft RPL-MIB February 2013
overflows)."
::= { rplStats 1 }
rplParseErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of received malformed messages."
::= { rplStats 2 }
rplUnknownMsgTypes OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of received RPL messages that we dropped because
the message type is not recognized by the implementation."
::= { rplStats 3 }
rplSecurityPolicyViolations OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of messages discarded because the described level
of security for the message type and originator is unknown or
does not meet locally maintained security policies as defined
in Section 10.7 of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
::= { rplStats 4 }
rplIntegrityCheckFailures OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of messages discarded because the integrity
check failed against the received message authentication
code (MAC) as defined in Section 10.7 of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
::= { rplStats 5 }
rplReplayProtectionFailures OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
Korte, et al. Expires August 26, 2013 [Page 21]
Internet-Draft RPL-MIB February 2013
STATUS current
DESCRIPTION
"The number of messages discarded because the received
message Counter value is non-zero and less than the
maintained incoming Counter watermark or because the
received Timestamp Counter value indicates a message
transmission time that is earlier than the Current time
less the acceptable packet delay as defined in Section
10.7 of RFC 6550. This counter is also incremented if the
temporal consistency check of the message fails as defined
in Section 10.7.1."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
::= { rplStats 6 }
rplValidParentFailures OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times a packet could not be sent to a DODAG
parent flagged as valid."
::= { rplStats 7 }
rplNoInstanceIDs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times a packet could not be sent because of
a missing RPLInstanceID."
::= { rplStats 8 }
rplTriggeredLocalRepairs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times a local repair procedure was triggered."
::= { rplStats 9 }
rplTriggeredGlobalRepairs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times a global repair procedure was triggered."
::= { rplStats 10 }
Korte, et al. Expires August 26, 2013 [Page 22]
Internet-Draft RPL-MIB February 2013
rplNoParentSecs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of seconds without a next hop (DODAG parent)."
::= { rplStats 11 }
rplActiveNoParentSecs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of seconds with packets to forward without a
next hop (DODAG parent)."
::= { rplStats 12 }
rplOBitSetDownwards OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of packets received with the 'O' bit set from
a node with a higher rank as defined in Section 18.3.2
of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
::= { rplStats 13 }
rplOBitClearedUpwards OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of packets received with the 'O' bit cleared
from a node with a lower rank as defined in Section 18.3.2
of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
::= { rplStats 14 }
rplFBitSet OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of packets received with the 'F' bit set as
defined in Section 18.3.2 of RFC 6550."
Korte, et al. Expires August 26, 2013 [Page 23]
Internet-Draft RPL-MIB February 2013
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
::= { rplStats 15 }
rplRBitSet OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Number of packets received with the 'R' bit set as
defined in Section 18.3.2 of RFC 6550."
REFERENCE
"RFC 6550: RPL: IPv6 Routing Protocol for LLNs"
::= { rplStats 16 }
rplTrickleTimerResets OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of trickle timer resets."
::= { rplStats 17 }
rplMsgStatsTable OBJECT-TYPE
SYNTAX SEQUENCE OF RplMsgStatsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Basic RPL message statistics by message type."
::= { rplObjects 9 }
rplMsgStatsEntry OBJECT-TYPE
SYNTAX RplMsgStatsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Statistics for a specific RPL message type."
INDEX { rplMsgStatsType }
::= { rplMsgStatsTable 1 }
RplMsgStatsEntry ::= SEQUENCE {
rplMsgStatsType RplMessageType,
rplMsgStatsInMsgs Counter32,
rplMsgStatsOutMsgs Counter32
}
rplMsgStatsType OBJECT-TYPE
SYNTAX RplMessageType
Korte, et al. Expires August 26, 2013 [Page 24]
Internet-Draft RPL-MIB February 2013
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The RPL message type being counted by this row."
::= { rplMsgStatsEntry 1 }
rplMsgStatsInMsgs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of RPL messages received of this type."
::= { rplMsgStatsEntry 2 }
rplMsgStatsOutMsgs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of RPL messages sent of this type."
::= { rplMsgStatsEntry 3 }
-- conformance definitions
rplGroups OBJECT IDENTIFIER ::= { rplConformance 1 }
rplCompliances OBJECT IDENTIFIER ::= { rplConformance 2 }
rplFullCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Compliance statement for implementations supporting
read/write access, according to the object definitions."
MODULE -- this module
MANDATORY-GROUPS {
rplGeneralGroup,
rplInstanceGroup,
rplStatsGroup
}
::= { rplCompliances 1 }
rplReadOnlyCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Compliance statement for implementations supporting
only readonly access."
MODULE -- this module
MANDATORY-GROUPS {
rplGeneralGroup,
Korte, et al. Expires August 26, 2013 [Page 25]
Internet-Draft RPL-MIB February 2013
rplInstanceGroup,
rplStatsGroup
}
OBJECT rplDefaultDISMode
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplDefaultDISMessages
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplDefaultDISTimeout
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplDefaultDAODelay
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplDefaultDAOAckEnabled
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplDefaultPreference
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplDefaultMinHopRankIncrease
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplDefaultMaxRankIncrease
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplDefaultModeOfOperation
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
Korte, et al. Expires August 26, 2013 [Page 26]
Internet-Draft RPL-MIB February 2013
OBJECT rplDefaultIntervalDoublings
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplDefaultIntervalMin
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplDefaultRedundancyConstant
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplActiveInstance
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplActiveDodag
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplActiveDodagTriggerSequence
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT rplOCPEnabled
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
::= { rplCompliances 2 }
rplGeneralGroup OBJECT-GROUP
OBJECTS {
rplDefaultDISMode,
rplDefaultDISMessages,
rplDefaultDISTimeout,
rplDefaultDAODelay,
rplDefaultDAOAckEnabled,
rplDefaultPreference,
rplDefaultMinHopRankIncrease,
rplDefaultMaxRankIncrease,
rplDefaultModeOfOperation,
Korte, et al. Expires August 26, 2013 [Page 27]
Internet-Draft RPL-MIB February 2013
rplDefaultIntervalDoublings,
rplDefaultIntervalMin,
rplDefaultRedundancyConstant,
rplActiveInstance,
rplActiveDodag,
rplActiveDodagTriggerSequence,
-- rplOCPCodepoint,
rplOCPEnabled
}
STATUS current
DESCRIPTION
"A collection of objects providing general information about
the RPL implementation."
::= { rplGroups 1 }
rplInstanceGroup OBJECT-GROUP
OBJECTS {
-- rplInstanceID,
rplInstanceDISMode,
rplInstanceDISMessages,
rplInstanceDISTimeout,
rplInstanceModeOfOperation,
-- rplDodagIndex,
rplDodagID,
rplDodagVersion,
rplDodagRank,
rplDodagState,
rplDodagOCP,
rplDodagDAODelay,
rplDodagDAOAckEnabled,
rplDodagPreference,
rplDodagMinHopRankIncrease,
rplDodagMaxRankIncrease,
rplDodagIntervalDoublings,
rplDodagIntervalMin,
rplDodagRedundancyConstant,
rplDodagPathControlSize,
-- rplDodagParentID,
rplDodagParentIf,
-- rplDodagChildID,
rplDodagChildIf
}
STATUS current
DESCRIPTION
"A collection of objects providing insight into RPL
Instances and RPL DODAGs."
::= { rplGroups 2 }
Korte, et al. Expires August 26, 2013 [Page 28]
Internet-Draft RPL-MIB February 2013
rplStatsGroup OBJECT-GROUP
OBJECTS {
rplMemOverflows,
rplParseErrors,
rplUnknownMsgTypes,
rplSecurityPolicyViolations,
rplIntegrityCheckFailures,
rplReplayProtectionFailures,
rplValidParentFailures,
rplNoInstanceIDs,
rplTriggeredLocalRepairs,
rplTriggeredGlobalRepairs,
rplNoParentSecs,
rplActiveNoParentSecs,
rplOBitSetDownwards,
rplOBitClearedUpwards,
rplFBitSet,
rplRBitSet,
rplTrickleTimerResets,
-- rplMsgStatsType,
rplMsgStatsInMsgs,
rplMsgStatsOutMsgs
}
STATUS current
DESCRIPTION
"A collection of objects providing statistics about the
RPL implementation."
::= { rplGroups 3 }
END
7. Security Considerations
There are a number of management objects defined in this MIB module
with a MAX-ACCESS clause of read-write and/or read-create. Such
objects may be considered sensitive or vulnerable in some network
environments. The support for SET operations in a non-secure
environment without proper protection can have a negative effect on
network operations. These are the tables and objects and their
sensitivity/vulnerability:
o The objects below rplDefaults control the operation of RPL.
Unauthorized access to these objects can either make RPL
inefficient or even fail to converge.
o The objects below rplActive select the currently active RPL DODAG
in the currently active RPL Instance. Unauthorized changes may
prevent communication or cause loss of efficiency.
Korte, et al. Expires August 26, 2013 [Page 29]
Internet-Draft RPL-MIB February 2013
o The rplOCPTable controls which objective functions can be used by
an RPL implementation. Unauthorized access may prevent certain
RPL instances to be established or less it may cause less
efficient RPL instances to be used.
Some of the readable objects in this MIB module (i.e., objects with a
MAX-ACCESS other than not-accessible) may be considered sensitive or
vulnerable in some network environments. It is thus important to
control even GET and/or NOTIFY access to these objects and possibly
to even encrypt the values of these objects when sending them over
the network via SNMP. These tables and objects provide detailed
information about the structure and operation of RPL instances and
the topology of the DODAGs. This information may be exploited to
target attacks or to gain insights about the structure of a certain
deployment.
The counters of the RPL-MIB are provided primarily to assist in
troubleshooting problems in RPL deployments. The counters, however,
may also be used to gain insights into certain active attacks on RPL
itself.
SNMP versions prior to SNMPv3 did not include adequate security.
Even if the network itself is secure (for example by using IPsec),
even then, there is no control as to who on the secure network is
allowed to access and GET/SET (read/change/create/delete) the objects
in this MIB module.
It is RECOMMENDED that implementers consider the security features as
provided by the SNMPv3 framework (see [RFC3410], section 8),
including full support for the SNMPv3 cryptographic mechanisms (for
authentication and privacy).
Further, deployment of SNMP versions prior to SNMPv3 is NOT
RECOMMENDED. Instead, it is RECOMMENDED to deploy SNMPv3 and to
enable cryptographic security. It is then a customer/operator
responsibility to ensure that the SNMP entity giving access to an
instance of this MIB module is properly configured to give access to
the objects only to those principals (users) that have legitimate
rights to indeed GET or SET (change/create/delete) them.
8. IANA Considerations
IANA is requested to assign a value for "XXXX" under the 'mib-2'
subtree and to record the assignment in the SMI Numbers registry.
When the assignment has been made, the RFC Editor is asked to replace
"XXXX" (here and in the MIB module) with the assigned value and to
remove this note.
Korte, et al. Expires August 26, 2013 [Page 30]
Internet-Draft RPL-MIB February 2013
IANA has allocated a number for RPL in the IANAipRouteProtocol
textual convention of the IANA-RTPROTO-MIB.
9. Acknowledgements
The authors like to thank Michael Richardson for providing helpful
comments during the development of this specification.
Juergen Schoenwaelder and Anuj Sehgal were partly funded by Flamingo,
a Network of Excellence project (ICT-318488) supported by the
European Commission under its Seventh Framework Programme.
10. References
10.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.
[RFC4001] Daniele, M., Haberman, B., Routhier,
S., and J. Schoenwaelder, "Textual
Conventions for Internet Network
Addresses", RFC 4001, February 2005.
[RFC4292] Haberman, B., "IP Forwarding Table
MIB", RFC 4292, April 2006.
Korte, et al. Expires August 26, 2013 [Page 31]
Internet-Draft RPL-MIB February 2013
[RFC4293] Routhier, S., "Management Information
Base for the Internet Protocol (IP)",
RFC 4293, April 2006.
[RFC6206] Levis, P., Clausen, T., Hui, J.,
Gnawali, O., and J. Ko, "The Trickle
Algorithm", RFC 6206, March 2011.
[RFC6550] Winter, T., Thubert, P., Brandt, A.,
Hui, J., Kelsey, R., Levis, P.,
Pister, K., Struik, R., Vasseur, JP.,
and R. Alexander, "RPL: IPv6 Routing
Protocol for Low-Power and Lossy
Networks", RFC 6550, March 2012.
10.2. Informative References
[RFC3410] Case, J., Mundy, R., Partain, D., and
B. Stewart, "Introduction and
Applicability Statements for Internet-
Standard Management Framework",
RFC 3410, December 2002.
[RFC6643] Schoenwaelder, J., "Translation of
Structure of Management Information
Version 2 (SMIv2) MIB Modules to YANG
Modules", RFC 6643, July 2012.
[I-D.lhotka-netmod-yang-json] Lhotka, L., "Modeling JSON Text with
YANG",
draft-lhotka-netmod-yang-json-00 (work
in progress), October 2012.
Appendix A. JSON Representation
Using the translation algorithm defined in [RFC6643], the SMIv2
module can be translated to YANG. Using the JSON representation of
data modeled in YANG defined in [I-D.lhotka-netmod-yang-json], the
objects defined in the MIB module can be represented in JSON as shown
below. The compact representation without any white space uses XXXX
octets. (Of course, this number depends on the number of octets
needed for the counter values.)
{
"RPL-MIB:RPL-MIB": {
"rplGeneral": {
"rplDefaultDISMode": "silent",
"rplDefaultDISMessages": 1,
Korte, et al. Expires August 26, 2013 [Page 32]
Internet-Draft RPL-MIB February 2013
"rplDefaultDISTimeout": 60,
"rplDefaultDAODelay": 1000,
"rplDefaultDAOAckEnabled": false,
"rplDefaultPreference": 0,
"rplDefaultMinHopRankIncrease": 256,
"rplDefaultMaxRankIncrease": 65535,
"rplDefaultModeOfOperation":
"storingWithoutMulticastSupport",
"rplDefaultIntervalDoublings": 20,
"rplDefaultIntervalMin": 3,
"rplDefaultRedundancyConstant": 10
},
"rplActive": {
"rplActiveInstance": 0,
"rplActiveDodag": "2001:db8:bad:cafe::1",
"rplActiveDodagTriggerSequence": 4
},
"rplStats": {
"rplMemOverflows": 0,
"rplParseErrors": 0,
"rplUnknownMsgTypes": 1,
"rplSecurityPolicyViolations": 0,
"rplIntegrityCheckFailures": 0,
"rplReplayProtectionFailures": 0,
"rplValidParentFailures": 1,
"rplNoInstanceIDs": 0,
"rplTriggeredLocalRepairs": 3,
"rplTriggeredGlobalRepairs": 0,
"rplNoParentSecs": 15,
"rplActiveNoParentSecs": 0,
"rplOBitSetDownwards": 0,
"rplOBitClearedUpwards": 0,
"rplFBitSet": 0,
"rplRBitSet": 0,
"rplTrickleTimerResets": 42
},
"rplOCPTable": {
"rplOCPEntry": [
{
"rplOCPCodepoint": 0,
"rplOCPEnabled": true
}
]
},
"rplInstanceTable": {
"rplInstanceEntry": [
{
"rplInstanceID": 0,
Korte, et al. Expires August 26, 2013 [Page 33]
Internet-Draft RPL-MIB February 2013
"rplInstanceDISMode": "send",
"rplInstanceDISMessages": 1,
"rplInstanceDISTimeout": 60,
"rplInstanceModeOfOperation":
"storingWithoutMulticastSupport"
}
]
},
"rplDodagTable": {
"rplDodagEntry": [
{
"rplInstanceID": 0,
"rplDodagIndex": 1,
"rplDodagID": "2001:db8:bad:cafe::1",
"rplDodagVersion": 3,
"rplDodagRank": 2,
"rplDodagState": "grounded",
"rplDodagOCP": 0,
"rplDodagDAODelay": 1000,
"rplDodagDAOAckEnabled": false,
"rplDodagPreference": 0,
"rplDodagMinHopRankIncrease": 256,
"rplDodagMaxRankIncrease": 0,
"rplDodagIntervalDoublings": 20,
"rplDodagIntervalMin": 3,
"rplDodagRedundancyConstant": 10,
"rplDodagPathControlSize": 0
}
]
},
"rplDodagParentTable": {
"rplDodagParentEntry": [
{
"rplRPLInstanceID": 0,
"rplDodagIndex": 1,
"rplDodagParentID": "2001:db8:bad:cafe::8",
"rplDodagParentIf": 1
}
]
},
"rplDodagChildTable": {
"rplDodagChildEntry": [
{
"rplRPLInstanceID": 0,
"rplDodagIndex": 1,
"rplDodagChildID": "2001:db8:bad:cafe::a"
"rplDodagChildIf": 1
},
Korte, et al. Expires August 26, 2013 [Page 34]
Internet-Draft RPL-MIB February 2013
{
"rplRPLInstanceID": 0,
"rplDodagIndex": 1,
"rplDodagChildID": "2001:db8:bad:cafe::b"
"rplDodagChildIf": 2
}
]
},
"rplMsgStatsTable": {
"rplMsgStatsEntry": [
{
"rplMsgStatsType": 0,
"rplMsgStatsInMsgs": 78,
"rplMsgStatsOutMsgs": 23
},
{
"rplMsgStatsType": 1,
"rplMsgStatsInMsgs": 11,
"rplMsgStatsOutMsgs": 54
},
{
"rplMsgStatsType": 2,
"rplMsgStatsInMsgs": 87,
"rplMsgStatsOutMsgs": 28
},
{
"rplMsgStatsType": 4,
"rplMsgStatsInMsgs": 47,
"rplMsgStatsOutMsgs": 38
}
]
}
}
}
Authors' Addresses
Kevin Korte
Jacobs University
Campus Ring 1
Bremen 28759
Germany
EMail: k.korte@jacobs-university.de
Korte, et al. Expires August 26, 2013 [Page 35]
Internet-Draft RPL-MIB February 2013
Juergen Schoenwaelder
Jacobs University
Campus Ring 1
Bremen 28759
Germany
EMail: j.schoenwaelder@jacobs-university.de
Anuj Sehgal
Jacobs University
Campus Ring 1
Bremen 28759
Germany
EMail: s.anuj@jacobs-university.de
Tina Tsou
Huawei Technologies (USA)
2330 Central Expressway
Santa Clara CA 95050
USA
EMail: tina.tsou.zouting@huawei.com
Cathy Zhou
Huawei Technologies
Bantian, Longgang District
Shenzhen 518129
P.R. China
EMail: cathyzhou@huawei.com
Korte, et al. Expires August 26, 2013 [Page 36]