Netzwerk-Grundlagen, Teil 2

Zweidimensionale Parität

Mit einem Paritätsbit wird ein Fehler (oder allgemein eine ungerade Anzahl von Fehlern) innerhalb eines Bytes erkannt. Zwei Fehler kompensieren sich aber gegenseitig und führen wieder zu einem korrekten Paritätsbit. Betrachtet man einen Block – das heißt eine Anzahl aufeinander folgender Zeichen – gemeinsam, lässt sich die Sicherheit deutlich erhöhen. Dazu wird zu der beschriebenen Parität pro Zeichen eine zweite Parität pro Position in Zeitrichtung eingeführt. Zur Unterscheidung zur einfachen (eindimensionalen) Parität spricht man auch von zweidimensionaler Parität. Die Tabelle zeigt die zweidimensionale Parität am Beispiel der Zeichenfolge HALLO. Die Parität in Zeilen- und Spaltenrichtung heißt Quer- und Längsparität.

Zweidimensionale Parität

Zeichen

Bitmuster

Paritätsbit

H (0x48)

100 1000

0

A (0x41)

100 0001

0

L (0x4C)

100 1100

1

L (0x4C)

100 1100

1

O (0x4F)

100 1111

1

Längsparität

100 0110

1

Ein einzelner Fehler macht sich sowohl in einer Zeile als auch Spalte bemerkbar und ist damit korrigierbar. Zwei Fehler – selbst in unterschiedlichen Zeilen und Spalten – sind aber nicht mehr auszubessern. Allerdings lassen sich die Fehler relativ gut lokalisieren, und es gibt nur zwei Möglichkeiten, wo sie sich befinden können. Liegen die beiden Fehler zusätzlich in einer Zeile, stimmen alle Querparitäten. Die Fehler werden zwar durch die Längsparität detektiert, können aber nicht mehr korrigiert werden. Allgemein lassen sich alle 3-Bit-Fehler und auch die meisten 4-Bit-Fehler erkennen. Nur wenn die vier Fehler genau an den passenden Kreuzungspunkten liegen, stimmen wieder alle Quer- und Längsparitäten.

Die Paritätsprüfung zählt die vorkommenden Einsen und prüft, ob sich in Summe eine gerade Anzahl ergibt. Die Übertragung umfasst einen Block Daten und eine Anzahl von Paritätsinformationen:

[Datenbits] [Paritätsbits]

Der Empfänger kann dann durch die Prüfoperation auf dem Gesamtblock die Integrität testen. Dieses allgemeine Schema „Daten – Prüfinformation – Prüfoperation“ lässt sich leicht verallgemeinern, indem man andere Prüfoperationen nutzt. In Internet-Protokollen wird ein Verfahren mit einer Prüfsumme angewandt. Die Prüfoperation ist dabei eine Addition im Einerkomplement. Als Prüfinformation wird das Ergebnis dieser Addition an die Daten angehängt. Der Empfänger führt dann ebenfalls die Addition aus und vergleicht das Ergebnis mit der Prüfsumme. Dieses Verfahren ist einfach zu realisieren, bietet aber nicht sehr viel Schutz. Wesentlich mächtiger ist das Verfahren der zyklischen Redundanzprüfung.