-- ********************************************************************** -- -- Name: 3Com Remote Poll MIB -- -- History Date Reason for Change -- -- 1.00 1997 Issued as 3Com RFC. -- 1.01 5 June 98 Clarified desciptions to return badValue. -- -- ********************************************************************** -- Copyright (c) 3Com Corporation. All Rights Reserved. -- ********************************************************************** A3COM0019-RMON-REMOTE-POLL DEFINITIONS ::= BEGIN IMPORTS remotePoll FROM A3COM0027-RMON-EXTENSIONS DisplayString FROM RFC1213-MIB EntryStatus FROM RMON-MIB OBJECT-TYPE FROM RFC-1212 TRAP-TYPE FROM RFC-1215 ; -- ----------------------------------------------------------------------------- -- RMON Extensions Group. -- ----------------------------------------------------------------------------- remPollTable OBJECT-TYPE SYNTAX SEQUENCE OF RemPollTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table is used to provide remote device monitoring facilities. This table allows a list of network devices to be set up and polled regularly (or only once) by a variety of protocols. The table can be configured to inform the management station(s) of devices that are not responding to polls or that have started to respond after a period of silence." ::= {remotePoll 1} remPollTableEntry OBJECT-TYPE SYNTAX RemPollTableEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table used to define device monitoring." INDEX {remPollIndex} ::= {remPollTable 1} RemPollTableEntry ::= SEQUENCE { remPollIndex INTEGER, remPollIfIndex INTEGER, remPollAddress DisplayString (SIZE(0..50)), remPollProtocol INTEGER, remPollTimeout TimeTicks, remPollAttempts INTEGER, remPollPeriod INTEGER, remPollLastRequest TimeTicks, remPollLastReply TimeTicks, remPollInformation DisplayString (SIZE(0..255)), remPollSuccessEventIndex INTEGER, remPollFailureEventIndex INTEGER, remPollOwner DisplayString, remPollStatus EntryStatus } remPollIndex OBJECT-TYPE SYNTAX INTEGER (1..65535) ACCESS not-accessible STATUS mandatory DESCRIPTION "Unique identifier of a row in the Poll Table. This index should be treated in the same way as indices of other RMON tables. The actual number of rows that can be created on any particular device depends on the memory and processing resources available at the time." ::= {remPollTableEntry 1} remPollIfIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "Identifies the entry in the ifTable which is to be used as the source of the poll packet. This object may not be modified if the associated remPollStatus object is equal to valid(1)." ::= {remPollTableEntry 2} remPollAddress OBJECT-TYPE SYNTAX DisplayString (SIZE(0..50)) ACCESS read-write STATUS mandatory DESCRIPTION "This DisplayString is the network address of the device to monitor. Typically this is an IP, MAC or IPX address. The following formats can be used. IP nnn.nnn.nnn.nnn - dotted format MAC AABBCCDDEEFF - hex notation IPX AABBCCDD:AABBCCDDEEFF - network : node If the format is unrecognised then a badValue error is returned. This object may not be modified if the associated remPollStatus object is equal to valid(1)." ::= {remPollTableEntry 3} remPollProtocol OBJECT-TYPE SYNTAX INTEGER { unknown (1), ip (2), ipx (3), netBIOS (4), appleTalk (5), amp (6), llc(7) } ACCESS read-write STATUS mandatory DESCRIPTION "This defines the protocol with which to monitor the device. Writing an address to the remPollAddress field causes a default remPollProtocol value to be setup. The default value is derived from the format/content of the address. If the requested protocol is not supported or is not compatible with the remPollAddress, then an error is returned when an attempt is made to set the remPollStatus to valid. If the requested protocol is not supported then a badValue error should be returned. If the requested protocol is not compatible with the remPollAddress then an error is returned when an attempt is made to set the remPollStatus to valid. This object may not be modified if the associated remPollStatus object is equal to valid(1)." ::= {remPollTableEntry 4} remPollTimeout OBJECT-TYPE SYNTAX TimeTicks ACCESS read-write STATUS mandatory DESCRIPTION "The time-out value in hundreds of a second for each request packet. If a device replies to a request packet within the specified time-out, then the poll is judged to be successful. This object may not be modified if the associated remPollStatus object is equal to valid(1)." ::= {remPollTableEntry 6} remPollAttempts OBJECT-TYPE SYNTAX INTEGER (1..255) ACCESS read-write STATUS mandatory DESCRIPTION "The number of unsuccessful requests necessary before deciding that the device is definitely not responding. This object may not be modified if the associated remPollStatus object is equal to valid(1)." ::= {remPollTableEntry 7} remPollPeriod OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-write STATUS mandatory DESCRIPTION "The device will be polled every remPollPeriod seconds. The first poll is sent as soon as the remPollStatus is set to valid(1). To prevent overlapping polls, the value of remPollPeriod must be greater than 2*remPollTimeout*remPollAttempts - otherwise an error is returned when the row is set to valid. A poll consists of sending up to remPollAttempts request packets to the device. A reply to any of the request packets is sufficient to declare the poll successful (and stop further requests from being sent). A poll is deemed unsuccessful if no replies have been received after remPollTimeout*remPollAttempts seconds from the start of the poll. Note: each request packet must contain some sequence information so that late replies do not result in a successful poll. The first unsuccessful poll causes a PollFailure event to be generated - further unsuccessful polls do not generate events. The next successful poll to the device causes a PollSuccess event to be generated - further successful polls do not generate events. The pattern then repeats. The value 0 has a special value meaning of only-once When remPollStatus is set to valid(1), a single poll is started immediately. There are no events generated. whether the poll has been judged successful or unsuccessful. The results of the poll(s) can be monitored by reading the remPollLastRequest and remPolLastReply fields. This object may not be modified if the associated remPollStatus object is equal to valid(1)." ::= {remPollTableEntry 8} remPollLastRequest OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "This is the value of sysUpTime at which the most recent request packet was sent. To avoid temporary inconsistancies between the values of remPollLastRequest and remPollLastReply. The value of remPollLastRequest should not be updated until the end of a poll. At which point (a) remPollLastRequest is updated to the sysUpTime when the most recent request packet was sent and (b) if the poll was successful then remPollLastReply is also updated." ::= {remPollTableEntry 9} remPollLastReply OBJECT-TYPE SYNTAX TimeTicks ACCESS read-only STATUS mandatory DESCRIPTION "This is the value of sysUpTime at which the most recent reply packet was received. The device was responding at this time. The relationship of sysUpTime, remPollLastRequest and remPollLastReply provide the following information: (sysUpTime - remPollLastRequest) = time since last request was made. (sysUpTime - remPollLastReply) = time since device last responded. if( remPollLastReply => remPollLastRequest) then (remPollLastReply - remPollLastRequest) = round trip time of last request else if( remPollLastReply