Protokolle der Sicherungsschicht

Im folgenden betrachten wir beispielhaft drei Protokolle der Sicherungsschicht, die für Fernverbindungen eingesetzt werden.

High Level Data Link Control (HDLC)

HDLC ist eigentlich eine ganze Gruppe von Protokollen, die alle von SDLC (Synchronous Data Link Control), einem Protokoll das Teil von IBMs SNA war, abgeleitet wurde. IBM legte die selbstentwicjelten Protokolle dem ANSI- und ISO-Ausschuss zur Zulassung als US- und internationale Normen vor. ISP änderte SDLC zu HDLC, CCITT übernahm das Protokoll und machte daraus LAP (Link Access Procedure) als Teil der X.25-Norm.

Alle diese Protokolle basieren auf dem gleichen Prinzip, das wir hier einmal betrachten wollen.

Diese Protokolle sind bitorientiert und setzen ein Bitstopfverfahren ein um Paketgrenzen zu markieren. Alle HDLC-ähnlichen Protokolle haben einen Rahmen der etwa wie folgt aussieht:

Dabei kommt den Feldern die folgende Bedeutung zu:

  • Adresse (8 Bit) ist wichtig wenn mehrer Stationen an die Übertragungsleitung angeschlossen sind. Bei Standleitungen wird es manchmal auch benutzt um Befehle von Antworten zu unterscheiden.

  • Steuerung (8 Bit) wird für Folgenummern, Bestätigungen und Ähnliches benutzt.

  • Daten ( 0 oder mehr Bit) enthält die zu übertragenen Daten.

  • Prüfsumme (16 Bit) ist eine CRC-Variante

Der kleinste Rahmen besteht aus 32 Bit plus die Flagfolgen an Anfang und Ende. Das interessanteste Feld hierbei ist

Das Steuerfeld

Es bestimmt um welche Art von Rahmen es sich handelt, nämlich entweder um einen Informationsrahmen, einen Überwachungsrahmen oder einen unnummerierten Rahmen. Das Protokoll benutzt ein Schiebefenster mit 3 Bit für die Folgenummer. Es dürfen also jeweils 7 unbestätigte Rahmen ausstehen.

Der Inhalt des Feldes Steuerung für Informationsrahmen ist wie folgt:

Das Feld Seq in dieser Abbildung enthält die Folgenummer des Rahmens. Das Feld Next ist eine Bestätigung die im Huckepackverfahren zurückgeschickt wird. Dabei wird allerdings nicht die Folgenummer des zuletzt eingetragenen Rahmens zurückgesandt, sondern die Nummer des nächsten erwarteten Rahmens.

Das Bit P/F (für Poll/Final) wird genutzt wenn ein Rechner eine Gruppe von Terminals zyklisch abfragt. Ist das Bit gesetzt, dann erlaubt der Rechner dem Terminal seine Daten zu senden.

Bei einem Überwachungsrahmen sieht das Ganze so aus.

Dabei hält das Feld Typ die verschiedenen Arten von Überwachungsrahmen auseinander.

Typ 0 ist ein Bestätigungsrahmen (RECEIVE READY) , der anzeigt , dass der nächste Rahmen erwartet wird.

Typ 1 ist ein Rahmen mit negativer Bestätigung (REJECT) der eingesetzt wird um einen Übertragubgsfehler anzuzeigen.  Das Feld Next gibt in diesem Fall an welcher Rahmen zuerst nicht korrekt empfangen wurde. Der Sender überträgt in diesem Fall alle Rahmen ab Next noch ein mal.

Typ 2 heißt RECEIVE NOT READY. Er bestätigt alle angekommenen Rahmen, hält aber den Sender davon ab noch weitere zu senden.

Typ 3 ist SELECTIVE REJECT. Er fordert die Neuübertragung eines spezifischen Rahmens an.

Unnummerierte Rahmen sehen so aus:

Sie dienen Steuerungszwecken, sind aber bei den verschiedenen Protokollen nicht einheitlich.