Internet Draft A. Smith Expires December 1999 Extreme Networks draft-ietf-rap-cops-client-mib-00.txt D. Partain Ericsson J. Seligson Nortel Networks June 1999 Definitions of Managed Objects for Common Open Policy Service (COPS) Protocol Clients Status of this Memo This document is an Internet Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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. Internet Drafts may be updated, replaced, or obsoleted by other documents at any time. It is not appropriate to use Internet Drafts as reference material or to cite them other than as a "working draft" or "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 document is a product of the IETF's RSVP Admission Policy Working Group. Copyright (C) The Internet Society (1999). All Rights Reserved. Abstract This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in TCP/IP based internets. In particular it defines objects for managing a client of the Common Open Policy Service (COPS) protocol. This memo includes a MIB module in a manner that is compliant to the SNMPv2 SMI [V2SMI]. Smith Expires December 1999 [Page 1] Internet Draft COPS Client MIB June 1999 1. The SNMP Management Framework The SNMP Management Framework presently consists of five major components: o An overall architecture, described in an Architecture for Describing SNMP Management Frameworks [ARCH]. o Mechanisms for describing and naming objects and events for the purpose of management. The first version of this Structure of Management Information (SMI) is called SMIv1 and described in RFC 1155 [V1SMI], RFC 1212 [V1CONCISE] and RFC 1215 [V1TRAPS]. The second version, called SMIv2, is described in STD 58, RFC 2578 [V2SMI], STD 58, RFC 2579 [V2TC] and STD 58, RFC 2580 [V2CONFORM]. o Message protocols for transferring management information. The first version of the SNMP message protocol is called SNMPv1 and described in RFC 1157 [V1PROTO]. A second version of the SNMP message protocol, which is not an Internet standards track protocol, is called SNMPv2c and described in RFC 1901 [V2COMMUNITY] and RFC 1906 [V2TRANS]. The third version of the message protocol is called SNMPv3 and described in RFC1906 [V2TRANS], Message Processing and Dispatching [V3MPC] and User- based Scurity Model [V3USM]. o Protocol operations for accessing management information. The first set of protocol operations and associated PDU formats is described in RFC 1157 [V1PROTO]. A second set of protocol operations and associated PDU formats is described in RFC 1905 [V2PROTO]. o A set of fundamental applications described in SNMPv3 Applications [V3APPS] and the view-based access control mechanism described in View-based Access Control Model [V3VACM]. Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. Objects in the MIB are defined using the mechanisms defined in the SMI. This memo specifies a MIB module that is compliant to the SMIv2. A MIB conforming to the SMIv1 can be produced through the appropriate translations. The resulting translated MIB must be semantically equivalent, except where objects or events are omitted because no translation is possible (use of Counter64). Some machine readable Smith Expires December 1999 [Page 2] Internet Draft COPS Client MIB June 1999 information in SMIv2 will be converted into textual descriptions in SMIv1 during the translation process. However, this loss of machine readable information is not considered to change the semantics of the MIB. 2. Overview The COPS protocol [COPS] is a client-server protocol intended for the communication of policy requests and decisions between a Policy Enforcement Point (PEP) and a Policy Decision Point (PDP). The PEP acts as a COPS client in this scenario. The model for policy out-sourcing, of which the COPS protocol provides one part, is described in [FRAMEWORK]. 2.1. Scope This MIB is intended to provide management of the important features of a COPS protocol client module. It does not provide management for a COPS server - this is outside the scope of the current memo. It provides for monitoring of status and protocol statistics, as well as for configuration of the client, in particular for telling it where to locate its servers. Other mechanisms for achieving this function without SNMP configuration might include use of the Service Location Protocol [SRVLOC] although this is outside the scope of this memo and are not specified by the COPS protocol itself. This MIB also does not provide management of specific COPS client- types e.g. for use with the RSVP protocol [RSVP][COPSRSVP]. 3. Structure of COPS Client MIB Objects in this MIB are arranged into groups. Each group is organized as a set of related objects. The overall structure is described below. 3.1. copsClientCapabilitiesGroup This group contains objects that represent COPS protocol capabilities implemented by this COPS client. Smith Expires December 1999 [Page 3] Internet Draft COPS Client MIB June 1999 3.2. copsClientStatusGroup This group contains objects that indicate the current status of connection(s) to COPS servers, including per-server protocol statistics. It maintains last-known statistics for all of the servers with which the client has ever been connected since agent restart. 3.3. copsConfigGroup This group contains objects that allow for configuration of COPS server addresses and the order to which connections should be attempted. 3.4. Textual Conventions The datatypes CopsClientState, CopsServerEntryType, CopsErrorCode and TcpPort are used as textual conventions in this document. These textual conventions have NO effect on either the syntax nor the semantics of any managed object. Objects defined using these conventions are always encoded by means of the rules that define their primitive type. Hence, no changes to the SMI or the SNMP are necessary to accommodate these textual conventions which are adopted merely for the convenience of readers. 3.5. Relationship to Other MIBs 3.5.1. Relationship to the 'system' group This MIB contains definitions for a single COPS protocol client represented by a single SNMP agent and instance of the MIB-2 system group [MIB2]. It does not address the case of multiple co-located COPS protocol clients. 4. Editorial information Owners: JS = John Seligson, AS = Andrew Smith, DP = David Partain Smith Expires December 1999 [Page 4] Internet Draft COPS Client MIB June 1999 4.1. Open Issues resolved in this draft (1) When should per-server counters (e.g. copsClientServerInPkts) be zeroed? (all) Resolution: see issue (3). (3) Should error stats be maintained per-server or is global sufficient? If per-server then see also issue #1. (all) Resolution: everything is per-server but not zero'ed on reconnect. (4) Add object to show current security in use (JS). DONE - copsClientServerSecurityMode. (6) Add TCP port number to all tables (JS). DONE - copsClientServerTcpPort, copsClientServerConfigTcpPort. (7) Add server retry configuration (JS). DONE - copsClientServerConfigRetryCount, copsClientServerConfigRetryInterval (8) Add COPS protocol version number capabilities object (JS). DONE - copsClientCapabilities. 4.2. Still Open Issues (2) Addressing of server tables by IP Address is frowned on: should this be indexed by a client-determined small integer? Awaiting resolution of general SNMP discussion on this topic. (AS) (5) Do we need to be able to configure the security mode for client to attempt to use to talk to COPS server? (AS) Smith Expires December 1999 [Page 5] Internet Draft COPS Client MIB June 1999 5. Definitions for COPS Client MIB COPS-CLIENT-MIB DEFINITIONS ::= BEGIN -- ------------------------------------------------------------- -- ------------------------------------------------------------- IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Counter32, IpAddress, Integer32 FROM SNMPv2-SMI TimeStamp, TimeInterval, RowStatus, TEXTUAL-CONVENTION FROM SNMPv2-TC MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF; -- REFERENCE -- "The COPS (Common Open Policy Service) Protocol -- draft-ietf-rap-cops-xx.txt" copsClientMIB MODULE-IDENTITY LAST-UPDATED "9906100000Z" ORGANIZATION "IETF RSVP Admission Policy Working Group" CONTACT-INFO " Andrew Smith (WG co-chair) Phone: +1 408 579 2821 Email: andrew@extremenetworks.com Tim O'Malley (WG co-chair) Phone: +1 617 873 3076 Email: timo@bbn.com" DESCRIPTION "The COPS Client MIB module" ::= { xxx 1 } copsClientMIBObjects OBJECT IDENTIFIER ::= { copsClientMIB 1 } -- ------------------------------------------------------------- -- Textual Conventions -- ------------------------------------------------------------- CopsClientState ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION Smith Expires December 1999 [Page 6] Internet Draft COPS Client MIB June 1999 "A value indicating the state of a COPS client." SYNTAX INTEGER { copsClientInvalid(1), -- default state. copsClientTcpconnected(2), -- TCP connection up but COPS -- not yet open. copsClientAccepted(3), -- COPS server accepted the client copsClientTimingout(4) -- Keepalive timer has expired, -- client is in process of tearing -- down connection } CopsServerEntryType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "A value indicating how a COPS server entry came into existence." SYNTAX INTEGER { copsServerStatic(1), -- configured by manager copsServerRedirect(2) -- notified by COPS server } CopsErrorCode ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "A value describing a COPS protocol error. Codes are identical to those used by the COPS protocol itself." SYNTAX INTEGER { errorOther(0), -- none of the below errorBadHandle(1), errorInvalidHandleReference(2), errorBadMessageFormat(3), errorUnableToProcess(4), errorMandatoryClientSiMissing(5), errorUnsupportedClientType(6), errorMandatoryCopsObjectMissing(7), errorClientFailure(8), errorCommunicationFailure(9), errorUnspecified(10), -- client-type specific subcode errorShuttingDown(11), errorRedirectToPreferredServer(12), errorUnknownCopsObject(13) } -- REFERENCE -- "COPS section 2.2.8" TcpPort ::= TEXTUAL-CONVENTION Smith Expires December 1999 [Page 7] Internet Draft COPS Client MIB June 1999 STATUS current DESCRIPTION "A value indicating a TCP protocol port number." SYNTAX INTEGER (0..65535) -- ------------------------------------------------------------- copsClientCapabilitiesGroup OBJECT IDENTIFIER ::= { copsClientMIBObjects 1 } -- ------------------------------------------------------------- -- -- Capabilities of the COPS client -- copsClientCapabilities OBJECT-TYPE SYNTAX BITS { copsClientVersion1(0), -- supports version1 of the COPS protocol copsClientIpSec(1) -- supports IP-SEC connections to COPS server } MAX-ACCESS read-only STATUS current DESCRIPTION "A list of the optional capabilities that this COPS client supports." ::= { copsClientCapabilitiesGroup 1 } -- ------------------------------------------------------------- copsClientStatusGroup OBJECT IDENTIFIER ::= { copsClientMIBObjects 2 } -- ------------------------------------------------------------- -- -- Current status of COPS server connections, all read-only. -- copsClientServerCurrentTable OBJECT-TYPE SYNTAX SEQUENCE OF CopsClientServerCurrentEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of information regarding COPS servers as seen from the point of view of a COPS client. This table contains entries for both statically-configured and dynamically-learned servers (from a PDP Redirect operation). One entry exists in this table Smith Expires December 1999 [Page 8] Internet Draft COPS Client MIB June 1999 for each COPS Client-Type served by the COPS server." ::= { copsClientStatusGroup 1 } copsClientServerCurrentEntry OBJECT-TYPE SYNTAX CopsClientServerCurrentEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A set of information regarding a single COPS server serving a single COPS Client-Type from the point of view of a COPS client." INDEX { copsClientServerIpAddress, copsClientServerClientType } ::= { copsClientServerCurrentTable 1 } CopsClientServerCurrentEntry ::= SEQUENCE { copsClientServerIpAddress IpAddress, copsClientServerClientType INTEGER, copsClientServerTcpPort TcpPort, copsClientServerType CopsServerEntryType, copsClientServerSecurityMode INTEGER, copsClientServerLastConnectAttempt TimeStamp, copsClientState CopsClientState, copsClientServerKeepaliveTime TimeInterval, copsClientServerAccountingTime TimeInterval, copsClientInPkts Counter32, copsClientOutPkts Counter32, copsClientInErrs Counter32, copsClientLastError CopsErrorCode, copsClientTcpConnectAttempts Counter32, copsClientTcpConnectFailures Counter32, copsClientOpenAttempts Counter32, copsClientOpenFailures Counter32, copsClientErrUnsupportedClienttype Counter32, copsClientErrUnsupportedVersion Counter32, copsClientErrLengthMismatch Counter32, copsClientErrUnknownOpcode Counter32, copsClientErrUnknownCnum Counter32, copsClientErrBadCtype Counter32, copsClientErrBadSends Counter32, copsClientErrWrongObjects Counter32, copsClientErrWrongOpcode Counter32, copsClientKaTimedoutClients Counter32 } Smith Expires December 1999 [Page 9] Internet Draft COPS Client MIB June 1999 copsClientServerIpAddress OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The address of a COPS Server. It is assumed that the COPS service will be provided on the well-known COPS protocol port number." REFERENCE "COPS section 2.3" ::= { copsClientServerCurrentEntry 1 } copsClientServerClientType OBJECT-TYPE SYNTAX INTEGER (0..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The COPS protocol Client-Type for which this entry applies. Multiple Client-Types can be served by a single COPS server." REFERENCE "COPS section 6, IANA" ::= { copsClientServerCurrentEntry 2 } copsClientServerTcpPort OBJECT-TYPE SYNTAX TcpPort MAX-ACCESS read-only STATUS current DESCRIPTION "The TCP port number on the COPS server to which the client is connected." ::= { copsClientServerCurrentEntry 3 } copsClientServerType OBJECT-TYPE SYNTAX CopsServerEntryType MAX-ACCESS read-only STATUS current DESCRIPTION "Indicator of the source of this COPS server information. COPS servers may be configured by network management into copsClientServerConfigTable and appear in this entry with type copsServerStatic(1). Alternatively, the may be notified from another COPS server by means of the COPS PDP-Redirect mechanism and appear as copsServerRedirect(2)." ::= { copsClientServerCurrentEntry 4 } Smith Expires December 1999 [Page 10] Internet Draft COPS Client MIB June 1999 copsClientServerSecurityMode OBJECT-TYPE SYNTAX INTEGER { other(1), unknown(2), noSec(3), ipSec(4) } MAX-ACCESS read-only STATUS current DESCRIPTION "Indicator of the current security mode in use between client and this COPS server." ::= { copsClientServerCurrentEntry 5 } copsClientServerLastConnectAttempt OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "Timestamp of the last time that this client attempted to connect to this COPS server." ::= { copsClientServerCurrentEntry 6 } copsClientState OBJECT-TYPE SYNTAX CopsClientState MAX-ACCESS read-only STATUS current DESCRIPTION "The state of the connection and COPS protocol with respect to this COPS server." ::= { copsClientServerCurrentEntry 7 } copsClientServerKeepaliveTime OBJECT-TYPE SYNTAX TimeInterval MAX-ACCESS read-only STATUS current DESCRIPTION "The value of the COPS protocol Keepalive timeout, in centiseconds, currently in use by this client, as specified by this COPS server in the Client-Accept operation. A value of zero indicates no keepalive activity is expected." REFERENCE "COPS section 3.7, 4.4" ::= { copsClientServerCurrentEntry 8 } copsClientServerAccountingTime OBJECT-TYPE SYNTAX TimeInterval MAX-ACCESS read-only STATUS current DESCRIPTION Smith Expires December 1999 [Page 11] Internet Draft COPS Client MIB June 1999 "The value of the COPS protocol Accounting timeout, in centiseconds, currently in use by this client, as specified by the COPS server in the Client-Accept operation. A value of zero indicates no accounting activity is to be performed." REFERENCE "COPS section 3.7" ::= { copsClientServerCurrentEntry 9 } copsClientInPkts OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total number of COPS packets that this client has received from this COPS server. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 10 } copsClientOutPkts OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total number of COPS packets that this client has sent to this COPS server. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 11 } copsClientInErrs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total number of COPS packets that this client has received from this COPS server that contained errors in syntax. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 12 } copsClientLastError OBJECT-TYPE SYNTAX CopsErrorCode MAX-ACCESS read-only STATUS current DESCRIPTION "The code contained in the last COPS protocol Error Object Smith Expires December 1999 [Page 12] Internet Draft COPS Client MIB June 1999 received by this client from this COPS server. This value is not zeroed on COPS Client-Open operations." REFERENCE "COPS section 2.2.8" ::= { copsClientServerCurrentEntry 13 } copsClientTcpConnectAttempts OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the number of times that this COPS client has tried to open an TCP connection to a COPS server. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 14 } copsClientTcpConnectFailures OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the number of times that this COPS client has failed to open an TCP connection to a COPS server. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 15 } copsClientOpenAttempts OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the number of times that this COPS client has tried to perform a COPS Client-Open to a COPS server. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 16 } copsClientOpenFailures OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the number of times that this COPS client has failed Smith Expires December 1999 [Page 13] Internet Draft COPS Client MIB June 1999 to perform a COPS Client-Open to a COPS server. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 17 } copsClientErrUnsupportedClienttype OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total number of COPS packets that this client has received from COPS servers that referred to Client-Types that are unsupported by this client. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 18 } copsClientErrUnsupportedVersion OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total number of COPS packets that this client has received from COPS servers that had a COPS protocol Version number that is unsupported by this client. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 19 } copsClientErrLengthMismatch OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total number of COPS packets that this client has received from COPS servers that had a COPS protocol Message Length that did not match the actual received packet. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 20 } copsClientErrUnknownOpcode OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION Smith Expires December 1999 [Page 14] Internet Draft COPS Client MIB June 1999 "A count of the total number of COPS packets that this client has received from COPS servers that had a COPS protocol Op Code that was unrecognised by this client. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 21 } copsClientErrUnknownCnum OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total number of COPS packets that this client has received from COPS servers that contained a COPS protocol object C-Num that was unrecognised by this client. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 22 } copsClientErrBadCtype OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total number of COPS packets that this client has received from COPS servers that contained a COPS protocol object C-Type that was not defined for the C-Nums known by this client. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 23 } copsClientErrBadSends OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total number of COPS packets that this client attempted to send to COPS servers that resulted in a transmit error. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 24 } copsClientErrWrongObjects OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current Smith Expires December 1999 [Page 15] Internet Draft COPS Client MIB June 1999 DESCRIPTION "A count of the total number of COPS packets that this client has received from COPS servers that did not contain a permitted set of COPS protocol objects. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 25 } copsClientErrWrongOpcode OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total number of COPS packets that this client has received from COPS servers that had a COPS protocol Op Code that should not have been sent to a COPS client e.g. Open-Requests. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 26 } copsClientKaTimedoutClients OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the total number of times that this client has been shut down by COPS servers that had detected a COPS protocol Keepalive timeout. This value is cumulative since agent restart and is not zeroed on new connections." ::= { copsClientServerCurrentEntry 27 } -- ------------------------------------------------------------- copsClientConfigGroup OBJECT IDENTIFIER ::= { copsClientMIBObjects 3 } -- ------------------------------------------------------------- copsClientServerConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF CopsClientServerConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Table of possible COPS servers to try to connect to in order of copsClientServerConfigPriority. Note that a PDPRedirect always takes precedence over any locally configured priority." ::= { copsClientConfigGroup 1 } Smith Expires December 1999 [Page 16] Internet Draft COPS Client MIB June 1999 copsClientServerConfigEntry OBJECT-TYPE SYNTAX CopsClientServerConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A set of configuration information regarding a single COPS server from the point of view of a COPS client." INDEX { copsClientServerConfigIpAddress, copsClientServerConfigClientType } ::= { copsClientServerConfigTable 1 } CopsClientServerConfigEntry ::= SEQUENCE { copsClientServerConfigIpAddress IpAddress, copsClientServerConfigClientType INTEGER, copsClientServerConfigTcpPort TcpPort, copsClientServerConfigPriority Integer32, copsClientServerConfigRetryCount Integer32, copsClientServerConfigRetryInterval TimeInterval, copsClientServerConfigRowStatus RowStatus } copsClientServerConfigIpAddress OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The address of a COPS Server. It is assumed that the COPS service will be provided on the well-known COPS protocol port number." REFERENCE "COPS section 2.3" ::= { copsClientServerConfigEntry 1 } copsClientServerConfigClientType OBJECT-TYPE SYNTAX INTEGER (0..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The COPS protocol Client-Type for which this entry applies and for which this COPS server is capable of serving. Multiple Client-Types can be served by a single COPS server." REFERENCE "COPS section 6, IANA" Smith Expires December 1999 [Page 17] Internet Draft COPS Client MIB June 1999 ::= { copsClientServerConfigEntry 2 } copsClientServerConfigTcpPort OBJECT-TYPE SYNTAX TcpPort MAX-ACCESS read-create STATUS current DESCRIPTION "The TCP port number on the COPS server to which the client should connect." ::= { copsClientServerConfigEntry 3 } copsClientServerConfigPriority OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-create STATUS current DESCRIPTION "The priority of this entry relative to other entries. COPS client will attempt to contact COPS servers for the appropriate Client-Type in the order of their priority values. The order to be used amongst server entries with the same priority is undefined. COPS servers that are notified to the client using the COPS protocol PDP-Redirect mechanism are always used in preference to any entries in this table." ::= { copsClientServerConfigEntry 4 } copsClientServerConfigRetryCount OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-create STATUS current DESCRIPTION "The number of times the client should retry to connect to this COPS server before moving on to another server." DEFVAL { 1 } ::= { copsClientServerConfigEntry 5 } copsClientServerConfigRetryInterval OBJECT-TYPE SYNTAX TimeInterval UNITS "centi-seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The time to wait between retrying to connect to this COPS server." DEFVAL { 1000 } Smith Expires December 1999 [Page 18] Internet Draft COPS Client MIB June 1999 ::= { copsClientServerConfigEntry 6 } copsClientServerConfigRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "State of this entry in the table." ::= { copsClientServerConfigEntry 7 } -- ------------------------------------------------------------- -- Conformance Information -- ------------------------------------------------------------- copsClientConformance OBJECT IDENTIFIER ::= { copsClientMIB 2 } copsClientGroups OBJECT IDENTIFIER ::= { copsClientConformance 1 } copsClientCompliances OBJECT IDENTIFIER ::= { copsClientConformance 2 } -- ------------------------------------------------------------- -- units of conformance -- ------------------------------------------------------------- copsDeviceStatusGroup OBJECT-GROUP OBJECTS { copsClientCapabilities, copsClientServerTcpPort, copsClientServerType, copsClientServerSecurityMode, copsClientServerLastConnectAttempt, copsClientState, copsClientServerKeepaliveTime, copsClientServerAccountingTime, copsClientInPkts, copsClientOutPkts, copsClientInErrs, copsClientLastError, copsClientTcpConnectAttempts, copsClientTcpConnectFailures, copsClientOpenAttempts, copsClientOpenFailures, copsClientErrUnsupportedClienttype, copsClientErrUnsupportedVersion, copsClientErrLengthMismatch, copsClientErrUnknownOpcode, copsClientErrUnknownCnum, copsClientErrBadCtype, copsClientErrBadSends, copsClientErrWrongObjects, copsClientErrWrongOpcode, copsClientKaTimedoutClients } STATUS current DESCRIPTION "A collection of objects for monitoring the status of connections to COPS servers and statistics for a COPS client." Smith Expires December 1999 [Page 19] Internet Draft COPS Client MIB June 1999 ::= { copsClientGroups 1 } copsDeviceConfigGroup OBJECT-GROUP OBJECTS { copsClientServerConfigTcpPort, copsClientServerConfigPriority, copsClientServerConfigRetryCount, copsClientServerConfigRetryInterval, copsClientServerConfigRowStatus } STATUS current DESCRIPTION "A collection of objects for configuring COPS server information." ::= { copsClientGroups 2 } -- ------------------------------------------------------------- -- compliance statements -- ------------------------------------------------------------- copsClientCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for device support of management of the COPS client." MODULE MANDATORY-GROUPS { copsDeviceStatusGroup, copsDeviceConfigGroup } OBJECT copsClientServerConfigTcpPort MIN-ACCESS read-only DESCRIPTION "Write access is required only if the device supports the configuration of COPS server information." OBJECT copsClientServerConfigPriority MIN-ACCESS read-only DESCRIPTION "Write access is required only if the device supports the configuration of COPS server information." OBJECT copsClientServerConfigRetryCount MIN-ACCESS read-only DESCRIPTION Smith Expires December 1999 [Page 20] Internet Draft COPS Client MIB June 1999 "Write access is required only if the device supports the configuration of COPS server information." OBJECT copsClientServerConfigRetryInterval MIN-ACCESS read-only DESCRIPTION "Write access is required only if the device supports the configuration of COPS server information." OBJECT copsClientServerConfigRowStatus MIN-ACCESS read-only DESCRIPTION "Write access is required only if the device supports the configuration of COPS server information." ::= { copsClientCompliances 1 } END 6. Acknowledgments This document documents the client side of the COPS protocol which was defined by the RSVP Admission Policy Working Group. 7. Security Considerations There are a number of management objects defined in this MIB that have 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. SNMPv1 by itself is not a secure environment. 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. 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 [USM] and the View-based Access Control Model [VACM] is recommended. Smith Expires December 1999 [Page 21] Internet Draft COPS Client MIB June 1999 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. 8. References [ARCH] Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture for Describing SNMP Management Frameworks", RFC 2571, April 1999 [V1PROTO] Case, J., Fedor, M., Schoffstall, M. and J. Davin, "Simple Network Management Protocol", STD 15, RFC 1157, May 1990. [V1SMI] Rose, M., and K. McCloghrie, "Structure and Identification of Management Information for TCP/IP-based Internets", STD 16, RFC 1155, May 1990 [V1CONCISE] Rose, M. and K. McCloghrie, "Concise MIB Definitions", STD 16, RFC 1212, March 1991 [V1TRAPS] M. Rose, "A Convention for Defining Traps for use with the SNMP", RFC 1215, March 1991 [V2SMI] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. [V2TC] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [V2CONFORM] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999. Smith Expires December 1999 [Page 22] Internet Draft COPS Client MIB June 1999 [V2COMMUNITY] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Introduction to Community-based SNMPv2", RFC 1901, January 1996. [V2TRANS] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Transport Mappings for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1906, January 1996. [V2PROTO] Case, J., McCloghrie, K., Rose, M. and Waldbusser, S., "Protocol Operations for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1905, January 1996. [V3INTRO] Case, J., Mundy, R., Partain, D. and B. Stewart, "Introduction to Version 3 of the Internet-standard Network Management Framework", RFC 2570, April 1999. [V3MPC] Case, J., Harrington D., Presuhn R. and B. Wijnen, "Message Processing and Dispatching for the Simple Network Management Protocol (SNMP)", RFC 2572, April 1999. [V3USM] Blumenthal, U. and B. Wijnen, "The User-Based Security Model (USM) for Version 3 of the Simple Network Management Protocol (SNMPv3)", RFC 2574, April 1999. [V3APPS] Levi, D., Meyer, P. and B. Stewart, "SNMP Applications", RFC 2573, April 1999. [V3VACM] Wijnen, B., Presuhn, R. and K. McCloghrie, "View-based Access Control Model for the Simple Network Management Protocol (SNMP)", RFC 2575, April 1999. [ASN1] Information processing systems - Open Systems Interconnection - Specification of Abstract Syntax Notation One (ASN.1), International Organization for Standardization, International Standard 8824, December 1987. Smith Expires December 1999 [Page 23] Internet Draft COPS Client MIB June 1999 [ASN1BER] Information processing systems - Open Systems Interconnection - Specification of Basic Encoding Rules for Abstract Notation One (ASN.1), International Organization for Standardization, International Standard 8825, December 1987. [MIB2] McCloghrie K., and M. Rose, Editors, "Management Information Base for Network Management of TCP/IP-based internets", STD 17, RFC 1213, March 1991. [FRAMEWORK] Yavatkar, R., Pendarakis, D. and Guerin, R., "A Framework for Policy-based Admission Control", Internet Draft, May 1999. http://www.ietf.org/internet-drafts/draft-ietf-rap-framework-03.txt [COPS] Boyle, J., Cohen, R., Durham, D., Herzog, S., Rajan, R. and Sastry, A., "The COPS (Common Open Policy Service) Protocol", Internet Draft, February 1999. http://www.ietf.org/internet-drafts/draft- ietf-rap-cops-06.txt [RSVP] Braden, R. ed. et al., "Resource ReSerVation Protocol (RSVP) Version 1 - Functional Specification", RFC 2205, September 1997. [COPSRSVP] Boyle, J., Cohen, R., Durham, D., Herzog, S., Rajan, R. and Sastry, A., "COPS Usage for RSVP", Internet Draft, February 1999. http://www.ietf.org/internet-drafts/draft-ietf-rap-cops-rsvp-04.txt [SRVLOC] Guttman, E., Perkins, C., Veizades, J., Day, M., "Service Location Protocol, Version 2", Internet Draft, April 1999. http://www.ietf.org/internet-drafts/draft-ietf-svrloc-protocol- v2-15.txt [PROCESS] Bradner, S., "The Internet Standards Process -- Revision 3", BCP 9, RFC 2026, October 1996. Smith Expires December 1999 [Page 24] Internet Draft COPS Client MIB June 1999 9. Authors' Addresses Andrew Smith Extreme Networks 3585 Monroe St. Santa Clara CA 95051 USA Phone: +1 408 579 2821 EMail: andrew@extremenetworks.com David Partain Ericsson Radio Systems Research and Innovation P.O. Box 1248 SE-581 12 Linkoping Sweden Phone: +46 13 28 41 44 EMail: David.Partain@ericsson.com John Seligson Nortel Networks, Inc. 4401 Great America Parkway Santa Clara, CA 95054 USA Phone: +1 408 495 2992 EMail: jseligso@nortelnetworks.com Smith Expires December 1999 [Page 25] Internet Draft COPS Client MIB June 1999 10. Full Copyright Copyright (C) The Internet Society (1999). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implmentation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Smith Expires December 1999 [Page 26]