7

I am trying to debug some networking issue with one server. I monitor this machine with multiple monitors and I see that at times ping error rate jumps to 5/10%

I am running on ubuntu and I see that the output of ethtool -S eth0 shows positive values for rx_queue_*_csum_errboth rx_fifo_errors (a few thousands).

What do this counters actually track, are there any very well known causes for them to be non 0?

2 Answers 2

11

rx_fifo_errors = Total number of rx_queue_*_drops

rx_queue_*_drops = Number of dropped packets per queue

Sounds like the RX interrupts aren't allocating buffers fast enough, resulting in the adapter dropping packets.

Check and increase the ring buffer.

# ethtool -g eth0
Ring parameters for eth0:
Pre-set maximums:
RX:        4096
RX Mini:      0
RX Jumbo:     0
TX:        4096
Current hardware settings:
RX:         256
RX Mini:      0
RX Jumbo:     0
TX:         256

You can set your "Current Hardware Settings" for "RX" up to the limit shown in the "Pre-set maximums"

# ethtool -G eth0 rx 4096

NOTE: This setting will not survive a reboot. You may want to use rc.local (or something similar)

2
  • is the interface going to go down/up while changing this setting? i would run this on a production server so that would be quite inconvenient... Dec 11, 2014 at 15:52
  • @TommasoBarbugli A Production server? I doubt the NIC will go down. But test it in Development/Non-Prod first should be done for anything you do.
    – Signal15
    Dec 11, 2014 at 19:09
0

As per the Linux kernel documentation:

RX Queue Checksum errors are indicative of physical link errors. Where as RX Fifo errors are indicative of a FIFO overrun, as described by @Signal15

rx_crc_errors

    Number of packets received with a CRC error. Part of aggregate "frame" errors in /proc/net/dev.

    For IEEE 802.3 devices this counter must be equivalent to:

        30.3.1.1.6 aFrameCheckSequenceErrors

I would urge caution when adjusting the RX FIFO size on production machines, as I've experienced instability under certain configurations, such as: when the interface is part of a BRIDGE or BOND group.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .