ss 2012 grundlagen der rechnernetze Übertragungssicherung 42unikorn/lehre/gdrn/ss13/03... ·...
TRANSCRIPT
Automatic‐Repeat‐Request (ARQ)
Grundlagen der Rechnernetze ‐ Übertragungssicherung 43
Fehlerfälle
Fehlerdetektion
Positive‐Acknowledgment
Retransmission nach Timeout
Negative‐Acknowledgment und Retransmission
TechnikenBildquelle: William Stallings, „Data and Computer Communications“, 2004
SS 2012
Stop‐and‐Wait ARQ
Grundlagen der Rechnernetze ‐ Übertragungssicherung 44Bildquelle: William Stallings, „Data and Computer Communications“, 2004
(A) Lost/Damaged Frame (B) Lost ACK
SS 2012
Utilization von Stop‐and‐Wait ARQ
Grundlagen der Rechnernetze ‐ Übertragungssicherung 45
Es sei p Paket‐Fehlerrate. Was ist die erwartete Anzahl N der Übertragungsversuche?
Es sei tp der Propagation‐Delay und tf die Transmission‐Time. Was ist die Utilization U?
Mit a = Propagation‐Delay/Transmission‐Time erhält man:
SS 2012
Utilization in Abhängigkeit von a
Grundlagen der Rechnernetze ‐ Übertragungssicherung 46
Utilization
a = Propagation‐Delay / Transmission‐Time
Erinnerung: Satelliten‐Link‐Beispiel: a = 100
p=10‐1p=10‐2
p=10‐3
SS 2012
Go‐Back‐N ARQ
Grundlagen der Rechnernetze ‐ Übertragungssicherung 47Bildquelle: William Stallings, „Data and Computer Communications“, 2004
Fall: Frame(i) ist Damaged oder Lost:
B macht nichts
1. Fall: A sendet Frame(i+1)B empfängt Out-of-Order Frame(i+1)B sendet REJ(i)A muss Frame(i) und nachfolgendereübertragen
2. Fall: A sendet zunächst nichtTimer von A läuft abA sendet RR(„mit P-Bit=1“)B muss mit RR(i) antwortenA sendet bei Empfang von RR(i)
(Alternative zu Fall 2: A sendetFrame(i) nach Ablauf des Timers)
SS 2012
Go‐Back‐N ARQ
Grundlagen der Rechnernetze ‐ Übertragungssicherung 48Bildquelle: William Stallings, „Data and Computer Communications“, 2004
Fall: Frame(i) ist Damaged oder Lost:
B macht nichts
1. Fall: A sendet Frame(i+1)B empfängt Out-of-Order Frame(i+1)B sendet REJ(i)A muss Frame(i) und nachfolgendereübertragen
2. Fall: A sendet zunächst nichtTimer von A läuft abA sendet RR(„mit P-Bit=1“)B muss mit RR(i) antwortenA sendet bei Empfang von RR(i)
(Alternative zu Fall 2: A sendetFrame(i) nach Ablauf des Timers)
Timeout
SS 2012
Go‐Back‐N ARQ
Grundlagen der Rechnernetze ‐ Übertragungssicherung 49
Fall: RR(i) ist Damaged oder Lost:
1. Fall: A empfängt ein späteres RR(j)(ACK sind kummulativ)A weiß, dass Frame(i),...,Frame(j-1)korrekt angekommen sind
A macht weiter wie bisher
2. Fall: Timer von A läuft abA versucht wiederholt:(mit einem P-Bit-Timer)A sendet RR(„mit P-Bit=1“)B muss mit RR(i) antworten
Wenn nach einigen Versuchen keineAntwort, dann startet A eineReset-Prozedur
Bildquelle: William Stallings, „Data and Computer Communications“, 2004SS 2012
Go‐Back‐N ARQ
Grundlagen der Rechnernetze ‐ Übertragungssicherung 50
Fall: RR(i) ist Damaged oder Lost:
1. Fall: A empfängt ein späteres RR(j)(ACK sind kummulativ)A weiß, dass Frame(i),...,Frame(j-1)korrekt angekommen sind
A macht weiter wie bisher
2. Fall: Timer von A läuft abA versucht wiederholt:(mit einem P-Bit-Timer)A sendet RR(„mit P-Bit=1“)B muss mit RR(i) antworten
Wenn nach einigen Versuchen keineAntwort, dann startet A eineReset-Prozedur
Bildquelle: William Stallings, „Data and Computer Communications“, 2004SS 2012
Go‐Back‐N ARQ
Grundlagen der Rechnernetze ‐ Übertragungssicherung 51Bildquelle: William Stallings, „Data and Computer Communications“, 2004
Fall: REJ ist Damaged oder Lost:
Timer von A läuft abA sendet RR(„mit P-Bit=1“)B muss mit RR(i) oder REJ antwortenA sendet bei Empfang von RR(i)
*Timeout
SS 2012
Maximal erlaubte Window‐Größe?
Grundlagen der Rechnernetze ‐ Übertragungssicherung 52
A
B
A
B
* * * * * * *Piggybacked ACK in
Übertragung von B nach A
Damit ist für k Bit Sequenznummern die maximal erlaubte Window‐Größe smax:
Sequenznummergröße sei 3 Bits; Annahme wir nutzen die die volle Window‐Größe 8
SS 2012
Grundlagen der Rechnernetze ‐ Übertragungssicherung 53Bildquelle: William Stallings, „Data and Computer Communications“, 2004
Reübertragung von Framesmit negative ACK
Reübertragung von Framesmit Timeout
Selective‐Reject ARQ
SS 2012
Verwendung der Window‐Größe 2k‐1?
Grundlagen der Rechnernetze ‐ Übertragungssicherung 54
A
B
*
Timeout
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 …Window von B
A
B*
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 …Window von B
SS 2012
Maximal erlaubte Window‐Größe?
Grundlagen der Rechnernetze ‐ Übertragungssicherung 55
Lösung: mache Fenster kleiner, so dass keine Überlappungen vorhanden sind.Also, damit ist für k Bit Sequenznummern die maximal erlaubte Window‐Größe smax:
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 …Empfänger‐Fenster
Problem: Sender‐Fenster und Empfänger‐Fenster überlappen (d.h. haben gemeinsame Sequenznummern)
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 …Sender‐Fenster
SS 2012
Utilization von Go‐Back‐N und Selective‐Reject
Grundlagen der Rechnernetze ‐ Übertragungssicherung 56
Allgemeine Beobachtung:
U = Utilization eines Verfahrens ohne berücksichtigung Paket‐VerlusteUe = Utilization eines Verfahrens mit Berücksichtigung von Paket‐Verlusten
tf = Transmission‐Time für ein Paketto = gesamt benötigte Zeit für eine Paketübertragung (d.h. inklusive Delays)
n = Anzahl übertragener Pakete
k = Erwartete Anzahl an Paket‐Wiederholungen pro Paket bis zum Erfolgsfall
Es gilt:
SS 2012
Utilization bei Selective‐Reject ARQ
Grundlagen der Rechnernetze ‐ Übertragungssicherung 57
Wir hatten für Sliding‐Window ohne Fehler die Utilization U schon hergeleitet:
(mit W = Fenstergröße, a = Propagation‐Delay / Transmission‐Delay)
Mit voriger Beobachtung erhält man für a = Propagation‐Delay/Transmission‐Time und Ue = Utilization mit Berücksichtigung von Paket‐Verlusten:
Wir hatten für Paket‐Fehlerrate p die erwartete Anzahl k der Übertragungsversuche schon hergeleitet:
SS 2012
Utilization bei Go‐Back‐N ARQ
Grundlagen der Rechnernetze ‐ Übertragungssicherung 58
Es sei m die Anzahl zu übertragender Frames, wenn ein Frame reübertragen werden muss.Es sei p die Paketfehlerrate.1.) Gesamtanzahl Reübertragungen f(i), wenn ein Frame i Versuche brauchte:
2.) Erwartete Gesamtanzahl k an Reübertragungen für ein Frame:
3.) Somit ergibt sich mit voriger Beobachtung für a = Propagation‐Delay/Transmission‐Time und Ue = Utilization mit Berücksichtigung von Paket‐Verlusten:
Wir hatten für Sliding‐Window ohne Fehler die Utilization U schon hergeleitet:
(mit W = Fenstergröße, a = Propagation‐Delay / Transmission‐Delay)
SS 2012
Utilization bei Go‐Back‐N ARQ
Grundlagen der Rechnernetze ‐ Übertragungssicherung 59
m für W ¸ 2a + 1:Also, gemäß voriger Folie:
SS 2012
Utilization bei Go‐Back‐N ARQ
Grundlagen der Rechnernetze ‐ Übertragungssicherung 60
m für W < 2a + 1:Also, gemäß voriger Folie:
SS 2012
Grundlagen der Rechnernetze ‐ Übertragungssicherung 61Bildquelle: William Stallings, „Data and Computer Communications“, 2004
Utilization
a = Propagation‐Delay / Transmission‐Time
Vergleich für p=10‐3Erinnerung: Satelliten‐Link‐Beispiel: a = 100
SS 2012
Problemstellung
Grundlagen der Rechnernetze ‐ Übertragungssicherung 63
100010110111011011011101…
Frame 1 Frame 2 Frame 3 Frame 4Link‐LayerLink‐Layer
Physical Layer Physical Layer
Upper Layers Upper Layers
SS 2012
Grundlagen der Rechnernetze ‐ Übertragungssicherung 64Bildquelle: William Stallings, „Data and Computer Communications“, 2004
Asynchrone Übertragung
SS 2012
FramingSynchrone Übertragung mittels Character‐Count, Byte‐ und Bit‐Stuffing
Grundlagen der Rechnernetze ‐ Übertragungssicherung 65SS 2012