www.wikidata.de-de.nina.az
ARQ Protokolle englisch Automatic Repeat reQuest 1 deutsch Automatische Wiederholungsanfrage werden bei Computernetzen eingesetzt um eine zuverlassige Datenubertragung durch Sendewiederholungen zu gewahrleisten Durch die Moglichkeit der Fehlererkennung kann ein Empfanger aufgetretene Ubertragungsfehler feststellen Uber einen Ruckkanal kann dieser dem Sender der Nachricht das Resultat der Fehlererkennung mitteilen Gewohnlicherweise geschieht dies durch Ubertragung sogenannter ACK NAK Signale Acknowledgement bzw Negative Acknowledgement d h korrekter Empfang bestatigt bzw Wiederholungsanfrage Gegebenenfalls wird eine gestorte Nachricht so lange erneut ubertragen bis sie den Empfanger ohne Fehler erreicht hat Folgende Protokolle die sich hauptsachlich im erzielbaren Datendurchsatz unterscheiden werden als grundlegend betrachtet Stop and Wait Go Back N Selective RepeatInhaltsverzeichnis 1 Stop and Wait 1 1 Ablauf bei Ubertragungsfehlern 1 2 Datendurchsatz 1 2 1 Beispielrechnung 1 3 Anwendungsbeispiel 2 Go Back N 3 Selective Repeat 4 Literatur 5 Weblinks 6 EinzelnachweiseStop and Wait BearbeitenStop and Wait engl fur Halte an und Warte auch als Send and Wait bezeichnet 2 stellt das einfachste Verfahren dar Nachdem der Sender einen Datenblock z B ein Paket gesendet hat muss er auf die Quittung ACK des Empfangers warten bevor er den nachsten Datenblock senden kann Falls er innerhalb einer bestimmten Zeitdauer Timeout keine Quittung empfangt muss er den Datenblock noch einmal senden Dazu werden fur die Datenblocks und die Quittungen Sequenznummern verwendet Der Sender vergibt dem ersten Datenblock mit einer Sequenznummer der Empfanger quittiert den erfolgreichen Empfang eines Datenblocks mit einem ACK mit der Sequenznummer des nachsten erwarteten Datenblocks Stop and Wait ist demnach ein Sonderfall des Sliding Window Verfahrens mit der Fenstergrosse 1 Beispielablauf siehe Abbildung nbsp Ablauf eines Stop and Wait ProtokollsSender sendet ersten Datenblock mit der Sequenznummer 0 Empfanger bestatigt erfolgreichen Empfang mit einem ACK mit der Sequenznummer 1 Sender sendet nachsten Datenblock mit der Sequenznummer 1 Empfanger bestatigt erfolgreichen Empfang mit einem ACK mit der Sequenznummer 0 Sender sendet nachsten Datenblock mit der Sequenznummer 0 usw Ablauf bei Ubertragungsfehlern Bearbeiten Empfangt der Sender innerhalb des Timeout keine positive ACK oder eine negative Quittierung NAK sendet er den Datenblock noch einmal Mogliche Fehlerfalle sind Datenblock geht auf dem Weg zum Empfanger verloren Paketverlust Abbildung Stop and Wait bei Datenblockverlust Quittierung geht auf dem Weg zum Sender verloren Abbildung Stop and Wait bei Verlust des ACK Quittierung kommt zu spat nach Ablauf des Timeout beim Sender an Abbildung Stop and Wait bei verspatetem ACK Empfanger sendet ein NAK weil der Datenblock fehlerhaft ist Abbildung Stop and Wait bei NAK nbsp Stop and Wait bei Datenblockverlust nbsp Stop and Wait bei Verlust des ACK nbsp Stop and Wait bei verspatetem ACK nbsp Stop and Wait bei NAKDatendurchsatz Bearbeiten nbsp ZeitdiagrammDer Datendurchsatz lasst sich allgemein berechnen mit der Formel h S W t B l o c k t A V R C displaystyle eta SW frac t Block t AV cdot R C nbsp mit t A V t R T T 1 P e d displaystyle t AV frac t RTT 1 P ed nbsp ergibt sich dd h S W t B l o c k t R T T 1 P e d R C displaystyle eta SW frac t Block t RTT cdot 1 P ed cdot R C nbsp und weiter mit t R T T t B l o c k t 1 t A C K t 2 displaystyle t RTT t Block tau 1 t ACK tau 2 nbsp und t 1 t A C K t 2 t B B displaystyle tau 1 t ACK tau 2 t BB nbsp ergibt sich dd h S W 1 P e d 1 t B B t B l o c k R C displaystyle eta SW frac 1 P ed 1 frac t BB t Block cdot R C nbsp h S W displaystyle eta SW nbsp Datendurchsatz R C displaystyle R C nbsp Informationsrate des verwendeten fehlererkennenden Codes t B l o c k displaystyle t Block nbsp Datenblockdauer t A V displaystyle t AV nbsp Mittlere Ubertragungsdauer eines Datenblocks t B B displaystyle t BB nbsp Zeitdauer zwischen zwei Datenblocken t A C K displaystyle t ACK nbsp Dauer der ACK Nachricht t R T T displaystyle t RTT nbsp Round Trip Time t 1 displaystyle tau 1 nbsp Laufzeit des Datenblocks durchs Netz t 2 displaystyle tau 2 nbsp Laufzeit der ACK Nachricht durchs Netz P e d displaystyle P ed nbsp Auftrittswahrscheinlichkeit eines vom Empfanger erkennbaren Fehlers im DatenblockBeispielrechnung Bearbeiten Ein Sender sendet Datenblocks mit einer Grosse von 1000 Byte uber eine Ubertragungsstrecke mit einer maximal moglichen Datenubertragungsrate von 2 Mbit s Dabei wird ein fehlererkennender Code mit einer Informationsrate von 7 8 verwendet Die mittlere Round Trip Time betragt 18 ms und die Datenblockverlustrate betragt 1 h S W t B l o c k t R T T 1 P e d R C displaystyle eta SW frac t Block t RTT cdot 1 P ed cdot R C nbsp mit t B l o c k I P P a k e t g r o e s s e D a t e n u e b e r t r a g u n g s r a t e 1000 B y t e 8 b i t B y t e 2 M b i t s 4 m s displaystyle t Block frac IP Paketgroesse Datenuebertragungsrate frac 1000Byte cdot 8 frac bit Byte 2Mbit s 4ms nbsp dd h S W 4 m s 18 m s 1 0 01 7 8 0 1925 displaystyle eta SW frac 4ms 18ms cdot 1 0 01 cdot 7 8 0 1925 nbsp Der Datendurchsatz entspricht 19 25 der maximal moglichen Datenubertragungsrate 0 1925 2 M b i t s 440 k b i t s displaystyle 0 1925 cdot 2Mbit s 440kbit s nbsp Anwendungsbeispiel Bearbeiten Ein Beispiel fur ein Stop and Wait Protokoll ist das Trivial File Transfer Protocol TFTP Go Back N BearbeitenGo Back N engl fur Gehe zu N zuruck ist ein Sliding Window Verfahren das gegenuber Stop and Wait einen deutlich grosseren Datendurchsatz ermoglicht Der Sender kann dabei mehrere Datenblocks senden ohne zunachst auf Quittungen vom Empfanger warten zu mussen Wie viele Datenblocks hintereinander ohne Bestatigung versendet werden hangt von der sogenannten Fenstergrosse des Sliding Window ab die vorab von einem Flusskontrollverfahren bestimmt wird Betragt die Fenstergrosse n kann der Sender noch n 1 weitere Datenblocks absenden bevor die Bestatigung fur den ersten Datenblock durch den Empfanger erfolgt sein muss Es konnen vom Empfanger auch mehrere Datenblocks auf einmal kumulativ bestatigt werden So zeigt eine Quittung fur n i an dass alle Einheiten von n bis n i korrekt empfangen wurden Kommt es beim Warten auf die Bestatigungen zu einem Timeout so ubermittelt der Sender alle Dateneinheiten in dem Fenster neu Er geht also zuruck zur letzten unbestatigten Sequenznummer N und sendet diesen und auch alle nach diesem gesendete Datenblocks erneut Da es der Fall sein kann dass lediglich ein Datenblock nicht ordnungsgemass ubertragen wurde und dennoch auch alle danach gesendeten erneut ubertragen werden wird an dieser Stelle Ubertragungskapazitat verschwendet Beim Sender wird zum Zwischenspeichern der gesendeten und noch nicht quittierten Datenblocks Speicher benotigt Die erforderliche Grosse dieses Pufferspeichers hangt von der Datenblock und der Fenstergrosse ab Ein Beispiel fur ein Go Back N Protokoll ist das Transmission Control Protocol TCP Selective Repeat BearbeitenSelective Repeat engl fur Selektive Wiederholung ist eine weitere Fehlerbehandlungsstrategie auf Basis des Sliding Window Verfahrens Hier wird ein fehlerhafter Rahmen verworfen aber die danach erhaltenen Rahmen werden im Empfanger in einem Puffer abgelegt und bestatigt Wenn beim Sender die Zeit abgelaufen ist wird nur der alteste nicht bestatigte Rahmen erneut ubertragen Wenn dieser Rahmen korrekt ankommt kann der Empfanger in der Folge alle im Puffer gespeicherten Rahmen an die Vermittlungsschicht ubergeben Die selektive Wiederholung wird oft mit dem Senden einer negativen Bestatigung NAK Negative Acknowledgement durch den Empfanger kombiniert wenn dieser einen Fehler wie einen Prufsummenfehler oder einen Rahmen ausserhalb der Reihenfolge entdeckt NAKs stossen die erneute Ubertragung an bevor der entsprechende Timer ablauft und verbessern daher die Leistung Geht das NAK verloren wartet der Sender auf den Timeout fur den Rahmen und sendet ihn und zwar nur ihn auf eigene Veranlassung noch einmal Die selektive Wiederholung entspricht einem Empfangsfenster grosser 1 Werden diese Protokolle mit den Methoden der Kanalkodierung kombiniert so spricht man von den hybriden ARQ Protokollen Ein Beispiel fur ein Selectiv Repeat Protokoll ist die Erweiterung SACK fur das Transmission Control Protocol TCP 3 Literatur BearbeitenTanenbaum Feamster Wetherall Computer Networks Sixth Edition Pearson Global Edition 2021 ISBN 978 1 292 37406 2 Badach Hoffmann Technik der IP Netze 4 Auflage Hanser ISBN 978 3 446 46210 6 Harald Orlamunder Paket basierte Kommunikationsprotokolle 1 Auflage Huthig Bonn 2005 ISBN 3 8266 5046 8 Weblinks BearbeitenSimulation von Selective Repeat und Go Back N als Website tkn tu berlin de Simulation von Go Back N als Java Applet pearsoncmg com Simulation von Selective Repeat als Java Applet pearsoncmg comEinzelnachweise Bearbeiten RFC 3366 Advice to link designers on link Automatic Repeat reQuest ARQ August 2002 englisch Protocol Assisted Protocol PAP IETF Internet Draft Marz 2020 RFC 2018 TCP Selective Acknowledgment Options Oktober 1996 englisch Abgerufen von https de wikipedia org w index php title ARQ Protokoll amp oldid 235250765