-- extracted from draft-ietf-rmonmib-pmcaps-01.txt -- at Sat Jul 22 07:08:03 2000 PMCAPS-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, OBJECT-IDENTITY, Integer32 FROM SNMPv2-SMI TruthValue, RowPointer FROM SNMPv2-TC MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF SnmpAdminString FROM SNMP-FRAMEWORK-MIB rmon FROM RMON-MIB protocolDirLocalIndex, protocolDirectoryGroup PROM RMON2-MIB; pmCapsMIB MODULE-IDENTITY LAST-UPDATED "200007140000Z" ORGANIZATION "IETF RMONMIB WG" CONTACT-INFO " Andy Bierman Cisco Systems, Inc. RMONMIB WG Chair and PMCAPS MIB Editor Postal: 170 West Tasman Drive San Jose, CA USA 95134 Tel: +1 408 527-3711 E-mail: abierman@cisco.com Send comments to Mailing list subscription information: http://www.ietf.org/mailman/listinfo/rmonmib " DESCRIPTION "The MIB module for representing Performance Measurement Capabilities." REVISION "200007140000Z" DESCRIPTION "Initial Version of the Performance Measurement Capabilities MIB." ::= { rmon 25 } pmCapsMIBObjects OBJECT IDENTIFIER ::= { pmCapsMIB 1 } pmCaps OBJECT IDENTIFIER ::= { pmCapsMIBObjects 1 } pmMetrics OBJECT IDENTIFIER ::= { pmCapsMIBObjects 2 } -- -- PM Metric Table -- pmMetricTable OBJECT-TYPE SYNTAX SEQUENCE OF PmMetricEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains one row per PM Metric supported by this agent, and should be populated during system initialization." ::= { pmCaps 1 } pmMetricEntry OBJECT-TYPE SYNTAX PmMetricEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about a particular PM Metric." INDEX { pmMetricID } ::= { pmMetricTable 1 } PmMetricEntry ::= SEQUENCE { pmMetricID OBJECT IDENTIFIER, pmMetricType INTEGER, pmMetricDirType INTEGER, pmMetricName SnmpAdminString, pmMetricReference SnmpAdminString } pmMetricID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index for this entry. This object identifies the standard or vendor-specific registration OBJECT IDENTIFER defined for a particular PM metric." ::= { pmMetricEntry 1 } pmMetricType OBJECT-TYPE SYNTAX INTEGER { other(1), connectMetric(2), delayMetric(3), lossMetric(4) } MAX-ACCESS read-only STATUS current DESCRIPTION "The basic type of metric indicated by this entry. The value 'other(1)' indicates that this metric cannot be characterized by any of the remaining enumerations specified for this object. The value 'connectMetric(2)' indicates that this metric measures connectivity characteristics. The value 'delayMetric(3)' indicates that this metric measures delay characteristics. The value 'lossMetric(4)' indicates that this metric measures loss characteristics." ::= { pmMetricEntry 2 } pmMetricDirType OBJECT-TYPE SYNTAX INTEGER { oneWay(1), twoWay(2), multiWay(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "The directional characteristics of the this metric. The value 'oneWay(1)' indicates that this metric is measured with some sort of uni-directional test. The value 'twoWay(2)' indicates that this metric is measured with some sort of bi-directional test. The value 'multiWay(3)' indicates that this metric is measured with some combination of uni-directional and/or bi- directional tests." ::= { pmMetricEntry 3 } pmMetricName OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS read-only STATUS current DESCRIPTION "The textual name of this metric." ::= { pmMetricEntry 4 } pmMetricReference OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS read-only STATUS current DESCRIPTION "This object contains a reference to the document which defines this metric. If this document is available online via electronic download, then a URL should be specified in this object. For example, if this pmMetricEntry identified the IPPM metric 'Type-P-Round-Trip-Delay', then this object should contain the value 'http://www.ietf.org/rfc/rfc2681.txt'." ::= { pmMetricEntry 5 } -- -- PM Study Class Table -- pmStudyClassTable OBJECT-TYPE SYNTAX SEQUENCE OF PmStudyClassEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains one row per PM Study Class supported by this APM/TPM Device, and should be populated during system initialization." ::= { pmCaps 2 } pmStudyClassEntry OBJECT-TYPE SYNTAX PmStudyClassEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about a particular PM Study Class." INDEX { pmStudyClassID } ::= { pmStudyClassTable 1 } PmStudyClassEntry ::= SEQUENCE { pmStudyClassID OBJECT IDENTIFIER, pmStudyClassMeasLoc BITS, pmStudyClassMeasType BITS, pmStudyClassCollectPts Integer32, pmStudyClassCollectCaps BITS, pmStudyClassOutputCaps BITS, pmStudyClassCtlTablePtr RowPointer } pmStudyClassID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index for this entry. This object identifier should specify the standard or vendor-specific registration OID for this PM Study Class." ::= { pmStudyClassEntry 1 } pmStudyClassMeasLoc OBJECT-TYPE SYNTAX BITS { pmClient(0), pmNetwork(1), pmServer(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "The measurement location characteristics of the PM Data collection methodologies employed by this PM Study Class. If this PM Study class utilizes some sort of measurement technology located on the host machine being monitored, then the 'pmClient' BIT will be set. Note that this bit should only be set if any PM technology is installed on the client, in addition to the 'normal' protocol operations supported by that machine. If this PM Study class utilizes some sort of measurement technology located on one or more networking devices (e.g., routers, switches, RMON probes), then the 'pmNetwork' BIT will be set. If this PM Study class utilizes some sort of measurement technology located on the application server being monitored, then the 'pmServer' BIT will be set. Note that this bit should only be set if any PM technology is installed on the server, in addition to the 'normal' protocol operations supported by that machine." ::= { pmStudyClassEntry 2 } pmStudyClassMeasType OBJECT-TYPE SYNTAX BITS { pmPassive(0), pmActive(1), pmBuiltin(2) } MAX-ACCESS read-only STATUS current DESCRIPTION "The type(s) of collection methodologies employed by this PM Study Class. If this PM Study class utilizes some sort of passive monitoring technology, (i.e., UI operations and/or protocol transactions of real users are measured) the 'pmPassive' BIT will be set. If this PM Study class utilizes some sort of active monitoring technology, (i.e., protocol transactions generated for the purpose of obtaining PM Data) the 'pmPassive' BIT will be set. If this PM Study class utilizes some sort of built-in monitoring technology, (i.e., UI operations and/or protocol transactions of real users are somehow altered to provide PM Data) the 'pmBuiltin' BIT will be set." ::= { pmStudyClassEntry 3 } pmStudyClassCollectPts OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "The number of PM Collection Points utilized in this PM Study Class. If this is a variable quantity, then this object should contain the minimum number needed for this PM Study Class to function." ::= { pmStudyClassEntry 4 } pmStudyClassCollectCaps OBJECT-TYPE SYNTAX BITS { pmCollectTrans(0), pmCollectApp(1), pmCollectFlow(2), pmCollectNonNet(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object identifies some generic characteristics of the collection methodologies employed by this PM Study Class. If this PM Study class utilizes some sort of transport layer PM Data collection technology, then the 'pmCollectTrans' BIT will be set. If this PM Study class utilizes some sort of application layer PM Data collection technology, then the 'pmCollectApp' BIT will be set. If this PM Study class utilizes PM Data collection technology based on monitoring of some sort of network flow summary information, then the 'pmCollectFlow' BIT will be set. If this PM Study class utilizes some sort of PM Data collection technology based on monitoring of non-network events, such as UI monitoring of window events, then the 'pmCollectNonNet' BIT will be set." ::= { pmStudyClassEntry 5 } pmStudyClassOutputCaps OBJECT-TYPE SYNTAX BITS { pmOutputOther(0), pmOutputApmDist(1), pmOutputApmStat(2), pmOutputApmHist(3), pmOutputApmFlow(4), pmOutputApmExcept(5), pmOutputApmProp(6), pmOutputTpmDist(7), pmOutputTpmStat(8), pmOutputTpmHist(9), pmOutputTpmExcept(10), pmOutputTpmProp(11) } MAX-ACCESS read-only STATUS current DESCRIPTION "The type(s) of APM and/or TPM Reports that this PM Study Class can provide. [ed. - this list will change as the APM and TPM MIBs are finalized.] If this PM Study class can generate standard reports not described by any of the provided BITS here, then the 'pmOutputOther' BIT will be set. If this PM Study class can generate distribution-oriented reports for application layer protocols, then the 'pmOutputApmDist' BIT will be set. If this PM Study class can generate statistics-oriented reports for application layer protocols, then the 'pmOutputApmStat' BIT will be set. If this PM Study class can generate historical analysis oriented reports for application layer protocols, then the 'pmOutputApmHist' BIT will be set. If this PM Study class can generate flow decomposition analysis oriented reports for application layer protocols, then the 'pmOutputApmFlow' BIT will be set. If this PM Study class can generate profile exception oriented reports for application layer protocols, then the 'pmOutputApmExcept' BIT will be set. If this PM Study class can generate vendor-specific proprietary reports for application layer protocols, in addition to standard reports, then the 'pmOutputApmProp' BIT will be set. If this PM Study class can generate distribution-oriented reports for transport layer protocols, then the 'pmOutputTpmDist' BIT will be set. If this PM Study class can generate statistics-oriented reports for transport layer protocols, then the 'pmOutputTpmStat' BIT will be set. If this PM Study class can generate historical analysis oriented reports for transport layer protocols, then the 'pmOutputTpmHist' BIT will be set. If this PM Study class can generate flow decomposition analysis oriented reports for transport layer protocols, then the 'pmOutputTpmFlow' BIT will be set. If this PM Study class can generate profile exception oriented reports for transport layer protocols, then the 'pmOutputTpmExcept' BIT will be set. If this PM Study class can generate vendor-specific proprietary reports for transport layer protocols, in addition to standard reports, then the 'pmOutputTpmProp' BIT will be set." ::= { pmStudyClassEntry 6 } pmStudyClassCtlTablePtr OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "This object identifies a specific MIB table that can be used to configure detailed aspects of the collection or report processing functions for this PM Study Class. This object just identifies a particular row in the MIB table to use, not any particular agent which implements this MIB table. This agent may or may not contain an implementation of the specified MIB, and/or the specified MIB may not be accessible in the same views as the this MIB. If no appropriate row in a MIB table can be identified, then the value { 0 0 } is returned." ::= { pmStudyClassEntry 7 } -- -- PM Study Metric Table -- pmStudyMetricTable OBJECT-TYPE SYNTAX SEQUENCE OF PmStudyMetricEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains one row for each metric supported by the specified PM Study Class, and should be populated during system initialization." ::= { pmCaps 3 } pmStudyMetricEntry OBJECT-TYPE SYNTAX PmStudyMetricEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Metrics information related to a particular PM Study Class. The pmStudyClassID value in the index identifies the pmStudyClassEntry with the same index value." INDEX { pmStudyClassID } ::= { pmStudyMetricTable 1 } PmStudyMetricEntry ::= SEQUENCE { pmStudyMetricID OBJECT IDENTIFIER } pmStudyMetricID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-only STATUS current DESCRIPTION "This object identifies the PM Metric associated with this PM Study, and contains the same value as the pmMetricID index for that pmMetricEntry." ::= { pmStudyMetricEntry 1 } -- -- PM Study Protocol Table -- pmStudyProtocolTable OBJECT-TYPE SYNTAX SEQUENCE OF PmStudyProtocolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains one row for each protocol supported by the specified PM Study Class, and should be populated during system initialization. This is an indication of the protocols the indicated PM Study Class is capable of measuring. The actual protocols present in a given APM or TPM Report may be a subset of the protocols identified in this table. This table contain entries which reference any protocol in the protocolDirTable. If the index of this entry identifies an internal node in the protocolDirTable, then the pmStudyProtocolIsSubtree object is relevant." ::= { pmCaps 4 } pmStudyProtocolEntry OBJECT-TYPE SYNTAX PmStudyProtocolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Protocol information about a particular PM Study Class. The pmStudyClassID value in the index identifies the pmStudyClassEntry with the same index value, associated with the list of protocols in this table. The protocolDirLocalIndex value identifies the protocolDirEntry which contains the same value in the protocolDirLocalIndex object." INDEX { pmStudyClassID, protocolDirLocalIndex } ::= { pmStudyProtocolTable 1 } PmStudyProtocolEntry ::= SEQUENCE { pmStudyProtocolIsSubtree TruthValue } pmStudyProtocolIsSubtree OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates whether or not this entry identifies one node or an entire subtree of the protocolDirTable. If set to 'true(1)' then the specified protocolDirEntry, and all its children, are supported by the specified PM Study Class. If set to 'false(2)', then the specified protocolDirEntry identified by this entry is supported by the PM Study Class." ::= { pmStudyProtocolEntry 1 } -- -- APM Metric Registry -- -- APM Avaiability Metric for all transaction types pmAppAvailMetric OBJECT-IDENTITY STATUS current DESCRIPTION "Metric Name: Type-P-APM-Availability Metric Definition: This metric characterizes the availability of a network service by measuring the percentage of successful transactions the network service delivers over a given time interval. This metric is calculated by first measuring the IPPM metric 'Type-P-Interval-Bidirectional-Connectivity' for the interval starting at the instant 'Src' initiates a transaction of Type-P with the 'Dst' host, and ending at the instant the last packet of the transaction has been received. In addition to successful connectivity over this interval, the particular application request must also succeed, for a transaction to be considered successful. If either condition is false, then that transaction is considered to be unsuccessful. The derived metric is defined as the total number of successful transactions between Src and Dst, divided by the total number of transaction attempts between Src and Dst, during the time interval dT. Metric Parameters: Src, the network address of a host Dst, the network address of a host dT, a time interval Metric Units: Percentage Mapping of Type P: Type P refers to an application protocol encapsulation, identified by a specific protocolDirEntry. Metric Type: connectMetric(1) Metric Dir Type: twoWay(2)" REFERENCE "IPPM Metrics for Measuring Connectivity, RFC 2678 [RFC2678], Section 5, September 1999." ::= { pmMetrics 1 } -- APM Responsiveness Metric for Transaction-oriented applications pmAppTransRespMetric OBJECT-IDENTITY STATUS current DESCRIPTION "Metric Name: Type-P-APM-Transaction-Responsiveness Metric Definition: This metric characterizes the speed at which a transaction-oriented network application delivers a requested service, by measuring the speed of individual application transactions. This metric is calculated by utilizing a variation of the IPPM metric 'Type-P-Round-trip-Delay'. The total transaction time (dT) is determined by summing all the packet transactions of Type-P between the Src and Dst hosts. The bi-directional flight times are measured (as specified by the IPPM metric definition), but the server response time for each request is included in the measurement. The derived metric is defined as the total number of tenths of seconds for the transaction between Src and Dst to complete. Metric Parameters: Src, the network address of a host Dst, the network address of a host dT, a time interval Metric Units: Tenths of seconds Mapping of Type P: Type P refers to an application protocol encapsulation, identified by a specific protocolDirEntry, which is characterized as a transaction-oriented protocol. Metric Type: delayMetric(2) Metric Dir Type: twoWay(2)" REFERENCE "Round-trip for Delay Metric for IPPM, RFC 2681 [RFC2681], Section 2, September 1999." ::= { pmMetrics 2 } -- APM Responsiveness Metric for Throughput-oriented applications -- [ed., in progress] pmAppTputRespMetric OBJECT-IDENTITY STATUS current DESCRIPTION "Metric Name: Type-P-APM-Throughput-Responsiveness Metric Definition: This metric characterizes the speed at which a throughput-oriented network application delivers a requested service, by measuring the transfer rate of individual application transactions. This metric is calculated by ... [rest of para is TBD] The derived metric is normalized and inverted, into units of 'seconds per terabit'. For transactions up to one terabit in size, it is defined as the total number of seconds it would take for the transaction between Src and Dst to complete, if the transaction size included one terabit of data. For transactions over one terabit in size, it is defined as the average number of seconds for the transaction between Src and Dst to complete, for each terabit of data. E.g., a transfer rate of 2Kbps equals 500,000,000 and a transfer rate of 1Gbps = 1000. Metric Parameters: Src, the network address of a host Dst, the network address of a host dT, a time interval B, a number of terabits Metric Units: Seconds Per Terabit Mapping of Type P: Type P refers to an application protocol encapsulation, identified by a specific protocolDirEntry, which is characterized as a throughput-oriented protocol. Metric Type: delayMetric(2) Metric Dir Type: twoWay(2)" REFERENCE "Round-trip for Delay Metric for IPPM, RFC 2681 [RFC2681], Section 2, September 1999." ::= { pmMetrics 3 } -- APM Responsiveness Metric for Stream-oriented applications -- [ed., in progress] pmAppStreamRespMetric OBJECT-IDENTITY STATUS current DESCRIPTION "Metric Name: Type-P-APM-Stream-Responsiveness Metric Definition: This metric characterizes the 'quality' at which a streaming-oriented network application delivers a requested service, by measuring the percentage of time that the service is degraded or interrupted to the total time to deliver the service. [Rest of definition TBD] Metric Parameters: Src, the network address of a host Dst, the network address of a host Metric Units: [TBD] Mapping of Type P: Type P refers to an application protocol encapsulation, identified by a specific protocolDirEntry, which is characterized as a streaming-oriented protocol. Metric Type: delayMetric(2) Metric Dir Type: twoWay(2)" REFERENCE "Round-trip for Delay Metric for IPPM, RFC 2681 [RFC2681], Section 2, September 1999." ::= { pmMetrics 4 } -- -- TPM Metric Registry [TBD] -- -- placeholder for notifications pmCapsNotifications OBJECT IDENTIFIER ::= { pmCapsMIB 2 } -- conformance information pmCapsConformance OBJECT IDENTIFIER ::= { pmCapsMIB 3 } pmCapsCompliances OBJECT IDENTIFIER ::= { pmCapsConformance 1 } pmCapsGroups OBJECT IDENTIFIER ::= { pmCapsConformance 2 } -- compliance statements pmCapsCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for SNMP entities which implement version 1 of the APM Capabilities MIB." MODULE -- this module MANDATORY-GROUPS { protocolDirectoryGroup, pmCapsGroup } ::= { pmCapsCompliances 1 } -- MIB groupings pmCapsGroup OBJECT-GROUP OBJECTS { pmMetricType, pmMetricDirType, pmMetricName, pmMetricReference, pmStudyClassMeasLoc, pmStudyClassMeasType, pmStudyClassCollectPts, pmStudyClassCollectCaps, pmStudyClassOutputCaps, pmStudyClassCtlTablePtr, pmStudyMetricID, pmStudyProtocolIsSubtree } STATUS current DESCRIPTION "The collection of objects which are used to represent application performance measurement capabilities, for which a single agent provides management information." ::= { pmCapsGroups 1 } END -- -- Copyright (C) The Internet Society (2000). 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 implementation 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.