RFC5525

From RFC-Wiki

Network Working Group T. Dreibholz Request for Comments: 5525 University of Duisburg-Essen Category: Experimental J. Mulik

                                           Delaware State University
                                                          April 2009
         Reliable Server Pooling MIB Module Definition

Status of This Memo

This memo defines an Experimental Protocol for the Internet community. It does not specify an Internet standard of any kind. Discussion and suggestions for improvement are requested. Distribution of this memo is unlimited.

Copyright Notice

Copyright (c) 2009 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 in effect on the date of publication of this document (http://trustee.ietf.org/license-info). Please review these documents carefully, as they describe your rights and restrictions with respect to this document.

Abstract

Reliable Server Pooling (RSerPool) is a framework to provide reliable server pooling. The RSerPool framework consists of two protocols: ASAP (Aggregate Server Access Protocol) and ENRP (Endpoint Handlespace Redundancy Protocol). This document defines an SMIv2- compliant (Structure of Management Information Version 2) Management Information Base (MIB) module providing access to managed objects in an RSerPool implementation.

Introduction

This memo defines a Management Information Base (MIB) module that describes managed objects for RSerPool implementations.

The Reliable Server Pooling (RSerPool) Framework

For a detailed overview of the documents that describe the current Reliable Server Pooling (RSerPool) framework, please refer to RFC3237, RFC5351, RFC5352, RFC5353, RFC5354, RFC5355, and RFC5356. A more informal introduction can be found at [RSerPoolPage] as well as in [Dre2006], [LCN2005], and [IJHIT2008].

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

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. The textual conventions are compliant to RFC 4001 RFC4001.

Structure of the MIB

The following diagram illustrates the structure of the MIB.

Structure of MIB

 +--rserpoolMIB(125)
 |
 +--rserpoolMIBObjects(1)
 |  |
 |  +--rserpoolENRPServers(1)
 |  |  |
 |  |  +--rserpoolENRPTable(1)
 |  |  |  |
 |  |  |  +--rserpoolENRPEntry(1)
 |  |  |     |  Index: rserpoolENRPIndex
 |  |  |     |
 |  |  |     +-- ---- Unsigned  rserpoolENRPIndex(1)
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- String    rserpoolENRPOperationScope(2)
 |  |  |     |        Textual Conv.: RSerPoolOperationScopeTC
 |  |  |     |        Size: 0..65535
 |  |  |     +-- -R-- Unsigned  rserpoolENRPIdentifier(3)
 |  |  |     |        Textual Conv.: RSerPoolENRPServerIdentifierTC
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -RW- String    rserpoolENRPDescription(4)
 |  |  |     |        Size: 0..255
 |  |  |     +-- -R-- TimeTicks rserpoolENRPUptime(5)
 |  |  |     +-- -R-- Unsigned  rserpoolENRPPort(6)
 |  |  |     |        Textual Conv.: InetPortNumber
 |  |  |     |        Range: 0..65535
 |  |  |     +-- -R-- Unsigned  rserpoolENRPASAPAnnouncePort(7)
 |  |  |     |        Textual Conv.: InetPortNumber
 |  |  |     |        Range: 0..65535
 |  |  |     +-- -R-- EnumVal   rserpoolENRPASAPAnnounceAddrType(8)
 |  |  |     |        Textual Conv.: InetAddressType
 |  |  |     |        Values: ipv4(1), ipv6(2)
 |  |  |     +-- -R-- String    rserpoolENRPASAPAnnounceAddr(9)
 |  |  |     |        Textual Conv.: InetAddress
 |  |  |     |        Size: 4 | 16
 |  |  |     +-- -R-- Unsigned  rserpoolENRPENRPAnnouncePort(10)
 |  |  |     |        Textual Conv.: InetPortNumber
 |  |  |     |        Range: 0..65535
 |  |  |     +-- -R-- EnumVal   rserpoolENRPENRPAnnounceAddrType(11)
 |  |  |     |        Textual Conv.: InetAddressType
 |  |  |     |        Values: ipv4(1), ipv6(2)
 |  |  |     +-- -R-- String    rserpoolENRPENRPAnnounceAddr(12)
 |  |  |              Textual Conv.: InetAddress
 |  |  |              Size: 4 | 16
 |  |  |
 |  |  +--rserpoolENRPPoolTable(3)
 |  |  |  |
 |  |  |  +--rserpoolENRPPoolEntry(1)
 |  |  |     |  Index: rserpoolENRPIndex, rserpoolENRPPoolIndex
 |  |  |     |
 |  |  |     +-- ---- Unsigned  rserpoolENRPPoolIndex(1)
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- String    rserpoolENRPPoolHandle(2)
 |  |  |              Textual Conv.: RSerPoolPoolHandleTC
 |  |  |              Size: 0..65535
 |  |  |
 |  |  +--rserpoolENRPPoolElementTable(4)
 |  |  |  |
 |  |  |  +--rserpoolENRPPoolElementEntry(1)
 |  |  |     |  Index: rserpoolENRPIndex, rserpoolENRPPoolIndex,
 |  |  |     |         rserpoolENRPPoolElementIndex
 |  |  |     |
 |  |  |     +-- ---- Unsigned  rserpoolENRPPoolElementIndex(1)
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- Unsigned  rserpoolENRPPoolElementID(2)
 |  |  |     |        Textual Conv.: RserpoolPoolElementIdentifierTC
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- Unsigned  rserpoolENRPASAPTransportPort(3)
 |  |  |     |        Textual Conv.: InetPortNumber
 |  |  |     |        Range: 0..65535
 |  |  |     +-- -R-- Unsigned  rserpoolENRPUserTransportProto(4)
 |  |  |     |        Range: 0..255
 |  |  |     +-- -R-- Unsigned  rserpoolENRPUserTransportPort(5)
 |  |  |     |        Textual Conv.: InetPortNumber
 |  |  |     |        Range: 0..65535
 |  |  |     +-- -R-- EnumVal   rserpoolENRPUserTransportUse(6)
 |  |  |     |        Textual Conv.: RSerPoolTransportUseTypeTC
 |  |  |     |        Values: dataOnly(0), dataPlusControl(1)
 |  |  |     +-- -R-- Unsigned  rserpoolENRPPolicyID(7)
 |  |  |     |        Textual Conv.: RSerPoolPolicyIdentifierTC
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- String    rserpoolENRPPolicyDescription(8)
 |  |  |     |        Size: 0..255
 |  |  |     +-- -R-- Unsigned  rserpoolENRPPolicyWeight(9)
 |  |  |     |        Textual Conv.: RSerPoolPolicyWeightTC
 |  |  |     |        Range: 0..4294967295
 |  |  |     +-- -R-- Unsigned  rserpoolENRPPolicyLoad(10)
 |  |  |     |        Textual Conv.: RSerPoolPolicyLoadTC
 |  |  |     |        Range: 0..4294967295
 |  |  |     +-- -R-- Unsigned  rserpoolENRPPolicyLoadDeg(11)
 |  |  |     |        Textual Conv.: RSerPoolPolicyLoadTC
 |  |  |     |        Range: 0..4294967295
 |  |  |     +-- -R-- TimeTicks rserpoolENRPRegistrationLife(12)
 |  |  |     +-- -R-- Unsigned  rserpoolENRPHomeENRPServer(13)
 |  |  |              Textual Conv.: RSerPoolENRPServerIdentifierTC
 |  |  |              Range: 1..4294967295
 |  |  |
 |  |  +--rserpoolENRPASAPAddrTable(5)
 |  |  |  |
 |  |  |  +--rserpoolENRPASAPAddrTableEntry(1)
 |  |  |     |  Index: rserpoolENRPIndex, rserpoolENRPPoolIndex,
 |  |  |     |         rserpoolENRPPoolElementIndex,
 |  |  |     |         rserpoolENRPASAPAddrTableIndex
 |  |  |     |
 |  |  |     +-- ---- Unsigned  rserpoolENRPASAPAddrTableIndex(1)
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- EnumVal   rserpoolENRPASAPL3Type(2)
 |  |  |     |        Textual Conv.: InetAddressType
 |  |  |     |        Values: ipv4(1), ipv6(2)
 |  |  |     +-- -R-- String    rserpoolENRPASAPL3Addr(3)
 |  |  |              Textual Conv.: InetAddress
 |  |  |              Size: 4 | 16
 |  |  |
 |  |  +--rserpoolENRPUserAddrTable(6)
 |  |  |  |
 |  |  |  +--rserpoolENRPUserAddrTableEntry(1)
 |  |  |     |  Index: rserpoolENRPIndex, rserpoolENRPPoolIndex,
 |  |  |     |         rserpoolENRPPoolElementIndex,
 |  |  |     |         rserpoolENRPUserAddrTableIndex
 |  |  |     |
 |  |  |     +-- ---- Unsigned  rserpoolENRPUserAddrTableIndex(1)
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- EnumVal   rserpoolENRPUserL3Type(2)
 |  |  |     |        Textual Conv.: InetAddressType
 |  |  |     |        Values: unknown(0), ipv4(1), ipv6(2)
 |  |  |     +-- -R-- String    rserpoolENRPUserL3Addr(3)
 |  |  |     |        Textual Conv.: InetAddress
 |  |  |     |        Size: 0 | 4 | 16
 |  |  |     +-- -R-- String    rserpoolENRPUserL3Opaque(4)
 |  |  |              Textual Conv.: RSerPoolOpaqueAddressTC
 |  |  |              Size: 0..65535
 |  |  |
 |  |  +--rserpoolENRPENRPAddrTable(7)
 |  |  |  |
 |  |  |  +--rserpoolENRPENRPAddrTableEntry(1)
 |  |  |     |  Index: rserpoolENRPIndex,
 |  |  |     |         rserpoolENRPENRPAddrTableIndex
 |  |  |     |
 |  |  |     +-- ---- Unsigned  rserpoolENRPENRPAddrTableIndex(1)
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- EnumVal   rserpoolENRPENRPL3Type(2)
 |  |  |     |        Textual Conv.: InetAddressType
 |  |  |     |        Values: ipv4(1), ipv6(2)
 |  |  |     +-- -R-- String    rserpoolENRPENRPL3Addr(3)
 |  |  |              Textual Conv.: InetAddress
 |  |  |              Size: 4 | 16
 |  |  |
 |  |  +--rserpoolENRPPeerTable(8)
 |  |  |  |
 |  |  |  +--rserpoolENRPPeerEntry(1)
 |  |  |     |  Index: rserpoolENRPPeerIndex
 |  |  |     |
 |  |  |     +-- ---- Unsigned  rserpoolENRPPeerIndex(1)
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- Unsigned  rserpoolENRPPeerIdentifier(2)
 |  |  |     |        Textual Conv.: RSerPoolENRPServerIdentifierTC
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- Unsigned  rserpoolENRPPeerPort(3)
 |  |  |     |        Textual Conv.: InetPortNumber
 |  |  |     |        Range: 0..65535
 |  |  |     +-- -R-- TimeTicks rserpoolENRPPeerLastHeard(4)
 |  |  |
 |  |  +--rserpoolENRPPeerAddrTable(9)
 |  |     |
 |  |     +--rserpoolENRPPeerAddrTableEntry(1)
 |  |        |  Index: rserpoolENRPPeerIndex,
 |  |  |     |         rserpoolENRPPeerAddrTableIndex
 |  |        |
 |  |        +-- ---- Unsigned  rserpoolENRPPeerAddrTableIndex(1)
 |  |        |        Range: 1..4294967295
 |  |        +-- -R-- EnumVal   rserpoolENRPPeerL3Type(2)
 |  |        |        Textual Conv.: InetAddressType
 |  |        |        Values: ipv4(1), ipv6(2)
 |  |        +-- -R-- String    rserpoolENRPPeerL3Addr(3)
 |  |                 Textual Conv.: InetAddress
 |  |                 Size: 4 | 16
 |  |
 |  +--rserpoolPoolElements(2)
 |  |  |
 |  |  +--rserpoolPETable(1)
 |  |  |  |
 |  |  |  +--rserpoolPEEntry(1)
 |  |  |     |  Index: rserpoolPEIndex
 |  |  |     |
 |  |  |     +-- ---- Unsigned  rserpoolPEIndex(1)
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- String    rserpoolPEOperationScope(2)
 |  |  |     |        Textual Conv.: RSerPoolOperationScopeTC
 |  |  |     |        Size: 0..65535
 |  |  |     +-- -RW- String    rserpoolPEPoolHandle(3)
 |  |  |     |        Textual Conv.: RSerPoolPoolHandleTC
 |  |  |     |        Size: 0..65535
 |  |  |     +-- -R-- Unsigned  rserpoolPEIdentifier(4)
 |  |  |     |        Textual Conv.: RserpoolPoolElementIdentifierTC
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -RW- String    rserpoolPEDescription(5)
 |  |  |     |        Size: 0..255
 |  |  |     +-- -R-- TimeTicks rserpoolPEUptime(6)
 |  |  |     +-- -R-- Unsigned  rserpoolPEASAPTransportPort(7)
 |  |  |     |        Textual Conv.: InetPortNumber
 |  |  |     |        Range: 0..65535
 |  |  |     +-- -R-- Unsigned  rserpoolPEUserTransportProto(8)
 |  |  |     |        Range: 0..255
 |  |  |     +-- -R-- Unsigned  rserpoolPEUserTransportPort(9)
 |  |  |     |        Textual Conv.: InetPortNumber
 |  |  |     |        Range: 0..65535
 |  |  |     +-- -R-- EnumVal   rserpoolPEUserTransportUse(10)
 |  |  |     |        Textual Conv.: RSerPoolTransportUseTypeTC
 |  |  |     |        Values: dataOnly(0), dataPlusControl(1)
 |  |  |     +-- -RW- Unsigned  rserpoolPEPolicyID(11)
 |  |  |     |        Textual Conv.: RSerPoolPolicyIdentifierTC
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -RW- String    rserpoolPEPolicyDescription(12)
 |  |  |     |        Size: 0..255
 |  |  |     +-- -RW- Unsigned  rserpoolPEPolicyWeight(13)
 |  |  |     |        Textual Conv.: RSerPoolPolicyWeightTC
 |  |  |     |        Range: 0..4294967295
 |  |  |     +-- -R-- Unsigned  rserpoolPEPolicyLoad(14)
 |  |  |     |        Textual Conv.: RSerPoolPolicyLoadTC
 |  |  |     |        Range: 0..4294967295
 |  |  |     +-- -RW- Unsigned  rserpoolPEPolicyLoadDeg(15)
 |  |  |     |        Textual Conv.: RSerPoolPolicyLoadTC
 |  |  |     |        Range: 0..4294967295
 |  |  |     +-- -RW- TimeTicks rserpoolPERegistrationLife(16)
 |  |  |     +-- -R-- Unsigned  rserpoolPEHomeENRPServer(17)
 |  |  |              Textual Conv.: RSerPoolENRPServerIdentifierTC
 |  |  |              Range: 1..4294967295
 |  |  |
 |  |  +--rserpoolPEASAPAddrTable(2)
 |  |  |  |
 |  |  |  +--rserpoolPEASAPAddrTableEntry(1)
 |  |  |     |  Index: rserpoolPEIndex, rserpoolPEASAPAddrTableIndex
 |  |  |     |
 |  |  |     +-- ---- Unsigned  rserpoolPEASAPAddrTableIndex(1)
 |  |  |     |        Range: 1..4294967295
 |  |  |     +-- -R-- EnumVal   rserpoolPEASAPL3Type(2)
 |  |  |     |        Textual Conv.: InetAddressType
 |  |  |     |        Values: ipv4(1), ipv6(2)
 |  |  |     +-- -R-- String    rserpoolPEASAPL3Addr(3)
 |  |  |              Textual Conv.: InetAddress
 |  |  |              Size: 4 | 16
 |  |  |
 |  |  +--rserpoolPEUserAddrTable(6)
 |  |     |
 |  |     +--rserpoolPEUserAddrTableEntry(1)
 |  |        |  Index: rserpoolPEIndex, rserpoolPEUserAddrTableIndex
 |  |        |
 |  |        +-- ---- Unsigned  rserpoolPEUserAddrTableIndex(1)
 |  |        |        Range: 1..4294967295
 |  |        +-- -R-- EnumVal   rserpoolPEUserL3Type(2)
 |  |        |        Textual Conv.: InetAddressType
 |  |        |        Values: unknown(0), ipv4(1), ipv6(2)
 |  |        +-- -R-- String    rserpoolPEUserL3Addr(3)
 |  |        |        Textual Conv.: InetAddress
 |  |        |        Size: 0 | 4 | 16
 |  |        +-- -R-- String    rserpoolPEUserL3Opaque(4)
 |  |                 Textual Conv.: RSerPoolOpaqueAddressTC
 |  |                 Size: 0..65535
 |  |
 |  +--rserpoolPoolUsers(3)
 |     |
 |     +--rserpoolPUTable(1)
 |        |
 |        +--rserpoolPUEntry(1)
 |           |  Index: rserpoolPUIndex
 |           |
 |           +-- ---- Unsigned  rserpoolPUIndex(1)
 |           |        Range: 1..4294967295
 |           +-- -R-- String    rserpoolPUOperationScope(2)
 |           |        Textual Conv.: RSerPoolOperationScopeTC
 |           |        Size: 0..65535
 |           +-- -RW- String    rserpoolPUPoolHandle(3)
 |           |        Textual Conv.: RSerPoolPoolHandleTC
 |           |        Size: 0..65535
 |           +-- -RW- String    rserpoolPUDescription(4)
 |           |        Size: 0..255
 |           +-- -R-- TimeTicks rserpoolPUUptime(5)
 |
 +--rserpoolMIBConformance(2)
    |
    +--rserpoolMIBCompliances(1)
    |  |
    |  +--rserpoolMIBCompliance(1)
    |
    +--rserpoolMIBGroups(2)
       |
       +--rserpoolENRPGroup(1)
       +--rserpoolPEGroup(2)
       +--rserpoolPUGroup(3)

As the figure shows, the MIB consists of three main branches: "rserpoolENRPServers", "rserpoolPoolElements", and "rserpoolPoolUsers". The first branch, "rserpoolENRPServers", is used to access managed objects in the set of ENRP servers running on a given host. While it is assumed that it does not make much sense to run multiple ENRP servers for the same operation scope on one host, running multiple ENRP servers for different operation scopes is very likely when the ENRP server processes run on routers. Therefore, the MIB has to be able to manage multiple ENRP servers on the same host.

"rserpoolPoolElements" is used to access managed objects in the set of pool elements that are running on a given host.

The third branch, "rserpoolPoolUsers", is used to access managed objects in the set of pool users that are running on a given host.

Note: "rserpoolENRPServers" is filled on hosts running ENRP server instances, "rserpoolPoolElements" is filled on hosts running pool element instances, and "rserpoolPoolUsers" is filled on hosts running pool user instances. Of course, multiple different components may run on the same host, which leads to filling of multiple different branches.

In fact, the structure of the three branches is very similar. Because the other two branches are so similar, we describe only the first branch in detail, and provide a summary description of the second and third branch. We now proceed with a description of the branches.

Access to Managed Objects on ENRP Servers

The first branch describes managed objects at a set of ENRP servers. Any given ENRP server of this set will, at a certain moment in time, have registration information for a set of active pools. Each of these pools in turn may have a list of pool elements that are registered under that pool. To allow this information to be retrieved via SNMP, the ERNP server branch of the RSerPool MIB uses the table-in-table technique described in [SNMPMIBS].

Specifically, the ENRP servers branch creates four levels of nesting, as indicated in the following diagram:

Nesting of the ENRP Server Branch

Nesting Structure:

Level 1: rserpoolENRPTable
Level 2:    rserpoolENRPPoolTable
Level 3:       rserpoolENRPPoolElementTable
Level 4:          rserpoolENRPASAPAddrTable
                  rserpoolENRPUserAddrTable
Level 2:    rserpoolENRPENRPAddrTable
Level 2:    rserpoolENRPPeerTable
Level 3:       rserpoolENRPPeerAddrTable

Access to Managed Objects on Pool Elements

The construction of the Pool Elements branch is very similar to the pool elements table of the ENRP servers branch. But instead of grouping the pool elements into pools (which does not make sense here), the pool elements table is the top of the hierarchy, and each pool element entry specifies its operation scope and pool handle.

That is, the nesting structure is as follows:

Nesting of the Pool Elements Branch

Level 1:    rserpoolPETable
Level 2:       rserpoolPEASAPAddrTable
               rserpoolPEUserAddrTable

Access to Managed Objects on Pool Users

For the Pool Users branch, it is only necessary to list the pool user instances, including their operation scope and pool handle.

Persistency Behavior

Upon changes of writable objects, an implementation SHOULD store the new values in a persistent manner if it has the capability to do this. An implementation SHOULD use these stored values upon reset or reinitialization.

Definitions

RSERPOOL-MIB DEFINITIONS ::= BEGIN

IMPORTS MODULE-IDENTITY, OBJECT-TYPE, experimental, TimeTicks, Unsigned32

  FROM SNMPv2-SMI

TEXTUAL-CONVENTION

  FROM SNMPv2-TC

MODULE-COMPLIANCE, OBJECT-GROUP

  FROM SNMPv2-CONF

InetAddressType, InetAddress, InetPortNumber

  FROM INET-ADDRESS-MIB;

-- ## Module definition ########################################### rserpoolMIB MODULE-IDENTITY LAST-UPDATED

  "200904070000Z" -- April 07, 2009

ORGANIZATION

  "IEM-TdR, UNIVERSITY OF DUISBURG-ESSEN"

CONTACT-INFO

  " THOMAS-DREIBHOLZ
     Postal:  University of Duisburg-Essen
              Institute for Experimental Mathematics
              Ellernstrasse 29
              D-45326 Essen
              Germany
     Phone:   +49-201-183-7637
     Fax:     +49-201-183-7673
     Email:   [email protected]
  JAIWANT-MULIK
     Postal:  Delaware State University
              CIS Department
              1200 N. DuPont Hw
              Dover, DE
              USA 19904
     Phone:   +1-302-857-7910
     Fax:     +1-302-857-6552
     Email:   [email protected]"
  DESCRIPTION
     "The MIB module for managing an RSerPool implementation.
      Copyright (c) 2009 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, are permitted provided that the
      following conditions are met:
      - Redistributions of source code must retain the above
        copyright notice, this list of conditions and the
        following disclaimer.
      - Redistributions in binary form must reproduce the above
        copyright notice, this list of conditions and the
        following disclaimer in the documentation and/or other
        materials provided with the distribution.
      - Neither the name of Internet Society, IETF or IETF Trust,
        nor the names of specific contributors, may be used to
        endorse or promote products derived from this software
        without specific prior written permission.
      THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
      CONTRIBUTORS 'AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES,
      INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
      MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
      DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR
      CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
      SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
      NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
      LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
      HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
      CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
      OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
      SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
      DAMAGE.
      This version of this MIB module is part of RFC 5525;
      see the RFC itself for full legal notices."
  REVISION
     "200904070000Z" -- April 07, 2009
  DESCRIPTION
     "This version of the MIB module is published as RFC 5525"
  ::= { experimental 125 }

-- ## RSerPool type definitions ################################### RSerPoolENRPServerIdentifierTC ::= TEXTUAL-CONVENTION DISPLAY-HINT "x" STATUS current DESCRIPTION "The ID of an ENRP server" SYNTAX Unsigned32 (1..4294967295)

RSerPoolOperationScopeTC ::= TEXTUAL-CONVENTION DISPLAY-HINT "1024t" STATUS current DESCRIPTION "The ID of an operation scope" SYNTAX OCTET STRING (SIZE (0..65535))

RSerPoolPoolHandleTC ::= TEXTUAL-CONVENTION DISPLAY-HINT "1024t" STATUS current DESCRIPTION "The pool handle" SYNTAX OCTET STRING (SIZE (0..65535))

RserpoolPoolElementIdentifierTC ::= TEXTUAL-CONVENTION DISPLAY-HINT "x" STATUS current DESCRIPTION "The pool element ID" SYNTAX Unsigned32 (1..4294967295)

RSerPoolPolicyIdentifierTC ::= TEXTUAL-CONVENTION DISPLAY-HINT "x" STATUS current DESCRIPTION "The ID of the pool policy" SYNTAX Unsigned32 (1..4294967295)

RSerPoolPolicyLoadTC ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "The load status of a pool element" SYNTAX Unsigned32 (0..4294967295)

RSerPoolPolicyWeightTC ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "The weight of a pool element" SYNTAX Unsigned32 (0..4294967295)

RSerPoolTransportUseTypeTC ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The transport use of a pool element" SYNTAX INTEGER {

  dataOnly(0),
  dataPlusControl(1)

}

RSerPoolOpaqueAddressTC ::= TEXTUAL-CONVENTION DISPLAY-HINT "1024t" STATUS current DESCRIPTION "Opaque address" SYNTAX OCTET STRING (SIZE (0..65535))

-- ## Top-level definitions ####################################### rserpoolMIBObjects OBJECT IDENTIFIER ::= { rserpoolMIB 1 } rserpoolMIBConformance OBJECT IDENTIFIER ::= { rserpoolMIB 2 }

rserpoolENRPServers OBJECT IDENTIFIER ::= { rserpoolMIBObjects 1 } rserpoolPoolElements OBJECT IDENTIFIER ::= { rserpoolMIBObjects 2 } rserpoolPoolUsers OBJECT IDENTIFIER ::= { rserpoolMIBObjects 3 }

-- ################################################################ -- #### ENRP Servers Section #### -- ################################################################

-- ## Definition of the ENRP server table ######################### rserpoolENRPTable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolENRPEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "The table listing of ENRP servers."
= { rserpoolENRPServers 1 }

rserpoolENRPEntry OBJECT-TYPE SYNTAX RserpoolENRPEntry MAX-ACCESS not-accessible STATUS current

DESCRIPTION

  "An ENRP server entry in the table listing of ENRP
  servers."

INDEX { rserpoolENRPIndex }

= { rserpoolENRPTable 1 }

RserpoolENRPEntry ::= SEQUENCE { rserpoolENRPIndex Unsigned32, rserpoolENRPOperationScope RSerPoolOperationScopeTC, rserpoolENRPIdentifier RSerPoolENRPServerIdentifierTC, rserpoolENRPDescription OCTET STRING, rserpoolENRPUptime TimeTicks, rserpoolENRPPort InetPortNumber, rserpoolENRPASAPAnnouncePort InetPortNumber, rserpoolENRPASAPAnnounceAddrType InetAddressType, rserpoolENRPASAPAnnounceAddr InetAddress, rserpoolENRPENRPAnnouncePort InetPortNumber, rserpoolENRPENRPAnnounceAddrType InetAddressType, rserpoolENRPENRPAnnounceAddr InetAddress }

rserpoolENRPIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "An integer to uniquely identify an ENRP server."
= { rserpoolENRPEntry 1 }

rserpoolENRPOperationScope OBJECT-TYPE SYNTAX RSerPoolOperationScopeTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The definition of the operation scope of this ENRP server."

REFERENCE

  "Section 1.2 of RFC 3237 defines the term operation scope."
= { rserpoolENRPEntry 2 }

rserpoolENRPIdentifier OBJECT-TYPE SYNTAX RSerPoolENRPServerIdentifierTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The ENRP server identifier of this ENRP server."

REFERENCE

  "Section 3.1 of RFC 5351 explains the ENRP server identifier."
= { rserpoolENRPEntry 3 }

rserpoolENRPDescription OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-write STATUS current DESCRIPTION

  "A textual description of this ENRP server, e.g., its location
  and a contact address of its administrator.
  This object SHOULD be maintained in a persistent manner."
= { rserpoolENRPEntry 4 }

rserpoolENRPUptime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION

  "The ENRP service uptime of this ENRP server."
= { rserpoolENRPEntry 5 }

rserpoolENRPPort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-only STATUS current DESCRIPTION

  "The Stream Control Transmission Protocol (SCTP) port number of
  the ENRP protocol endpoint of this ENRP server."

REFERENCE

  "RFC 5353 defines the ENRP protocol."
= { rserpoolENRPEntry 6 }

rserpoolENRPASAPAnnouncePort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-only STATUS current DESCRIPTION

  "The destination UDP port number to which ASAP multicast announce
  messages are sent."

REFERENCE

  "Section 3.2 of RFC 5351 explains the server-discovery mechanism
  using ASAP announces."
= { rserpoolENRPEntry 7 }

rserpoolENRPASAPAnnounceAddrType OBJECT-TYPE SYNTAX InetAddressType { ipv4(1), ipv6(2) } MAX-ACCESS read-only STATUS current

DESCRIPTION

  "The network-layer protocol over which ASAP multicast announce
  messages are sent."

REFERENCE

  "Section 3.2 of RFC 5351 explains the server-discovery mechanism
  using ASAP announces."
= { rserpoolENRPEntry 8 }

rserpoolENRPASAPAnnounceAddr OBJECT-TYPE SYNTAX InetAddress (SIZE(4|16)) MAX-ACCESS read-only STATUS current DESCRIPTION

  "The destination IP multicast address to which ASAP multicast
  announce messages are sent.  The type of this address is
  given in rserpoolENRPASAPAnnounceAddrType."

REFERENCE

  "Section 3.2 of RFC 5351 explains the server-discovery mechanism
  using ASAP announces."
= { rserpoolENRPEntry 9 }

rserpoolENRPENRPAnnouncePort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-only STATUS current DESCRIPTION

  "The destination UDP port number to which ENRP multicast announce
  messages are sent."

REFERENCE

  "Section 3.1 of RFC 5353 explains the ENRP multicast
  announce mechanism."
= { rserpoolENRPEntry 10 }

rserpoolENRPENRPAnnounceAddrType OBJECT-TYPE SYNTAX InetAddressType { ipv4(1), ipv6(2) } MAX-ACCESS read-only STATUS current DESCRIPTION

  "The network-layer protocol over which ENRP multicast announce
  messages are sent."

REFERENCE

  "Section 3.1 of RFC 5353 explains the ENRP multicast
  announce mechanism."
= { rserpoolENRPEntry 11 }

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

STATUS current DESCRIPTION

  "The destination multicast IP address to which ENRP multicast
  announce messages are sent.  The type of this address
  is given in rserpoolENRPENRPAnnounceAddrType."

REFERENCE

  "Section 3.1 of RFC 5353 explains the ENRP multicast
  announce mechanism."
= { rserpoolENRPEntry 12 }

-- ## Definition of the pool table ################################ rserpoolENRPPoolTable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolENRPPoolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "The table listing of pools."
= { rserpoolENRPServers 3 }

rserpoolENRPPoolEntry OBJECT-TYPE SYNTAX RserpoolENRPPoolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "The pool entry in the table listing of pools."

INDEX { rserpoolENRPIndex, rserpoolENRPPoolIndex }

= { rserpoolENRPPoolTable 1 }

RserpoolENRPPoolEntry ::= SEQUENCE { rserpoolENRPPoolIndex Unsigned32, rserpoolENRPPoolHandle RSerPoolPoolHandleTC }

rserpoolENRPPoolIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "An integer to uniquely identify a pool."
= { rserpoolENRPPoolEntry 1 }

rserpoolENRPPoolHandle OBJECT-TYPE SYNTAX RSerPoolPoolHandleTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The pool handle of this pool."

REFERENCE

  "Section 1.2 of RFC 3237 defines the term pool handle."
= { rserpoolENRPPoolEntry 2 }

-- ## Definition of the pool element table ######################## rserpoolENRPPoolElementTable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolENRPPoolElementEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "The table listing of pool elements."
= { rserpoolENRPServers 4 }

rserpoolENRPPoolElementEntry OBJECT-TYPE SYNTAX RserpoolENRPPoolElementEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A pool element in the table listing of pool elements."

INDEX {

  rserpoolENRPIndex,
  rserpoolENRPPoolIndex,
  rserpoolENRPPoolElementIndex }
= { rserpoolENRPPoolElementTable 1 }

RserpoolENRPPoolElementEntry ::= SEQUENCE { rserpoolENRPPoolElementIndex Unsigned32, rserpoolENRPPoolElementID RserpoolPoolElementIdentifierTC, rserpoolENRPASAPTransportPort InetPortNumber, rserpoolENRPUserTransportProto Unsigned32, rserpoolENRPUserTransportPort InetPortNumber, rserpoolENRPUserTransportUse RSerPoolTransportUseTypeTC, rserpoolENRPPolicyID RSerPoolPolicyIdentifierTC, rserpoolENRPPolicyDescription OCTET STRING, rserpoolENRPPolicyWeight RSerPoolPolicyWeightTC, rserpoolENRPPolicyLoad RSerPoolPolicyLoadTC, rserpoolENRPPolicyLoadDeg RSerPoolPolicyLoadTC, rserpoolENRPRegistrationLife TimeTicks, rserpoolENRPHomeENRPServer RSerPoolENRPServerIdentifierTC }

rserpoolENRPPoolElementIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current

DESCRIPTION

  "An integer to uniquely identify a pool element.  Note,
  that uniqueness of a pool element identifier in the pool
  is not enforced; therefore, this index is required here!"
={ rserpoolENRPPoolElementEntry 1 }

rserpoolENRPPoolElementID OBJECT-TYPE SYNTAX RserpoolPoolElementIdentifierTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The pool element identifier of this pool element."

REFERENCE

  "Section 2.2 of RFC 5351 explains the pool element identifier
  usage."
={ rserpoolENRPPoolElementEntry 2 }

rserpoolENRPASAPTransportPort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-only STATUS current DESCRIPTION

  "The SCTP port number of the ASAP endpoint of this pool
  element."

REFERENCE

  "Section 3.10 of RFC 5354 defines the ASAP Transport Parameter of
  which the port number is given here."
= { rserpoolENRPPoolElementEntry 3 }

rserpoolENRPUserTransportProto OBJECT-TYPE SYNTAX Unsigned32 (0..255) MAX-ACCESS read-only STATUS current DESCRIPTION

  "The transport protocol number of the service endpoint
  of this pool element."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the transport protocol number is given here."
= { rserpoolENRPPoolElementEntry 4 }

rserpoolENRPUserTransportPort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-only STATUS current DESCRIPTION

  "The transport protocol's port number of the service
  endpoint of this pool element."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the port number is given here."
= { rserpoolENRPPoolElementEntry 5 }

rserpoolENRPUserTransportUse OBJECT-TYPE SYNTAX RSerPoolTransportUseTypeTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The transport use of the service endpoint of this pool
  element."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the transport use is given here."
= { rserpoolENRPPoolElementEntry 6 }

