Назад | Перейти на главную страницу

значение rx_queue _ * _ csum_err и rx_fifo_errors

Я пытаюсь решить проблему с сетью на одном сервере. Я слежу за этой машиной с помощью нескольких мониторов и вижу, что время от времени частота ошибок ping подскакивает до 5/10%.

Я работаю на ubuntu и вижу, что вывод ethtool -S eth0 показывает положительные значения для rx_queue _ * _ csum_errboth rx_fifo_errors (несколько тысяч).

Что на самом деле отслеживают эти счетчики, есть ли какие-нибудь хорошо известные причины, по которым они не равны 0?

rx_fifo_errors = Общее количество удалений rx_queue _ * _

rx_queue_*_drops = Количество отброшенных пакетов в очереди

Похоже, что прерывания RX недостаточно быстро распределяют буферы, что приводит к тому, что адаптер отбрасывает пакеты.

Проверьте и увеличьте кольцевой буфер.

# 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

Вы можете установить свой "Current Hardware Settings" для "RX"до предела, указанного в"Pre-set maximums"

# ethtool -G eth0 rx 4096

НОТА: Этот параметр будет не пережить перезагрузку. Вы можете использовать rc.local (или что-то подобное)