APPN-TRAP-MIB DEFINITIONS ::= BEGIN IMPORTS Counter32, OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF appnMIB, appnIsInP2SFmdPius, appnIsInS2PFmdPius, appnIsInP2SNonFmdPius, appnIsInS2PNonFmdPius, appnIsInP2SFmdBytes, appnIsInS2PFmdBytes, appnIsInP2SNonFmdBytes, appnIsInS2PNonFmdBytes, appnIsInSessUpTime, appnObjects, appnLocalTgOperational, appnLocalTgCpCpSession, appnPortOperState, appnLsOperState, appnCompliances, appnGroups FROM APPN-MIB dlurDlusSessnStatus FROM APPN-DLUR-MIB; appnTrapMIB MODULE-IDENTITY LAST-UPDATED "9808310000Z" -- August 31, 1998 ORGANIZATION "IETF SNA NAU MIB WG / AIW APPN MIBs SIG" CONTACT-INFO " Bob Clouston Cisco Systems 7025 Kit Creek Road P.O. Box 14987 Research Triangle Park, NC 27709, USA Tel: 1 919 472 2333 E-mail: [email protected] Bob Moore IBM Corporation 4205 S. Miami Boulevard BRQA/501 P.O. Box 12195 Research Triangle Park, NC 27709, USA Tel: 1 919 254 4436 E-mail: [email protected] " DESCRIPTION "This MIB module defines notifications to be generated by network devices with APPN capabilities. It presupposes support for the APPN MIB. It also presupposes support for the DLUR MIB for implementations that support the DLUR-related groups." ::= { appnMIB 0 } -- ********************************************************************* -- Notifications -- ********************************************************************* appnIsrAccountingDataTrap NOTIFICATION-TYPE OBJECTS { appnIsInP2SFmdPius, appnIsInS2PFmdPius, appnIsInP2SNonFmdPius, appnIsInS2PNonFmdPius, appnIsInP2SFmdBytes, appnIsInS2PFmdBytes, appnIsInP2SNonFmdBytes, appnIsInS2PNonFmdBytes, appnIsInSessUpTime } STATUS current DESCRIPTION "When it has been enabled, this notification is generated by an APPN node whenever an ISR session passing through the node is taken down, regardless of whether the session went down normally or abnormally. Its purpose is to allow a management application (primarily an accounting application) that is monitoring the ISR counts to receive the final values of these counts, so that the application can properly account for the amounts the counts were incremented since the last time the application polled them. The appnIsInSessUpTime object provides the total amount of time that the session was active. This notification is not a substitute for polling the ISR counts. In particular, the count values reported in this notification cannot be assumed to be the complete totals for the life of the session, since they may have wrapped while the session was up. The session to which the objects in this notification apply is identified by the fully qualified CP name and PCID that make up the table index. An instance of this notification will contain exactly one instance of each of its objects, and these objects will all belong to the same conceptual row of the appnIsInTable. Generation of this notification is controlled by the same object in the APPN MIB, appnIsInGlobeCtrAdminStatus, that controls whether the count objects themselves are being incremented." ::= { appnTrapMIB 1 } appnLocalTgOperStateChangeTrap NOTIFICATION-TYPE OBJECTS { appnLocalTgTableChanges, appnLocalTgOperational } STATUS current DESCRIPTION "When it has been enabled, this notification makes it possible for an APPN topology application to get asynchronous notifications of local TG operational state changes, and thus to reduce the frequency with which it polls for these changes. This notification is sent whenever there is a change to the appnLocalTgOperational object in a row of the appnLocalTgTable. This notification is only sent for row creation if the row is created with a value of 'true' for appnLocalTgOperational. This notification is only sent for row deletion if the last value of appnLocalTgOperational was 'true'. In this case, the value of appnLocalTgOperational in the notification shall be 'false', since the deletion of a row indicates that the TG is no longer operational. The notification is more than a simple 'poll me now' indication. It carries both a count of local TG topology changes, and the current operational state itself. The count of changes allows an application to detect lost notifications, either when polling or upon receiving a subsequent notification, at which point it knows it must retrieve the entire appnLocalTgTable again. This is the same count as used in the appnLocalCpCpStateChangeTrap. A lost notification could indicate a local TG CP-CP session state change or an operational state change. Generation of this notification is controlled by the appnTrapControl object." ::= { appnTrapMIB 2 } appnLocalTgCpCpChangeTrap NOTIFICATION-TYPE OBJECTS { appnLocalTgTableChanges, appnLocalTgCpCpSession } STATUS current DESCRIPTION "When it has been enabled, this notification makes it possible for an APPN topology application to get asynchronous notifications of local TG control-point to control-point (CP-CP) session state changes, and thus to reduce the frequency with which it polls for these changes. This notification is sent whenever there is a change to the appnLocalTgCpCpSession object but NOT the appnLocalTgOperational object in a row of the appnLocalTgTable. This notification is never sent for appnLocalTgTable row creation or deletion. The notification is more than a simple 'poll me now' indication. It carries both a count of local TG topology changes, and the current CP-CP session state itself. The count of changes allows an application to detect lost notifications, either when polling or upon receiving a subsequent notification, at which point it knows it must retrieve the entire appnLocalTgTable again. This is the same count as used in the appnLocalTgOperStateChangeTrap. A lost notification could indicate a local TG CP-CP session state change or an operational state change. Generation of this notification is controlled by the appnTrapControl object." ::= { appnTrapMIB 3 } appnPortOperStateChangeTrap NOTIFICATION-TYPE OBJECTS { appnPortTableChanges, appnPortOperState } STATUS current DESCRIPTION "When it has been enabled, this notification makes it possible for an APPN topology application to get asynchronous notifications of port operational state changes, and thus to reduce the frequency with which it polls for these changes. This notification is only sent when a appnPortOperState has transitioned to a value of 'active' or 'inactive'. This notification is sent whenever there is a appnPortOperState object transition to 'inactive' or 'active' state in the appnPortTable. This notification is only sent for row creation if the row is created with a value of 'active' for appnPortOperState. This notification is only sent for row deletion if the last value of appnPortOperState was 'active'. In this case, the value of appnPortOperState in the notification shall be 'inactive', since the deletion of a row indicates that the port is no longer active. The notification is more than a simple 'poll me now' indication. It carries both a count of port table changes, and the operational state itself. The count of changes allows an application to detect lost notifications, either when polling or upon receiving a subsequent notification, at which point it knows it must retrieve the entire appnPortTable again. Generation of this notification is controlled by the appnTrapControl object." ::= { appnTrapMIB 4 } appnLsOperStateChangeTrap NOTIFICATION-TYPE OBJECTS { appnLsTableChanges, appnLsOperState } STATUS current DESCRIPTION "When it has been enabled, this notification makes it possible for an APPN topology application to get asynchronous notifications of link station operational state changes, and thus to reduce the frequency with which it polls for these changes. This notification is only sent when a appnLsOperState has transitioned to a value of 'active' or 'inactive'. This notification is sent whenever there is a appnLsOperState object transition to 'inactive' or 'active' state in the appnLsTable. This notification is only sent for row creation if the row is created with a value of 'active' for appnLsOperState. This notification is only sent for row deletion if the last value of appnLsOperState was 'active'. In this case, the value of appnLsOperState in the notification shall be 'inactive', since the deletion of a row indicates that the link station is no longer active. The notification is more than a simple 'poll me now' indication. It carries both a count of link station table changes, and the operational state itself. The count of changes allows an application to detect lost notifications, either when polling or upon receiving a subsequent notification, at which point it knows it must retrieve the entire appnLsTable again. Generation of this notification is controlled by the appnTrapControl object." ::= { appnTrapMIB 5 } dlurDlusStateChangeTrap NOTIFICATION-TYPE OBJECTS { dlurDlusTableChanges, dlurDlusSessnStatus } STATUS current DESCRIPTION "When it has been enabled, this notification makes it possible for an APPN topology application to get asynchronous notifications of DLUR-DLUS session changes, and thus to reduce the frequency with which it polls for these changes. This notification is sent whenever there is a dlurDlusSessnStatus object transition to 'inactive' or 'active' state in the dlurDlusTable. This notification is only sent for row creation if the row is created with a value of 'active' for dlurDlusSessnStatus. This notification is only sent for row deletion if the last value of dlurDlusSessnStatus was 'active'. In this case, the value of dlurDlusSessnStatus in the notification shall be 'inactive', since the deletion of a row indicates that the session is no longer active. The notification is more than a simple 'poll me now' indication. It carries both a count of DLUR-DLUS table changes, and the session status itself. The count of changes allows an application to detect lost notifications, either when polling or upon receiving a subsequent notification, at which point it knows it must retrieve the entire dlurDlusTable again. Generation of this notification is controlled by the appnTrapControl object." ::= { appnTrapMIB 6 } -- ********************************************************************* -- Supporting Objects -- ********************************************************************* appnTrapObjects OBJECT IDENTIFIER ::= { appnObjects 7 } appnTrapControl OBJECT-TYPE SYNTAX BITS { appnLocalTgOperStateChangeTrap(0), appnLocalTgCpCpChangeTrap(1), appnPortOperStateChangeTrap(2), appnLsOperStateChangeTrap(3), dlurDlusStateChangeTrap(4) -- add other notification types here } MAX-ACCESS read-write STATUS current DESCRIPTION "An object to turn APPN notification generation on and off. Setting a notification type's bit to 1 enables generation of notifications of that type, subject to further filtering resulting from entries in the snmpNotificationMIB. Setting this bit to 0 disables generation of notifications of that type. Note that generation of the appnIsrAccountingDataTrap is controlled by the appnIsInGlobeCtrAdminStatus object in the APPN MIB: if counts of intermediate session traffic are being kept at all, then the notification is also enabled." ::= { appnTrapObjects 1 } appnLocalTgTableChanges OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the number of times a row in the appnLocalTgTable has changed status since the APPN node was last reinitialized. This counter is incremented whenever a condition is detected that would cause a appnLocalTgOperStateChangeTrap or appnLocalTgCpCpChangeTrap notification to be sent, whether or not those notifications are enabled." ::= { appnTrapObjects 2 } appnPortTableChanges OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the number of times a row in the appnPortTable has changed status since the APPN node was last reinitialized. This counter is incremented whenever a condition is detected that would cause a appnPortOperStateChangeTrap notification to be sent, whether or not this notification is enabled." ::= { appnTrapObjects 3 } appnLsTableChanges OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the number of times a row in the appnLsTable has changed status since the APPN node was last reinitialized. This counter is incremented whenever a condition is detected that would cause a appnLsOperStateChangeTrap notification to be sent, whether or not this notification is enabled." ::= { appnTrapObjects 4 } dlurDlusTableChanges OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "A count of the number of times a row in the dlurDlusTable has changed status since the APPN node was last reinitialized. This counter is incremented whenever a condition is detected that would cause a dlurDlusStateChangeTrap notification to be sent, whether or not this notification is enabled." ::= { appnTrapObjects 5 } -- ********************************************************************* -- Conformance information -- ********************************************************************* -- Tie into the conformance structure in the APPN MIB: -- appnConformance OBJECT IDENTIFIER ::= {appnMIB 3 } -- -- appnCompliances OBJECT IDENTIFIER ::= {appnConformance 1 } -- appnGroups OBJECT IDENTIFIER ::= {appnConformance 2 } -- Compliance statement appnTrapMibCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for the SNMP entities that implement the APPN-TRAP-MIB." MODULE -- this module -- Conditionally mandatory groups GROUP appnTrapMibIsrNotifGroup DESCRIPTION "This group is mandatory for APPN nodes supporting reporting of final ISR counter values via notifications." GROUP appnTrapMibTopoConfGroup DESCRIPTION "This group is mandatory for APPN nodes supporting polling reduction for local topology." GROUP appnTrapMibTopoNotifGroup DESCRIPTION "This group is mandatory for APPN nodes supporting polling reduction for local topology." GROUP appnTrapMibDlurConfGroup DESCRIPTION "This group is mandatory for APPN nodes supporting polling reduction for the dlurDlusTable." GROUP appnTrapMibDlurNotifGroup DESCRIPTION "This group is mandatory for APPN nodes supporting polling reduction for the dlurDlusTable." OBJECT appnTrapControl MIN-ACCESS read-only DESCRIPTION "An agent is not required to support a set to this object." ::= {appnCompliances 2 } -- Units of conformance appnTrapMibIsrNotifGroup NOTIFICATION-GROUP NOTIFICATIONS { appnIsrAccountingDataTrap } STATUS current DESCRIPTION "A notification for reporting the final values of the APPN MIB's ISR counters." ::= { appnGroups 21 } appnTrapMibTopoConfGroup OBJECT-GROUP OBJECTS { appnTrapControl, appnLocalTgTableChanges, appnPortTableChanges, appnLsTableChanges } STATUS current DESCRIPTION "A collection of objects for reducing the polling associated with the local topology tables in the APPN MIB. Nodes that implement this group SHALL also implement the appnTrapMibTopoNotifGroup." ::= { appnGroups 22 } appnTrapMibTopoNotifGroup NOTIFICATION-GROUP NOTIFICATIONS { appnLocalTgOperStateChangeTrap, appnLocalTgCpCpChangeTrap, appnPortOperStateChangeTrap, appnLsOperStateChangeTrap } STATUS current DESCRIPTION "A collection of notifications for reducing the polling associated with the local topology tables in the APPN MIB. Nodes that implement this group SHALL also implement the appnTrapMibTopoConfGroup." ::= { appnGroups 23 } appnTrapMibDlurConfGroup OBJECT-GROUP OBJECTS { appnTrapControl, dlurDlusTableChanges } STATUS current DESCRIPTION "A collection of objects for reducing the polling associated with the dlurDlusTable in the DLUR MIB. Nodes that implement this group SHALL also implement the appnTrapMibDlurNotifGroup." ::= { appnGroups 24 } appnTrapMibDlurNotifGroup NOTIFICATION-GROUP NOTIFICATIONS { dlurDlusStateChangeTrap } STATUS current DESCRIPTION "A notification for reducing the polling associated with the dlurDlusTable in the DLUR MIB. Nodes that implement this group SHALL also implement the appnTrapMibDlurConfGroup." ::= { appnGroups 25 } END