Skip to main content

Definition of Managed Objects for the LLN On-demand Ad hoc Distance- vector Routing Protocol - Next Generation (LOADng)
draft-herberg-lln-loadng-mib-00

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Expired".
Authors Ulrich Herberg , Robert Cole , Thomas H. Clausen
Last updated 2012-06-11
RFC stream (None)
Formats
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-herberg-lln-loadng-mib-00
Internet Engineering Task Force                               U. Herberg
Internet-Draft                           Fujitsu Laboratories of America
Intended status: Standards Track                                 R. Cole
Expires: December 13, 2012                                US Army CERDEC
                                                              T. Clausen
                                                LIX, Ecole Polytechnique
                                                           June 11, 2012

  Definition of Managed Objects for the LLN On-demand Ad hoc Distance-
           vector Routing Protocol - Next Generation (LOADng)
                    draft-herberg-lln-loadng-mib-00

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 describes objects for configuring parameters of the
   LLN On-demand Ad hoc Distance-vector Routing Protocol - Next
   Generation (LOADng) process on a router.  The MIB module defined in
   this memo, denoted LOADng-MIB, also reports state.  While LOADng is
   layer agnostic and can be run with different address families (e.g.,
   on L2 using MAC addreses, or on L3 using IP addresss), this MIB
   module assumes that LOADng is used on L3, and uses only IPv4/IPv6
   addresses.

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 December 13, 2012.

Copyright Notice

   Copyright (c) 2012 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

Herberg, et al.         Expires December 13, 2012               [Page 1]
Internet-Draft               The LOADng-MIB                    June 2012

   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
   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
     4.1.  Terms  . . . . . . . . . . . . . . . . . . . . . . . . . .  4
   5.  Structure of the MIB Module  . . . . . . . . . . . . . . . . .  4
     5.1.  The Configuration Group  . . . . . . . . . . . . . . . . .  4
     5.2.  The State Group  . . . . . . . . . . . . . . . . . . . . .  5
     5.3.  Tables and Indexing  . . . . . . . . . . . . . . . . . . .  5
   6.  Relationship to Other MIB Modules  . . . . . . . . . . . . . .  6
     6.1.  Relationship to the SNMPv2-MIB . . . . . . . . . . . . . .  6
     6.2.  MIB Modules Required for IMPORTS . . . . . . . . . . . . .  6
   7.  Definitions  . . . . . . . . . . . . . . . . . . . . . . . . .  6
   8.  Security Considerations  . . . . . . . . . . . . . . . . . . . 32
   9.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 34
   10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 34
   11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 35
     11.1. Normative References . . . . . . . . . . . . . . . . . . . 35
     11.2. Informative References . . . . . . . . . . . . . . . . . . 35
   Appendix A.    . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Herberg, et al.         Expires December 13, 2012               [Page 2]
Internet-Draft               The LOADng-MIB                    June 2012

1.  Introduction

   This memo defines a portion of the Management Information Base (MIB)
   for use with network management protocols in the Internet community.
   In particular, it describes objects for configuring parameters of the
   LLN On-demand Ad hoc Distance-vector Routing Protocol - Next
   Generation (LOADng) [LOADng] process on a router.  The MIB module
   defined in this memo, denoted LOADng-MIB, also reports state.  While
   LOADng is layer agnostic and can be run with different address
   families (e.g., on L2 using MAC addreses, or on L3 using IP
   addresss), this MIB module assumes that LOADng is used on L3, and
   uses only IPv4/IPv6 addresses.

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
   [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 module 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
   [RFC2578], [RFC2579] and [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 LLN On-demand Ad hoc Distance-vector Routing Protocol - Next
   Generation (LOADng) [LOADng] is a routing protocol, derived from AODV
   [RFC3561] and extended for use in Low power and Lossy Networks
   (LLNs).  As a reactive protocol, the basic operations of LOADng
   include generation of Route Requests (RREQs) by a router (originator)
   for when discovering a route to a destination, forwarding of such
   RREQs until they reach the destination router, generation of Route
   Replies (RREPs) upon receipt of an RREQ by the indicated destination,
   and unicast hop-by-hop forwarding of these RREPs towards the
   originator.  If a route is detected broken, i.e., if forwarding of a
   data packet to the recorded next hop on the route to the destination
   is detected to fail, a Route Error (RERR) message is returned in

Herberg, et al.         Expires December 13, 2012               [Page 3]
Internet-Draft               The LOADng-MIB                    June 2012

   unicast to the originator of that data packet.

   This MIB module describes objects for configuring parameters of a
   LOADng process on a router, as well as for the relevant state of a
   LOADng process on a router, in order to monitor and manage parameters
   and information bases of LOADng.

4.1.  Terms

   The following definitions apply throughout this document:

   o  Configuration Objects - switches, tables, objects which are
      initialized to default settings or set through the management
      interface defined by this MIB module.

   o  State Objects - automatically generated values which define the
      current operating state of the LOADng protocol process in the
      router.

5.  Structure of the MIB Module

   This section presents the structure of the LOADng-MIB module.  The
   MIB module is arranged into the following structure:

   o  LOADngObjects - defining objects within this MIB module.  The
      objects are arranged into the following groups:

      *  Configuration Group - defining objects related to the
         configuration of the LOADng instance on the router.

      *  State Group - defining objects which reflect the current state
         of the LOADng instance running on the router.

   o  LOADngConformance - defining the minimal and maximal conformance
      requirements for implementations of this MIB module.

5.1.  The Configuration Group

   The LOADng router is configured with a set of controls.  The
   authoritative list of configuration controls within the LOADng-MIB
   module are found within the MIB module itself.  Generally, an attempt
   was made in developing the LOADng-MIB module to support all
   configuration objects defined in [LOADng].  For all of the
   configuration parameters, the same default values of these parameters
   as defined in [LOADng] are followed.

Herberg, et al.         Expires December 13, 2012               [Page 4]
Internet-Draft               The LOADng-MIB                    June 2012

5.2.  The State Group

   The State Group reports current state information of a router running
   [LOADng].  The LOADng-MIB State Group tables were designed to contain
   the complete set of state information defined within the information
   bases specified in Section 6 of [LOADng].

5.3.  Tables and Indexing

   The LOADng-MIB module contains a number of tables which record data
   related to:

   o  the local LOADng router,

   o  a local LOADng interface on the LOADng router,

   o  other LOADng routers in the routing domain.

   The LOADng-MIB module's tables and their indexing are:

   o  loadngInterfaceTable - describes the configuration of the
      interfaces of this LOADng router.  This table has 'INDEX {
      loadngIfIndex }'.

   o  loadngLibLocalIfSetTable - records all network addresses which are
      defined as local interface network addresses on this LOADng
      router.  This table has 'INDEX { loadngLibLocalIfSetIfAddrIndex,
      loadngLibLocalIfSetIfIndex }'.

   o  loadngLibDestAddressSetTable - records addresses, for which a
      LOADng Router will generate RREPs in response to received RREQs,
      in addition to its own interface addresses (as listed in the Local
      Interface Set).  This table has 'INDEX {
      loadngLibDestAddressSetIndex }'.

   o  loadngBlacklistedNeighborSetTable - records the neighbor interface
      addresses of a LOADng Router, with which connectivity has been
      detected to be unidirectional.  This table has 'INDEX {
      loadngBlacklistedNeighborSetIndex }'.

   o  loadngRoutingSetTable - records the next hop on the route to each
      known destination.  This table has 'INDEX { loadngRoutingSetIndex
      }'.

   o  loadngPendingAckSetTable - records information about RREPs which
      have been transmitted with the ackrequired flag set, and for which
      an RREP_ACK has not yet been received.  This table has 'INDEX {
      loadngPendingAckSetIndex }'.

Herberg, et al.         Expires December 13, 2012               [Page 5]
Internet-Draft               The LOADng-MIB                    June 2012

6.  Relationship to Other MIB Modules

   This section specifies the relationship of the MIB module contained
   in this document to other standards, particularly to standards
   containing other MIB modules.  Definitions imported from other MIB
   modules and other MIB modules that SHOULD be implemented in
   conjunction with the MIB module contained within this document are
   identified in this section.

6.1.  Relationship to the SNMPv2-MIB

   The 'system' group in the SNMPv2-MIB module [RFC3418] is defined as
   being mandatory for all systems, and the objects apply to the entity
   as a whole.  The 'system' group provides identification of the
   management entity and certain other system-wide data.  The LOADng-MIB
   module does not duplicate those objects.

6.2.  MIB Modules Required for IMPORTS

   The following LOADng-MIB module IMPORTS objects from SNMPv2-SMI
   [RFC2578], SNMPv2-TC [RFC2579], SNMPv2-CONF [RFC2580], IF-MIB
   [RFC2863], and INET-ADDRESS-MIB [RFC4001].

7.  Definitions

   This section contains the MIB module defined by the specification.

   LOADNG-MIB DEFINITIONS ::= BEGIN

   -- This MIB module defines objects for the management of
   -- LLN On-demand Ad hoc Distance-vector Routing Protocol - Next
   -- Generation (LOADng),  T. Clausen, A. Colin de Verdiere,
   -- J. Yi, A. Niktash, Y. Igarashi, H. Satoh, U. Herberg,
   -- C. Lavenu, T. Lys, April 2012.

   IMPORTS

       MODULE-IDENTITY, OBJECT-TYPE,
       Counter32, Counter64, Integer32, Unsigned32, mib-2,
                    TimeTicks
                    FROM SNMPv2-SMI  -- RFC2578

       TEXTUAL-CONVENTION, TruthValue, TimeStamp,
                    RowStatus
                    FROM SNMPv2-TC  -- RFC2579

       MODULE-COMPLIANCE, OBJECT-GROUP
                    FROM SNMPv2-CONF  -- STD58

Herberg, et al.         Expires December 13, 2012               [Page 6]
Internet-Draft               The LOADng-MIB                    June 2012

       InetAddressType, InetAddress,
       InetAddressPrefixLength
                    FROM INET-ADDRESS-MIB  -- RFC4001

       InterfaceIndex
                    FROM IF-MIB  -- RFC2863

       ;

   loadngMIB MODULE-IDENTITY
          LAST-UPDATED "201206111000Z" -- June 11, 2012
          ORGANIZATION "IETF ??? Working Group"
          CONTACT-INFO
          "WG E-Mail: ??@ietf.org

           WG Chairs: ??
                      ??

           Editors:   Ulrich Herberg
                      Fujitsu Laboratories of America
                      Sunnyvale, CA, 94085
                      US
                      ulrich@herberg.name
                      http://www.herberg.name/

                      Robert G. Cole
                      US Army CERDEC
                      Space and Terrestrial Communications
                      6010 Frankford Street
                      Bldg 6010, Room 453H
                      Aberdeen Proving Ground, MD 21005
                      USA
                      +1 443 395-8744
                      robert.g.cole@us.army.mil
                      http://www.cs.jhu.edu/~rgcole/

                      Thomas Heide Clausen
                      Ecole Polytechnique
                      LIX
                      91128 Palaiseau Cedex
                      France
                      http://www.thomasclausen.org/
                      T.Clausen@computer.org"

          DESCRIPTION
              "This loadng-MIB module is applicable to routers
               implementing the LLN On-demand Ad hoc Distance-vector

Herberg, et al.         Expires December 13, 2012               [Page 7]
Internet-Draft               The LOADng-MIB                    June 2012

               Routing Protocol - Next Generation (LOADng).

               Copyright (C) The IETF Trust (2012). This version
               of this MIB module is part of RFCXXXX; see the RFC
               itself for full legal notices."

          -- revision
          REVISION "201206111000Z" -- June 11, 2012
          DESCRIPTION
               "The first version of this MIB module,
                published as RFCXXXX.
               "
          -- RFC-Editor assigns XXXX
          ::= { mib-2 XXXX }   -- to be assigned by IANA

   --
   -- Top-Level Components of this MIB Module
   --
   loadngObjects       OBJECT IDENTIFIER ::= { loadngMIB 1 }
   loadngConformance   OBJECT IDENTIFIER ::= { loadngMIB 2 }

   --
   -- loadngObjects
   --

   --    1) Configuration Objects Group
   --    2) State Objects Group

   --
   -- loadngConfigurationObjGrp
   --

   -- Contains the LOADng objects which configure specific options
   -- which determine the overall performance and operation of the
   -- LOADng protocol.

   loadngConfigurationObjGrp OBJECT IDENTIFIER ::= { loadngObjects 1 }

      loadngInterfaceTable  OBJECT-TYPE
         SYNTAX      SEQUENCE OF LoadngInterfaceEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
            "loadngInterfaceTable describes the

Herberg, et al.         Expires December 13, 2012               [Page 8]
Internet-Draft               The LOADng-MIB                    June 2012

             configuration of the interfaces of this LOADng router.
             The ifIndex is from the interfaces group
             defined in the Interfaces Group MIB. If the
             corresponding entry with ifIndex value is deleted
             from the Interface Table, then the entry in
             this table is automatically deleted.

             The objects in this table are persistent and when
             written the entity SHOULD save the change to
             non-volatile storage."
         REFERENCE
            "RFC2863 - The Interfaces Group MIB, McCloghrie,
             K., and F. Kastenholtz, June 2000."
      ::= { loadngConfigurationObjGrp 1 }

      loadngInterfaceEntry OBJECT-TYPE
         SYNTAX      LoadngInterfaceEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
            "loadngInterfaceEntry describes one LOADng
             local interface configuration as indexed by
             its ifIndex as defined in the Standard MIB II
             Interface Table (RFC2863)."
         INDEX { loadngIfIndex }
      ::= { loadngInterfaceTable 1 }

      LoadngInterfaceEntry ::=
         SEQUENCE {
            loadngIfIndex
               InterfaceIndex,
            loadngIfRowStatus
               RowStatus
            }

      loadngIfIndex  OBJECT-TYPE
         SYNTAX      InterfaceIndex
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
            "The ifIndex for this interface."
         ::= { loadngInterfaceEntry 1 }

      loadngIfRowStatus  OBJECT-TYPE
         SYNTAX      RowStatus
         MAX-ACCESS  read-create

