mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
git-svn-id: http://www.observium.org/svn/observer/trunk@1582 61d68cd4-352d-0410-923a-c4978735b2b8
1146 lines
41 KiB
Plaintext
1146 lines
41 KiB
Plaintext
|
|
DISMAN-PING-MIB DEFINITIONS ::= BEGIN
|
|
|
|
-- *****************************************************************************
|
|
-- Copyright (C) The Internet Society (2000). All Rights Reserved.
|
|
-- This version of this MIB module is part of RFC 2925; see the RFC itself for
|
|
-- full legal notices.
|
|
-- *****************************************************************************
|
|
|
|
IMPORTS
|
|
MODULE-IDENTITY, OBJECT-TYPE, Integer32,
|
|
Unsigned32, mib-2,
|
|
NOTIFICATION-TYPE, OBJECT-IDENTITY
|
|
FROM SNMPv2-SMI -- RFC2578
|
|
TEXTUAL-CONVENTION, RowStatus,
|
|
StorageType, DateAndTime, TruthValue
|
|
FROM SNMPv2-TC -- RFC2579
|
|
MODULE-COMPLIANCE, OBJECT-GROUP,
|
|
NOTIFICATION-GROUP
|
|
FROM SNMPv2-CONF -- RFC2580
|
|
InterfaceIndexOrZero -- RFC2863
|
|
FROM IF-MIB
|
|
SnmpAdminString
|
|
FROM SNMP-FRAMEWORK-MIB -- RFC2571
|
|
InetAddressType, InetAddress
|
|
FROM INET-ADDRESS-MIB; -- RFC2851
|
|
|
|
pingMIB MODULE-IDENTITY
|
|
LAST-UPDATED "200009210000Z" -- 21 September 2000
|
|
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) provides the capability of
|
|
controlling the use of the ping function at a remote
|
|
host."
|
|
|
|
-- Revision history
|
|
|
|
REVISION "200009210000Z" -- 21 September 2000
|
|
DESCRIPTION
|
|
"Initial version, published as RFC 2925."
|
|
|
|
::= { mib-2 80 }
|
|
|
|
-- Textual Conventions
|
|
|
|
OperationResponseStatus ::= TEXTUAL-CONVENTION
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Used to report the result of an operation:
|
|
|
|
responseReceived(1) - Operation completes successfully.
|
|
unknown(2) - Operation failed due to unknown error.
|
|
internalError(3) - An implementation detected an error
|
|
in its own processing that caused an operation
|
|
to fail.
|
|
requestTimedOut(4) - Operation failed to receive a
|
|
valid reply within the time limit imposed on it.
|
|
unknownDestinationAddress(5) - Invalid destination
|
|
address.
|
|
noRouteToTarget(6) - Could not find a route to target.
|
|
interfaceInactiveToTarget(7) - The interface to be
|
|
used in sending a probe is inactive without an
|
|
alternate route existing.
|
|
arpFailure(8) - Unable to resolve a target address to a
|
|
media specific address.
|
|
maxConcurrentLimitReached(9) - The maximum number of
|
|
concurrent active operations would have been exceeded
|
|
if the corresponding operation was allowed.
|
|
unableToResolveDnsName(10) - The DNS name specified was
|
|
unable to be mapped to an IP address.
|
|
invalidHostAddress(11) - The IP address for a host
|
|
has been determined to be invalid. Examples of this
|
|
are broadcast or multicast addresses."
|
|
SYNTAX INTEGER {
|
|
responseReceived(1),
|
|
unknown(2),
|
|
internalError(3),
|
|
requestTimedOut(4),
|
|
unknownDestinationAddress(5),
|
|
noRouteToTarget(6),
|
|
interfaceInactiveToTarget(7),
|
|
arpFailure(8),
|
|
maxConcurrentLimitReached(9),
|
|
unableToResolveDnsName(10),
|
|
invalidHostAddress(11)
|
|
}
|
|
|
|
-- Top level structure of the MIB
|
|
|
|
pingNotifications OBJECT IDENTIFIER ::= { pingMIB 0 }
|
|
pingObjects OBJECT IDENTIFIER ::= { pingMIB 1 }
|
|
pingConformance OBJECT IDENTIFIER ::= { pingMIB 2 }
|
|
|
|
-- The registration node (point) for ping implementation types
|
|
|
|
pingImplementationTypeDomains OBJECT IDENTIFIER ::= { pingMIB 3 }
|
|
|
|
pingIcmpEcho OBJECT-IDENTITY
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Indicates that an implementation is using the Internet
|
|
Control Message Protocol (ICMP) 'ECHO' facility."
|
|
::= { pingImplementationTypeDomains 1 }
|
|
|
|
pingUdpEcho OBJECT-IDENTITY
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Indicates that an implementation is using the UDP echo
|
|
port (7)."
|
|
REFERENCE
|
|
"RFC 862, 'Echo Protocol'."
|
|
::= { pingImplementationTypeDomains 2 }
|
|
|
|
pingSnmpQuery OBJECT-IDENTITY
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Indicates that an implementation is an SNMP query to
|
|
calculate a round trip time."
|
|
::= { pingImplementationTypeDomains 3 }
|
|
|
|
pingTcpConnectionAttempt OBJECT-IDENTITY
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Indicates that an implementation is attempting to
|
|
connect to a TCP port in order to calculate a round
|
|
trip time."
|
|
::= { pingImplementationTypeDomains 4 }
|
|
|
|
-- Simple Object Definitions
|
|
|
|
pingMaxConcurrentRequests OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
UNITS "requests"
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The maximum number of concurrent active ping requests
|
|
that are allowed within an agent implementation. A value
|
|
of 0 for this object implies that there is no limit for
|
|
the number of concurrent active requests in effect."
|
|
DEFVAL { 10 }
|
|
::= { pingObjects 1 }
|
|
|
|
-- Ping Control Table
|
|
|
|
pingCtlTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF PingCtlEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Defines the ping Control Table for providing, via SNMP,
|
|
the capability of performing ping operations at
|
|
a remote host. The results of these operations are
|
|
stored in the pingResultsTable and the
|
|
pingProbeHistoryTable."
|
|
::= { pingObjects 2 }
|
|
|
|
pingCtlEntry OBJECT-TYPE
|
|
SYNTAX PingCtlEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Defines an entry in the pingCtlTable. The first index
|
|
element, pingCtlOwnerIndex, is of type SnmpAdminString,
|
|
a textual convention that allows for use of the SNMPv3
|
|
View-Based Access Control Model (RFC 2575 [11], VACM)
|
|
and allows an management application to identify its
|
|
entries. The second index, pingCtlTestName (also an
|
|
SnmpAdminString), enables the same management
|
|
application to have multiple outstanding requests."
|
|
INDEX {
|
|
pingCtlOwnerIndex,
|
|
pingCtlTestName
|
|
}
|
|
::= { pingCtlTable 1 }
|
|
|
|
PingCtlEntry ::=
|
|
SEQUENCE {
|
|
pingCtlOwnerIndex SnmpAdminString,
|
|
pingCtlTestName SnmpAdminString,
|
|
pingCtlTargetAddressType InetAddressType,
|
|
pingCtlTargetAddress InetAddress,
|
|
pingCtlDataSize Unsigned32,
|
|
pingCtlTimeOut Unsigned32,
|
|
pingCtlProbeCount Unsigned32,
|
|
pingCtlAdminStatus INTEGER,
|
|
pingCtlDataFill OCTET STRING,
|
|
pingCtlFrequency Unsigned32,
|
|
pingCtlMaxRows Unsigned32,
|
|
pingCtlStorageType StorageType,
|
|
pingCtlTrapGeneration BITS,
|
|
pingCtlTrapProbeFailureFilter Unsigned32,
|
|
pingCtlTrapTestFailureFilter Unsigned32,
|
|
pingCtlType OBJECT IDENTIFIER,
|
|
pingCtlDescr SnmpAdminString,
|
|
pingCtlSourceAddressType InetAddressType,
|
|
pingCtlSourceAddress InetAddress,
|
|
pingCtlIfIndex InterfaceIndexOrZero,
|
|
pingCtlByPassRouteTable TruthValue,
|
|
pingCtlDSField Unsigned32,
|
|
pingCtlRowStatus RowStatus
|
|
}
|
|
|
|
pingCtlOwnerIndex 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 2575, 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.
|
|
|
|
When used in conjunction with such a security policy all
|
|
entries in the table belonging to a particular user (or
|
|
group) 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."
|
|
::= { pingCtlEntry 1 }
|
|
|
|
pingCtlTestName OBJECT-TYPE
|
|
SYNTAX SnmpAdminString (SIZE(0..32))
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The name of the ping test. This is locally unique, within
|
|
the scope of an pingCtlOwnerIndex."
|
|
::= { pingCtlEntry 2 }
|
|
|
|
pingCtlTargetAddressType OBJECT-TYPE
|
|
SYNTAX InetAddressType
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Specifies the type of host address to be used at a remote
|
|
host for performing a ping operation."
|
|
DEFVAL { unknown }
|
|
::= { pingCtlEntry 3 }
|
|
|
|
pingCtlTargetAddress OBJECT-TYPE
|
|
SYNTAX InetAddress
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Specifies the host address to be used at a remote host for
|
|
performing a ping operation. The host address type is
|
|
determined by the object value of corresponding
|
|
pingCtlTargetAddressType.
|
|
|
|
A value for this object MUST be set prior to transitioning
|
|
its corresponding pingCtlEntry to active(1) via
|
|
pingCtlRowStatus."
|
|
DEFVAL { ''H }
|
|
::= { pingCtlEntry 4 }
|
|
|
|
pingCtlDataSize OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..65507)
|
|
UNITS "octets"
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Specifies the size of the data portion to be
|
|
transmitted in a ping operation 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
|
|
or UDP header (both 8 octets) and the size of the IP
|
|
header (20 octets) yields a maximum size of 65507
|
|
octets."
|
|
DEFVAL { 0 }
|
|
::= { pingCtlEntry 5 }
|
|
|
|
pingCtlTimeOut OBJECT-TYPE
|
|
SYNTAX Unsigned32 (1..60)
|
|
UNITS "seconds"
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Specifies the time-out value, in seconds, for a
|
|
remote ping operation."
|
|
DEFVAL { 3 }
|
|
::= { pingCtlEntry 6 }
|
|
|
|
pingCtlProbeCount OBJECT-TYPE
|
|
SYNTAX Unsigned32 (1..15)
|
|
UNITS "probes"
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Specifies the number of times to perform a ping
|
|
operation at a remote host."
|
|
DEFVAL { 1 }
|
|
::= { pingCtlEntry 7 }
|
|
|
|
pingCtlAdminStatus OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
enabled(1), -- test should be started
|
|
disabled(2) -- test should be stopped
|
|
}
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Reflects the desired state that a pingCtlEntry should be
|
|
in:
|
|
|
|
enabled(1) - Attempt to activate the test as defined by
|
|
this pingCtlEntry.
|
|
disabled(2) - Deactivate the test as defined by this
|
|
pingCtlEntry.
|
|
|
|
Refer to the corresponding pingResultsOperStatus to
|
|
determine the operational state of the test defined by
|
|
this entry."
|
|
DEFVAL { disabled }
|
|
::= { pingCtlEntry 8 }
|
|
|
|
pingCtlDataFill OBJECT-TYPE
|
|
SYNTAX OCTET STRING (SIZE(0..1024))
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The content of this object is used together with the
|
|
corresponding pingCtlDataSize value to determine how to
|
|
fill the data portion of a probe packet. The option of
|
|
selecting a data fill pattern can be useful when links
|
|
are compressed or have data pattern sensitivities. The
|
|
contents of pingCtlDataFill should be repeated in a ping
|
|
packet when the size of the data portion of the ping
|
|
packet is greater than the size of pingCtlDataFill."
|
|
DEFVAL { '00'H }
|
|
::= { pingCtlEntry 9 }
|
|
|
|
pingCtlFrequency OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
UNITS "seconds"
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of seconds to wait before repeating a ping test
|
|
as defined by the value of the various objects in the
|
|
corresponding row.
|
|
|
|
A single ping test consists of a series of ping probes.
|
|
The number of probes is determined by the value of the
|
|
corresponding pingCtlProbeCount object. After a single
|
|
test completes the number of seconds as defined by the
|
|
value of pingCtlFrequency MUST elapse before the
|
|
next ping test is started.
|
|
|
|
A value of 0 for this object implies that the test
|
|
as defined by the corresponding entry will not be
|
|
repeated."
|
|
DEFVAL { 0 }
|
|
::= { pingCtlEntry 10 }
|
|
|
|
pingCtlMaxRows OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
UNITS "rows"
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The maximum number of entries allowed in the
|
|
pingProbeHistoryTable. An implementation of this
|
|
MIB will remove the oldest entry in the
|
|
pingProbeHistoryTable to allow the addition of an
|
|
new entry once the number of rows in the
|
|
pingProbeHistoryTable reaches this value.
|
|
|
|
Old entries are not removed when a new test is
|
|
started. Entries are added to the pingProbeHistoryTable
|
|
until pingCtlMaxRows is reached before entries begin to
|
|
be removed.
|
|
|
|
A value of 0 for this object disables creation of
|
|
pingProbeHistoryTable entries."
|
|
DEFVAL { 50 }
|
|
::= { pingCtlEntry 11 }
|
|
|
|
pingCtlStorageType OBJECT-TYPE
|
|
SYNTAX StorageType
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The storage type for this conceptual row.
|
|
Conceptual rows having the value 'permanent' need not
|
|
allow write-access to any columnar objects in the row."
|
|
DEFVAL { nonVolatile }
|
|
::= { pingCtlEntry 12 }
|
|
|
|
pingCtlTrapGeneration OBJECT-TYPE
|
|
SYNTAX BITS {
|
|
probeFailure(0),
|
|
testFailure(1),
|
|
testCompletion(2)
|
|
}
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The value of this object determines when and if
|
|
to generate a notification for this entry:
|
|
|
|
probeFailure(0) - Generate a pingProbeFailed
|
|
notification subject to the value of
|
|
pingCtlTrapProbeFailureFilter. The object
|
|
pingCtlTrapProbeFailureFilter can be used
|
|
to specify the number of successive probe failures
|
|
that are required before a pingProbeFailed
|
|
notification can be generated.
|
|
testFailure(1) - Generate a pingTestFailed
|
|
notification. In this instance the object
|
|
pingCtlTrapTestFailureFilter can be used to
|
|
determine the number of probe failures that
|
|
signal when a test fails.
|
|
testCompletion(2) - Generate a pingTestCompleted
|
|
notification.
|
|
|
|
The value of this object defaults to zero, indicating
|
|
that none of the above options have been selected."
|
|
::= { pingCtlEntry 13 }
|
|
|
|
pingCtlTrapProbeFailureFilter OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..15)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The value of this object is used to determine when
|
|
to generate a pingProbeFailed NOTIFICATION.
|
|
|
|
Setting pingCtlTrapGeneration
|
|
to probeFailure(0) implies that a pingProbeFailed
|
|
NOTIFICATION is generated only when the number of
|
|
successive probe failures as indicated by the
|
|
value of pingCtlTrapPrbefailureFilter fail within
|
|
a given ping test."
|
|
DEFVAL { 1 }
|
|
::= { pingCtlEntry 14 }
|
|
|
|
pingCtlTrapTestFailureFilter OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..15)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The value of this object is used to determine when
|
|
to generate a pingTestFailed NOTIFICATION.
|
|
|
|
Setting pingCtlTrapGeneration to testFailure(1)
|
|
implies that a pingTestFailed NOTIFICATION is
|
|
generated only when the number of ping failures
|
|
within a test exceed the value of
|
|
pingCtlTrapTestFailureFilter."
|
|
DEFVAL { 1 }
|
|
::= { pingCtlEntry 15 }
|
|
|
|
pingCtlType OBJECT-TYPE
|
|
SYNTAX OBJECT IDENTIFIER
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The value of this object is used to either report or
|
|
select the implementation method to be used for
|
|
calculating a ping response time. The value of this
|
|
object MAY be selected from pingImplementationTypeDomains.
|
|
|
|
Additional implementation types SHOULD be allocated as
|
|
required by implementers of the DISMAN-PING-MIB under
|
|
their enterprise specific registration point and not
|
|
beneath pingImplementationTypeDomains."
|
|
DEFVAL { pingIcmpEcho }
|
|
::= { pingCtlEntry 16 }
|
|
|
|
pingCtlDescr OBJECT-TYPE
|
|
SYNTAX SnmpAdminString
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The purpose of this object is to provide a
|
|
descriptive name of the remote ping test."
|
|
DEFVAL { '00'H }
|
|
::= { pingCtlEntry 17 }
|
|
|
|
pingCtlSourceAddressType OBJECT-TYPE
|
|
SYNTAX InetAddressType
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Specifies the type of the source address,
|
|
pingCtlSourceAddress, to be used at a remote host
|
|
when performing a ping operation."
|
|
DEFVAL { ipv4 }
|
|
::= { pingCtlEntry 18 }
|
|
|
|
pingCtlSourceAddress OBJECT-TYPE
|
|
SYNTAX InetAddress
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Use the specified IP address (which must be given
|
|
in numeric form, not as a hostname) as the source
|
|
address in outgoing probe packets. On hosts with
|
|
more than one IP address, this option can be used
|
|
to force the source address to be something other
|
|
than the primary IP address of the interface the
|
|
probe packet is sent on. If the IP address is not
|
|
one of this machine's interface addresses, an error
|
|
is returned and nothing is sent. A zero length
|
|
octet string value for this object disables source
|
|
address specification.
|
|
|
|
The address type (InetAddressType) that relates to
|
|
this object is specified by the corresponding value
|
|
of pingCtlSourceAddressType."
|
|
DEFVAL { ''H }
|
|
::= { pingCtlEntry 19 }
|
|
|
|
pingCtlIfIndex OBJECT-TYPE
|
|
SYNTAX InterfaceIndexOrZero
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Setting this object to an interface's ifIndex prior
|
|
to starting a remote ping operation directs
|
|
the ping probes to be transmitted over the
|
|
specified interface. A value of zero for this object
|
|
means that this option is not enabled."
|
|
DEFVAL { 0 }
|
|
::= { pingCtlEntry 20 }
|
|
|
|
pingCtlByPassRouteTable OBJECT-TYPE
|
|
SYNTAX TruthValue
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The purpose of this object is to optionally enable
|
|
bypassing the route table. If enabled, the remote
|
|
host will bypass the normal routing tables and send
|
|
directly to a host on an attached network. If the
|
|
host is not on a directly-attached network, an
|
|
error is returned. This option can be used to perform
|
|
the ping operation to a local host through an
|
|
interface that has no route defined (e.g., after the
|
|
interface was dropped by routed)."
|
|
DEFVAL { false }
|
|
::= { pingCtlEntry 21 }
|
|
|
|
pingCtlDSField OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..255)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Specifies the value to store in the Differentiated
|
|
Services (DS) Field in the IP packet used to
|
|
encapsulate the ping probe. The DS Field is defined
|
|
as the Type of Service (TOS) octet in a IPv4 header
|
|
or as the Traffic Class octet in a IPv6 header.
|
|
|
|
The value of this object must be a decimal integer
|
|
in the range from 0 to 255. This option can be used
|
|
to determine what effect an explicit DS Field setting
|
|
has on a ping response. Not all values are legal or
|
|
meaningful. A value of 0 means that the function
|
|
represented by this option is not supported. DS Field
|
|
usage is often not supported by IP implementations and
|
|
not all values are supported. Refer to RFC 2474 for
|
|
guidance on usage of this field."
|
|
REFERENCE
|
|
"Refer to RFC 2474 for the definition of the
|
|
Differentiated Services Field and to RFC 1812
|
|
Section 5.3.2 for Type of Service (TOS)."
|
|
DEFVAL { 0 }
|
|
::= { pingCtlEntry 22 }
|
|
|
|
pingCtlRowStatus OBJECT-TYPE
|
|
SYNTAX RowStatus
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This object allows entries to be created and deleted
|
|
in the pingCtlTable. Deletion of an entry in this
|
|
table results in all corresponding (same
|
|
pingCtlOwnerIndex and pingCtlTestName index values)
|
|
pingResultsTable and pingProbeHistoryTable entries
|
|
being deleted.
|
|
|
|
A value MUST be specified for pingCtlTargetAddress
|
|
prior to a transition to active(1) state being
|
|
accepted.
|
|
|
|
Activation of a remote ping operation is controlled
|
|
via pingCtlAdminStatus and not by changing
|
|
this object's value to active(1).
|
|
|
|
Transitions in and out of active(1) state are not
|
|
allowed while an entry's pingResultsOperStatus is
|
|
active(1) 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 a ping operation
|
|
can be determined by examination of its
|
|
pingResultsOperStatus object."
|
|
REFERENCE
|
|
"See definition of RowStatus in RFC 2579, 'Textual
|
|
Conventions for SMIv2.'"
|
|
::= { pingCtlEntry 23 }
|
|
|
|
-- Ping Results Table
|
|
|
|
pingResultsTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF PingResultsEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Defines the Ping Results Table for providing
|
|
the capability of performing ping operations at
|
|
a remote host. The results of these operations are
|
|
stored in the pingResultsTable and the pingPastProbeTable.
|
|
|
|
An entry is added to the pingResultsTable when an
|
|
pingCtlEntry is started by successful transition
|
|
of its pingCtlAdminStatus object to enabled(1).
|
|
An entry is removed from the pingResultsTable when
|
|
its corresponding pingCtlEntry is deleted."
|
|
::= { pingObjects 3 }
|
|
|
|
pingResultsEntry OBJECT-TYPE
|
|
SYNTAX PingResultsEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Defines an entry in the pingResultsTable. The
|
|
pingResultsTable has the same indexing as the
|
|
pingCtlTable in order for a pingResultsEntry to
|
|
correspond to the pingCtlEntry that caused it to
|
|
be created."
|
|
INDEX {
|
|
pingCtlOwnerIndex,
|
|
pingCtlTestName
|
|
}
|
|
::= { pingResultsTable 1 }
|
|
|
|
PingResultsEntry ::=
|
|
SEQUENCE {
|
|
pingResultsOperStatus INTEGER,
|
|
pingResultsIpTargetAddressType InetAddressType,
|
|
pingResultsIpTargetAddress InetAddress,
|
|
pingResultsMinRtt Unsigned32,
|
|
pingResultsMaxRtt Unsigned32,
|
|
pingResultsAverageRtt Unsigned32,
|
|
pingResultsProbeResponses Unsigned32,
|
|
pingResultsSentProbes Unsigned32,
|
|
pingResultsRttSumOfSquares Unsigned32,
|
|
pingResultsLastGoodProbe DateAndTime
|
|
}
|
|
|
|
pingResultsOperStatus OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
enabled(1), -- test is in progress
|
|
disabled(2) -- test has stopped
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Reflects the operational state of a pingCtlEntry:
|
|
enabled(1) - Test is active.
|
|
disabled(2) - Test has stopped."
|
|
::= { pingResultsEntry 1 }
|
|
|
|
pingResultsIpTargetAddressType OBJECT-TYPE
|
|
SYNTAX InetAddressType
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This objects indicates the type of address stored
|
|
in the corresponding pingResultsIpTargetAddress
|
|
object."
|
|
DEFVAL { unknown }
|
|
::= { pingResultsEntry 2 }
|
|
|
|
pingResultsIpTargetAddress OBJECT-TYPE
|
|
SYNTAX InetAddress
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This objects reports the IP address associated
|
|
with a pingCtlTargetAddress value when the destination
|
|
address is specified as a DNS name. The value of
|
|
this object should be a zero length octet string
|
|
when a DNS name is not specified or when a
|
|
specified DNS name fails to resolve."
|
|
DEFVAL { ''H }
|
|
::= { pingResultsEntry 3 }
|
|
|
|
pingResultsMinRtt OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
UNITS "milliseconds"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The minimum ping round-trip-time (RTT) received. A value
|
|
of 0 for this object implies that no RTT has been received."
|
|
::= { pingResultsEntry 4 }
|
|
|
|
pingResultsMaxRtt OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
UNITS "milliseconds"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The maximum ping round-trip-time (RTT) received. A value
|
|
of 0 for this object implies that no RTT has been received."
|
|
::= { pingResultsEntry 5 }
|
|
|
|
pingResultsAverageRtt OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
UNITS "milliseconds"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The current average ping round-trip-time (RTT)."
|
|
::= { pingResultsEntry 6 }
|
|
|
|
pingResultsProbeResponses OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
UNITS "responses"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Number of responses received for the corresponding
|
|
pingCtlEntry and pingResultsEntry. The value of this object
|
|
MUST be reported as 0 when no probe responses have been
|
|
received."
|
|
::= { pingResultsEntry 7 }
|
|
|
|
pingResultsSentProbes OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
UNITS "probes"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The value of this object reflects the number of probes sent
|
|
for the corresponding pingCtlEntry and pingResultsEntry.
|
|
The value of this object MUST be reported as 0 when no probes
|
|
have been sent."
|
|
::= { pingResultsEntry 8 }
|
|
|
|
pingResultsRttSumOfSquares OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
UNITS "milliseconds"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This object contains the sum of the squares for all ping
|
|
responses received. Its purpose is to enable standard
|
|
deviation calculation. The value of this object MUST
|
|
be reported as 0 when no ping responses have been
|
|
received."
|
|
::= { pingResultsEntry 9 }
|
|
|
|
pingResultsLastGoodProbe OBJECT-TYPE
|
|
SYNTAX DateAndTime
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Date and time when the last response was received for
|
|
a probe."
|
|
::= { pingResultsEntry 10 }
|
|
|
|
-- Ping Probe History Table
|
|
|
|
pingProbeHistoryTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF PingProbeHistoryEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Defines a table for storing the results of a ping
|
|
operation. Entries in this table are limited by
|
|
the value of the corresponding pingCtlMaxRows
|
|
object.
|
|
|
|
An entry in this table is created when the result of
|
|
a ping probe is determined. The initial 2 instance
|
|
identifier index values identify the pingCtlEntry
|
|
that a probe result (pingProbeHistoryEntry) belongs
|
|
to. An entry is removed from this table when
|
|
its corresponding pingCtlEntry is deleted.
|
|
|
|
An implementation of this MIB will remove the oldest
|
|
entry in the pingProbeHistoryTable to allow the
|
|
addition of an new entry once the number of rows in
|
|
the pingProbeHistoryTable reaches the value specified
|
|
by pingCtlMaxRows."
|
|
::= { pingObjects 4 }
|
|
|
|
pingProbeHistoryEntry OBJECT-TYPE
|
|
SYNTAX PingProbeHistoryEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Defines an entry in the pingProbeHistoryTable.
|
|
The first two index elements identify the
|
|
pingCtlEntry that a pingProbeHistoryEntry belongs
|
|
to. The third index element selects a single
|
|
probe result."
|
|
INDEX {
|
|
pingCtlOwnerIndex,
|
|
pingCtlTestName,
|
|
pingProbeHistoryIndex
|
|
}
|
|
::= { pingProbeHistoryTable 1 }
|
|
|
|
PingProbeHistoryEntry ::=
|
|
SEQUENCE {
|
|
pingProbeHistoryIndex Unsigned32,
|
|
pingProbeHistoryResponse Unsigned32,
|
|
pingProbeHistoryStatus OperationResponseStatus,
|
|
pingProbeHistoryLastRC Integer32,
|
|
pingProbeHistoryTime DateAndTime
|
|
}
|
|
|
|
pingProbeHistoryIndex OBJECT-TYPE
|
|
SYNTAX Unsigned32 (1..'ffffffff'h)
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An entry in this table is created when the result of
|
|
a ping probe is determined. The initial 2 instance
|
|
identifier index values identify the pingCtlEntry
|
|
that a probe result (pingProbeHistoryEntry) belongs
|
|
to.
|
|
|
|
An implementation MUST start assigning
|
|
pingProbeHistoryIndex values at 1 and wrap after
|
|
exceeding the maximum possible value as defined by
|
|
the limit of this object ('ffffffff'h)."
|
|
::= { pingProbeHistoryEntry 1 }
|
|
|
|
pingProbeHistoryResponse OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
UNITS "milliseconds"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The amount of time measured in milliseconds from when
|
|
a probe was sent to when its response was received or
|
|
when it timed out. The value of this object is reported
|
|
as 0 when it is not possible to transmit a probe."
|
|
::= { pingProbeHistoryEntry 2 }
|
|
|
|
pingProbeHistoryStatus OBJECT-TYPE
|
|
SYNTAX OperationResponseStatus
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The result of a particular probe done by a remote host."
|
|
::= { pingProbeHistoryEntry 3 }
|
|
|
|
pingProbeHistoryLastRC OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The last implementation method specific reply code received.
|
|
If the ICMP Echo capability is being used then a successful
|
|
probe ends when an ICMP response is received that contains
|
|
the code ICMP_ECHOREPLY(0). The ICMP responses are defined
|
|
normally in the ip_icmp include file."
|
|
::= { pingProbeHistoryEntry 4 }
|
|
|
|
pingProbeHistoryTime OBJECT-TYPE
|
|
SYNTAX DateAndTime
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Timestamp for when this probe result was determined."
|
|
::= { pingProbeHistoryEntry 5 }
|
|
|
|
-- Notification Definition section
|
|
|
|
pingProbeFailed NOTIFICATION-TYPE
|
|
OBJECTS {
|
|
pingCtlTargetAddressType,
|
|
pingCtlTargetAddress,
|
|
pingResultsOperStatus,
|
|
pingResultsIpTargetAddressType,
|
|
pingResultsIpTargetAddress,
|
|
pingResultsMinRtt,
|
|
pingResultsMaxRtt,
|
|
pingResultsAverageRtt,
|
|
pingResultsProbeResponses,
|
|
pingResultsSentProbes,
|
|
pingResultsRttSumOfSquares,
|
|
pingResultsLastGoodProbe
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Generated when a probe failure is detected when the
|
|
corresponding pingCtlTrapGeneration object is set to
|
|
probeFailure(0) subject to the value of
|
|
pingCtlTrapProbeFailureFilter. The object
|
|
pingCtlTrapProbeFailureFilter can be used to specify the
|
|
number of successive probe failures that are required
|
|
before this notification can be generated."
|
|
::= { pingNotifications 1 }
|
|
|
|
pingTestFailed NOTIFICATION-TYPE
|
|
OBJECTS {
|
|
pingCtlTargetAddressType,
|
|
pingCtlTargetAddress,
|
|
pingResultsOperStatus,
|
|
pingResultsIpTargetAddressType,
|
|
pingResultsIpTargetAddress,
|
|
pingResultsMinRtt,
|
|
pingResultsMaxRtt,
|
|
pingResultsAverageRtt,
|
|
pingResultsProbeResponses,
|
|
pingResultsSentProbes,
|
|
pingResultsRttSumOfSquares,
|
|
pingResultsLastGoodProbe
|
|
}
|
|
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Generated when a ping test is determined to have failed
|
|
when the corresponding pingCtlTrapGeneration object is
|
|
set to testFailure(1). In this instance
|
|
pingCtlTrapTestFailureFilter should specify the number of
|
|
probes in a test required to have failed in order to
|
|
consider the test as failed."
|
|
::= { pingNotifications 2 }
|
|
|
|
pingTestCompleted NOTIFICATION-TYPE
|
|
OBJECTS {
|
|
pingCtlTargetAddressType,
|
|
pingCtlTargetAddress,
|
|
pingResultsOperStatus,
|
|
pingResultsIpTargetAddressType,
|
|
pingResultsIpTargetAddress,
|
|
pingResultsMinRtt,
|
|
pingResultsMaxRtt,
|
|
pingResultsAverageRtt,
|
|
pingResultsProbeResponses,
|
|
pingResultsSentProbes,
|
|
pingResultsRttSumOfSquares,
|
|
pingResultsLastGoodProbe
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Generated at the completion of a ping test when the
|
|
corresponding pingCtlTrapGeneration object is set to
|
|
testCompletion(4)."
|
|
::= { pingNotifications 3 }
|
|
|
|
-- 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,
|
|
pingNotificationsGroup
|
|
}
|
|
GROUP pingTimeStampGroup
|
|
DESCRIPTION
|
|
"This group is mandatory for implementations that have
|
|
access to a system clock and are capable of setting
|
|
the values for DateAndTime objects. It is RECOMMENDED
|
|
that when this group is not supported that the values
|
|
for the objects in this group be reported as
|
|
'0000000000000000'H."
|
|
|
|
OBJECT pingMaxConcurrentRequests
|
|
MIN-ACCESS read-only
|
|
DESCRIPTION
|
|
"The agent is not required to support set
|
|
operations to this object."
|
|
|
|
OBJECT pingCtlStorageType
|
|
MIN-ACCESS read-only
|
|
DESCRIPTION
|
|
"Write access is not required. It is also allowed
|
|
for implementations to support only the volatile
|
|
StorageType enumeration."
|
|
|
|
OBJECT pingCtlType
|
|
MIN-ACCESS read-only
|
|
DESCRIPTION
|
|
"Write access is not required. In addition, the only
|
|
value that MUST be supported by an implementation is
|
|
pingIcmpEcho."
|
|
|
|
OBJECT pingCtlByPassRouteTable
|
|
MIN-ACCESS read-only
|
|
DESCRIPTION
|
|
"This object is not required by implementations that
|
|
are not capable of its implementation. The function
|
|
represented by this object is implementable if the
|
|
setsockopt SOL_SOCKET SO_DONTROUTE option is
|
|
supported."
|
|
|
|
OBJECT pingCtlSourceAddressType
|
|
SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) }
|
|
MIN-ACCESS read-only
|
|
DESCRIPTION
|
|
"This object is not required by implementations that
|
|
are not capable of binding the send socket with a
|
|
source address. An implementation is only required to
|
|
support IPv4 and IPv6 addresses."
|
|
|
|
OBJECT pingCtlSourceAddress
|
|
SYNTAX InetAddress (SIZE(0|4|16))
|
|
MIN-ACCESS read-only
|
|
DESCRIPTION
|
|
"This object is not required by implementations that
|
|
are not capable of binding the send socket with a
|
|
source address. An implementation is only required to
|
|
support IPv4 and globally unique IPv6 addresses."
|
|
|
|
OBJECT pingCtlIfIndex
|
|
MIN-ACCESS read-only
|
|
DESCRIPTION
|
|
"Write access is not required. When write access is
|
|
not supported return a 0 as the value of this object.
|
|
A value of 0 means that the function represented by
|
|
this option is not supported."
|
|
|
|
OBJECT pingCtlDSField
|
|
MIN-ACCESS read-only
|
|
DESCRIPTION
|
|
"Write access is not required. When write access is
|
|
not supported return a 0 as the value of this object.
|
|
A value of 0 means that the function represented by
|
|
this option is not supported."
|
|
|
|
OBJECT pingResultsIpTargetAddressType
|
|
SYNTAX InetAddressType { unknown(0), ipv4(1), ipv6(2) }
|
|
DESCRIPTION
|
|
"An implementation is only required to
|
|
support IPv4 and IPv6 addresses."
|
|
|
|
OBJECT pingResultsIpTargetAddress
|
|
SYNTAX InetAddress (SIZE(0|4|16))
|
|
DESCRIPTION
|
|
"An implementation is only required to
|
|
support IPv4 and globally unique IPv6 addresses."
|
|
|
|
::= { pingCompliances 1 }
|
|
|
|
-- MIB groupings
|
|
|
|
pingGroup OBJECT-GROUP
|
|
OBJECTS {
|
|
pingMaxConcurrentRequests,
|
|
pingCtlTargetAddressType,
|
|
pingCtlTargetAddress,
|
|
pingCtlDataSize,
|
|
pingCtlTimeOut,
|
|
pingCtlProbeCount,
|
|
pingCtlAdminStatus,
|
|
pingCtlDataFill,
|
|
pingCtlFrequency,
|
|
pingCtlMaxRows,
|
|
pingCtlStorageType,
|
|
pingCtlTrapGeneration,
|
|
pingCtlTrapProbeFailureFilter,
|
|
pingCtlTrapTestFailureFilter,
|
|
pingCtlType,
|
|
pingCtlDescr,
|
|
pingCtlByPassRouteTable,
|
|
pingCtlSourceAddressType,
|
|
pingCtlSourceAddress,
|
|
pingCtlIfIndex,
|
|
pingCtlDSField,
|
|
pingCtlRowStatus,
|
|
pingResultsOperStatus,
|
|
pingResultsIpTargetAddressType,
|
|
pingResultsIpTargetAddress,
|
|
pingResultsMinRtt,
|
|
pingResultsMaxRtt,
|
|
pingResultsAverageRtt,
|
|
pingResultsProbeResponses,
|
|
pingResultsSentProbes,
|
|
pingResultsRttSumOfSquares,
|
|
pingProbeHistoryResponse,
|
|
pingProbeHistoryStatus,
|
|
pingProbeHistoryLastRC
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The group of objects that comprise the remote ping
|
|
capability."
|
|
::= { pingGroups 1 }
|
|
|
|
pingTimeStampGroup OBJECT-GROUP
|
|
OBJECTS {
|
|
pingResultsLastGoodProbe,
|
|
pingProbeHistoryTime
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The group of DateAndTime objects."
|
|
::= { pingGroups 2 }
|
|
|
|
pingNotificationsGroup NOTIFICATION-GROUP
|
|
NOTIFICATIONS {
|
|
pingProbeFailed,
|
|
pingTestFailed,
|
|
pingTestCompleted
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The notification which are required to be supported by
|
|
implementations of this MIB."
|
|
::= { pingGroups 3 }
|
|
|
|
END
|