RFC 1369
Implementation Notes and Experience for the Internet Ethernet MIB
Implementation Notes and Experience for The Internet Ethernet MIB π¦
okay bestie, this one is from October 1992 and it's written by F. Kastenholz over at FTP Software π» It's part of the Network Working Group stream and it's numbered RFC 1369 π It's an informational memo, not a standard, and its header doesn't list any RFCs it obsoletes or updates β¨
Status of this Memo π
Quick legal bit π This memo gives information to the Internet community. It does not specify an Internet standard. Distribution of this memo is unlimited πΈ
Table of Contents ποΈ
1. Introduction ................................................ 1
2. Observations ................................................ 2
3. Conclusions ................................................. 3
4. Final Action ................................................ 4
5. Implementation Data ......................................... 5
6. Security Considerations ..................................... 7
7. Author's Address ............................................ 7
1. Introduction π§
So the Ethernet MIB Working Group has two work items on their plate π
- Write a doc explaining why MIB variables that are optional in the relevant IEEE 802.3 specification (the technical basis for the Internet Ethernet MIB) get MANDATORY status anyway π This one is NOT going on the standards track.
- Write an implementation report on the Ethernet MIB π It covers MIB variables that show up in both Ethernet interface chips and in software (i.e., drivers), and it talks through the issues for both. It also sums up field experience with the MIB variables, especially the ones people are still arguing about π₯ This one is not standards-track either. Since the Ethernet MIB is moving through standardization, this doc gets periodically updated so it keeps up with the latest implementation and operational experience π«Ά
This document reflects the currently known status of 11 different implementations of the MIB, from 7 different vendors, on 7 different Ethernet interface chips π
2. Observations π
Okay, here's the juicy stuff β¨ There are some interesting points to note:
- Only 4 variables are actually implemented in every single implementation:
AlignmentErrors,FCSErrors,ExcessiveCollisionsandInternalMacTransmitErrorsπ - Another five variables are implemented in all but one of the reported implementations:
SingleCollisionFrames,MultipleCollisionFrames,LateCollisions,FrameTooLongs, andCarrierSenseErrorsπ¦
Three of these variables exist in implementations that use the same chip as the one missing the variable. Specifically:
- A)
SingleCollisionFramesis not implemented in implementation number 3, which uses the AMD LANCE. However, other AMD LANCE implementations (7, 8, and 10) do implement the variable, implying that it is available on the LANCE π - B)
MultipleCollisionFramesis not implemented in implementation number 3, which uses the AMD LANCE. However, other AMD LANCE implementations (7, 8, and 10) do implement the variable, implying that it is available on the LANCE π - C)
LateCollisionsis not implemented in implementation number 1, which uses the Intel 82586. However, another Intel 82586 based implementation (11) does implement the variable, implying that it is available on the Intel 82586 π§ - D)
CarrierSenseErrorsis not implemented on implementation number 2, which is based on the Fujitsu 86950 chip. However, there is only one implementation based on this chip, and I have not been able to locate a data sheet on this part, so no conclusion can be drawn at this time π - E)
FrameTooLongsis not implemented on implementation number 5, which is based on the National NIC 8390 chip. However, there is only one implementation based on this chip, and I have not been able to locate a data sheet on this part. It should also be noted that this variable is easily maintained by software as a "driver-level" function π
- Of the 22 variables in the MIB, 11, or 1/2 of the variables, were implemented in about 1/2 or less of the implementations π
- The number of variables implemented per implementation ranges from a low of 11 to a high of 16. The average number of variables truly implemented is 12.8 π
- The IEEE 802.3 encapsulation-specific variables (
InRangeLengthErrors, andOutOfRangeLengthFields) are in 2 and 0 implementations respectively π
5. Implementation Data β¨
Okay bestie, this part is the receipts π§Ύ. Vendors who each built an Ethernet MIB implementation handed over their raw data, and each implementation gets its own column in the table below. For every implementation/MIB Variable pair, there's a single character code showing roughly how far along that variable is. Here's what the codes mean π :
Ymeans fully implemented π₯. The count or state it reports is truthful, and you can write to every value and get the expected action.Nmeans not implemented at all π. If you try to access it, you get anoSuchNameerror.Cmeans implemented but stuck on a constant π. Gets always return the same value, and any set to something other than that constant gets abadValueerror. This only applies to writable variables.
Here's the whole tea:
MIB Implementation
Variable 1 2 3 4 5 6 7 8 9 10 11 Yesses
InitializeMac C C Y Y Y Y Y C7 C7 N Y 6
MacSubLayerStatus C C Y Y Y Y Y C7 C7 N C 5
MulticastReceiveStatus C C Y C3 Y C C C7 C7 N C 2
TxEnabled C C Y Y Y Y Y C7 C7 N C 5
TestTdrValue C 1 C C4 C C C C4 C4 N C 1
AlignmentErrors Y Y Y Y Y Y Y Y Y Y Y 11
FCSErrors Y Y Y Y Y Y Y Y Y Y Y 11
SingleCollisionFrames Y Y Y N Y Y Y Y Y Y Y 10
MultipleCollisionFrames Y Y Y N Y Y Y Y Y Y Y 10
SQETestErrors Y C C C Y C C C C Y C 3
DeferredTransmissions Y C Y N Y Y Y Y Y Y Y 9
LateCollisions C Y Y Y Y Y Y Y Y Y Y 10
ExcessiveCollisions Y Y Y Y Y Y Y Y Y Y Y 11
InternalMacTransmitErrors Y Y Y Y Y Y Y Y Y Y Y 11
CarrierSenseErrors Y C Y Y Y Y Y Y Y Y Y 10
ExcessiveDeferrals C C Y C C C C C C N C 1
FrameTooLongs Y Y2 Y Y C Y Y Y Y Y Y 10
InRangeLengthErrors C C C N5 C Y Y C C N C 2
OutOfRangeLengthFields C C C C6 C C C C C N C 0
InternalMacReceiveErrors Y Y Y Y Y C C Y Y Y C 8
CollCount Y Y C N N N N C C N Y 3
CollFrequencies Y Y C N N N N C C N Y 3
Yesses 13 11 16 11 15 14 14 11 11 12 13
Now the footnotes, which explain the little superscripts in the table π:
- Implementation 1 doesn't do the TDR test π , but it still reports TDR from the last collision, which is honestly iconic π.
- This one isn't supported by the chip, so it's detected solely in software π».
- It's set to disabled(2), so a set gets
disabled(2) -> badValueπ. - The underlying TDR function isn't implemented on this chip π.
- This one only counts frames that are too short, though π€.
- This happens due to Ethernet encapsulation π«Ά.
- These implementations don't support set operations, but they do report the correct value for these variables β¨.
And here's who's who π:
Implementation Vendor Chip
1 1 Intel 82586
2 1 Fujitsu 86950
3 2 Sonic
4 3 AMD Lance
5 4 National NIC 8390C
6 4 Intel 82596
7 4 AMD Lance
8 5 AMD Lance
9 5 AMD ILACC
10 6 AMD Lance
11 7 Intel 82586
6. Security Considerations
Security? Not discussed in this memo, bestie π. Zero words, zero vibes. The author left this one totally blank, so there's nothing for me to add.
7. Author's Address
Frank J. Kastenholz π§ FTP Software 2 High Street North Andover Mass 01845
Phone: 508-685-4000 π EMail: kasten@ftp.com π
π¦ where this page comes from
- ietf: rfc1369 1992-10
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms