Network Working Group                                      S. Waldbusser
Request for Comments: 3729                                    March 2004
Category: Standards Track
        
Network Working Group                                      S. Waldbusser
Request for Comments: 3729                                    March 2004
Category: Standards Track
        

Application Performance Measurement MIB

应用程序性能度量MIB

Status of this Memo

本备忘录的状况

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

本文件规定了互联网社区的互联网标准跟踪协议,并要求进行讨论和提出改进建议。有关本协议的标准化状态和状态,请参考当前版本的“互联网官方协议标准”(STD 1)。本备忘录的分发不受限制。

Copyright Notice

版权公告

Copyright (C) The Internet Society (2004). All Rights Reserved.

版权所有(C)互联网协会(2004年)。版权所有。

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 measuring the application performance as experienced by end-users.

此备忘录定义了管理信息库(MIB)的一部分,用于基于TCP/IP的Internet中的网络管理协议。特别是,它定义了用于测量最终用户体验的应用程序性能的对象。

Table of Contents

目录

   1.  The Internet-Standard Management Framework . . . . . . . . . .  2
   2.  Overview . . . . . . . . . . . . . . . . . . . . . . . . . . .  2
       2.1.  Report Aggregation . . . . . . . . . . . . . . . . . . .  4
       2.2.  AppLocalIndex Linkages . . . . . . . . . . . . . . . . .  8
       2.3.  Measurement Methodology. . . . . . . . . . . . . . . . . 10
       2.4.  Instrumentation Architectures. . . . . . . . . . . . . . 10
             2.4.1.  Application Directory Caching. . . . . . . . . . 10
             2.4.2.  Push Model . . . . . . . . . . . . . . . . . . . 11
       2.5.  Structure of this MIB Module . . . . . . . . . . . . . . 12
             2.5.1.  The APM Application Directory Group. . . . . . . 13
             2.5.2.  The APM User Defined Applications Group. . . . . 13
             2.5.3.  The APM Report Group . . . . . . . . . . . . . . 13
             2.5.4.  The APM Transaction Group. . . . . . . . . . . . 13
             2.5.5.  The APM Exception Group. . . . . . . . . . . . . 14
             2.5.6.  The APM Notification Group . . . . . . . . . . . 14
   3.  Definitions. . . . . . . . . . . . . . . . . . . . . . . . . . 14
   4.  Security Considerations. . . . . . . . . . . . . . . . . . . . 58
   5.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 60
       5.1.  Normative References . . . . . . . . . . . . . . . . . . 60
       5.2.  Informative References . . . . . . . . . . . . . . . . . 60
        
   1.  The Internet-Standard Management Framework . . . . . . . . . .  2
   2.  Overview . . . . . . . . . . . . . . . . . . . . . . . . . . .  2
       2.1.  Report Aggregation . . . . . . . . . . . . . . . . . . .  4
       2.2.  AppLocalIndex Linkages . . . . . . . . . . . . . . . . .  8
       2.3.  Measurement Methodology. . . . . . . . . . . . . . . . . 10
       2.4.  Instrumentation Architectures. . . . . . . . . . . . . . 10
             2.4.1.  Application Directory Caching. . . . . . . . . . 10
             2.4.2.  Push Model . . . . . . . . . . . . . . . . . . . 11
       2.5.  Structure of this MIB Module . . . . . . . . . . . . . . 12
             2.5.1.  The APM Application Directory Group. . . . . . . 13
             2.5.2.  The APM User Defined Applications Group. . . . . 13
             2.5.3.  The APM Report Group . . . . . . . . . . . . . . 13
             2.5.4.  The APM Transaction Group. . . . . . . . . . . . 13
             2.5.5.  The APM Exception Group. . . . . . . . . . . . . 14
             2.5.6.  The APM Notification Group . . . . . . . . . . . 14
   3.  Definitions. . . . . . . . . . . . . . . . . . . . . . . . . . 14
   4.  Security Considerations. . . . . . . . . . . . . . . . . . . . 58
   5.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 60
       5.1.  Normative References . . . . . . . . . . . . . . . . . . 60
       5.2.  Informative References . . . . . . . . . . . . . . . . . 60
        
   6.  Author's Address . . . . . . . . . . . . . . . . . . . . . . . 60
   7.  Full Copyright Statement . . . . . . . . . . . . . . . . . . . 61
        
   6.  Author's Address . . . . . . . . . . . . . . . . . . . . . . . 60
   7.  Full Copyright Statement . . . . . . . . . . . . . . . . . . . 61
        
1. The Internet-Standard Management Framework
1. 因特网标准管理框架

For a detailed overview of the documents that describe the current Internet-Standard Management Framework, please refer to section 7 of RFC 3410 [8].

有关描述当前互联网标准管理框架的文件的详细概述,请参阅RFC 3410[8]第7节。

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 [1], STD 58, RFC 2579 [2] and STD 58, RFC 2580 [3].

托管对象通过虚拟信息存储(称为管理信息库或MIB)进行访问。MIB对象通常通过简单网络管理协议(SNMP)进行访问。MIB中的对象是使用管理信息结构(SMI)中定义的机制定义的。本备忘录规定了符合SMIv2的MIB模块,如STD 58、RFC 2578[1]、STD 58、RFC 2579[2]和STD 58、RFC 2580[3]所述。

2. Overview
2. 概述

This document continues the architecture created in the RMON MIB [7] by providing analysis of application performance as experienced by end-users.

本文档通过分析最终用户体验到的应用程序性能,延续了RMON MIB[7]中创建的体系结构。

Application performance measurement measures the quality of service delivered to end-users by applications. With this perspective, a true end-to-end view of the IT infrastructure results, combining the performance of the application, desktop, network, and server, as well as any positive or negative interactions between these components.

应用程序性能度量度量应用程序向最终用户提供的服务质量。从这个角度来看,IT基础架构的真实端到端视图将结合应用程序、桌面、网络和服务器的性能,以及这些组件之间的任何积极或消极交互。

Despite all the technically sophisticated ways in which networking and system resources can be measured, human end-users perceive only two things about an application: availability and responsiveness.

尽管网络和系统资源在技术上有各种复杂的度量方法,但人类最终用户对应用程序只有两种感知:可用性和响应性。

Availability - The percentage of the time that the application is ready to give a user service.

可用性—应用程序准备好提供用户服务的时间百分比。

Responsiveness - The speed at which the application delivers the requested service.

响应性—应用程序提供请求服务的速度。

A transaction is an action initiated by a user that starts and completes a distributed processing function. A transaction begins when a user initiates a request for service (i.e., pushing a submit button) and ends when the work is completed (i.e., information is provided or a confirmation is delivered). A transaction is the fundamental item measured by the APM MIB.

事务是由用户启动并完成分布式处理功能的操作。当用户发起服务请求(即按下提交按钮)时,事务开始,当工作完成(即提供信息或发送确认)时结束。事务是由APM MIB度量的基本项。

A failed transaction is a transaction that fails to provide the service requested by the end user, regardless of whether it is due to a processing failure or transport failure.

失败的事务是指无论是由于处理失败还是传输失败,都无法提供最终用户请求的服务的事务。

An application protocol (e.g., POP3) may implement different commands or application "verbs" (e.g., POP3 Login and POP3 Retrieval). It will often be interesting to monitor these verbs separately because:

应用程序协议(例如,POP3)可以实现不同的命令或应用程序“动词”(例如,POP3登录和POP3检索)。单独监控这些动词通常会很有趣,因为:

1) The verbs may have widely differing performance characteristics (in fact some may be response time oriented while others are throughput oriented) 2) The verbs have varying business significance 3) It provides more granularity of exactly what might be performing poorly

1) 这些动词可能具有大不相同的性能特征(事实上,一些可能是面向响应时间的,而另一些则是面向吞吐量的)2)这些动词具有不同的业务意义3)它提供了更精确的粒度,以确定哪些性能可能较差

This MIB Module allows the measurement of a parent application, its component verbs, or both. If monitoring both, one can watch the top-level application and then drill down to the verbs when trouble is spotted to learn which subcomponents are in trouble. Each application verb is registered separately in the Protocol Directory [5] [6] as a child of its parent application.

此MIB模块允许测量父应用程序、其组件谓词或两者。如果同时监视这两个组件,则可以观察顶级应用程序,然后在发现问题时深入到动词,以了解哪些子组件出现问题。每个应用程序谓词在协议目录[5][6]中单独注册为其父应用程序的子级。

Application protocols implement one of three different types of transactions: transaction-oriented, throughput-oriented, or streaming-oriented. While the availability metric is the same for all three types, the responsiveness metric varies:

应用程序协议实现三种不同类型的事务之一:面向事务、面向吞吐量或面向流。虽然所有三种类型的可用性指标相同,但响应性指标有所不同:

Transaction-Oriented: These transactions have a fairly constant workload to perform for all transactions. In particular, to the degree that the workload may vary, it doesn't vary based on the amount of data to be transferred but based on the parameters of the transaction. The responsiveness metric for transaction-oriented applications is application response time, the elapsed time between the user's request for service (e.g., pushing the submit button) and the completion of the request (e.g., displaying the results) and is measured in milliseconds. This is commonly referred to as end-user response time.

面向事务:对于所有事务,这些事务都有一个相当稳定的工作负载。特别是,工作负载可能会发生变化,这并不取决于要传输的数据量,而是取决于事务的参数。面向事务的应用程序的响应性度量是应用程序响应时间,即用户的服务请求(例如,按下提交按钮)和请求完成(例如,显示结果)之间经过的时间,以毫秒为单位。这通常称为最终用户响应时间。

Throughput-Oriented: These transactions have widely varying workloads based on the amount of data requested. The responsiveness metric for throughput-oriented applications is kilobits per second.

面向吞吐量:这些事务根据请求的数据量具有广泛变化的工作负载。面向吞吐量的应用程序的响应度量为每秒千位。

Streaming-Oriented: These transactions deliver data at a constant metered rate of speed regardless of excess capacity in the networking and computing infrastructure. However, when the infrastructures cannot deliver data at this speed, interruption of service or degradation of service can result. The responsiveness

面向流:这些事务以恒定的计量速度交付数据,而不考虑网络和计算基础设施中的过剩容量。但是,当基础设施无法以这种速度交付数据时,可能会导致服务中断或服务降级。反应性

metric for streaming-oriented applications is the signal quality ratio of time that the service is degraded or interrupted to the total service time. This metric is measured in parts per million.

面向流应用程序的度量是服务降级或中断的时间与总服务时间的信号质量比。该度量单位以百万分之几为单位。

2.1. Report Aggregation
2.1. 报告聚合

This MIB Module provides functions to aggregate measurements into higher level summaries.

此MIB模块提供了将度量聚合为更高级别的摘要的功能。

Every transaction is identified by its application, server, and client and has an availability measure as well as a responsiveness measure. The appropriate responsiveness measure is context-sensitive depending on whether the application is transaction-oriented, throughput-oriented, or streaming- oriented. For example, in a 5 minute period several transactions might be recorded:

每个事务都由其应用程序、服务器和客户端标识,并具有可用性度量和响应性度量。适当的响应性度量是上下文敏感的,这取决于应用程序是面向事务的、面向吞吐量的还是面向流的。例如,在5分钟内可能会记录多个事务:

Application Client Server Successful Responsiveness HTTP Jim Sales 1 6 sec. SAP/R3 Jane Finance 1 17 sec. HTTP Joe HR 0 - FTP Jim FTP 1 212 Kbps HTTP Joe HR 1 25 sec. RealVideo Joe Videoconf 1 100.0% HTTP Jane HR 1 5 sec.

应用程序客户端服务器成功响应HTTP Jim销售1 6秒。SAP/R3 Jane Finance 1 17秒。HTTP Joe HR 0-FTP Jim FTP 1 212 Kbps HTTP Joe HR 1 25秒。RealVideo Joe Videoconf 1 100.0%HTTP Jane HR 1 5秒。

These transactions can be aggregated in several ways, providing statistical summaries - for example summarizing all HTTP transactions, or all HTTP transactions to the HR Server. Note that data from different applications may not be summarized because:

这些事务可以通过多种方式进行聚合,提供统计摘要—例如,汇总所有HTTP事务,或汇总到HR服务器的所有HTTP事务。请注意,不同应用程序的数据可能不会汇总,因为:

1. The performance characteristics of different applications differ widely enough to render statistical analysis meaningless.

1. 不同应用程序的性能特征差异很大,使得统计分析变得毫无意义。

2. The responsiveness metrics of different applications may be different, making a statistical analysis impossible (in other words, one application may be transaction-oriented, while another is throughput-oriented).

2. 不同应用程序的响应性度量可能不同,因此无法进行统计分析(换句话说,一个应用程序可能面向事务,而另一个应用程序则面向吞吐量)。

Aggregating transactions collected over a period requires an aggregation algorithm. In this MIB Module, transaction aggregation always results in the following statistics:

聚合一段时间内收集的事务需要聚合算法。在此MIB模块中,事务聚合始终会产生以下统计信息:

TransactionCount The total number of transactions during this period

TransactionCount此期间的事务总数

SuccessfulTransactions The total number of transactions that were successful. The management station can derive the percent success by dividing SuccessfulTransactions by the TransactionCount.

SuccessfulTransactions成功的事务总数。管理站可以通过将SuccessfulTransactions除以TransactionCount得出成功百分比。

ResponsivenessMean The average of the responsiveness metric for all aggregated transactions that completed successfully.

responsiveness是指成功完成的所有聚合事务的响应性度量的平均值。

ResponsivenessMin The minimum responsiveness metric for all aggregated transactions that completed successfully.

ResponsivesMin成功完成的所有聚合事务的最小响应度量。

ResponsivenessMax The maximum responsiveness metric for all aggregated transactions that completed successfully.

ResponsivenessMax成功完成的所有聚合事务的最大响应性度量。

ResponsivenessBx The count of successful transactions whose responsiveness metric fell into the range specified for Bx. There are 7 buckets specified. Because the performance of different applications varies widely, the bucket ranges are specified separately for each application (in the apmAppDirTable) so that they may be tuned to typical performance of each application.

ResponsivesBx响应性度量落在为Bx指定的范围内的成功事务的计数。指定了7个桶。由于不同应用程序的性能差异很大,因此为每个应用程序(在apmAppDirTable中)分别指定了铲斗范围,以便根据每个应用程序的典型性能对其进行调整。

For example, when aggregating the previous set of transactions by application we get (for simplicity the example only shows TransactionCount, SuccessfulTransactions, and ResponsivenessMean):

例如,当按应用程序聚合之前的事务集时,我们得到(为简单起见,该示例仅显示TransactionCount、SuccessfulTransactions和ResponsivesMean):

Application Count Successful ResponsivenessMean HTTP 4 3 12 sec. SAP/R3 1 1 17 sec. FTP 1 1 212 Kbps. RealVideo 1 1 100.0%

应用程序计数成功响应意味着HTTP 4 3 12秒。SAP/R3 1 17秒。ftp1212kbps。RealVideo 1 100.0%

There are four different types of aggregation.

有四种不同类型的聚合。

The flows(1) aggregation is the simplest. All transactions that share common application/server/client 3-tuples are aggregated together, resulting in a set of metrics for all such unique 3- tuples.

流(1)聚合是最简单的。共享公共应用程序/服务器/客户端3元组的所有事务都聚合在一起,从而为所有此类唯一3元组生成一组度量。

The clients(2) aggregation results in somewhat more aggregation (i.e., fewer resulting records). All transactions that share common application/client tuples are aggregated together, resulting in a set of metrics for all such unique tuples.

客户机(2)聚合会导致更多的聚合(即更少的结果记录)。共享公共应用程序/客户端元组的所有事务都聚合在一起,从而为所有此类唯一元组生成一组度量。

The servers(3) aggregation usually results in still more aggregation (i.e., fewer resulting records). All transactions that share common application/server tuples are aggregated together, resulting in a set of metrics for all such unique tuples.

服务器(3)聚合通常会导致更多的聚合(即更少的结果记录)。共享公共应用程序/服务器元组的所有事务都聚合在一起,从而为所有此类唯一元组生成一组度量。

The applications(4) aggregation results in the most aggregation (i.e., the fewest resulting records). All transactions that share a common application are aggregated together, resulting in a set of metrics for all such unique applications.

应用程序(4)聚合导致最多的聚合(即,最少的结果记录)。共享一个公共应用程序的所有事务聚合在一起,从而为所有此类唯一应用程序生成一组度量。

For example, if in a 5 minute period the following transactions occurred:

例如,如果在5分钟内发生以下交易:

Actual Transactions: # App Client Server Successful Responsiveness 1 HTTP Jim CallCtr N - 2 HTTP Jim HR Y 12 sec. 3 HTTP Jim Sales Y 7 sec. 4 HTTP Jim CallCtr Y 5 sec. 5 Email Jim Pop3 Y 12 sec. 6 HTTP Jane CallCtr Y 3 sec. 7 SAP/R3 Jane Finance Y 19 sec. 8 Email Jane Pop3 Y 16 sec. 9 HTTP Joe HR Y 18 sec.

实际事务:#应用程序客户端服务器成功响应1 HTTP Jim CallCtr N-2 HTTP Jim HR Y 12秒。3小时7秒。4 HTTP吉姆呼叫中心5秒。5发电子邮件给Jim Pop3 Y 12秒。6 HTTP Jane呼叫中心3秒。7 SAP/R3 Jane Finance Y 19秒。8电子邮件Jane Pop3 Y 16秒。9小时18秒。

The flows(1) aggregation results in the following table. Note that the first record (HTTP/Jim/CallCtr) is the aggregation of transactions #1 and #4:

流(1)聚合结果如下表所示。请注意,第一条记录(HTTP/Jim/CallCtr)是事务#1和#4的聚合:

Flow Aggregation: App Client Server Count Succe- Rsp Rsp Rsp RspB1 RspB2 ssful Mean Min Max HTTP Jim CallCtr 2 1 5 5 5 1 0 HTTP Jim HR 1 1 12 12 12 0 1 HTTP Jim Sales 1 1 7 7 7 1 0 Email Jim Pop3 1 1 12 12 12 0 1 HTTP Jane CallCtr 1 1 3 3 3 1 0 SAP/R3 Jane Finance 1 1 19 19 19 0 1 Email Jane Pop3 1 1 16 16 16 0 1 HTTP Joe HR 1 1 18 18 18 0 1

流量聚合:应用程序客户端服务器计数成功-Rsp Rsp RspB1 RspB2 ssful平均最小最大HTTP Jim CallCtr 2 1 5 5 5 1 0 HTTP Jim HR 1 12 12 12 0 1 HTTP Jim销售1 7 7 7 1 0电子邮件Jim Pop3 1 12 12 12 0 1 HTTP Jane CallCtr 1 13 3 3 1 0 SAP/R3 Jane Finance 1 19 19 0 1电子邮件Jane Pop3 1 16 16 16 16 0 1 HTTP Joe HR 1 18 18 18 0 1

(Note: Columns above such as RspMean and RspB1 are abbreviations for objects in the apmReportTable)

(注意:上面的列(如RspMean和RspB1)是apmReportTable中对象的缩写)

The clients(2) aggregation results in the following table. Note that the first record (HTTP/Jim) is the aggregate of transactions #1, #2, #3 and #4:

客户机(2)聚合结果如下表所示。请注意,第一条记录(HTTP/Jim)是事务#1、#2、#3和#4的总和:

Client Aggregation: App Client Count Succe- Rsp Rsp Rsp RspB1 RspB2 ... ssful Mean Min Max HTTP Jim 4 3 8 5 12 2 1 Email Jim 1 1 12 12 12 0 1 HTTP Jane 1 1 3 3 3 1 0 SAP/R3 Jane 1 1 19 19 19 0 1 Email Jane 1 1 16 16 16 0 1 HTTP Joe 1 1 18 18 18 0 1

客户端聚合:应用程序客户端计数成功-Rsp Rsp RspB1 RspB2。。。ssful平均最小最大HTTP Jim 4 3 8 5 12 2 1电子邮件Jim 1 12 12 12 0 1 HTTP Jane 1 3 3 3 1 0 SAP/R3 Jane 1 19 19 19 0 1电子邮件Jane 1 16 16 16 16 16 0 1 HTTP Joe 1 18 18 18 0 1

The servers(3) aggregation results in the following table. Note that the first record (HTTP/CallCtr) is the aggregation of transactions #1, #4 and #6:

服务器(3)聚合结果如下表所示。请注意,第一条记录(HTTP/CallCtr)是事务#1、#4和#6的聚合:

Server Aggregation: App Server Count Succe- Rsp Rsp Rsp RspB1 RspB2 ... ssful Mean Min Max HTTP CallCtr 3 2 4 3 5 2 0 HTTP HR 2 2 15 12 18 0 2 HTTP Sales 1 1 7 7 7 1 0 Email Pop3 2 2 14 12 16 0 2 SAP/R3 Finance 1 1 19 19 19 0 1

服务器聚合:应用程序服务器计数成功-Rsp Rsp RspB1 RspB2。。。ssful Mean Min Max HTTP CallCtr 3 2 4 3 5 2 0 HTTP HR 2 15 12 18 0 2 HTTP销售1 7 7 1 0电子邮件Pop3 2 14 12 16 0 2 SAP/R3财务1 19 19 19 0 1

The applications(4) aggregation results in the following table. Note that the first record (HTTP) is the aggregate of transactions #1, #2, #3, #5, #6 and #9:

应用程序(4)聚合结果如下表所示。请注意,第一条记录(HTTP)是事务#1、#2、#3、#5、#6和#9的总和:

Application Aggregation: App Count Succe- Rsp Rsp Rsp RspB1 RspB2 ... ssful Mean Min Max HTTP 6 5 9 3 18 3 2 Email 2 2 14 12 16 0 2 SAP/R3 1 1 19 19 19 0 1

应用程序聚合:应用程序计数成功-Rsp Rsp RspB1 RspB2。。。ssful平均最小最大HTTP 6 5 9 3 18 3 2电子邮件2 2 14 12 16 0 2 SAP/R3 1 19 19 19 0 1

The apmReportControlTable provides for a historical set of the last 'X' reports, combining the historical records found in history tables with the periodic snapshots found in TopN tables. Conceptually the components are:

apmReportControlTable提供了一组最近的“X”报告的历史记录,将历史记录表中的历史记录与TopN表中的定期快照相结合。从概念上讲,这些组成部分是:

apmReportControlTable Specifies data collection and summarization parameters, including the number of reports to keep and the size of each report.

apmReportControlTable指定数据收集和摘要参数,包括要保留的报告数量和每个报告的大小。

apmReport Each APM Report contains an aggregated list of records that represent data collected during a specific time period.

APM报告每个APM报告都包含一个汇总的记录列表,这些记录表示在特定时间段内收集的数据。

An apmReportControlEntry causes a family of APM Reports to be created, where each report summarizes different, successive, contiguous periods of time.

apmReportControlEntry导致创建一系列APM报告,其中每个报告汇总不同、连续、连续的时间段。

While the conceptual model of APM Reports shows them as distinct entities, they are all entries in a single apmReportTable, where entries in report 'A' are separated from entries in report 'B' by different values of the apmReportIndex.

虽然APM报告的概念模型将它们显示为不同的实体,但它们都是单个apmReportTable中的条目,其中报告“a”中的条目通过apmReportIndex的不同值与报告“B”中的条目分开。

      +-----------------------+
      |                       |
      | apmReportControlTable |
      |                       |      +-----------+
      +-----------------------+      |           |
                                 +-----------+   |
                                 |           |   |
                             +-----------+   |---+
                             |           |   |
                         +----------+    |---+
                         |          |    |               apmReport
                         |apmReport |----+  +-----------------------+
                         |          |       |Thu Mar 30 12-1PM      |
                         +----------+       |                       |
                                            |CLNT SERV  PROT  stats |
                                            |                       |
                                            |Joe  News  HTTP  data  |
                                            |Jan  POP   POP3  data  |
                                            |Jan  POP   SMTP  data  |
                                            |Bob  HR    PSOFT data  |
                                            |...                    |
                                            |...                    |
                                            +-----------------------+
        
      +-----------------------+
      |                       |
      | apmReportControlTable |
      |                       |      +-----------+
      +-----------------------+      |           |
                                 +-----------+   |
                                 |           |   |
                             +-----------+   |---+
                             |           |   |
                         +----------+    |---+
                         |          |    |               apmReport
                         |apmReport |----+  +-----------------------+
                         |          |       |Thu Mar 30 12-1PM      |
                         +----------+       |                       |
                                            |CLNT SERV  PROT  stats |
                                            |                       |
                                            |Joe  News  HTTP  data  |
                                            |Jan  POP   POP3  data  |
                                            |Jan  POP   SMTP  data  |
                                            |Bob  HR    PSOFT data  |
                                            |...                    |
                                            |...                    |
                                            +-----------------------+
        
2.2. AppLocalIndex Linkages
2.2. AppLocalIndex连杆机构

The following set of example tables illustrates a few points:

以下一组示例表说明了几点:

1. How protocolDirEntries, apmHttpFilterEntries and apmUserDefinedAppEntries(not shown) all result in entries in the apmAppDirTable.

1. protocolDirEntries、apmHttpFilterEntries和apmUserDefinedAppEntries(未显示)如何在apmAppDirTable中生成所有条目。

2. How a single appLocalIndex may be represented multiple times in the apmAppDirTable and apmReportTable if the agent measures multiple responsiveness types for that application.

2. 如果代理测量应用程序的多个响应类型,则单个appLocalIndex如何在apmAppDirTable和apmReportTable中多次表示。

A convention in the formatting of these tables is that the columns to the left of the '|' separator are index columns for the table.

这些表的格式约定为“|”分隔符左侧的列是表的索引列。

Assuming the following entries in the RMON2 protocolDirectory:

假设RMON2协议目录中有以下条目:

protocolDirectory ID (*) Parameters | LocalIndex ... WWW None | 1 WWW Get None | 2 SAP/R3 None | 3

protocolDirectory ID(*)参数| LocalIndex。。。WWW-None | 1 WWW-Get-None | 2 SAP/R3-None | 3

(*) These IDs are represented here symbolically. Consult [5] for more detail in their format

(*)这些ID在这里象征性地表示。有关其格式的更多详细信息,请参考[5]

and the following entry in the apmHttpFilterTable:

以及apmHttpFilterTable中的以下条目:

ApmHttpFilterTable Index | AppLocalIndex ServerAddress URLPath MatchType ... 5 | 20 hr.example.com /expense prefix(3) ...

ApmHttpFilterTable索引| AppLocalIndex服务器地址URLPath匹配类型。。。5 | 20 hr.example.com/费用前缀(3)。。。

the apmAppDirTable would be populated with the following entries:

apmAppDirTable将填充以下条目:

apmAppDir AppLocalIndex ResponsivenessType | Config ... 1 transaction(1) | On ... 1 throughput(2) | On ... 2 transaction(1) | On ... 2 throughput(2) | On ... 3 transaction(1) | On ... 20 transaction(1) | On ... 20 throughput(2) | On ...

apmAppDir AppLocalIndex响应类型|配置。。。1交易(1)|在。。。1吞吐量(2)|在。。。2交易(1)|关于。。。2吞吐量(2)|在。。。3交易(1)|在。。。20交易(1)|于。。。20吞吐量(2)|在。。。

The entries in the apmAppDirTable with an appLocalIndex of 1, 2 and 3 correspond to the identically named entries in the protocolDirectory table. appLocalIndex #1 results in 2 entries, one to measure the transaction responsiveness of WWW and one to measure its throughput responsiveness. In contrast, appLocalIndex #3 results in only a transaction entry because the agent does not measure the throughput responsiveness for SAP/R3 (probably because it isn't very meaningful). Finally, appLocalIndex #20 corresponds to the entry in the apmHttpFilterTable and has transaction responsiveness and throughput responsiveness measurements available.

appLocalIndex为1、2和3的apmAppDirTable中的条目对应于protocolDirectory表中同名的条目。appLocalIndex#1生成两个条目,一个用于测量WWW的事务响应性,另一个用于测量其吞吐量响应性。相比之下,appLocalIndex#3只会生成一个事务条目,因为代理没有测量SAP/R3的吞吐量响应性(可能是因为它没有太大意义)。最后,appLocalIndex#20对应于apmHttpFilterTable中的条目,并且具有可用的事务响应性和吞吐量响应性度量。

If a report was configured using application aggregation, entries in that report might look like:

如果使用应用程序聚合配置报告,则该报告中的条目可能如下所示:

apmReportTable CtlIndex Index AppLocalIdx ResponsivenessType | TransactionCount ... 1 1 1 transaction(1) | counters... 1 1 1 throughput(2) | counters... 1 1 2 transaction(1) | counters... 1 1 2 throughput(2) | counters... 1 1 3 transaction(1) | counters... 1 1 20 transaction(1) | counters... 1 1 20 throughput(2) | counters...

apmReportTable CtlIndex Index Index AppLocalIdx响应类型|事务计数。。。1交易(1)|柜台。。。1吞吐量(2)|计数器。。。1 2交易(1)|计数器。。。1 12吞吐量(2)|计数器。。。1 3交易(1)|柜台。。。120个交易(1)|柜台。。。1 120吞吐量(2)|计数器。。。

Note that the index items protocolDirLocalIndex, apmReportServerAddress and apmReportClientID were omitted from apmReportTable example for brevity because they would have been equal to zero due to the use of the application aggregation in this example.

请注意,为了简洁起见,apmReportTable示例中省略了protocolDirLocalIndex、apmReportServerAddress和apmReportClientID索引项,因为在本示例中,由于使用了应用程序聚合,它们将等于零。

2.3. Measurement Methodology
2.3. 测量方法

There are many different measurement methodologies available for measuring application performance (e.g., probe-based, client-based, synthetic-transaction, etc.). This specification does not mandate a particular methodology - it is open to any that meet the minimum requirements. Conformance to this specification requires that the collected data match the semantics described herein. In particular, a data collection methodology must be able to measure response time, throughput, streaming responsiveness and availability as specified.

有许多不同的测量方法可用于测量应用程序性能(例如,基于探针、基于客户端、合成事务等)。本规范不强制要求特定的方法-它对满足最低要求的任何人开放。符合本规范要求收集的数据与本文描述的语义相匹配。特别是,数据收集方法必须能够按照规定测量响应时间、吞吐量、流响应性和可用性。

Note that in some cases a transaction may run for a long time but ultimately be successful. The measurement software shouldn't prematurely classify lengthy transactions as failures but should wait as long as the client application will wait for a successful response.

请注意,在某些情况下,事务可能会运行很长时间,但最终会成功。度量软件不应该过早地将冗长的事务归类为失败,而应该等待客户机应用程序等待成功响应的时间。

2.4. Instrumentation Architectures
2.4. 仪器体系结构

Different architectural approaches and deployment strategies may be taken towards implementation of this specification. If a highly distributed approach is desired (e.g., an agent per desktop), one or both of the two approaches below may be used to make it more practical.

为实现本规范,可采用不同的体系结构方法和部署策略。如果需要一种高度分布式的方法(例如,每个桌面一个代理),可以使用下面两种方法中的一种或两种,使其更实用。

2.4.1. Application Directory Caching
2.4.1. 应用程序目录缓存

It is necessary for the manager to have a copy of the tables that define the Application Directory in order to interpret APM measurements. It is likely that in a highly distributed network of

为了解释APM测量值,管理者必须拥有定义应用程序目录的表的副本。在一个高度分布式的

thousands of APM agents, this Application Directory will be the same on many, if not all of the agents. Repeated downloads of the Application Directory may be inefficient.

数千个APM代理,如果不是所有代理,那么许多代理上的此应用程序目录将是相同的。重复下载应用程序目录可能效率低下。

The apmAppDirID object is a single object that identifies the configuration of all aspects of the Application Directory when it is equal to a well-known, registered configuration. Thus, when a manager sees an apmAppDirID value that it recognizes, it need not download the Application Directory from that agent. In fact, the manager may discover a new registered Application Directory configuration on one agent and then re-use that configuration on another agent that shares the same apmAppDirID value.

apmAppDirID对象是一个单独的对象,当它等于已知的已注册配置时,它标识应用程序目录所有方面的配置。因此,当管理器看到它识别的apmAppDirID值时,它不需要从该代理下载应用程序目录。事实上,管理器可能会在一个代理上发现一个新的注册应用程序目录配置,然后在共享相同apmAppDirID值的另一个代理上重新使用该配置。

Application directory registrations are unique within an administrative domain, allowing an administrator to create a custom application directory configuration without the need to assign it a globally-unique registration.

应用程序目录注册在管理域中是唯一的,允许管理员创建自定义应用程序目录配置,而无需为其分配全局唯一注册。

2.4.2. Push Model
2.4.2. 推送模型

When APM agents are installed on "desktops" (including laptops), a few issues make polling difficult:

当APM代理安装在“台式机”(包括笔记本电脑)上时,有几个问题使轮询变得困难:

1. Desktops often have dynamically-assigned addresses so there is no long-lived address to poll.

1. 台式机通常具有动态分配的地址,因此没有可轮询的长期地址。

2. Desktops are not available as much as infrastructure components due to crashes, user-initiated reboots and shutdowns and user control over monitoring software. Thus a desktop may not be available to answer a poll at the moment when the manager is scheduled to poll that desktop.

2. 由于崩溃、用户启动的重新启动和关闭以及用户对监控软件的控制,台式机的可用性不如基础架构组件。因此,当经理计划轮询桌面时,桌面可能无法回答轮询。

3. Laptops that are connected via dialup connections are only sporadically connected and will routinely be unreachable when the manager is scheduled to poll.

3. 通过拨号连接连接的笔记本电脑只是偶尔连接,当经理计划轮询时,通常无法访问。

As a consequence, a push model is usually more appropriate for desktop-based agents. To achieve this, the agent should follow the following rules in deciding what data to send in notifications.

因此,推送模型通常更适合基于桌面的代理。为了实现这一点,代理在决定在通知中发送哪些数据时应遵循以下规则。

APM Reports If an agent wishes to push APM reports to a manager, it must send: apmAppDirID apmNameTable (any data updated since the last push) For each report the agent wishes to upload, it must send the entire apmReportControlEntry associated with that report and the associated entries in the apmReportTable that have changed since the last report.

APM报告如果代理希望向经理推送APM报告,则必须为代理希望上载的每个报告发送:apmAppDirID apmNameTable(自上次推送以来更新的任何数据),它必须发送与该报告关联的整个apmReportControlEntry以及自上次报告以来已更改的apmReportTable中的关联条目。

APM Transactions If an agent wishes to push APM transactions to a manager, it must send: apmAppDirID apmNameTable (any data updated since the last push) apmTransactionTable (relevant entries)

APM事务如果代理希望将APM事务推送到经理,则必须发送:apmAppDirID apmNameTable(自上次推送以来更新的任何数据)apmTransactionTable(相关条目)

APM Exceptions The agent must send: apmAppDirID apmNameTable (any data updated since the last push) apmTransactionEntry (of exception transaction) apmExceptionEntry (entry that generated exception) [Note that this list supersedes the information in the OBJECTS clauses of the apmTransactionResponsivenessAlarm and apmTransactionUnsuccessfulAlarm when the agent is using a push model. This additional information eliminates the need for the manager to request additional data to understand the exception.]

代理必须发送的APM异常:apmAppDirID apmNameTable(自上次推送以来更新的任何数据)apmTransactionEntry(异常事务的)APMEExceptionEntry(生成异常的条目)[请注意,当代理使用推送模型时,此列表将取代ApmTransactionResponsiveAlarm和apmTransactionUnsuccessfulAlarm的OBJECTS子句中的信息。此附加信息消除了管理器请求附加数据以了解异常的需要。]

The order of varbinds and where to segment varbinds into PDUs is at the discretion of the agent.

varbinds的顺序以及将varbinds分割成PDU的位置由代理自行决定。

2.5. Structure of this MIB Module
2.5. 这个MIB模块的结构

The objects are arranged into the following groups:

对象被排列为以下组:

- APM Application Directory Group

- APM应用程序目录组

- APM User Defined Applications Group

- APM用户定义应用程序组

- APM Report Group

- APM报告组

- APM Transaction Group

- APM事务组

- APM Exception Group

- APM异常组

- APM Notification Group

- APM通知组

These groups are the basic unit of conformance. If an agent implements a group, then it must implement all objects in that group. While this section provides an overview of grouping and conformance information for this MIB Module, the authoritative reference for such information is contained in the MODULE-COMPLIANCE and OBJECT-GROUP macros later in this MIB Module.

这些组是一致性的基本单位。如果代理实现一个组,那么它必须实现该组中的所有对象。虽然本节概述了此MIB模块的分组和一致性信息,但此类信息的权威参考包含在本MIB模块后面的Module-COMPLIANCE和OBJECT-GROUP宏中。

These groups are defined to provide a means of assigning object identifiers, and to provide a method for implementors of managed agents to know which objects they must implement.

定义这些组是为了提供一种分配对象标识符的方法,并为托管代理的实现者提供一种方法,让他们知道必须实现哪些对象。

2.5.1. The APM Application Directory Group
2.5.1. APM应用程序目录组

The APM Application Directory group contains configuration objects for every application or application verb monitored on this system. This group consists of the apmAppDirTable.

APM应用程序目录组包含此系统上监视的每个应用程序或应用程序谓词的配置对象。此组由apmAppDirTable组成。

2.5.2. The APM User Defined Applications Group
2.5.2. APM用户定义的应用程序组

The APM User Defined Applications Group contains objects that allow for the tracking of applications or application verbs that aren't registered in the protocolDirTable. This group consists of the apmHttpFilterTable and the apmUserDefinedAppTable.

APM用户定义的应用程序组包含允许跟踪未在protocolDirTable中注册的应用程序或应用程序谓词的对象。此组由apmHttpFilterTable和apmuserDefineAdaptable组成。

2.5.3. The APM Report Group
2.5.3. APM报告组

The APM Report Group is used to prepare regular reports that aggregate application performance by flow, by client, by server, or by application. This group consists of the apmReportControlTable and the apmReportTable.

APM报告组用于准备按流、客户端、服务器或应用程序聚合应用程序性能的常规报告。此组由apmReportControlTable和apmReportTable组成。

2.5.4. The APM Transaction Group
2.5.4. APM事务组

The APM Transaction Group is used to show transactions that are currently in progress and ones that have ended recently, along with their responsiveness metric.

APM事务组用于显示当前正在进行的事务和最近结束的事务及其响应性度量。

Because many transactions last a very short time and because an agent may not retain completed transactions very long, transactions may exist in this table for a very short time. Thus, polling this table isn't an effective mechanism for retrieving all transactions unless the value of apmTransactionsHistorySize is suitably large for the transactions being monitored.

由于许多事务持续的时间很短,而且代理可能不会将已完成的事务保留很长时间,因此此表中的事务可能存在很短的时间。因此,轮询此表并不是检索所有事务的有效机制,除非apmTransactionsHistorySize的值对于被监视的事务来说适当大。

One important benefit of this table is that it allows a management station to check on the status of long-lived transactions. Because the apmReport and apmException mechanisms act only on transactions that have finished, a network manager may not have visibility for

此表的一个重要优点是,它允许管理站检查长期事务的状态。由于apmReport和apmException机制仅对已完成的事务起作用,因此网络管理器可能无法查看这些事务

some time into the performance of long-lived transactions such as streaming applications, large data transfers, or (very) poorly performing transactions. In fact, by their very definition, the apmReport and apmException mechanisms only provide visibility into a problem after nothing can be done about it. This group consists primarily of the apmTransactionTable.

长时间事务(如流式应用程序、大型数据传输或(非常)性能差的事务)的性能需要一段时间。事实上,根据它们的定义,apmReport和apmException机制只能在无法解决问题后提供对问题的可见性。此组主要由apmTransactionTable组成。

2.5.5. The APM Exception Group
2.5.5. APM异常组

The APM Exception Group is used to generate immediate notifications of transactions that cross certain thresholds. The apmExceptionTable is used to configure which thresholds are to be checked for which types of transactions. The apmTransactionResponsivenessAlarm notification is sent when a transaction occurs with a responsiveness that crosses a threshold. The apmTransactionUnsuccessfulAlarm notification is sent when a transaction fails for which exception checking was configured. This group consists primarily of the apmExceptionTable.

APM异常组用于生成跨越特定阈值的事务的即时通知。APMEExceptionTable用于配置要检查哪些事务类型的阈值。当事务的响应性超过阈值时,将发送APMTransactionResponsivesAlarm通知。当配置了异常检查的事务失败时,将发送apmTransactionUnsuccessfulAlarm通知。此组主要由APMEExceptionTable组成。

2.5.6. The APM Notification Group
2.5.6. APM通知组

The APM Notification Group contains 2 notifications that are sent when thresholds in the APM Exception Table are exceeded.

APM通知组包含2个通知,当超过APM异常表中的阈值时发送。

3. Definitions
3. 定义
APM-MIB DEFINITIONS ::= BEGIN
IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    NOTIFICATION-TYPE,
    Counter32, Unsigned32                        FROM SNMPv2-SMI
    TEXTUAL-CONVENTION, RowStatus, TimeStamp,
    TimeInterval, TruthValue, DateAndTime,
    StorageType                                  FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP,
    NOTIFICATION-GROUP                           FROM SNMPv2-CONF
    SnmpAdminString                              FROM SNMP-FRAMEWORK-MIB
    rmon, OwnerString                            FROM RMON-MIB
    protocolDirLocalIndex                        FROM RMON2-MIB;
        
APM-MIB DEFINITIONS ::= BEGIN
IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    NOTIFICATION-TYPE,
    Counter32, Unsigned32                        FROM SNMPv2-SMI
    TEXTUAL-CONVENTION, RowStatus, TimeStamp,
    TimeInterval, TruthValue, DateAndTime,
    StorageType                                  FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP,
    NOTIFICATION-GROUP                           FROM SNMPv2-CONF
    SnmpAdminString                              FROM SNMP-FRAMEWORK-MIB
    rmon, OwnerString                            FROM RMON-MIB
    protocolDirLocalIndex                        FROM RMON2-MIB;
        

-- Application Performance Measurement MIB

--应用程序性能度量MIB

apm MODULE-IDENTITY LAST-UPDATED "200402190000Z" -- February 19, 2004 ORGANIZATION "IETF RMON MIB Working Group" CONTACT-INFO "Author: Steve Waldbusser

apm模块标识最后一次更新“200402190000Z”-2004年2月19日组织“IETF RMON MIB工作组”联系人信息作者:Steve Waldbusser

             Phone:  +1-650-948-6500
             Fax :   +1-650-745-0671
             Email:  waldbusser@nextbeacon.com
        
             Phone:  +1-650-948-6500
             Fax :   +1-650-745-0671
             Email:  waldbusser@nextbeacon.com
        

