LAPB



HDLC ist ein umfassendes Layer-2 Protokoll aus dem je nach physikalischer Schnittstelle Untervarianten wie LAPB oder LAPD abgeleitet werden. LAPB ist dabei der Layer 2 aus der CCITT Empfehlung zu X25.
Die hier aufgeführten Daten (vertretend Modulo-8) dienen einzig als Kurzübersicht über die Arten von LAPB-Paketen. Für detailierte Informationen ist einzig die ISO 7776 zuständig.


allgemein:

Flag

AF

CF

Parameter / Daten

FCS

Flag

7Eh

7Eh



AFAddress Field - command / responce (01h/03h)
CFControl Field - Typ des Paketes
Parameter / Datenabhängig vom Typ
FCSFrame Check Sequence


Typen:

Diese Übersicht behandelt vertretend ausschließlich die in Deutschland am häufigsten verwendete Variante modulo-8.


SABM

" set asyncronous balanced mode "

Flag

c

3Fh

FCS

Flag



3FhTyp: SABM
• bit-4: poll-bit


DM

" disconnected mode "

Flag

c

1Fh

FCS

Flag



1FhTyp: DM
• bit-4: poll-bit


UA

" unnumbered acknowledgment "

Flag

r

73h

FCS

Flag



73hTyp: UA
• bit-4: poll-bit


DISC

" disconnect "

Flag

c

53h

FCS

Flag



53hTyp: DISC
• bit-4: poll-bit


FRMR

" frame reject "

Flag

c

87h

xxh

xxh

xxh

FCS

Flag



87hTyp: FRMR
• bit-4: poll-bit
xxhsee ISO 7776 for information-field


REJ

" reject "

Flag

c/r

x9h

FCS

Flag



x9hTyp: REJ
• bit-4: poll-bit
• bit-7..5 receive sequence number


RNR

" receive not ready "

Flag

c/r

x5h

FCS

Flag



x5hTyp: RNR
• bit-4: poll-bit/final-bit
• bit-7..5 receive sequence number


RR

" receive ready "

Flag

c/r

x1h

FCS

Flag



x1hTyp: RR
• bit-4: poll-bit/final-bit
• bit-7..5 receive sequence number


I-frame

" data-frame "

Flag

c

xx..xx0b

data

FCS

Flag



xx..xx0bTyp: I-frame
• bit-4: poll-bit
• bit-7..5 receive sequence number
• bit-3..1 send sequence number
• bit-0 must be zero





Im Standard zu LAPB sind aufwendige State-Diagramme zu den jeweiligen Übergängen und Fehlerbehandlungen dargestellt. Eine Variante um einen platzsparenden und gleichzeitig gut zu pflegenden Zustands/Übergangs-Mechanismus zu erhalten, ist die Implementation mittels einer State-Table. Dabei wird der aktuelle Status als Zeile und der empfangene Paket-Typ als Spalte verwendet. Das dort hinterlegte Byte gibt im oberen Nibble die erforderliche Reaktion und das untere Nibble den neuen State wieder. Da ausreichend Ausnahmeregelungen existieren, sind jedoch noch weitere Auswertungen um solch eine Tabelle herum nötig (siehe ISO 7776).