[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Ethernet CRC errors statistics in Linux

I have a system (x86_64) running Debian Lenny on a standard Gigabit Ethernet LAN. I have been doing some researching on how to measure Ethernet CRC errors (Physical layer), if there are any, on my Debian system's ethernet card . It is clear that the ethereal (now wireshark) cannot measure it [1]. Some people have suggested to use the following commands to get the CRC count:

# cat /proc/net/dev
Inter-|   Receive                                                |  Transmit
 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
    lo: 1230934    5159    0    0    0     0          0         0  1230934    5159    0    0    0     0       0          0
  eth0:14527038631 174773921    0    0    0     0          0         0 53768205408 150237839    0    0    0     0       0          0


#ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:1f:d0:35:74:b5 
          inet addr:  Bcast:  Mask:
          inet6 addr: fe80::21f:d0ff:fe35:74b5/64 Scope:Link
          RX packets:174700827 errors:0 dropped:0 overruns:0 frame:0
          TX packets:150164953 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:14522357501 (13.5 GiB)  TX bytes:53726785504 (50.0 GiB)
          Interrupt:254 Base address:0xe000

As per [2], they say that "Copper cabling should not experience more than one bit error per 10^6 bits." But as you can see even after tx and rx data in GBs, I still don't have any CRC errors??? May be it might be the case that there are actually no CRC errors so far but it is hard for me to believe. So my two questions are:

a) Does the above two command really give you the hardware CRC count? Or does the Linux driver/OS masks it somehow?

b) Does anyone know any other method in Linux to measure the Ethernet CRC count?

I am wondering how much CRC errors people on this list are getting using the above two commands.

Any light on this subject is highly appreciated.

# ethtool -i eth0
driver: forcedeth
version: 0.61
bus-info: 0000:00:07.0

[1] http://www.fpgarelated.com/usenet/fpga/show/31620-1.php

[2] http://www.mail-archive.com/cisco@groupstudy.com/msg93750.html

Kushal Koolwal

I do blog at http://blogs.koolwal.net/

Hotmail: Trusted email with powerful SPAM protection. Sign up now.

Reply to: