-- ***************************************************************** -- CISCO-SNAPSHOT-MIB.my: Cisco Snapshot MIB file -- -- August 1994, Jeffrey Johnson Sandra Durham Joel Bion -- -- Copyright (c) 1994-1996 by cisco Systems, Inc. -- All rights reserved. -- -- ***************************************************************** -- CISCO-SNAPSHOT-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Integer32 FROM SNMPv2-SMI RowStatus, TruthValue FROM SNMPv2-TC InterfaceIndex FROM IF-MIB ciscoMgmt FROM CISCO-SMI MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF CiscoNetworkProtocol, CiscoNetworkAddress FROM CISCO-TC; ciscoSnapshotMIB MODULE-IDENTITY LAST-UPDATED "9508150000Z" ORGANIZATION "Cisco Systems, Inc." CONTACT-INFO " Cisco Systems Customer Service Postal: 170 W Tasman Drive San Jose, CA 95134 USA Tel: +1 800 553-NETS E-mail: cs-snmp@cisco.com" DESCRIPTION "Snapshot routing MIB" REVISION "9508150000Z" DESCRIPTION "Specify a correct (non-negative) range for an index object. Also, correct typo which caused syntax conflict." REVISION "9503210000Z" DESCRIPTION "Miscellaneous updates to the MIB and capabilities." REVISION "9501110000Z" DESCRIPTION "Initial version of this MIB module." ::= { ciscoMgmt 19 } -- Snapshot routing provides easy solutions to two common problems: -- -- 1) The need to configure static routes for Dial on Demand Routing (DDR) -- interfaces. -- -- 2) The overhead of periodic updates for routing protocols to remote -- branch offices over dedicated serial lines. -- -- When snapshot routing is configured on an interface, it first allows -- normal routing updates to be sent across the interface for a short -- period of time. After this user configured period of activity, the -- routing updates are suspended, and the routes learned on the snapshot -- interface are 'frozen' in place, putting the interface into a 'frozen -- period', again user configurable. During this 'frozen' time, changes -- in network topology are typically not transmitted across the snapshot -- interface, although some network protocols provide the capability to -- transmit changes. -- -- The factors to consider in choosing to enable snapshot routing to an -- interface are: -- -- 1) The importance of obtaining quick notification of changes in the -- network topology at a remote site. -- 2) Whether or not you are using Dial on Demand routing from a remote -- site to reach a central site or using a dedicated serial link. -- -- If you are using a dedicated serial link, and wish to have -- up-to-the-minute topology information at a remote site, then snapshot -- routing is probably not appropriate for you. If, however, the network -- topology changes less frequently, or if full connectivity to all -- locations is not important to you, then snapshot routing (with -- possibly, a few static routes to 'key' remote locations that should -- always be available) will probably meet your needs well. -- -- If you are using dial on demand routing (DDR), then Snapshot routing -- is almost certainly an advantage. Before Snapshot routing, all -- 'desired' destinations needed to be configured with static routes. -- With Snapshot routing, it is possible to learn the set of remote -- routes dynamically, and then keep them available while the link is -- down, avoiding the configuration of any static routes. Again, if there -- are 'crucial' locations that must always be in the table, it may be -- best to configure them statically, to ensure constant availability, in -- case the desired location was temporarily down when the Snapshot route -- sharing activity was taking place. -- -- Snapshot routing is configured on a 'client/server' basis. One router -- on the interface is chosen as the 'client' router, and it determines -- active route-exchange and 'sleeping' times. ciscoSnapshotMIBObjects OBJECT IDENTIFIER ::= { ciscoSnapshotMIB 1 } ciscoSnapshotForceActive OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-write STATUS current DESCRIPTION "Forces the snapshot state to active for all entries of the ciscoSnapshotActivityTable whose ciscoSnapshotIfIndex value is specified as parameter. The interface associated with ciscoSnapshotIfIndex must be a client interface. Retrieval of this object will return the value of the ciscoSnapshotIfIndex that was last forced into the active state, or 0 if no interfaces have been forced into the active state since the router was reset" ::= { ciscoSnapshotMIBObjects 1 } ciscoSnapshotInterfaceTable OBJECT-TYPE SYNTAX SEQUENCE OF CiscoSnapshotInterfaceEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of Snapshot Routing configuration entries." ::= { ciscoSnapshotMIBObjects 2 } ciscoSnapshotInterfaceEntry OBJECT-TYPE SYNTAX CiscoSnapshotInterfaceEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A Snapshot Routing configuration entry. A management station wishing to create an entry should create the associated instance of the row status object. It should also modify, either in the same or in successive PDUs, the values for the other objects if the defaults are not appropriate. Once the appropriate instance of all the configuration objects have been created, either by an explicit SNMP set request or by default, the row status should be set to active to initiate the request. Note that this entire procedure may be initiated via a single set request which specifies a row status of createAndGo. In order to prevent inactive (notReady, or notInService) entries from clogging the table, entries will be aged out, but an entry will never be deleted within 5 minutes of creation." INDEX { ciscoSnapshotIfIndex } ::= { ciscoSnapshotInterfaceTable 1 } CiscoSnapshotInterfaceEntry ::= SEQUENCE { ciscoSnapshotIfIndex InterfaceIndex, ciscoSnapshotClient TruthValue, ciscoSnapshotDialer TruthValue, ciscoSnapshotActiveInterval Integer32, ciscoSnapshotQuietInterval Integer32, ciscoSnapshotRetryInterval Integer32, ciscoSnapshotIfUpAction INTEGER, ciscoSnapshotRowStatus RowStatus } ciscoSnapshotIfIndex OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The interface to which this entry pertains." ::= { ciscoSnapshotInterfaceEntry 1 } ciscoSnapshotClient OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "When true, this router is the client snapshot router on the interface. When false, this router is the server snapshot router on the interface." DEFVAL { true } ::= { ciscoSnapshotInterfaceEntry 2 } ciscoSnapshotDialer OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates whether or not snapshot routing on this interface uses Dial-on-Demand routing." DEFVAL { false } ::= { ciscoSnapshotInterfaceEntry 3 } ciscoSnapshotActiveInterval OBJECT-TYPE SYNTAX Integer32 (5..1000) UNITS "minutes" MAX-ACCESS read-create STATUS current DESCRIPTION "The amount of time during which routes may be exchanged between the client and server routers." DEFVAL { 5 } ::= { ciscoSnapshotInterfaceEntry 4 } ciscoSnapshotQuietInterval OBJECT-TYPE SYNTAX Integer32 (8..100000) UNITS "minutes" MAX-ACCESS read-create STATUS current DESCRIPTION "The amount of time during which routes are retained and frozen between active periods. An instance of this object may only be present if the value of the associated ciscoSnapshotClient object is true." DEFVAL { 8 } ::= { ciscoSnapshotInterfaceEntry 5 } ciscoSnapshotRetryInterval OBJECT-TYPE SYNTAX Integer32 UNITS "minutes" MAX-ACCESS read-only STATUS current DESCRIPTION "The amount of time to wait and retry a route exchange if an active period elapses with no routes being exchanged. For example, if an interface is down (or a DDR phone number is busy, or a DDR interface is unavailable) during the active interval, instead of waiting for the amount of time specified by ciscoSnapshotQuietTime to elapse before an attempt is made to exchange routing updates again, the attempt is made after the amount of time specified by this object has elapsed. This value is calculated automatically based on the ciscoSnapshotActiveInterval. An instance of this object may only be present if the value of the associated ciscoSnapshotClient object is true." ::= { ciscoSnapshotInterfaceEntry 6 } ciscoSnapshotIfUpAction OBJECT-TYPE SYNTAX INTEGER { goActive (1), noAction (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "This object controls the action that takes place when the interface associated with this entry transitions to the `up' state while snapshot routing on the interface is in quiet mode. A value of goActive will cause the immediate transition to the active state. A value of noAction will cause no such transition. Instead, the transition to the active state will occur normally when the current quiet period has expired. Going active immediately incurs extra routing protocol overhead, but allows a fresh set of routing updates be exchanged each time the line is brought up. This is useful in a Dial-on-Demand routing environment. An instance of this object may only be present if the value of the associated ciscoSnapshotClient object is true." DEFVAL { goActive } ::= { ciscoSnapshotInterfaceEntry 7 } ciscoSnapshotRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this table entry. Once the entry status is set to active, the snapshot routing process will be enabled for this interface." ::= { ciscoSnapshotInterfaceEntry 8 } ciscoSnapshotActivityTable OBJECT-TYPE SYNTAX SEQUENCE OF CiscoSnapshotActivityEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of snapshot routing activity entries." ::= { ciscoSnapshotMIBObjects 3 } ciscoSnapshotActivityEntry OBJECT-TYPE SYNTAX CiscoSnapshotActivityEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A snapshot routing activity entry. Entries in this table are added for active row entries in the ciscoSnapshotInterfaceTable. If a row entry in the ciscoSnapshotInterfaceTable is set to notInService, or deleted, associated entries in this table will be deleted. Note that if the associated row in the ciscoSnapshotInterfaceTable is for a server router, entries in this table will only be present when the server is actively involved in snapshot routing updates." INDEX { ciscoSnapshotIfIndex, ciscoSnapshotActivityIndex } ::= { ciscoSnapshotActivityTable 1 } CiscoSnapshotActivityEntry ::= SEQUENCE { ciscoSnapshotActivityIndex Integer32 (0..2147483647), ciscoSnapshotActivityState INTEGER, ciscoSnapshotActivityTimer Integer32, ciscoSnapshotExchangeTimer Integer32, ciscoSnapshotDialerMap Integer32, ciscoSnapshotSourceProtocol CiscoNetworkProtocol, ciscoSnapshotSourceAddress CiscoNetworkAddress, ciscoSnapshotProtocolsExchanged OCTET STRING } ciscoSnapshotActivityIndex OBJECT-TYPE SYNTAX Integer32 (0..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An index value that uniquely identifies a Snapshot Activity Entry on a given interface." ::= { ciscoSnapshotActivityEntry 1 } ciscoSnapshotActivityState OBJECT-TYPE SYNTAX INTEGER { active (1), quiet (2), serverPostActive (3), transitionToQuiet (4), transitionToActive (5), limbo (6) } MAX-ACCESS read-only STATUS current DESCRIPTION "The current state of snapshot routing for this entry. active means that routing information may be exchanged. quiet, only present on a client snapshot interface, means that routes are frozen, and that no routing information may be exchanged until the active state is reentered. serverPostActive, only present on a server snapshot interface, means that the active period has expired, but routing information will still be accepted from (but not sent to) the associated client router. transitionToQuiet, and transitionToActive, only present on a client, are temporary states entered after the active state, wherein any down to up transition of the interface will cause a move to the quiet or active state, respectively. limbo is a temporary state for activity blocks that are in the process of being created or destroyed." ::= { ciscoSnapshotActivityEntry 2 } ciscoSnapshotActivityTimer OBJECT-TYPE SYNTAX Integer32 UNITS "minutes" MAX-ACCESS read-only STATUS current DESCRIPTION "The amount of time remaining in the current state." ::= { ciscoSnapshotActivityEntry 3 } ciscoSnapshotExchangeTimer OBJECT-TYPE SYNTAX Integer32 UNITS "minutes" MAX-ACCESS read-only STATUS current DESCRIPTION "The amount of time during the last active state, in which protocol exchanges occurred. The minimum time required to allow updates to be exchanged for a 'successfull update cycle' is the greater of 3 minutes, or 1/2 the active time. If the ciscoSnapshotExchangeTimer is less than this, the quiet state will use the retry interval to determine when next to go active. An instance of this object will only be present when the associated value of ciscoSnapshotClient is true for this interface." ::= { ciscoSnapshotActivityEntry 4 } ciscoSnapshotDialerMap OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "Index of the dialer map entry associated with this snapshot activity record. A value of 0 indicates that no dialer map is associated with this entry. An instance of this object will only be present when the associated value of ciscoSnapshotDialer is true." ::= { ciscoSnapshotActivityEntry 5 } ciscoSnapshotSourceProtocol OBJECT-TYPE SYNTAX CiscoNetworkProtocol MAX-ACCESS read-only STATUS current DESCRIPTION "The protocol of the host that initiated the snapshot routing activity associated with this record. An instance of this object will only be present when the associated value of ciscoSnapshotClient is false." ::= { ciscoSnapshotActivityEntry 6 } ciscoSnapshotSourceAddress OBJECT-TYPE SYNTAX CiscoNetworkAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The address of the host that initiated the snapshot routing activity associated with this record. An instance of this object will only be present when the associated value of ciscoSnapshotClient is false." ::= { ciscoSnapshotActivityEntry 7 } ciscoSnapshotProtocolsExchanged OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0.. 4)) MAX-ACCESS read-only STATUS current DESCRIPTION "An array of bits that indicates whether or not routing information has been exchanged for all protocols. The most significant bit of the first octet represents the protocol associated with CiscoNetworkProtocol value of 0; the least significant bit of the first octet represents the protocol associated with CiscoNetworkProtocol value of 7; the most significant bit of the second octet represents the protocol associated with the CiscoNetworkProtocol value of 8; and so forth. Routing information for a given protocol has been exchanged if the associated bit is set. An instance of this object will only be present when the associated value of ciscoSnapshotClient is true." ::= { ciscoSnapshotActivityEntry 8 } -- conformance information ciscoSnapshotMIBConformance OBJECT IDENTIFIER ::= { ciscoSnapshotMIB 2 } ciscoSnapshotMIBCompliances OBJECT IDENTIFIER ::= { ciscoSnapshotMIBConformance 1 } ciscoSnapshotMIBGroups OBJECT IDENTIFIER ::= { ciscoSnapshotMIBConformance 2 } -- compliance statements ciscoSnapshotMIBCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for entities which implement the Cisco Snapshot MIB" MODULE -- this module MANDATORY-GROUPS { ciscoSnapshotMIBGroup } ::= { ciscoSnapshotMIBCompliances 1 } -- units of conformance ciscoSnapshotMIBGroup OBJECT-GROUP OBJECTS { ciscoSnapshotForceActive, ciscoSnapshotClient, ciscoSnapshotDialer, ciscoSnapshotActiveInterval, ciscoSnapshotQuietInterval, ciscoSnapshotRetryInterval, ciscoSnapshotIfUpAction, ciscoSnapshotRowStatus, ciscoSnapshotActivityState, ciscoSnapshotActivityTimer, ciscoSnapshotExchangeTimer, ciscoSnapshotDialerMap, ciscoSnapshotSourceProtocol, ciscoSnapshotSourceAddress, ciscoSnapshotProtocolsExchanged } STATUS current DESCRIPTION "A collection of objects providing snapshot routing ability to a Cisco agent." ::= { ciscoSnapshotMIBGroups 1 } END