Netzwerk-Grundlagen, Teil 3

Stop-and-Wait-Algorithmus

Eine direkte Implementierung des beschriebenen Verfahrens ist der Stop-and-Wait-Algorithmus. Der Sender schickt einen Rahmen und wartet auf die Bestätigung. Erhält er innerhalb einer gewissen Wartezeit keine Bestätigung, so geht er davon aus, dass der Rahmen verloren gegangen ist und schickt ihn erneut. Die Wartezeit bezeichnet man als Timeout. Damit ergibt sich folgendes Bild.

Der Timeout soll dem Empfänger genügend Zeit zur Bestätigung lassen. Andererseits soll er aber so kurz wie möglich sein, um die Wartezeit bei einem verloren gegangenen Rahmen zu minimieren. Ein Problem tritt auf, wenn die Bestätigung zu spät oder gar nicht ankommt. Beim Sender ist mittlerweile der Timeout abgelaufen, und in der Annahme, dass der Rahmen nicht korrekt empfangen wurde, schickt der Sender ihn erneut. Der Empfänger hat andererseits den Rahmen bestätigt und erwartet nun bereits den nächsten. Ohne weitere Maßnahmen würde er den zum zweiten Mal geschickten Rahmen bereits als nächsten interpretieren.