Solaris Troubleshooting : Ethernet Hardware Error Checking
When troubleshooting for Ethernet hardware issues, it might be useful to check the interface’s error statistics, but what do they mean?
When a host receives a packet, the Ethernet interface performs the integrity checking to verify Ethernet frame validity. Some of the error conditions the interface checks include:
- Runts If the delivered packet is less than 64 bytes, the packet is too short and is discarded. Runts are usually caused by collisions. They may also be caused by poor wiring and electrical interference.
- Jabbers If the received packet is greater than 1500 bytes (MTU), the packet is too long and is discarded. Indicates a device is having problems electrically.
- Bad CRC If the received packet fails the CRC(Cyclical Redundancy Check), the packet is corrupted and therefore discarded
- Long This is a frame that is between 1518 and 6000 bytes long. Normally it is due to faulty hardware or software on the sending station.
- Giant This is a frame that is more than 6000 bytes long. Normally it is due to faulty hardware or software on the sending station.
- Frame Check Sequence(FCS) Error This defines a frame that may or may not have the right number of bits but they have been corrupted between the sender and receiver, perhaps due to interference on the cable.
The interface statistics can be obtained by the kstat command, followed by the interface name and instance. You may want to check for input and output errors and the associated subcounters.
For example, for this eri0 interface we see 3 incoming hardware errors, 2 of them are Jabbers and 1 produced a length error (Long or Giant) :
#kstat eri:0
…
ierrors 3
jabber 2
oerrors 0
runt 0
rx_crc_err 0
rx_length_err 1
…