Working Group Chair: Andy Bierman Cisco Systems, Inc. Postal: 170 West Tasman Drive San Jose, CA USA 95134 Tel: +1 408 527-3711 E-mail: abierman@cisco.com

工作组主席:Andy Bierman Cisco Systems,Inc.邮政:美国加利福尼亚州圣何塞市西塔斯曼大道170号95134电话:+1 408 527-3711电子邮件:abierman@cisco.com

Working Group Mailing List: <rmonmib@ietf.org> To subscribe send email to: <rmonmib-request@ietf.org> " DESCRIPTION "The MIB module for measuring application performance as experienced by end-users.

工作组邮寄名单:<rmonmib@ietf.org>要订阅,请发送电子邮件至:<rmonmib-request@ietf.org>“描述”用于测量最终用户体验的应用程序性能的MIB模块。

Copyright (C) The Internet Society (2004). This version of this MIB module is part of RFC 3729; see the RFC itself for full legal notices."

版权所有(C)互联网协会(2004年)。此MIB模块的此版本是RFC 3729的一部分;有关完整的法律通知,请参见RFC本身。”

REVISION "200402190000Z" -- February 19, 2004 DESCRIPTION "The original version of this MIB Module, published as RFC3729."

修订版“200402190000Z”-2004年2月19日描述“此MIB模块的原始版本,发布为RFC3729。”

    ::= { rmon 23 }
        
    ::= { rmon 23 }
        
apmMibObjects OBJECT IDENTIFIER ::= { apm 1 }
apmConformance OBJECT IDENTIFIER ::= { apm 2 }
apmCompliances    OBJECT IDENTIFIER ::= { apmConformance 1 }
apmGroups         OBJECT IDENTIFIER ::= { apmConformance 2 }
        
apmMibObjects OBJECT IDENTIFIER ::= { apm 1 }
apmConformance OBJECT IDENTIFIER ::= { apm 2 }
apmCompliances    OBJECT IDENTIFIER ::= { apmConformance 1 }
apmGroups         OBJECT IDENTIFIER ::= { apmConformance 2 }
        
AppLocalIndex ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "A locally arbitrary unique identifier associated with an
        application or application verb.
        
AppLocalIndex ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "A locally arbitrary unique identifier associated with an
        application or application verb.
        

All objects of type AppLocalIndex are assigned by the agent out of a common number space. In other words, AppLocalIndex values assigned to entries in one table must not overlap with AppLocalIndex values assigned to entries in another table. Further, every protocolDirLocalIndex value registered by the agent automatically assigns the same value out of the

所有类型为AppLocalIndex的对象都由代理从公共数字空间中分配。换句话说,分配给一个表中条目的AppLocalIndex值不得与分配给另一个表中条目的AppLocalIndex值重叠。此外,代理注册的每个ProtocolDirLocaliIndex值都会自动从

AppLocalIndex number space.

AppLocalIndex数字空间。

For example, if the protocolDirLocalIndex values { 1, 3, 5, 7 } have been assigned, and the apmHttpFilterAppLocalIndex values { 6, 8, 9 } have been assigned:

例如,如果已分配ProtocolDirLocaliIndex值{1,3,5,7},并且已分配ApmHttpFilterAppLocaliIndex值{6,8,9}:

- Assignment of new AppLocalIndex values must not use the values { 1, 3, 5, 6, 7, 8, 9 }. - AppLocalIndex values { 1, 3, 5, 7 } are automatically assigned and are associated with the identical value of protocolDirLocalIndex. In particular, an entry in the apmAppDirTable indexed by a value provides further information about a protocol indexed by the same value in the protocolDirTable of RMON2.

- 新AppLocalIndex值的赋值不能使用值{1,3,5,6,7,8,9}。-AppLocalIndex值{1,3,5,7}自动赋值,并与ProtocolDirLocaliIndex的相同值相关联。具体地说,apmAppDirTable中由值索引的条目提供了关于由RMON2的protocolDirTable中相同值索引的协议的进一步信息。

The value for each supported application must remain constant at least from one re-initialization of the entity's network management system to the next re-initialization, except that if an application is deleted and re-created, it must be re-created with a new value that has not been used since the last re-initialization.

从实体网络管理系统的一次重新初始化到下一次重新初始化,每个受支持应用程序的值必须至少保持不变,但如果删除并重新创建应用程序,则必须使用自上次重新初始化以来未使用过的新值重新创建应用程序。

The specific value is meaningful only within a given SNMP entity. An AppLocalIndex value must not be re-used until the next agent restart." SYNTAX Unsigned32 (1..2147483647)

特定值仅在给定的SNMP实体中有意义。在下次代理重新启动之前,不得重复使用ApploClindex值。“语法未签名32(1..2147483647)

ProtocolDirNetworkAddress ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "A network level address whose semantics and encoding are
        specified by an associated protocolDirLocalIndex
        value. Objects of this type must specify which
        protocolDirLocalIndex value is used. This value is encoded
        according to the encoding rules for the identified
        protocolDirectory entry.
        
ProtocolDirNetworkAddress ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "A network level address whose semantics and encoding are
        specified by an associated protocolDirLocalIndex
        value. Objects of this type must specify which
        protocolDirLocalIndex value is used. This value is encoded
        according to the encoding rules for the identified
        protocolDirectory entry.
        

For example, if the associated protocolDirLocalIndex indicates an encapsulation of ip, this object is encoded as a length octet of 4, followed by the 4 octets of the ip address, in network byte order.

例如,如果关联的ProtocolDirLocaliIndex指示ip的封装,则此对象将被编码为长度为4的八位字节,后跟ip地址的4个八位字节,以网络字节顺序排列。

Objects of this type may allow this value to be the zero length string. If so, they must identify they meaning of this value." SYNTAX OCTET STRING (SIZE(0..255))

此类型的对象可能允许此值为零长度字符串。如果是这样的话,他们必须识别这个值的含义。”语法八位组字符串(大小(0..255))

DataSourceOrZero ::= TEXTUAL-CONVENTION
        
DataSourceOrZero ::= TEXTUAL-CONVENTION
        

STATUS current DESCRIPTION "Identifies the source of the data that the associated function is configured to analyze. This source can be any interface on this device.

STATUS current DESCRIPTION“标识关联功能配置为分析的数据源。此源可以是此设备上的任何接口。

In order to identify a particular interface, this object shall identify the instance of the ifIndex object, defined in [4], for the desired interface.

为了识别特定接口,该对象应识别[4]中定义的所需接口的ifIndex对象实例。

For example, if an entry were to receive data from interface #1, this object would be set to ifIndex.1.

例如,如果一个条目要从接口#1接收数据,则该对象将设置为ifIndex.1。

If the source of the data isn't an interface or cannot be localized to an interface, this object would be set to 0.0"

如果数据源不是接口或无法本地化到接口,则此对象将设置为0.0“

REFERENCE "The DataSource textual convention is defined in RFC 2021 [5]." SYNTAX OBJECT IDENTIFIER

参考“数据源文本约定在RFC 2021[5]中定义。”语法对象标识符

RmonClientID ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
         "A long-lived unique ID assigned to an end-system. This ID is
         assigned by the agent using an implementation-specific
         algorithm.
        
RmonClientID ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
         "A long-lived unique ID assigned to an end-system. This ID is
         assigned by the agent using an implementation-specific
         algorithm.
        

Because a client machine may be assigned multiple addresses over any time period it can be difficult to attribute behavior to a particular client based solely on its address. A ClientID may be assigned to provide a more stable handle for referencing that client. The entity that assigns the ClientID may use various implementation techniques to keep track of a client but if the assigning entity is unable to track client address mappings, it may map client identifiers to client addresses rather than to distinct client machines.

由于客户机可能在任何时间段内被分配多个地址,因此很难仅根据其地址将行为归因于特定客户机。可以分配ClientID以提供更稳定的句柄来引用该客户端。分配ClientID的实体可以使用各种实现技术来跟踪客户机,但是如果分配实体无法跟踪客户机地址映射,则它可以将客户机标识符映射到客户机地址,而不是不同的客户机机器。

This is named ClientID because it helps to solve a problem seen in network clients (servers usually have well-known, long-lived addresses). However, ClientID's may be assigned to any end-system regardless of its role on the network." SYNTAX Unsigned32 (0..4294967295)

之所以将其命名为ClientID,是因为它有助于解决网络客户端中出现的问题(服务器通常具有众所周知的长期地址)。但是,客户端ID可以分配给任何终端系统,而不管它在网络上的角色是什么。”语法Unsigned32(0..4294967295)

TransactionAggregationType ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        
TransactionAggregationType ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        

"Specifies one of 4 different techniques for aggregating transactions.

“指定聚合事务的4种不同技术之一。

The metrics for a single transaction are the responsiveness of the transaction and whether the transaction succeeded (a boolean). When such metrics are aggregated in this MIB Module, these metrics are replaced by averages and distributions of responsiveness and availability. The metrics describing aggregates are constant no matter which type of aggregation is being performed. These metrics may be found in the apmReportTable.

单个事务的度量是事务的响应性和事务是否成功(布尔值)。当在这个MIB模块中聚合这些度量时,这些度量将被响应性和可用性的平均值和分布所取代。无论执行哪种类型的聚合,描述聚合的度量都是恒定的。这些指标可以在apmReportTable中找到。

The flows(1) aggregation is the simplest. All transactions that share common application/server/client 3-tuples are aggregated together, resulting in a set of metrics for all such unique 3-tuples.

流(1)聚合是最简单的。共享公共应用程序/服务器/客户端3元组的所有事务都聚合在一起,从而为所有此类唯一3元组生成一组度量。

The clients(2) aggregation results in somewhat more aggregation (i.e., fewer resulting records). All transactions that share common application/client tuples are aggregated together, resulting in a set of metrics for all such unique tuples.

客户机(2)聚合会导致更多的聚合(即更少的结果记录)。共享公共应用程序/客户端元组的所有事务都聚合在一起,从而为所有此类唯一元组生成一组度量。

The servers(3) aggregation usually results in still more aggregation (i.e., fewer resulting records). All transactions that share common application/server tuples are aggregated together, resulting in a set of metrics for all such unique tuples.

服务器(3)聚合通常会导致更多的聚合(即更少的结果记录)。共享公共应用程序/服务器元组的所有事务都聚合在一起,从而为所有此类唯一元组生成一组度量。

The applications(4) aggregation results in the most aggregation (i.e., the fewest resulting records). All transactions that share a common application are aggregated together, resulting in a set of metrics for all such unique applications.

应用程序(4)聚合导致最多的聚合(即,最少的结果记录)。共享一个公共应用程序的所有事务聚合在一起,从而为所有此类唯一应用程序生成一组度量。

        Note that it is not meaningful to aggregate applications, as
        different applications have widely varying characteristics. As a
        result, this set of aggregations is complete."
    SYNTAX      INTEGER {
                  flows(1),    -- Least Aggregation
                  clients(2),
                  servers(3),
                  applications(4) -- Most Aggregation
                }
        
        Note that it is not meaningful to aggregate applications, as
        different applications have widely varying characteristics. As a
        result, this set of aggregations is complete."
    SYNTAX      INTEGER {
                  flows(1),    -- Least Aggregation
                  clients(2),
                  servers(3),
                  applications(4) -- Most Aggregation
                }
        

-- The APM Application Directory Group

--APM应用程序目录组

-- The Application Directory Table contains a record for every

--应用程序目录表包含每个目录的记录

-- application monitored by this agent. This table is also used to
-- configure whether or not an application will be measured and which
-- bucket boundaries will be used for the application.
--
-- The bucket boundaries define the break-points between bins of a
-- histogram analysis for that application. As an example of how this
-- works, consider an entry representing response-time for http.
-- If the boundaries are set as follows:
-- Boundary1: 500 milliseconds
-- Boundary2: 1 second
-- Boundary3: 2 seconds
-- Boundary4: 5
-- Boundary5: 15
-- Boundary6: 60
--
-- If the following measurements are made (all in milliseconds):
-- 377, 8645, 1300, 487, 1405, 775, 1115, 850, 945, 1054, 7745, 9380
--
-- A report run during this interval would report the following
-- counts:
-- Bucket1: 2
-- Bucket2: 3
-- Bucket3: 4
-- Bucket4: 0
-- Bucket5: 3
-- Bucket6: 0
-- Bucket7: 0
        
-- application monitored by this agent. This table is also used to
-- configure whether or not an application will be measured and which
-- bucket boundaries will be used for the application.
--
-- The bucket boundaries define the break-points between bins of a
-- histogram analysis for that application. As an example of how this
-- works, consider an entry representing response-time for http.
-- If the boundaries are set as follows:
-- Boundary1: 500 milliseconds
-- Boundary2: 1 second
-- Boundary3: 2 seconds
-- Boundary4: 5
-- Boundary5: 15
-- Boundary6: 60
--
-- If the following measurements are made (all in milliseconds):
-- 377, 8645, 1300, 487, 1405, 775, 1115, 850, 945, 1054, 7745, 9380
--
-- A report run during this interval would report the following
-- counts:
-- Bucket1: 2
-- Bucket2: 3
-- Bucket3: 4
-- Bucket4: 0
-- Bucket5: 3
-- Bucket6: 0
-- Bucket7: 0
        

apmAppDirTable OBJECT-TYPE SYNTAX SEQUENCE OF ApmAppDirEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The APM MIB directory of applications and application verbs. The agent will populate this table with all applications/verbs of any responsivenessType it has the capability to monitor. Since the agent populates this table with every entry it has the capability to monitor, the entries in this table are read-write, allowing the management station to modify parameters in this table but not to add new entries or delete entries (however, entries may be disabled). If new entries are added to the apmHttpFilterTable or the apmUserDefinedAppTable, the agent will add the corresponding entries to this table.

ApmAppDirEntry MAX-ACCESS的apmAppDirTable对象类型语法序列不可访问状态当前说明“应用程序和应用程序谓词的APM MIB目录。代理将使用其能够监视的任何响应类型的所有应用程序/谓词填充此表。由于代理使用其能够监视的每个条目填充此表,因此此表中的条目是读写的,允许管理站修改此表中的参数,但不允许添加新条目或删除条目(但是,条目可能被禁用)。如果将新条目添加到apmHttpFilterTable或APMUSERDefineAdaptable,则代理将相应条目添加到此表中。

It is an implementation-dependent matter as to how the agent sets these default parameters. For example, it may leave certain entries in this table 'off(0)' if the agent developer

代理如何设置这些默认参数取决于实现。例如,如果代理开发人员

believes that combination will be infrequently used, allowing a manager that needs that capability to set it to 'on(1)'.

相信这种组合将很少使用,允许需要该功能的经理将其设置为“开(1)”。

Some applications are registered in the RMON2 protocol directory and some are registered in other tables in this MIB Module. Regardless of where an application is originally registered, it is assigned an AppLocalIndex value that is the primary index for this table.

有些应用程序注册在RMON2协议目录中,有些应用程序注册在此MIB模块的其他表中。无论应用程序最初注册在何处,都会为其分配一个AppLocalIndex值,该值是此表的主索引。

        The contents of this table affect all reports and exceptions
        generated by this agent. Accordingly, modification of this
        table should be performed by a manager acting in the role of
        administrator. In particular, management software should not
        require or enforce particular configuration of this table - it
        should reflect the preferences of the site administrator, not
        the software author. As a practical matter, this requires
        management software to allow the administrator to configure
        the values it will use so that it can be adapted to the site
        policy."
    ::= { apmMibObjects 1 }
        
        The contents of this table affect all reports and exceptions
        generated by this agent. Accordingly, modification of this
        table should be performed by a manager acting in the role of
        administrator. In particular, management software should not
        require or enforce particular configuration of this table - it
        should reflect the preferences of the site administrator, not
        the software author. As a practical matter, this requires
        management software to allow the administrator to configure
        the values it will use so that it can be adapted to the site
        policy."
    ::= { apmMibObjects 1 }
        
apmAppDirEntry OBJECT-TYPE
    SYNTAX      ApmAppDirEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The APM MIB directory of applications and application
        verbs. An entry will exist in this table for all applications
        for which application performance measurement is supported."
    INDEX { apmAppDirAppLocalIndex,
            apmAppDirResponsivenessType }
    ::= { apmAppDirTable 1 }
        
apmAppDirEntry OBJECT-TYPE
    SYNTAX      ApmAppDirEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The APM MIB directory of applications and application
        verbs. An entry will exist in this table for all applications
        for which application performance measurement is supported."
    INDEX { apmAppDirAppLocalIndex,
            apmAppDirResponsivenessType }
    ::= { apmAppDirTable 1 }
        
ApmAppDirEntry ::= SEQUENCE {
    apmAppDirAppLocalIndex            AppLocalIndex,
    apmAppDirResponsivenessType       INTEGER,
    apmAppDirConfig                   INTEGER,
    apmAppDirResponsivenessBoundary1  Unsigned32,
    apmAppDirResponsivenessBoundary2  Unsigned32,
    apmAppDirResponsivenessBoundary3  Unsigned32,
    apmAppDirResponsivenessBoundary4  Unsigned32,
    apmAppDirResponsivenessBoundary5  Unsigned32,
    apmAppDirResponsivenessBoundary6  Unsigned32
}
        
ApmAppDirEntry ::= SEQUENCE {
    apmAppDirAppLocalIndex            AppLocalIndex,
    apmAppDirResponsivenessType       INTEGER,
    apmAppDirConfig                   INTEGER,
    apmAppDirResponsivenessBoundary1  Unsigned32,
    apmAppDirResponsivenessBoundary2  Unsigned32,
    apmAppDirResponsivenessBoundary3  Unsigned32,
    apmAppDirResponsivenessBoundary4  Unsigned32,
    apmAppDirResponsivenessBoundary5  Unsigned32,
    apmAppDirResponsivenessBoundary6  Unsigned32
}
        

apmAppDirAppLocalIndex OBJECT-TYPE SYNTAX AppLocalIndex MAX-ACCESS not-accessible

APMAPPDIRAppLocaliIndex对象类型语法AppLocalIndex MAX-ACCESS不可访问

    STATUS      current
    DESCRIPTION
        "The AppLocalIndex assigned for this application Directory
        entry."
    ::= { apmAppDirEntry 1 }
        
    STATUS      current
    DESCRIPTION
        "The AppLocalIndex assigned for this application Directory
        entry."
    ::= { apmAppDirEntry 1 }
        
apmAppDirResponsivenessType OBJECT-TYPE
    SYNTAX      INTEGER {
                  transactionOriented(1),
                  throughputOriented(2),
                  streamingOriented(3)
                }
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This object describes and configures the agent's support for
        application performance measurement for this application.
        There are 3 types of measurements for different types of
        applications:
        
apmAppDirResponsivenessType OBJECT-TYPE
    SYNTAX      INTEGER {
                  transactionOriented(1),
                  throughputOriented(2),
                  streamingOriented(3)
                }
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This object describes and configures the agent's support for
        application performance measurement for this application.
        There are 3 types of measurements for different types of
        applications:
        

Transaction-Oriented applications have a fairly constant workload to perform for all transactions. The responsiveness metric for transaction-oriented applications is application response time (from first request to final delivery of service) and is measured in milliseconds. This is commonly referred to as end-user response time.

面向事务的应用程序有一个相当稳定的工作负载来执行所有事务。面向事务的应用程序的响应性度量是应用程序响应时间(从第一个请求到服务的最终交付),以毫秒为单位。这通常称为最终用户响应时间。

Throughput-Oriented applications have widely varying workloads based on the nature of the client request. In particular, throughput-oriented applications vary widely in the amount of data that must be transported to satisfy the request. The responsiveness metric for throughput-oriented applications is kilobits per second.

基于客户端请求的性质,面向吞吐量的应用程序的工作负载变化很大。特别是,面向吞吐量的应用程序在必须传输以满足请求的数据量方面存在很大差异。面向吞吐量的应用程序的响应度量为每秒千位。

Streaming-Oriented applications deliver data at a constant metered rate of speed regardless of the responsiveness of the networking and computing infrastructure. This constant rate of speed is generally specified to be below (sometimes well below) the nominal capability of the infrastructure. However, when the infrastructures cannot deliver data at this speed, interruption of service or degradation of service can result. The responsiveness metric for streaming-oriented applications is the ratio of time that the service is degraded or interrupted to the total service time. This metric is measured in parts per million.

面向流的应用程序以恒定的计量速度交付数据,而不考虑网络和计算基础设施的响应能力。该恒定速度通常指定为低于(有时远低于)基础设施的标称容量。但是,当基础设施无法以这种速度交付数据时,可能会导致服务中断或服务降级。面向流的应用程序的响应性度量是服务降级或中断的时间与总服务时间的比率。该度量单位以百万分之几为单位。

Note that for some applications, measuring more than one responsiveness type may be interesting. For agents that wish

请注意,对于某些应用程序,测量多个响应类型可能很有趣。对于希望

        to support more than one measurement for a application, they
        will populate this table with multiple entries for that
        application, one for each type."
    ::= { apmAppDirEntry 2 }
        
        to support more than one measurement for a application, they
        will populate this table with multiple entries for that
        application, one for each type."
    ::= { apmAppDirEntry 2 }
        
apmAppDirConfig OBJECT-TYPE
    SYNTAX      INTEGER {
                  off(1),
                  on(2)
                }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This object describes and configures support for application
        performance measurement for this application.
        
apmAppDirConfig OBJECT-TYPE
    SYNTAX      INTEGER {
                  off(1),
                  on(2)
                }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This object describes and configures support for application
        performance measurement for this application.
        

If the value of this object is on(2), the agent supports measurement of application performance metrics for this application and is configured to measure such metrics for all APM MIB functions and all interfaces. If the value of this object is off(1), the agent supports measurement of application performance for this application but is configured to not measure these metrics for any APM MIB functions or interfaces. Whenever this value changes from on(2) to off(1), the agent shall delete all related entries in all tables in this MIB Module.

如果此对象的值为on(2),则代理支持测量此应用程序的应用程序性能指标,并配置为测量所有APM MIB功能和所有接口的此类指标。如果此对象的值为off(1),则代理程序支持测量此应用程序的应用程序性能,但配置为不测量任何APM MIB函数或接口的这些度量。当该值从on(2)变为off(1)时,代理应删除该MIB模块中所有表中的所有相关条目。

        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 3 }
        
        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 3 }
        

apmAppDirResponsivenessBoundary1 OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "The boundary value between bucket1 and bucket 2. If this value is modified, all entries in the apmReportTable must be deleted by the agent.

APMAPPDInResponsiveNessBoundary1对象类型语法Unsigned32 MAX-ACCESS读写状态当前描述“bucket1和bucket 2之间的边界值。如果修改此值,代理必须删除apmReportTable中的所有条目。

        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 4 }
        
        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 4 }
        

apmAppDirResponsivenessBoundary2 OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "The boundary value between bucket2 and bucket 3. If this

APMAPPDInResponsiveNessBoundary2对象类型语法Unsigned32 MAX-ACCESS读写状态当前描述“bucket2和bucket 3之间的边界值。如果

value is modified, all entries in the apmReportTable must be deleted by the agent.

值时,代理必须删除apmReportTable中的所有条目。

        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 5 }
        
        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 5 }
        

apmAppDirResponsivenessBoundary3 OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "The boundary value between bucket3 and bucket 4. If this value is modified, all entries in the apmReportTable must be deleted by the agent.

APMAPPDInResponsiveNessBoundary3对象类型语法Unsigned32 MAX-ACCESS读写状态当前描述“bucket3和bucket 4之间的边界值。如果修改此值,代理必须删除apmReportTable中的所有条目。

        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 6 }
        
        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 6 }
        

apmAppDirResponsivenessBoundary4 OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "The boundary value between bucket4 and bucket 5. If this value is modified, all entries in the apmReportTable must be deleted by the agent.

APMAPPDInResponsiveNessBoundary4对象类型语法Unsigned32 MAX-ACCESS读写状态当前描述“bucket4和bucket 5之间的边界值。如果修改此值,代理必须删除apmReportTable中的所有条目。

        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 7 }
        
        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 7 }
        

apmAppDirResponsivenessBoundary5 OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "The boundary value between bucket5 and bucket 6. If this value is modified, all entries in the apmReportTable must be deleted by the agent.

APMAPPDInResponsiveNessBoundary5对象类型语法Unsigned32 MAX-ACCESS读写状态当前描述“bucket5和bucket 6之间的边界值。如果修改此值,代理必须删除apmReportTable中的所有条目。

        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 8 }
        
        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 8 }
        

apmAppDirResponsivenessBoundary6 OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "The boundary value between bucket6 and bucket 7. If this

APMAPPDInResponsiveNessBoundary6对象类型语法Unsigned32 MAX-ACCESS读写状态当前描述“bucket6和bucket 7之间的边界值。如果

value is modified, all entries in the apmReportTable must be deleted by the agent.

值时,代理必须删除apmReportTable中的所有条目。

        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 9 }
        
        The value of this object must persist across reboots."
    ::= { apmAppDirEntry 9 }
        

-- Scalars related to the Application Directory table

--与应用程序目录表相关的标量

apmBucketBoundaryLastChange OBJECT-TYPE
    SYNTAX     TimeStamp
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The value of sysUpTime the last time that any bucket boundary
        in any appDirEntry was changed. This object can help to
        determine if two managers are both trying to enforce different
        configurations of this table."
    ::= { apmMibObjects 2 }
        
apmBucketBoundaryLastChange OBJECT-TYPE
    SYNTAX     TimeStamp
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The value of sysUpTime the last time that any bucket boundary
        in any appDirEntry was changed. This object can help to
        determine if two managers are both trying to enforce different
        configurations of this table."
    ::= { apmMibObjects 2 }
        

apmAppDirID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-write STATUS current DESCRIPTION "This object allows managers to avoid downloading application directory information when the directory is set to a known (usually fixed) configuration.

apmAppDirID对象类型语法对象标识符MAX-ACCESS读写状态当前描述“当目录设置为已知(通常是固定的)配置时,此对象允许管理员避免下载应用程序目录信息。

If the value of this object isn't 0.0, it signifies that the entire contents of the apmAppDirTable, apmHttpFilterTable, apmUserDefinedAppTable and protocolDirTable are equal to a known state identified by the value of this object. If a manager recognizes this value as identifying a directory configuration it has a local copy of, it may use this local copy rather than downloading these tables. Note that it may have downloaded this local copy (and the ID) from another agent and used this copy for all other agents that advertised the same ID.

如果此对象的值不是0.0,则表示apmAppDirTable、apmHttpFilterTable、APMUSERDEFINEDAPTABLE和protocolDirTable的全部内容等于由此对象的值标识的已知状态。如果管理器将此值识别为标识其具有本地副本的目录配置,则可以使用此本地副本,而不是下载这些表。请注意,它可能已从另一个代理下载了此本地副本(和ID),并将此副本用于发布相同ID的所有其他代理。

If an agent recognizes that the entire contents of the apmAppDirTable, apmHttpFilterTable, apmUserDefinedAppTable and protocolDirTable are equal to a known state to which an ID has been assigned, it should set this object to that ID.

如果代理识别出apmAppDirTable、apmHttpFilterTable、APMUSERDefineAdaptable和protocolDirTable的全部内容等于已分配ID的已知状态,则应将此对象设置为该ID。

In many cases when this feature is used, the application directory information will be in read-only memory and thus the tables may not be modified via SNMP requests. In the event

在许多情况下,使用此功能时,应用程序目录信息将位于只读内存中,因此不能通过SNMP请求修改表。万一

that the tables are writable and a modification is made, the agent is responsible for setting this object to 0.0 if it cannot determine that the state is equal to a known state.

如果这些表是可写的,并且进行了修改,则代理程序负责将该对象设置为0.0(如果无法确定该状态是否等于已知状态)。

An agent is not obligated to recognize and advertise all such registered states as it may not have knowledge of all states. Thus, a manager may encounter agents whose DirectoryID value is 0.0 even though the contents of the directory were equal to a registered state.

代理人没有义务承认和宣传所有此类注册国家,因为它可能不了解所有国家。因此,管理器可能会遇到DirectoryID值为0.0的代理,即使目录的内容等于已注册状态。

Note that the contents of those tables includes the protocolDirLocalIndex and appLocalIndex values. In other words, these values can't be assigned randomly on each agent, but must be equal to values that are part of the known state. While it is possible for a manager to download application directory details using SNMP and to set the appropriate directoryID, the manager would need to have some scheme to ensure consistent values of LocalIndex variables from agent to agent. Such schemes are outside the scope of this specification.

请注意,这些表的内容包括ProtocolDirLocaliIndex和appLocalIndex值。换句话说,这些值不能在每个代理上随机分配,但必须等于作为已知状态一部分的值。虽然管理器可以使用SNMP下载应用程序目录详细信息并设置适当的directoryID,但管理器需要一些方案来确保代理之间LocalIndex变量的值一致。此类方案不在本规范范围内。

Application directory registrations are unique within an administrative domain.

应用程序目录注册在管理域中是唯一的。

Typically these registrations will be made by an agent software developer who will set the application directory tables to a read-only state and assign a DirectoryID to that state. Thus, all agents running this software would share the same DirectoryID. As the application directory might change from one software release to the next, the developer may register different DirectoryID's for each software release.

通常,这些注册将由代理软件开发人员进行,他们将应用程序目录表设置为只读状态,并将DirectoryID分配给该状态。因此,运行此软件的所有代理都将共享相同的DirectoryID。由于应用程序目录可能从一个软件版本更改到下一个软件版本,开发人员可能会为每个软件版本注册不同的DirectoryID。

A customer could also create a site-wide application directory configuration and assign a DirectoryID to that configuration as long as consistent values of LocalIndex variables can be ensured.

客户还可以创建站点范围的应用程序目录配置,并为该配置分配DirectoryID,只要可以确保LocalIndex变量的值一致。

        The value of this object must persist across reboots."
     ::= { apmMibObjects 3 }
        
        The value of this object must persist across reboots."
     ::= { apmMibObjects 3 }
        

-- APM HTTP Filter Table

--APM HTTP筛选器表

-- The HTTP Filter Table creates virtual applications which measure the
-- performance of certain web pages  or sets of web pages. Some
-- circumstances where this is particularly useful are:
--
--      - An Intranet or ASP scenario where a business application is
--        running on one or more web pages or scripts.
        
-- The HTTP Filter Table creates virtual applications which measure the
-- performance of certain web pages  or sets of web pages. Some
-- circumstances where this is particularly useful are:
--
--      - An Intranet or ASP scenario where a business application is
--        running on one or more web pages or scripts.
        
--        (i.e., /expense/submit.cgi?employeeID=3426&...)
--      - A web-hosting scenario where one wants to measure the
--        service level for a particular customer
--      - An e-commerce scenario where the performance of certain
--        pages needs to be monitored more closely.
--        (i.e., shopping cart, shipping, credit card authorization)
        
--        (i.e., /expense/submit.cgi?employeeID=3426&...)
--      - A web-hosting scenario where one wants to measure the
--        service level for a particular customer
--      - An e-commerce scenario where the performance of certain
--        pages needs to be monitored more closely.
--        (i.e., shopping cart, shipping, credit card authorization)
        

apmHttpFilterTable OBJECT-TYPE SYNTAX SEQUENCE OF ApmHttpFilterEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table that creates virtual applications which measure the performance of certain web pages or sets of web pages.

apmHttpFilterTable ApmHttpFilterEntry MAX-ACCESS的对象类型语法序列不可访问状态当前描述“创建虚拟应用程序的表,用于测量某些网页或网页集的性能。

When an entry is added to this table, the agent will automatically create one or more entries in the apmAppDirTable (one for each responsivenessType it is capable of measuring).

当一个条目添加到此表中时,代理将自动在apmAppDirTable中创建一个或多个条目(它能够测量的每个响应类型对应一个条目)。

Note that when entries exist in this table some HTTP transactions will be summarized twice: in applications represented here as well as the HTTP application. If entries in this table overlap, these transactions may be summarized additional times.

请注意,当此表中存在条目时,一些HTTP事务将被汇总两次:在这里表示的应用程序中以及HTTP应用程序中。如果此表中的条目重叠,则这些事务可能会被汇总更多次。

        The contents of this table affect all reports and exceptions
        generated by this agent. Accordingly, modification of this
        table should be performed by a manager acting in the role of
        administrator. In particular, management software should not
        require or enforce particular configuration of this table - it
        should reflect the preferences of the site administrator, not
        the software author."
    ::= { apmMibObjects 4 }
        
        The contents of this table affect all reports and exceptions
        generated by this agent. Accordingly, modification of this
        table should be performed by a manager acting in the role of
        administrator. In particular, management software should not
        require or enforce particular configuration of this table - it
        should reflect the preferences of the site administrator, not
        the software author."
    ::= { apmMibObjects 4 }
        
apmHttpFilterEntry OBJECT-TYPE
    SYNTAX      ApmHttpFilterEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A virtual application which measure the performance of certain
        web pages or sets of web pages."
    INDEX { apmHttpFilterIndex }
    ::= { apmHttpFilterTable 1 }
        
apmHttpFilterEntry OBJECT-TYPE
    SYNTAX      ApmHttpFilterEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A virtual application which measure the performance of certain
        web pages or sets of web pages."
    INDEX { apmHttpFilterIndex }
    ::= { apmHttpFilterTable 1 }
        
ApmHttpFilterEntry ::= SEQUENCE {
    apmHttpFilterIndex              Unsigned32,
    apmHttpFilterAppLocalIndex      AppLocalIndex,
        
ApmHttpFilterEntry ::= SEQUENCE {
    apmHttpFilterIndex              Unsigned32,
    apmHttpFilterAppLocalIndex      AppLocalIndex,
        

apmHttpFilterServerProtocol Unsigned32, apmHttpFilterServerAddress ProtocolDirNetworkAddress, apmHttpFilterURLPath OCTET STRING, apmHttpFilterMatchType INTEGER, apmHttpFilterOwner OwnerString, apmHttpFilterStorageType StorageType, apmHttpFilterRowStatus RowStatus }

apmHttpFilterServerProtocol Unsigned32,apmHttpFilterServerAddress ProtocolDirNetworkAddress,apmHttpFilterURLPath八位字符串,apmHttpFilterMatchType INTEGER,apmHttpFilterOwner OwnerString,apmHttpFilterStorageType存储类型,apmHttpFilterRowStatus行状态}

apmHttpFilterIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (0..65535)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An index that uniquely identifies an entry in the
        apmHttpFilterTable."
    ::= { apmHttpFilterEntry 1 }
        
apmHttpFilterIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (0..65535)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An index that uniquely identifies an entry in the
        apmHttpFilterTable."
    ::= { apmHttpFilterEntry 1 }
        

apmHttpFilterAppLocalIndex OBJECT-TYPE SYNTAX AppLocalIndex MAX-ACCESS read-only STATUS current DESCRIPTION "The AppLocalIndex that represents HTTP transactions that match this entry.

ApmHttpFilterAppLocaliIndex对象类型语法AppLocalIndex MAX-ACCESS只读状态当前描述“表示与此条目匹配的HTTP事务的AppLocalIndex。

        This object is read-only. A value is created by the agent from
        an unused AppLocalIndex value when this apmHttpFilterEntry is
        created."
    ::= { apmHttpFilterEntry 2 }
        
        This object is read-only. A value is created by the agent from
        an unused AppLocalIndex value when this apmHttpFilterEntry is
        created."
    ::= { apmHttpFilterEntry 2 }
        
apmHttpFilterServerProtocol OBJECT-TYPE
    SYNTAX      Unsigned32 (1..2147483647)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The protocolDirLocalIndex value of the network level protocol
        of the apmHttpFilterServerAddress."
    ::= { apmHttpFilterEntry 3 }
        
apmHttpFilterServerProtocol OBJECT-TYPE
    SYNTAX      Unsigned32 (1..2147483647)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The protocolDirLocalIndex value of the network level protocol
        of the apmHttpFilterServerAddress."
    ::= { apmHttpFilterEntry 3 }
        

apmHttpFilterServerAddress OBJECT-TYPE SYNTAX ProtocolDirNetworkAddress MAX-ACCESS read-create STATUS current DESCRIPTION "This entry will only represent transactions coming from the network address specified in this object.

apmHttpFilterServerAddress对象类型语法ProtocolDirNetworkAddress MAX-ACCESS读取创建状态当前描述“此条目将仅表示来自此对象中指定的网络地址的事务。

This is represented as an octet string with specific semantics and length as identified by the associated apmHttpFilterServerProtocol object.

这表示为八位字节字符串,其特定语义和长度由关联的apmHttpFilterServerProtocol对象标识。

        If this object is the zero-length string, then this entry will
        match one of the addresses represented by the 'host' component
        of the associated apmHttpFilterURLPath object, where the
        format if a URL [9] is
        http://<host>:<port>/<path>?<searchpart>."
    ::= { apmHttpFilterEntry 4 }
        
        If this object is the zero-length string, then this entry will
        match one of the addresses represented by the 'host' component
        of the associated apmHttpFilterURLPath object, where the
        format if a URL [9] is
        http://<host>:<port>/<path>?<searchpart>."
    ::= { apmHttpFilterEntry 4 }
        

apmHttpFilterURLPath OBJECT-TYPE SYNTAX OCTET STRING (SIZE(0..65535)) MAX-ACCESS read-create STATUS current DESCRIPTION "This entry will only represent HTTP transactions where the URL path component in the request matches this value. This value represents the requested path regardless of any substitution that the server might perform.

apmHttpFilterURLPath对象类型语法八位字符串(大小(0..65535))MAX-ACCESS read create STATUS current DESCRIPTION“此条目将仅表示请求中URL路径组件与此值匹配的HTTP事务。此值表示请求的路径,而不考虑服务器可能执行的任何替换。

Prior to the matching, the URL is stripped of any server address or DNS name and consists solely of the path name on that server.

在匹配之前,URL将从任何服务器地址或DNS名称中删除,并且仅由该服务器上的路径名称组成。

If the length of this object is zero, then this entry will match if the associated apmHttpFilterServerAddress match. If the length of that object is also zero, then this entry will match nothing.

如果此对象的长度为零,则如果关联的apmHttpFilterServerAddress匹配,则此条目将匹配。如果该对象的长度也为零,则此条目将不匹配。

        The value of the associated apmHttpFilterMatchType dictates
        the type of matching that will be attempted."
    ::= { apmHttpFilterEntry 5 }
        
        The value of the associated apmHttpFilterMatchType dictates
        the type of matching that will be attempted."
    ::= { apmHttpFilterEntry 5 }
        
