Definition

ECC (Error Checking and Correcting oder Error Correction Code)

ECC ist das Akronym für Error Correction Code, manchmal auch Error Correcting Code oder Error Checking and Correcting genannt. Damit lassen sich Daten auf Fehler überprüfen, die gelesen oder übertragen werden. Sofern nötig, werden Fehler im laufenden Betrieb korrigiert. ECC unterscheidet sich von Paritätsprüfung insofern, da Fehler nicht nur erkannt, sondern auch ausgebessert werden. ECC wird immer mehr in Data Storage und für Übertragung zuständige Hardware integriert. Da die Datenraten immer weiter ansteigen würde sonst auch die Zahl der Fehler zunehmen.

Folgend finden Sie, wie ECC bei Data Storage funktioniert:

  1. Nehmen wir an eine Dateneinheit oder ein Datenwort ist im Arbeitsspeicher (RAM) oder einem peripheren Storage gespeichert. Nun wird ein Code berechnet, der die Bit-Sequenz des Datenwortes beschreibt. Dieser Code wird zusammen mit der Dateneinheit gespeichert. Für jedes Datenwort mit 64-Bit werden für den Code zusätzliche 7 Bit benötigt.
  2. Liest das System die Dateneinheit, dann wird der Code für dieses Datenwort abermals berechnet. Dafür verwendet die Maschine den ursprünglichen Algorithmus. Der neu generierte Code wird mit dem Original verglichen.
  3. Gibt es keine Abweichungen, dann sind die Daten fehlerfrei und werden entsprechend geschickt.
  4. Unterscheiden sich die beiden Code-Blöcke, dann bedeutet dies fehlende oder fehlerhafte Bits. Anhand des Vergleichs der beiden Codes lassen sich die relevanten Bits korrigieren.
  5. Die Daten auf dem Storage werden allerdings nicht korrigiert. Irgendwann werden neue Daten darübergeschrieben und es wird davon ausgegangen, dass die Fehler nur kurzlebig sind. Das Problem der nicht korrekten Bits erledigt sich irgendwann von selbst.
  6. Taucht ein Fehler nach einem Neustart des Systems an derselben Stelle auf, weist das auf einen permanenten Fehler in der Hardware hin. In diesem Fall wird eine Nachricht an das entsprechende Log geschickt oder einen Systemadministrator geschickt. Das System teilt im Detail mit, an welcher Stelle der Fehler aufgetaucht ist.

Bei 64-Bit-Datenwörtern benötigt das Prüfen von Parität und ECC die gleiche Anzahl an zusätzlichen Bits. ECC erhöht die Zuverlässigkeit eines jeden Computers oder Telekommunikationssystems oder eben eines Teils des jeweiligen Systems, wobei sich die Kosten dafür in Grenzen halten. Üblicherweise werden Reed-Solomon Codes implementiert, die gelöschte sowie fehlerhafte Bits erkennen und wiederherstellen können.

Folgen Sie SearchStorage.de auch auf Twitter, Google+, Xing und Facebook!

Diese Definition wurde zuletzt im Juli 2016 aktualisiert

Erfahren Sie mehr über Datensicherheit