DCN - Data Link Control & Protocols

Die Datenverbindungsschicht ist für die Implementierung des Punkt-zu-Punkt-Fluss- und Fehlerkontrollmechanismus verantwortlich.

Ablaufsteuerung

Wenn ein Datenrahmen (Layer-2-Daten) über ein einzelnes Medium von einem Host zu einem anderen gesendet wird, müssen Sender und Empfänger mit derselben Geschwindigkeit arbeiten. Das heißt, der Absender sendet mit einer Geschwindigkeit, mit der der Empfänger die Daten verarbeiten und akzeptieren kann. Was ist, wenn die Geschwindigkeit (Hardware / Software) des Senders oder Empfängers unterschiedlich ist? Wenn der Absender zu schnell sendet, ist der Empfänger möglicherweise überlastet (überfüllt) und Daten gehen möglicherweise verloren.

Zur Steuerung des Flusses können zwei Arten von Mechanismen eingesetzt werden:

  • Stop and WaitDieser Flusssteuerungsmechanismus zwingt den Absender nach dem Senden eines Datenrahmens anzuhalten und zu warten, bis die Bestätigung des gesendeten Datenrahmens empfangen wird.

  • Sliding Window

    Bei diesem Flusssteuerungsmechanismus vereinbaren sowohl Sender als auch Empfänger die Anzahl der Datenrahmen, nach denen die Bestätigung gesendet werden soll. Wie wir erfahren haben, verschwendet der Stop-and-Wait-Flusssteuerungsmechanismus Ressourcen. Dieses Protokoll versucht, die zugrunde liegenden Ressourcen so weit wie möglich zu nutzen.

Fehlerkontrolle

Wenn ein Datenrahmen übertragen wird, besteht die Wahrscheinlichkeit, dass der Datenrahmen während der Übertragung verloren geht oder beschädigt empfangen wird. In beiden Fällen empfängt der Empfänger nicht den richtigen Datenrahmen und der Absender weiß nichts über Verluste. In diesem Fall sind sowohl Sender als auch Empfänger mit einigen Protokollen ausgestattet, mit denen sie Übertragungsfehler wie Datenverlust erkennen können. Rahmen. Daher sendet entweder der Sender den Datenrahmen erneut oder der Empfänger kann anfordern, den vorherigen Datenrahmen erneut zu senden.

Anforderungen an den Fehlerkontrollmechanismus:

  • Error detection  - Der Absender und der Empfänger, entweder beide oder einer, müssen sicherstellen, dass bei der Übertragung ein Fehler vorliegt.

  • Positive ACK  - Wenn der Empfänger einen korrekten Rahmen empfängt, sollte er diesen bestätigen.

  • Negative ACK  - Wenn der Empfänger einen beschädigten Frame oder einen doppelten Frame empfängt, sendet er einen NACK zurück an den Absender und der Absender muss den richtigen Frame erneut senden.

  • Retransmission:  Der Absender verwaltet eine Uhr und legt eine Zeitüberschreitung fest. Wenn eine Bestätigung eines zuvor übertragenen Datenrahmens nicht vor dem Timeout eintrifft, überträgt der Absender den Rahmen erneut und denkt, dass der Rahmen oder seine Bestätigung während der Übertragung verloren geht.

Es stehen drei Arten von Techniken zur Verfügung, die von der Datenverbindungsschicht bereitgestellt werden können, um die Fehler durch automatische Wiederholungsanforderungen (Automatic Repeat Requests, ARQ) zu steuern:

  • Stop-and-Wait-ARQ

    Der folgende Übergang kann in Stop-and-Wait-ARQ auftreten:

    • Der Absender unterhält einen Timeout-Zähler.
    • Wenn ein Frame gesendet wird, startet der Absender den Timeout-Zähler.
    • Wenn die Bestätigung des Rahmens rechtzeitig erfolgt, sendet der Absender den nächsten Rahmen in der Warteschlange.
    • Wenn die Bestätigung nicht rechtzeitig erfolgt, geht der Absender davon aus, dass entweder der Frame oder seine Bestätigung während der Übertragung verloren geht. Der Absender überträgt den Frame erneut und startet den Timeout-Zähler.
    • Wenn eine negative Bestätigung empfangen wird, überträgt der Absender den Rahmen erneut.
  • Go-Back-N ARQ

    Anhalten und warten Der ARQ-Mechanismus nutzt die Ressourcen nicht optimal aus. Wenn die Bestätigung empfangen wird, sitzt der Absender im Leerlauf und unternimmt nichts. Bei der Go-Back-N ARQ-Methode pflegen sowohl Sender als auch Empfänger ein Fenster.

    Die Größe des Sendefensters ermöglicht es dem Absender, mehrere Frames zu senden, ohne die Bestätigung der vorherigen zu erhalten. Das Empfangsfenster ermöglicht es dem Empfänger, mehrere Rahmen zu empfangen und diese zu bestätigen. Der Empfänger verfolgt die Sequenznummer des eingehenden Rahmens.

    Wenn der Absender alle Frames im Fenster sendet, prüft er, bis zu welcher Sequenznummer er eine positive Bestätigung erhalten hat. Wenn alle Frames positiv bestätigt sind, sendet der Absender den nächsten Framesatz. Wenn der Absender feststellt, dass er NACK empfangen oder für einen bestimmten Frame keine ACK empfangen hat, überträgt er alle Frames erneut, wonach er keine positive ACK empfängt.

  • Selektive Wiederholung ARQ

    In Go-back-N ARQ wird angenommen, dass der Empfänger keinen Pufferplatz für seine Fenstergröße hat und jeden Frame sofort verarbeiten muss. Dadurch wird der Absender gezwungen, alle nicht bestätigten Frames erneut zu übertragen.

    In Selective-Repeat ARQ puffert der Empfänger unter Verfolgung der Sequenznummern die Frames im Speicher und sendet NACK nur für Frames, die fehlen oder beschädigt sind.

    Der Absender sendet in diesem Fall nur ein Paket, für das NACK empfangen wird.