apmHttpFilterMatchType OBJECT-TYPE
    SYNTAX      INTEGER {
                    exact(1),
                    stripTrailingSlash(2),
                    prefix(3)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The matching algorithm used to compare the URL pathname.
        
apmHttpFilterMatchType OBJECT-TYPE
    SYNTAX      INTEGER {
                    exact(1),
                    stripTrailingSlash(2),
                    prefix(3)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The matching algorithm used to compare the URL pathname.
        

If the value is exact(1), then the pathname component will be compared with the associated apmHttpFilterURLPath and will only be associated with this entry if it matches exactly.

如果该值为精确值(1),则pathname组件将与关联的apmHttpFilterURLPath进行比较,并且仅当其完全匹配时才会与此条目关联。

If the value is stripTrailingSlash(2), then the pathname component will be compared with the associated apmHttpFilterURLPath and will only be associated with this entry if it matches exactly or if the pathname ends with a '/' symbol and matches apmHttpFilterURLPath if the '/' symbol is removed from the pathname. This option exists for those paths where an optional trailing slash is possible but for which a prefix match would be too broad.

如果该值为stripTrailingSlash(2),则pathname组件将与关联的apmHttpFilterURLPath进行比较,并且仅当它完全匹配时,或者如果路径名以“/”符号结尾,并且如果从路径名中删除“/”符号,则匹配apmHttpFilterURLPath时,才会与此条目关联。此选项适用于可以使用可选尾随斜杠但前缀匹配太宽的路径。

        If the value is prefix(3), then the pathname component will be
        compared with the associated apmHttpFilterURLPath and will
        only be associated with this entry if the beginning of the
        pathname matches every octet of this value. Octets that extend
        beyond the length of this value are ignored."
    ::= { apmHttpFilterEntry 6 }
        
        If the value is prefix(3), then the pathname component will be
        compared with the associated apmHttpFilterURLPath and will
        only be associated with this entry if the beginning of the
        pathname matches every octet of this value. Octets that extend
        beyond the length of this value are ignored."
    ::= { apmHttpFilterEntry 6 }
        
apmHttpFilterOwner OBJECT-TYPE
    SYNTAX      OwnerString
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The entity that configured this entry and is
        therefore using the resources assigned to it."
    ::= { apmHttpFilterEntry 7 }
        
apmHttpFilterOwner OBJECT-TYPE
    SYNTAX      OwnerString
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The entity that configured this entry and is
        therefore using the resources assigned to it."
    ::= { apmHttpFilterEntry 7 }
        
apmHttpFilterStorageType OBJECT-TYPE
    SYNTAX      StorageType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The storage type of this apmHttpFilterEntry. If the value of
        this object is 'permanent', no objects in this row need to be
        writable."
    ::= { apmHttpFilterEntry 8 }
        
apmHttpFilterStorageType OBJECT-TYPE
    SYNTAX      StorageType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The storage type of this apmHttpFilterEntry. If the value of
        this object is 'permanent', no objects in this row need to be
        writable."
    ::= { apmHttpFilterEntry 8 }
        
apmHttpFilterRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The status of this apmHttpFilterEntry. No objects in this row
        may be modified while the row's status is 'active'."
    ::= { apmHttpFilterEntry 9 }
        
apmHttpFilterRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The status of this apmHttpFilterEntry. No objects in this row
        may be modified while the row's status is 'active'."
    ::= { apmHttpFilterEntry 9 }
        

apmHttpIgnoreUnregisteredURLs OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current

apmHttpIgnoreUnregisteredURLs对象类型语法TruthValue最大访问读写状态当前

DESCRIPTION "When true, APM measurements of HTTP transactions will only measure transactions relating to URLs that match a filter in the apmHttpFilterTable. Thus, measurements for the HTTP application will present aggregated statistics for URL-matching HTTP transactions and measurements for the HTTP GET application verb will present aggregated statistics for URL-matching HTTP GET transactions.

描述“如果为true,HTTP事务的APM度量将仅度量与匹配apmHttpFilterTable中筛选器的URL相关的事务。因此,HTTP应用程序的度量值将显示URL匹配HTTP事务的聚合统计信息,HTTP GET应用程序谓词的度量值将显示URL匹配HTTP GET事务的聚合统计信息。

This will be used in environments that wish to monitor only targeted URLs and to ignore large volumes of internet web browsing traffic.

这将用于希望只监视目标URL并忽略大量internet web浏览流量的环境。

This object affects all APM reports and exceptions generated by this agent. Accordingly, modification of this object should be performed by a manager acting in the role of administrator. In particular, management software should not require or enforce particular configuration of this object - it should reflect the preferences of the site administrator, not the software author.

此对象影响此代理生成的所有APM报告和异常。因此,此对象的修改应由以管理员身份行事的经理执行。特别是,管理软件不应要求或强制执行此对象的特定配置-它应反映站点管理员的首选项,而不是软件作者的首选项。

        The value of this object must persist across reboots."
    ::= { apmMibObjects 5 }
        
        The value of this object must persist across reboots."
    ::= { apmMibObjects 5 }
        

apmHttp4xxIsFailure OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "When true, this agent will recognize HTTP errors in the range of 400 through 499 and will treat them as unavailable transactions. When false or when this object isn't supported, they will be treated as successful transactions.

apmHttp4xxIsFailure对象类型语法TruthValue MAX-ACCESS读写状态当前描述“如果为true,此代理将识别400到499范围内的HTTP错误,并将其视为不可用事务。如果为false或不支持此对象,则将其视为成功事务。

This object allows such error pages to be tracked at the possible expense of having user typos treated as poor service on the part of the web server.

此对象允许跟踪此类错误页面,但可能会导致web服务器将用户输入错误视为糟糕的服务。

This object affects all reports and exceptions generated by this agent. Accordingly, modification of this object should be performed by a manager acting in the role of administrator. In particular, management software should not require or enforce particular configuration of this object - it should reflect the preferences of the site administrator, not the software author.

此对象影响此代理生成的所有报告和异常。因此,此对象的修改应由以管理员身份行事的经理执行。特别是,管理软件不应要求或强制执行此对象的特定配置-它应反映站点管理员的首选项,而不是软件作者的首选项。

        The value of this object must persist across reboots."
    ::= { apmMibObjects 6 }
        
        The value of this object must persist across reboots."
    ::= { apmMibObjects 6 }
        

-- The APM User-Defined Application Table

--APM用户定义的应用程序表

-- Many application protocols will never be registered with a
-- standards body (and thus included in a protocol directory standard)
-- because they are custom, in-house or proprietary
-- applications. Nevertheless, implementation strategies exist for
-- monitoring the end-user experience of these applications.
--
-- This read-only table provides a means for the agent to advertise
-- which user-defined applications it is monitoring and to associate
-- each with an AppLocalIndex value. It is an implementation-dependent
-- matter as to how the agent learns how to monitor these
-- applications.
        
-- Many application protocols will never be registered with a
-- standards body (and thus included in a protocol directory standard)
-- because they are custom, in-house or proprietary
-- applications. Nevertheless, implementation strategies exist for
-- monitoring the end-user experience of these applications.
--
-- This read-only table provides a means for the agent to advertise
-- which user-defined applications it is monitoring and to associate
-- each with an AppLocalIndex value. It is an implementation-dependent
-- matter as to how the agent learns how to monitor these
-- applications.
        

apmUserDefinedAppTable OBJECT-TYPE SYNTAX SEQUENCE OF ApmUserDefinedAppEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table that advertises user-defined applications that the agent is measuring.

apmUserDefinedAppTable对象类型apmuserdefinedapentry MAX-ACCESS的语法序列不可访问状态当前描述“公布代理正在测量的用户定义应用程序的表。

The agent will automatically create one or more entries in the apmAppDirTable (one for each responsivenessType it is capable of measuring) for each entry in this table.

代理将为此表中的每个条目自动在apmAppDirTable中创建一个或多个条目(一个用于它能够测量的每个响应类型)。

        Note that when entries exist in this table some
        transactions can be summarized more than once if there is
        overlap between applications defined here and applications
        defined in the protocol directory or in the httpFilter table."
    ::= { apmMibObjects 7 }
        
        Note that when entries exist in this table some
        transactions can be summarized more than once if there is
        overlap between applications defined here and applications
        defined in the protocol directory or in the httpFilter table."
    ::= { apmMibObjects 7 }
        

apmUserDefinedAppEntry OBJECT-TYPE SYNTAX ApmUserDefinedAppEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A user-defined application that the agent is measuring, along with its AppLocalIndex assignment.

apmUserDefinedAppEntry对象类型语法apmUserDefinedAppEntry MAX-ACCESS不可访问状态当前描述“代理正在测量的用户定义应用程序及其AppLocalIndex分配。

        The apmAppDirAppLocalIndex value in the index identifies
        the agent-assigned AppLocalIndex value for this user-defined
        application."
    INDEX { apmAppDirAppLocalIndex }
    ::= { apmUserDefinedAppTable 1 }
        
        The apmAppDirAppLocalIndex value in the index identifies
        the agent-assigned AppLocalIndex value for this user-defined
        application."
    INDEX { apmAppDirAppLocalIndex }
    ::= { apmUserDefinedAppTable 1 }
        
ApmUserDefinedAppEntry ::= SEQUENCE {
    apmUserDefinedAppParentIndex    Unsigned32,
        
ApmUserDefinedAppEntry ::= SEQUENCE {
    apmUserDefinedAppParentIndex    Unsigned32,
        

apmUserDefinedAppApplication SnmpAdminString }

apmuserdefinedappapapplication snmpadmin}

apmUserDefinedAppParentIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The protocolDirLocalIndex value of the highest-layer
        protocol defined in the protocolDirTable that this
        application is a child of."
    ::= { apmUserDefinedAppEntry 1 }
        
apmUserDefinedAppParentIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The protocolDirLocalIndex value of the highest-layer
        protocol defined in the protocolDirTable that this
        application is a child of."
    ::= { apmUserDefinedAppEntry 1 }
        
apmUserDefinedAppApplication OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "A human readable descriptive tag for this application."
    ::= { apmUserDefinedAppEntry 2 }
        
apmUserDefinedAppApplication OBJECT-TYPE
    SYNTAX      SnmpAdminString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "A human readable descriptive tag for this application."
    ::= { apmUserDefinedAppEntry 2 }
        

-- The APM Name Table

--APM名称表

apmNameTable OBJECT-TYPE SYNTAX SEQUENCE OF ApmNameEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A client machine may have multiple addresses during a period of monitoring. The apmNameTable assigns a long-lived identifier to a client and records what addresses were assigned to that client for periods of time. Various implementation techniques exist for tracking this mapping but if an agent is unable to track client address mappings, it may map client identifiers to client addresses rather than to distinct client machines.

APMNAMETERY MAX-ACCESS的apmNameTable对象类型语法序列不可访问状态当前说明“在监视期间,客户端计算机可能有多个地址。apmNameTable为客户机分配一个长期标识符,并记录在一段时间内分配给该客户机的地址。存在用于跟踪此映射的各种实现技术,但如果代理无法跟踪客户端地址映射,则它可能会将客户端标识符映射到客户端地址,而不是不同的客户端计算机。

A particular apmNameClientID should be a constant attribute of a particular client. When available, the agent may also record the machine name and/or user name which may be valuable for displaying to humans. The apmNameMachineName and apmNameUserName are relatively constant, changing only if these attributes actually change on the client.

特定的apmNameClientID应该是特定客户端的常量属性。当可用时,代理还可以记录机器名和/或用户名,这可能对向人类显示有价值。APMNAMEChineName和apmNameUserName是相对恒定的,仅当这些属性在客户端上实际更改时才会更改。

The agent will store a historical log of these entries, aging out old entries as the log becomes too large. Since this table contains information vital to the interpretation of other tables (e.g., the apmReportTable), the agent should ensure that

代理将存储这些条目的历史日志,随着日志变得过大,旧条目将老化。由于此表包含对其他表(如apmReportTable)的解释至关重要的信息,代理应确保

the log doesn't age out entries that would be referenced by data in those tables.

日志不会过时那些表中的数据将引用的条目。

Note that an entry for a clientID is active from its StartTime until the StartTime of another entry (for the same clientID) that supersedes it, or 'now' if none supersede it. Therefore, if a clientID only has a single entry, it is by definition very new and should never be aged out. No entry for a clientID should be aged out unless it has been updated by a new entry for the client (i.e., with an updated address) and only if the new entry is 'old' enough.

请注意,clientID的条目从其开始时间一直处于活动状态,直到替代它的另一个条目(对于同一clientID)的开始时间,如果没有任何条目替代它,则为“现在”。因此,如果clientID只有一个条目,根据定义,它是非常新的,不应该过时。clientID的任何条目都不应过期,除非它已由客户端的新条目更新(即使用更新的地址),并且仅当新条目足够“旧”时。

        To determine how old is old enough, compute the maximum value
        of Interval * (NumReports + 1) of all entries in the
        apmReportControlTable (the '+ 1' is to allow a reasonable
        period of time for the report to be downloaded). Then take the
        larger of this value and the age in seconds of the oldest
        entry in the current transaction table. If an entry for a
        clientID is superseded by another entry whose StartTime is
        more than this many seconds ago, then the older entry may be
        deleted."
    ::= { apmMibObjects 8 }
        
        To determine how old is old enough, compute the maximum value
        of Interval * (NumReports + 1) of all entries in the
        apmReportControlTable (the '+ 1' is to allow a reasonable
        period of time for the report to be downloaded). Then take the
        larger of this value and the age in seconds of the oldest
        entry in the current transaction table. If an entry for a
        clientID is superseded by another entry whose StartTime is
        more than this many seconds ago, then the older entry may be
        deleted."
    ::= { apmMibObjects 8 }
        

apmNameEntry OBJECT-TYPE SYNTAX ApmNameEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the APM name table. An entry exists for each period of time that a client has been associated with a particular address.

apmNameEntry对象类型语法apmNameEntry MAX-ACCESS not ACCESS STATUS current DESCRIPTION“APM name表中的一个条目。客户端与特定地址关联的每个时间段都存在一个条目。

The protocolDirLocalIndex value in the index identifies the network layer protocol for the ClientAddress for this entry.

索引中的ProtocolDirLocaliIndex值标识此项的ClientAddress的网络层协议。

        Note that some combinations of index values may result in an
        index that exceeds 128 sub-identifiers in length which exceeds
        the maximum for the SNMP protocol. Implementations should take
        care to avoid such combinations."
    INDEX { apmNameClientID,
            protocolDirLocalIndex, apmNameClientAddress,
            apmNameMappingStartTime }
    ::= { apmNameTable 1 }
        
        Note that some combinations of index values may result in an
        index that exceeds 128 sub-identifiers in length which exceeds
        the maximum for the SNMP protocol. Implementations should take
        care to avoid such combinations."
    INDEX { apmNameClientID,
            protocolDirLocalIndex, apmNameClientAddress,
            apmNameMappingStartTime }
    ::= { apmNameTable 1 }
        
ApmNameEntry ::= SEQUENCE {
    apmNameClientID                  RmonClientID,
    apmNameClientAddress             ProtocolDirNetworkAddress,
        
ApmNameEntry ::= SEQUENCE {
    apmNameClientID                  RmonClientID,
    apmNameClientAddress             ProtocolDirNetworkAddress,
        

apmNameMappingStartTime DateAndTime, apmNameMachineName SnmpAdminString, apmNameUserName SnmpAdminString }

apmNameMappingStartTime-DateAndTime,apmnamemamachinename-SnmpAdminString,apmNameUserName-SnmpAdminString}

apmNameClientID OBJECT-TYPE
    SYNTAX      RmonClientID
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
         "A unique ID assigned to the machine represented by this
         mapping. This ID is assigned by the agent using an
         implementation-specific algorithm."
    ::= { apmNameEntry 1 }
        
apmNameClientID OBJECT-TYPE
    SYNTAX      RmonClientID
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
         "A unique ID assigned to the machine represented by this
         mapping. This ID is assigned by the agent using an
         implementation-specific algorithm."
    ::= { apmNameEntry 1 }
        

apmNameClientAddress OBJECT-TYPE SYNTAX ProtocolDirNetworkAddress (SIZE(1..255)) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The network client address for this client when this mapping was active.

apmNameClientAddress对象类型语法ProtocolDirNetworkAddress(大小(1..255))MAX-ACCESS不可访问状态当前描述“此映射处于活动状态时此客户端的网络客户端地址。

This is represented as an octet string with specific semantics and length as identified by the protocolDirLocalIndex component of the index. This object may not be the zero length string.

这表示为一个八位字符串,具有特定的语义和长度,由索引的ProtocolDirLocaliIndex组件标识。此对象可能不是长度为零的字符串。

        Since this object is an index variable, it is encoded in the
        index according to the index encoding rules.  For example, if
        the protocolDirLocalIndex component of the index indicates an
        encapsulation of ip, this object is encoded as a length octet
        of 4, followed by the 4 octets of the ip address, in network
        byte order. Care should be taken to avoid values of this
        object that, in conjunction with the other index variables,
        would result in an index longer than SNMP's maximum of 128
        subidentifiers."
    ::= { apmNameEntry 2 }
        
        Since this object is an index variable, it is encoded in the
        index according to the index encoding rules.  For example, if
        the protocolDirLocalIndex component of the index indicates an
        encapsulation of ip, this object is encoded as a length octet
        of 4, followed by the 4 octets of the ip address, in network
        byte order. Care should be taken to avoid values of this
        object that, in conjunction with the other index variables,
        would result in an index longer than SNMP's maximum of 128
        subidentifiers."
    ::= { apmNameEntry 2 }
        
apmNameMappingStartTime OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The time that the agent first discovered this mapping
        as active."
    ::= { apmNameEntry 3 }
        
apmNameMappingStartTime OBJECT-TYPE
    SYNTAX      DateAndTime
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The time that the agent first discovered this mapping
        as active."
    ::= { apmNameEntry 3 }
        

apmNameMachineName OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS read-only STATUS current DESCRIPTION "The human readable name of the client machine.

apmNameMachineName对象类型语法snmpadmin安装MAX-ACCESS只读状态当前描述“客户机的可读名称。

        If the client has no machine name or the agent is
        unable to learn the machine name, this object will be
        a zero-length string."
    ::= { apmNameEntry 4 }
        
        If the client has no machine name or the agent is
        unable to learn the machine name, this object will be
        a zero-length string."
    ::= { apmNameEntry 4 }
        

apmNameUserName OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS read-only STATUS current DESCRIPTION "The human readable name of a human user using the client machine. If more than one user name are available simultaneously, it is an implementation-dependent matter as to which is used here. However, if the user name changes, this object should change to reflect that change.

apmNameUserName对象类型语法SnmpAdminString MAX-ACCESS只读状态当前说明“使用客户端计算机的人类用户的可读名称。如果同时有多个用户名可用,则此处使用哪个用户名取决于实现。但是,如果用户名更改,则此对象应更改以反映该更改。

        Non-human user names like 'root' or 'administrator' aren't
        intended as values for this object. If the client has no
        recorded user name or the agent is unable to learn a user
        name, this object will be a zero-length string."
    ::= { apmNameEntry 5 }
        
        Non-human user names like 'root' or 'administrator' aren't
        intended as values for this object. If the client has no
        recorded user name or the agent is unable to learn a user
        name, this object will be a zero-length string."
    ::= { apmNameEntry 5 }
        

-- The APM Report Group

--APM报告组

apmReportControlTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ApmReportControlEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Parameters that control the creation of a set of reports that
        aggregate application performance."
    ::= { apmMibObjects 9 }
        
apmReportControlTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ApmReportControlEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Parameters that control the creation of a set of reports that
        aggregate application performance."
    ::= { apmMibObjects 9 }
        

apmReportControlEntry OBJECT-TYPE SYNTAX ApmReportControlEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A conceptual row in the apmReportControlTable.

apmReportControlEntry对象类型语法apmReportControlEntry MAX-ACCESS不可访问状态当前描述“apmReportControlTable中的概念行。

An example of the indexing of this table is

此表的索引示例如下:

        apmReportControlInterval.3"
    INDEX { apmReportControlIndex }
    ::= { apmReportControlTable 1 }
        
        apmReportControlInterval.3"
    INDEX { apmReportControlIndex }
    ::= { apmReportControlTable 1 }
        
ApmReportControlEntry ::= SEQUENCE {
    apmReportControlIndex            Unsigned32,
    apmReportControlDataSource       DataSourceOrZero,
    apmReportControlAggregationType  TransactionAggregationType,
    apmReportControlInterval         Unsigned32,
    apmReportControlRequestedSize    Unsigned32,
    apmReportControlGrantedSize      Unsigned32,
    apmReportControlRequestedReports Unsigned32,
    apmReportControlGrantedReports   Unsigned32,
    apmReportControlStartTime        TimeStamp,
    apmReportControlReportNumber     Unsigned32,
    apmReportControlDeniedInserts    Counter32,
    apmReportControlDroppedFrames    Counter32,
    apmReportControlOwner            OwnerString,
    apmReportControlStorageType      StorageType,
    apmReportControlStatus           RowStatus
}
        
ApmReportControlEntry ::= SEQUENCE {
    apmReportControlIndex            Unsigned32,
    apmReportControlDataSource       DataSourceOrZero,
    apmReportControlAggregationType  TransactionAggregationType,
    apmReportControlInterval         Unsigned32,
    apmReportControlRequestedSize    Unsigned32,
    apmReportControlGrantedSize      Unsigned32,
    apmReportControlRequestedReports Unsigned32,
    apmReportControlGrantedReports   Unsigned32,
    apmReportControlStartTime        TimeStamp,
    apmReportControlReportNumber     Unsigned32,
    apmReportControlDeniedInserts    Counter32,
    apmReportControlDroppedFrames    Counter32,
    apmReportControlOwner            OwnerString,
    apmReportControlStorageType      StorageType,
    apmReportControlStatus           RowStatus
}
        
apmReportControlIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..65535)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An index that uniquely identifies an entry in the
        apmReportControlTable.  Each such entry defines a unique
        report whose results are placed in the apmReportTable on
        behalf of this apmReportControlEntry."
    ::= { apmReportControlEntry 1 }
        
apmReportControlIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..65535)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An index that uniquely identifies an entry in the
        apmReportControlTable.  Each such entry defines a unique
        report whose results are placed in the apmReportTable on
        behalf of this apmReportControlEntry."
    ::= { apmReportControlEntry 1 }
        

apmReportControlDataSource OBJECT-TYPE SYNTAX DataSourceOrZero MAX-ACCESS read-create STATUS current DESCRIPTION "The source of the data for APM Reports generated on behalf of this apmReportControlEntry.

apmReportControlDataSource对象类型语法DataSourceOrZero MAX-ACCESS读取创建状态当前描述“代表此apmReportControlEntry生成的APM报告的数据源。

If the measurement is being performed by a probe, this should be set to interface or port where data was received for analysis. If the measurement isn't being performed by a probe, this should be set to the primary interface over which the measurement is being performed. If the measurement isn't being performed by a probe and there is no primary interface or this

如果由探头执行测量,则应将其设置为接收数据进行分析的接口或端口。如果不是由探针执行测量,则应将其设置为执行测量的主界面。如果测量不是由探头执行的,并且没有主接口或

information isn't known, this object should be set to 0.0.

信息未知,此对象应设置为0.0。

        This object may not be modified if the associated
        apmReportControlStatus object is equal to active(1)."
    ::= { apmReportControlEntry 2 }
        
        This object may not be modified if the associated
        apmReportControlStatus object is equal to active(1)."
    ::= { apmReportControlEntry 2 }
        
apmReportControlAggregationType OBJECT-TYPE
    SYNTAX      TransactionAggregationType
            --    INTEGER {
            --      flows(1),
            --      clients(2),
            --      servers(3),
            --      applications(4)
            --    }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The type of aggregation being performed for this set of
        reports.
        
apmReportControlAggregationType OBJECT-TYPE
    SYNTAX      TransactionAggregationType
            --    INTEGER {
            --      flows(1),
            --      clients(2),
            --      servers(3),
            --      applications(4)
            --    }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The type of aggregation being performed for this set of
        reports.
        

The metrics for a single transaction are the responsiveness of the transaction and whether the transaction succeeded (a boolean). When such metrics are aggregated in this MIB Module, these metrics are replaced by averages and distributions of responsiveness and availability. The metrics describing aggregates are constant no matter which type of aggregation is being performed. These metrics may be found in the apmReportTable.

单个事务的度量是事务的响应性和事务是否成功(布尔值)。当在这个MIB模块中聚合这些度量时,这些度量将被响应性和可用性的平均值和分布所取代。无论执行哪种类型的聚合,描述聚合的度量都是恒定的。这些指标可以在apmReportTable中找到。

The flows(1) aggregation is the simplest. All transactions that share common application/server/client 3-tuples are aggregated together, resulting in a set of metrics for all such unique 3-tuples.

流(1)聚合是最简单的。共享公共应用程序/服务器/客户端3元组的所有事务都聚合在一起,从而为所有此类唯一3元组生成一组度量。

The clients(2) aggregation results in somewhat more aggregation (i.e., fewer resulting records). All transactions that share common application/client tuples are aggregated together, resulting in a set of metrics for all such unique tuples.

客户机(2)聚合会导致更多的聚合(即更少的结果记录)。共享公共应用程序/客户端元组的所有事务都聚合在一起,从而为所有此类唯一元组生成一组度量。

The servers(3) aggregation usually results in still more aggregation (i.e., fewer resulting records). All transactions that share common application/server tuples are aggregated together, resulting in a set of metrics for all such unique tuples.

服务器(3)聚合通常会导致更多的聚合(即更少的结果记录)。共享公共应用程序/服务器元组的所有事务都聚合在一起,从而为所有此类唯一元组生成一组度量。

The applications(4) aggregation results in the most aggregation (i.e., the fewest resulting records). All

应用程序(4)聚合导致最多的聚合(即,最少的结果记录)。全部的

transactions that share a common application are aggregated together, resulting in a set of metrics for all such unique applications.

共享一个公共应用程序的事务聚合在一起,从而为所有此类唯一应用程序生成一组度量。

Note that it is not meaningful to aggregate applications, as different applications have widely varying characteristics. As a result, this set of aggregations is complete.

请注意,聚合应用程序没有意义,因为不同的应用程序具有广泛不同的特性。因此,这组聚合就完成了。

        This object may not be modified if the associated
        apmReportControlStatus object is equal to active(1)."
    ::= { apmReportControlEntry 3 }
        
        This object may not be modified if the associated
        apmReportControlStatus object is equal to active(1)."
    ::= { apmReportControlEntry 3 }
        

apmReportControlInterval OBJECT-TYPE SYNTAX Unsigned32 UNITS "Seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The interval in seconds over which data is accumulated before being aggregated into a report in the apmReportTable. All reports with the same apmReportControlIndex will be based on the same interval. This object must be greater than zero.

apmReportControlInterval对象类型语法无符号32单位“秒”最大访问读取创建状态当前说明“数据在聚合到apmReportTable中的报告之前累积的时间间隔(秒)。具有相同apmReportControlIndex的所有报告将基于相同的时间间隔。此对象必须大于零。

Many users desire that these reports be synchronized to within seconds of the beginning of the hour because the results may be correlated more meaningfully to business behavior and so that data from multiple agents is aggregated over the same time periods. Thus management software may take extra effort to synchronize reports to the beginning of the hour and to one another. However, the agent must not allow reports to 'drift' over time as they will quickly become unsynchronized. In particular, if there is any fixed processing delay between reports, the reports should deduct this time from the interval so that reports don't drift.

许多用户希望在一小时开始的几秒钟内将这些报告同步到,因为结果可能与业务行为更有意义地关联,因此来自多个代理的数据可以在同一时间段内聚合。因此,管理软件可能需要额外的努力来将报告同步到一小时的开始以及彼此之间。但是,代理不能允许报告随时间“漂移”,因为它们将很快变得不同步。特别是,如果报告之间存在任何固定的处理延迟,则报告应从间隔中扣除该时间,以便报告不会漂移。

        This object may not be modified if the associated
        apmReportControlStatus object is equal to active(1)."
    DEFVAL { 3600 }
    ::= { apmReportControlEntry 4 }
        
        This object may not be modified if the associated
        apmReportControlStatus object is equal to active(1)."
    DEFVAL { 3600 }
    ::= { apmReportControlEntry 4 }
        
apmReportControlRequestedSize OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The number of entries requested to be allocated for each
        report generated on behalf of this entry."
    ::= { apmReportControlEntry 5 }
        
apmReportControlRequestedSize OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The number of entries requested to be allocated for each
        report generated on behalf of this entry."
    ::= { apmReportControlEntry 5 }
        

apmReportControlGrantedSize OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of entries per report the agent has allocated based on the requested amount in apmReportControlRequestedSize. Since multiple reports are saved, the total number of entries allocated will be this number multiplied by the value of apmReportControlGrantedReports, or 1 if that object doesn't exist.

apmReportControlGrantedSize对象类型语法Unsigned32 MAX-ACCESS只读状态当前说明“代理根据apmReportControlRequestedSize中的请求金额分配的每个报告的条目数。由于保存了多个报告,分配的条目总数将是该数字乘以apmReportControlGrantedReports的值,如果该对象不存在,则为1。

When the associated apmReportControlRequestedSize object is created or modified, the agent should set this object as closely to the requested value as is possible for the particular implementation and available resources. When considering resources available, the agent must consider its ability to allocate this many entries for all reports.

创建或修改关联的apmReportControlRequestedSize对象时,代理应将该对象设置为与特定实现和可用资源所请求的值尽可能接近。当考虑可用的资源时,代理必须考虑它能够为所有报告分配多个条目。

        Note that while the actual number of entries stored in the
        reports may fluctuate due to changing conditions, the agent
        must continue to have storage available to satisfy the full
        report size for all reports when necessary. Further, the agent
        must not lower this value except as a result of a set to the
        associated apmReportControlRequestedSize object."
    ::= { apmReportControlEntry 6 }
        
        Note that while the actual number of entries stored in the
        reports may fluctuate due to changing conditions, the agent
        must continue to have storage available to satisfy the full
        report size for all reports when necessary. Further, the agent
        must not lower this value except as a result of a set to the
        associated apmReportControlRequestedSize object."
    ::= { apmReportControlEntry 6 }
        
apmReportControlRequestedReports OBJECT-TYPE
    SYNTAX      Unsigned32 (0..65535)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The number of saved reports requested to be allocated on
        behalf of this entry."
    ::= { apmReportControlEntry 7 }
        
apmReportControlRequestedReports OBJECT-TYPE
    SYNTAX      Unsigned32 (0..65535)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The number of saved reports requested to be allocated on
        behalf of this entry."
    ::= { apmReportControlEntry 7 }
        

