Network Working Group D. Throop Request for Comments: 1381 Data General Corporation F. Baker Advanced Computer Communications November 1992
This RFC specifies an IAB standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "IAB Official Protocol Standards" for the standardization state and status of this protocol. Distribution of this memo is unlimited.
This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in TCP/IP-based internets. In particular, it defines objects for managing the Link Layer of X.25, LAPB. The objects defined here, along with the objects in the "SNMP MIB Extension for the Packet Layer of X.25" [9] and the "Definitions of Managed Objects for RS-232-like Hardware Devices" [8], combine to allow management of an X.25 protocol stack.
1. The Network Management Framework
2. Objects
2.1 Format of Definitions
3. Overview
3.1 Informal overview
3.2 Textual Conventions
3.3 Formal overview
3.4 Tables
3.5 Traps
4. Object Definitions
5. Appendix: Revision History
July 30, 1992
June 12, 1992
May 18, 1992
April 8, 1992
February 1992
October 1991
June 1991
April 1991
6. Acknowledgements
7. References
8. Security Considerations
9. Authors' Addresses
The Internet-standard Network Management Framework consists of three components. These components give the rules for defining objects, the definitions of objects, and the protocol for manipulating objects.
The network management framework structures objects in an abstract information tree. The branches of the tree name objects and the leaves of the tree contain the values manipulated to effect management. This tree is called the Management Information Base or MIB. The concepts of this tree are given in STD 16/RFC 1155 "The Structure of Management Information" or SMI [1]. The SMI defines the trunk of the tree and the types of objects used when defining the leaves. STD 16/RFC 1212, "Towards Concise MIB Definitions" [4], defines a more concise description mechanism that preserves all the principals of the SMI.
The core MIB definitions for the Internet suite of protocols can be found in RFC 1156 [2] "Management Information Base for Network Management of TCP/IP-based internets". STD 17/RFC 1213 [5] defines MIB-II, an evolution of MIB-I with changes to incorporate implementation experience and new operational requirements.
STD 15/RFC 1157 [3] defines the SNMP protocol itself. The protocol defines how to manipulate the objects in a remote MIB.
The tree structure of the MIB allows new objects to be defined for the purpose of experimentation and evaluation.
The definition of an object in the MIB requires an object name and type. Object names and types are defined using the subset of the Abstract Syntax Notation One (ASN.1) [6] defined in the SMI [1]. Objects are named using ASN.1 object identifiers, administratively assigned names, to specify object types. The object name, together with an optional object instance, uniquely identifies a specific instance of an object. For human convenience, we often use a textual string, termed the OBJECT DESCRIPTOR, to also refer to objects.
Objects also have a syntax that defines the abstract data structure corresponding to that object type. The ASN.1 language [6] provides
the primitives used for this purpose. The SMI [1] purposely restricts the ASN.1 constructs which may be used for simplicity and ease of implementation. The encoding of an object type simply describes how to represent an object using ASN.1 encoding rules [7], for purposes of dealing with the SNMP protocol.
Section 4 contains the specification of all object types defined in this MIB module. The object definitions use the conventions given in the SMI [1] as amended by the concise MIB definitions [4].
This section describes how the objects defined below relate with other MIBs. This section is only informational to help understand how the pieces fit together.
The objects defined below are to be used in conjunction with MIB-II and other MIBs such as the X.25 packet level MIB [9]. A system with a complete X.25 stack running over a synchronous line will have at least two interfaces in the ifTable defined in MIB-II. There will be an interface for LAPB and another interface for the packet layer of X.25. There will also be objects defined in the RS-232-like MIB for the physical sync line.
Each software interface identifies the layer below it used to send and receive packets. The X.25 MIB object, x25InfoDataLinkId, specifies an instance of lapbAdmnIndex for the LAPB interface under that X.25. The LAPB object, lapbOperPortId, defined below, identifies an instance of the rs232PortIndex for the the Sync line used by LAPB.
For X.25 running over LAPB over Ethernet, the lapbAdmnPortId would identify the instance of ifIndex for the Ethernet interface.
Each X.25 subnetwork will have separate entries in the ifTable. Thus a system with two X.25 lines would have two ifTable entries for the two X.25 packet layers and two other entries for the two LAPB interfaces. Each X.25 Packet Layer MIB would identify the instance of the LAPB MIB below it. Each LAPB MIB would identify the Sync line below it. The system would also have two entries for rs232PortTable and rs232SyncPortTable for the two physical lines.
Since the ifTable as defined in MIB-II is device independent, it doesn't have anything specific for any type of interface. The objects below define the LAPB specific information for an interface
of type LAPB. Different LAPB interfaces can also be differentiated by matching the values of ifIndex with lapbAdmnIndex.
Two new data types are introduced as a textual conventions in this MIB document. These textual conventions enhance the readability of the specification and can ease comparison with other specifications if appropriate. It should be noted that the introduction of these textual conventions has no effect on either the syntax nor the semantics of any managed objects. The use of these is merely an artifact of the explanatory method used. Objects defined in terms of one of these methods are always encoded by means of the rules that define the primitive type. Hence, no changes to the SMI or the SNMP are necessary to accommodate these textual conventions which are adopted merely for the convenience of readers and writers in pursuit of the elusive goal of clear, concise, and unambiguous MIB documents.
This MIB introduces the data types of:
PositiveInteger
ifIndexType
Instances of the objects defined below represent attributes of a LAPB interface. LAPB interfaces are identified by an ifType object in the Internet-standard MIB [5] of
lapb(16).
For these interfaces, the value of the ifSpecific variable in the MIB-II [5] has the OBJECT IDENTIFIER value:
lapb OBJECT IDENTIFIER ::= { transmission 16 }
The relationship between a LAPB interface and an interface in the context of the Internet-standard MIB [5] is one-to-one. As such, the value of an ifIndex object instance can be directly used to identify corresponding instances of the objects defined below.
The objects defined below are defined in the context of ISO 7776 [10] and ISO 8885 [11]. Access to those documents maybe useful (but isn't essential) to understand the names and semantics of some objects. Where possible the object descriptions use the terminology of ISO 7776; for example, one commonly used term refers to the peer LAPB as the DCE/remote DTE. This terminology does not restrict the instrumented LAPB to function only as a DTE. This MIB maybe applied
to a LAPB configured as either a DCE or a DTE.
To the extent that some attributes defined in the Internet standard MIB [5] are applicable to LAPB, those objects have not been duplicated here. In some instances some clarification of how to apply those objects to LAPB has been given.
Some objects defined below include a DEFVAL clause. This clause provides reasonable (but not mandatory) default values to use when creating these objects. This does not imply this MIB defines any mechanism for creating or deleting LAPB interfaces. The creation and deletion of the objects of this MIB depend on the implementation method for creating and deleting LAPB interfaces. The DEFVAL clause provides reasonable defaults to allow further extension of the MIB to define methods for creating and deleting LAPB interfaces without having to deprecate these objects for the lack of a DEFVAL clause.
This extension adds four tables to the MIB. These tables are:
lapbAdmnTable,
lapbOperTable,
lapbFlowTable, and
lapbXidTable.
The lapbAdmnTable provides objects for common parameters used by LAPB such as the T1 retransmission timer or the N2 retransmission counter. Changes to objects in this table need not affect a running interface but provides access to the values used to initialize an interface. These values are read-write.
The lapbOperTable provides objects to determine the parameters actually in use by an interface. These objects are read only. The values currently in use maybe different from the lapbAdmnTable values if the lapbAdmnTable was changed after interface initialization or if XID negotiation selected different values.
The lapbFlowTable provides objects that report how the LAPB interface performs. These are read-only objects used to monitor operation.
The lapbXidTable is not required for systems that do not transmit XID frames. For systems that do transmit XID frames, this table provides the values for the fields of the XID frame that are not already present in the lapbAdmnTable. The objects in this table are read- write.
Since all LAPB interfaces have entries in the ifTable, significant changes in the state of the interface should send a linkUp or linkDown trap. Thus an interface that receives or sends a Frame Reject frame should send a linkDown trap. If the interface later comes back up, it should then send a linkUP trap.
RFC1381-MIB DEFINITIONS ::= BEGIN
IMPORTS
Counter
FROM RFC1155-SMI
transmission
FROM RFC1213-MIB
OBJECT-TYPE
FROM RFC-1212;
-- LAPB MIB lapb OBJECT IDENTIFIER ::= { transmission 16 } PositiveInteger ::= INTEGER (0..2147483647) IfIndexType ::= INTEGER (1..2147483647) -- IfIndexType specifies an index object for a table -- with entries that match entries in the MIB-II ifTable. -- The value of the index for the table will match the -- ifIndex entry for same interface in the ifTable. -- The values of this object range from 1 to ifNumber -- inclusive. -- ########################################################### -- LAPB Admn Table -- ########################################################### -- Support of the lapbAdmnTable is mandatory for all -- agents of systems that implement LAPB. lapbAdmnTable OBJECT-TYPE SYNTAX SEQUENCE OF LapbAdmnEntry ACCESS not-accessible STATUS mandatory
DESCRIPTION
"This table contains objects that can be
changed to manage a LAPB interface.
Changing one of these parameters may take
effect in the operating LAPB immediately or
may wait until the interface is restarted
depending on the details of the
implementation.
Most of the objects in this read-write table have corresponding read-only objects in the lapbOperTable that return the current operating value.
The operating values may be different from these configured values if changed by XID negotiation or if a configured parameter was changed after the interface was started."
::= { lapb 1 } lapbAdmnEntry OBJECT-TYPE SYNTAX LapbAdmnEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Configured parameter values for a specific LAPB." INDEX { lapbAdmnIndex } ::= { lapbAdmnTable 1 } LapbAdmnEntry ::= SEQUENCE { lapbAdmnIndex IfIndexType, lapbAdmnStationType INTEGER, lapbAdmnControlField INTEGER, lapbAdmnTransmitN1FrameSize PositiveInteger, lapbAdmnReceiveN1FrameSize PositiveInteger, lapbAdmnTransmitKWindowSize INTEGER, lapbAdmnReceiveKWindowSize INTEGER, lapbAdmnN2RxmitCount INTEGER, lapbAdmnT1AckTimer
PositiveInteger,
lapbAdmnT2AckDelayTimer
PositiveInteger,
lapbAdmnT3DisconnectTimer
PositiveInteger,
lapbAdmnT4IdleTimer
PositiveInteger,
lapbAdmnActionInitiate
INTEGER,
lapbAdmnActionRecvDM
INTEGER
}
lapbAdmnIndex OBJECT-TYPE SYNTAX IfIndexType ACCESS read-only STATUS mandatory DESCRIPTION "The ifIndex value for the LAPB interface." ::= { lapbAdmnEntry 1 } lapbAdmnStationType OBJECT-TYPE SYNTAX INTEGER { dte (1), dce (2), dxe (3) } ACCESS read-write STATUS mandatory DESCRIPTION "Identifies the desired station type of this interface." REFERENCE "ISO 7776 section 3.1" DEFVAL { dte } ::= { lapbAdmnEntry 2 }
lapbAdmnControlField OBJECT-TYPE
SYNTAX INTEGER {
modulo8 (1),
modulo128 (2)
}
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The desired size of the sequence numbers
used to number frames."
REFERENCE "ISO 8885 Table 3, Name: HDLC Option - 10"
DEFVAL { modulo8 }
::= { lapbAdmnEntry 3 }
lapbAdmnTransmitN1FrameSize OBJECT-TYPE
SYNTAX PositiveInteger
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The default maximum N1 frame size desired
in number of bits for a frame transmitted by
this DTE. This excludes flags and 0 bits
inserted for transparency."
REFERENCE "ISO 8885 Table 3,
Name: Information Field length"
DEFVAL { 36000 } -- 4500 * 8; 802.5 Frame size
::= { lapbAdmnEntry 4 }
lapbAdmnReceiveN1FrameSize OBJECT-TYPE
SYNTAX PositiveInteger
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The default maximum N1 frame size desired
in number of bits for a frame the DCE/remote
DTE transmits to this DTE. This excludes
flags and 0 bits inserted for transparency."
DEFVAL { 36000 } -- 4500 * 8; 802.5 Frame size
::= { lapbAdmnEntry 5 }
lapbAdmnTransmitKWindowSize OBJECT-TYPE
SYNTAX INTEGER (1..127)
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The default transmit window size for this
Interface. This is the maximum number of
unacknowledged sequenced PDUs that may be
outstanding from this DTE at any one time."
REFERENCE "ISO 8885 Table 3, Name: Window size"
DEFVAL { 7 }
::= { lapbAdmnEntry 6 }
lapbAdmnReceiveKWindowSize OBJECT-TYPE
SYNTAX INTEGER (1..127)
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The default receive window size for this
Interface. This is the maximum number of
unacknowledged sequenced PDUs that may be
outstanding from the DCE/remote DTE at any
one time."
REFERENCE "ISO 8885 Table 3, Name: Window size"
DEFVAL { 7 }
::= { lapbAdmnEntry 7 } lapbAdmnN2RxmitCount OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-write STATUS mandatory DESCRIPTION "The default N2 retry counter for this interface. This specifies the number of times a PDU will be resent after the T1 timer expires without an acknowledgement for the PDU." REFERENCE "ISO 8885 Table 3, Name: Retransmission Attempts" DEFVAL { 20 } ::= { lapbAdmnEntry 8 } lapbAdmnT1AckTimer OBJECT-TYPE SYNTAX PositiveInteger ACCESS read-write STATUS mandatory DESCRIPTION "The default T1 timer for this interface. This specifies the maximum time in Milliseconds to wait for acknowledgment of a PDU." REFERENCE "ISO 8885 Table 3, Name: Acknowledgement timer" DEFVAL { 3000 } ::= { lapbAdmnEntry 9 } lapbAdmnT2AckDelayTimer OBJECT-TYPE SYNTAX PositiveInteger ACCESS read-write STATUS mandatory DESCRIPTION "The default T2 timer for this interface. This specifies the maximum time in Milliseconds to wait before sending an acknowledgment for a sequenced PDU. A value of zero means there will be no delay in acknowledgement generation." REFERENCE "ISO 8885 Table 3,
Name: Reply delay timer"
DEFVAL { 0 }
::= { lapbAdmnEntry 10 }
lapbAdmnT3DisconnectTimer OBJECT-TYPE
SYNTAX PositiveInteger
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The T3 timer for this interface. This
specifies the time in Milliseconds to wait
before considering the link disconnected. A
value of zero indicates the link will be
considered disconnected upon completion of
the frame exchange to disconnect the link."
REFERENCE "ISO 7776 section 5.7.1.3"
DEFVAL { 60000 }
::= { lapbAdmnEntry 11 }
lapbAdmnT4IdleTimer OBJECT-TYPE
SYNTAX PositiveInteger
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The T4 timer for this interface. This
specifies the maximum time in Milliseconds
to allow without frames being exchanged on
the data link. A value of 2147483647
indicates no idle timer is being kept."
REFERENCE "ISO 7776 section 5.7.1.4"
DEFVAL { 2147483647 }
::= { lapbAdmnEntry 12 }
lapbAdmnActionInitiate OBJECT-TYPE
SYNTAX INTEGER {
sendSABM (1),
sendDISC (2),
sendDM (3),
none (4),
other (5)
}
ACCESS read-write
STATUS mandatory
DESCRIPTION
"This identifies the action LAPB will take
to initiate link set-up."
DEFVAL { sendSABM }
::= { lapbAdmnEntry 13 }
lapbAdmnActionRecvDM OBJECT-TYPE
SYNTAX INTEGER {
sendSABM (1),
sendDISC (2),
other (3)
}
ACCESS read-write
STATUS mandatory
DESCRIPTION
"This identifies the action LAPB will take
when it receives a DM response."
DEFVAL { sendSABM }
::= { lapbAdmnEntry 14 } -- ########################################################### -- LAPB operating parameters. -- ########################################################### -- Support of the lapbOperTable is mandatory for all -- agents of systems that implement LAPB. lapbOperTable OBJECT-TYPE SYNTAX SEQUENCE OF LapbOperEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table contains configuration information about interface parameters currently set in the interface. Many of these objects have corresponding objects in the lapbAdmnTable." ::= { lapb 2 } lapbOperEntry OBJECT-TYPE SYNTAX LapbOperEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Currently set parameter values for a specific LAPB." INDEX { lapbOperIndex } ::= { lapbOperTable 1 } LapbOperEntry ::= SEQUENCE { lapbOperIndex IfIndexType, lapbOperStationType
INTEGER,
lapbOperControlField
INTEGER,
lapbOperTransmitN1FrameSize
PositiveInteger,
lapbOperReceiveN1FrameSize
PositiveInteger,
lapbOperTransmitKWindowSize
INTEGER,
lapbOperReceiveKWindowSize
INTEGER,
lapbOperN2RxmitCount
INTEGER,
lapbOperT1AckTimer
PositiveInteger,
lapbOperT2AckDelayTimer
PositiveInteger,
lapbOperT3DisconnectTimer
PositiveInteger,
lapbOperT4IdleTimer
PositiveInteger,
lapbOperPortId
OBJECT IDENTIFIER,
lapbOperProtocolVersionId
OBJECT IDENTIFIER
}
lapbOperIndex OBJECT-TYPE SYNTAX IfIndexType ACCESS read-only STATUS mandatory DESCRIPTION "The ifIndex value for the LAPB interface." ::= { lapbOperEntry 1 } lapbOperStationType OBJECT-TYPE SYNTAX INTEGER { dte (1), dce (2), dxe (3) } ACCESS read-only STATUS mandatory DESCRIPTION "Identifies the current operating station type of this interface. A value of dxe (3) indicates XID negotiation has not yet taken place."
REFERENCE "ISO 7776 section 3.1"
::= { lapbOperEntry 2 }
lapbOperControlField OBJECT-TYPE
SYNTAX INTEGER {
modulo8 (1),
modulo128 (2)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The current operating size of the sequence
numbers used to number frames."
REFERENCE "ISO 7776 section 3.3"
::= { lapbOperEntry 3 }
lapbOperTransmitN1FrameSize OBJECT-TYPE
SYNTAX PositiveInteger
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The current operating N1 frame size used
for the maximum number of bits in a frame
this DTE can transmit. This excludes flags
and 0 bits inserted for transparency."
REFERENCE "ISO 7776 section 5.7.3"
::= { lapbOperEntry 4 }
lapbOperReceiveN1FrameSize OBJECT-TYPE
SYNTAX PositiveInteger
ACCESS read-only
STATUS mandatory
-- See lapbOperTransmitN1FrameSize above DESCRIPTION "The current operating N1 frame size used for the maximum number of bits in a frame the DCE/remote DTE can transmit. This excludes flags and 0 bits inserted for transparency." ::= { lapbOperEntry 5 }
lapbOperTransmitKWindowSize OBJECT-TYPE
SYNTAX INTEGER (1..127)
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The current PDU window size this Interface
uses to transmit. This is the maximum
number of unacknowledged sequenced PDUs that
may be outstanding from this DTE at any one
time."
REFERENCE "ISO 7776 section 5.7.4"
::= { lapbOperEntry 6 }
lapbOperReceiveKWindowSize OBJECT-TYPE
SYNTAX INTEGER (1..127)
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The current receive PDU window size for
this Interface. This is the maximum number
of unacknowledged sequenced PDUs that may be
outstanding from the DCE/remote DTE at any
one time."
REFERENCE "ISO 7776 section 5.7.4"
::= { lapbOperEntry 7 } lapbOperN2RxmitCount OBJECT-TYPE SYNTAX INTEGER (0..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The current N2 retry counter used for this interface. This specifies the number of times a PDU will be resent after the T1 timer expires without an acknowledgement for the PDU." REFERENCE "ISO 7776 section 5.7.2" ::= { lapbOperEntry 8 } lapbOperT1AckTimer OBJECT-TYPE SYNTAX PositiveInteger ACCESS read-only STATUS mandatory DESCRIPTION "The current T1 timer for this interface. This specifies the maximum time in Milliseconds to wait for acknowledgment of a PDU." REFERENCE "ISO 7776 section 5.7.1.1" ::= { lapbOperEntry 9 } lapbOperT2AckDelayTimer OBJECT-TYPE SYNTAX PositiveInteger ACCESS read-only STATUS mandatory
DESCRIPTION
"The current T2 timer for this interface.
This specifies the maximum time in
Milliseconds to wait before sending an
acknowledgment for a sequenced PDU. A value
of zero means there will be no delay in
acknowledgement generation."
REFERENCE "ISO 7776 section 5.7.1.2"
::= { lapbOperEntry 10 }
lapbOperT3DisconnectTimer OBJECT-TYPE
SYNTAX PositiveInteger
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The current T3 timer for this interface.
This specifies the time in Milliseconds to
wait before considering the link
disconnected. A value of zero indicates the
link will be considered disconnected upon
completion of the frame exchange to
disconnect the link."
REFERENCE "ISO 7776 section 5.7.1.3"
::= { lapbOperEntry 11 }
lapbOperT4IdleTimer OBJECT-TYPE
SYNTAX PositiveInteger
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The current T4 timer for this interface.
This specifies the maximum time in
Milliseconds to allow without frames being
exchanged on the data link. A value of
2147483647 indicates no idle timer is being
kept."
REFERENCE "ISO 7776 section 5.7.1.4"
::= { lapbOperEntry 12 }
lapbOperPortId OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"This object identifies an instance of the
index object in the first group of objects
in the MIB specific to the physical device
or interface used to send and receive
frames. If an agent does not support any such objects, it should return nullSpec OBJECT IDENTIFIER {0 0}."
::= { lapbOperEntry 13 } lapbOperProtocolVersionId OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory DESCRIPTION "This object identifies the version of the lapb protocol implemented by this interface." ::= { lapbOperEntry 14 } -- ########################################################### -- LAPB Flow Table -- ########################################################### -- Support of the lapbFlowTable is mandatory for all -- agents of systems that implement LAPB.
lapbFlowTable OBJECT-TYPE
SYNTAX SEQUENCE OF LapbFlowEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"This table defines the objects recorded by
LAPB to provide information about the
traffic flow through the interface."
::= { lapb 3 }
lapbFlowEntry OBJECT-TYPE
SYNTAX LapbFlowEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"The information regarding the effects of
flow controls in LAPB."
INDEX { lapbFlowIfIndex }
::= { lapbFlowTable 1 } LapbFlowEntry ::= SEQUENCE { lapbFlowIfIndex IfIndexType, lapbFlowStateChanges Counter,
lapbFlowChangeReason
INTEGER,
lapbFlowCurrentMode
INTEGER,
lapbFlowBusyDefers
Counter,
lapbFlowRejOutPkts
Counter,
lapbFlowRejInPkts
Counter,
lapbFlowT1Timeouts
Counter,
lapbFlowFrmrSent
OCTET STRING,
lapbFlowFrmrReceived
OCTET STRING,
lapbFlowXidReceived
OCTET STRING
}
lapbFlowIfIndex OBJECT-TYPE
SYNTAX IfIndexType
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The ifIndex value for the LAPB Interface."
::= { lapbFlowEntry 1 }
lapbFlowStateChanges OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of LAPB State Changes, including
resets."
::= { lapbFlowEntry 2 }
lapbFlowChangeReason OBJECT-TYPE
SYNTAX INTEGER {
notStarted (1), -- Initial state abmEntered (2), -- SABM or UA abmeEntered (3), -- SABME or UA abmReset (4), -- SABM in ABM abmeReset (5), -- SABME in ABME dmReceived (6), -- DM Response dmSent (7), -- DM sent discReceived (8), -- DISC Response discSent (9), -- DISC Sent
frmrReceived (10), -- FRMR Received
frmrSent (11), -- FRMR Sent n2Timeout (12), -- N2 Timer Expired other (13) } ACCESS read-only STATUS mandatory DESCRIPTION "The reason for the most recent incrementing of lapbFlowStateChanges. A DM or DISC frame generated to initiate link set-up does not alter this object. When the MIB-II object ifOperStatus does not have a value of testing, there exists a correlation between this object and ifOperStatus. IfOperStatus will have a value of up when this object contains: abmEntered, abmeEntered, abmReset, or abmeReset. IfOperStatus will have a value of down when this object has a value of notStarted, or dmReceived through n2Timeout. There is no correlation when this object has the value other." ::= { lapbFlowEntry 3 }
lapbFlowCurrentMode OBJECT-TYPE
SYNTAX INTEGER {
disconnected (1),
-- initial state or DISC received
linkSetup (2),
-- SABM sent
frameReject (3),
-- Invalid frame received and -- FRMR sent
disconnectRequest (4),
-- DISC sent
informationTransfer (5),
-- normal information transfer state -- SABM(E) sent and UA received, or -- SABM(E) received and UA sent
rejFrameSent (6),
-- invalid NS received and REJ sent
waitingAcknowledgement (7),
-- T1 expired and RR sent
stationBusy (8),
-- RNR sent
remoteStationBusy (9),
-- RNR received
bothStationsBusy (10),
-- RNR received and RNR sent
waitingAckStationBusy (11),
-- T1 expired, RNR sent
waitingAckRemoteBusy (12),
-- T1 expired, RNR received
waitingAckBothBusy (13),
-- T1 expired, RNR sent, -- and RNR received
rejFrameSentRemoteBusy (14),
-- REJ sent and RNR received
xidFrameSent (15),
-- XID frame sent
error (16),
-- An error state other than -- a one defined above
other (17)
-- A state not listed above } ACCESS read-only STATUS mandatory DESCRIPTION "The current condition of the conversation." ::= { lapbFlowEntry 4 }
lapbFlowBusyDefers OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of times this device was unable
to transmit a frame due to a perceived
remote busy condition. Busy conditions can
result from the receipt of an RNR from the remote device, the lack of valid sequence number space (window saturation), or other conditions."
::= { lapbFlowEntry 5 }
lapbFlowRejOutPkts OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of REJ or SREJ frames sent by
this station."
::= { lapbFlowEntry 6 }
lapbFlowRejInPkts OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of REJ or SREJ frames received
by this station."
::= { lapbFlowEntry 7 }
lapbFlowT1Timeouts OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of times a re-transmission was
effected by the T1 Timer expiring."
::= { lapbFlowEntry 8 }
lapbFlowFrmrSent OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..7))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The Information Field of the FRMR most
recently sent. If no FRMR has been sent
(the normal case) or the information isn't
available, this will be an OCTET STRING of
zero length."
REFERENCE "ISO 7776 Section 4.3.9, tables 7 and 8"
::= { lapbFlowEntry 9 }
lapbFlowFrmrReceived OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..7))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The Information Field of the FRMR most
recently received. If no FRMR has been
received (the normal case) or the
information isn't available, this will be an
OCTET STRING of zero length."
REFERENCE "ISO 7776 Section 4.3.9, tables 7 and 8"
::= { lapbFlowEntry 10 }
lapbFlowXidReceived OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..8206))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The Information Field of the XID frame most
recently received. If no XID frame has been
received, this will be an OCTET STRING of
zero length."
REFERENCE "ISO 8885"
::= { lapbFlowEntry 11 } -- ########################################################### -- LAPB XID Table -- ########################################################### -- Support for the lapbXidTable is mandatory for all agents -- of systems that have a LAPB implementation using XID -- negotiation. Agents of systems without XID negotiation -- support should not implement this table. lapbXidTable OBJECT-TYPE SYNTAX SEQUENCE OF LapbXidEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "This table defines values to use for XID negotiation that are not found in the lapbAdmnTable. This table is optional for implementations that don't support XID and mandatory for implementations that do initiate XID negotiation." ::= { lapb 4 } lapbXidEntry OBJECT-TYPE SYNTAX LapbXidEntry
ACCESS not-accessible STATUS mandatory DESCRIPTION "XId negotiation parameter values for a specific LAPB." INDEX { lapbXidIndex } ::= { lapbXidTable 1 } LapbXidEntry ::= SEQUENCE { lapbXidIndex IfIndexType, lapbXidAdRIdentifier OCTET STRING, lapbXidAdRAddress OCTET STRING, lapbXidParameterUniqueIdentifier OCTET STRING, lapbXidGroupAddress OCTET STRING, lapbXidPortNumber OCTET STRING, lapbXidUserDataSubfield OCTET STRING } lapbXidIndex OBJECT-TYPE SYNTAX IfIndexType ACCESS read-only STATUS mandatory DESCRIPTION "The ifIndex value for the LAPB interface." ::= { lapbXidEntry 1 }
lapbXidAdRIdentifier OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..255))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The value of the Address Resolution
Identifier. A zero length string indicates
no Identifier value has been assigned."
REFERENCE "ISO 8885 Table 2, Name: Identifier"
DEFVAL { ''h }
::= { lapbXidEntry 2 }
lapbXidAdRAddress OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..255))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The value of the Address Resolution
Address. A zero length string indicates no
Address value has been assigned."
REFERENCE "ISO 8885 Table 2, Name: Address"
DEFVAL { ''h }
::= { lapbXidEntry 3 }
lapbXidParameterUniqueIdentifier OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..255))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The value of the parameter unique
Identifier. A zero length string indicates
no Unique identifier value has been
assigned."
REFERENCE "ISO 8885 Table 3, Name: Identifier"
DEFVAL { ''h }
::= { lapbXidEntry 4 }
lapbXidGroupAddress OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..255))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The value of the parameter Group address.
A zero length string indicates no Group
address value has been assigned."
REFERENCE "ISO 8885 Table 3, Name: Group address"
DEFVAL { ''h }
::= { lapbXidEntry 5 }
lapbXidPortNumber OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..255))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The port number assigned for this link. A
zero length string indicates no local port
number identifier has been assigned."
REFERENCE "ISO 8885 Table 3, Name: Port number"
DEFVAL { ''h }
::= { lapbXidEntry 6 }
lapbXidUserDataSubfield OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..8206))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"A user data subfield, if any, to be
transmitted in an XID frame. A zero length
frame indicates no user data subfield has
been assigned. The octet string should
include both the User data identifier and
User data field as shown in Figures 1 and
4."
REFERENCE "ISO 8885 section 4.3"
DEFVAL { ''h }
::= { lapbXidEntry 7 } -- ########################################################### -- LAPB protocol versions -- ###########################################################
lapbProtocolVersion OBJECT IDENTIFIER
::= { lapb 5 }
lapbProtocolIso7776v1986 OBJECT IDENTIFIER
::= { lapbProtocolVersion 1 }
lapbProtocolCcittV1980 OBJECT IDENTIFIER
::= { lapbProtocolVersion 2 }
lapbProtocolCcittV1984 OBJECT IDENTIFIER
::= { lapbProtocolVersion 3 } -- The following describes some of the MIB-II interface -- objects and their relationship with the objects in this -- MIB extension. -- ifDescr: describes the interface. It should include -- identification information for the physical line and a -- description of the network. For connections to PDNs, -- it should name the PDN. -- ifMtu: the maximum number of octets an upper layer can -- pass to this interface as a single frame. -- ifSpeed:
-- ifAdminStatus: -- ifOperStatus: -- ifLastChange: the last time the state of the interface -- changed. A reset is considered an instantaneous change to -- the ndm state and back to abm or abme. This will be the -- last time that lapbFlowChangeReason and lapbFlowChanges -- changed. -- ifInOctets: contains the number of octets -- received from the peer LAPB including FCS. -- ifInUcastPkts: contains the number of I-frames delivered -- by this interface to a higher layer interface. -- ifInDiscards: contains the number of received -- frames discarded because of internal conditions -- (such as lack of buffering). -- ifInErrors: contains the number of Invalid frames received. -- This does not have any relationship with the number REJ, -- or RNR frames sent or received. -- ifInUnknownProtos: contains the number of frames -- that were correct but were dropped because they -- were inappropriate for the current state. This -- includes an invalid Poll bit, an unknown address, -- or other condition such as an RNR when connection -- not established. This also includes the number of -- DISC or other frames that were ignored because the -- link was not established and this interface was not -- configured to perform link setup on that type frame. -- ifOutOctets: number of octets sent to peer including -- FCS octets. -- ifOutUcastPkts: number of I-frames received from -- a higher layer for transmission to peer. -- ifOutDiscards: number of frames to be sent that were -- dropped due to internal conditions such as buffering etc. -- ifOutErrors: number of transmissions that failed -- due to errors or were considered invalid by the receiver. -- This does not have any relationship with the number REJ, -- or RNR frames sent or received.
-- ifOutQLen: number of frames waiting to be transmitted. -- This MIB does not provide any support for: -- Multilink procedure (MLP) in ISO 7776 section 6 -- LLC Pbit timer -- LLC REJ timer -- LLC Busy State Timer 7.8.1.4 -- ###########################################################
END
The ifIndexType textual convention was added and used as the type for all index objects.
The enumeration xidDetection of the lapbAdmnStationType was changed to dxe to be consistent with other similar enumerations.
Conformance statements were added at before every table as ASN.1 comments.
The June 12, 1992 revision of this document (Editor's Internal Reference 2.9) incorporated some clarifications and updated the status.
The range on PositiveInteger was changed to start at 0 rather than 1.
The syntax of lapbXidIndex was changed to PositiveInteger.
A value of dxe was added to lapbOperStationType.
The range of lapbAdmnN2RxmitCount was change to (0..65535).
The definition of ifInOctets, ifInUcastPkts, ifInErrors, ifInUnknownProtos, ifOutOctets, and ifoutUcastPkts was clarified.
The May 18, 1992 revision of this document (Editor's Internal Reference 2.8) incorporated the following changes:
The states of lapbFlowCurrentMode were redefined.
The default value for lapbAdmnControlField was changed from module8 to modulo8.
The April 8, 1992 revision of this document (Editor's Internal Reference 2.4) incorporated the following changes:
All reference comments in the MIB were moved to the REFERENCE field of the OBJECT-TYPE macro.
A type of PositiveInteger was introduced and used for common integer values including all timers. This effectively made the maximum value for timers 2147483646 milliseconds. The type of the frame size was changed to positiveInteger.
The reference to ISO 7776 has been broadened to say the MIB descriptions use the terminology of ISO 7776.
A comment was added to the overview section discussing creation and deletion of tables.
The objects in the lapbParmTable and lapbDefTable were redistributed to create a lapbOperTable, a lapbAdmnTable, and a lapbXidTable. The lapbParmTable and lapbDefTable were deleted. Objects were included in the Admn table for t3 and t4.
An object identifier was added to identify the protocol version.
A DEFVAL clause was added for all writable objects.
Some more overview text was included.
The February 1992 revision of this document (Editor's Internal Reference 1.17) incorporated the following changes:
The name was changed from HDLC to LAPB. This change was made because other flavors of HDLC such as LAPD, SDLC, and raw HDLC framing, are different enough that this MIB will not adequately
manage them.
The Historical Perspective section at the beginning of the document has been replaced with a more concise Network Management Framework section.
The name lapbParmKWindowSize was changed to
lapbParmTransmitKWindowSize and the object
lapbParmReceiveKWindowSize was added. This change was made because
section 5.7.4 of ISO 7776 and Table 3 of ISO 8885 have provisions
for different values for the transmit and receive window size.
The name lapbParmN1FrameSize was changed to
lapbParmTransmitN1FrameSize and the object
lapbParmReceiveN1FrameSize was added. This change was made because
section 5.7.3 of ISO 7776 and Table 3 of ISO 8886 have provisions
for different values for the transmit and receive maximum frame
size.
The object lapbParmPortIndex was deleted and the description of lapbParmPortId was changed. The object lapbParmPortId now identifies an instance of the index object for the MIB of the physical device or interface below LAPB.
The units for the timers were changed to Milliseconds to be consistent with ISO 8885; see table 3.
The objects lapbParamT2AckDelayTimer and
lapbParamT3DisconnectTimer both allow values of 0 to indicate the
timer is not being used.
The object lapbParamT4IdleTimer has a value to indicate timer not in use.
The object lapbFlowXidReceived was added to the flow table.
The lapbDefTable was added.
Ranges and sizes were added for all INTEGERs and OCTET STRINGs that didn't have them.
The October 1991 revision of this document basically changed the name from LAPB to HDLC to make the objects more appropriate for a broader range of uses. A number of minor changes were made to bring the objects in line with established conventions. These changes are as follows.
The enumerated values of hdlcParmStationType were renumbered from 0 and 1 to 1 and 2.
The object hdlcFlowBusyDefer was renamed hdlcFlowBusyDefers.
The object hdlcFlowRejSent was rename hdlcFlowRejOutPkts.
The object hdlcFlowRejReceived was renamed hdlcFlowRejInPkts.
The June revision of this document incorporated much of the E-mail discussion of the first draft. In particular it replaced the lapbStatTable (and all contents) with the lapbFlowTable.
The April 24 version of this document was the first release. At that time this document was basically a bunch of objects synthesized from various vendor MIBs and a quick reading of ISO 7776 [10]. On first reading it appeared to instrument too many LAPB normal functions and too few exceptional conditions. The lapbStatTable was too long and needed to be redone.
This document was produced by the x25mib working group:
Fred Baker, ACC
Art Berggreen, ACC
Frank Bieser
Gary Bjerke, Tandem
Bill Bowman, HP
Christopher Bucci, Datability
Charles Carvalho, ACC
Jeff Case, Snmp Research
Angela Chen, HP
Carson Cheung, BNR
Tom Daniel, Spider Systems
Chuck Davin, MIT
Billy Durham, Honeywell
Richard Fox, Synoptics
Doug Geller, Data General
Herve Goguely, LIR Corp
Andy Goldthorpe, british-telecom
Walter D. Guilarte
David Gurevich
Steve Huston, Process Software Corporation
Jon Infante, ICL
Frank Kastenholz, Clearpoint
Zbigniew Kielczewski, Eicon
Cheryl Krupezak, Georgia Tech
Mats Lindstrom, Diab Data AB
Andrew Malis, BBN
Evan McGinnis, 3Com
Gary (G.P.)Mussar, BNR
Chandy Nilakantan, 3Com
Randy Pafford, Data General
Ragnar Paulson, The Software Group Limited
Dave Perkins, Synoptics
Walter Pinkarschewsky, DEC
Karen Quidley, Data General
Chris Ranch, Novell
Paul S. Rarey, DHL Systems Inc.
Jim Roche, Newbridge Research
Philippe Roger, LIR Corp.
Timon Sloane
Mike Shand, DEC
Brad Steina, Microcom
Bob Stewart, Xyplex
Tom Sullivan, Data General
Rodney Thayer, Sable Technology Corporation
Mark Therieau, Microcom
Jane Thorn, Data General
Dean Throop, Data General
Maurice Turcotte, Racal Datacom
Mike Zendels, Data General
In addition, the comments of the following individuals are also acknowledged:
Keith McCloghrie
[1] Rose M., and K. McCloghrie, "Structure and Identification of Management Information for TCP/IP-based internets", STD 16, RFC 1155, Performance Systems International, Hughes LAN Systems, May 1990.
[2] McCloghrie K., and M. Rose, "Management Information Base for Network Management of TCP/IP-based internets", RFC 1156, Hughes LAN Systems, Performance Systems International, May 1990.
[3] Case, J., Fedor, M., Schoffstall, M., and J. Davin, "Simple
Network Management Protocol", STD 15, RFC 1157, SNMP Research, Performance Systems International, Performance Systems International, MIT Laboratory for Computer Science, May 1990.
[4] Rose, M., and K. McCloghrie, Editors, "Concise MIB Definitions", STD 16, RFC 1212, Performance Systems International, Hughes LAN Systems, March 1991.
[5] Rose M., Editor, "Management Information Base for Network Management of TCP/IP-based internets: MIB-II", STD 17, RFC 1213, Performance Systems International, March 1991.
[6] Information processing systems - Open Systems Interconnection - Specification of Abstract Syntax Notation One (ASN.1), International Organization for Standardization, International Standard 8824, December 1987.
[7] Information processing systems - Open Systems Interconnection - Specification of Basic Encoding Rules for Abstract Notation One (ASN.1), International Organization for Standardization, International Standard 8825, December 1987.
[8] Stewart, B., Editor, "Definitions of Managed Objects for RS-232- like Hardware Devices", RFC 1317, Xyplex, Inc., April 1992.
[9] Throop, D., Editor, "SNMP MIB extension for the Packet Layer of X.25", RFC 1382, Data General Corporation, November 1992.
[10] "Information processing systems - Data communication - High-level data link control procedure - Description of the X.25 LAPB- compatible DTE data link procedures", International Organization for Standardization, International Standard 7776, December 1986.
[11] "Information technology - Telecommunications and information exchange between systems - High-level data link control (HDLC) procedures - General purpose XID frame information field contents and format", International Organization for Standardization, International Standard 8885.
Security issues are not discussed in this memo.
Dean D. Throop
Data General Corporation
62 Alexander Dr.
Research Triangle Park, NC 27709
Phone: (919)248-8421
EMail: throop@dg-rtp.dg.com
Fred Baker
Advanced Computer Communications
315 Bollay Drive
Santa Barbara, CA 93101
Phone: (805) 685-4455
EMail: fbaker@acc.com
While the working group has completed discussion of this document, comments are still welcome. Please send comments to the x25mib working group at: x25mib@dg-rtp.dg.com