5.2.1. Das SDLC-Protokoll (Synchronous Data Link Control)
Infolge des angewandten Bitstopverfahren gestattet es eine transparente Datenübertragung. Die Übermittlung wird in DÜ-Blöcken vorgenommen, deren Aufbau wie folgt aussieht.
opening flag Adreßfeld Steuerfeld Datenfeld Blockprüfungsfeld closing flag
Blockbegrenzungszeichen (opening flags und closing flag):
Die opening flags und die closing flags sind die Blockbegrenzungszeichen und haben die Bitkombination 01111110. Sie dienen zur Kennzeichnung des Anfangs und des Endes eines Blockes, und so mit zur Synchronisation des Empfängers mit dem Sender.
Adreßfeld (address field):
Bitorientierte Protokolle sind nicht nur für die Verwendung in Punkt-zu-Punkt-Verbindungen konzipiert, sondern auch für den Einsatz in Datennetzen. Aus diesem Grund enthält das Protokoll auch ein Adreßfeld, in dem, je nach Netztyp, die Empfänger- und/oder die Senderadresse enthalten ist (vergleiche I²C-Bus-Protokoll).
Steuerfeld (control field):
In diesem Feld werden das Format des übertragenen Datenblocks (Frame) und noch weitere Informationen zur Steuerung angegeben.
Datenfeld (information field):
Im Datenfeld sind die eigentlichen, zu übertragenden, Informationen enthalten. Je nach Datenblockformat kann dieses Feld vorhanden sein oder auch nicht.
Die Länge muß ein Vielfaches von 8 Bit (=1 Byte) sein, wobei bei jedem Byte das LSB als erstes und das MSB als letztes übertragen wird.
Blockprüfungsfeld (FCS-Field = frame check sequence field):
Dieses Feld besitzt 16 Bit und dient zur Überprüfung der Daten auf Übertragungsfehler. Dadurch wird eine höhere Datensicherheit gewährleistet.
Die hier übertragenen Prüfungsbits werden vom Sender, aus den Daten im Adreß-, Steuer- und Datenfeld berechnet, und im Blockprüfungsfeld dem Empfänger übermittelt. Der Empfänger führt die selbe Berechnung mit den empfangenen Adreß-, Steuer- und Datenbits durch und vergleicht anschließend sein Ergebnis mit den Daten aus dem empfangenen Blockprüfungsfeld. Stimmt das Ergebnis nicht mit diesen Daten überein, so trat ein Übertragungsfehler auf, und der Empfänger akzeptiert den Block nicht.
5.2.2. Blockformate des SDLC-Protokolls
Das SDLC-Protokoll besitzt drei verschiedene Formate von DÜ-Blöcken:
. Datenblöcke
. Steuerblöcke mit Folgenummern
. Steuerblöcke ohne Folgenummern
Wie bereits erwähnt wird das Blockformat im Steuerfeld angegeben. Im Folgenden wird gezeigt, wie der Steuerblock dieser drei Blocktypen aussieht:
Blockformat Bitnummer
0 1 2 3 4 5 6 7
Datenblock 0 N(S)0 N(S)1 N(S)2 PF N(E)0 N(E)1 N(E)2
Steuerblock mit Folgenummer 1 0 S0 S1 PF N(E)0 N(E)1 N(E)2
Steuerblock ohne Folgenummer 1 1 M0 M1 PF M2 M3 M4
Datenblock (information transfer format, I-type frame):
In einem Block dieses Formats werden die eigentlichen Daten übertragen.
Das Steuerfeld dieses Blockes enthält die Sendefolgenummer N(S) (send count), die Empfangsfolgenummer N(E) (receive count) und das P/F-Bit.
Das Datenfeld beinhaltet die zu übertragenden Informationen.
Steuerblock mit Folgenummer (supervisory format, S-type frame):
Dieses Blockformat wird verwendet um zwischen zwei Dateneinrichtungen Befehle, Meldungen und Quittungen auszutauschen. Daten können dabei keine übertragen werden, weshalb es auch kein Datenfeld gibt.
Das Steuerfeld dieses Blockformats enthält die Empfängsfolgenummer N(E), das P/F-Bit und zwei Bits S, welche die Steuerfunktion angeben.
Steuerblock ohne Folgenummern (unnumbered format, U-type frame):
Dieses Blockformat wird für verschiedene Funktionen verwendet.
. Initialisierung der Folgesteuerung
. Prüfung der Rückmeldung von der Folgesteuerung
. Übertragung einer Fehlermeldung
. Datenübertragung, bei der die Blockfolge nicht überprüft werden soll
Das Steuerfeld enthält, im Gegensatz zum Steuerblock mit Folgenummer, keine Empfangsfolgenummer N(E), dafür gibt es 5 Bits M, zur Spezifikation der Steuerfunktion. Das P/F-Bit ist auch hier vorhanden.
Das Datenfeld enthält die zu übertragenden Informationen (Daten, Fehlermeldungen, usw.). Welche Art von Information übertragen wird, wird durch die Spezifikation angegeben.
P/F-Bit:
Dieses Bit ist ein Markierungsbit der Leit- bzw. Folgesteuerung.
Setzt die Leitsteuerung dieses Bit, so ist es ein P-Bit und die Folgesteuerung wird aufgefordert eine oder mehrere Meldungen an die Leitsteuerung zu übermitteln.
Setzt hingegen die Folgesteuerung dieses Bit, so ist es ein F-Bit. Durch ein F-Bit wird der letzte Block einer Übertragungsfolge gekennzeichnet.
5.2.3. Handshake des SDLC-Protokolls
Bei der Datenübertragung zählt jede Leit- bzw. Folgesteuerung mit, wieviel Datenblöcke sie, ohne Rückbestätigung, gesendet und wieviel richtig empfangen hat. Die empfangenen Datenblöcke werden in der Empfangsfolgenummer N(E), die gesendeten in der Sendefolgenummer N(S) mitgezählt. Bei der Übertragung eines Datenblocks werden immer beide Zahlen mitgeschickt. Bei einem Steuerblock wird nur die Empfangsfolgenummer mitgesendet.
Der Vorteil bei dieser Art des Handshakes ist, daß der Empfänger nicht jeden Block einzelnen bestätigen muß, sondern er kann warten bis er mehrere empfangen hat. Bei der Rückbestätigung teilt er dann mit, bis zu welchem Block er alle Blöcke richtig empfangen hat. Danach stellt er seinen Empfangsfolgezäher auf Null zurück und der Sender seinen Sendefolgezähler ebenfalls. Danach beginnt der Sender seine Datenblöcke weiter zu senden. Wurden Blöcke fehlerhaft übertragen, so sendet er diese noch einmal.
Achtung: Der Empfänger darf mit der Bestätigung nicht so lange warten, bis der Sendefolgezähler des Senders einen Überlauf hat, denn dadurch könnte nicht mehr ermittelt werden ob Datenböcke fehlerfrei übertragen wurden. Gegebenen Falls muß die Leitsteuerung die Folgesteuerung zwingen eine Meldung zu schicken, umgekehrt ist dies nicht möglich.
5.2.4. Das HDLC-Protokoll (High-Level Data Link Control)
Das HDLC-Protokoll ist im Prinzip ein erweitertes SDLC-Protokoll. Diese beiden Protokolle unterscheiden sich nur im Adreß- und Steuerfeld.
Beim SDLC-Protokoll hatte das Adreßfeld nur 8 Bit. Beim HDLC sind hingegen beliebige, ganzzahlige Vielfache von 8 Bit möglich, was eine beliebig hohe Adressenzahl, und somit eine beliebig hohe Anzahl von Kommunikationseinrichtungen erlaubt.
Die Größe des Steuerfeldes wurde von 8 auf 16 Bit erweitert. Dadurch stehen jetzt für die Sendefolgenummer N(S) und die Empfangsfolgenummer N(E), statt nur 3 Bit, 7 Bit zur Verfügung, wodurch der Durchnummerierungsbereich der Blöcke erhöht wurde.
|