apmReportControlGrantedReports OBJECT-TYPE SYNTAX Unsigned32 (0..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "The number of saved reports the agent has allocated based on the requested amount in apmReportControlRequestedReports. Since each report can have many entries, the total number of entries allocated will be this number multiplied by the value of apmReportControlGrantedSize, or 1 if that object doesn't exist.

apmReportControlGrantedReports对象类型语法Unsigned32(0..65535)最大访问只读状态当前说明“代理根据apmReportControlRequestedReports中请求的金额分配的已保存报告数。由于每个报表可以有多个条目,因此分配的条目总数将是该数字乘以apmReportControlGrantedSize的值,如果该对象不存在,则为1。

When the associated apmReportControlRequestedReports object is created or modified, the agent should set this object as closely to the requested value as is possible for the particular implementation and available resources. When considering resources available, the agent must consider its ability to allocate this many reports each with the number of entries represented by apmReportControlGrantedSize, or 1 if that object doesn't exist.

创建或修改关联的apmReportControlRequestedReports对象时,代理应针对特定实现和可用资源,将此对象设置为尽可能接近请求的值。在考虑可用资源时,代理必须考虑其分配多个报告的能力,每个报告以APMPRePrimeCutabelDead大小表示的条目数目,或者如果该对象不存在,则为1。

        Note that while the storage required for each report may
        fluctuate due to changing conditions, the agent must continue
        to have storage available to satisfy the full report size for
        all reports when necessary. Further, the agent must not lower
        this value except as a result of a set to the associated
        apmReportControlRequestedSize object."
    ::= { apmReportControlEntry 8 }
        
        Note that while the storage required for each report may
        fluctuate due to changing conditions, the agent must continue
        to have storage available to satisfy the full report size for
        all reports when necessary. Further, the agent must not lower
        this value except as a result of a set to the associated
        apmReportControlRequestedSize object."
    ::= { apmReportControlEntry 8 }
        

apmReportControlStartTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime when the system began processing the report in progress. Note that the report in progress is not available.

apmReportControlStartTime对象类型语法TimeStamp MAX-ACCESS只读状态current DESCRIPTION“系统开始处理进行中的报告时的sysUpTime值。请注意,进行中的报告不可用。

        This object may be used by the management station to figure
        out the start time for all previous reports saved for this
        apmReportControlEntry, as reports are started at fixed
        intervals."
    ::= { apmReportControlEntry 9 }
        
        This object may be used by the management station to figure
        out the start time for all previous reports saved for this
        apmReportControlEntry, as reports are started at fixed
        intervals."
    ::= { apmReportControlEntry 9 }
        
apmReportControlReportNumber OBJECT-TYPE
    SYNTAX      Unsigned32 (1..4294967295)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of the report in progress. When an
        apmReportControlEntry is activated, the first report will be
        numbered one."
    ::= { apmReportControlEntry 10 }
        
apmReportControlReportNumber OBJECT-TYPE
    SYNTAX      Unsigned32 (1..4294967295)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of the report in progress. When an
        apmReportControlEntry is activated, the first report will be
        numbered one."
    ::= { apmReportControlEntry 10 }
        

apmReportControlDeniedInserts OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of failed attempts to add an entry to reports for

APMREPORTRCONTROLDENITEINSERTS对象类型语法计数器32 MAX-ACCESS只读状态当前说明“尝试向报表中添加条目失败的次数”

this apmReportControlEntry because the number of entries would have exceeded apmReportControlGrantedSize.

此apmReportControlEntry失败,因为条目数将超过APMReportControlGrandedSize。

This number is valuable in determining if enough entries have been allocated for reports in light of fluctuating network usage. Note that since an entry that is denied will often be attempted again, this number will not predict the exact number of additional entries needed, but can be used to understand the relative magnitude of the problem.

根据网络使用的波动情况,此数字对于确定是否为报告分配了足够的条目非常有用。请注意,由于被拒绝的条目通常会再次尝试,因此该数字不会预测所需额外条目的确切数量,但可用于了解问题的相对严重程度。

        Also note that there is no ordering specified for the entries
        in the report, thus there are no rules for which entries will
        be omitted when not enough entries are available. As a
        consequence, the agent is not required to delete 'least
        valuable' entries first."
    ::= { apmReportControlEntry 11 }
        
        Also note that there is no ordering specified for the entries
        in the report, thus there are no rules for which entries will
        be omitted when not enough entries are available. As a
        consequence, the agent is not required to delete 'least
        valuable' entries first."
    ::= { apmReportControlEntry 11 }
        

apmReportControlDroppedFrames OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of frames which were received by the agent and therefore not accounted for in the *StatsDropEvents, but for which the agent chose not to count for this entry for whatever reason. Most often, this event occurs when the agent is out of some resources and decides to shed load from this collection.

APMReportControldProppedFrames对象类型语法计数器32 MAX-ACCESS只读状态当前说明“代理收到的帧总数,因此未计入*StatsDropEvents中,但代理出于任何原因选择不计入此条目。大多数情况下,当代理缺少某些资源并决定从此集合中卸载时,会发生此事件。

This count does not include packets that were not counted because they had MAC-layer errors.

此计数不包括由于MAC层错误而未计数的数据包。

This counter is only relevant if this apm report is based on a data source whose collection methodology is based on analyzing network traffic.

仅当此apm报告基于其收集方法基于分析网络流量的数据源时,此计数器才相关。

Note that if the apmReportTables are inactive because no applications are enabled in the application directory, this value should be 0.

请注意,如果apmReportTables处于非活动状态,因为应用程序目录中未启用任何应用程序,则该值应为0。

        Note that, unlike the dropEvents counter, this number is the
        exact number of frames dropped."
    ::= { apmReportControlEntry 12 }
        
        Note that, unlike the dropEvents counter, this number is the
        exact number of frames dropped."
    ::= { apmReportControlEntry 12 }
        

apmReportControlOwner OBJECT-TYPE SYNTAX OwnerString MAX-ACCESS read-create STATUS current

apmReportControlOwner对象类型语法OwnerString MAX-ACCESS读取创建状态当前

    DESCRIPTION
        "The entity that configured this entry and is
        therefore using the resources assigned to it."
    ::= { apmReportControlEntry 13 }
        
    DESCRIPTION
        "The entity that configured this entry and is
        therefore using the resources assigned to it."
    ::= { apmReportControlEntry 13 }
        
apmReportControlStorageType OBJECT-TYPE
    SYNTAX      StorageType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The storage type of this apmReportControlEntry. If the value
        of this object is 'permanent', no objects in this row need to
        be writable."
    ::= { apmReportControlEntry 14 }
        
apmReportControlStorageType OBJECT-TYPE
    SYNTAX      StorageType
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The storage type of this apmReportControlEntry. If the value
        of this object is 'permanent', no objects in this row need to
        be writable."
    ::= { apmReportControlEntry 14 }
        

apmReportControlStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this apmReportControlEntry.

apmReportControlStatus对象类型语法RowStatus MAX-ACCESS read create STATUS current DESCRIPTION“此apmReportControlEntry的状态。

An entry may not exist in the active state unless all objects in the entry have an appropriate value. The only objects in the entry that may be modified while the entry is in the active state are apmReportControlRequestedSize and apmReportControlRequestedReports.

除非条目中的所有对象都具有适当的值,否则条目可能不存在于活动状态。条目处于活动状态时,条目中唯一可以修改的对象是apmReportControlRequestedSize和apmReportControlRequestedReports。

        If this object is not equal to active(1), all
        associated entries in the apmReportTable shall be deleted
        by the agent."
    ::= { apmReportControlEntry 15 }
        
        If this object is not equal to active(1), all
        associated entries in the apmReportTable shall be deleted
        by the agent."
    ::= { apmReportControlEntry 15 }
        

-- The APM Report Table

--APM报告表

apmReportTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ApmReportEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The data resulting from aggregated APM reports. Consult the
        definition of apmReportControlAggregationType for the
        definition of the various types of aggregations."
    ::= { apmMibObjects 10 }
        
apmReportTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ApmReportEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The data resulting from aggregated APM reports. Consult the
        definition of apmReportControlAggregationType for the
        definition of the various types of aggregations."
    ::= { apmMibObjects 10 }
        

apmReportEntry OBJECT-TYPE SYNTAX ApmReportEntry MAX-ACCESS not-accessible

apmReportEntry对象类型语法apmReportEntry MAX-ACCESS不可访问

STATUS current DESCRIPTION "A conceptual row in the apmReportTable. The apmReportControlIndex value in the index identifies the apmReportControlEntry on whose behalf this entry was created. The apmReportIndex value in the index identifies which report (in the series of reports) this entry is a part of. The apmAppDirAppLocalIndex value in the index identifies the common application of the transactions aggregated in this entry. The apmAppDirResponsivenessType value in the index identifies the type of responsiveness metric reported by this entry and uniquely identifies this entry when more than one responsiveness metric is measured for a flow. Entries will only exist in this table for those combinations of AppLocalIndex and ResponsivenessType that are configured 'on(1)'. The protocolDirLocalIndex value in the index identifies the network layer protocol of the apmReportServerAddress. When the associated apmReportControlAggregationType value is equal to applications(4) or clients(2), this protocolDirLocalIndex value will equal 0. The apmReportServerAddress value in the index identifies the network layer address of the server in transactions aggregated in this entry. The apmNameClientID value in the index identifies the client in transactions aggregated in this entry. If the associated apmReportControlAggregationType is equal to applications(4) or servers(3), then this protocolDirLocalIndex value will equal 0.

STATUS current DESCRIPTION“apmReportTable中的概念行。索引中的apmReportControlIndex值标识代表其创建此条目的apmReportControlEntry。索引中的apmReportIndex值标识(在一系列报告中)哪个报告此条目是的一部分。索引中的APMAPPDIRAppLocaliIndex值标识在此条目中聚合的事务的通用应用程序。索引中的APMAPPDInResponsiveNessType值标识此条目报告的响应性度量的类型,并在使用多个响应性度量时唯一标识此条目为流测量。对于配置为“on(1)”的AppLocalIndex和ResponsivesType的组合,此表中将只存在条目。索引中的protocolDirLocalIndex值标识apmReportServerAddress的网络层协议。当关联的apmReportControlAggregationType值等于应用程序时(4) 或客户(2),此ProtocolDirLocaliIndex值将等于0。索引中的apmReportServerAddress值标识此条目中聚合的事务中服务器的网络层地址。索引中的apmNameClientID值标识此条目中聚合的事务中的客户端。如果关联的apmReportControlAggregationType相等对于应用程序(4)或服务器(3),则此ProtocolDirLocaliIndex值将等于0。

An example of the indexing of this entry is apmReportTransactionCount.3.15.3.1.8.4.192.168.1.2.3232235788

此条目的索引示例为apmReportTransactionCount.3.15.3.1.8.4.192.168.1.2.3232235788

        Note that some combinations of index values may result in an
        index that exceeds 128 sub-identifiers in length which exceeds
        the maximum for the SNMP protocol. Implementations should take
        care to avoid such combinations."
    INDEX { apmReportControlIndex, apmReportIndex,
            apmAppDirAppLocalIndex,
            apmAppDirResponsivenessType,
            protocolDirLocalIndex, apmReportServerAddress,
            apmNameClientID }
    ::= { apmReportTable 1 }
        
        Note that some combinations of index values may result in an
        index that exceeds 128 sub-identifiers in length which exceeds
        the maximum for the SNMP protocol. Implementations should take
        care to avoid such combinations."
    INDEX { apmReportControlIndex, apmReportIndex,
            apmAppDirAppLocalIndex,
            apmAppDirResponsivenessType,
            protocolDirLocalIndex, apmReportServerAddress,
            apmNameClientID }
    ::= { apmReportTable 1 }
        
ApmReportEntry ::= SEQUENCE {
    apmReportIndex                  Unsigned32,
    apmReportServerAddress          ProtocolDirNetworkAddress,
        
ApmReportEntry ::= SEQUENCE {
    apmReportIndex                  Unsigned32,
    apmReportServerAddress          ProtocolDirNetworkAddress,
        

apmReportTransactionCount Unsigned32, apmReportSuccessfulTransactions Unsigned32, apmReportResponsivenessMean Unsigned32, apmReportResponsivenessMin Unsigned32, apmReportResponsivenessMax Unsigned32, apmReportResponsivenessB1 Unsigned32, apmReportResponsivenessB2 Unsigned32, apmReportResponsivenessB3 Unsigned32, apmReportResponsivenessB4 Unsigned32, apmReportResponsivenessB5 Unsigned32, apmReportResponsivenessB6 Unsigned32, apmReportResponsivenessB7 Unsigned32 }

apmReportTransactionCount Unsigned32,apmReportSuccessfulTransactions Unsigned32,APMReportResponsesMean Unsigned32,APMReportResponsesMin Unsigned32,APMReportResponsesMax Unsigned32,APMReportResponseB1 Unsigned32,APMReportResponseB2 Unsigned32,APMReportResponseB3Unsigned32,apmreportresponsesB4 Unsigned32,apmreportresponsesB5 Unsigned32,apmreportresponsesB6 Unsigned32,apmreportresponsesB7 Unsigned32}

apmReportIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of apmReportControlReportNumber for the report to
        which this entry belongs."
    ::= { apmReportEntry 1 }
        
apmReportIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (1..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The value of apmReportControlReportNumber for the report to
        which this entry belongs."
    ::= { apmReportEntry 1 }
        

apmReportServerAddress OBJECT-TYPE SYNTAX ProtocolDirNetworkAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The network server address for this apmReportEntry.

apmReportServerAddress对象类型语法协议DirNetworkAddress MAX-ACCESS不可访问状态当前描述“此apmReportEntry的网络服务器地址。

This is represented as an octet string with specific semantics and length as identified by the protocolDirLocalIndex component of the index.

这表示为一个八位字符串,具有特定的语义和长度,由索引的ProtocolDirLocaliIndex组件标识。

Since this object is an index variable, it is encoded in the index according to the index encoding rules. For example, if the protocolDirLocalIndex indicates an encapsulation of ip, this object is encoded as a length octet of 4, followed by the 4 octets of the ip address, in network byte order. Care should be taken to avoid values of this object that, in conjunction with the other index variables, would result in an index longer than SNMP's maximum of 128 subidentifiers.

由于该对象是一个索引变量,因此根据索引编码规则在索引中对其进行编码。例如,如果protocolDirLocalIndex指示ip的封装,则此对象将被编码为长度为4的八位字节,后跟ip地址的4个八位字节,以网络字节顺序排列。应注意避免此对象的值与其他索引变量一起导致索引长于SNMP的最大128个子标识符。

        If the associated apmReportControlAggregationType is equal to
        applications(4) or clients(2), then this object will be a null
        string and will be encoded simply as a length octet of 0."
    ::= { apmReportEntry 2 }
        
        If the associated apmReportControlAggregationType is equal to
        applications(4) or clients(2), then this object will be a null
        string and will be encoded simply as a length octet of 0."
    ::= { apmReportEntry 2 }
        
apmReportTransactionCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of transactions aggregated into this record."
    ::= { apmReportEntry 3 }
        
apmReportTransactionCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of transactions aggregated into this record."
    ::= { apmReportEntry 3 }
        
apmReportSuccessfulTransactions OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of successful transactions aggregated into
        this record."
    ::= { apmReportEntry 4 }
        
apmReportSuccessfulTransactions OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of successful transactions aggregated into
        this record."
    ::= { apmReportEntry 4 }
        
apmReportResponsivenessMean OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The arithmetic mean of the responsiveness metrics for all
        successful transactions aggregated into this record."
    ::= { apmReportEntry 5 }
        
apmReportResponsivenessMean OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The arithmetic mean of the responsiveness metrics for all
        successful transactions aggregated into this record."
    ::= { apmReportEntry 5 }
        
apmReportResponsivenessMin OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The minimum of the responsiveness metrics for all
        successful transactions aggregated into this record."
    ::= { apmReportEntry 6 }
        
apmReportResponsivenessMin OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The minimum of the responsiveness metrics for all
        successful transactions aggregated into this record."
    ::= { apmReportEntry 6 }
        
apmReportResponsivenessMax OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The maximum of the responsiveness metrics for all
        successful transactions aggregated into this record."
    ::= { apmReportEntry 7 }
        
apmReportResponsivenessMax OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The maximum of the responsiveness metrics for all
        successful transactions aggregated into this record."
    ::= { apmReportEntry 7 }
        
-- Note that when updating a report entry, a transaction will not be
-- counted in more than 1 bucket in an entry. It will be counted in
-- the first bucket that matches, starting with Bucket 1 (B1). Note
-- that if a transaction matches 2 application types, it will update
        
-- Note that when updating a report entry, a transaction will not be
-- counted in more than 1 bucket in an entry. It will be counted in
-- the first bucket that matches, starting with Bucket 1 (B1). Note
-- that if a transaction matches 2 application types, it will update
        

-- one bucket in each of 2 entries in this table.

--此表中的两个条目各有一个bucket。

apmReportResponsivenessB1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness was less than boundary1 value for
        this application."
    ::= { apmReportEntry 8 }
        
apmReportResponsivenessB1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness was less than boundary1 value for
        this application."
    ::= { apmReportEntry 8 }
        
apmReportResponsivenessB2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Bucket 1 and was
        greater than or equal to the boundary1 value for this
        application and less than the boundary2 value for this
        application."
    ::= { apmReportEntry 9 }
        
apmReportResponsivenessB2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Bucket 1 and was
        greater than or equal to the boundary1 value for this
        application and less than the boundary2 value for this
        application."
    ::= { apmReportEntry 9 }
        
apmReportResponsivenessB3 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Bucket 1 or 2
        and as greater than or equal to the boundary2 value for this
        application and less than the boundary3 value for this
        application."
    ::= { apmReportEntry 10 }
        
apmReportResponsivenessB3 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Bucket 1 or 2
        and as greater than or equal to the boundary2 value for this
        application and less than the boundary3 value for this
        application."
    ::= { apmReportEntry 10 }
        
apmReportResponsivenessB4 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Buckets 1
        through 3 and was greater than or equal to the boundary3 value
        for this application and less than the boundary4 value for
        this application."
    ::= { apmReportEntry 11 }
        
apmReportResponsivenessB4 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Buckets 1
        through 3 and was greater than or equal to the boundary3 value
        for this application and less than the boundary4 value for
        this application."
    ::= { apmReportEntry 11 }
        
apmReportResponsivenessB5 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Buckets 1
        through 4 and was greater than or equal to the boundary4 value
        for this application and less than the boundary5 value for
        this application."
    ::= { apmReportEntry 12 }
        
apmReportResponsivenessB5 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Buckets 1
        through 4 and was greater than or equal to the boundary4 value
        for this application and less than the boundary5 value for
        this application."
    ::= { apmReportEntry 12 }
        
apmReportResponsivenessB6 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Buckets 1
        through 5 and was greater than or equal to the
        boundary5 value for this application and less than the
        boundary6 value for this application."
    ::= { apmReportEntry 13 }
        
apmReportResponsivenessB6 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Buckets 1
        through 5 and was greater than or equal to the
        boundary5 value for this application and less than the
        boundary6 value for this application."
    ::= { apmReportEntry 13 }
        
apmReportResponsivenessB7 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Buckets 1
        through 6 and was greater than or equal to the boundary6 value
        for this application."
    ::= { apmReportEntry 14 }
        
apmReportResponsivenessB7 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of successful transactions aggregated into this
        record whose responsiveness did not fall into Buckets 1
        through 6 and was greater than or equal to the boundary6 value
        for this application."
    ::= { apmReportEntry 14 }
        

-- APM Transaction Table

--APM事务表

apmTransactionTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ApmTransactionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains transactions that are currently running
        or have recently finished."
    ::= { apmMibObjects 11 }
        
apmTransactionTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ApmTransactionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains transactions that are currently running
        or have recently finished."
    ::= { apmMibObjects 11 }
        

apmTransactionEntry OBJECT-TYPE SYNTAX ApmTransactionEntry

apmTransactionEntry对象类型语法apmTransactionEntry

MAX-ACCESS not-accessible STATUS current DESCRIPTION "A conceptual row in the apmTransactionTable.

MAX-ACCESS not ACCESS STATUS current DESCRIPTION“apmTransactionTable中的概念行。

The apmAppDirAppLocalIndex value in the index identifies the application of the transaction represented by this entry. The apmAppDirResponsivenessType value in the index identifies the type of responsiveness metric reported by this entry and uniquely identifies this entry when more than one responsiveness metric is measured for a flow. Entries will only exist in this table for those combinations of AppLocalIndex and ResponsivenessType that are configured 'on(1)'. The protocolDirLocalIndex value in the index identifies the network layer protocol of the apmTransactionServerAddress. The apmTransactionServerAddress value in the index identifies the network layer address of the server in the transaction represented by this entry. The apmNameClientID value in the index identifies the client in the transaction represented by this entry.

索引中的apmappirappLocaliIndex值标识此条目表示的事务的应用程序。索引中的APMAPPDInResponsivenessType值标识此条目报告的响应性度量的类型,并在为流度量多个响应性度量时唯一标识此条目。对于配置为“on(1)”的AppLocalIndex和ResponsenessType的组合,此表中只存在条目。索引中的ProtocolDirLocaliIndex值标识apmTransactionServerAddress的网络层协议。索引中的apmTransactionServerAddress值标识此条目表示的事务中服务器的网络层地址。索引中的apmNameClientID值标识此条目表示的事务中的客户端。

An example of the indexing of this entry is apmTransactionCount.3.1.8.4.192.168.1.2.3232235788.2987

此条目的索引示例为apmTransactionCount.3.1.8.4.192.168.1.2.3232235788.2987

        Note that some combinations of index values may result in an
        index that exceeds 128 sub-identifiers in length which exceeds
        the maximum for the SNMP protocol. Implementations should take
        care to avoid such combinations."
    INDEX { apmAppDirAppLocalIndex,
            apmAppDirResponsivenessType,
            protocolDirLocalIndex, apmTransactionServerAddress,
            apmNameClientID, apmTransactionID }
    ::= { apmTransactionTable 1 }
        
        Note that some combinations of index values may result in an
        index that exceeds 128 sub-identifiers in length which exceeds
        the maximum for the SNMP protocol. Implementations should take
        care to avoid such combinations."
    INDEX { apmAppDirAppLocalIndex,
            apmAppDirResponsivenessType,
            protocolDirLocalIndex, apmTransactionServerAddress,
            apmNameClientID, apmTransactionID }
    ::= { apmTransactionTable 1 }
        
ApmTransactionEntry ::= SEQUENCE {
    apmTransactionServerAddress      ProtocolDirNetworkAddress,
    apmTransactionID                 Unsigned32,
    apmTransactionResponsiveness     Unsigned32,
    apmTransactionAge                TimeInterval,
    apmTransactionSuccess            TruthValue
}
        
ApmTransactionEntry ::= SEQUENCE {
    apmTransactionServerAddress      ProtocolDirNetworkAddress,
    apmTransactionID                 Unsigned32,
    apmTransactionResponsiveness     Unsigned32,
    apmTransactionAge                TimeInterval,
    apmTransactionSuccess            TruthValue
}
        

apmTransactionServerAddress OBJECT-TYPE SYNTAX ProtocolDirNetworkAddress (SIZE (1..255)) MAX-ACCESS not-accessible STATUS current DESCRIPTION

apmTransactionServerAddress对象类型语法ProtocolDirNetworkAddress(大小(1..255))MAX-ACCESS不可访问状态当前说明

"The network server address for this apmTransactionEntry.

“此apmTransactionEntry的网络服务器地址。

This is represented as an octet string with specific semantics and length as identified by the protocolDirLocalIndex component of the index. This object may not be the zero length string.

这表示为一个八位字符串,具有特定的语义和长度,由索引的ProtocolDirLocaliIndex组件标识。此对象可能不是长度为零的字符串。

        For example, if the protocolDirLocalIndex indicates an
        encapsulation of ip, this object is encoded as a length octet
        of 4, followed by the 4 octets of the ip address, in network
        byte order. Care should be taken to avoid values of this
        object that, in conjunction with the other index variables,
        would result in an index longer than SNMP's maximum of 128
        subidentifiers."
    ::= { apmTransactionEntry 1 }
        
        For example, if the protocolDirLocalIndex indicates an
        encapsulation of ip, this object is encoded as a length octet
        of 4, followed by the 4 octets of the ip address, in network
        byte order. Care should be taken to avoid values of this
        object that, in conjunction with the other index variables,
        would result in an index longer than SNMP's maximum of 128
        subidentifiers."
    ::= { apmTransactionEntry 1 }
        
apmTransactionID OBJECT-TYPE
    SYNTAX      Unsigned32 (0..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A unique value for this transaction amongst other
        transactions sharing the same application layer protocol and
        server and client addresses. Implementations may choose to use
        the value of the client's source port, when possible."
    ::= { apmTransactionEntry 2 }
        
apmTransactionID OBJECT-TYPE
    SYNTAX      Unsigned32 (0..4294967295)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A unique value for this transaction amongst other
        transactions sharing the same application layer protocol and
        server and client addresses. Implementations may choose to use
        the value of the client's source port, when possible."
    ::= { apmTransactionEntry 2 }
        

apmTransactionResponsiveness OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The current value of the responsiveness metric for this transaction. If this transaction has completed, the final value of the metric will be available.

apmtransactionresponsibility对象类型语法Unsigned32 MAX-ACCESS只读状态当前描述“此事务的响应度量的当前值。如果此事务已完成,则度量的最终值将可用。

        Note that this value may change over the lifetime of the
        transaction and it is the final value of this metric that is
        recorded as the responsiveness of the transaction for use in
        other APM MIB functions."
    ::= { apmTransactionEntry 3 }
        
        Note that this value may change over the lifetime of the
        transaction and it is the final value of this metric that is
        recorded as the responsiveness of the transaction for use in
        other APM MIB functions."
    ::= { apmTransactionEntry 3 }
        

apmTransactionAge OBJECT-TYPE SYNTAX TimeInterval MAX-ACCESS read-only STATUS current DESCRIPTION "If this transaction is still executing, this value shall be

apmtransaction对象类型语法TimeInterval MAX-ACCESS只读状态current DESCRIPTION“如果此事务仍在执行,则此值应为

        the length of time since it was started. If it has completed,
        this value shall be the length of time it was executing."
    ::= { apmTransactionEntry 4 }
        
        the length of time since it was started. If it has completed,
        this value shall be the length of time it was executing."
    ::= { apmTransactionEntry 4 }
        
apmTransactionSuccess OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The success of this transaction up to this time. Once a
        transaction has been marked as failed, it cannot move back
        into the successful state."
    ::= { apmTransactionEntry 5 }
        
apmTransactionSuccess OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The success of this transaction up to this time. Once a
        transaction has been marked as failed, it cannot move back
        into the successful state."
    ::= { apmTransactionEntry 5 }
        

apmTransactionsRequestedHistorySize OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "The maximum number of completed transactions desired to be retained in the apmTransactionTable. If the agent doesn't have enough resources to retain this many, it will retain as many as possible. Regardless of this value, the agent must attempt to keep records for all current transactions it is monitoring.

apmTransactionsRequestedHistorySize对象类型语法Unsigned32 MAX-ACCESS读写状态当前说明“希望保留在apmTransactionTable中的最大已完成事务数。如果代理没有足够的资源来保留这么多,它将保留尽可能多的资源。无论此值如何,代理都必须尝试保留其监视的所有当前事务的记录。

        The value of this object must persist across reboots."
    ::= { apmMibObjects 12 }
        
        The value of this object must persist across reboots."
    ::= { apmMibObjects 12 }
        
-- The APM Exception table
-- The APM Exception Table creates filters so that a management
-- station can get immediate notification of a transaction that has
-- had poor availability or responsiveness.
--
-- This function is particularly helpful in unaggregated situations
-- where the numbers of agents is relatively high and the transaction
-- rate per agent is relatively low (such as agents for desktops or
-- dedicated to small workgroups). Polling agents in such an
-- environment would either cause scalability problems (high rate) or
-- lead to long notification delays (low rate).
        
-- The APM Exception table
-- The APM Exception Table creates filters so that a management
-- station can get immediate notification of a transaction that has
-- had poor availability or responsiveness.
--
-- This function is particularly helpful in unaggregated situations
-- where the numbers of agents is relatively high and the transaction
-- rate per agent is relatively low (such as agents for desktops or
-- dedicated to small workgroups). Polling agents in such an
-- environment would either cause scalability problems (high rate) or
-- lead to long notification delays (low rate).
        

apmExceptionTable OBJECT-TYPE SYNTAX SEQUENCE OF ApmExceptionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table creates filters so that a management station can get immediate notification of a transaction that has had poor

APMEExceptionTable APMEExceptionEntry MAX-ACCESS的对象类型语法序列不可访问状态当前描述“此表创建筛选器,以便管理站可以立即收到已发生错误的事务的通知

availability or responsiveness.

可用性或响应性。

Each apmExceptionEntry is associated with a particular type of transaction and is applied to all transactions of that type. Multiple apmExceptionEntries may be associated with a particular type of transaction. A transaction type is identified by the value of the apmAppDirAppLocalIndex component of the index.

每个APMEExceptionEntry都与特定类型的事务关联,并应用于该类型的所有事务。多个APMEExceptionEntries可能与特定类型的事务关联。事务类型由索引的APMAPPDIRAppLocaliIndex组件的值标识。

        Because the quality of a transaction is not known until it is
        completed, these thresholds are only applied after the
        transaction has completed."
    ::= { apmMibObjects 13 }
        
        Because the quality of a transaction is not known until it is
        completed, these thresholds are only applied after the
        transaction has completed."
    ::= { apmMibObjects 13 }
        

apmExceptionEntry OBJECT-TYPE SYNTAX ApmExceptionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A conceptual row in the apmExceptionTable.

APMEExceptionEntry对象类型语法APMEExceptionEntry MAX-ACCESS不可访问状态当前描述“APMEExceptionTable中的概念行。

The apmAppDirAppLocalIndex value in the index identifies the application this entry will monitor. The apmAppDirResponsivenessType value in the index identifies the type of responsiveness metric this entry will monitor."

索引中的APMAPPDIRAppLocaliIndex值标识此条目将监视的应用程序。索引中的APMAPPDInResponsivenessType值标识此条目将监视的响应性度量的类型。”

    INDEX { apmAppDirAppLocalIndex,
            apmAppDirResponsivenessType, apmExceptionIndex }
    ::= { apmExceptionTable 1 }
        
    INDEX { apmAppDirAppLocalIndex,
            apmAppDirResponsivenessType, apmExceptionIndex }
    ::= { apmExceptionTable 1 }
        
ApmExceptionEntry ::= SEQUENCE {
    apmExceptionIndex                       Unsigned32,
    apmExceptionResponsivenessComparison    INTEGER,
    apmExceptionResponsivenessThreshold     Unsigned32,
    apmExceptionUnsuccessfulException       INTEGER,
    apmExceptionResponsivenessEvents        Counter32,
    apmExceptionUnsuccessfulEvents          Counter32,
    apmExceptionOwner                       OwnerString,
    apmExceptionStorageType                 StorageType,
    apmExceptionStatus                      RowStatus
}
        
ApmExceptionEntry ::= SEQUENCE {
    apmExceptionIndex                       Unsigned32,
    apmExceptionResponsivenessComparison    INTEGER,
    apmExceptionResponsivenessThreshold     Unsigned32,
    apmExceptionUnsuccessfulException       INTEGER,
    apmExceptionResponsivenessEvents        Counter32,
    apmExceptionUnsuccessfulEvents          Counter32,
    apmExceptionOwner                       OwnerString,
    apmExceptionStorageType                 StorageType,
    apmExceptionStatus                      RowStatus
}
        

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

APMEExceptionIndex对象类型语法Unsigned32(1..65535)MAX-ACCESS不可访问状态当前说明

        "An index that uniquely identifies an entry in the
        apmExceptionTable amongst other entries with equivalent index
        values for apmAppDirAppLocalIndex and
        apmAppDirResponsivenessType. Each such entry sets up
        thresholds for a particular measurement of a particular
        application."
    ::= { apmExceptionEntry 1 }
        
        "An index that uniquely identifies an entry in the
        apmExceptionTable amongst other entries with equivalent index
        values for apmAppDirAppLocalIndex and
        apmAppDirResponsivenessType. Each such entry sets up
        thresholds for a particular measurement of a particular
        application."
    ::= { apmExceptionEntry 1 }
        
apmExceptionResponsivenessComparison OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(1),
                    greater(2),
                    less(3)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "If this value is greater(2) or less(3), the associated
        apmExceptionResponsivenessThreshold will be compared to this
        value and an exception will be created if the responsiveness
        is greater than the threshold (greater(2)) or less than the
        threshold (less(3))."
    ::= { apmExceptionEntry 2 }
        
apmExceptionResponsivenessComparison OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(1),
                    greater(2),
                    less(3)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "If this value is greater(2) or less(3), the associated
        apmExceptionResponsivenessThreshold will be compared to this
        value and an exception will be created if the responsiveness
        is greater than the threshold (greater(2)) or less than the
        threshold (less(3))."
    ::= { apmExceptionEntry 2 }
        
apmExceptionResponsivenessThreshold OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The threshold that responsiveness metrics are compared to."
    ::= { apmExceptionEntry 3 }
        
apmExceptionResponsivenessThreshold OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The threshold that responsiveness metrics are compared to."
    ::= { apmExceptionEntry 3 }
        
apmExceptionUnsuccessfulException OBJECT-TYPE
    SYNTAX      INTEGER {
                    off(1),
                    on(2)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "If this value is on(2), an exception will be created if a
        transaction of the associated type is unsuccessful."
    ::= { apmExceptionEntry 4 }
        
apmExceptionUnsuccessfulException OBJECT-TYPE
    SYNTAX      INTEGER {
                    off(1),
                    on(2)
                }
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "If this value is on(2), an exception will be created if a
        transaction of the associated type is unsuccessful."
    ::= { apmExceptionEntry 4 }
        

apmExceptionResponsivenessEvents OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current

APMEException响应事件对象类型语法计数器32 MAX-ACCESS只读状态当前

    DESCRIPTION
        "The total number of responsiveness exceptions generated. This
        counter will be incremented even if no notification was sent
        due to notifications not being configured or due to exceeding
        the apmNotificationMaxRate value."
    ::= { apmExceptionEntry 5 }
        
    DESCRIPTION
        "The total number of responsiveness exceptions generated. This
        counter will be incremented even if no notification was sent
        due to notifications not being configured or due to exceeding
        the apmNotificationMaxRate value."
    ::= { apmExceptionEntry 5 }
        
apmExceptionUnsuccessfulEvents OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of unsuccessful exceptions generated. This
        counter will be incremented even if no notification was sent
        due to notifications not being configured or due to exceeding
        the apmNotificationMaxRate value."
    ::= { apmExceptionEntry 6 }
        
apmExceptionUnsuccessfulEvents OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of unsuccessful exceptions generated. This
        counter will be incremented even if no notification was sent
        due to notifications not being configured or due to exceeding
        the apmNotificationMaxRate value."
    ::= { apmExceptionEntry 6 }
        
apmExceptionOwner OBJECT-TYPE
    SYNTAX      OwnerString
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The entity that configured this entry and is
        therefore using the resources assigned to it."
    ::= { apmExceptionEntry 7 }
        
apmExceptionOwner OBJECT-TYPE
    SYNTAX      OwnerString
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The entity that configured this entry and is
        therefore using the resources assigned to it."
    ::= { apmExceptionEntry 7 }
        
apmExceptionStorageType OBJECT-TYPE
    SYNTAX     StorageType
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
        "The storage type of this apmReportControlEntry. If the value
        of this object is 'permanent', no objects in this row need to
        be writable."
    ::= { apmExceptionEntry 8 }
        
apmExceptionStorageType OBJECT-TYPE
    SYNTAX     StorageType
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
        "The storage type of this apmReportControlEntry. If the value
        of this object is 'permanent', no objects in this row need to
        be writable."
    ::= { apmExceptionEntry 8 }
        
apmExceptionStatus OBJECT-TYPE
    SYNTAX     RowStatus
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
        "The status of this apmExceptionEntry. The only objects in the
        entry that may be modified while the entry is in the active
        state are apmExceptionResponsivenessComparison,
        apmExceptionResponsivenessThreshold and
        apmExceptionUnsuccessfulException."
    ::= { apmExceptionEntry 9 }
        
apmExceptionStatus OBJECT-TYPE
    SYNTAX     RowStatus
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
        "The status of this apmExceptionEntry. The only objects in the
        entry that may be modified while the entry is in the active
        state are apmExceptionResponsivenessComparison,
        apmExceptionResponsivenessThreshold and
        apmExceptionUnsuccessfulException."
    ::= { apmExceptionEntry 9 }
        

apmThroughputExceptionMinTime OBJECT-TYPE SYNTAX Unsigned32 UNITS "seconds" MAX-ACCESS read-write STATUS current DESCRIPTION "Because the responsiveness for throughput-oriented transactions is divided by the elapsed time, it can be very sensitive to short-term performance variations for transactions that take a short period of time. For example, when downloading a very short file, a single dropped packet could double or triple the total response time.

apmthroughputExceptionTime对象类型语法无符号32单位“秒”最大访问读写状态当前说明“由于以吞吐量为导向的事务的响应性除以所用时间,因此对于耗时较短的事务,它可能对短期性能变化非常敏感。例如,当下载一个非常短的文件时,单个丢弃的数据包可能会使总响应时间增加一倍或三倍。

Further, throughput is usually examined for applications that transfer a lot of data, and when doing so it is helpful to conceptualize transaction costs that are proportional to the amount of data separately from those costs that are relatively fixed (i.e., independent of the amount of data). For very short transactions, these fixed transaction costs (handshake, setup time, authentication, round-trip time) may dominate the total response time for the transaction, resulting in throughput measurements that aren't really proportional to the network's, server's and client's combined data throughput capability.

此外,通常对传输大量数据的应用程序的吞吐量进行检查,这样做有助于将与数据量成比例的交易成本与相对固定(即独立于数据量)的交易成本概念化。对于非常短的事务,这些固定的事务成本(握手、设置时间、身份验证、往返时间)可能会支配事务的总响应时间,从而导致吞吐量测量与网络、服务器和客户端的综合数据吞吐量能力不成正比。

This object controls the minimum number of seconds that an throughput-based transaction must exceed before an exception can be generated for it. If this object is set to zero, then all throughput-based transactions are candidates for exceptions.

此对象控制基于吞吐量的事务在生成异常之前必须超过的最小秒数。如果此对象设置为零,则所有基于吞吐量的事务都可能出现异常。

        The value of this object must persist across reboots."
    DEFVAL     { 10 }
    ::= { apmMibObjects 14 }
        
        The value of this object must persist across reboots."
    DEFVAL     { 10 }
    ::= { apmMibObjects 14 }
        

apmNotificationMaxRate OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "The maximum number of notifications that can be generated from this agent by the apmExceptionTable in any 60 second period.

apmNotificationMaxRate对象类型语法Unsigned32 MAX-ACCESS读写状态当前描述“APMEExceptionTable在任何60秒期间可从此代理生成的最大通知数。

        The value of this object must persist across reboots."
    DEFVAL { 1 }
    ::= { apmMibObjects 15 }
        
        The value of this object must persist across reboots."
    DEFVAL { 1 }
    ::= { apmMibObjects 15 }
        

-- APM Notifications

--APM通知

apmNotifications OBJECT IDENTIFIER ::= { apm 0 }
        
apmNotifications OBJECT IDENTIFIER ::= { apm 0 }
        

apmTransactionResponsivenessAlarm NOTIFICATION-TYPE OBJECTS { apmExceptionResponsivenessThreshold, apmTransactionResponsiveness } STATUS current DESCRIPTION "Notification sent when a transaction exceeds a threshold defined in the apmException table. The index of the included apmExceptionResponsivenessThreshold object identifies the apmExceptionEntry that specified the threshold. The apmTransactionResponsiveness variable identifies the actual transaction and its responsiveness.

ApmTransactionResponsiveAlarm NOTIFICATION-TYPE对象{ApmExceptionResponsiveThreshold,ApmTransactionResponsivesThreshold}状态当前描述“当事务超过APMEException表中定义的阈值时发送的通知。包含的ApmeExceptionResponsivesThreshold对象的索引标识指定阈值的ApmeExceptionEntry。apmtransactionresponsibility变量标识实际事务及其响应性。

        Agent implementors are urged to include additional data
        objects in the alarm that may explain the reason for the
        alarm. It is helpful to include such data in the alarm because
        it describes the situation at the time the alarm was
        generated, where polls after the fact may not provide
        meaningful information. Examples of such information are CPU
        load, memory utilization, network utilization, and transaction
        statistics."
    ::= { apmNotifications 1 }
        
        Agent implementors are urged to include additional data
        objects in the alarm that may explain the reason for the
        alarm. It is helpful to include such data in the alarm because
        it describes the situation at the time the alarm was
        generated, where polls after the fact may not provide
        meaningful information. Examples of such information are CPU
        load, memory utilization, network utilization, and transaction
        statistics."
    ::= { apmNotifications 1 }
        

apmTransactionUnsuccessfulAlarm NOTIFICATION-TYPE OBJECTS { apmExceptionResponsivenessThreshold } STATUS current DESCRIPTION "Notification sent when a transaction is unsuccessful. The index of the included apmExceptionResponsivenessThreshold object identifies both the type of the transaction that caused this notification as well as the apmExceptionEntry that specified the threshold.

apmTransactionUnsuccessfulAlarm通知类型对象{APMEExceptionResponsesThreshold}状态当前描述“交易失败时发送的通知。包含的ApmeExceptionResponsivesThreshold对象的索引标识导致此通知的事务类型以及指定阈值的ApmeExceptionEntry。

        Agent implementors are urged to include additional data
        objects in the alarm that may explain the reason for the
        alarm. It is helpful to include such data in the alarm because
        it describes the situation at the time the alarm was
        generated, where polls after the fact may not provide
        meaningful information. Examples of such information are CPU
        load, memory utilization, network utilization, and transaction
        statistics."
    ::= { apmNotifications 2 }
        
        Agent implementors are urged to include additional data
        objects in the alarm that may explain the reason for the
        alarm. It is helpful to include such data in the alarm because
        it describes the situation at the time the alarm was
        generated, where polls after the fact may not provide
        meaningful information. Examples of such information are CPU
        load, memory utilization, network utilization, and transaction
        statistics."
    ::= { apmNotifications 2 }
        

apmCompliance MODULE-COMPLIANCE STATUS current

APM合规模块-合规状态当前

DESCRIPTION "Describes the requirements for conformance to the APM MIB" MODULE -- this module MANDATORY-GROUPS { apmAppDirGroup, apmReportGroup }

DESCRIPTION“描述与APM MIB一致性的要求”模块——此模块为强制组{apmAppDirGroup,APMREPORTGOUP}

GROUP apmUserDefinedApplicationsGroup DESCRIPTION "Implementation of the apmUserDefinedApplicationsGroup is optional."

组apmUserDefinedApplicationsGroup DESCRIPTION“apmUserDefinedApplicationsGroup的实现是可选的。”

GROUP apmTransactionGroup DESCRIPTION "Implementation of the apmTransactionGroup is optional."

组apmTransactionGroup DESCRIPTION“apmTransactionGroup的实现是可选的。”

GROUP apmExceptionGroup DESCRIPTION "Implementation of the apmExceptionGroup is optional."

GROUP APMEExceptionGroup DESCRIPTION“APMEExceptionGroup的实现是可选的。”

GROUP apmNotificationGroup DESCRIPTION "Implementation of the apmNotificationGroup is optional."

组apmNotificationGroup DESCRIPTION“apmNotificationGroup的实现是可选的。”

    ::= { apmCompliances 1 }
        
    ::= { apmCompliances 1 }
        
apmAppDirGroup OBJECT-GROUP
    OBJECTS { apmAppDirConfig,
              apmAppDirResponsivenessBoundary1,
              apmAppDirResponsivenessBoundary2,
              apmAppDirResponsivenessBoundary3,
              apmAppDirResponsivenessBoundary4,
              apmAppDirResponsivenessBoundary5,
              apmAppDirResponsivenessBoundary6,
              apmBucketBoundaryLastChange, apmAppDirID,
              apmNameMachineName, apmNameUserName }
    STATUS  current
    DESCRIPTION
        "The APM MIB directory of applications and application verbs."
    ::=  { apmGroups 1 }
        
apmAppDirGroup OBJECT-GROUP
    OBJECTS { apmAppDirConfig,
              apmAppDirResponsivenessBoundary1,
              apmAppDirResponsivenessBoundary2,
              apmAppDirResponsivenessBoundary3,
              apmAppDirResponsivenessBoundary4,
              apmAppDirResponsivenessBoundary5,
              apmAppDirResponsivenessBoundary6,
              apmBucketBoundaryLastChange, apmAppDirID,
              apmNameMachineName, apmNameUserName }
    STATUS  current
    DESCRIPTION
        "The APM MIB directory of applications and application verbs."
    ::=  { apmGroups 1 }
        

apmUserDefinedApplicationsGroup OBJECT-GROUP OBJECTS { apmHttpFilterAppLocalIndex, apmHttpFilterServerProtocol, apmHttpFilterServerAddress, apmHttpFilterURLPath, apmHttpFilterMatchType, apmHttpFilterOwner, apmHttpFilterStorageType, apmHttpFilterRowStatus, apmHttpIgnoreUnregisteredURLs, apmHttp4xxIsFailure, apmUserDefinedAppParentIndex,

ApmUserDefinedApplication组对象组对象{apmHttpFilterAppLocalIndex,apmHttpFilterServerProtocol,apmHttpFilterServerAddress,apmHttpFilterURLPath,apmHttpFilterMatchType,ApmHttpFilterRowner,apmHttpFilterStorageType,apmHttpFilterRowStatus,apmHttpIgnoreUnregisteredURLs,ApmHttpXXisFailure,ApmUserDefinedAppRentIndex,

                  apmUserDefinedAppApplication }
    STATUS  current
    DESCRIPTION
        "Objects used for creating and managing user-defined
        applications."
    ::= { apmGroups 2 }
        
                  apmUserDefinedAppApplication }
    STATUS  current
    DESCRIPTION
        "Objects used for creating and managing user-defined
        applications."
    ::= { apmGroups 2 }
        
apmReportGroup OBJECT-GROUP
    OBJECTS { apmReportControlDataSource,
              apmReportControlAggregationType,
              apmReportControlInterval,
              apmReportControlRequestedSize,
              apmReportControlGrantedSize,
              apmReportControlRequestedReports,
              apmReportControlGrantedReports,
              apmReportControlStartTime,
              apmReportControlReportNumber,
              apmReportControlDeniedInserts,
              apmReportControlDroppedFrames,
              apmReportControlOwner,
              apmReportControlStorageType,
              apmReportControlStatus,
              apmReportTransactionCount,
              apmReportSuccessfulTransactions,
              apmReportResponsivenessMean,
              apmReportResponsivenessMin,
              apmReportResponsivenessMax,
              apmReportResponsivenessB1,
              apmReportResponsivenessB2,
              apmReportResponsivenessB3,
              apmReportResponsivenessB4,
              apmReportResponsivenessB5,
              apmReportResponsivenessB6,
              apmReportResponsivenessB7 }
    STATUS  current
    DESCRIPTION
        "The apm report group controls the creation and retrieval of
        reports that aggregate application performance."
    ::=  { apmGroups 3 }
        
apmReportGroup OBJECT-GROUP
    OBJECTS { apmReportControlDataSource,
              apmReportControlAggregationType,
              apmReportControlInterval,
              apmReportControlRequestedSize,
              apmReportControlGrantedSize,
              apmReportControlRequestedReports,
              apmReportControlGrantedReports,
              apmReportControlStartTime,
              apmReportControlReportNumber,
              apmReportControlDeniedInserts,
              apmReportControlDroppedFrames,
              apmReportControlOwner,
              apmReportControlStorageType,
              apmReportControlStatus,
              apmReportTransactionCount,
              apmReportSuccessfulTransactions,
              apmReportResponsivenessMean,
              apmReportResponsivenessMin,
              apmReportResponsivenessMax,
              apmReportResponsivenessB1,
              apmReportResponsivenessB2,
              apmReportResponsivenessB3,
              apmReportResponsivenessB4,
              apmReportResponsivenessB5,
              apmReportResponsivenessB6,
              apmReportResponsivenessB7 }
    STATUS  current
    DESCRIPTION
        "The apm report group controls the creation and retrieval of
        reports that aggregate application performance."
    ::=  { apmGroups 3 }
        

apmTransactionGroup OBJECT-GROUP OBJECTS { apmTransactionResponsiveness, apmTransactionAge, apmTransactionSuccess, apmTransactionsRequestedHistorySize } STATUS current DESCRIPTION "The apm transaction group contains statistics for individual transactions."

apmTransactionGroup OBJECT-GROUP OBJECTS{apmtransactionresponsibility,apmTransactionAge,apmTransactionSuccess,apmtransactionsrequestedhhistorysize}状态当前描述“apm事务组包含单个事务的统计信息。”

    ::=  { apmGroups 4 }
        
    ::=  { apmGroups 4 }
        
apmExceptionGroup OBJECT-GROUP
    OBJECTS { apmExceptionResponsivenessComparison,
              apmExceptionResponsivenessThreshold,
              apmExceptionUnsuccessfulException,
              apmExceptionResponsivenessEvents,
              apmExceptionUnsuccessfulEvents,
              apmExceptionOwner, apmExceptionStorageType,
              apmExceptionStatus, apmThroughputExceptionMinTime,
              apmNotificationMaxRate }
    STATUS  current
    DESCRIPTION
        "The apm exception group causes notifications to be sent
        whenever transactions are detected that had poor availability
        or responsiveness."
    ::=  { apmGroups 5 }
        
apmExceptionGroup OBJECT-GROUP
    OBJECTS { apmExceptionResponsivenessComparison,
              apmExceptionResponsivenessThreshold,
              apmExceptionUnsuccessfulException,
              apmExceptionResponsivenessEvents,
              apmExceptionUnsuccessfulEvents,
              apmExceptionOwner, apmExceptionStorageType,
              apmExceptionStatus, apmThroughputExceptionMinTime,
              apmNotificationMaxRate }
    STATUS  current
    DESCRIPTION
        "The apm exception group causes notifications to be sent
        whenever transactions are detected that had poor availability
        or responsiveness."
    ::=  { apmGroups 5 }
        
apmNotificationGroup NOTIFICATION-GROUP
    NOTIFICATIONS { apmTransactionResponsivenessAlarm,
                    apmTransactionUnsuccessfulAlarm }
    STATUS        current
    DESCRIPTION
        "Notifications sent by an APM MIB agent."
    ::= { apmGroups 6 }
        
apmNotificationGroup NOTIFICATION-GROUP
    NOTIFICATIONS { apmTransactionResponsivenessAlarm,
                    apmTransactionUnsuccessfulAlarm }
    STATUS        current
    DESCRIPTION
        "Notifications sent by an APM MIB agent."
    ::= { apmGroups 6 }
        

END

终止

4. Security Considerations
4. 安全考虑

There are a number of management objects defined in this MIB module with a MAX-ACCESS clause of read-write and/or read-create. Such objects may be considered sensitive or vulnerable in some network environments. The support for SET operations in a non-secure environment without proper protection can have a negative effect on network operations.

此MIB模块中定义了许多管理对象,其MAX-ACCESS子句为read-write和/或read-create。在某些网络环境中,此类对象可能被视为敏感或易受攻击。在没有适当保护的非安全环境中支持SET操作可能会对网络操作产生负面影响。

Specifically, most of the read-write and read-create objects in this MIB module may be used to configure an agent to reveal network addresses, application usage information and conversation statistics that may be considered sensitive in some environments.

具体而言,此MIB模块中的大多数读写和读创建对象可用于配置代理,以显示在某些环境中可能被视为敏感的网络地址、应用程序使用信息和会话统计信息。

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

在某些网络环境中,此MIB模块中的某些可读对象(即具有MAX-ACCESS而非not ACCESS的对象)可能被视为敏感或易受攻击。因此,在通过SNMP通过网络发送这些对象时,控制甚至获取和/或通知对这些对象的访问,甚至可能加密这些对象的值,这一点非常重要。

Specifically, this MIB contains network addresses, machines names, user names, application usage information, and conversation statistics. Data of this nature should be considered sensitive and the privacy of the users from whom it was gathered protected. Administrators should restrict read access to this data to specifically authorized individuals or agents that recognize the privacy implications of its release. In situations where read access to this data cannot be restricted, it should not be gathered.

具体来说,此MIB包含网络地址、计算机名称、用户名、应用程序使用信息和会话统计信息。这种性质的数据应被视为敏感数据,并应保护从中收集数据的用户的隐私。管理员应将此数据的读取权限限制为特定授权的个人或代理,这些个人或代理可以识别数据发布的隐私影响。在无法限制对此数据的读取访问的情况下,不应收集该数据。

Systems that implement the objects in this MIB module have the capability of measuring the time taken to execute transactions. Depending on the transaction type, some or all of this transaction time may be associated with the time taken to perform security calculations. Such data may help an attacker to use timing attacks to extract secrets from the systems involved in the transactions. See [10] for more information.

实现此MIB模块中对象的系统能够测量执行事务所需的时间。根据事务类型,此事务时间的部分或全部可能与执行安全性计算所需的时间相关联。此类数据可能有助于攻击者利用定时攻击从交易中涉及的系统中提取机密。有关更多信息,请参见[10]。

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

SNMPv3之前的SNMP版本未包含足够的安全性。即使网络本身是安全的(例如通过使用IPSec),即使如此,也无法控制安全网络上的谁可以访问和获取/设置(读取/更改/创建/删除)此MIB模块中的对象。

It is RECOMMENDED that implementers consider the security features as provided by the SNMPv3 framework (see [8], section 8), including full support for the SNMPv3 cryptographic mechanisms (for authentication and privacy).

建议实施者考虑SNMPv3框架提供的安全特性(见[ 8 ],第8节),包括对SNMPv3加密机制的完全支持(用于身份验证和隐私)。

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

此外,不建议部署SNMPv3之前的SNMP版本。相反,建议部署SNMPv3并启用加密安全性。然后,客户/运营商应负责确保授予访问此MIB模块实例权限的SNMP实体已正确配置为仅授予那些拥有确实获取或设置(更改/创建/删除)对象的合法权限的主体(用户)访问对象。

5. References
5. 工具书类
5.1. Normative References
5.1. 规范性引用文件

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

[1] McCloghrie,K.,Perkins,D.和J.Schoenwaeld,“管理信息的结构版本2(SMIv2)”,STD 58,RFC 2578,1999年4月。

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

[2] McCloghrie,K.,Perkins,D.和J.Schoenwaeld,“SMIv2的文本约定”,STD 58,RFC 2579,1999年4月。

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

[3] McCloghrie,K.,Perkins,D.和J.Schoenwaeld,“SMIv2的一致性声明”,STD 58,RFC 25801999年4月。

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

[4] McCloghrie,K.和F.Kastenholz,“接口组MIB”,RFC 28632000年6月。

[5] Waldbusser, S., "Remote Network Monitoring Management Information Base Version 2 using SMIv2", RFC 2021, January 1997.

[5] Waldbusser,S.,“使用SMIv2的远程网络监控管理信息库版本2”,RFC 2021,1997年1月。

[6] Bierman, A., Bucci, C. and R. Iddon, "Remote Network Monitoring MIB Protocol Identifiers", RFC 2895, August 2000.

[6] Bierman,A.,Bucci,C.和R.Iddon,“远程网络监控MIB协议标识符”,RFC 28952000年8月。

[7] Waldbusser, S., "Remote Network Monitoring Management Information Base", STD 59, RFC 2819, May 2000.

[7] Waldbusser,S.,“远程网络监控管理信息库”,STD 59,RFC 2819,2000年5月。

5.2. Informative References
5.2. 资料性引用

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

[8] Case,J.,Mundy,R.,Partain,D.和B.Stewart,“互联网标准管理框架的介绍和适用性声明”,RFC 3410,2002年12月。

[9] Berners-Lee, T., Masinter, L. and M. McCahill, "Uniform Resource Locators (URL)", RFC 1738, December 1994.

[9] Berners Lee,T.,Masinter,L.和M.McCahill,“统一资源定位器(URL)”,RFC 17381994年12月。

[10] Boneh, D. and D. Brumley, "Remote timing attacks are practical", Proceedings of 12th USENIX Security Symposium, August 2003.

[10] Boneh,D.和D.Brumley,“远程定时攻击是切实可行的”,第12届USENIX安全研讨会论文集,2003年8月。

6. Author's Address
6. 作者地址

Steven Waldbusser EMail: waldbusser@nextbeacon.com

Steven Waldbusser电子邮件:waldbusser@nextbeacon.com

7. Full Copyright Statement
7. 完整版权声明

Copyright (C) The Internet Society (2004). This document is subject to the rights, licenses and restrictions contained in BCP 78 and except as set forth therein, the authors retain all their rights.

版权所有(C)互联网协会(2004年)。本文件受BCP 78中包含的权利、许可和限制的约束,除其中规定外,作者保留其所有权利。

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM 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.

本文件及其包含的信息是按“原样”提供的,贡献者、他/她所代表或赞助的组织(如有)、互联网协会和互联网工程任务组不承担任何明示或暗示的担保,包括但不限于任何保证,即使用本文中的信息不会侵犯任何权利,或对适销性或特定用途适用性的任何默示保证。

Intellectual Property

知识产权

The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.

IETF对可能声称与本文件所述技术的实施或使用有关的任何知识产权或其他权利的有效性或范围,或此类权利下的任何许可可能或可能不可用的程度,不采取任何立场;它也不表示它已作出任何独立努力来确定任何此类权利。有关RFC文件中权利的程序信息,请参见BCP 78和BCP 79。

Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.

向IETF秘书处披露的知识产权副本和任何许可证保证,或本规范实施者或用户试图获得使用此类专有权利的一般许可证或许可的结果,可从IETF在线知识产权存储库获取,网址为http://www.ietf.org/ipr.

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org.

IETF邀请任何相关方提请其注意任何版权、专利或专利申请,或其他可能涵盖实施本标准所需技术的专有权利。请将信息发送至IETF的IETF-ipr@ietf.org.

Acknowledgement

确认

Funding for the RFC Editor function is currently provided by the Internet Society.

RFC编辑功能的资金目前由互联网协会提供。