Interface geht sporadisch down …

Frei nach dem Motto „wenn man nichts zu sagen hat, …“ ist es hier in letzter Zeit sehr ruhig gewesen. Meine IT zu Hause läuft einfach zu rund, es gibt nichts zu Berichten. Nun ja bis heute…

Seit geraumer Zeit läuft auf meinem StorageServer ein TV Headend. Das lief bis vor kurzem Problemlos. Nur seit ein paar wochen plagen mich kurze Verzögerungen/Aussetzer. Anfangs konnte ich das auf einen schlechten SAT Empfang schieben aber immer gehäufter traten folgende Fehlermeldungen in den Logs auf:

igb: eth0 NIC Link is Down
igb: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX

Das eth-Interface geht Down und kommt sofort wieder hoch. Fast alle Protokolle und Dienste (NFS, SAMBA,…) scheinen damit gut klar zu kommen nur TV Headend goutiert das mit einem Connection-Reset und am Client sieht man „negative Auswirkungen“.

Davon abgesehen, warum geht das Interface unmotiviert down. Kurze Analyse später, das passiert häufiger: 2-5 mal am Tag. Meine postulierte Verfügbarkeit von 99.999% war dahin. Es folgten 2 Wochen Fehlersuche:

  • Kabel tauschen
  • Interface tauschen
  • Verschiedene Switcheinstellung (Powersave) abgeschaltet…
  • div. Optionen testen
  • vieles mehr …

Dank des sporadischen Auftretens hieß es nach jeder Änderung Stunden warten …

Ein Switch Tausch brachte die nötigen Hinweis. Der eigentliche Switch konnte als Fehlerquelle ausgeschlossen werden, da der Fehler auf allen Ports auftrat aber immer nur, wenn an dem Port mein Server hing. Alle anderen Geräte wiesen diese Disconnects nicht auf. An dem „notfall“-Switch traten die Disconnects aber auch nicht auf, die OnBoard-Netzwerkkarten waren also auch nicht defekt.

Schnell nochmal alle Switch-Einstellungen kontrolliert und dann die kryptische Option IEEE802.3az gefunden. Google angeworfen und geflucht.

IEEE802.3az (oder Energy Efficient Ethernet/EEE) ist eine Powersaving-Option (die Sinnigerweise nicht unter Powersaving aufgeführt wurde …) bei der zwei Geräte untereinander aushandeln ob und wann sie ihre Transmitter am Interface abschalten. Das erklärte auch das Fehlerverhalten. Immer wenn ich einen Lasttest gefahren hab, trat das Problem nicht auf, da EEE nicht zugeschlagen hat. Erst wenn nur Sporadisch Bandbreite benötigt wurde, kam es zu Disconnects.

Der erste Versuch EEE vie ethtool abzuschalten brachte keine Besserung:

ethtool --set-eee eth0 eee off

Erst als am Switch EEE für den ServerPort abgeschaltet wurde verschwand das Problem.