RFC 1743
IEEE 802.5 MIB using SMIv2
RFC 1743: IEEE 802.5 MIB using SMIv2 ๐
Okay bestie, RFC 1743 is giving IEEE 802.5 MIB using SMIv2 ๐ It was published as a Standards Track document in December 1994 by K. McCloghrie and E. Decker, both from cisco Systems, Inc. ๐ธ It's the replacement for RFC 1231, so it obsoletes 1231 and that one is officially retired โจ
Status of this Memo ๐
Okay so this part is the official "what is this doc" section ๐ง It says this is an Internet standards track protocol for the Internet community, and it's asking everyone for discussion and suggestions for improvements. ๐ซถ If you want the current standardization state of the protocol, check the current edition of the "Internet Official Protocol Standards" (STD 1) ๐ฅ And yes, distribution of this memo is unlimited, so share it with your whole group chat ๐
Table of Contents ๐๏ธ
1. Introduction ............................................. 1
2. The SNMPv2 Network Management Framework .................. 2
2.1 Object Definitions ...................................... 2
3. Overview ................................................. 2
3.1 MAC Addresses ........................................... 3
3.2 Relationship to RFC 1213 ................................ 3
3.3 Relationship to RFC 1573 ................................ 3
3.3.1 Layering Model ........................................ 3
3.3.2 Virtual Circuits ...................................... 3
3.3.3 ifTestTable ........................................... 3
3.3.4 ifRcvAddressTable ..................................... 4
3.3.5 ifPhysAddress ......................................... 4
3.3.6 ifType ................................................ 4
4. Definitions .............................................. 4
5. Acknowledgements ......................................... 23
6. References ............................................... 23
Appendix A. Changes from RFC 1231 ........................... 24
Security Considerations ..................................... 24
Authors' Addresses .......................................... 25
1. Introduction โจ
This memo is all about a chunk of the Management Information Base (MIB) that network management protocols use across the Internet community ๐ฆ Specifically, it describes managed objects for managing subnetworks that use IEEE 802.5 Token Ring technology, which is spelled out in 802.5 Token Ring Access Method and Physical Layer Specifications, IEEE Standard 802.5-1989 [7]. This memo is a replacement for RFC 1231, so this is the new and improved version ๐
2. The SNMPv2 Network Management Framework ๐
Okay so the SNMPv2 Network Management Framework is made of four major components, and honestly they're all kind of iconic ๐
- RFC 1442 [1] defines the SMI, which is the set of mechanisms for describing and naming objects for management purposes ๐
- STD 17, RFC 1213 [2] defines MIB-II, the core set of managed objects for the Internet suite of protocols ๐
- RFC 1445 [3] defines the administrative and other architectural aspects of the framework ๐ง
- RFC 1448 [4] defines the protocol used for network access to managed objects ๐ฅ
The Framework also lets people define new objects for experimentation and evaluation, which is lowkey so cool ๐ฆ
2.1. Object Definitions ๐
Managed objects get accessed through a virtual information store called the Management Information Base, or MIB ๐ Objects in the MIB are defined with the subset of Abstract Syntax Notation One (ASN.1) that the SMI defines. Each object type is named by an OBJECT IDENTIFIER, which is an administratively assigned name. The object type plus an object instance together uniquely identify one specific instantiation of the object โจ And because humans don't love long names, we often use a textual string called the descriptor to refer to the object type ๐ซถ
3. Overview ๐ธ
Okay this is the big picture ๐ท The memo defines three tables:
- the 802.5 Interface Table, which holds state and parameter information specific to 802.5 interfaces,
- the 802.5 Statistics Table, which holds 802.5 interface statistics, and
- the 802.5 Timer Table, which holds the values of 802.5-defined timers.
A managed system gets one entry in the 802.5 Interface Table and one entry in the 802.5 Statistics Table for each of its 802.5 interfaces ๐ The 802.5 Timer Table is obsolete, but its definition was kept in this memo for backward compatibility ๐
The memo also defines OBJECT IDENTIFIERs. Some of them identify interface tests for use with the ifTestTable [6], and some identify Token Ring interface Chip Sets ๐ง
3.1. MAC Addresses ๐ฆ
All representations of MAC addresses in this MIB Module use the MacAddress textual convention [5]. The address is in the "canonical" order defined by IEEE 802.1a, which means it's written as if it were transmitted least significant bit first. That's a plot twist, because 802.5 actually requires MAC addresses to be transmitted most significant bit first ๐คฏ
If you need 16-bit addresses, you represent them by setting their upper 4 octets to all zeros. So AAFF would be represented as 00000000AAFF ๐
3.2. Relationship to RFC 1213 ๐ท
When this MIB module is used together with the "old" interfaces group (that's the pre-RFC 1573 one), the relationship between an 802.5 interface and an interface in the context of RFC 1213 is one-to-one ๐ So the value of an ifIndex object instance for an 802.5 interface can be used directly to identify the matching instances of the objects defined in this memo โจ
3.3. Relationship to RFC 1573 ๐
RFC 1573, the Interface MIB Evolution, says that any MIB module which is an adjunct of the Interface MIB has to clarify specific areas within the Interface MIB. Those areas were left intentionally vague in RFC 1573 so they wouldn't over-constrain the MIB module and accidentally rule out managing certain media-types ๐ง
Section 3.3 of RFC 1573 lists several areas that a media-specific MIB module must clarify. Each of those areas gets its own subsection below, and the implementor should look at RFC 1573 to understand the general intent behind them ๐ซถ
3.3.1. Layering Model โญ
For the typical usage of this IEEE 802.5 MIB module, there won't be any sub-layers "above" or "below" the 802.5 interface. However, this MIB module doesn't rule out that kind of layering, so it's still flexible ๐
3.3.2. Virtual Circuits ๐ฆ
802.5 does not support virtual circuits. Period ๐
3.3.3. ifTestTable ๐
This MIB module defines two tests for 802.5 interfaces: Insertion and Loopback. Implementing these tests is not required, so you can skip them if you don't need them ๐ธ
3.3.4. ifRcvAddressTable ๐ฅ
The ifRcvAddressTable is defined to contain all MAC addresses (unicast, multicast (group) and broadcast) that an interface will receive packets for. For 802.5 interfaces, this also includes functional addresses. The format of the address, which lives in ifRcvAddressAddress, is the same as for ifPhysAddress ๐
For functional addresses on a particular 802.5 interface, only one ifRcvAddressTable entry is required. That entry is the one for the address that has the functional address bit ANDed with the bit mask of all functional addresses the interface will accept frames for โจ
3.3.5. ifPhysAddress ๐
For an 802.5 interface, ifPhysAddress holds the interface's IEEE MAC address. It's stored as an octet string of length 6, in IEEE 802.1a "canonical" order. That means the Group Bit sits in the low-order bit (0x01) of the first octet ๐ค
3.3.6. ifType ๐ง
The objects defined in this memo apply to each interface whose ifType has the value:
iso88025-tokenRing(9)
4. Definitions ๐
Here's the actual MIB module, so let's get into it ๐
TOKENRING-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, OBJECT-IDENTITY,
Counter32, Integer32 FROM SNMPv2-SMI
transmission FROM RFC1213-MIB
MacAddress,TimeStamp FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF;
dot5 MODULE-IDENTITY
LAST-UPDATED "9410231150Z"
ORGANIZATION "IETF Interfaces MIB Working Group"
CONTACT-INFO
" Keith McCloghrie
Postal: cisco Systems, Inc.
170 West Tasman Drive,
San Jose, CA 95134-1706
US
Phone: +1 408 526 5260
EMail: kzm@cisco.com"
DESCRIPTION
"The MIB module for IEEE Token Ring entities."
::= { transmission 9 }
-- The 802.5 Interface Table
-- This table contains state and parameter information which
-- is specific to 802.5 interfaces. It is mandatory that
-- systems having 802.5 interfaces implement this table in
-- addition to the ifTable (see RFCs 1213 and 1573).
dot5Table OBJECT-TYPE
SYNTAX SEQUENCE OF Dot5Entry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains Token Ring interface
parameters and state variables, one entry
per 802.5 interface."
::= { dot5 1 }
dot5Entry OBJECT-TYPE
SYNTAX Dot5Entry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of Token Ring status and parameter
values for an 802.5 interface."
INDEX { dot5IfIndex }
::= { dot5Table 1 }
Dot5Entry ::= SEQUENCE {
dot5IfIndex Integer32,
dot5Commands INTEGER,
dot5RingStatus INTEGER,
dot5RingState INTEGER,
dot5RingOpenStatus INTEGER,
dot5RingSpeed INTEGER,
dot5UpStream MacAddress,
dot5ActMonParticipate INTEGER,
dot5Functional MacAddress,
dot5LastBeaconSent TimeStamp
}
dot5IfIndex OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of this object identifies the
802.5 interface for which this entry
contains management information. The
value of this object for a particular
interface has the same value as the
ifIndex object, defined in MIB-II for
the same interface."
::= { dot5Entry 1 }
dot5Commands OBJECT-TYPE
SYNTAX INTEGER {
noop(1),
open(2),
reset(3),
close(4)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"When this object is set to the value of
open(2), the station should go into the
open state. The progress and success of
the open is given by the values of the
objects dot5RingState and
dot5RingOpenStatus.
When this object is set to the value
of reset(3), then the station should do
a reset. On a reset, all MIB counters
should retain their values, if possible.
Other side affects are dependent on the
hardware chip set.
When this object is set to the value
of close(4), the station should go into
the stopped state by removing itself
from the ring.
Setting this object to a value of
noop(1) has no effect.
When read, this object always has a
value of noop(1).
The open(2) and close(4) values
correspond to the up(1) and down(2) values
of MIB-II's ifAdminStatus and ifOperStatus,
i.e., the setting of ifAdminStatus and
dot5Commands affects the values of both
dot5Commands and ifOperStatus."
::= { dot5Entry 2 }
okay so now we're getting into the ring stuff ๐ this part covers the token ring status, state, and parameter objects, and then the 802.5 statistics table ๐ฆ
dot5RingStatus OBJECT-TYPE
SYNTAX INTEGER (0..262143)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current interface status which can
be used to diagnose fluctuating problems
that can occur on token rings, after a
station has successfully been added to
the ring.
Before an open is completed, this
object has the value for the 'no status'
condition. The dot5RingState and
dot5RingOpenStatus objects provide for
debugging problems when the station
can not even enter the ring.
The object's value is a sum of
values, one for each currently applicable
condition. The following values are
defined for various conditions:
0 = No Problems detected
32 = Ring Recovery
64 = Single Station
256 = Remove Received
512 = reserved
1024 = Auto-Removal Error
2048 = Lobe Wire Fault
4096 = Transmit Beacon
8192 = Soft Error
16384 = Hard Error
32768 = Signal Loss
131072 = no status, open not completed."
::= { dot5Entry 3 }
dot5RingState OBJECT-TYPE
SYNTAX INTEGER {
opened(1),
closed(2),
opening(3),
closing(4),
openFailure(5),
ringFailure(6)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The current interface state with respect
to entering or leaving the ring."
::= { dot5Entry 4 }
dot5RingOpenStatus OBJECT-TYPE
SYNTAX INTEGER {
noOpen(1), -- no open attempted
badParam(2),
lobeFailed(3),
signalLoss(4),
insertionTimeout(5),
ringFailed(6),
beaconing(7),
duplicateMAC(8),
requestFailed(9),
removeReceived(10),
open(11) -- last open successful
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the success, or the
reason for failure, of the station's most
recent attempt to enter the ring."
::= { dot5Entry 5 }
dot5RingSpeed OBJECT-TYPE
SYNTAX INTEGER {
unknown(1),
oneMegabit(2),
fourMegabit(3),
sixteenMegabit(4)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The ring-speed at the next insertion into
the ring. Note that this may or may not be
different to the current ring-speed which is
given by MIB-II's ifSpeed. For interfaces
which do not support changing ring-speed,
dot5RingSpeed can only be set to its current
value. When dot5RingSpeed has the value
unknown(1), the ring's actual ring-speed is
to be used."
::= { dot5Entry 6 }
dot5UpStream OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The MAC-address of the up stream neighbor
station in the ring."
::= { dot5Entry 7 }
dot5ActMonParticipate OBJECT-TYPE
SYNTAX INTEGER {
true(1),
false(2)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"If this object has a value of true(1) then
this interface will participate in the
active monitor selection process. If the
value is false(2) then it will not.
Setting this object does not take effect
until the next Active Monitor election, and
might not take effect until the next time
the interface is opened."
::= { dot5Entry 8 }
dot5Functional OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The bit mask of all Token Ring functional
addresses for which this interface will
accept frames."
::= { dot5Entry 9 }
dot5LastBeaconSent OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of MIB-II's sysUpTime object at which
the local system last transmitted a Beacon frame
on this interface."
::= { dot5Entry 10 }
-- The 802.5 Statistics Table
-- This table contains statistics and error counter which are
-- specific to 802.5 interfaces. It is mandatory that systems
-- having 802.5 interfaces implement this table.
dot5StatsTable OBJECT-TYPE
SYNTAX SEQUENCE OF Dot5StatsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table containing Token Ring statistics,
one entry per 802.5 interface.
All the statistics are defined using
the syntax Counter32 as 32-bit wrap around
counters. Thus, if an interface's
hardware maintains these statistics in
16-bit counters, then the agent must read
the hardware's counters frequently enough
to prevent loss of significance, in order
to maintain 32-bit counters in software."
::= { dot5 2 }
dot5StatsEntry OBJECT-TYPE
SYNTAX Dot5StatsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry contains the 802.5 statistics
for a particular interface."
INDEX { dot5StatsIfIndex }
::= { dot5StatsTable 1 }
Dot5StatsEntry ::= SEQUENCE {
dot5StatsIfIndex Integer32,
dot5StatsLineErrors Counter32,
dot5StatsBurstErrors Counter32,
dot5StatsACErrors Counter32,
dot5StatsAbortTransErrors Counter32,
dot5StatsInternalErrors Counter32,
dot5StatsLostFrameErrors Counter32,
dot5StatsReceiveCongestions Counter32,
dot5StatsFrameCopiedErrors Counter32,
dot5StatsTokenErrors Counter32,
dot5StatsSoftErrors Counter32,
dot5StatsHardErrors Counter32,
dot5StatsSignalLoss Counter32,
dot5StatsTransmitBeacons Counter32,
dot5StatsRecoverys Counter32,
dot5StatsLobeWires Counter32,
dot5StatsRemoves Counter32,
dot5StatsSingles Counter32,
dot5StatsFreqErrors Counter32
}
dot5StatsIfIndex OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of this object identifies the
802.5 interface for which this entry
contains management information. The
value of this object for a particular
interface has the same value as MIB-II's
ifIndex object for the same interface."
::= { dot5StatsEntry 1 }
dot5StatsLineErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This counter is incremented when a frame
or token is copied or repeated by a
station, the E bit is zero in the frame
or token and one of the following
conditions exists: 1) there is a
non-data bit (J or K bit) between the SD
and the ED of the frame or token, or
2) there is an FCS error in the frame."
::= { dot5StatsEntry 2 }
dot5StatsBurstErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This counter is incremented when a station
detects the absence of transitions for five
half-bit timers (burst-five error)."
::= { dot5StatsEntry 3 }
dot5StatsACErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This counter is incremented when a station
receives an AMP or SMP frame in which A is
equal to C is equal to 0, and then receives
another SMP frame with A is equal to C is
equal to 0 without first receiving an AMP
frame. It denotes a station that cannot set
the AC bits properly."
::= { dot5StatsEntry 4 }
dot5StatsAbortTransErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This counter is incremented when a station
transmits an abort delimiter while
transmitting."
::= { dot5StatsEntry 5 }
dot5StatsInternalErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This counter is incremented when a station
recognizes an internal error."
::= { dot5StatsEntry 6 }
dot5StatsLostFrameErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This counter is incremented when a station
is transmitting and its TRR timer expires.
This condition denotes a condition where a
transmitting station in strip mode does not
receive the trailer of the frame before the
TRR timer goes off."
::= { dot5StatsEntry 7 }
dot5StatsReceiveCongestions OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This counter is incremented when a station
recognizes a frame addressed to its
specific address, but has no available
buffer space indicating that the station
is congested."
::= { dot5StatsEntry 8 }
dot5StatsFrameCopiedErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This counter is incremented when a station
recognizes a frame addressed to its
specific address and detects that the FS
field A bits are set to 1 indicating a
possible line hit or duplicate address."
::= { dot5StatsEntry 9 }
dot5StatsTokenErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This counter is incremented when a station
acting as the active monitor recognizes an
error condition that needs a token
transmitted."
::= { dot5StatsEntry 10 }
dot5StatsSoftErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of Soft Errors the interface
has detected. It directly corresponds to
the number of Report Error MAC frames
that this interface has transmitted.
Soft Errors are those which are
recoverable by the MAC layer protocols."
::= { dot5StatsEntry 11 }
dot5StatsHardErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times this interface has
detected an immediately recoverable
fatal error. It denotes the number of
times this interface is either
transmitting or receiving beacon MAC
frames."
::= { dot5StatsEntry 12 }
Okay bestie, the stats counters keep going, and these ones are all about the ring itself ๐๐ Here's the signal, beacon, and recovery crew:
dot5StatsSignalLoss OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times this interface has
detected the loss of signal condition from
the ring."
::= { dot5StatsEntry 13 }
dot5StatsTransmitBeacons OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times this interface has
transmitted a beacon frame."
::= { dot5StatsEntry 14 }
dot5StatsRecoverys OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of Claim Token MAC frames
received or transmitted after the interface
has received a Ring Purge MAC frame. This
counter signifies the number of times the
ring has been purged and is being recovered
back into a normal operating state."
::= { dot5StatsEntry 15 }
dot5StatsLobeWires OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times the interface has
detected an open or short circuit in the
lobe data path. The adapter will be closed
and dot5RingState will signify this
condition."
::= { dot5StatsEntry 16 }
dot5StatsRemoves OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times the interface has
received a Remove Ring Station MAC frame
request. When this frame is received
the interface will enter the close state
and dot5RingState will signify this
condition."
::= { dot5StatsEntry 17 }
dot5StatsSingles OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times the interface has
sensed that it is the only station on the
ring. This will happen if the interface
is the first one up on a ring, or if
there is a hardware problem."
::= { dot5StatsEntry 18 }
dot5StatsFreqErrors OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times the interface has
detected that the frequency of the
incoming signal differs from the expected
frequency by more than that specified by
the IEEE 802.5 standard."
::= { dot5StatsEntry 19 }
So that's the signal loss, beacon, purge recovery, lobe wire, remove, singles, and frequency counters ๐ฆ Recoveries counts the Claim Token frames that happen after a Ring Purge, and the lobe wire, remove, and singles counters each tie back to dot5RingState ๐
The frequency one counts when the incoming signal is off from the expected frequency by more than the IEEE 802.5 standard allows โจ
The Timer Table ๐ฐ๏ธ
Here's the timer table, which is officially obsolete but kept around so older setups don't break ๐ซถ It's got one entry per 802.5 interface, and most of its values are in units of 100 micro-seconds, so bestie, do the math carefully ๐งฎ
-- The Timer Table
-- This group contains the values of timers for 802.5
-- interfaces. This table is obsolete, but its definition
-- is retained here for backwards compatibility.
dot5TimerTable OBJECT-TYPE
SYNTAX SEQUENCE OF Dot5TimerEntry
MAX-ACCESS not-accessible
STATUS obsolete
DESCRIPTION
"This table contains Token Ring interface
timer values, one entry per 802.5
interface."
::= { dot5 5 }
dot5TimerEntry OBJECT-TYPE
SYNTAX Dot5TimerEntry
MAX-ACCESS not-accessible
STATUS obsolete
DESCRIPTION
"A list of Token Ring timer values for an
802.5 interface."
INDEX { dot5TimerIfIndex }
::= { dot5TimerTable 1 }
Dot5TimerEntry ::= SEQUENCE {
dot5TimerIfIndex Integer32,
dot5TimerReturnRepeat Integer32,
dot5TimerHolding Integer32,
dot5TimerQueuePDU Integer32,
dot5TimerValidTransmit Integer32,
dot5TimerNoToken Integer32,
dot5TimerActiveMon Integer32,
dot5TimerStandbyMon Integer32,
dot5TimerErrorReport Integer32,
dot5TimerBeaconTransmit Integer32,
dot5TimerBeaconReceive Integer32
}
dot5TimerIfIndex OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The value of this object identifies the
802.5 interface for which this entry
contains timer values. The value of
this object for a particular interface
has the same value as MIB-II's ifIndex
object for the same interface."
::= { dot5TimerEntry 1 }
dot5TimerReturnRepeat OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The time-out value used to ensure the
interface will return to Repeat State, in
units of 100 micro-seconds. The value
should be greater than the maximum ring
latency."
::= { dot5TimerEntry 2 }
dot5TimerHolding OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"Maximum period of time a station is
permitted to transmit frames after capturing
a token, in units of 100 micro-seconds."
::= { dot5TimerEntry 3 }
dot5TimerQueuePDU OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The time-out value for enqueuing of an SMP
PDU after reception of an AMP or SMP
frame in which the A and C bits were
equal to 0, in units of 100
micro-seconds."
::= { dot5TimerEntry 4 }
dot5TimerValidTransmit OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The time-out value used by the active
monitor to detect the absence of valid
transmissions, in units of 100
micro-seconds."
::= { dot5TimerEntry 5 }
dot5TimerNoToken OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The time-out value used to recover from
various-related error situations.
If N is the maximum number of stations on
the ring, the value of this timer is
normally:
dot5TimerReturnRepeat + N*dot5TimerHolding."
::= { dot5TimerEntry 6 }
dot5TimerActiveMon OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The time-out value used by the active
monitor to stimulate the enqueuing of an
AMP PDU for transmission, in units of
100 micro-seconds."
::= { dot5TimerEntry 7 }
dot5TimerStandbyMon OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The time-out value used by the stand-by
monitors to ensure that there is an active
monitor on the ring and to detect a
continuous stream of tokens, in units of
100 micro-seconds."
::= { dot5TimerEntry 8 }
dot5TimerErrorReport OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The time-out value which determines how
often a station shall send a Report Error
MAC frame to report its error counters,
in units of 100 micro-seconds."
::= { dot5TimerEntry 9 }
dot5TimerBeaconTransmit OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The time-out value which determines how
long a station shall remain in the state
of transmitting Beacon frames before
entering the Bypass state, in units of
100 micro-seconds."
::= { dot5TimerEntry 10 }
dot5TimerBeaconReceive OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS obsolete
DESCRIPTION
"The time-out value which determines how
long a station shall receive Beacon
frames from its downstream neighbor
before entering the Bypass state, in
units of 100 micro-seconds."
::= { dot5TimerEntry 11 }
Every timer in this table is marked obsolete, and they cover things like return to Repeat State, holding time, the SMP queue timeout, the active and standby monitor timers, the Report Error interval, and the beacon transmit and receive timeouts ๐ธ The NoToken one even comes with a formula, dot5TimerReturnRepeat + N*dot5TimerHolding, where N is the max number of stations on the ring ๐ง
802.5 Interface Tests ๐งช
Next up are the interface tests, which a manager can kick off through the ifTestTable ๐ซ Each test is an OBJECT IDENTIFIER, and you have to be a little careful with the insert one because it inserts the station right into the network ๐ญ
-- 802.5 Interface Tests
dot5Tests OBJECT IDENTIFIER ::= { dot5 3 }
-- RFC 1573 defines the ifTestTable, through which a
-- network manager can instruct an agent to test an interface
-- for various faults. A test to be performed is identified
-- as an OBJECT IDENTIFIER.
-- The Insert Function test
dot5TestInsertFunc OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Invoking this test causes the station to test the insert
ring logic of the hardware if the station's lobe media
cable is connected to a wiring concentrator. Note that
this command inserts the station into the network, and
thus, could cause problems if the station is connected
to a operational network."
::= { dot5Tests 1 }
-- The Full-Duplex Loop Back test
dot5TestFullDuplexLoopBack OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Invoking this test on a 802.5 interface causes the
interface to check the path from memory through the
chip set's internal logic and back to memory, thus
checking the proper functioning of the system's
interface to the chip set."
::= { dot5Tests 2 }
The insert function test checks the insert ring logic when the lobe cable is hooked up to a wiring concentrator, and this command really does put the station onto the network, so it could cause trouble if it's plugged into a live one ๐ The full-duplex loop back test goes from memory through the chip set's internal logic and back to memory, so it checks the link between the system and the chip set ๐
802.5 Hardware Chip Sets ๐งฉ
These are the chip set identifiers. RFC 1229 used ifExtnsChipSet for this, RFC 1573 obsoletes that, but these definitions stay for backwards compatibility ๐
-- 802.5 Hardware Chip Sets
-- RFC 1229 specified an object, ifExtnsChipSet, with the
-- syntax of OBJECT IDENTIFIER, to identify the hardware
-- chip set in use by an interface. RFC 1573 obsoletes
-- the use of ifExtnsChipSet. However, the following
-- definitions are retained for backwards compatibility.
dot5ChipSets OBJECT IDENTIFIER ::= { dot5 4 }
dot5ChipSetIBM16 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"IBM's 16/4 Mbs chip set."
::= { dot5ChipSets 1 }
dot5ChipSetTItms380 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Texas Instruments' TMS 380 4Mbs chip-set"
::= { dot5ChipSets 2 }
dot5ChipSetTItms380c16 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Texas Instruments' TMS 380C16 16/4 Mbs chip-set"
::= { dot5ChipSets 3 }
There are three of them: IBM's 16/4 Mbs chip set, Texas Instruments' TMS 380 at 4 Mbs, and Texas Instruments' TMS 380C16 at 16/4 Mbs ๐
Conformance Information ๐
Finally, the conformance section sets up the groups and compliance statements, which is basically the rulebook for who's doing what ๐
-- conformance information
dot5Conformance OBJECT IDENTIFIER ::= { dot5 5 }
dot5Groups OBJECT IDENTIFIER ::= { dot5Conformance 1 }
dot5Compliances OBJECT IDENTIFIER ::= { dot5Conformance 2 }
-- compliance statements
dot5Compliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for SNMPv2 entities
which implement the IEEE 802.5 MIB."
MODULE -- this module
MANDATORY-GROUPS { dot5StateGroup, dot5StatsGroup }
OBJECT dot5ActMonParticipate
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
OBJECT dot5Functional
MIN-ACCESS read-only
DESCRIPTION
"Write access is not required."
::= { dot5Compliances 1 }
-- units of conformance
dot5StateGroup OBJECT-GROUP
OBJECTS { dot5Commands, dot5RingStatus, dot5RingState,
dot5RingOpenStatus, dot5RingSpeed, dot5UpStream,
dot5ActMonParticipate, dot5Functional,
dot5LastBeaconSent
}
STATUS current
DESCRIPTION
"A collection of objects providing state information
and parameters for IEEE 802.5 interfaces."
::= { dot5Groups 1 }
The compliance statement is for SNMPv2 entities that implement the IEEE 802.5 MIB, and the state and stats groups are mandatory ๐ The dot5ActMonParticipate and dot5Functional objects only need read-only minimum access, and the state group collects the state info and parameters for IEEE 802.5 interfaces โญ
dot5StatsGroup OBJECT-GROUP
OBJECTS { dot5StatsLineErrors, dot5StatsBurstErrors,
dot5StatsACErrors, dot5StatsAbortTransErrors,
dot5StatsInternalErrors, dot5StatsLostFrameErrors,
dot5StatsReceiveCongestions,
dot5StatsFrameCopiedErrors, dot5StatsTokenErrors,
dot5StatsSoftErrors, dot5StatsHardErrors,
dot5StatsSignalLoss, dot5StatsTransmitBeacons,
dot5StatsRecoverys, dot5StatsLobeWires,
dot5StatsRemoves, dot5StatsSingles,
dot5StatsFreqErrors
}
STATUS current
DESCRIPTION
"A collection of objects providing statistics for
IEEE 802.5 interfaces."
::= { dot5Groups 2 }
END
5. Acknowledgements ๐ซถ
Okay, shoutout time! The changes from RFC 1231 came out of discussions on the IETF's snmp mailing-list and in the Interfaces MIB Working Group. So many smart people in those rooms, and they absolutely deserve the flowers ๐ธ
6. References ๐
[1] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Structure of Management Information for version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1442, SNMP Research,Inc., Hughes LAN Systems, Dover Beach Consulting, Inc., Carnegie Mellon University, April 1993.
[2] McCloghrie, K., and M. Rose, Editors, "Management Information Base for Network Management of TCP/IP-based internets: MIB-II", STD 17, RFC 1213, Hughes LAN Systems, Performance Systems International, March 1991.
[3] Galvin, J., and K. McCloghrie, "Administrative Model for version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1445, Trusted Information Systems, Hughes LAN Systems, April 1993.
[4] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Protocol Operations for version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1448, SNMP Research,Inc., Hughes LAN Systems, Dover Beach Consulting, Inc., Carnegie Mellon University, April 1993.
[5] Case, J., McCloghrie, K., Rose, M., and S. Waldbusser, "Textual Conventions for version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1443, SNMP Research,Inc., Hughes LAN Systems, Dover Beach Consulting, Inc., Carnegie Mellon University, April 1993.
[6] McCloghrie, K., and F. Kastenholz, "Evolution of the Interfaces Group of MIB-II", RFC 1573, Hughes LAN Systems, FTP Software, Jan 1994
[7] Institute of Electrical and Electronic Engineers, "Token Ring Access Method and Physical Layer Specifications", IEEE Standard 802.5-1989, 1989.
APPENDIX A - Changes from RFC 1231 ๐
Here's the glow-up list of everything that changed from RFC 1231. This memo has the following differences from RFC 1231:
- This memo is formatted using the SNMPv2 SMI. โจ
- The relationship of the "open" and "close" states of
dot5Commandsto the value ofifAdminStatushas been clarified. In particular, the setting of one affects the value of the other. ๐ - The relationship between
dot5RingSpeedandifSpeedhas been clarified. In particular,ifSpeedindicates the current ring-speed, anddot5RingSpeedindicates the ring-speed at the next insertion into the ring. If the interface doesn't support changing ring-speed, thendot5RingSpeedcan only be set to its current value. Whendot5RingSpeedhas the valueunknown(1), the ring-speed is to be set to the ring's actual ring-speed. ๐๏ธ - Write-access to
dot5ActMonParticipateis not required, and a change to the value ofdot5ActMonParticipatedoes not take effect until the next Active Monitor election. ๐ - Write-access to
dot5Functionalis not required. ๐ - A new object,
dot5LastBeaconSent, has been defined to contain the timestamp of the last beacon frame sent. โฐ - The
dot5TimerTablehas been designated as obsolete. ๐ชฆ - Text has been added describing the applicability of RFC 1573 [6] to 802.5 interfaces. ๐
- Other minor editorial changes. ๐
Security Considerations ๐
Okay, this one is a hard pass from me. Security issues are not discussed in this memo. Not one word. Keep that in mind when you're deploying anything from this spec ๐
Authors' Addresses ๐
Keith McCloghrie
cisco Systems, Inc.
170 West Tasman Drive,
San Jose, CA 95134-1706
Phone: (408) 526-5260
EMail: kzm@cisco.com
Eric B. Decker
cisco Systems, Inc.
1525 O'Brien Dr.
Menlo Park, CA 94025
Phone: (415) 688-8241
EMail: cire@cisco.com
That's the whole thing, bestie ๐โจ
๐ฆ where this page comes from
- ietf: rfc1743 1994-12
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms