Grundlagen der Rechnernetze
Übertragungssicherung
Übertragungssicherung
Übersicht
• Fehlerdetektion
• Fehlerkorrektur Fehlerkorrektur
• Flusskontrolle
• Fehlerkontrolle
• Framing
• Framing
Fehlerdetektion
Ablauf der Fehlerdetektion
check bits
Parity‐Check
1110001
Daten
1110001
Sender
Beispiiel für einen Bitfehler
Empfänger 1110001 1110001 1110001
Checksumme
1011 0101 1110 1001 ... 1100 Sum(b
1, b
2, … , b
n)
b
1b
2b
3b
4b
nBeispiel Summenberechnung anhand von Einer‐Komplement‐Arithmetik:
Beispiel Summenberechnung anhand von Einer Komplement Arithmetik:
Fehlerdetektion
C li R d d Ch k
Cyclic‐Redanduncy‐Check
Modulo 2 Arithmetik
A B A ⊕ B A B A ª B A B A B
Addition Modulo 2 Subtraktion Modulo 2 Multiplikation Modulo 2
A B A ⊕ B 0 0
A B A ª B 0 0
A B A · B 0 0
0 1 1 0
0 1 1 0
0 1 1 0 1 0
1 1
1 0 1 1
1 0 1 1
Beispiel 0110111011
⊕ 1101010110
=
=
Division Modulo 2
1010111 : 1101 = ????
1010111 : 1101 = ????
Also: 1010111 : 1101 = Rest
CRC Idee
1010010000 : 1101
Cyclic‐Redundancy‐Check (CRC)
n‐k Nullen an Datenblock D anhängen:
1010001101
n‐Bit‐Frame T
01110
k‐Bit‐Datenblock D (n‐k)‐Bit‐FCS F
110101
Bestimmen von FCS F: (n‐k+1)‐Pattern P
T ist immer durch P teilbar:
Zu versendender Frame T:
Auswirkung von Fehlern
1010001101 01110
Sender T
E
1000011101 01011
T r
Empfänger
Ein Fehler mit nicht teilbarem Fehler‐Pattern wird erkannt:
CRC mit Polynomen
Darstellung von Datenblock und Pattern als Polynom:
110011
k‐Bit Datenblock D
Datenblock um n k Stellen (also hier 4 Stellen) verschieben:
11001
(n‐k+1)‐Pattern P Datenblock um n‐k Stellen (also hier 4 Stellen) verschieben:
Berechnung der FCS:
Darstellung des zu versendenden Frames T g
Polynom‐Division Modulo 2
X 6 + X 4 + X 2 + X 1 + 1 : X 3 + X 2 + 1 =
Auswirkung von Fehlern
10100
Sender T
00101
E
10001
T r
Empfänger
Für Generator P(X) und T(X)/P(X) = Q(X) werden nicht teilbare Fehler‐Pattern erkannt:
Erkennbare und nicht erkennbare Fehler
Ein Fehler ist nicht erkennbar genau dann wenn:
Single‐Bitfehler ist immer erkennbar, wenn P(X) mindestens zwei Terme enthält
Bitfehler‐Burst · Anzahl Check‐Bits ist immer erkennbar, wenn P(X) den Term 1 enthält
Weitere CRC‐Fakten
Double‐Bitfehler immer erkennbar, wenn P(X) einen Faktor mit drei Termen besitzt (ohne Beweis)
Ungeradzahlige Bitfehler immer erkennbar, solange P(X) einen Faktor (X+1) enthält (ohne Beweis)
Einen Anteil von 1‐2
‐(n‐k‐1)Fehler‐Bursts der Länge n – k + 1 (ohne Beweis) Einen Anteil von 1‐2
–(n – k)Fehler‐Bursts der Länge > n – k + 1 (ohne Beweis) Beliebte Polynome
CRC‐12 = X
12+ X
11+ X
3+ X
2+ 1
16 15 2