LAPD (Link Access Protocol - Channel D) ist ein Layer 2 Protokoll definiert in CCITT Q.920/921 bzw. ETS 300 125. LAPD arbeitet ausschließlich im Asynchronous Balanced Mode (ABM). Eine der typischen Anwendungen ist X31 im D-Kanal (Paket-Dienst).
Die hier aufgeführten Daten dienen einzig als Kurzübersicht über die Arten von LAPD-Paketen. Für detailierte Informationen ist einzig die ETS 300 125  zuständig.

allgemein:


Flag

SAPI

TEI

CF

Parameter / Daten

FCS

Flag

    7Eh                                                                                  7Eh

abhängig vom Typ

Control Field
Typ des Paketes                   Frame Check Sequence

   |---------------------| Address Field

Terminal endpoint identifer
  bit-0 EA2-Second Address Extension bit which is always set to 1.

Service access point identifer
  bit-1 C/R-Command/Response bit.
    (Frames from the user with this bit set to 0 are command frames,
    as are frames from the network with this bit set to 1.
    Other values indicate a response frame.)
  bit-0 EA1-First Address Extension bit which is always set to 0.

 

SAPI – Service Access Point Identifier:

0

Used by CCITT signaling

1

Not defined

16

Used for paket-data communication

32

Used for internal loop-tests only (national !!!)

63

Used for management(TEI) in all services

für X31 im D-Kanal gilt dabei fix: SAPI = 16 (bis auf TEI-Management)


TEI - Terminal Endpoint Identifier:

0-63

Used by non-automatic TEI assignment user equipment.

64-126

Used by automatic TEI assignment equipment.

127

Used for a broadcast connection meant for all Terminal Endpoints.

allgemein üblich für X31(jedoch nicht fix !): TEI=1


Die Numerierung erfolgt nach Modulo-128.



Typen:

" set asyncronous balanced mode extended "

Flag

SAPI

TEI

7Fh

FCS

Flag

  bit-4 poll-bit

SABME

 

" disconnected mode "

Flag

SAPI

TEI

1Fh

FCS

Flag

  bit-4 final-bit

DM

 

" disconnect "

Flag

SAPI

TEI

53h

FCS

Flag

  bit-4 poll-bit

DISC

 

" unnumbered acknowledgement "

Flag

SAPI

TEI

73h

FCS

Flag

  bit-4 final-bit

UA

 

" frame reject "

!!! soll nicht verwendet werden !!!

Flag

SAPI

TEI

87h

data-field

FCS

Flag

see ETS 300 125 for data-field

  bit-4 final-bit

FRMR

 

" exchange identification node "

!!! soll nicht verwendet werden !!!

Flag

SAPI

TEI

AFh

data-field

FCS

Flag

see ETS 300 125 for data-field

  bit-4 poll/final-bit

XID

 

" reject "

Flag

SAPI

TEI

09h

xxh

FCS

Flag

  bit-7..1 receive sequence number

  bit-4 poll/final-bit

REJ

 

" receive not ready "

Flag

SAPI

TEI

05h

xxh

FCS

Flag

  bit-7..1 receive sequence number

  bit-4 poll/final-bit

RNR

 

" receive ready "

Flag

SAPI

TEI

01h

xxh

FCS

Flag

  bit-7..1 receive sequence number

  bit-4 poll/final-bit

RR

 

" data-frame "

Flag

SAPI

TEI

xx..xx0b

xxh

data

FCS

Flag

bit-7..1 receive sequence number
bit-0 poll -bit

  bit-7..1 send sequence number
  bit-0 must be zero

I-frame

 

" unnumbered-information "

Flag

SAPI

TEI

03h

[data-field]

FCS

Flag

optional (for example: TEI-management)
see ETS 300 125

  bit-4 poll-bit

UI




Im Standard zu LAPD 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 ETS 300 125).