rserpoolENRPPolicyID OBJECT-TYPE SYNTAX RSerPoolPolicyIdentifierTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The pool policy of this pool element."

REFERENCE

  "Section 3.8 of RFC 5354 defines the Member Selection Policy
  Parameter of which the policy identifier is given here."
= { rserpoolENRPPoolElementEntry 7 }

rserpoolENRPPolicyDescription OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION

  "The textual description of the pool policy of this pool
  element."
= { rserpoolENRPPoolElementEntry 8 }

rserpoolENRPPolicyWeight OBJECT-TYPE SYNTAX RSerPoolPolicyWeightTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The pool policy's weight parameter for this pool element."

REFERENCE

  "Section 3.8 of RFC 5354 defines the Member Selection Policy
  Parameter of which the policy's weight parameter is given here."
= { rserpoolENRPPoolElementEntry 9 }

rserpoolENRPPolicyLoad OBJECT-TYPE SYNTAX RSerPoolPolicyLoadTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The pool policy's load status for this pool element."

REFERENCE

  "Section 3.8 of RFC 5354 defines the Member Selection Policy
  Parameter of which the policy's load parameter is given here."
= { rserpoolENRPPoolElementEntry 10 }

rserpoolENRPPolicyLoadDeg OBJECT-TYPE SYNTAX RSerPoolPolicyLoadTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The pool policy's load degradation parameter for this pool
  element."

REFERENCE

  "Section 3.8 of RFC 5354 defines the Member Selection Policy
  Parameter of which the policy's load degradation parameter is
  given here."
= { rserpoolENRPPoolElementEntry 11 }

rserpoolENRPRegistrationLife OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION

  "The registration life of this pool element."
 REFERENCE
  "Section 3.10 of RFC 5354 defines the Registration Life."
= { rserpoolENRPPoolElementEntry 12 }

rserpoolENRPHomeENRPServer OBJECT-TYPE SYNTAX RSerPoolENRPServerIdentifierTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The ID of the Home ENRP server of this pool element."

REFERENCE

  "Section 3.10 of RFC 5354 defines the Home ENRP Server
  Identifier."
= { rserpoolENRPPoolElementEntry 13 }

-- ## Definition of the ASAP transport address list table ######### rserpoolENRPASAPAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolENRPASAPAddrTableEntry

MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A table listing of all IP addresses of the ASAP transport
  endpoint."

REFERENCE

  "Section 3.10 of RFC 5354 defines the ASAP Transport Parameter of
  which the addresses are listed in this table."
= { rserpoolENRPServers 5 }

rserpoolENRPASAPAddrTableEntry OBJECT-TYPE SYNTAX RserpoolENRPASAPAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "An IP address of the ASAP transport endpoint."

REFERENCE

  "Section 3.10 of RFC 5354 defines the ASAP Transport Parameter of
  which an address is contained by this entry."

INDEX {

  rserpoolENRPIndex,
  rserpoolENRPPoolIndex,
  rserpoolENRPPoolElementIndex,
  rserpoolENRPASAPAddrTableIndex }
= { rserpoolENRPASAPAddrTable 1 }

RserpoolENRPASAPAddrTableEntry ::= SEQUENCE { rserpoolENRPASAPAddrTableIndex Unsigned32, rserpoolENRPASAPL3Type InetAddressType, rserpoolENRPASAPL3Addr InetAddress }

rserpoolENRPASAPAddrTableIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A unique identifier for the IP address of an ASAP transport
  endpoint."
= { rserpoolENRPASAPAddrTableEntry 1 }

rserpoolENRPASAPL3Type OBJECT-TYPE SYNTAX InetAddressType { ipv4(1), ipv6(2) } MAX-ACCESS read-only STATUS current DESCRIPTION

  "The network-layer protocol (IPv4 or IPv6) of an IP address of
  an ASAP transport endpoint."

REFERENCE

  "Section 3.10 of RFC 5354 defines the ASAP Transport Parameter of
  which the network-layer protocol number is given here."
= { rserpoolENRPASAPAddrTableEntry 2 }

rserpoolENRPASAPL3Addr OBJECT-TYPE SYNTAX InetAddress (SIZE(4|16)) MAX-ACCESS read-only STATUS current DESCRIPTION

  "The IP address of an ASAP transport endpoint.  The type of
  this address is given in rserpoolENRPASAPL3Type."

REFERENCE

  "Section 3.10 of RFC 5354 defines the ASAP Transport Parameter of
  which the network-layer address (IPv4 or IPv6) is given here."
= { rserpoolENRPASAPAddrTableEntry 3 }

-- ## Definition of the user transport address list table ######### rserpoolENRPUserAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolENRPUserAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A table listing of all IP addresses of the user
  transport endpoint."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the addresses are listed in this table."
= { rserpoolENRPServers 6 }

rserpoolENRPUserAddrTableEntry OBJECT-TYPE SYNTAX RserpoolENRPUserAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "An IP address of the user transport endpoint."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which an address is contained by this entry."

INDEX {

  rserpoolENRPIndex,
  rserpoolENRPPoolIndex,
  rserpoolENRPPoolElementIndex,
  rserpoolENRPUserAddrTableIndex }
= { rserpoolENRPUserAddrTable 1 }

RserpoolENRPUserAddrTableEntry ::= SEQUENCE { rserpoolENRPUserAddrTableIndex Unsigned32, rserpoolENRPUserL3Type InetAddressType,

rserpoolENRPUserL3Addr InetAddress, rserpoolENRPUserL3Opaque RSerPoolOpaqueAddressTC }

rserpoolENRPUserAddrTableIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A unique identifier for the IP address of a user transport
  endpoint."
= { rserpoolENRPUserAddrTableEntry 1 }

rserpoolENRPUserL3Type OBJECT-TYPE SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } MAX-ACCESS read-only STATUS current DESCRIPTION

  "The network-layer protocol (IPv4 or IPv6) of an IP address
  of a user transport endpoint.  Set to unknown for an opaque
  address."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the network-layer protocol number is given here."
= { rserpoolENRPUserAddrTableEntry 2 }

rserpoolENRPUserL3Addr OBJECT-TYPE SYNTAX InetAddress (SIZE(0|4|16)) MAX-ACCESS read-only STATUS current DESCRIPTION

  "The IP address of a user transport endpoint.  The type of
  this address is given in rserpoolENRPUserL3Type."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the network-layer address (IPv4 or IPv6) is given here."
= { rserpoolENRPUserAddrTableEntry 3 }

rserpoolENRPUserL3Opaque OBJECT-TYPE SYNTAX RSerPoolOpaqueAddressTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The opaque address of a user transport endpoint."

REFERENCE

  "Section 3.16 of RFC 5354 defines the opaque transport address."
= { rserpoolENRPUserAddrTableEntry 4 }

-- ## Definition of ENRP address list table ####################### rserpoolENRPENRPAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolENRPENRPAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A table listing of all IP addresses of the ENRP
  transport endpoint."
= { rserpoolENRPServers 7 }

rserpoolENRPENRPAddrTableEntry OBJECT-TYPE SYNTAX RserpoolENRPENRPAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "An IP address of the ENRP transport endpoint."

INDEX {

  rserpoolENRPIndex,
  rserpoolENRPENRPAddrTableIndex }
= { rserpoolENRPENRPAddrTable 1 }

RserpoolENRPENRPAddrTableEntry ::= SEQUENCE { rserpoolENRPENRPAddrTableIndex Unsigned32, rserpoolENRPENRPL3Type InetAddressType, rserpoolENRPENRPL3Addr InetAddress }

rserpoolENRPENRPAddrTableIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A unique identifier for the IP address of an ENRP transport
  endpoint."
= { rserpoolENRPENRPAddrTableEntry 1 }

rserpoolENRPENRPL3Type OBJECT-TYPE SYNTAX InetAddressType { ipv4(1), ipv6(2) } MAX-ACCESS read-only STATUS current DESCRIPTION

  "The network-layer protocol (IPv4 or IPv6) of an IP address of
  an ENRP transport endpoint."

REFERENCE

  "RFC 5353 defines the ENRP protocol."
= { rserpoolENRPENRPAddrTableEntry 2 }

rserpoolENRPENRPL3Addr OBJECT-TYPE SYNTAX InetAddress (SIZE(4|16)) MAX-ACCESS read-only STATUS current DESCRIPTION

  "The IP address of an ENRP transport endpoint.  The type of
  this address is given in rserpoolENRPENRPL3Type."

REFERENCE

  "RFC 5353 defines the ENRP protocol."
= { rserpoolENRPENRPAddrTableEntry 3 }

-- ## Definition of peer table #################################### rserpoolENRPPeerTable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolENRPPeerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "The table listing of a peer table."
= { rserpoolENRPServers 8 }

rserpoolENRPPeerEntry OBJECT-TYPE SYNTAX RserpoolENRPPeerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A peer entry in the table listing of a peer table."

INDEX { rserpoolENRPPeerIndex }

= { rserpoolENRPPeerTable 1 }

RserpoolENRPPeerEntry ::= SEQUENCE { rserpoolENRPPeerIndex Unsigned32, rserpoolENRPPeerIdentifier RSerPoolENRPServerIdentifierTC, rserpoolENRPPeerPort InetPortNumber, rserpoolENRPPeerLastHeard TimeTicks }

rserpoolENRPPeerIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A unique identifier for a peer entry in the table
  listing of a peer table."
= { rserpoolENRPPeerEntry 1 }

rserpoolENRPPeerIdentifier OBJECT-TYPE SYNTAX RSerPoolENRPServerIdentifierTC MAX-ACCESS read-only STATUS current

DESCRIPTION

  "The ENRP identifier of this peer."

REFERENCE

  "RFC 5353 explains the usage of the ENRP server identifier."
= { rserpoolENRPPeerEntry 2 }

rserpoolENRPPeerPort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-only STATUS current DESCRIPTION

  "The SCTP port number of the ENRP transport endpoint of
  this peer."

REFERENCE

  "RFC 5353 defines the ENRP protocol."
= { rserpoolENRPPeerEntry 3 }

rserpoolENRPPeerLastHeard OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION

  "The time since the reception of the last ENRP Presence
  message of this peer."

REFERENCE

  "Section 4.1 of RFC 5353 defines the last heard value."
= { rserpoolENRPPeerEntry 4 }

-- ## Definition of peer address list table ####################### rserpoolENRPPeerAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolENRPPeerAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A table listing of the peer endpoint addresses."
= { rserpoolENRPServers 9 }

rserpoolENRPPeerAddrTableEntry OBJECT-TYPE SYNTAX RserpoolENRPPeerAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A table listing of all IP addresses of the ENRP
  transport endpoint of a peer referenced by rserpoolENRPPeerIndex."

INDEX {

  rserpoolENRPPeerIndex,
  rserpoolENRPPeerAddrTableIndex }
= { rserpoolENRPPeerAddrTable 1 }

RserpoolENRPPeerAddrTableEntry ::= SEQUENCE { rserpoolENRPPeerAddrTableIndex Unsigned32, rserpoolENRPPeerL3Type InetAddressType, rserpoolENRPPeerL3Addr InetAddress }

rserpoolENRPPeerAddrTableIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A unique identifier for the IP address of a peer ENRP
  transport endpoint."
= { rserpoolENRPPeerAddrTableEntry 1 }

rserpoolENRPPeerL3Type OBJECT-TYPE SYNTAX InetAddressType { ipv4(1), ipv6(2) } MAX-ACCESS read-only STATUS current DESCRIPTION

  "The network-layer protocol (IPv4 or IPv6) of an IP address
  of a peer ENRP transport endpoint."

REFERENCE

  "RFC 5353 defines the ENRP protocol."
= { rserpoolENRPPeerAddrTableEntry 2 }

rserpoolENRPPeerL3Addr OBJECT-TYPE SYNTAX InetAddress (SIZE(4|16)) MAX-ACCESS read-only STATUS current DESCRIPTION

  "The IP address of a peer ENRP transport endpoint.  The type
  of this address is given in rserpoolENRPPeerL3Type."

REFERENCE

  "RFC 5353 defines the ENRP protocol."
= { rserpoolENRPPeerAddrTableEntry 3 }

-- ################################################################ -- #### Pool Elements Section #### -- ################################################################

-- ## Definition of the pool element table ######################## rserpoolPETable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolPEEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "The table listing of pool elements."
= { rserpoolPoolElements 1 }

rserpoolPEEntry OBJECT-TYPE SYNTAX RserpoolPEEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A pool element in the table listing of pool elements."

INDEX { rserpoolPEIndex }

= { rserpoolPETable 1 }

RserpoolPEEntry ::= SEQUENCE { rserpoolPEIndex Unsigned32, rserpoolPEOperationScope RSerPoolOperationScopeTC, rserpoolPEPoolHandle RSerPoolPoolHandleTC, rserpoolPEIdentifier RserpoolPoolElementIdentifierTC, rserpoolPEDescription OCTET STRING, rserpoolPEUptime TimeTicks, rserpoolPEASAPTransportPort InetPortNumber, rserpoolPEUserTransportProto Unsigned32, rserpoolPEUserTransportPort InetPortNumber, rserpoolPEUserTransportUse RSerPoolTransportUseTypeTC, rserpoolPEPolicyID RSerPoolPolicyIdentifierTC, rserpoolPEPolicyDescription OCTET STRING, rserpoolPEPolicyWeight RSerPoolPolicyWeightTC, rserpoolPEPolicyLoad RSerPoolPolicyLoadTC, rserpoolPEPolicyLoadDeg RSerPoolPolicyLoadTC, rserpoolPERegistrationLife TimeTicks, rserpoolPEHomeENRPServer RSerPoolENRPServerIdentifierTC }

rserpoolPEIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "An integer to uniquely identify a pool element.  Note,
  that uniqueness of a pool element identifier in the pool
  is not enforced; therefore, this index is required here!"
={ rserpoolPEEntry 1 }

rserpoolPEOperationScope OBJECT-TYPE SYNTAX RSerPoolOperationScopeTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The operation scope of this pool element."

REFERENCE

  "Section 1.2 of RFC 3237 defines the term operation scope."
= { rserpoolPEEntry 2 }

rserpoolPEPoolHandle OBJECT-TYPE SYNTAX RSerPoolPoolHandleTC MAX-ACCESS read-write STATUS current DESCRIPTION

  "The pool handle of this pool element.  Changing this object
  will update the pool element's pool handle and result in a
  re-registration.
  This object SHOULD be maintained in a persistent manner."

REFERENCE

  "Section 1.2 of RFC 3237 defines the term pool handle."
={ rserpoolPEEntry 3 }

rserpoolPEIdentifier OBJECT-TYPE SYNTAX RserpoolPoolElementIdentifierTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The pool element identifier of this pool element."

REFERENCE

  "Section 3.10 of RFC 5354 defines the pool element identifier."
={ rserpoolPEEntry 4 }

rserpoolPEDescription OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-write STATUS current DESCRIPTION

  "A textual description of this pool element, e.g., its location
  and a contact address of its administrator.
  This object SHOULD be maintained in a persistent manner."
= { rserpoolPEEntry 5 }

rserpoolPEUptime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION

  "The ENRP service uptime of this pool element."
= { rserpoolPEEntry 6 }

rserpoolPEASAPTransportPort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-only STATUS current DESCRIPTION

  "The SCTP port number of the ASAP endpoint of this pool element."

REFERENCE

  "Section 3.10 of RFC 5354 defines the ASAP Transport Parameter of
  which the port number is given here."
= { rserpoolPEEntry 7 }

rserpoolPEUserTransportProto OBJECT-TYPE SYNTAX Unsigned32 (0..255) MAX-ACCESS read-only STATUS current DESCRIPTION

  "The transport protocol number of the service endpoint
  of this pool element."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the transport protocol number is given here."
= { rserpoolPEEntry 8 }

rserpoolPEUserTransportPort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-only STATUS current DESCRIPTION

  "The transport protocol's port number of the service
  endpoint of this pool element."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the port number is given here."
= { rserpoolPEEntry 9 }

rserpoolPEUserTransportUse OBJECT-TYPE SYNTAX RSerPoolTransportUseTypeTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The transport use of the service endpoint of this pool element."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the transport use is given here."
= { rserpoolPEEntry 10 }

rserpoolPEPolicyID OBJECT-TYPE SYNTAX RSerPoolPolicyIdentifierTC MAX-ACCESS read-write STATUS current DESCRIPTION

  "The pool policy of this pool element.  Changing this object
  will update the pool element's policy and result in a
  re-registration.
  This object SHOULD be maintained in a persistent manner."

REFERENCE

  "Section 3.8 of RFC 5354 defines the Member Selection Policy
  Parameter of which the policy identifier is given here."
= { rserpoolPEEntry 11 }

rserpoolPEPolicyDescription OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-write STATUS current DESCRIPTION

  "The textual description of the pool policy of this pool element.
  This object SHOULD be maintained in a persistent manner."
= { rserpoolPEEntry 12 }

rserpoolPEPolicyWeight OBJECT-TYPE SYNTAX RSerPoolPolicyWeightTC MAX-ACCESS read-write STATUS current DESCRIPTION

  "The pool policy's weight parameter for this pool element.
  Changing this object will update the pool element's policy
  weight setting and result in a re-registration.
  This object SHOULD be maintained in a persistent manner."

REFERENCE

  "Section 3.8 of RFC 5354 defines the Member Selection Policy
  Parameter of which the policy's weight parameter is given here."
= { rserpoolPEEntry 13 }

rserpoolPEPolicyLoad OBJECT-TYPE SYNTAX RSerPoolPolicyLoadTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The pool policy's load status for this pool element."

REFERENCE

  "Section 3.8 of RFC 5354 defines the Member Selection Policy
  Parameter of which the policy's load parameter is given here."
= { rserpoolPEEntry 14 }

rserpoolPEPolicyLoadDeg OBJECT-TYPE SYNTAX RSerPoolPolicyLoadTC MAX-ACCESS read-write STATUS current DESCRIPTION

  "The pool policy's load degradation parameter for this pool
  element.  Changing this object will update the pool element's
  load degradation setting and result in a re-registration.
  This object SHOULD be maintained in a persistent manner."

REFERENCE

  "Section 3.8 of RFC 5354 defines the Member Selection Policy
  Parameter of which the policy's load degradation parameter is
  given here."
= { rserpoolPEEntry 15 }

rserpoolPERegistrationLife OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-write STATUS current DESCRIPTION

  "The registration life of this pool element.  Changing this
  object will update the pool element's lifetime setting and
  result in a re-registration.
  This object SHOULD be maintained in a persistent manner."

REFERENCE

  "Section 3.10 of RFC 5354 defines the Registration Life."
= { rserpoolPEEntry 16 }

rserpoolPEHomeENRPServer OBJECT-TYPE SYNTAX RSerPoolENRPServerIdentifierTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The ID of the Home ENRP server of this pool element."

REFERENCE

  "Section 3.10 of RFC 5354 defines the Home ENRP Server
  Identifier."
= { rserpoolPEEntry 17 }

-- ## Definition of the ASAP transport address list table ######### rserpoolPEASAPAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolPEASAPAddrTableEntry MAX-ACCESS not-accessible STATUS current

DESCRIPTION

  "A table listing of all IP addresses of the ASAP transport
  endpoint."

REFERENCE

  "Section 3.10 of RFC 5354 defines the ASAP Transport Parameter of
  which the addresses are listed in this table."
= { rserpoolPoolElements 2 }

rserpoolPEASAPAddrTableEntry OBJECT-TYPE SYNTAX RserpoolPEASAPAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "An IP address of the ASAP transport endpoint."
 REFERENCE
  "Section 3.10 of RFC 5354 defines the ASAP Transport Parameter of
  which an address is contained by this entry."
 INDEX {
  rserpoolPEIndex,
  rserpoolPEASAPAddrTableIndex }
= { rserpoolPEASAPAddrTable 1 }

RserpoolPEASAPAddrTableEntry ::= SEQUENCE { rserpoolPEASAPAddrTableIndex Unsigned32, rserpoolPEASAPL3Type InetAddressType, rserpoolPEASAPL3Addr InetAddress }

rserpoolPEASAPAddrTableIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A unique identifier for the IP address of an ASAP transport
  endpoint."
= { rserpoolPEASAPAddrTableEntry 1 }

rserpoolPEASAPL3Type OBJECT-TYPE SYNTAX InetAddressType { ipv4(1), ipv6(2) } MAX-ACCESS read-only STATUS current DESCRIPTION

  "The network-layer protocol (IPv4 or IPv6) of an IP address of
  an ASAP transport endpoint."

REFERENCE

  "Section 3.10 of RFC 5354 defines the ASAP Transport Parameter of
  which the network-layer protocol number is given here."
= { rserpoolPEASAPAddrTableEntry 2 }

rserpoolPEASAPL3Addr OBJECT-TYPE SYNTAX InetAddress (SIZE(4|16)) MAX-ACCESS read-only STATUS current DESCRIPTION

  "The IP address of an ASAP transport endpoint.  The type of
  this address is given in rserpoolPEASAPL3Type."

REFERENCE

  "Section 3.10 of RFC 5354 defines the ASAP Transport Parameter of
  which the network-layer address (IPv4 or IPv6) is given here."
= { rserpoolPEASAPAddrTableEntry 3 }

-- ## Definition of the user transport address list table ######### rserpoolPEUserAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolPEUserAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A table listing of all IP addresses of the user
  transport endpoint."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the addresses are listed in this table."
= { rserpoolPoolElements 6 }

rserpoolPEUserAddrTableEntry OBJECT-TYPE SYNTAX RserpoolPEUserAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "An IP address of the user transport endpoint."
 REFERENCE
  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which an address is contained by this entry."

INDEX {

  rserpoolPEIndex,
  rserpoolPEUserAddrTableIndex }
= { rserpoolPEUserAddrTable 1 }

RserpoolPEUserAddrTableEntry ::= SEQUENCE { rserpoolPEUserAddrTableIndex Unsigned32, rserpoolPEUserL3Type InetAddressType, rserpoolPEUserL3Addr InetAddress, rserpoolPEUserL3Opaque RSerPoolOpaqueAddressTC }

rserpoolPEUserAddrTableIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible

STATUS current DESCRIPTION

  "A unique identifier for the IP address of a user transport
  endpoint."
= { rserpoolPEUserAddrTableEntry 1 }

rserpoolPEUserL3Type OBJECT-TYPE SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) } MAX-ACCESS read-only STATUS current DESCRIPTION

  "The network-layer protocol of an IP address of a user transport
  endpoint.  Set to unknown for opaque address."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the network-layer protocol number is given here."
= { rserpoolPEUserAddrTableEntry 2 }

rserpoolPEUserL3Addr OBJECT-TYPE SYNTAX InetAddress (SIZE(0|4|16)) MAX-ACCESS read-only STATUS current DESCRIPTION

  "The IP address of a user transport endpoint.  The type of
  this address is given in rserpoolPEUserL3Addr."

REFERENCE

  "Section 3.10 of RFC 5354 defines the User Transport Parameter of
  which the network-layer address (IPv4 or IPv6) is given here."
= { rserpoolPEUserAddrTableEntry 3 }

rserpoolPEUserL3Opaque OBJECT-TYPE SYNTAX RSerPoolOpaqueAddressTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The opaque address of a user transport endpoint."

REFERENCE

  "Section 3.16 of RFC 5354 defines the opaque transport address."
= { rserpoolPEUserAddrTableEntry 4 }

-- ################################################################ -- #### Pool Users Section #### -- ################################################################

-- ## Definition of the pool user table ########################### rserpoolPUTable OBJECT-TYPE SYNTAX SEQUENCE OF RserpoolPUEntry MAX-ACCESS not-accessible

STATUS current DESCRIPTION

  "The table listing of pool users."
= { rserpoolPoolUsers 1 }

rserpoolPUEntry OBJECT-TYPE SYNTAX RserpoolPUEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "A pool user in the table listing of pool users."

INDEX { rserpoolPUIndex }

= { rserpoolPUTable 1 }

RserpoolPUEntry ::= SEQUENCE { rserpoolPUIndex Unsigned32, rserpoolPUOperationScope RSerPoolOperationScopeTC, rserpoolPUPoolHandle RSerPoolPoolHandleTC, rserpoolPUDescription OCTET STRING, rserpoolPUUptime TimeTicks }

rserpoolPUIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION

  "An integer to uniquely identify a pool user."
= { rserpoolPUEntry 1 }

rserpoolPUOperationScope OBJECT-TYPE SYNTAX RSerPoolOperationScopeTC MAX-ACCESS read-only STATUS current DESCRIPTION

  "The operation scope of this pool user."

REFERENCE

  "Section 1.2 of RFC 3237 defines the term operation scope."
= { rserpoolPUEntry 2 }

rserpoolPUPoolHandle OBJECT-TYPE SYNTAX RSerPoolPoolHandleTC MAX-ACCESS read-write STATUS current

DESCRIPTION

  "The pool handle of this pool user.  Changing this object
  will update the pool user's pool handle for all future
  sessions.
  This object SHOULD be maintained in a persistent manner."

REFERENCE

  "Section 1.2 of RFC 3237 defines the term pool handle."
={ rserpoolPUEntry 3 }

rserpoolPUDescription OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-write STATUS current DESCRIPTION

  "A textual description of this pool user, e.g., its location
  and a contact address of its administrator.
  This object SHOULD be maintained in a persistent manner."
= { rserpoolPUEntry 4 }

rserpoolPUUptime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION

  "The ENRP service uptime of this pool user."
= { rserpoolPUEntry 5 }

-- ## MIB conformance and compliance ############################## rserpoolMIBCompliances OBJECT IDENTIFIER ::= { rserpoolMIBConformance 1 }

rserpoolMIBGroups OBJECT IDENTIFIER ::= { rserpoolMIBConformance 2 }

rserpoolMIBCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION

  "The compliance statement for SNMP entities that implement
  RSerPool."

MODULE MANDATORY-GROUPS {

  rserpoolENRPGroup,
  rserpoolPEGroup,
  rserpoolPUGroup }
= { rserpoolMIBCompliances 1 }

rserpoolENRPGroup OBJECT-GROUP OBJECTS {

  rserpoolENRPOperationScope,
  rserpoolENRPIdentifier,
  rserpoolENRPDescription,
  rserpoolENRPUptime,
  rserpoolENRPPort,
  rserpoolENRPASAPAnnouncePort,
  rserpoolENRPASAPAnnounceAddr,
  rserpoolENRPASAPAnnounceAddrType,
  rserpoolENRPENRPAnnounceAddrType,
  rserpoolENRPENRPAnnouncePort,
  rserpoolENRPENRPAnnounceAddr,
  rserpoolENRPPoolHandle,
  rserpoolENRPPoolElementID,
  rserpoolENRPASAPTransportPort,
  rserpoolENRPUserTransportProto,
  rserpoolENRPUserTransportUse,
  rserpoolENRPUserTransportPort,
  rserpoolENRPPolicyID,
  rserpoolENRPPolicyDescription,
  rserpoolENRPPolicyWeight,
  rserpoolENRPPolicyLoad,
  rserpoolENRPPolicyLoadDeg,
  rserpoolENRPRegistrationLife,
  rserpoolENRPHomeENRPServer,
  rserpoolENRPASAPL3Type,
  rserpoolENRPASAPL3Addr,
  rserpoolENRPUserL3Type,
  rserpoolENRPUserL3Addr,
  rserpoolENRPUserL3Opaque,
  rserpoolENRPENRPL3Type,
  rserpoolENRPENRPL3Addr,
  rserpoolENRPPeerIdentifier,
  rserpoolENRPPeerPort,
  rserpoolENRPPeerLastHeard,
  rserpoolENRPPeerL3Type,
  rserpoolENRPPeerL3Addr }

STATUS current DESCRIPTION

  "The group contains all ENRP server instances
  running on the system"
= { rserpoolMIBGroups 1 }

rserpoolPEGroup OBJECT-GROUP OBJECTS {

  rserpoolPEOperationScope,
  rserpoolPEPoolHandle,
  rserpoolPEIdentifier,
  rserpoolPEDescription,
  rserpoolPEUptime,
  rserpoolPEASAPTransportPort,
  rserpoolPEUserTransportProto,
  rserpoolPEUserTransportPort,
  rserpoolPEUserTransportUse,
  rserpoolPEPolicyID,
  rserpoolPEPolicyDescription,
  rserpoolPEPolicyWeight,
  rserpoolPEPolicyLoad,
  rserpoolPEPolicyLoadDeg,
  rserpoolPERegistrationLife,
  rserpoolPEHomeENRPServer,
  rserpoolPEASAPL3Type,
  rserpoolPEASAPL3Addr,
  rserpoolPEUserL3Type,
  rserpoolPEUserL3Addr,
  rserpoolPEUserL3Opaque }

STATUS current DESCRIPTION

  "The group contains all pool element instances
  running on the system"
= { rserpoolMIBGroups 2 }

rserpoolPUGroup OBJECT-GROUP OBJECTS { rserpoolPUOperationScope,

  rserpoolPUPoolHandle,
  rserpoolPUDescription,
  rserpoolPUUptime }

STATUS current DESCRIPTION

  "The group contains all pool user instances
  running on the system"
= { rserpoolMIBGroups 3 }

END

Operational Considerations

The RSerPool MIB is an Experimental track MIB module, since the RSerPool documents are Experimental RFCs.

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:

  rserpoolENRPDescription (textual description change)
  rserpoolPEPoolHandle (pool handle of pool element change, similar
  to ASAP)
  rserpoolPEDescription (textual description change)
  rserpoolPEPolicyID (pool element ID change, similar to ASAP)
  rserpoolPEPolicyDescription (textual description change)
  rserpoolPEPolicyWeight (policy weight change, similar to ASAP)
  rserpoolPEPolicyLoadDeg (policy load degradation change, similar
  to ASAP)
  rserpoolPERegistrationLife (registration lifetime change, similar
  to ASAP)
  rserpoolPUPoolHandle (pool handle of accessed pool change, similar
  to ASAP)
  rserpoolPUDescription (textual description change)

The security implications of changing these items are similar to changes via ASAP; the corresponding security implications are described in the threats document RFC5355. Modifying the textual descriptions of components may result in wrong administrator decisions upon malicious information.

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. Read access reveals the same information which is also available by ASAP and ENRP access. The security implications of these two protocols are explained in detail by the threats document RFC5355.

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.

IANA Considerations

The MIB module in this document uses the following IANA-assigned OBJECT IDENTIFIER values recorded in the SMI Numbers registry:

Descriptor OBJECT IDENTIFIER Value


-----------------------

rserpoolMIB { experimental 125 }

10. Acknowledgments

The authors would like to express a special note of thanks to Phillip Conrad and Kevin Pinzhoffer for their efforts in the early formation of this document. Furthermore, the authors would like to thank Bert Wijnen and Dan Romascanu for their valuable comments on this document. Finally, the authors would like to thank Nihad Cosic, Dirk Hoffstadt, Michael Kohnen, Jobin Pulinthanath, Randall Stewart, Michael Tuexen, and Xing Zhou for their support.

11. References

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.

RFC4001 Daniele, M., Haberman, B., Routhier, S., and J.

               Schoenwaelder, "Textual Conventions for Internet
               Network Addresses", RFC 4001, February 2005.

RFC5352 Stewart, R., Xie, Q., Stillman, M., and M. Tuexen,

               "Aggregate Server Access Protocol (ASAP)", RFC 5352,
               September 2008.

RFC5353 Xie, Q., Stewart, R., Stillman, M., Tuexen, M., and

               A. Silverton, "Endpoint Handlespace Redundancy
               Protocol (ENRP)", RFC 5353, September 2008.

RFC5354 Stewart, R., Xie, Q., Stillman, M., and M. Tuexen,

               "Aggregate Server Access Protocol (ASAP) and Endpoint
               Handlespace Redundancy Protocol (ENRP) Parameters",
               RFC 5354, September 2008.

RFC5356 Dreibholz, T. and M. Tuexen, "Reliable Server Pooling

               Policies", RFC 5356, September 2008.

11.2. Informative References

RFC3237 Tuexen, M., Xie, Q., Stewart, R., Shore, M., Ong, L.,

               Loughney, J., and M. Stillman, "Requirements for
               Reliable Server Pooling", RFC 3237, January 2002.

RFC3410 Case, J., Mundy, R., Partain, D., and B. Stewart,

               "Introduction and Applicability Statements for
               Internet-Standard Management Framework", RFC 3410,
               December 2002.

RFC5351 Lei, P., Ong, L., Tuexen, M., and T. Dreibholz, "An

               Overview of Reliable Server Pooling Protocols",
               RFC 5351, September 2008.

RFC5355 Stillman, M., Gopal, R., Guttman, E., Sengodan, S.,

               and M. Holdrege, "Threats Introduced by Reliable
               Server Pooling (RSerPool) and Requirements for
               Security in Response to Threats", RFC 5355,
               September 2008.

[Dre2006] Dreibholz, T., "Reliable Server Pooling --

               Evaluation, Optimization and Extension of a Novel
               IETF Architecture", Ph.D. Thesis University of
               Duisburg-Essen, Faculty of Economics, Institute for
               Computer Science and Business Information Systems,
               March 2007, <http://duepublico.uni-duisburg-essen.de/
               servlets/DerivateServlet/Derivate-16326/
               Dre2006-final.pdf>.

[LCN2005] Dreibholz, T. and E. Rathgeb, "On the Performance of

               Reliable Server Pooling Systems", Proceedings of the
               30th IEEE Local Computer Networks Conference,
               November 2005.

[IJHIT2008] Dreibholz, T. and E. Rathgeb, "An Evaluation of the

               Pool Maintenance Overhead in Reliable Server Pooling
               Systems", International Journal of Hybrid Information
               Technology (IJHIT) Volume 1, Number 2, April 2008.

[RSerPoolPage] Dreibholz, T., "Thomas Dreibholz's RSerPool Page",

               <http://tdrwww.iem.uni-due.de/dreibholz/rserpool/>.

[SNMPMIBS] Perkins, D. and E. McGinnis, "Understanding SNMP

               MIBs", 1997.

Authors' Addresses

Thomas Dreibholz University of Duisburg-Essen, Institute for Experimental Mathematics Ellernstrasse 29 45326 Essen, Nordrhein-Westfalen Germany

Phone: +49-201-1837637 Fax: +49-201-1837673 EMail: [email protected] URI: http://www.iem.uni-due.de/~dreibh/

Jaiwant Mulik Delaware State University CIS Department Room 306A, Science Center North 1200 N. DuPont Hwy Dover, DE 19904 USA

Phone: +1-302-857-7910 Fax: +1-302-857-6552 EMail: [email protected] URI: http://netlab.cis.desu.edu