Network Working Group T. Dreibholz Internet-Draft University of Duisburg-Essen Intended status: Experimental J. Mulik Expires: July 26, 2009 Delaware State University January 22, 2009 Reliable Server Pooling: Management Information Base using SMIv2 draft-ietf-rserpool-mib-10.txt Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. 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." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on July 26, 2009. 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 (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. Abstract RSerPool [RFC5351] is a framework to provide reliable server pooling. Dreibholz & Mulik Expires July 26, 2009 [Page 1] Internet-Draft RSerPool MIB January 2009 This document defines a SMIv2 compliant Management Information Base (MIB) providing access to managed objects in an RSerPool implementation. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. The Reliable Server Pooling (RSerPool) Framework . . . . . . . 3 3. The Internet-Standard Management Framework . . . . . . . . . . 3 4. Structure of the MIB . . . . . . . . . . . . . . . . . . . . . 3 4.1. Access to managed objects on ENRP servers . . . . . . . . 10 4.2. Access to managed objects on Pool Elements . . . . . . . . 11 4.3. Access to managed objects on Pool Users . . . . . . . . . 11 5. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 11 6. Security Considerations . . . . . . . . . . . . . . . . . . . 37 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 37 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 37 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 38 9.1. Normative References . . . . . . . . . . . . . . . . . . . 38 9.2. Informative References . . . . . . . . . . . . . . . . . . 38 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 39 Dreibholz & Mulik Expires July 26, 2009 [Page 2] Internet-Draft RSerPool MIB January 2009 1. Introduction This memo defines a Management Information Base (MIB) module which describes managed objects for RSerPool implementations. 2. 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]. 3. 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]. 4. Structure of the MIB The following diagram illustrates the structure of the MIB. Structure of MIB +--rserpoolMIB(?????) | +--enrpServers(1) | | | +--enrpServerTable(1) | | | | | +--enrpServerEntry(1) | | | Index: enrpServerIndex | | | | | +-- ---- Unsigned enrpServerIndex(1) Dreibholz & Mulik Expires July 26, 2009 [Page 3] Internet-Draft RSerPool MIB January 2009 | | | Range: 1..4294967295 | | +-- -R-- String enrpServerOperationScope(2) | | | Textual Convention: OperationScopeType | | +-- -R-- Unsigned enrpServerIdentifier(3) | | | Textual Convention: ENRPServerIdentifierType | | | Range: 1..4294967295 | | +-- -RW- String enrpServerDescription(4) | | | Textual Convention: DescriptionType | | | Size: 0..4095 | | +-- -R-- TimeTicks enrpServerUptime(5) | | +-- -R-- Unsigned enrpServerPort(6) | | | Range: 1..65535 | | +-- -R-- Unsigned enrpServerASAPAnnouncePort(7) | | | Range: 1..65535 | | +-- -R-- EnumVal enrpServerASAPAnnounceAddrType(8) | | | Textual Convention: InetAddressType | | | Values: unknown(0), ipv4(1), ipv6(2), ipv4z(3), | | | ipv6z(4), dns(16) | | +-- -R-- String enrpServerASAPAnnounceAddr(9) | | | Textual Convention: InetAddress | | | Size: 0..255 | | +-- -R-- Unsigned enrpServerENRPAnnouncePort(10) | | | Range: 1..65535 | | +-- -R-- EnumVal enrpServerENRPAnnounceAddrType(11) | | | Textual Convention: InetAddressType | | | Values: unknown(0), ipv4(1), ipv6(2), ipv4z(3), | | | ipv6z(4), dns(16) | | +-- -R-- String enrpServerENRPAnnounceAddr(12) | | Textual Convention: InetAddress | | Size: 0..255 | | | +--enrpServerPoolTable(3) | | | | | +--enrpServerPoolEntry(1) | | | Index: enrpServerIndex, enrpServerPoolIndex | | | | | +-- ---- Unsigned enrpServerPoolIndex(1) | | | Range: 1..4294967295 | | +-- -R-- String enrpServerPoolHandle(2) | | Textual Convention: PoolHandleType | | | +--enrpServerPoolElementTable(4) | | | | | +--enrpServerPoolElementEntry(1) | | | Index: enrpServerIndex, enrpServerPoolIndex, | | | enrpServerPoolElementIndex | | | | | +-- ---- Unsigned enrpServerPoolElementIndex(1) Dreibholz & Mulik Expires July 26, 2009 [Page 4] Internet-Draft RSerPool MIB January 2009 | | | Range: 1..4294967295 | | +-- -R-- Unsigned enrpServerPoolElementIdentifier(2) | | | Textual Convention: PoolElementIdentifierType | | | Range: 1..4294967295 | | +-- -R-- Unsigned enrpServerASAPTransportPort(3) | | | Range: 1..65535 | | +-- -R-- Unsigned enrpServerUserTransportProtocol(4) | | | Range: 0..255 | | +-- -R-- Unsigned enrpServerUserTransportPort(5) | | | Range: 1..65535 | | +-- -R-- EnumVal enrpServerUserTransportUse(6) | | | Textual Convention: TransportUseType | | | Values: dataOnly(0), dataPlusControl(1) | | +-- -R-- Unsigned enrpServerPolicyID(7) | | | Textual Convention: PolicyIDType | | | Range: 1..4294967295 | | +-- -R-- String enrpServerPolicyDescription(8) | | | Textual Convention: DescriptionType | | | Size: 0..4095 | | +-- -R-- Unsigned enrpServerPolicyWeight(9) | | | Textual Convention: PolicyWeightType | | | Range: 0..4294967295 | | +-- -R-- Unsigned enrpServerPolicyLoad(10) | | | Textual Convention: PolicyLoadType | | | Range: 0..4294967295 | | +-- -R-- Unsigned enrpServerPolicyLoadDegradation(11) | | | Textual Convention: PolicyLoadType | | | Range: 0..4294967295 | | +-- -R-- TimeTicks enrpServerRegistrationLife(12) | | +-- -R-- Unsigned enrpServerHomeENRPServer(13) | | Textual Convention: ENRPServerIdentifierType | | Range: 1..4294967295 | | | +--enrpServerASAPAddrTable(5) | | | | | +--enrpServerASAPAddrTableEntry(1) | | | Index: enrpServerIndex, enrpServerPoolIndex, | | | enrpServerPoolElementIndex, | | | enrpServerASAPAddrTableIndex | | | | | +-- ---- Unsigned enrpServerASAPAddrTableIndex(1) | | | Range: 1..4294967295 | | +-- -R-- EnumVal enrpServerASAPL3Proto(2) | | | Textual Convention: InetAddressType | | | Values: unknown(0), ipv4(1), ipv6(2), ipv4z(3), | | | ipv6z(4), dns(16) | | +-- -R-- String enrpServerASAPL3Addr(3) | | Textual Convention: InetAddress Dreibholz & Mulik Expires July 26, 2009 [Page 5] Internet-Draft RSerPool MIB January 2009 | | Size: 0..255 | | | +--enrpServerUserAddrTable(6) | | | | | +--enrpServerUserAddrTableEntry(1) | | | Index: enrpServerIndex, enrpServerPoolIndex, | | | enrpServerPoolElementIndex, | | | enrpServerUserAddrTableIndex | | | | | +-- ---- Unsigned enrpServerUserAddrTableIndex(1) | | | Range: 1..4294967295 | | +-- -R-- EnumVal enrpServerUserL3Proto(2) | | | Textual Convention: InetAddressType | | | Values: unknown(0), ipv4(1), ipv6(2), ipv4z(3), | | | ipv6z(4), dns(16) | | +-- -R-- String enrpServerUserL3Addr(3) | | | Textual Convention: InetAddress | | | Size: 0..255 | | +-- -R-- String enrpServerUserL3Opaque(4) | | Textual Convention: OpaqueAddressType | | | +--enrpServerENRPAddrTable(7) | | | | | +--enrpServerENRPAddrTableEntry(1) | | | Index: enrpServerIndex, enrpServerENRPAddrTableIndex | | | | | +-- ---- Unsigned enrpServerENRPAddrTableIndex(1) | | | Range: 1..4294967295 | | +-- -R-- EnumVal enrpServerENRPL3Proto(2) | | | Textual Convention: InetAddressType | | | Values: unknown(0), ipv4(1), ipv6(2), ipv4z(3), | | | ipv6z(4), dns(16) | | +-- -R-- String enrpServerENRPL3Addr(3) | | Textual Convention: InetAddress | | Size: 0..255 | | | +--enrpServerPeerTable(8) | | | | | +--enrpServerPeerEntry(1) | | | Index: enrpServerPeerIndex | | | | | +-- ---- Unsigned enrpServerPeerIndex(1) | | | Range: 1..4294967295 | | +-- -R-- Unsigned enrpServerPeerIdentifier(2) | | +-- -R-- Unsigned enrpServerPeerPort(3) | | | Range: 1..65535 | | +-- -R-- TimeTicks enrpServerPeerLastHeard(4) | | Dreibholz & Mulik Expires July 26, 2009 [Page 6] Internet-Draft RSerPool MIB January 2009 | +--enrpServerPeerAddrTable(9) | | | +--enrpServerPeerAddrTableEntry(1) | | Index: enrpServerPeerIndex, enrpServerPeerAddrTableIndex | | | +-- ---- Unsigned enrpServerPeerAddrTableIndex(1) | | Range: 1..4294967295 | +-- -R-- EnumVal enrpServerPeerL3Proto(2) | | Textual Convention: InetAddressType | | Values: unknown(0), ipv4(1), ipv6(2), ipv4z(3), | | ipv6z(4), dns(16) | +-- -R-- String enrpServerPeerL3Addr(3) | Textual Convention: InetAddress | Size: 0..255 | +--poolElements(2) | | | +--poolElementTable(1) | | | | | +--poolElementEntry(1) | | | Index: poolElementIndex | | | | | +-- ---- Unsigned poolElementIndex(1) | | | Range: 1..4294967295 | | +-- -R-- String poolElementOperationScope(2) | | | Textual Convention: OperationScopeType | | +-- -R-- String poolElementPoolHandle(3) | | | Textual Convention: PoolHandleType | | +-- -R-- Unsigned poolElementIdentifier(4) | | | Textual Convention: PoolElementIdentifierType | | | Range: 1..4294967295 | | +-- -RW- String poolElementDescription(5) | | | Textual Convention: DescriptionType | | | Size: 0..4095 | | +-- -R-- TimeTicks poolElementUptime(6) | | +-- -R-- Unsigned poolElementASAPTransportPort(7) | | | Range: 1..65535 | | +-- -R-- Unsigned poolElementUserTransportProtocol(8) | | | Range: 0..255 | | +-- -R-- Unsigned poolElementUserTransportPort(9) | | | Range: 1..65535 | | +-- -R-- EnumVal poolElementUserTransportUse(10) | | | Textual Convention: TransportUseType | | | Values: dataOnly(0), dataPlusControl(1) | | +-- -RW- Unsigned poolElementPolicyID(11) | | | Textual Convention: PolicyIDType | | | Range: 1..4294967295 | | +-- -RW- String poolElementPolicyDescription(12) Dreibholz & Mulik Expires July 26, 2009 [Page 7] Internet-Draft RSerPool MIB January 2009 | | | Textual Convention: DescriptionType | | | Size: 0..4095 | | +-- -RW- Unsigned poolElementPolicyWeight(13) | | | Textual Convention: PolicyWeightType | | | Range: 0..4294967295 | | +-- -R-- Unsigned poolElementPolicyLoad(14) | | | Textual Convention: PolicyLoadType | | | Range: 0..4294967295 | | +-- -RW- Unsigned poolElementPolicyLoadDegradation(15) | | | Textual Convention: PolicyLoadType | | | Range: 0..4294967295 | | +-- -RW- TimeTicks poolElementRegistrationLife(16) | | +-- -R-- Unsigned poolElementHomeENRPServer(17) | | Textual Convention: ENRPServerIdentifierType | | Range: 1..4294967295 | | | +--poolElementASAPAddrTable(2) | | | | | +--poolElementASAPAddrTableEntry(1) | | | Index: poolElementIndex, poolElementASAPAddrTableIndex | | | | | +-- ---- Unsigned poolElementASAPAddrTableIndex(1) | | | Range: 1..4294967295 | | +-- -R-- EnumVal poolElementASAPL3Proto(2) | | | Textual Convention: InetAddressType | | | Values: unknown(0), ipv4(1), ipv6(2), ipv4z(3), | | | ipv6z(4), dns(16) | | +-- -R-- String poolElementASAPL3Addr(3) | | Textual Convention: InetAddress | | Size: 0..255 | | | +--poolElementUserAddrTable(6) | | | +--poolElementUserAddrTableEntry(1) | | Index: poolElementIndex, poolElementUserAddrTableIndex | | | +-- ---- Unsigned poolElementUserAddrTableIndex(1) | | Range: 1..4294967295 | +-- -R-- EnumVal poolElementUserL3Proto(2) | | Textual Convention: InetAddressType | | Values: unknown(0), ipv4(1), ipv6(2), ipv4z(3), | | ipv6z(4), dns(16) | +-- -R-- String poolElementUserL3Addr(3) | | Textual Convention: InetAddress | | Size: 0..255 | +-- -R-- String poolElementUserL3Opaque(4) | Textual Convention: OpaqueAddressType | Dreibholz & Mulik Expires July 26, 2009 [Page 8] Internet-Draft RSerPool MIB January 2009 +--poolUsers(3) | | | +--poolUserTable(1) | | | +--poolUserEntry(1) | | Index: poolUserIndex | | | +-- ---- Unsigned poolUserIndex(1) | | Range: 1..4294967295 | +-- -R-- String poolUserOperationScope(2) | | Textual Convention: OperationScopeType | +-- -R-- String poolUserPoolHandle(3) | | Textual Convention: PoolHandleType | +-- -RW- String poolUserDescription(4) | | Textual Convention: DescriptionType | | Size: 0..4095 | +-- -R-- TimeTicks poolUserUptime(5) | +--rserpoolMIBConformance(4) | +--rserpoolMIBCompliances(1) | | | +--rserpoolMIBCompliance(1) | +--rserpoolMIBGroups(2) | +--enrpServerGroup(1) +--poolElementGroup(2) +--poolUserGroup(3) As the figure shows, the MIB consists of three main branches: "enrpServers", "poolElements" and "poolUsers". The first branch, "enrpServers" 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. "poolElements" is used to access managed objects in the set of Pool Elements that are running on a given host. The third branch, "poolUsers" is used to access managed objects in the set of Pool Users that are running on a given host. Note: "poolElements" is filled on hosts running ENRP server instances, "poolElements" is filled on hosts running Pool Element instances and "poolUsers" 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. Dreibholz & Mulik Expires July 26, 2009 [Page 9] Internet-Draft RSerPool MIB January 2009 In fact, the structure of the three branches is very similar. Because the 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. 4.1. 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 ENRP Server Branch Nesting Structure: Level 1: enrpServerTable Level 2: enrpServerPoolTable Level 3: enrpServerPoolElementTable Level 4: enrpServerASAPAddrListTable enrpServerUserAddrListTable Level 2: enrpServerENRPAddrListTable Level 2: enrpServerPeerTable Level 3: enrpServerPeerAddrListTable The ENRP servers branch contains a table of the host's ENRP server instances. Its purpose is to provide an index to an ENRP server for all other tables. Each "conceptual row" in the enrpServerTable contains the server's ENRP Identifier, the number of pools, PEs and peers, the amount of ENRP endpoint addresses, the server's uptime and a textual description of the server. The poolTable contains a single entry for each pool that is currently registered. Each "conceptual row" in the enrpServerPoolTable consists of a enrpServerPoolTableEntry, with two elements: a enrpServerPoolIndex and an OCTET STRING representation of the pool handle. The enrpServerPoolIndex is simply an integer that is used to index into the enrpServerPoolTable and the enrpServerPoolElementTable. The value of this integer is between zero and (poolCount - 1). Note that Dreibholz & Mulik Expires July 26, 2009 [Page 10] Internet-Draft RSerPool MIB January 2009 the value of enrpServerPoolIndex is defined as "not-accessible" in the MAX-ACCESS clause; this is a standard technique used when defining a table-in-table data structure. The third element on the ENRP servers branch is the enrpServerPoolElementTable. Because the enrpServerPoolElementTable is the "inner" table of the table-in-table structure, its index consists of a pair, as indicated in the clause "INDEX { enrpServerIndex, enrpServerPoolIndex, enrpServerPoolElementIndex }". The fourth element of the ENRP servers branch takes the nesting to one additional level, listing the various addresses associated with a particular enrpServerPoolElement in form of ASAP endpoint addresses and user transport addresses, and thus are indexed by the 4-tuples "INDEX { enrpServerIndex, enrpServerPoolIndex, enrpServerPoolElementIndex, enrpServerASAPAddrListTableIndex }" and "INDEX { enrpServerIndex, enrpServerPoolIndex, enrpServerPoolElementIndex, enrpServerUserAddrListTableIndex }". The ENRP endpoint addresses of an ENRP server are bound to its instance in the enrpServerENRPAddrListTable by "INDEX { enrpServerIndex, enrpServerENRPAddrListTableIndex }". Finally, an ENRP server has a peer table of its known peers. They are bound to a server instance by the enrpServerPeerTable; analogously, the addresses of a peer are bound to a peerTable's entry in the peerAddrListTable. 4.2. 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: Level 1: poolElementTable Level 2: poolElementASAPAddrListTable poolElementUserAddrListTable The description of the contained structures is the same as for the ENRP servers branch. 4.3. Access to managed objects on Pool Users For the pool users branch, it is only necessary to list the pool users, including their operation scope and pool handle. 5. Definitions Dreibholz & Mulik Expires July 26, 2009 [Page 11] Internet-Draft RSerPool MIB January 2009 RSERPOOL-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, mib-2, TimeTicks, Unsigned32 FROM SNMPv2-SMI TEXTUAL-CONVENTION FROM SNMPv2-TC MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF InetAddressType, InetAddress FROM INET-ADDRESS-MIB; -- ## Module definition ########################################### rserpoolMIB MODULE-IDENTITY LAST-UPDATED "200901221012Z" -- January 22, 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: dreibh@iem.uni-due.de 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: jaiwant@mulik.com" DESCRIPTION "The MIB module for managing a RSerPool implementation" REVISION "200901221012Z" -- January 22, 2009 DESCRIPTION "Version 10, published as draft-ietf-rserpool-mib-10.txt." Dreibholz & Mulik Expires July 26, 2009 [Page 12] Internet-Draft RSerPool MIB January 2009 ::= { mib-2 xxxxxxxx } -- To be IANA Assigned!!! -- ## RSerPool type definitions ################################### ENRPServerIdentifierType ::= TEXTUAL-CONVENTION DISPLAY-HINT "x" STATUS current DESCRIPTION "The ID of an ENRP server" SYNTAX Unsigned32 (1..4294967295) OperationScopeType ::= TEXTUAL-CONVENTION DISPLAY-HINT "1024t" STATUS current DESCRIPTION "The ID of an operation scope" SYNTAX OCTET STRING PoolHandleType ::= TEXTUAL-CONVENTION DISPLAY-HINT "1024t" STATUS current DESCRIPTION "The pool handle" SYNTAX OCTET STRING DescriptionType ::= TEXTUAL-CONVENTION DISPLAY-HINT "1024t" STATUS current DESCRIPTION "Description" SYNTAX OCTET STRING (SIZE (0..4095)) PoolElementIdentifierType ::= TEXTUAL-CONVENTION DISPLAY-HINT "x" STATUS current DESCRIPTION "The pool element ID" SYNTAX Unsigned32 (1..4294967295) PolicyIDType ::= TEXTUAL-CONVENTION DISPLAY-HINT "x" STATUS current DESCRIPTION "The ID of the pool policy" SYNTAX Unsigned32 (1..4294967295) PolicyLoadType ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "The load status of a pool element" SYNTAX Unsigned32 (0..4294967295) PolicyWeightType ::= TEXTUAL-CONVENTION Dreibholz & Mulik Expires July 26, 2009 [Page 13] Internet-Draft RSerPool MIB January 2009 DISPLAY-HINT "d" STATUS current DESCRIPTION "The weight of a pool element" SYNTAX Unsigned32 (0..4294967295) TransportUseType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The load status of a pool element" SYNTAX INTEGER { dataOnly(0), dataPlusControl(1) } OpaqueAddressType ::= TEXTUAL-CONVENTION DISPLAY-HINT "1024t" STATUS current DESCRIPTION "Opaque address" SYNTAX OCTET STRING -- ## Top-level definitions ####################################### enrpServers OBJECT IDENTIFIER ::= { rserpoolMIB 1 } poolElements OBJECT IDENTIFIER ::= { rserpoolMIB 2 } poolUsers OBJECT IDENTIFIER ::= { rserpoolMIB 3 } -- ################################################################ -- #### ENRP Servers Section #### -- ################################################################ -- ## Definition of the ENRP server table ######################### enrpServerTable OBJECT-TYPE SYNTAX SEQUENCE OF ENRPServerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table listing of ENRP servers." ::= { enrpServers 1 } enrpServerEntry OBJECT-TYPE SYNTAX ENRPServerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An ENRP server entry in the table listing of ENRP servers." INDEX { enrpServerIndex } Dreibholz & Mulik Expires July 26, 2009 [Page 14] Internet-Draft RSerPool MIB January 2009 ::= { enrpServerTable 1 } ENRPServerEntry ::= SEQUENCE { enrpServerIndex Unsigned32, enrpServerOperationScope OperationScopeType, enrpServerIdentifier ENRPServerIdentifierType, enrpServerDescription DescriptionType, enrpServerUptime TimeTicks, enrpServerPort Unsigned32, enrpServerASAPAnnouncePort Unsigned32, enrpServerASAPAnnounceAddrType InetAddressType, enrpServerASAPAnnounceAddr InetAddress, enrpServerENRPAnnouncePort Unsigned32, enrpServerENRPAnnounceAddrType InetAddressType, enrpServerENRPAnnounceAddr InetAddress } enrpServerIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An integer to uniquely identify an ENRP server." ::= { enrpServerEntry 1 } enrpServerOperationScope OBJECT-TYPE SYNTAX OperationScopeType MAX-ACCESS read-only STATUS current DESCRIPTION "The definition of the operation scope of this ENRP server." ::= { enrpServerEntry 2 } enrpServerIdentifier OBJECT-TYPE SYNTAX ENRPServerIdentifierType MAX-ACCESS read-only STATUS current DESCRIPTION "The ENRP server identifier of this ENRP server." ::= { enrpServerEntry 3 } enrpServerDescription OBJECT-TYPE SYNTAX DescriptionType 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." ::= { enrpServerEntry 4 } Dreibholz & Mulik Expires July 26, 2009 [Page 15] Internet-Draft RSerPool MIB January 2009 enrpServerUptime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The ENRP service uptime of this ENRP server." ::= { enrpServerEntry 5 } enrpServerPort OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The SCTP port number of the ENRP protocol endpoint of this ENRP server." ::= { enrpServerEntry 6 } enrpServerASAPAnnouncePort OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The destination UDP port number ASAP multicast announce messages are sent to." ::= { enrpServerEntry 7 } enrpServerASAPAnnounceAddrType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The network-layer protocol ASAP multicast announce messages are sent over." ::= { enrpServerEntry 8 } enrpServerASAPAnnounceAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The destination multicast IP address ASAP multicast announce messages are sent to." ::= { enrpServerEntry 9 } enrpServerENRPAnnouncePort OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-only STATUS current Dreibholz & Mulik Expires July 26, 2009 [Page 16] Internet-Draft RSerPool MIB January 2009 DESCRIPTION "The destination UDP port number ENRP multicast announce messages are sent to." ::= { enrpServerEntry 10 } enrpServerENRPAnnounceAddrType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The network-layer protocol ENRP multicast announce messages are sent over." ::= { enrpServerEntry 11 } enrpServerENRPAnnounceAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The destination multicast IP address ENRP multicast announce messages are sent to." ::= { enrpServerEntry 12 } -- ## Definition of the pool table ################################ enrpServerPoolTable OBJECT-TYPE SYNTAX SEQUENCE OF ENRPServerPoolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table listing of pools." ::= { enrpServers 3 } enrpServerPoolEntry OBJECT-TYPE SYNTAX ENRPServerPoolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The pool entry in the table listing of pools." INDEX { enrpServerIndex, enrpServerPoolIndex } ::= { enrpServerPoolTable 1 } ENRPServerPoolEntry ::= SEQUENCE { enrpServerPoolIndex Unsigned32, enrpServerPoolHandle PoolHandleType } enrpServerPoolIndex OBJECT-TYPE Dreibholz & Mulik Expires July 26, 2009 [Page 17] Internet-Draft RSerPool MIB January 2009 SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An integer to uniquely identify a pool." ::= { enrpServerPoolEntry 1 } enrpServerPoolHandle OBJECT-TYPE SYNTAX PoolHandleType MAX-ACCESS read-only STATUS current DESCRIPTION "The pool handle of this pool." ::= { enrpServerPoolEntry 2 } -- ## Definition of the pool element table ######################## enrpServerPoolElementTable OBJECT-TYPE SYNTAX SEQUENCE OF ENRPServerPoolElementEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table listing of pool elements." ::= { enrpServers 4 } enrpServerPoolElementEntry OBJECT-TYPE SYNTAX ENRPServerPoolElementEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A pool element in the table listing of pool elements." INDEX { enrpServerIndex, enrpServerPoolIndex, enrpServerPoolElementIndex } ::= { enrpServerPoolElementTable 1 } ENRPServerPoolElementEntry ::= SEQUENCE { enrpServerPoolElementIndex Unsigned32, enrpServerPoolElementIdentifier PoolElementIdentifierType, enrpServerASAPTransportPort Unsigned32, enrpServerUserTransportProtocol Unsigned32, enrpServerUserTransportPort Unsigned32, enrpServerUserTransportUse TransportUseType, enrpServerPolicyID PolicyIDType, enrpServerPolicyDescription DescriptionType, enrpServerPolicyWeight PolicyWeightType, enrpServerPolicyLoad PolicyLoadType, enrpServerPolicyLoadDegradation PolicyLoadType, Dreibholz & Mulik Expires July 26, 2009 [Page 18] Internet-Draft RSerPool MIB January 2009 enrpServerRegistrationLife TimeTicks, enrpServerHomeENRPServer ENRPServerIdentifierType } enrpServerPoolElementIndex 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!" ::={ enrpServerPoolElementEntry 1 } enrpServerPoolElementIdentifier OBJECT-TYPE SYNTAX PoolElementIdentifierType MAX-ACCESS read-only STATUS current DESCRIPTION "The pool element identifier of this pool element." ::={ enrpServerPoolElementEntry 2 } enrpServerASAPTransportPort OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The SCTP port number of the ASAP endpoint of this pool element." ::= { enrpServerPoolElementEntry 3 } enrpServerUserTransportProtocol 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." ::= { enrpServerPoolElementEntry 4 } enrpServerUserTransportPort OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The transport protocol's port number of the service endpoint of this pool element." ::= { enrpServerPoolElementEntry 5 } Dreibholz & Mulik Expires July 26, 2009 [Page 19] Internet-Draft RSerPool MIB January 2009 enrpServerUserTransportUse OBJECT-TYPE SYNTAX TransportUseType MAX-ACCESS read-only STATUS current DESCRIPTION "The transport use of the service endpoint of this pool element." ::= { enrpServerPoolElementEntry 6 } enrpServerPolicyID OBJECT-TYPE SYNTAX PolicyIDType MAX-ACCESS read-only STATUS current DESCRIPTION "The pool policy of this pool element." ::= { enrpServerPoolElementEntry 7 } enrpServerPolicyDescription OBJECT-TYPE SYNTAX DescriptionType MAX-ACCESS read-only STATUS current DESCRIPTION "The textual description of the pool policy of this pool element." ::= { enrpServerPoolElementEntry 8 } enrpServerPolicyWeight OBJECT-TYPE SYNTAX PolicyWeightType MAX-ACCESS read-only STATUS current DESCRIPTION "The pool policy's weight parameter for this pool element." ::= { enrpServerPoolElementEntry 9 } enrpServerPolicyLoad OBJECT-TYPE SYNTAX PolicyLoadType MAX-ACCESS read-only STATUS current DESCRIPTION "The pool policy's load status for this pool element." ::= { enrpServerPoolElementEntry 10 } enrpServerPolicyLoadDegradation OBJECT-TYPE SYNTAX PolicyLoadType MAX-ACCESS read-only STATUS current DESCRIPTION "The pool policy's load degradation parameter for this pool Dreibholz & Mulik Expires July 26, 2009 [Page 20] Internet-Draft RSerPool MIB January 2009 element." ::= { enrpServerPoolElementEntry 11 } enrpServerRegistrationLife OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The registration life of this pool element." ::= { enrpServerPoolElementEntry 12 } enrpServerHomeENRPServer OBJECT-TYPE SYNTAX ENRPServerIdentifierType MAX-ACCESS read-only STATUS current DESCRIPTION "The ID of the home ENRP server of this pool element." ::= { enrpServerPoolElementEntry 13 } -- ## Definition of the ASAP transport address list table ######### enrpServerASAPAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF ENRPServerASAPAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table listing of all IP addresses of the ASAP transport endpoint." ::= { enrpServers 5 } enrpServerASAPAddrTableEntry OBJECT-TYPE SYNTAX ENRPServerASAPAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An IP address of the ASAP transport endpoint." INDEX { enrpServerIndex, enrpServerPoolIndex, enrpServerPoolElementIndex, enrpServerASAPAddrTableIndex } ::= { enrpServerASAPAddrTable 1 } ENRPServerASAPAddrTableEntry ::= SEQUENCE { enrpServerASAPAddrTableIndex Unsigned32, enrpServerASAPL3Proto InetAddressType, enrpServerASAPL3Addr InetAddress } enrpServerASAPAddrTableIndex OBJECT-TYPE Dreibholz & Mulik Expires July 26, 2009 [Page 21] Internet-Draft RSerPool MIB January 2009 SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A unique identifier for the IP address of an ASAP transport endpoint." ::= { enrpServerASAPAddrTableEntry 1 } enrpServerASAPL3Proto OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The network-layer protocol (IPv4 or IPv6) of an IP address of an ASAP transport endpoint." ::= { enrpServerASAPAddrTableEntry 2 } enrpServerASAPL3Addr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The IP address of an ASAP transport endpoint." ::= { enrpServerASAPAddrTableEntry 3 } -- ## Definition of the user transport address list table ######### enrpServerUserAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF ENRPServerUserAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table listing of all IP addresses of the user transport endpoint." ::= { enrpServers 6 } enrpServerUserAddrTableEntry OBJECT-TYPE SYNTAX ENRPServerUserAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An IP address of the user transport endpoint." INDEX { enrpServerIndex, enrpServerPoolIndex, enrpServerPoolElementIndex, enrpServerUserAddrTableIndex } ::= { enrpServerUserAddrTable 1 } Dreibholz & Mulik Expires July 26, 2009 [Page 22] Internet-Draft RSerPool MIB January 2009 ENRPServerUserAddrTableEntry ::= SEQUENCE { enrpServerUserAddrTableIndex Unsigned32, enrpServerUserL3Proto InetAddressType, enrpServerUserL3Addr InetAddress, enrpServerUserL3Opaque OpaqueAddressType } enrpServerUserAddrTableIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A unique identifier for the IP address of an user transport endpoint." ::= { enrpServerUserAddrTableEntry 1 } enrpServerUserL3Proto OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The network-layer protocol (IPv4 or IPv6) of an IP address of an user transport endpoint." ::= { enrpServerUserAddrTableEntry 2 } enrpServerUserL3Addr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The IP address of an user transport endpoint." ::= { enrpServerUserAddrTableEntry 3 } enrpServerUserL3Opaque OBJECT-TYPE SYNTAX OpaqueAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The opaque address of an user transport endpoint." ::= { enrpServerUserAddrTableEntry 4 } -- ## Definition of ENRP address list table ####################### enrpServerENRPAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF ENRPServerENRPAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table listing of all IP addresses of the ENRP Dreibholz & Mulik Expires July 26, 2009 [Page 23] Internet-Draft RSerPool MIB January 2009 transport endpoint." ::= { enrpServers 7 } enrpServerENRPAddrTableEntry OBJECT-TYPE SYNTAX ENRPServerENRPAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An IP address of the ENRP transport endpoint." INDEX { enrpServerIndex, enrpServerENRPAddrTableIndex } ::= { enrpServerENRPAddrTable 1 } ENRPServerENRPAddrTableEntry ::= SEQUENCE { enrpServerENRPAddrTableIndex Unsigned32, enrpServerENRPL3Proto InetAddressType, enrpServerENRPL3Addr InetAddress } enrpServerENRPAddrTableIndex 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." ::= { enrpServerENRPAddrTableEntry 1 } enrpServerENRPL3Proto OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The network-layer protocol (IPv4 or IPv6) of an IP address of an ENRP transport endpoint." ::= { enrpServerENRPAddrTableEntry 2 } enrpServerENRPL3Addr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The IP address of an ENRP transport endpoint." ::= { enrpServerENRPAddrTableEntry 3 } -- ## Definition of peer table #################################### enrpServerPeerTable OBJECT-TYPE SYNTAX SEQUENCE OF ENRPServerPeerEntry Dreibholz & Mulik Expires July 26, 2009 [Page 24] Internet-Draft RSerPool MIB January 2009 MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table listing of a peer table." ::= { enrpServers 8 } enrpServerPeerEntry OBJECT-TYPE SYNTAX ENRPServerPeerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A peer entry in the table listing of a peer table." INDEX { enrpServerPeerIndex } ::= { enrpServerPeerTable 1 } ENRPServerPeerEntry ::= SEQUENCE { enrpServerPeerIndex Unsigned32, enrpServerPeerIdentifier Unsigned32, enrpServerPeerPort Unsigned32, enrpServerPeerLastHeard TimeTicks } enrpServerPeerIndex 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." ::= { enrpServerPeerEntry 1 } enrpServerPeerIdentifier OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The ENRP identifier of this peer." ::= { enrpServerPeerEntry 2 } enrpServerPeerPort OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The SCTP port number of the ENRP transport endpoint of this peer." ::= { enrpServerPeerEntry 3 } enrpServerPeerLastHeard OBJECT-TYPE SYNTAX TimeTicks Dreibholz & Mulik Expires July 26, 2009 [Page 25] Internet-Draft RSerPool MIB January 2009 MAX-ACCESS read-only STATUS current DESCRIPTION "The time since the reception of the last ENRP Peer Presence message of this peer." ::= { enrpServerPeerEntry 4 } -- ## Definition of peer address list table ####################### enrpServerPeerAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF ENRPServerPeerAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table listing of the peer endpoint addresses." ::= { enrpServers 9 } enrpServerPeerAddrTableEntry OBJECT-TYPE SYNTAX ENRPServerPeerAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table listing of all IP addresses of the ENRP transport endpoint of a peer referenced by peerIndex." INDEX { enrpServerPeerIndex, enrpServerPeerAddrTableIndex } ::= { enrpServerPeerAddrTable 1 } ENRPServerPeerAddrTableEntry ::= SEQUENCE { enrpServerPeerAddrTableIndex Unsigned32, enrpServerPeerL3Proto InetAddressType, enrpServerPeerL3Addr InetAddress } enrpServerPeerAddrTableIndex 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." ::= { enrpServerPeerAddrTableEntry 1 } enrpServerPeerL3Proto OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The network-layer protocol (IPv4 or IPv6) of an IP address of Dreibholz & Mulik Expires July 26, 2009 [Page 26] Internet-Draft RSerPool MIB January 2009 a peer ENRP transport endpoint." ::= { enrpServerPeerAddrTableEntry 2 } enrpServerPeerL3Addr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The IP address of a peer ENRP transport endpoint." ::= { enrpServerPeerAddrTableEntry 3 } -- ################################################################ -- #### Pool Elements Section #### -- ################################################################ -- ## Definition of the pool element table ######################## poolElementTable OBJECT-TYPE SYNTAX SEQUENCE OF PoolElementEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table listing of pool elements." ::= { poolElements 1 } poolElementEntry OBJECT-TYPE SYNTAX PoolElementEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A pool element in the table listing of pool elements." INDEX { poolElementIndex } ::= { poolElementTable 1 } PoolElementEntry ::= SEQUENCE { poolElementIndex Unsigned32, poolElementOperationScope OperationScopeType, poolElementPoolHandle PoolHandleType, poolElementIdentifier PoolElementIdentifierType, poolElementDescription DescriptionType, poolElementUptime TimeTicks, poolElementASAPTransportPort Unsigned32, poolElementUserTransportProtocol Unsigned32, poolElementUserTransportPort Unsigned32, poolElementUserTransportUse TransportUseType, poolElementPolicyID PolicyIDType, poolElementPolicyDescription DescriptionType, Dreibholz & Mulik Expires July 26, 2009 [Page 27] Internet-Draft RSerPool MIB January 2009 poolElementPolicyWeight PolicyWeightType, poolElementPolicyLoad PolicyLoadType, poolElementPolicyLoadDegradation PolicyLoadType, poolElementRegistrationLife TimeTicks, poolElementHomeENRPServer ENRPServerIdentifierType } poolElementIndex 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!" ::={ poolElementEntry 1 } poolElementOperationScope OBJECT-TYPE SYNTAX OperationScopeType MAX-ACCESS read-only STATUS current DESCRIPTION "The operation scope of this pool element." ::= { poolElementEntry 2 } poolElementPoolHandle OBJECT-TYPE SYNTAX PoolHandleType MAX-ACCESS read-only STATUS current DESCRIPTION "The pool handle of this pool element." ::={ poolElementEntry 3 } poolElementIdentifier OBJECT-TYPE SYNTAX PoolElementIdentifierType MAX-ACCESS read-only STATUS current DESCRIPTION "The pool element identifier of this pool element." ::={ poolElementEntry 4 } poolElementDescription OBJECT-TYPE SYNTAX DescriptionType 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." Dreibholz & Mulik Expires July 26, 2009 [Page 28] Internet-Draft RSerPool MIB January 2009 ::= { poolElementEntry 5 } poolElementUptime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The ENRP service uptime of this pool element." ::= { poolElementEntry 6 } poolElementASAPTransportPort OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The SCTP port number of the ASAP endpoint of this pool element." ::= { poolElementEntry 7 } poolElementUserTransportProtocol 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." ::= { poolElementEntry 8 } poolElementUserTransportPort OBJECT-TYPE SYNTAX Unsigned32 (1..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The transport protocol's port number of the service endpoint of this pool element." ::= { poolElementEntry 9 } poolElementUserTransportUse OBJECT-TYPE SYNTAX TransportUseType MAX-ACCESS read-only STATUS current DESCRIPTION "The transport use of the service endpoint of this pool element." ::= { poolElementEntry 10 } poolElementPolicyID OBJECT-TYPE SYNTAX PolicyIDType Dreibholz & Mulik Expires July 26, 2009 [Page 29] Internet-Draft RSerPool MIB January 2009 MAX-ACCESS read-write STATUS current DESCRIPTION "The pool policy of this pool element." ::= { poolElementEntry 11 } poolElementPolicyDescription OBJECT-TYPE SYNTAX DescriptionType MAX-ACCESS read-write STATUS current DESCRIPTION "The textual description of the pool policy of this pool element." ::= { poolElementEntry 12 } poolElementPolicyWeight OBJECT-TYPE SYNTAX PolicyWeightType MAX-ACCESS read-write STATUS current DESCRIPTION "The pool policy's weight parameter for this pool element. This field is read/write." ::= { poolElementEntry 13 } poolElementPolicyLoad OBJECT-TYPE SYNTAX PolicyLoadType MAX-ACCESS read-only STATUS current DESCRIPTION "The pool policy's load status for this pool element." ::= { poolElementEntry 14 } poolElementPolicyLoadDegradation OBJECT-TYPE SYNTAX PolicyLoadType MAX-ACCESS read-write STATUS current DESCRIPTION "The pool policy's load degradation parameter for this pool element." ::= { poolElementEntry 15 } poolElementRegistrationLife OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-write STATUS current DESCRIPTION "The registration life of this pool element." ::= { poolElementEntry 16 } Dreibholz & Mulik Expires July 26, 2009 [Page 30] Internet-Draft RSerPool MIB January 2009 poolElementHomeENRPServer OBJECT-TYPE SYNTAX ENRPServerIdentifierType MAX-ACCESS read-only STATUS current DESCRIPTION "The ID of the home ENRP server of this pool element." ::= { poolElementEntry 17 } -- ## Definition of the ASAP transport address list table ######### poolElementASAPAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF PoolElementASAPAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table listing of all IP addresses of the ASAP transport endpoint." ::= { poolElements 2 } poolElementASAPAddrTableEntry OBJECT-TYPE SYNTAX PoolElementASAPAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An IP address of the ASAP transport endpoint." INDEX { poolElementIndex, poolElementASAPAddrTableIndex } ::= { poolElementASAPAddrTable 1 } PoolElementASAPAddrTableEntry ::= SEQUENCE { poolElementASAPAddrTableIndex Unsigned32, poolElementASAPL3Proto InetAddressType, poolElementASAPL3Addr InetAddress } poolElementASAPAddrTableIndex 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." ::= { poolElementASAPAddrTableEntry 1 } poolElementASAPL3Proto OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION Dreibholz & Mulik Expires July 26, 2009 [Page 31] Internet-Draft RSerPool MIB January 2009 "The network-layer protocol (IPv4 or IPv6) of an IP address of an ASAP transport endpoint." ::= { poolElementASAPAddrTableEntry 2 } poolElementASAPL3Addr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The IP address of an ASAP transport endpoint." ::= { poolElementASAPAddrTableEntry 3 } -- ## Definition of the user transport address list table ######### poolElementUserAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF PoolElementUserAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table listing of all IP addresses of the user transport endpoint." ::= { poolElements 6 } poolElementUserAddrTableEntry OBJECT-TYPE SYNTAX PoolElementUserAddrTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An IP address of the user transport endpoint." INDEX { poolElementIndex, poolElementUserAddrTableIndex } ::= { poolElementUserAddrTable 1 } PoolElementUserAddrTableEntry ::= SEQUENCE { poolElementUserAddrTableIndex Unsigned32, poolElementUserL3Proto InetAddressType, poolElementUserL3Addr InetAddress, poolElementUserL3Opaque OpaqueAddressType } poolElementUserAddrTableIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A unique identifier for the IP address of an user transport endpoint." ::= { poolElementUserAddrTableEntry 1 } Dreibholz & Mulik Expires July 26, 2009 [Page 32] Internet-Draft RSerPool MIB January 2009 poolElementUserL3Proto OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The network-layer protocol of an IP address of an user transport endpoint. Set to unknown for opaque address." ::= { poolElementUserAddrTableEntry 2 } poolElementUserL3Addr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The IP address of an user transport endpoint." ::= { poolElementUserAddrTableEntry 3 } poolElementUserL3Opaque OBJECT-TYPE SYNTAX OpaqueAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "The opaque address of an user transport endpoint." ::= { poolElementUserAddrTableEntry 4 } -- ################################################################ -- #### Pool Users Section #### -- ################################################################ -- ## Definition of the pool user table ########################### poolUserTable OBJECT-TYPE SYNTAX SEQUENCE OF PoolUserEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table listing of pool users." ::= { poolUsers 1 } poolUserEntry OBJECT-TYPE SYNTAX PoolUserEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A pool user in the table listing of pool users." INDEX { poolUserIndex } ::= { poolUserTable 1 } Dreibholz & Mulik Expires July 26, 2009 [Page 33] Internet-Draft RSerPool MIB January 2009 PoolUserEntry ::= SEQUENCE { poolUserIndex Unsigned32, poolUserOperationScope OperationScopeType, poolUserPoolHandle PoolHandleType, poolUserDescription DescriptionType, poolUserUptime TimeTicks } poolUserIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An integer to uniquely identify a pool user." ::={ poolUserEntry 1 } poolUserOperationScope OBJECT-TYPE SYNTAX OperationScopeType MAX-ACCESS read-only STATUS current DESCRIPTION "The operation scope of this pool user." ::= { poolUserEntry 2 } poolUserPoolHandle OBJECT-TYPE SYNTAX PoolHandleType MAX-ACCESS read-only STATUS current DESCRIPTION "The pool handle of this pool user." ::={ poolUserEntry 3 } poolUserDescription OBJECT-TYPE SYNTAX DescriptionType 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." ::= { poolUserEntry 4 } poolUserUptime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The ENRP service uptime of this pool user." ::= { poolUserEntry 5 } Dreibholz & Mulik Expires July 26, 2009 [Page 34] Internet-Draft RSerPool MIB January 2009 -- ## MIB conformance and compliance ############################## rserpoolMIBConformance OBJECT IDENTIFIER ::= { rserpoolMIB 4 } rserpoolMIBCompliances OBJECT IDENTIFIER ::= { rserpoolMIBConformance 1 } rserpoolMIBGroups OBJECT IDENTIFIER ::= { rserpoolMIBConformance 2 } rserpoolMIBCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for SNMP entities which implement RSerPool." MODULE -- this module MANDATORY-GROUPS { enrpServerGroup, poolElementGroup, poolUserGroup } ::= { rserpoolMIBCompliances 1 } enrpServerGroup OBJECT-GROUP OBJECTS { enrpServerOperationScope, enrpServerIdentifier, enrpServerDescription, enrpServerUptime, enrpServerPort, enrpServerASAPAnnouncePort, enrpServerASAPAnnounceAddr, enrpServerASAPAnnounceAddrType, enrpServerENRPAnnounceAddrType, enrpServerENRPAnnouncePort, enrpServerENRPAnnounceAddr, enrpServerPoolHandle, enrpServerPoolElementIdentifier, enrpServerASAPTransportPort, enrpServerUserTransportProtocol, enrpServerUserTransportUse, enrpServerUserTransportPort, enrpServerPolicyID, enrpServerPolicyDescription, enrpServerPolicyWeight, enrpServerPolicyLoad, enrpServerPolicyLoadDegradation, enrpServerRegistrationLife, Dreibholz & Mulik Expires July 26, 2009 [Page 35] Internet-Draft RSerPool MIB January 2009 enrpServerHomeENRPServer, enrpServerASAPL3Proto, enrpServerASAPL3Addr, enrpServerUserL3Proto, enrpServerUserL3Addr, enrpServerUserL3Opaque, enrpServerENRPL3Proto, enrpServerENRPL3Addr, enrpServerPeerIdentifier, enrpServerPeerPort, enrpServerPeerLastHeard, enrpServerPeerL3Proto, enrpServerPeerL3Addr } STATUS current DESCRIPTION "The group of ENRP servers" ::= { rserpoolMIBGroups 1 } poolElementGroup OBJECT-GROUP OBJECTS { poolElementOperationScope, poolElementPoolHandle, poolElementIdentifier, poolElementDescription, poolElementUptime, poolElementASAPTransportPort, poolElementUserTransportProtocol, poolElementUserTransportPort, poolElementUserTransportUse, poolElementPolicyID, poolElementPolicyDescription, poolElementPolicyWeight, poolElementPolicyLoad, poolElementPolicyLoadDegradation, poolElementRegistrationLife, poolElementHomeENRPServer, poolElementASAPL3Proto, poolElementASAPL3Addr, poolElementUserL3Proto, poolElementUserL3Addr, poolElementUserL3Opaque } STATUS current DESCRIPTION "The group of pool elements" ::= { rserpoolMIBGroups 2 } Dreibholz & Mulik Expires July 26, 2009 [Page 36] Internet-Draft RSerPool MIB January 2009 poolUserGroup OBJECT-GROUP OBJECTS { poolUserOperationScope, poolUserPoolHandle, poolUserDescription, poolUserUptime } STATUS current DESCRIPTION "The group of pool users" ::= { rserpoolMIBGroups 3 } END 6. Security Considerations SNMPv1 by itself is not a secure environment. 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. It is recommended that the implementers consider the security features as provided by the SNMPv3 framework. Specifically, the use of the User-based Security Model RFC 3414 [RFC3414] and the View- based Access Control Model RFC 3415 [RFC3415] is recommended. It is then a customer/user responsibility to ensure that the SNMP entity giving access to an instance of this MIB, 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. 7. IANA Considerations IANA will need to assign an OID prefix for the RSerPool MIB. 8. 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 draft. Also, the authors would like to thank Nihad Cosic, Dirk Hoffstadt, Michael Kohnen, Jobin Pulinthanath, Randall Stewart, Michael Tuexen and Xing Zhou for their support. 9. References Dreibholz & Mulik Expires July 26, 2009 [Page 37] Internet-Draft RSerPool MIB January 2009 9.1. Normative References [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. [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. [RFC3415] Wijnen, B., Presuhn, R., and K. McCloghrie, "View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP)", STD 62, RFC 3415, December 2002. [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. 9.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. [RFC5351] Lei, P., Ong, L., Tuexen, M., and T. Dreibholz, "An Overview of Reliable Server Pooling Protocols", RFC 5351, September 2008. Dreibholz & Mulik Expires July 26, 2009 [Page 38] Internet-Draft RSerPool MIB January 2009 [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. [RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart, "Introduction and Applicability Statements for Internet- Standard Management Framework", RFC 3410, December 2002. [RSerPoolPage] Dreibholz, T., "Thomas Dreibholz's RSerPool Page", URL: http://tdrwww.iem.uni-due.de.de/dreibholz/rserpool/. [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, URL: http:// duepublico.uni-duisburg-essen.de/servlets/DerivateServlet/ Derivate-16326/Dre2006-final.pdf, March 2007. [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 Evalulation of the Pool Maintenance Overhead in Reliable Server Pooling Systems", International Journal of Hybrid Information Technology (IJHIT) Volume 1, Number 2, April 2008. [SNMPMIBS] Perkins, D. and E. McGinnis, "Understanding SNMP MIBs", 1997. Dreibholz & Mulik Expires July 26, 2009 [Page 39] Internet-Draft RSerPool MIB January 2009 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: dreibh@iem.uni-due.de 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: jaiwant@mulik.com URI: http://netlab.cis.desu.edu Dreibholz & Mulik Expires July 26, 2009 [Page 40]