1台のサーバーでネットワークの問題をデバッグしようとしています。このマシンを複数のモニターで監視していると、pingのエラー率が5/10%に跳ね上がることがあります。
私はubuntuで実行しており、ethtool -S eth0の出力がrx_queue _ * _ csum_errboth rx_fifo_errors(数千)の正の値を示していることがわかります。
このカウンターは実際に何を追跡していますか?それらが0以外になる非常によく知られた原因はありますか?
rx_fifo_errors
= rx_queue _ * _ dropsの総数
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
(または類似のもの)