Kurs:Wirtschaftsinformatik WS09 Kommunikationsnetze1/Lernskript/kap5
Funktionsübersicht von LAPD (Schicht 2)
- *; Bereitstellung einer oder mehrerer Schicht 2-Verbindungen über einen D-Kanal
- *; Unterscheidung durch DLCI (Data Link Connection Identifier)
- *; Erkennung der Struktur der Schicht 2-PDUs (Rahmen)
- *; Rahmenbegrenzung, Synchronisation, Transparenzfunktion
- *; Reihenfolgesicherung
- *; Folgenummernsteuerung
- *; Fehlersicherung
- *; Erkennung und Behebung von Übertragungs-, Format- und Betriebsfehlern
- *; Benachrichtigung der Managementinstanz bei nicht korrigierbaren Fehlern
- *; Flusssteuerung
Dienstprimitive
- *; Beim unquittierten Übertragungsdienst werden einzelne Schicht 3-Nachrichten übertragen. Es erfolgt innerhalb der Schicht 2 keine Überprüfung, ob die gesendete Information bei der emp-fangenden Schicht 2-Instanz (fehlerfrei) angekommen ist, d.h. falls eine Fehler- oder Reihenfolge-sicherung oder eine Flusssteuerung benötigt wird, muss diese Funktion in der Schicht 3 (oder ei-ner höheren) bereitgestellt werden. Zur Benutzung des unquittierten Übertragungsdienstes ste-hen die Primitive REQUEST und INDICATION zur Verfügung. Der unquittierte Dienst kann aus je-dem Zustand eines Schicht 2- Verbindungs-Endpunkt erfolgen.
- *; Beim quittierten Übertragungsdienst muss zunächst eine Verbindung aufgebaut und bestätigt werden, erst danach kann eine Übertragung der Nutzdaten erfolgen. Zum Schluss wird die Ver-bindung abgebaut, was die Gegenüberseite auch wieder bestätigen muss.
Transparenzfunktion
Von der Schicht 2 muss sichergestellt werden, dass die Begrenzungs-Flags nicht innerhalb der ande-ren Felder des Rahmens (durch Zufall) imitiert werden, weil dadurch die Rahmen-Erkennung durch-einander kommen würde. Dies wird dadurch erreicht, dass vor dem Senden jedesmal, wenn in der Bitfolge zwischen den beiden Flags fünf aufeinanderfolgende binäre EINSen vorkommen, eine binäre
NULL eingefügt wird. Der Empfänger wiederum entfernt aus dem Bitstrom zwischen den Flags alle binären NULLen, die direkt auf fünf aufeinanderfolgende binäre EINSen folgen. Die Stopfbits werden bei der Berechnung der Prüfbits auf beiden Seiten ignoriert. Die Typen der Schicht 2-Rahmen
- *; Informations-Rahmen (I-Rahmen): Für die Übertragung durchlaufend nummerierter Rahmen mit Nutzinformationen bei der quittierten Übertragung. Das Kontrollfeld enthält eine Sende-Folgenummer N(S) und eine Empfangs-Folgenummer N(R) von jeweils 7 Bit Länge für die Rei-henfolge-Sicherungs-Protokolle. Damit können 128 Rahmen eindeutig nummeriert werden (Mo-dulo 128 Operation). Außerdem ist noch ein weiteres Bit (Poll-Bit) vorhanden, das für die Quittie-rung verwendet wird.
- *; Steuer-Rahmen (S-Rahmen): Für die Steuerung der Schicht 2-Verbindung im Zusammenhang mit der Übertragung von I-Rahmen, z.B. Quittierung und Wiederholungsanforderung für I-Rahmen oder die Flusssteuerung. Das Kontrollfeld enthält eine Empfangs-Folgenummer (7 Bit) und ein Poll-/Final-Bit (in Befehlsrahmen wird das Bit als P-Bit bezeichnet, in Meldungs-Rahmen als F-Bit).
- *; Steuer-Rahmen ohne Folgenummern (U-Rahmen): Für zusätzliche Steuerungsfunktionen und für die unquittierte Übertragung von Nutzdaten.
Verwendete Symbole
Zähler für die Reihenfolge-Sicherung
- *; Sende-Folgezähler V(S)
- *; Zeigt die Sende-Folgenummer N(S) des nächsten zu sendenden I-Rahmens an
- *; Wird nach dem Senden eines I-Rahmens um 1 inkrementiert
- *; Empfangs-Folgezähler V(R)
- *; Zeigt die Sende-Folgenummer des nächsten erwarteten I-Rahmens an
- *; Ist V(R) = N(S), wird der Rahmen akzeptiert und V(R) um 1 inkrementiert
- *; Für andere Folgenummern wird ein Reihenfolgefehler erkannt und eine Wiederholung der Übertragung eingeleitet
- *; Quittungs-Folgezähler V(A)
- *; V(A) wird beim korrekten Empfang eines I- oder S-Rahmens auf den in diesem Wert enthal-tenen Wert von N(R) gesetzt
- *; V(A) - 1 = Folgenummer des letzten korrekt empfangenen I-Rahmens
- *; Gültige N(R)-Werte: V(A) ≤ N(R) ≤ V(S)
Beispiele
- *; Quittierung mit S-Rahmen
- *; A schickt I-Rahmen 0: I(0,0)
- *; B quittiert mit S-Rahmen: RR(1)
- *; Quittierung mit I-Rahmen (Piggybacking)
- *; A schickt I-Rahmen 0: I(0,0)
- *; B schickt I-Rahmen 0 und quittiert I-Rahmen 0 von A: I(0,1)
- *; Gemeinsame Quittung
- *; A schickt I-Rahmen 0 bis 2: I(0,0), I(1,0), I(2,0)
- *; B schickt einen S-Rahmen und quittiert drei I-Rahmen von A: RR(3)
- *; Fehlererkennung beim Empfänger (Go-Back-N-Verfahren)
- *; A schickt I-Rahmen 0 bis 2, I-Rahmen 0 wird gestört und verworfen: I(0,0), I(1,0), I(2,0)
- *; Bei I-Rahmen 1 von A: N(S) ≠ V(R) bei B Folgefehler wird erkannt
- *; B forder Wiederholung ab N(S) = 0 an: REJ(0)
- *; Nachfolgende Rahmen mit N(S) ≠ V(R) werden von B verworfen
- *; V(S) und V(A) bei A werden auf N(R) gesetzt. Alle Rahmen ab N(S) = N(R) werden wiederholt
- *; Fehlererkennung beim Sender durch Zeitüberwachung
- *; A schickt I-Rahmen 0, dieser wird gestört und verworfen: I(0,0)
- *; Zeitüberwachung (Timer) beim Sender, bei Ablauf wird S-Rahmen mit gesetztem Poll-Bit ge-sendet: RR(P,0)
- *; Sofortige Antwort von B: S-Rahmen mit gesetztem Final-Bit und aktuellem V(R) von B in N(R): RR(F,0)
- *; V(S) und V(R) bei A werden auf den Wert von N(R) gesetzt
- *; Wiederholung des I-Rahmens 0: I(0,0)
Fehlerbehebung durch Wiederholung
- *; Go-Back-N
- *; Alle Rahmen ab dem ersten verlorenen werden wiederholt
- *; Bereits korrekt empfangene Rahmen mit höherer Nummer werden verworfen
- *; Selective Repeat
- *; Nur der verlorene Rahmen wird zur Wiederholung angefordert
- *; Bereits korrekt empfangene Rahmen mit höherer Nummer werden zwischengespeichert
- *; Multiple Selective Repeat
- *; Mehrere verlorene Rahmen können gezielt einzeln und in Gruppen zur Wiederholung angefordert werden
- *; Preventive Cyclic Retransmission
- *; Zyklische Wiederholung nicht quittierter Rahmen
- *; Bei langen Verzögerungszeiten (Satellitenstrecken)
<IMG Alt="" width="23" height="261" src="" >
Flusssteuerung
- *; Flusssteuerung mit Fenstermechanismus
- *; Der Parameter Fenstergröße k begrenzt die maximale Anzahl von unquittierten Rahmen auf einen Wert unterhalb des Modulo Wertes (1 ≤ k ≤ 127). Für den Sender gilt nun die Vor-schrift, dass keine neuen I-Rahmen mehr gesendet werden dürfen, wenn V(S) = V(A) + k ist.
- *; Flusssteuerung mit RNR-Rahmen
- *; A schickt I-Rahmen 0: I(0,0)
- *; Korrekter Empfang bei B, aber B kann keine weiteren I-Rahmen annehmen, quittiert aber I-Rahmen 0: RNR(1)
- *; B im Zustand "Busy", A sendet keine weiteren I-Rahmen
- *; B kann wieder Rahmen annehmen: RR(1)
- *; A sendet weiter
Überlastproblematik
- *; Ursprünglich wurde die Flusssteuerung und Fehlersicherung in Paketnetzen auf der Schicht 2 (Sicherungsschicht) durchgeführt. Die Schicht 2 Protokolle arbeiten abschnittsweise, d.h. über ei-nen Übertragungsabschnitt zwischen zwei Vermittlungsknoten. Dadurch konnte jeder Vermitt-lungsknoten seine direkte Umgebung kontrollieren. Die abschnittsweise Flusssteuerung und Feh-lersicherung ist sinnvoll, wenn relativ viele Fehler und Verluste auf den Abschnitten auftreten. In einer fehlerfreien Umgebung wird dadurch aber der Nutzdurchsatz unnötig beschränkt und die Durchlaufverzögerung unnötig erhöht.
- *; In modernen Paketnetzen, die auf Übertragungssystemen mit sehr geringen Fehlerraten aufbau-en, wurde zur Reduktion der Durchlaufzeiten und zur Erhöhung des Nutzdurchsatzes die ab-schnittsweise Flusssteuerung und Fehlersicherung durch entsprechende Mechanismen auf einer Ende-zu-Ende-Basis ersetzt. Dadurch haben die einzelnen Vermittlungsknoten keine Möglichkeit mehr, ihre direkte Umgebung zu kontrollieren und so lokale Überlasten zu verhindern. Deshalb sind in diesen Netzen zusätzliche Flusssteuerungsmechanismen notwendig. Beispiele:
- *; Adaptive Fenstergröße (implizite Erkennung)
- *; Explizite Benachrichtigung des Senders, Sender drosselt Senderate
- *; Ratenbasierte Flusssteuerung (Rate Based Flow Control)
- *; Kreditbasierte Flusssteuerung (Credit Based Flow Control)