Tenho tentado ler os detalhes das quedas conforme elas são relatadas por várias ferramentas (e em vários níveis) do sistema operacional. Até agora, a maior parte das informações que consegui desenterrar pesquisando no Google parece um tanto "ondulada" para mim.
Primeiro, deixe-me afirmar que o host de exemplo que estou vendo mostra ZERO drop in /proc/net/softnet_stat
. Isso indica para mim que os buffers de anel da NIC provavelmente estão dimensionados adequadamente. Agora, para ethtool
...
Esta é a aparência da fila múltipla da NIC:
# ethtool -l em1
Channel parameters for em1:
Pre-set maximums:
RX: 16
TX: 16
Other: n/a
Combined: n/a
Current hardware settings:
RX: 16
TX: 16
Other: n/a
Combined: n/a
Agora, aqui está a aparência dos drops de rx para a mesma interface:
# ethtool -S em1 | grep rx.*dropped:
rx_dropped: 1742
rx0_dropped: 0
rx1_dropped: 0
rx2_dropped: 0
rx3_dropped: 0
rx4_dropped: 0
rx5_dropped: 0
rx6_dropped: 0
rx7_dropped: 0
rx8_dropped: 0
rx9_dropped: 0
rx10_dropped: 0
rx11_dropped: 0
rx12_dropped: 0
rx13_dropped: 0
rx14_dropped: 0
rx15_dropped: 0
Minha suposição aquié que as 16 filas individuais aqui estão relacionadas à multifila do buffer de anel da NIC. Todos os zeros aqui parecem concordar com o que estou vendo softnet_stat
. Além disso, estou assumindo que quaisquer quedas contadas softnet_stat
seriam refletidas nesta ethtool
saída, se estivessem acontecendo (o que não acontece atualmente).
Isso deixa um tipo de 'rx_dropped'
campo vago, que na verdade está aumentando. Portanto, minha suposição sobre isso é que NÃO está relacionado ao buffer de anel da NIC, mas é um contador de queda de protocolo superior. Na verdade, essa contagem se reflete nas ip -s
estatísticas da interface:
# ip -s link show dev em1
2: em1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9000 qdisc mq master bond0 state UP mode DEFAULT group default qlen 1000
link/ether 94:18:82:70:2e:42 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped missed mcast
219512805660516 147616023841 0 1742 0 5624266
TX: bytes packets errors dropped carrier collsns
649765242476657 450168813646 0 0 0 0
Acredito que essas quedas podem ser o resultado de uma série de problemas relacionados ao protocolo, como pacotes malformados, portas defeituosas, buffers de aplicativos congestionados, etc., etc.
Esta parece uma análise razoável que explica as estatísticas de queda "diferentes" relatadas por ethtool -S
?