Herberg, et al.         Expires December 13, 2012               [Page 9]
Internet-Draft               The LOADng-MIB                    June 2012

         STATUS      current
         DESCRIPTION
            "This object permits management of the table
            by facilitating actions such as row creation,
            construction, and destruction. The value of
            this object has no effect on whether other
            objects in this conceptual row can be
            modified.

            An entry may not exist in the active state unless all
            objects in the entry have an appropriate value."
         REFERENCE
            "LOADng."
      ::= { loadngInterfaceEntry 2 }

      --
      -- Router Parameters
      --

      loadngNetTraversalTime  OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "milliseconds"
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngNetTraversalTime corresponds to
            NET_TRAVERSAL_TIME of LOADng. It represents
            the maximum time that a packet is expected
            to take when traversing from one end of
            the network to the other.

            This object is persistent and when written
            the entity SHOULD save the change to
            non-volatile storage."
         REFERENCE
            "LOADng.
             Section 5 on Protocol Parameters."
         DEFVAL { 500 }
      ::= { loadngConfigurationObjGrp 2 }

      loadngRREQRetries  OBJECT-TYPE
         SYNTAX      Unsigned32 (0..255)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngRREQRetries corresponds to

Herberg, et al.         Expires December 13, 2012              [Page 10]
Internet-Draft               The LOADng-MIB                    June 2012

            RREQ_RETRIES of LOADng. It represents
            the maximum number of subsequent RREQs
            that a particular router may generate
            in order to discover a route to a
            destination, before declaring that
            destination unreachable.

            This object is persistent and when written
            the entity SHOULD save the change to
            non-volatile storage."
         REFERENCE
            "LOADng.
             Section 5 on Protocol Parameters."
         DEFVAL { 3 }
      ::= { loadngConfigurationObjGrp 3 }

      loadngRREQRatelimit  OBJECT-TYPE
         SYNTAX      Unsigned32 (1..255)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngRREQRatelimit corresponds to
             RREQ_RATELIMIT of LOADng. It represents
             the maximum number of RREQs that a particular
             router is allowed to send per second.

             This object is persistent and when written
             the entity SHOULD save the change to
             non-volatile storage."
         REFERENCE
            "LOADng.
             Section 5 on Protocol Parameters."
         DEFVAL { 3 }
      ::= { loadngConfigurationObjGrp 4 }

       loadngRHoldTime   OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "milliseconds"
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngRHoldTime corresponds to
             R_HOLD_TIME of LOADng. It represents
             the minimum time a Routing Tuple should
             be kept in the Routing Set after it was
             last refreshed. This may be a network-wide

Herberg, et al.         Expires December 13, 2012              [Page 11]
Internet-Draft               The LOADng-MIB                    June 2012

             constant, but may also be a variable whose
             value is defined by an auxiliary mechanism,
             e.g., by an extension to this protocol.

             This object is persistent and when written
             the entity SHOULD save the change to
             non-volatile storage."
         REFERENCE
            "LOADng.
             Section 5 on Protocol Parameters."
         DEFVAL { 10000 }
      ::= { loadngConfigurationObjGrp 5 }

      loadngMaxRouteCost  OBJECT-TYPE
         SYNTAX      Unsigned32 (0..255)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngMaxRouteCost corresponds to
             maximum distance in "hop count" of
             MAX_DIST of LOADng. It represents
             the value representing the
             maximum possible distance in hop count.

             This object is persistent and when written
             the entity SHOULD save the change to
             non-volatile storage."
         REFERENCE
            "LOADng.
             Section 5 on Protocol Parameters."
         DEFVAL { 255 }
      ::= { loadngConfigurationObjGrp 6 }

      loadngMaxWeakLinks  OBJECT-TYPE
         SYNTAX      Unsigned32 (0..15)
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngMaxWeakLinks corresponds to the
             maximum distance in "weak links" of
             MAX_DIST of LOADng. It represents
             the value representing the
             maximum possible distance in weak links.

             This object is persistent and when written
             the entity SHOULD save the change to
             non-volatile storage."
         REFERENCE

Herberg, et al.         Expires December 13, 2012              [Page 12]
Internet-Draft               The LOADng-MIB                    June 2012

            "LOADng.
             Section 5 on Protocol Parameters."
         DEFVAL { 15 }
      ::= { loadngConfigurationObjGrp 7 }

      loadngRREPAckRequired  OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngRREPAckRequired corresponds to
             RREP_ACK_REQUIRED of LOADng. It represents
             a boolean flag, which indicates (if
             set) that the router is configured to
             expect that each RREP it sends be confirmed
             by an RREP_ACK or (if cleared) that no
             RREP_ACK is expected.

             This object is persistent and when written
             the entity SHOULD save the change to
             non-volatile storage."
         REFERENCE
            "LOADng.
             Section 5 on Protocol Parameters."
         DEFVAL { false }
      ::= { loadngConfigurationObjGrp 8 }

      loadngRREPAckTimeout   OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "milliseconds"
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngRHoldTime corresponds to
             RREP_ACK_TIMEOUT of LOADng. It represents
             the minimum time after transmission of
             an RREP, that a LOADng Router should
             wait for an RREP_ACK from a neighbor
             LOADng Router, before considering that
             the link to this neighbor is unidirectional.

             This object is persistent and when written
             the entity SHOULD save the change to
             non-volatile storage."
         REFERENCE
            "LOADng.

Herberg, et al.         Expires December 13, 2012              [Page 13]
Internet-Draft               The LOADng-MIB                    June 2012

             Section 5 on Protocol Parameters."
         DEFVAL { 500 }
      ::= { loadngConfigurationObjGrp 9 }

      loadngBHoldTime   OBJECT-TYPE
         SYNTAX      Unsigned32
         UNITS       "milliseconds"
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngRHoldTime corresponds to
             B_HOLD_TIME of LOADng. It represents
             the time during which the link between
             the neighbor LOADng Router and this
             LOADng Router must be considered as
             non-bidirectional, and that therefore
             RREQs received from that neighbor
             LOADng Router must be ignored after being
             added. loadngBHoldTime should be greater
             than 2 x loadngNetTraversalTime x
             loadngRREQRetries, to ensure that subsequent
             RREQs will reach the destination via a route,
             excluding this link.

             This object is persistent and when written
             the entity SHOULD save the change to
             non-volatile storage."
         REFERENCE
            "LOADng.
             Section 5 on Protocol Parameters."
         DEFVAL { 3000 }
      ::= { loadngConfigurationObjGrp 10 }

      loadngUseBidirectionalLinkOnly  OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngUseBidirectionalLinkOnly corresponds to
             USE_BIDIRECTIONAL_LINK_ONLY of LOADng. It represents
             a boolean flag, which indicates if the
             LOADng Router only uses verified bi-directional
             links for data packet forwarding. It is set
             by default. If cleared, then the LOADng Router
             can use links which have not been verified to
             be bi-directional.

Herberg, et al.         Expires December 13, 2012              [Page 14]
Internet-Draft               The LOADng-MIB                    June 2012

             This object is persistent and when written
             the entity SHOULD save the change to
             non-volatile storage."
         REFERENCE
            "LOADng.
             Section 5 on Protocol Parameters."
         DEFVAL { true }
      ::= { loadngConfigurationObjGrp 11 }

       --
       -- Local Interface Set Table
       --

       loadngLibLocalIfSetTable OBJECT-TYPE
          SYNTAX       SEQUENCE OF LoadngLibLocalIfSetEntry
          MAX-ACCESS   not-accessible
          STATUS       current
          DESCRIPTION
             "A router's Local Interface Set records its
              local interfaces. The local interface
              is defined by the loadngIfIndex.

              The Local Interface Set consists of Local Interface
              Tuples per network interface."
          REFERENCE
             "LOADng."
       ::= { loadngConfigurationObjGrp 12 }

       loadngLibLocalIfSetEntry  OBJECT-TYPE
          SYNTAX      LoadngLibLocalIfSetEntry
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION
             "A router's Local Interface Set consists
              of Local Interface Tuples for each network
              interface.

              (I_local_iface_addr_list)

              Each tuple contains a list of one
              or more addresses of this interface.
             "
          REFERENCE
             "LOADng."
          INDEX { loadngLibLocalIfSetIndex, loadngLibLocalIfSetIfIndex }
       ::= { loadngLibLocalIfSetTable 1 }

Herberg, et al.         Expires December 13, 2012              [Page 15]
Internet-Draft               The LOADng-MIB                    June 2012

       LoadngLibLocalIfSetEntry ::=
          SEQUENCE {
             loadngLibLocalIfSetIndex
               Integer32,
             loadngLibLocalIfSetIfIndex
               InterfaceIndex,
             loadngLibLocalIfSetIpAddrType
               InetAddressType,
             loadngLibLocalIfSetIpAddr
               InetAddress,
             loadngLibLocalIfSetRowStatus
               RowStatus
            }

      loadngLibLocalIfSetIndex  OBJECT-TYPE
         SYNTAX      Integer32 (0..65535)
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
            "The index for this table. Necessary
             because multiple addresses may be associated
             with a given loadngIfIndex."
         REFERENCE
            "LOADng."
      ::= { loadngLibLocalIfSetEntry 1 }

      loadngLibLocalIfSetIfIndex  OBJECT-TYPE
           SYNTAX      InterfaceIndex
           MAX-ACCESS  not-accessible
           STATUS      current
           DESCRIPTION
              "Specifies the local loadngIfIndex for which this
               IP address was added."
           REFERENCE
              "LOADng."
      ::= { loadngLibLocalIfSetEntry 2 }

      loadngLibLocalIfSetIpAddrType  OBJECT-TYPE
         SYNTAX      InetAddressType
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "The type of the loadngLibLocalIfSetIpAddr
             in the InetAddress MIB (RFC4001).

             Only the values ipv4(1) and
             ipv6(2) are supported."
         REFERENCE

Herberg, et al.         Expires December 13, 2012              [Page 16]
Internet-Draft               The LOADng-MIB                    June 2012

            "LOADng."
      ::= { loadngLibLocalIfSetEntry 3 }

      loadngLibLocalIfSetIpAddr  OBJECT-TYPE
         SYNTAX      InetAddress (SIZE(4|16))
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngLibLocalIfSetIpAddr is an
             address of an interface of
             this router.

             This object is interpreted according to
             the setting of loadngLibLocalIfSetIpAddrType."
         REFERENCE
            "LOADng."
      ::= { loadngLibLocalIfSetEntry 4 }

      loadngLibLocalIfSetRowStatus  OBJECT-TYPE
         SYNTAX      RowStatus
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
            "This object permits management of the table
            by facilitating actions such as row creation,
            construction, and destruction. The value of
            this object has no effect on whether other
            objects in this conceptual row can be
            modified.

            An entry may not exist in the active state unless all
            objects in the entry have an appropriate value."
         REFERENCE
            "LOADng."
       ::= { loadngLibLocalIfSetEntry 5 }

       -- Destination Address Set Table
       -- Entry (foreach local interface): (D_address)

       loadngLibDestAddressSetTable OBJECT-TYPE
          SYNTAX       SEQUENCE OF LoadngLibDestAddressSetEntry
          MAX-ACCESS   not-accessible
          STATUS       current
          DESCRIPTION
             "The Destination Address Set records

Herberg, et al.         Expires December 13, 2012              [Page 17]
Internet-Draft               The LOADng-MIB                    June 2012

             addresses, for which a LOADng Router
             will generate RREPs in response to received
             RREQs, in addition to its own interface addresses
             (as listed in the Local Interface Set). The
             Destination Address Set thus represents those
             destinations (i.e., hosts), for which this LOADng
             Router is providing connectivity. It consists of
             destination address tuples: "
          REFERENCE
             "LOADng."
       ::= { loadngConfigurationObjGrp 13 }

       loadngLibDestAddressSetEntry  OBJECT-TYPE
          SYNTAX      LoadngLibDestAddressSetEntry
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION
             "The Destination Address Set consists
             of Destination Address Tuples:

               (D_address)
             "
          REFERENCE
             "LOADng."
          INDEX { loadngLibDestAddressSetIndex }
       ::= { loadngLibDestAddressSetTable 1 }

       LoadngLibDestAddressSetEntry ::=
          SEQUENCE {
             loadngLibDestAddressSetIndex
               Integer32,
             loadngLibDestAddressSetIpAddrType
               InetAddressType,
             loadngLibDestAddressSetIpAddr
               InetAddress
            }

      loadngLibDestAddressSetIndex  OBJECT-TYPE
         SYNTAX      Integer32 (0..65535)
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
            "The index for this table. Necessary
             because multiple addresses may be associated
             with a given loadngIfIndex."
         REFERENCE
            "LOADng."
      ::= { loadngLibDestAddressSetEntry 1 }

Herberg, et al.         Expires December 13, 2012              [Page 18]
Internet-Draft               The LOADng-MIB                    June 2012

      loadngLibDestAddressSetIpAddrType  OBJECT-TYPE
         SYNTAX      InetAddressType
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "The type of the loadngLibDestAddressSetIpAddr
             in the InetAddress MIB (RFC4001).

             Only the values ipv4(1) and
             ipv6(2) are supported."
         REFERENCE
            "LOADng."
      ::= { loadngLibDestAddressSetEntry 2 }

      loadngLibDestAddressSetIpAddr  OBJECT-TYPE
         SYNTAX      InetAddress (SIZE(4|16))
         MAX-ACCESS  read-write
         STATUS      current
         DESCRIPTION
            "loadngLibDestAddressSetIpAddr is an
             address of an interface of
             a router.

             This object is interpreted according to
             the setting of loadngLibDestAddressSetIpAddrType."
         REFERENCE
            "LOADng."
      ::= { loadngLibDestAddressSetEntry 3 }

   --
   -- loadngStateObjGrp
   --

   -- Contains information describing the current state of the LOADng
   -- process on this router.

   loadngStateObjGrp    OBJECT IDENTIFIER ::= { loadngObjects 2 }

      loadngUpTime OBJECT-TYPE
          SYNTAX TimeStamp
           MAX-ACCESS read-only
           STATUS current
           DESCRIPTION
                "The value of sysUpTime at the time current LOADng

Herberg, et al.         Expires December 13, 2012              [Page 19]
Internet-Draft               The LOADng-MIB                    June 2012

                 process was initialized.
                "
       ::= { loadngStateObjGrp 1 }

      --
      -- Blacklisted Neighbor Set Table
      --

       loadngBlacklistedNeighborSetTable OBJECT-TYPE
          SYNTAX       SEQUENCE OF LoadngBlacklistedNeighborSetEntry
          MAX-ACCESS   not-accessible
          STATUS       current
          DESCRIPTION
             "The Blacklisted Neighbor Set records the neighbor
             interface addresses of a LOADng Router, with which
             connectivity has been detected to be unidirectional.
             Specifically, the Blacklisted Neighbor Set records
             neighbors from which an RREQ has been received (i.e.,
             through which a Forward Route would possible) but
             to which it has been determined that it is not
             possible to communicate (i.e., forwarding Route
             Replies via this neighbor fails, rendering installing
             the Forward Route impossible). It consists of
             Blacklisted Neighbor Tuples."
          REFERENCE
             "LOADng."
       ::= { loadngStateObjGrp 2 }

       loadngBlacklistedNeighborSetEntry  OBJECT-TYPE
          SYNTAX      LoadngBlacklistedNeighborSetEntry
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION
             "A router's Blacklisted Neighbor Set consists
             of Blacklisted Neighbor Tuples, one per network
             address:loadngBlacklistedNeighborSet

             (B_neighbor_address, B_valid_time)

             The association between these addrs and
             the router's Interface is found in the
             Standard MIB II's IP address table
             (RFC1213)."
          REFERENCE
             "LOADng."
          INDEX { loadngBlacklistedNeighborSetIndex }
       ::= { loadngBlacklistedNeighborSetTable 1 }

Herberg, et al.         Expires December 13, 2012              [Page 20]
Internet-Draft               The LOADng-MIB                    June 2012

       LoadngBlacklistedNeighborSetEntry ::=
          SEQUENCE {
             loadngBlacklistedNeighborSetIndex
               Integer32,
             loadngBlacklistedNeighborSetIpAddrType
               InetAddressType,
             loadngBlacklistedNeighborSetIpAddr
               InetAddress,
             loadngBlacklistedNeighborSetBTime
               TimeStamp
            }

      loadngBlacklistedNeighborSetIndex  OBJECT-TYPE
         SYNTAX      Integer32 (0..65535)
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
            "The index for this table."
         REFERENCE
            "LOADng."
      ::= { loadngBlacklistedNeighborSetEntry 1 }

      loadngBlacklistedNeighborSetIpAddrType  OBJECT-TYPE
         SYNTAX      InetAddressType
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "The type of the loadngBlacklistedNeighborSetIpAddr
             in the InetAddress MIB (RFC4001).

             Only the values ipv4(1) and
             ipv6(2) are supported."
         REFERENCE
            "LOADng."
      ::= { loadngBlacklistedNeighborSetEntry 2 }

      loadngBlacklistedNeighborSetIpAddr  OBJECT-TYPE
         SYNTAX      InetAddress (SIZE(4|16))
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "loadngBlacklistedNeighborSetIpAddr is the
            address of the blacklisted neighbor interface."
         REFERENCE
            "LOADng."
      ::= { loadngBlacklistedNeighborSetEntry 3 }

Herberg, et al.         Expires December 13, 2012              [Page 21]
Internet-Draft               The LOADng-MIB                    June 2012

        loadngBlacklistedNeighborSetBTime  OBJECT-TYPE
           SYNTAX      TimeStamp
           MAX-ACCESS  read-only
           STATUS      current
           DESCRIPTION
              "loadngBlacklistedNeighborSetBTime specifies the
              sysUptime when to expire this entry and remove
              it from the 'loadngBlacklistedNeighborSetTable'"
           REFERENCE
              "LOADng."
        ::= { loadngBlacklistedNeighborSetEntry 4 }

      --
      -- Routing Set
      --

      loadngRoutingSetTable OBJECT-TYPE
         SYNTAX       SEQUENCE OF LoadngRoutingSetEntry
         MAX-ACCESS   not-accessible
         STATUS       current
         DESCRIPTION
             "The Routing Set records the next hop
             on the route to each known destination,
             when such a route is known. It consists of
             Routing Tuples."
         REFERENCE
            "LOADng."
      ::= { loadngStateObjGrp 3 }

      loadngRoutingSetEntry  OBJECT-TYPE
         SYNTAX      LoadngRoutingSetEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "A router's Routing Set consists
              of Routing Tuples:

              (R_dest_addr, R_next_addr, R_dist,
               R_metric, R_seq_num, R_valid_time,
               R_bidirectional, R_local_iface_addr)
              "
         REFERENCE
            "LOADng."
         INDEX { loadngRoutingSetIndex }
      ::= { loadngRoutingSetTable 1 }

Herberg, et al.         Expires December 13, 2012              [Page 22]
Internet-Draft               The LOADng-MIB                    June 2012

       LoadngRoutingSetEntry ::=
          SEQUENCE {
             loadngRoutingSetIndex
               Integer32,
             loadngRoutingSetDestIpAddrType
               InetAddressType,
             loadngRoutingSetDestIpAddr
               InetAddress,
             loadngRoutingSetNextIpAddrType
               InetAddressType,
             loadngRoutingSetNextIpAddr
               InetAddress,
             loadngRoutingSetRouteCost
               Unsigned32,
             loadngRoutingSetWeakLinks
               Unsigned32,
             loadngRoutingSetMetric
               Integer32,
             loadngRoutingSetSeqnum
               Integer32,
             loadngRoutingSetValidTime
               TimeStamp,
             loadngRoutingSetBidirectional
               TruthValue,
             loadngRoutingSetLocalIfaceIpAddrType
               InetAddressType,
             loadngRoutingSetLocalIfaceIpAddr
               InetAddress
            }

      loadngRoutingSetIndex  OBJECT-TYPE
         SYNTAX      Integer32 (0..65535)
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
            "The index for this table."
         REFERENCE
            "LOADng."
      ::= { loadngRoutingSetEntry 1 }

      loadngRoutingSetDestIpAddrType  OBJECT-TYPE
         SYNTAX      InetAddressType
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "The type of the loadngRoutingSetDestIpAddr
             in the InetAddress MIB (RFC4001).

Herberg, et al.         Expires December 13, 2012              [Page 23]
Internet-Draft               The LOADng-MIB                    June 2012

             Only the values ipv4(1) and
             ipv6(2) are supported."
         REFERENCE
            "LOADng."
      ::= { loadngRoutingSetEntry 2 }

      loadngRoutingSetDestIpAddr  OBJECT-TYPE
         SYNTAX      InetAddress (SIZE(4|16))
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "loadngRoutingSetDestIpAddrType is the address
            of the destination, either the address of an
            interface of a destination LOADng Router, or
            the address of an interface reachable via the
            destination LOADng Router, but which is outside
            the LLN."
         REFERENCE
            "LOADng."
      ::= { loadngRoutingSetEntry 3 }

      loadngRoutingSetNextIpAddrType  OBJECT-TYPE
         SYNTAX      InetAddressType
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "The type of the loadngRoutingSetNextIpAddr
             in the InetAddress MIB (RFC4001).

             Only the values ipv4(1) and
             ipv6(2) are supported."
         REFERENCE
            "LOADng."
      ::= { loadngRoutingSetEntry 4 }

      loadngRoutingSetNextIpAddr  OBJECT-TYPE
         SYNTAX      InetAddress (SIZE(4|16))
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "loadngRoutingSetNextIpAddr is the
            address of the next hop on the selected
            route to the destination."
         REFERENCE
            "LOADng."
      ::= { loadngRoutingSetEntry 5 }

      loadngRoutingSetRouteCost  OBJECT-TYPE

Herberg, et al.         Expires December 13, 2012              [Page 24]
Internet-Draft               The LOADng-MIB                    June 2012

         SYNTAX      Unsigned32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "loadngRoutingSetRouteCost is the distance
            (in number of hops) associated
            with the selected route to the destination
            with address R_dest_addr."
         REFERENCE
            "LOADng."
      ::= { loadngRoutingSetEntry 6 }

      loadngRoutingSetWeakLinks  OBJECT-TYPE
         SYNTAX      Unsigned32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "loadngRoutingSetWeakLinks is the distance
            (in number of weak links) associated
            with the selected route to the destination
            with address R_dest_addr."
         REFERENCE
            "LOADng."
      ::= { loadngRoutingSetEntry 7 }

      loadngRoutingSetMetric  OBJECT-TYPE
         SYNTAX      Integer32
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "loadngRoutingSetMetric specifies how R_dist
            is defined and calculated, as well as the
            comparison operator <= for determining which
            of two route costs is lower."
         REFERENCE
            "LOADng."
      ::= { loadngRoutingSetEntry 8 }

      loadngRoutingSetSeqnum  OBJECT-TYPE
         SYNTAX      Integer32 (-1..65535)
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "loadngRoutingSetSeqnum is the value of the
            <seq-num> field of the RREQ or RREP which installed
            or last updated this tuple. For the routing
            tuples installed by previous hop information of
            RREQ or RREP, loadngRoutingSetSeqnum must be

Herberg, et al.         Expires December 13, 2012              [Page 25]
Internet-Draft               The LOADng-MIB                    June 2012

            set to -1."
         REFERENCE
            "LOADng."
      ::= { loadngRoutingSetEntry 9 }

      loadngRoutingSetValidTime  OBJECT-TYPE
           SYNTAX      TimeStamp
           MAX-ACCESS  read-only
           STATUS      current
           DESCRIPTION
              "loadngRoutingSetValidTime specifies the sysUptime
             when to expire this entry and remove it from the
             'loadngRoutingSetTable'"
           REFERENCE
              "LOADng."
        ::= { loadngRoutingSetEntry 10 }

       loadngRoutingSetBidirectional  OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "loadngRoutingSetBidirectional is a boolean
            flag, which specifies if the routing tuple
            is verified as representing a bi-directional
            route. Data traffic should only be routed
            through a routing tuple with R_bidirectional
            flag equals TRUE, unless the router is
            configured as accepting routes without
            bi-directionality verification explicitly by
            setting the USE_BIDIRECTIONAL_LINK_ONLY to FALSE."
         REFERENCE
            "LOADng."
      ::= { loadngRoutingSetEntry 11 }

      loadngRoutingSetLocalIfaceIpAddrType  OBJECT-TYPE
         SYNTAX      InetAddressType
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "The type of the loadngRoutingSetLocalIfaceIpAddr
             in the InetAddress MIB (RFC4001).

             Only the values ipv4(1) and
             ipv6(2) are supported."
         REFERENCE

Herberg, et al.         Expires December 13, 2012              [Page 26]
Internet-Draft               The LOADng-MIB                    June 2012

            "LOADng."
      ::= { loadngRoutingSetEntry 12 }

      loadngRoutingSetLocalIfaceIpAddr  OBJECT-TYPE
         SYNTAX      InetAddress (SIZE(4|16))
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "loadngRoutingSetLocalIfaceIpAddr is the address
            of the local interface, through which the
            destination can be reached."
         REFERENCE
            "LOADng."
      ::= { loadngRoutingSetEntry 13 }

      --
      -- Pending Acknowledgment Set
      --

      loadngPendingAckSetTable OBJECT-TYPE
         SYNTAX       SEQUENCE OF LoadngPendingAckSetEntry
         MAX-ACCESS   not-accessible
         STATUS       current
         DESCRIPTION
             "The Pending Acknowledgment Set contains
             information about RREPs which have been
             transmitted with the ackrequired flag set,
             and for which an RREP_ACK has not yet been
             received. It consists of Pending Acknowledgment
             Tuples."
         REFERENCE
            "LOADng."
      ::= { loadngStateObjGrp 4 }

      loadngPendingAckSetEntry  OBJECT-TYPE
         SYNTAX      LoadngPendingAckSetEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "A router's Pending Acknowledgment Set
             consists of Pending Acknowledgment Tuples:

             (P_next_hop, P_originator, P_seq_num,
             P_ack_timeout)
              "
         REFERENCE
            "LOADng."

Herberg, et al.         Expires December 13, 2012              [Page 27]
Internet-Draft               The LOADng-MIB                    June 2012

         INDEX { loadngPendingAckSetIndex }
      ::= { loadngPendingAckSetTable 1 }

       LoadngPendingAckSetEntry ::=
          SEQUENCE {
             loadngPendingAckSetIndex
               Integer32,
             loadngPendingAckSetNextIpAddrType
               InetAddressType,
             loadngPendingAckSetNextIpAddr
               InetAddress,
             loadngPendingAckSetOrigIpAddrType
               InetAddressType,
             loadngPendingAckSetOrigIpAddr
               InetAddress,
             loadngPendingAckSetSeqnum
               Integer32,
             loadngPendingAckSetValidTime
               TimeStamp
            }

      loadngPendingAckSetIndex  OBJECT-TYPE
         SYNTAX      Integer32 (0..65535)
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
            "The index for this table."
         REFERENCE
            "LOADng."
      ::= { loadngPendingAckSetEntry 1 }

      loadngPendingAckSetNextIpAddrType  OBJECT-TYPE
         SYNTAX      InetAddressType
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "The type of the loadngPendingAckSetNextIpAddr
             in the InetAddress MIB (RFC4001).

             Only the values ipv4(1) and
             ipv6(2) are supported."
         REFERENCE
            "LOADng."
      ::= { loadngPendingAckSetEntry 2 }

      loadngPendingAckSetNextIpAddr  OBJECT-TYPE
         SYNTAX      InetAddress (SIZE(4|16))
         MAX-ACCESS  read-only

Herberg, et al.         Expires December 13, 2012              [Page 28]
Internet-Draft               The LOADng-MIB                    June 2012

         STATUS      current
         DESCRIPTION
            "loadngPendingAckSetNextIpAddr is the address
            of the neighbor interface to which the RREP
            was sent. "
         REFERENCE
            "LOADng."
      ::= { loadngPendingAckSetEntry 3 }

      loadngPendingAckSetOrigIpAddrType  OBJECT-TYPE
         SYNTAX      InetAddressType
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "The type of the loadngPendingAckSetOrigIpAddr
             in the InetAddress MIB (RFC4001).

             Only the values ipv4(1) and
             ipv6(2) are supported."
         REFERENCE
            "LOADng."
      ::= { loadngPendingAckSetEntry 4 }

      loadngPendingAckSetOrigIpAddr  OBJECT-TYPE
         SYNTAX      InetAddress (SIZE(4|16))
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "loadngPendingAckSetOrigIpAddr is the address
            of the originator of the RREP."
         REFERENCE
            "LOADng."
      ::= { loadngPendingAckSetEntry 5 }

      loadngPendingAckSetSeqnum  OBJECT-TYPE
         SYNTAX      Integer32 (0..65535)
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
            "loadngPendingAckSetSeqnum corresponds to the
            <seq-num> field of the sent RREP."
         REFERENCE
            "LOADng."
      ::= { loadngPendingAckSetEntry 6 }

      loadngPendingAckSetValidTime  OBJECT-TYPE
           SYNTAX      TimeStamp

Herberg, et al.         Expires December 13, 2012              [Page 29]
Internet-Draft               The LOADng-MIB                    June 2012

           MAX-ACCESS  read-only
           STATUS      current
           DESCRIPTION
              "loadngPendingAckSetValidTime specifies the sysUptime
             when to expire this entry and remove it from the
             'loadngPendingAckSetTable'"
           REFERENCE
              "LOADng."
        ::= { loadngPendingAckSetEntry 7 }

   --
   -- loadngConformance information
   --

   loadngCompliances       OBJECT IDENTIFIER ::= { loadngConformance 1 }
   loadngMIBGroups         OBJECT IDENTIFIER ::= { loadngConformance 2 }

   -- Compliance Statements
   loadngBasicCompliance MODULE-COMPLIANCE
     STATUS current
     DESCRIPTION
       "The basic implementation requirements for
        managed network entities that implement
        LOADng."
     MODULE -- this module

     MANDATORY-GROUPS { loadngConfigurationGroup }

     ::= { loadngCompliances 1 }

   loadngFullCompliance MODULE-COMPLIANCE
     STATUS current
     DESCRIPTION
       "The full implementation requirements for
        managed network entities that implement
        LOADng."
     MODULE -- this module

     MANDATORY-GROUPS { loadngConfigurationGroup,
                        loadngStateGroup }

     ::= { loadngCompliances 2 }

   --

Herberg, et al.         Expires December 13, 2012              [Page 30]
Internet-Draft               The LOADng-MIB                    June 2012

   -- Units of Conformance
   --

     loadngConfigurationGroup OBJECT-GROUP
        OBJECTS {
                 loadngNetTraversalTime,
                 loadngRREQRetries,
                 loadngRREQRatelimit,
                 loadngRHoldTime,
                 loadngMaxRouteCost,
                 loadngMaxWeakLinks,
                 loadngRREPAckRequired,
                 loadngRREPAckTimeout,
                 loadngBHoldTime,
                 loadngUseBidirectionalLinkOnly,
                 loadngIfRowStatus,
                 loadngLibLocalIfSetIfIndex,
                 loadngLibLocalIfSetIpAddrType,
                 loadngLibLocalIfSetRowStatus
                }
         STATUS  current
         DESCRIPTION
            "Set of LOADng configuration objects implemented
             in this module."
      ::= { loadngMIBGroups 2 }

     loadngStateGroup OBJECT-GROUP
        OBJECTS {
                 loadngUpTime,
                 loadngIfStateUpTime,
                 loadngBlacklistedNeighborSetIpAddrType,
                 loadngBlacklistedNeighborSetIpAddr,
                 loadngBlacklistedNeighborSetBTime,
                 loadngRoutingSetDestIpAddrType,
                 loadngRoutingSetDestIpAddr,
                 loadngRoutingSetNextIpAddrType,
                 loadngRoutingSetNextIpAddr,
                 loadngRoutingSetRouteCost,
                 loadngRoutingSetWeakLinks,
                 loadngRoutingSetMetric,
                 loadngRoutingSetSeqnum,
                 loadngRoutingSetValidTime,
                 loadngRoutingSetBidirectional,
                 loadngRoutingSetLocalIfaceIpAddrType,
                 loadngRoutingSetLocalIfaceIpAddr,
                 loadngPendingAckSetNextIpAddrType,
                 loadngPendingAckSetNextIpAddr,
                 loadngPendingAckSetOrigIpAddrType,

Herberg, et al.         Expires December 13, 2012              [Page 31]
Internet-Draft               The LOADng-MIB                    June 2012

                 loadngPendingAckSetOrigIpAddr,
                 loadngPendingAckSetSeqnum,
                 loadngPendingAckSetValidTime
                }
         STATUS  current
         DESCRIPTION
            "Set of LOADng state objects implemented
             in this module."
      ::= { loadngMIBGroups 3 }

   END

8.  Security Considerations

   This MIB module defines objects for the configuration and monitoring
   of LOADng [LOADng].

   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  loadngNetTraversalTime - this writable object controls the maximum
      time that a packet is expected to take when traversing from one
      end of the network to the other.  If set too low, a router will
      not wait long enough until receiving an RREP as response to an
      RREQ.  Therefore, all route requests may fail and render LOADng
      useless.

   o  loadngRREQRetries - this writable object controls how many RREQs
      may be sent until an RREP must have been receveived or the route
      discovery is considered failed.  If set too low in very lossy
      networks, route discovery may fail for destinations (which
      otherwise would have succeeded, had the value been higher).  If
      set too high, a router may send unnecessary many RREQs, draining
      energy from the router and consuming bandwidth.

   o  loadngRREQRatelimit - this writable object controls how many RREQs
      may be sent per second.  If set too high, a malicous node (host or
      router) may request routes for many destinations, resulting in
      many RREQs, which drain energy from the router and consume
      bandwidth.

Herberg, et al.         Expires December 13, 2012              [Page 32]
Internet-Draft               The LOADng-MIB                    June 2012

   o  loadngRHoldTime - this writable object controls how long a Routing
      Tuple is hold in the Routing Set. If set too low, a router may not
      keep routes long enough, and may therefore frequently rediscover
      the same routes to a destination, resulting in bandwidth
      consumption and energy drain.

   o  loadngRREPAckTimeout - this writable object controls how long a
      router waits before expecting an RREP_ACK.  If set too low, and if
      RREP_ACKs are required, the router may list the neighbor as
      unidirectional and may therefore not use it for routing.

   o  loadngBHoldTime - this writable object controls how long a
      Blacklisted Neighbor Tuples is hold in the Blacklisted Neighbor
      Set. If set too high, a neighbor router may be blocked for a long
      time, even though it may have become reachable bidirectionally in
      the meantime.

   o  loadngRREPAckRequired - this writable object controls whether
      RREP_ACKs are required for verification of bidirectionality.  If
      disabled in a lossy environment, and if bidirectionality is not
      verified by other means, unidirectional routes may be discovered
      to destinations.

   o  loadngMaxRouteCost, loadngMaxWeakLinks - these writable objects
      control the maximum distance of a router in the LLN.  If set too
      low, destinations may be ignored to which otherwise a path could
      be established by LOADng.

   Some of the readable objects in this MIB module (i.e., objects with a
   MAX-ACCESS other than not-accessible) may be considered sensitive or
   vulnerable in some network environments.  It is thus important to
   control even GET and/or NOTIFY access to these objects and possibly
   to even encrypt the values of these objects when sending them over
   the network via SNMP.  These are the tables and objects and their
   sensitivity/vulnerability:

   o  loadngRoutingSetTable - The table contains information on
      destinations in the LLN, specifically their IP address in the
      loadngRoutingSetDestIpAddr object.  This information provides an
      adversary broad information on the members of the LLN, located
      within this single table.  This information can be use to expedite
      attacks on the other members of the LLN without having to go
      through a laborious discovery process on their own.  This object
      is the index into the table, and has a MAX-ACCESS of 'not-
      accessible'.  However, this information can be exposed using SNMP
      operations.

   LLN technology is often deployed to support communications of

Herberg, et al.         Expires December 13, 2012              [Page 33]
Internet-Draft               The LOADng-MIB                    June 2012

   emergency services or military tactical applications.  In these
   applications, it is imperative to maintain the proper operation of
   the communications network and to protect sensitive information
   related to its operation.  Therefore, it is RECOMMENDED to provide
   support for the Transport Security Model (TSM) [RFC5591] in
   combination with TLS/DTLS [RFC6353].

   SNMP versions prior to SNMPv3 did not include adequate security.
   Even if the network itself is secure (for example by using IPsec),
   there is no control as to who on the secure network is allowed to
   access and GET/SET (read/change/create/delete) the objects in this
   MIB module.

   It is RECOMMENDED that implementations provide the security features
   described by the SNMPv3 framework (see [RFC3410]), including full
   support for authentication and privacy via the User-based Security
   Model (USM) [RFC3414] with the AES cipher algorithm [RFC3826].
   Implementations MAY also provide support for the Transport Security
   Model (TSM) [RFC5591] in combination with a secure transport such as
   SSH [RFC5592] or TLS/DTLS [RFC6353].

   Further, deployment of SNMP versions prior to SNMPv3 is NOT
   RECOMMENDED.  Instead, it is RECOMMENDED to deploy SNMPv3 and to
   enable cryptographic security.  It is then a customer/operator
   responsibility to ensure that the SNMP entity giving access to an
   instance of this MIB module is properly configured to give access to
   the objects only to those principals (users) that have legitimate
   rights to indeed GET or SET (change/create/delete) them.

9.  IANA Considerations

   Editor's Note (to be removed prior to publication): 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.  Note
   well: prior to official assignment by the IANA, a draft document MUST
   use placeholders (such as "XXXX" above) rather than actual numbers.
   See RFC4181 Section 4.5 for an example of how this is done in a draft
   MIB module.

10.  Acknowledgements

   This MIB document uses the template authored by D. Harrington which
   is based on contributions from the MIB Doctors, especially Juergen
   Schoenwaelder, Dave Perkins, C.M.Heard and Randy Presuhn.

11.  References

Herberg, et al.         Expires December 13, 2012              [Page 34]
Internet-Draft               The LOADng-MIB                    June 2012

11.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2578]  McCloghrie, K., Ed., Perkins, D., Ed., and J.
              Schoenwaelder, Ed., "Structure of Management Information
              Version 2 (SMIv2)", STD 58, RFC 2578, April 1999.

   [RFC2579]  McCloghrie, K., Ed., Perkins, D., Ed., and J.
              Schoenwaelder, Ed., "Textual Conventions for SMIv2",
              STD 58, RFC 2579, April 1999.

   [RFC2580]  McCloghrie, K., Perkins, D., and J. Schoenwaelder,
              "Conformance Statements for SMIv2", STD 58, RFC 2580,
              April 1999.

   [RFC2863]  McCloghrie, K. and F. Kastenholz, "The Interfaces Group
              MIB", RFC 2863, June 2000.

   [RFC3418]  Presuhn, R., "Management Information Base (MIB) for the
              Simple Network Management Protocol (SNMP)", STD 62,
              RFC 3418, December 2002.

   [RFC4001]  Daniele, M., Haberman, B., Routhier, S., and J.
              Schoenwaelder, "Textual Conventions for Internet Network
              Addresses", RFC 4001, February 2005.

   [LOADng]   Clausen, T., Colin de Verdiere, A., Niktash, A., Igarashi,
              Y., Satoh, H., Herberg, U., Lavenu, C., and T. Lys, "The
              LLN On-demand Ad hoc Distance-vector Routing Protocol -
              Next Generation (LOADng)", work in
              progress draft-clausen-lln-loadng-05, April 2012.

11.2.  Informative References

   [RFC3410]  Case, J., Mundy, R., Partain, D., and B. Stewart,
              "Introduction and Applicability Statements for Internet-
              Standard Management Framework", RFC 3410, December 2002.

   [RFC3561]  Perkins, C., Belding-Royer, E., and S. Das, "Ad hoc On-
              Demand Distance Vector (AODV) Routing", RFC 3561,
              July 2003.

   [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.

Herberg, et al.         Expires December 13, 2012              [Page 35]
Internet-Draft               The LOADng-MIB                    June 2012

   [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.

   [RFC5591]  Harrington, D. and W. Hardaker, "Transport Security Model
              for the Simple Network Management Protocol (SNMP)",
              RFC 5591, June 2009.

   [RFC5592]  Harrington, D., Salowey, J., and W. Hardaker, "Secure
              Shell Transport Model for the Simple Network Management
              Protocol (SNMP)", RFC 5592, June 2009.

   [RFC6353]  Hardaker, W., "Transport Layer Security (TLS) Transport
              Model for the Simple Network Management Protocol (SNMP)",
              RFC 6353, July 2011.

Appendix A.

   ***************************************************************
   * Note to the RFC Editor (to be removed prior to publication) *
   *                                                             *
   * The reference to RFCXXXX within the DESCRIPTION clauses     *
   * of the MIB module point to this draft and are to be         *
   * assigned by the RFC Editor.                                 *
   *                                                             *
   ***************************************************************

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/

Herberg, et al.         Expires December 13, 2012              [Page 36]
Internet-Draft               The LOADng-MIB                    June 2012

   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

   Phone: +33 6 6058 9349
   EMail: T.Clausen@computer.org
   URI:   http://www.ThomasClausen.org/

Herberg, et al.         Expires December 13, 2012              [Page 37]