Network Working Group K. Tesink, Ed. Request for Comments: 3593 Telcordia Technologies Obsoletes: 2493 September 2003 Category: Standards Track Textual Conventions for MIB Modules Using Performance History Based on 15 Minute Intervals 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. Copyright Notice Copyright (C) The Internet Society (2003). All Rights Reserved.Abstract
This document defines a set of Textual Conventions for MIB modules that make use of performance history data based on 15 minute intervals. This memo replaces RFC 2493. Changes relative to RFC 2493 are summarized in the MIB module's REVISION clause.Table of Contents
1. Introduction ................................................. 2 2. Note on Invalid Data and Proxies ............................. 2 3. Note on xyzTimeElapsed ....................................... 3 4. Note on xyzValidIntervals .................................... 3 5. Definitions .................................................. 4 6. Acknowledgments .............................................. 8 7. References ................................................... 8 7.1. Normative References ................................... 8 7.2. Informative References ................................. 8 8. Security Considerations ...................................... 9 9. Intellectual Property Statement .............................. 9 10. Editor's Address ............................................. 9 11. Full Copyright Statement ..................................... 10
1. Introduction
In cases where a manager must obtain performance history data about the behavior of equipment it manages, several strategies can be followed in the design of a MIB that represents the managed equipment, including: 0 The agent counts events on a continuous basis and, whenever desired, the manager obtains the value of the event counter and adjusts its understanding of the history of events at the agent. 0 The agent allocates events to 'buckets' where each bucket represents an interval of time. Telecommunications equipment often makes use of the latter strategy. See [3][4][5][7][8] for examples. In particular, for this equipment it is common that history data is maintained by the agent in terms of fifteen minute intervals. This memo does not attempt to compare the relative merits of different strategies used to obtain history data. Differences may include polling policy, the amount of management traffic between manager and agent, agent simplicity, and 'data currentness' of the data obtained by the manager. MIB designers should consider these aspects when choosing a particular strategy in a MIB design. Instead, this memo provides definitions that can be used in MIB modules that require history data based on fifteen minute intervals. When designing a MIB module, it is often useful to define new types similar to those defined in the SMI [2]. In comparison to a type defined in the SMI, each of these new types has a different name, a similar syntax, but more precise semantics. These newly defined types are termed textual conventions, and are used for the convenience of humans reading the MIB module. This is done through Textual Conventions as defined in RFC 2579 [1]. It is the purpose of this document to define the set of textual conventions to be used when performance history based on 15 minute intervals is kept. The performance history textual conventions defined in this memo are based on 32 bit counts. For high capacity performance history counts see [9].2. Note on Invalid Data and Proxies
In this document, the word proxy indicates an application which receives SNMP messages and replies to them on behalf of the devices where the actual implementation resides, e.g., DS3/E3 interfaces. The proxy will have already collected the information about the DS3/E3 interfaces into its local database and may not necessarily
forward requests to the actual DS3/E3 interface. It is expected in such an application that there are periods of time where the proxy is not communicating with the DS3/E3 interfaces. In these instances, the proxy will not necessarily have up-to-date configuration information, and will most likely have missed the collection of some data. Missed data collection may result in some intervals in the interval table being unavailable.3. Note on xyzTimeElapsed
While xyzTimeElapsed is defined as having a maximum, there may be cases (e.g., an adjustment in the system's time-of-day clock) where the actual value of the current interval would exceed this maximum value. Suppose that an agent which aligns its 15-minute measurement intervals to 15-minute time-of-day ("wall clock") boundaries has a time-of-day clock that systematically gains time, and that a manager periodically corrects the clock by setting it back. It is assumed that the agent's time-of-day clock is reasonably accurate, say within a few seconds per day. Thus, the manager's periodic clock adjustments will normally be small, and if done frequently enough, need not ever exceed 10 seconds. In this case, all interval durations will be within the allowed tolerance and none need be marked invalid, _if_ the ANSI procedure of ending measurement intervals at 15-minute time-of-day boundaries is followed [6]. If the time-of-day clock is systematically adjusted in small increments, then always ending measurement intervals at 15-minute time-of-day boundaries will result, in the long term, in the correct number of intervals with the correct average duration, irrespective of whether the clock is moved ahead or moved back. Thus, if for some reason, such as an adjustment in the system's time-of-day clock, the current interval exceeds the maximum value, it is considered acceptable that the agent will return the maximum value.4. Note on xyzValidIntervals
The overall constraint on <n> is 1 =< n =< 96. Any additional constraints on n must be defined in the DESCRIPTION clause (e.g., see [5]).
5. Definitions
PerfHist-TC-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, Gauge32, mib-2 FROM SNMPv2-SMI TEXTUAL-CONVENTION FROM SNMPv2-TC; perfHistTCMIB MODULE-IDENTITY LAST-UPDATED "200308130000Z" ORGANIZATION "IETF AToM MIB WG" CONTACT-INFO "WG charter: http://www.ietf.org/html.charters/atommib-charter.html Mailing Lists: General Discussion: atommib@research.telcordia.com To Subscribe: atommib-request@research.telcordia.com Editor: Kaj Tesink Postal: Telcordia Technologies 331 Newman Springs Road Red Bank, NJ 07701 USA Tel: +1 732 758 5254 E-mail: kaj@research.telcordia.com" DESCRIPTION "This MIB Module provides Textual Conventions to be used by systems supporting 15 minute based performance history counts. Copyright (C) The Internet Society (2003). This version of this MIB module is part of RFC 3593; see the RFC itself for full legal notices." REVISION "200308130000Z" DESCRIPTION "Contact information and references updated. No technical changes have been applied. Published as RFC 3593." REVISION "199811071100Z" DESCRIPTION "The RFC 2493 version of this MIB module." ::= { mib-2 58 }
-- The Textual Conventions defined below are organized -- alphabetically -- Use of these TCs assumes the following: -- 0 The agent supports 15 minute based history -- counters. -- 0 The agent is capable of keeping a history of n -- intervals of 15 minute performance data. The -- value of n is defined by the specific MIB -- module but shall be 0 < n =< 96. -- 0 The agent may optionally support performance -- data aggregating the history intervals. -- 0 The agent will keep separate tables for the -- current interval, the history intervals, and -- the total aggregates. -- 0 The agent will keep the following objects. -- If performance data is kept for multiple instances -- of a measured entity, then -- these objects are applied to each instance of -- the measured entity (e.g., interfaces). -- -- xyzTimeElapsed OBJECT-TYPE -- SYNTAX INTEGER (0..899) -- MAX-ACCESS read-only -- STATUS current -- DESCRIPTION -- "The number of seconds that have elapsed since -- the beginning of the current measurement period. -- If, for some reason, such as an adjustment in the -- system's time-of-day clock, the current interval -- exceeds the maximum value, the agent will return -- the maximum value." -- ::= { xxx } -- xyzValidIntervals OBJECT-TYPE -- SYNTAX INTEGER (0..<n>) -- MAX-ACCESS read-only -- STATUS current -- DESCRIPTION -- "The number of previous near end intervals -- for which data was collected. -- [ The overall constraint on <n> is 1 =< n =< 96; ] -- [ Define any additional constraints on <n> here. ] -- The value will be <n> unless the measurement was -- (re-)started within the last (<n>*15) minutes, in which -- case the value will be the number of complete 15 -- minute intervals for which the agent has at least -- some data. In certain cases (e.g., in the case
-- where the agent is a proxy) it is possible that some -- intervals are unavailable. In this case, this -- interval is the maximum interval number for -- which data is available." -- ::= { xxx } -- xyzInvalidIntervals OBJECT-TYPE -- SYNTAX INTEGER (0..<n>) -- MAX-ACCESS read-only -- STATUS current -- DESCRIPTION -- "The number of intervals in the range from -- 0 to xyzValidIntervals for which no -- data is available. This object will typically -- be zero except in cases where the data for some -- intervals are not available (e.g., in proxy -- situations)." -- ::= { xxx } PerfCurrentCount ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "A counter associated with a performance measurement in a current 15 minute measurement interval. The value of this counter starts from zero and is increased when associated events occur, until the end of the 15 minute interval. At that time the value of the counter is stored in the first 15 minute history interval, and the CurrentCount is restarted at zero. In the case where the agent has no valid data available for the current interval the corresponding object instance is not available and upon a retrieval request a corresponding error message shall be returned to indicate that this instance does not exist (for example, a noSuchName error for SNMPv1 and a noSuchInstance for SNMPv2 GET operation)." SYNTAX Gauge32
PerfIntervalCount ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "A counter associated with a performance measurement in a previous 15 minute measurement interval. In the case where the agent has no valid data available for a particular interval the corresponding object instance is not available and upon a retrieval request a corresponding error message shall be returned to indicate that this instance does not exist (for example, a noSuchName error for SNMPv1 and a noSuchInstance for SNMPv2 GET operation). In a system supporting a history of n intervals with IntervalCount(1) and IntervalCount(n) the most and least recent intervals respectively, the following applies at the end of a 15 minute interval: - discard the value of IntervalCount(n) - the value of IntervalCount(i) becomes that of IntervalCount(i-1) for n >= i > 1 - the value of IntervalCount(1) becomes that of CurrentCount - the TotalCount, if supported, is adjusted." SYNTAX Gauge32 PerfTotalCount ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "A counter associated with a performance measurements aggregating the previous valid 15 minute measurement intervals. (Intervals for which no valid data was available are not counted)" SYNTAX Gauge32 END
6. Acknowledgments
This document is a product of the AToM MIB Working Group. The editor would like to acknowledge Mike Heard for his many valuable contributions to this memo.7. References
7.1. Normative References
[1] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [2] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999.7.2. Informative References
[3] Fowler, D., "Definitions of Managed Objects for the DS1, E1, DS2 and E2 Interface Types", RFC 2495, January 1999. [4] Fowler, D., "Definitions of Managed Objects for the DS3/E3 Interface Type", RFC 2496, January 1999. [5] Tesink, K., "Definitions of Managed Objects for the Synchronous Optical Network/Synchronous Digital Hierarchy (SONET/SDH) Interface Type", RFC 3592, September 2003. [6] American National Standard for Telecommunications - Digital Hierarchy - Layer 1 In-Service Digital Transmission Performance Monitoring, ANSI T1.231-1997, September 1997. [7] Bathrick, G. and F. Ly, "Definitions of Managed Objects for the ADSL Lines", RFC 2662, August 1999. [8] Ray, B., and R. Abbi, "Definitions of Managed Objects for High Bit-Rate DSL - 2nd generation (HDSL2) and Single-Pair High-Speed Digital Subscriber Line (SHDSL) Lines", RFC 3276, May 2002. [9] Ray, B. and R. Abbi, "High Capacity Textual Conventions for MIB Modules Using Performance History Based on 15 Minute Intervals", Work in Progress.
8. Security Considerations
This memo defines textual conventions for use in other MIB modules. Security issues for these MIB modules are addressed in the memos defining those modules.9. Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any intellectual property 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; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11. Copies of claims of rights made available for publication 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 implementors or users of this specification can be obtained from the IETF Secretariat. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director.10. Editor's Address
Kaj Tesink Telcordia Technologies 331 Newman Springs Road P.O. Box 7020 Red Bank, NJ 07701-7020 Phone: +1 732 758 5254 EMail: kaj@research.telcordia.com
11. Full Copyright Statement
Copyright (C) The Internet Society (2003). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Acknowledgement Funding for the RFC Editor function is currently provided by the Internet Society.