Ist der Ringpuffer klein, in dem die NIC Pakete kurz ablegt, läuft er bei kurzen Lastspitzen über, und Pakete werden verworfen.
Warum Ringpuffer steht auf dem kleinen Standardwert (je nach Treiber 256–2.048 Slots) → Folge Bei einem Burst läuft der Puffer über, bevor die CPU die Pakete abholt → Auf dem Bildschirm Paketverlust nur im Moment des Bursts (Teleportieren, verschluckte Skills). In den Logs des Spielservers keine Spur
Ringpuffer vergrößern (ethtool -G), Drop-Zähler überwachen (z. B. rx_missed_errors in ethtool -S, Namen je nach Treiber verschieden).
Größenordnungen
Bei 1 Million Paketen pro Sekunde sind 1.024 Slots in etwa 1 ms voll. Kommt die CPU in dieser Zeit nur ein einziges Mal zu spät, läuft der Puffer über. Die meisten NICs lassen sich auf mehrere tausend Slots vergrößern.
Im Graphen
Vereinzelte Spitzen ohne Muster · Empfangsdrop-Zähler der NIC
Wo nachsehen
Empfangsdrop-Zähler in ethtool -S (rx_missed_errors, rx_fifo_errors usw., Namen je nach Treiber verschieden) und missed in ip -s -s link in kurzen Intervallen erfassen, mit ethtool -g aktuelle und maximale Ringgröße prüfen
Spricht dafür
Im Moment des Bursts steigen die Drop-Zähler, und die aktuelle Ringgröße liegt weit unter dem Maximum. Mit größerem Ring sinken die Drops
Spricht dagegen
Drop-Zähler unverändert, trotzdem Paketverlust: nächste Stufe im Kernel („Zu kleine Socket-Puffer im Kernel“) oder Netzwerkabschnitt. %soft eines Kerns bei 100 %: „NIC-Interrupts auf nur einem Kern“
Interface statisticsLinux kernel Pakete, die das Gerät mangels Puffer verwirft, werden als rx_missed_errors gezählt, treiberspezifische Statistiken mit ethtool -S abrufen
ethtool(8) — Linux manual pageethtool -g zeigt die Ringgröße (aktuell und maximal), -G ändert sie, -S zeigt treiberspezifische Statistiken