PDN-DIAGNOSTICS-MIB DEFINITIONS ::= BEGIN -- Version : 4.0 -- Enterprise diagnostic mib -- Copyright (C) 2000 Paradyne Corporation. -- Created by : Prakash Easwar -- Last Updated 05/02/2000 -- Last Updated 06/07/2000 Dragana Gough -- Last Updated 10/05/2001 Jesus A. Pinto IMPORTS IpAddress FROM RFC1155-SMI OBJECT-TYPE FROM RFC-1212 TRAP-TYPE FROM RFC-1215 ifIndex FROM RFC1213-MIB RowStatus, DisplayString, AutonomousType FROM SNMPv2-TC pdn-diagnostics FROM PDN-HEADER-MIB ifTestId FROM IF-MIB ; -- -- The HotWire Diagnostics MIB -- -- This MIB provides an NMS to trigger a diagnostic test -- The tests that can be performed are grouped into the following -- categories : -- 1. Device Tests ( Self, Test Reset ...) -- 2. interface related tests (bert test, packet loopback ...) -- 3. application based diagnostic tests (Ping, TraceRoute ...) -- -- Interface related tests (2) are an exception. An NMS will use -- the ifTestTable of RFC1573 to start these tests. However if any -- of the interface related tests need to have inputs. those tests -- will use the objects defined under the ifTestInput group. -- Hence in these cases implementation of the following groups -- are mandatory. -- ifDeviceInput -- ifDeviceResults - This group is mandatory if more specific -- information about the results is required -- (other than ifTestResult - RFC 1573,ifTestTable) -- to be sent back to an NMS. -- Hence in these cases it is left to the -- implementor of the device to put -- the OID of the object or results table -- containing such specifics to be put -- in ifTestCode (RFC 1573, ifTestTable). -- Note that the above mentioned groups compliment the ifTestTable -- of RFC 1573 -- -- if the device supports device tests (1), the devControl.mib needs -- to be implemented. In addition the following group needs to be -- implemented -- deviceTestInput -- deviceTestResults -- -- if the device supports application tests (1). implementation of the -- following groups are mandatory. -- applTests -- -- History -- -- 05/02/2000 -- -- Removed integer ranges as those should be designated in the -- product documentation -- -- 06/07/2000 -- -- Corrected spelling errors in Probe1,2,3, etc. -- -- 10/04/2001 -- -- Added a new Interface test called BLERT (Block Error Rate Test) -- which is intended for MVL. diagTestMIBObjects OBJECT IDENTIFIER ::= { pdn-diagnostics 1 } diagTestMIBTraps OBJECT IDENTIFIER ::= { pdn-diagnostics 2 } diagIfTest OBJECT IDENTIFIER ::= { diagTestMIBObjects 1 } diagApplTest OBJECT IDENTIFIER ::= { diagTestMIBObjects 2 } diagTest OBJECT IDENTIFIER ::= { diagTestMIBObjects 3 } -- Table objects under diagIfTest -- The Loopback Test Objects ifLoopbackTestTable OBJECT-TYPE SYNTAX SEQUENCE OF IfLoopbackTestEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains input and results of a packet loopback test. This table is indexed by ifIndex. This is a interface related test. There can be only one test running per interface. This table should be used in conjunction with ifTestTable(Rfc 1573) with all the semantics of ifTestTable." ::= { diagIfTest 1 } ifLoopbackTestEntry OBJECT-TYPE SYNTAX IfLoopbackTestEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry containing objects for test input and result for packet loopback test" INDEX { ifIndex } ::= { ifLoopbackTestTable 1 } IfLoopbackTestEntry ::= SEQUENCE { loopbackTestInputNumCycles INTEGER, loopbackTestResultsPktsSent INTEGER, loopbackTestResultsPktsRcvdOK INTEGER, loopbackTestResultsPktsRcvdErr INTEGER, loopbackTestResultsPktsNotRcvd INTEGER, loopbackTestResultsPktErrorRate DisplayString, loopbackTestResultsErrSecs INTEGER, loopbackTestResultsSvrErrSecs INTEGER, loopbackTestResultsElpTime INTEGER } loopbackTestInputNumCycles OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object corresponds the number of cycles the test to be run for. One cycle corresponds to a 15 second interval. The default value for this object is 40." ::= { ifLoopbackTestEntry 1 } loopbackTestResultsPktsSent OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object corresponds to the number of packets sent" ::= { ifLoopbackTestEntry 2 } loopbackTestResultsPktsRcvdOK OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object corresponds to the number of packets which were received without any error" ::= { ifLoopbackTestEntry 3 } loopbackTestResultsPktsRcvdErr OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object corresponds to the number of packets which were received with errors" ::= { ifLoopbackTestEntry 4 } loopbackTestResultsPktsNotRcvd OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object corresponds to the number of packets which were sent but not received" ::= { ifLoopbackTestEntry 5 } loopbackTestResultsPktErrorRate OBJECT-TYPE SYNTAX DisplayString (SIZE (1..32)) ACCESS read-only STATUS mandatory DESCRIPTION "Reflects the error rate of the loopback test. this string will represent a floating point number of the form [ErrRate][eE][+-][ErrRateBase] where ErrRate and ErrRateBase are integers. In Other Words ErrRate * [10^ -ErrRateBase] shown below are example of the values returned. 123456E-5 = 1.23456 344567e-6 = 0.344567" ::= { ifLoopbackTestEntry 6 } loopbackTestResultsErrSecs OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object corresponds to the number of errored seconds" ::= { ifLoopbackTestEntry 7 } loopbackTestResultsSvrErrSecs OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object corresponds to the number of severely errored seconds" ::= { ifLoopbackTestEntry 8 } loopbackTestResultsElpTime OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object corresponds to the number of seconds elapsed since the start of the test." ::= { ifLoopbackTestEntry 9 } -- The BERT group ifBERTObjectsTable OBJECT-TYPE SYNTAX SEQUENCE OF IfBERTObjectsEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains the objects for Bit Error Rate Test. This table is indexed by ifIndex." ::= { diagIfTest 2 } ifBERTObjectsEntry OBJECT-TYPE SYNTAX IfBERTObjectsEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An Entry containing objects of BERT." INDEX { ifIndex } ::= { ifBERTObjectsTable 1 } IfBERTObjectsEntry ::= SEQUENCE { ifBERTTestDuration INTEGER, ifBERTElapsedTime INTEGER, ifBERTDownSyncUP INTEGER, ifBERTUpSyncUP INTEGER, ifBERTSegmentsSent INTEGER, ifBERTDownMBitsRcvd INTEGER, ifBERTUpMBitsRcvd INTEGER, ifBERTDownBitErrDetected INTEGER, ifBERTUpBitErrDetected INTEGER, ifBERTDownBitErrRate DisplayString, ifBERTUpBitErrRate DisplayString, ifBERTDownErroredSecs INTEGER, ifBERTUpErroredSecs INTEGER, ifBERTDownLineRate INTEGER, ifBERTUpLineRate INTEGER, ifBERTDownMargin INTEGER, ifBERTUpMargin INTEGER } ifBERTTestDuration OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object represents the test duration in seconds." ::= {ifBERTObjectsEntry 1} ifBERTElapsedTime OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object represents the elapsed time in seconds." ::= {ifBERTObjectsEntry 2} ifBERTDownSyncUP OBJECT-TYPE SYNTAX INTEGER { yes (1), no (2) } ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates whether Downstream sync is enabled ." ::= {ifBERTObjectsEntry 3} ifBERTUpSyncUP OBJECT-TYPE SYNTAX INTEGER { yes (1), no (2) } ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates whether upstream sync is enabled." ::= {ifBERTObjectsEntry 4} ifBERTSegmentsSent OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object represents the number of segments sent during the test" ::= {ifBERTObjectsEntry 5} ifBERTDownMBitsRcvd OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This represents the number of million bits rcvd downstream." ::= {ifBERTObjectsEntry 6} ifBERTUpMBitsRcvd OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This represents the number of million bits rcvd upstream." ::= {ifBERTObjectsEntry 7} ifBERTDownBitErrDetected OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This represents the number of bit errors detected downstream." ::= {ifBERTObjectsEntry 8} ifBERTUpBitErrDetected OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This represents the number of bit errors detected upstream." ::= {ifBERTObjectsEntry 9} ifBERTDownBitErrRate OBJECT-TYPE SYNTAX DisplayString (SIZE (1..32)) ACCESS read-only STATUS mandatory DESCRIPTION "This string will represent a floating point number of the form [Er rRate] [eE] [+-] [ErrRatebase] where ErrTare and errRateBase are integers." ::= {ifBERTObjectsEntry 10} ifBERTUpBitErrRate OBJECT-TYPE SYNTAX DisplayString (SIZE (1..32)) ACCESS read-only STATUS mandatory DESCRIPTION "This object reflects the error rate of BERT in Upstream direction. This string will represent a floating point number of the form [ErrRate] [eE] [+-] [ErrRatebase] where ErrTare and errRateBase are integers." ::= {ifBERTObjectsEntry 11} ifBERTDownErroredSecs OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This represents number of errored seconds downstream. Errored second is a second in which there is at least 1 block error." ::= {ifBERTObjectsEntry 12} ifBERTUpErroredSecs OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This represents number of errored seconds upstream. Errored second is a second in which there is at least 1 block error." ::= {ifBERTObjectsEntry 13} ifBERTDownLineRate OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This represents the downstream line rate in KBPS" ::= {ifBERTObjectsEntry 14} ifBERTUpLineRate OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This represents the Upstream line rate in KBPS" ::= {ifBERTObjectsEntry 15} ifBERTDownMargin OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This represents the Downstream margin in decibels (DB)." ::= {ifBERTObjectsEntry 16} ifBERTUpMargin OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This represents the upstream margin in decibels (DB)." ::= {ifBERTObjectsEntry 17} -- The BLERT group ifBLERTObjectsTable OBJECT-TYPE SYNTAX SEQUENCE OF IfBLERTObjectsEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains the objects for Block Error Rate Test (BLERT). This table is indexed by ifIndex." ::= { diagIfTest 3 } ifBLERTObjectsEntry OBJECT-TYPE SYNTAX IfBLERTObjectsEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An Entry containing objects of BLERT." INDEX { ifIndex } ::= { ifBLERTObjectsTable 1 } IfBLERTObjectsEntry ::= SEQUENCE { ifBLERTTestDuration INTEGER, ifBLERTElapsedTime INTEGER, ifBLERTTxSeqCount INTEGER, ifBLERTRxSeqCount INTEGER, ifBLERTRxGoodFrames INTEGER, ifBLERTTxGoodFrames INTEGER, ifBLERTRxBadFrames INTEGER, ifBLERTTxBadFrames INTEGER, ifBLERTDnLineRate INTEGER, ifBLERTUpLineRate INTEGER } ifBLERTTestDuration OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object represents the test duration in seconds." ::= {ifBLERTObjectsEntry 1} ifBLERTElapsedTime OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object represents the elapsed time in seconds since the test started." ::= {ifBLERTObjectsEntry 2} ifBLERTTxSeqCount OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the next Tx sequence." ::= {ifBLERTObjectsEntry 3} ifBLERTRxSeqCount OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the next Rx sequence." ::= {ifBLERTObjectsEntry 4} ifBLERTRxGoodFrames OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the number of good frames received." ::= {ifBLERTObjectsEntry 5} ifBLERTTxGoodFrames OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the number of good frames transmitted." ::= {ifBLERTObjectsEntry 6} ifBLERTRxBadFrames OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the number of bad frames received." ::= {ifBLERTObjectsEntry 7} ifBLERTTxBadFrames OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the number of bad frames transmitted." ::= {ifBLERTObjectsEntry 8} ifBLERTDnLineRate OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the downstream line rate." ::= {ifBLERTObjectsEntry 9} ifBLERTUpLineRate OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object indicates the upstream line rate." ::= {ifBLERTObjectsEntry 10} -- The applTests group. Implementation of all objects in this group is -- is mandatory applMaxNumberOfTests OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object identifies the maximum number of application based tests that can be simultaneously instantiated on the device." ::= { diagApplTest 1 } applCurrentNumberOfTests OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object identifies the current number of application based tests that are running on the device." ::= { diagApplTest 2 } applStopAllTests OBJECT-TYPE SYNTAX INTEGER { noOp (1), stop (2), stopAndClear (3) } ACCESS read-write STATUS mandatory DESCRIPTION "The value of this object corresponds to stop all application based tests on the device. noOp -- no operation stop -- all the application tests will be stopped but current test results are still available stopAndClear -- all the application tests will be stoped and the results are cleared also" ::= { diagApplTest 3 } applNewTestId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This value of this object corresponds to getting a magic number to start an application based test. The magic number is used as an index to create a row for the diagApplTestTable. If no new rows can be created, this object will have a value of 0." ::= { diagApplTest 4 } -- applTestStatusTable: This table controls all the application tests applTestStatusTable OBJECT-TYPE SYNTAX SEQUENCE OF ApplTestStatusEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table controls all the application tests. It defines a test type, starts a test, and clears a test." ::= { diagApplTest 5 } applTestStatusEntry OBJECT-TYPE SYNTAX ApplTestStatusEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry containing objects for invoking application based tests" INDEX { applTestId } ::= { applTestStatusTable 1 } ApplTestStatusEntry ::= SEQUENCE { applTestId INTEGER, applTestType AutonomousType, applTestStatus INTEGER, applTestErrorCode INTEGER, applTestOwner DisplayString, applTestRowStatus RowStatus } applTestId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "A unique ID to identify each application test." ::= { applTestStatusEntry 1 } applTestType OBJECT-TYPE SYNTAX AutonomousType ACCESS read-write STATUS mandatory DESCRIPTION "This object defines the application test type." ::= { applTestStatusEntry 2 } applTestStatus OBJECT-TYPE SYNTAX INTEGER { none (1), inProgress (2), success (3), failed (4), abort (5) } ACCESS read-only STATUS mandatory DESCRIPTION "This object shows the current status of an application test. none - indicates waiting for test parameters. inProgress - indicates the test is in process. success - indicates the test is completed. failed - indicates the test is failed. abort - indicates the test was aborted" ::= { applTestStatusEntry 3 } applTestErrorCode OBJECT-TYPE SYNTAX INTEGER { none (1), timeout (2), icmpError (3), systemError (4) } ACCESS read-only STATUS mandatory DESCRIPTION "This object shows the reason for a test failure." ::= { applTestStatusEntry 4 } applTestOwner OBJECT-TYPE SYNTAX DisplayString (SIZE (1..40)) ACCESS read-write STATUS mandatory DESCRIPTION "The network manager who has started the test" ::= { applTestStatusEntry 5 } applTestRowStatus OBJECT-TYPE SYNTAX RowStatus ACCESS read-write STATUS mandatory DESCRIPTION "This object is used to create a new row or delete an existing row for an application test." ::= { applTestStatusEntry 6 } -- applPintTestTable: This table is for Ping test applPingTestTable OBJECT-TYPE SYNTAX SEQUENCE OF ApplPingTestEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains objects which allow network manager to ping a destination." ::= { diagApplTest 6 } applPingTestEntry OBJECT-TYPE SYNTAX ApplPingTestEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains the input parameters for a ping test and the results of the ping test." INDEX { applPingTestId } ::= { applPingTestTable 1} ApplPingTestEntry ::= SEQUENCE { applPingTestId INTEGER, applPingTestIpAddress IpAddress, applPingTestSourceIpAddr IpAddress, applPingTestPacketSize INTEGER, applPingTestTimeout INTEGER, applPingTestMaxPings INTEGER, applPingTestPktsSent INTEGER, applPingTestPktsRecv INTEGER, applPingTestMinTime INTEGER, applPingTestMaxTime INTEGER, applPingTestAvgTime INTEGER, applPingTestDomain INTEGER, applPingTestIfIndex INTEGER } applPingTestId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "A unique ID to identify each application test." ::= { applPingTestEntry 1 } applPingTestIpAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "The IP address to be pinged." ::= { applPingTestEntry 2 } applPingTestSourceIpAddr OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "The Source IP address where we are pinging from. This is an optional object for some devices. See operational specification for its use." ::= { applPingTestEntry 3 } applPingTestPacketSize OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object corresponds to the size of the packet (in bytes) which will be sent during the Ping test. The default value for this object is 64 bytes" ::= { applPingTestEntry 4 } applPingTestTimeout OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object corresponds to a timeout value (in seconds) between Pings. The default value for this object is 5 seconds" ::= { applPingTestEntry 5 } applPingTestMaxPings OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object corresponds to the maximum number of times the device should Ping for the destination. The default value for this object is 10" ::= { applPingTestEntry 6 } applPingTestPktsSent OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object corresponds to the total number of packets sent." ::= { applPingTestEntry 7 } applPingTestPktsRecv OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object corresponds to the total number of packets received without error" ::= { applPingTestEntry 8 } applPingTestMinTime OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The minimum round trip time." ::= { applPingTestEntry 9 } applPingTestMaxTime OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The maximum round trip time." ::= { applPingTestEntry 10 } applPingTestAvgTime OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The average round trip time." ::= { applPingTestEntry 11 } applPingTestDomain OBJECT-TYPE SYNTAX INTEGER { noop (1), mgmt (2), service (3) } ACCESS read-write STATUS mandatory DESCRIPTION "This object specifies the destination ip address's domain. The Default is service domain. Not allowed if source ip address is entered. This is an optional object for some devices. See operational specification its use." ::= { applPingTestEntry 12 } applPingTestIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object specifies the interface over which the ping test will take place. " ::= { applPingTestEntry 13 } -- applTracerouteConfigTable: to enter the parameters for a traceroute test applTracerouteConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF ApplTracerouteConfigEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains objects which allow network manager to enter the parameters of a traceroute test." ::= { diagApplTest 7 } applTracerouteConfigEntry OBJECT-TYPE SYNTAX ApplTracerouteConfigEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains the input parameters for a traceroute test." INDEX { applTracerouteTestId } ::= { applTracerouteConfigTable 1} ApplTracerouteConfigEntry ::= SEQUENCE { applTracerouteTestId INTEGER, applTracerouteIpAddress IpAddress, applTracerouteSourceIpAddr IpAddress, applTraceroutePktsSize INTEGER, applTracerouteTimeout INTEGER, applTracerouteMaxHops INTEGER, applTracerouteDomain INTEGER, applTracerouteIfIndex INTEGER } applTracerouteTestId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "A unique ID to identify each application test." ::= { applTracerouteConfigEntry 1 } applTracerouteIpAddress OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "The destination IP address of a traceroute test." ::= { applTracerouteConfigEntry 2 } applTracerouteSourceIpAddr OBJECT-TYPE SYNTAX IpAddress ACCESS read-write STATUS mandatory DESCRIPTION "The source IP address of where the traceroute test started. This is an optional object for some devices. See operational specification for its use." ::= { applTracerouteConfigEntry 3 } applTraceroutePktsSize OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object corresponds to the size of the packet (in bytes) which will be sent during the traceroute test. Please refer to product specific documentation for the default values supported" ::= { applTracerouteConfigEntry 4 } applTracerouteTimeout OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object corresponds to a timeout value (in seconds) of a traceroute test. The default value for this object is 5 seconds" ::= { applTracerouteConfigEntry 5 } applTracerouteMaxHops OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object corresponds to the maximum number of hops to reach the destination. The default value for this object is device specific. See Operational Specifications" ::= { applTracerouteConfigEntry 6 } applTracerouteDomain OBJECT-TYPE SYNTAX INTEGER { noop (1), mgmt (2), service (3) } ACCESS read-write STATUS mandatory DESCRIPTION "This object specifies the destination ip address's domain. The Default is service domain. Not allowed if source ip address is entered. This is an optional object for some devices. See operational specification its use." ::= { applTracerouteConfigEntry 7 } applTracerouteIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object specifies the interface over which the trace-route test will take place. " ::= { applTracerouteConfigEntry 8 } -- Traceroute Results Table applTracerouteResultTable OBJECT-TYPE SYNTAX SEQUENCE OF ApplTracerouteResultEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains results of traceroute test." ::= { diagApplTest 8 } applTracerouteResultEntry OBJECT-TYPE SYNTAX ApplTracerouteResultEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry contains the objects for the traceroute test." INDEX { applTracerouteResultTestId, applTracerouteHopCount } ::= { applTracerouteResultTable 1 } ApplTracerouteResultEntry ::= SEQUENCE { applTracerouteResultTestId INTEGER, applTracerouteHopCount INTEGER, applTracerouteIpAddr IpAddress, applTraceroutePktSize INTEGER, applTracerouteProbe1RTT INTEGER, applTracerouteProbe2RTT INTEGER, applTracerouteProbe3RTT INTEGER } applTracerouteResultTestId OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "A unique ID to identify each application test." ::= { applTracerouteResultEntry 1 } applTracerouteHopCount OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object contains the number of hops to reach the gateway." ::= { applTracerouteResultEntry 2 } applTracerouteIpAddr OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "This object contains the IP address of the gateway." ::= { applTracerouteResultEntry 3 } applTraceroutePktSize OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object corresponds to the size of the packet (in bytes) which will be sent during the traceroute test. Please refer to product specific documentation for the default values supported" ::= { applTracerouteResultEntry 4 } applTracerouteProbe1RTT OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object contains the round trip time (rtt) of the first probe sent to the gateway. If the probe has a timeout the rtt is set to -1." ::= { applTracerouteResultEntry 5 } applTracerouteProbe2RTT OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object contains the round trip time (rtt) of the second probe sent to the gateway. If the probe has a timeout the rtt is set to -1." ::= { applTracerouteResultEntry 6 } applTracerouteProbe3RTT OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "This object contains the round trip time (rtt) of the third probe sent to the gateway. If the probe has a timeout the rtt is set to -1." ::= { applTracerouteResultEntry 7 } diagTestTrapEnable OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "This object is used to disable or enable TestOver and TestStart trap for all tests. It is bit sum and possible bit positions are 1 TestStart trap 2 TestOver trap" ::= { diagTest 1 } -- Traps diagApplTestStart TRAP-TYPE ENTERPRISE diagTestMIBTraps VARIABLES { ifIndex, applTestId, applTestType } DESCRIPTION "This trap signifies that an application test has been initiated." ::= 1 diagApplTestStop TRAP-TYPE ENTERPRISE diagTestMIBTraps VARIABLES { ifIndex, applTestId, applTestType, applTestStatus } DESCRIPTION "This trap signifies that an application test has completed. This trap compliments the diagApplTestStart trap." ::= 101 diagIfTestStart TRAP-TYPE ENTERPRISE diagTestMIBTraps VARIABLES { ifTestId } DESCRIPTION "This trap signifies that a diagnostic test has been initiated." ::= 2 diagIfTestOver TRAP-TYPE ENTERPRISE diagTestMIBTraps VARIABLES { ifTestId } DESCRIPTION "This trap signifies that a diagnostic test has completed. This trap compliments the diagIfTestStart trap" ::= 102 END