Definitions of Managed Objects for IEEE 802.3 Repeater Devices
obsoleted by
- rfc-2108 — Definitions of Managed Objects for IEEE 802.3 Repeater Devices using SMIv2
obsoletes
- rfc-1368 — Definition of Managed Objects for IEEE 802.3 Repeater Devices
Extracted elements (29)
The document is named 'Repeater MIB' rather than 'Hub MIB' to avoid confusion: the term 'hub' is commonly used to refer to modular chassis devices with mixed LAN/WAN connectivity bridging 802.3, token ring, and FDDI segments, which are outside the scope of this specification.
The group/port numbering scheme follows the IEEE 802.3 Repeater Management draft, allowing implementors to represent field-replaceable modules as groups so that port numbering matches modular hardware. This mapping is recommended but optional; an implementor may put all ports in a single group.
The MacAddress textual convention (OCTET STRING SIZE 6) has no effect on the encoding or semantics of managed objects; it is adopted purely for reader convenience and requires no changes to the SMI or SNMP.
The MIB-II 'interfaces' group has NO specific relationship to a repeater's ports, because a repeater is a bit-level store-and-forward device with no MAC address, no MAC implementation, and no higher-layer protocol processing. The interfaces group applies only to the management entity's own network interfaces.
The per-group summary counters (rptrMonitorGroupTotalFrames, rptrMonitorGroupTotalOctets, rptrMonitorGroupTotalErrors) are explicitly redundant sums of per-port counters, included because polling a single group-level counter is a considerable optimization over retrieving all individual port counters.
A repeater implementing this MIB is assumed to also implement at least the 'system' group from MIB-II. The interfaces group applies only to the management entity's interfaces, not to repeater ports.
If some ports are unmanaged (not appearing in the port table), the sum of per-port input counters will not equal the actual repeater output. GroupCapacity for a group always reflects only the number of managed ports in that group.
Port numbers in the repeater have no mandatory relationship to ifIndex values in the MIB-II interfaces table. The rptrPortGroupIndex and rptrPortIndex pair uniquely identifies a port; the interfaces group does not map to repeater ports.
Agents MUST throttle consecutive traps of the same type so there is at least a five-second gap between transmissions. When traps are throttled they are dropped, not queued. This applies independently to rptrHealth, rptrGroupChange, and rptrResetEvent.
Implementation of the Basic Group (rptrBasicPackage) is mandatory for all managed repeaters. The Monitor Group and Address Tracking Group are optional, but if any part of either optional group is implemented, the entire group must be implemented.
The rptrResetEvent trap is not sent when the agent restarts and sends an SNMP coldStart or warmStart trap. However, it is RECOMMENDED that the repeater agent include rptrOperStatus as an optional object with its coldStart and warmStart trap PDUs.
The value of rptrGroupCapacity must remain constant from one management restart to the next. Similarly, rptrGroupPortCapacity must not change for a given group (though a group may be replaced by one with a different port count).
rptrAddrTrackLastSourceAddress (rptrAddrTrackEntry 3) is a deprecated MacAddress object. It was deprecated because its value is undefined when no frames have been observed on the port; rptrAddrTrackNewLastSrcAddress is the replacement.
rptrAddrTrackNewLastSrcAddress (rptrAddrTrackEntry 5) is a read-only OCTET STRING (SIZE(0|6)) containing the source MAC address of the last readable frame on the port, or a zero-length string if no frames have been received since monitoring began.
rptrGroupCapacity (rptrRptrInfo 1) is a read-only INTEGER (1..1024) indicating the maximum number of groups the repeater can contain. Its value must remain constant from one management restart to the next.
rptrMonitorPortAlignmentErrors (rptrMonitorPortEntry 6) counts frames with both FCSError and FramingError asserted and no CollisionEvent, within minFrameSize..maxFrameSize. If this counter is incremented for a frame, rptrMonitorPortFCSErrors shall not also be incremented for that same frame.
rptrMonitorPortDataRateMismatches (rptrMonitorPortEntry 13) counts frames received without CollisionEvent, with ActivityDuration > ValidPacketMinTime, and a detectably mismatched data rate relative to the local transmit frequency. The threshold for mismatch detection is vendor-specific.
rptrMonitorPortLateEvents (rptrMonitorPortEntry 11) counts CarrierEvents where the CollIn(X) variable transitions to SQE while ActivityDuration exceeds LateEventThreshold (between 480 and 565 bit times). Each such event is counted twice: once as a collision and once as a lateEvent.
rptrMonitorPortRunts (rptrMonitorPortEntry 9) counts CarrierEvents with ActivityDuration between ShortEventMaxTime and ValidPacketMinTime (552–565 bit times) and no CollisionEvent, or events with OctetCount < 64, ActivityDuration > ShortEventMaxTime, and no CollisionEvent. An event between 74 and 82 bit times increments either shortEvents or runts but not both.
rptrMonitorPortShortEvents (rptrMonitorPortEntry 8) counts CarrierEvents with ActivityDuration less than ShortEventMaxTime (between 74 and 82 bit times). Short events may indicate external noise causing the repeater to transmit runts or propagate late collisions to other ports.
rptrMonitorPortTotalErrors (rptrMonitorPortEntry 15) is a Counter summing FCSErrors, AlignmentErrors, FrameTooLongs, ShortEvents, LateEvents, VeryLongEvents, and DataRateMismatches for a port. It is explicitly redundant but included to optimize management traffic by avoiding retrieval of seven individual counters.
rptrNonDisruptTest (rptrRptrInfo 5) is a read-write INTEGER {noSelfTest(1), selfTest(2)}. Setting it to selfTest(2) runs an agent-specific non-disruptive self-test that does not change repeater state, inject packets, or prevent frame relay, and always results in an rptrHealth trap.
rptrOperStatus (rptrRptrInfo 2) is a read-only INTEGER with values other(1), ok(2), rptrFailure(3), groupFailure(4), portFailure(5), generalFailure(6). When multiple failure types exist, the highest-priority failure is reported in the listed order.
rptrPortAdminStatus (rptrPortEntry 3) is a read-write INTEGER {enabled(1), disabled(2)}. A disabled port neither transmits nor receives; a port disabled when power is lost or reset occurs shall remain disabled on resumption. Enabling a port exerts BEGIN on the auto-partition state machine, resetting rptrPortAutoPartitionState to notAutoPartitioned(1).
rptrPortAutoPartitionState (rptrPortEntry 4) is a read-only INTEGER {notAutoPartitioned(1), autoPartitioned(2)} reflecting whether the port is currently isolated by the repeater's auto-partition protection mechanism per IEEE 802.3 Section 9.
rptrReset (rptrRptrInfo 4) is a read-write INTEGER {noReset(1), reset(2)}. Setting it to reset(2) triggers a transition to the START state per IEEE 802.3 Fig 9-2, executes a disruptive self-test, and causes an rptrHealth trap; management counters and portAdminStatus are not affected by the reset.
Three SNMP traps are defined: rptrHealth (sent on rptrOperStatus change or after self-test, carries rptrOperStatus), rptrGroupChange (sent when a group is added or removed, carries rptrGroupIndex), and rptrResetEvent (sent on completion of a management-triggered reset, carries rptrOperStatus).
RFC 1516 explicitly states that security issues are not discussed in this memo. No authentication, access control, or confidentiality mechanisms are specified for the SNMP management of repeater objects defined here.
Port admin state interacts with auto-partition: when rptrPortAdminStatus is set to disabled(2), the rptrPortAutoPartitionState is frozen at its current value. When the port is re-enabled, rptrPortAutoPartitionState resets to notAutoPartitioned(1) regardless of its pre-disabling value.