-- extracted from draft-ietf-disman-remops-mib-03.txt -- at Mon Nov 15 17:10:50 1999 DISMAN-PING-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Integer32, experimental FROM SNMPv2-SMI -- RFC1902 TEXTUAL-CONVENTION, RowStatus, TestAndIncr FROM SNMPv2-TC -- RFC1903 MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF -- RFC1904 SnmpAdminString FROM SNMP-FRAMEWORK-MIB; -- RFC2271 pingMIB MODULE-IDENTITY LAST-UPDATED "9812200000Z" ORGANIZATION "IETF Distributed Management Working Group" CONTACT-INFO "Kenneth White International Business Machines Corporation Network Computing Software Division Research Triangle Park, NC, USA E-mail: wkenneth@us.ibm.com" DESCRIPTION "The Ping MIB (DISMAN-PING-MIB) enables use of the ping function via use of the SNMP protocol." ::= { experimental 84 1 } -- Textual Conventions HostAddress ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The textual convention for specifying a host address. The type of address can be determined by the octet string length: OCTETs ADDRESS TYPE 0 not specified 4 ipv4 16 ipv6" SYNTAX OCTET STRING (SIZE (0..16)) OperationStatus ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The textual convention for specifying the states that an operation can be in." SYNTAX INTEGER { notStarted(1), active(2), completed(3) } -- Top-level structure of the MIB pingNotifications OBJECT IDENTIFIER ::= { pingMIB 0 } pingObjects OBJECT IDENTIFIER ::= { pingMIB 1 } pingConformance OBJECT IDENTIFIER ::= { pingMIB 2 } -- Simple Object Definitions pingSpinLock OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "An advisory lock used to allow cooperating ping applications to coordinate their use of the pingPingTable. This object should be used when an application seeks to create an new entry or alter an existing entry in the pingTable. A management implementation MAY utilize the pingSpinLock to serialize its changes or additions. Its usage is NOT REQUIRED." ::= { pingObjects 1 } pingMaxConcurrentRequests OBJECT-TYPE SYNTAX Integer32 (1..100) MAX-ACCESS read-write STATUS current DESCRIPTION "The maximum number of concurrent active ping requests that are allowed within an agent implementation." DEFVAL { 10 } ::= { pingObjects 2 } pingPurgeTime OBJECT-TYPE SYNTAX Integer32 (0..86400) UNITS "seconds" MAX-ACCESS read-write STATUS current DESCRIPTION "The amount of time to wait before automatically deleting an entry in the pingTable and all dependent pingResultsTable entries after the ping operation represented by an entry in the pingTable has completed." DEFVAL { 900 } -- 15 minutes as default ::= { pingObjects 3 } -- Ping Table pingTable OBJECT-TYPE SYNTAX SEQUENCE OF PingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Defines the Ping Table for provide via SNMP the capability of invoking ping from a remote host." ::= { pingObjects 4 } pingEntry OBJECT-TYPE SYNTAX PingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Defines an entry in the pingTable." INDEX { pingOwnerIndex, pingHostAddress } ::= { pingTable 1 } PingEntry ::= SEQUENCE { pingOwnerIndex SnmpAdminString, pingHostAddress HostAddress, pingPacketSize Integer32, pingTimeOut Integer32, pingProbeCount Integer32, pingOperStatus OperationStatus, pingRowStatus RowStatus } pingOwnerIndex OBJECT-TYPE SYNTAX SnmpAdminString (SIZE(0..32)) MAX-ACCESS not-accessible STATUS current DESCRIPTION "To facilitate the provisioning of access control by a security administrator using the View-Based Access Control Model (RFC 2275, VACM) for tables in which multiple users may need to independently create or modify entries, the initial index is used as an 'owner index'. Such an initial index has a syntax of SnmpAdminString, and can thus be trivially mapped to a securityName or groupName as defined in VACM, in accordance with a security policy. All entries in that table belonging to a particular user will have the same value for this initial index. For a given user's entries in a particular table, the object identifiers for the information in these entries will have the same subidentifiers (except for the 'column' subidentifier) up to the end of the encoded owner index. To configure VACM to permit access to this portion of the table, one would create vacmViewTreeFamilyTable entries with the value of vacmViewTreeFamilySubtree including the owner index portion, and vacmViewTreeFamilyMask 'wildcarding' the column subidentifier. More elaborate configurations are possible." ::= { pingEntry 1 } pingHostAddress OBJECT-TYPE SYNTAX HostAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "Specifies the host address used on by ping request by the remote host. The host address type can be determined by its octet string length." ::= { pingEntry 2 } pingPacketSize OBJECT-TYPE SYNTAX Integer32 (0..65507) UNITS "octets" MAX-ACCESS read-create STATUS current DESCRIPTION "Specifies the size of the data portion to be transmitted in a ping request in octets. A ping request is usually an ICMP message encoded into an IP packet. An IP packet has a maximum size of 65535 octets. Subtracting the size of the ICMP header (8 octets) and the size of the IP header (20 octets) yields a maximum size of 65507 octets." DEFVAL { 0 } ::= { pingEntry 3 } pingTimeOut OBJECT-TYPE SYNTAX Integer32 (1..60) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "Specifies the time-out value, in seconds, for the actual PING request made by the remote host. Valid values for time out are from 1 to 60 seconds." DEFVAL { 3 } ::= { pingEntry 4 } pingProbeCount OBJECT-TYPE SYNTAX Integer32 (1..15) MAX-ACCESS read-create STATUS current DESCRIPTION "Specifies the number of times to issue a ping request at a remote host." DEFVAL { 1 } ::= { pingEntry 5 } pingOperStatus OBJECT-TYPE SYNTAX OperationStatus MAX-ACCESS read-only STATUS current DESCRIPTION "Reflects the operational state of a remote ping operation." ::= { pingEntry 6 } pingRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object allows entries to be created and deleted in the pingTable. Deletion of an entry in this table results in all dependent pingResultsTable entries being deleted. A remote ping operation is started when an entry in this table is created via an SNMP SET request and the entry is activated. This can occur by setting the value of this object to CreateAndGo(4) during row creation or by setting this object to active(1) after the row is created. A ping request starts when its entry first becomes active(1). Transitions in and out of active(1) state have no effect on the operational behavior of a remote ping operation, with the exception that deletion of an entry in this table by setting its RowStatus object to destroy(6) will stop an active ping operation. The operational state of an ping operation can be determined by examination of it's pingOperStatus object." REFERENCE "RFC 1903, 'Textual Conventions for version 2 of the Simple Network Management Protocol (SNMPv2).'" ::= { pingEntry 7 } -- Ping Results Table pingResultsTable OBJECT-TYPE SYNTAX SEQUENCE OF PingResultsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Defines the Ping Results Table for storing the results of a ping operation." ::= { pingObjects 5 } pingResultsEntry OBJECT-TYPE SYNTAX PingResultsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Defines an entry in the pingResultsTable." INDEX { pingOwnerIndex, pingHostAddress, pingResultsProbeIndex } ::= { pingResultsTable 1 } PingResultsEntry ::= SEQUENCE { pingResultsProbeIndex Integer32, pingResultsResponse Integer32 } pingResultsProbeIndex OBJECT-TYPE SYNTAX Integer32 (1..15) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table is created when the results of a ping probe is determined. The initial instance identifier value identifies the pingEntry that a probe result (pingResultsEntry) belongs to." ::= { pingResultsEntry 1 } pingResultsResponse OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The result of the ping operation made by a remote host for a particular probe. The results of the probe is indicated as the value of this object as follows: >=0 Round-trip response time in milliseconds. -1 Internal error. -2 ICMP echo request timed out. -3 Unknown destination address. -4 No route to host. -5 Interface inactive to host. -6 Failed to resolve host name. -7 pingMaxConcurrentRequests limit reached." ::= { pingResultsEntry 2 } --------------------------------------------------------------------- -- Conformance information -- Compliance statements --------------------------------------------------------------------- pingCompliances OBJECT IDENTIFIER ::= { pingConformance 1 } pingGroups OBJECT IDENTIFIER ::= { pingConformance 2 } --------------------------------------------------------------------- -- Compliance statements --------------------------------------------------------------------- pingCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for the DISMAN-PING-MIB." MODULE -- this module MANDATORY-GROUPS { pingGroup } OBJECT pingMaxConcurrentRequests MIN-ACCESS read-only DESCRIPTION "The agent is not required to support a SET operation to this object." OBJECT pingPurgeTime MIN-ACCESS read-only DESCRIPTION "The agent is not required to support a SET operation to this object." ::= { pingCompliances 1 } --------------------------------------------------------------------- -- MIB groupings --------------------------------------------------------------------- pingGroup OBJECT-GROUP OBJECTS { pingSpinLock, pingMaxConcurrentRequests, pingPurgeTime, pingPacketSize, pingTimeOut, pingProbeCount, pingOperStatus, pingRowStatus, pingResultsResponse } STATUS current DESCRIPTION "The group of objects that comprise the ping operation." ::= { pingGroups 1 } END -- -- Copyright (C) The Internet Society (1997). 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.