Přeskočit na obsah

Link Access Procedure Balanced

Z Wikipedie, otevřené encyklopedie
Stavový diagram LAPB

LAPB (Link Access Procedure, Balanced) je implementace protokolu linkové vrstvy v sadě protokolů X.25[1] definovaná v ITU-T doporučení X.25 a ISO/IEC 7776. LAPB je bitově orientovaný protokol odvozený z HDLC zaručující bezchybný přenos rámců ve správném pořadí. Může být používán jako protokol linkové vrstvy implementující spojovanou linkovou službu v referenčním modelu ISO/OSI, jak ji definuje ITU-T doporučení X.222[2].

LAPB slouží k vytváření rámců z paketů a řízení komunikace mezi koncovým zařízením přenosu dat (KZD) a zařízením ukončujícím datový okruh (UZD) v protokolovém zásobníku X.25. LAPB je v zásadě HDLC v asynchronním vyváženém režimu (ABM), což znamená, že LAPB relaci může zahájit jak KZD tak UZD. Stanice zahajující spojení je primární, odpovídající stanice je sekundární.

Struktura protokolu

[editovat | editovat zdroj]

Typy rámců

[editovat | editovat zdroj]
  • I-rámce (informační rámce): Přenášejí informace vyšší vrstvy a některé řídicí informace, které zabezpečují správné řazení (anglicky sequencing) rámců, řízení toku dat a detekci a opravu chyb. I-rámec obsahuje pořadové číslo vysílaného i přijatého rámce.
  • S-rámce (dohlížecí rámce): Přenášejí řídicí informace. S-rámec slouží k vyžádání nebo dočasnému pozastavení přenosu, k oznámení stavu a k potvrzení příjmu I-rámce. S-rámec obsahuje pořadové číslo pouze přijatého rámce.
  • U-rámce (nečíslované rámce): Přenášejí řídicí informace. U-rámec slouží k navázání a ukončení spojení a k oznamování chyb. Název odráží skutečnost, že U-rámce neobsahují žádná pořadová čísla.

Formát rámce

[editovat | editovat zdroj]
Flag Address Control Data Checksum Flag
0111 1110 0111 1110
(8 bits) (8 bits) (8 bits) (Variable) (16 bits) (8 bits)

Příznak – Flag je byte s hodnotou 0x7E sloužící jako oddělovač rámců. Aby se zajistilo, že bitový vzorek oddělovače rámců se nevyskytne v datovém poli rámce (a způsobí nesprávné určení konce rámec), používá se technika nazývaná Bit-stuffing, která zajišťuje, že uvnitř rámce se nikdy neobjeví více než 5 jedničkových bitů za sebou.

Adresní pole – nemá v LAPB význam, protože protokol pracuje v dvoubodovém režimu a síťová adresa KZD je reprezentována v paketech vrstvy 3. Proto je použit k rozlišení příkazů od odezev: Hodnota 0x01 identifikuje rámce obsahující příkazy z KZD do UZD a odezvy na tyto příkazy z UZD do KZD; 0x03 se používá pro rámce obsahující příkazy z UZD do KZD a pro odezvy z KZD do UZD. Proto musí být jedna strana zkonfigurována na úrovni vrstvy 2 jako KZD a druhá jako UZD (což se nesmí zaměňovat s rozdílem mezi UZD a KZD na úrovni vrstvy 1).

Řídicí pole – na slouží k identifikaci typu rámce. Navíc obsahuje pořadová čísla, řídicí vlastnosti a sledování chyb podle typu rámce.

Režim komunikace – LAPB funguje v asynchronním vyváženém režimu (ABM). Tento režim je symetrický (tj. neexistuje nadřízená a podřízená stanice) a je určen rámcem SABM(E)/SM. Iniciovat a řídit spojení může libovolná ze stanic. Stanice mohou kdykoli poslat rámec nebo provádět zotavení z chyb. KZD a UZD jsou považovány za rovnocenné.

FCS – kontrolní součet (anglicky Frame Check Sequnce) poskytuje vysoký stupeň ochrany před fyzickými chybami díky kontrole dat v přijatém rámci.

Velikost okénka – LAPB podporuje rozšíření velikosti okénka (modulo 128 a modulo 32768), kde maximální počet nepotvrzených rámců může být větší než 7 (modulo 8): buď 127 (modulo 128) nebo 32767 (modulo 32768)[3].

Fungování protokolu

[editovat | editovat zdroj]

V protokolu LAPB není žádná stanice nadřízená nebo podřízená. Odesilatel používá Poll bit v příkazovém rámci pro vynucení bezprostřední odezvy. Stejný bit plní v odezvě funkci Final bitu. Přijímač vždy nastaví Final bit v odezvě na příkaz s nastaveným bitem Poll. Bit P/F se obecně používá když libovolná komunikující strana ztratí jistotu o patřičném řazení rámců kvůli možnému chybějícímu potvrzení a je potřeba začít ze známého bodu. Bit P/F se také používá na vyžádání potvrzení nepotvrzených I-rámců.

Adresování

[editovat | editovat zdroj]

Následující tabulka ukazuje, které adresy jsou umisťovány do LAPB rámce při vysílání příkazu a odezvy z KZD do UZD a z UZD do KZD pomocí operace s jediným spojem nebo operace s více spoji:[4]

Směr Operace s jedním spojem Operace s více spoji
Příkaz Odezva Příkaz Odezva
KZD-UZD 01 Hex (B) 03 Hex (A) 07 Hex (D) 0F Hex (C)
UZD-KZD 03 Hex (A) 01 Hex (B) 0F Hex (C) 07 Hex (D)

Příkazy a odezvy protokolu

[editovat | editovat zdroj]
Typ rámce Příkaz Odezva Význam
Dohlížecí RR RR potvrzuje příjem rámce a indikuje, že zařízení je připravené na příjem dalšího rámce
RNR RNR potvrzuje příjem rámce, ale indikuje, že zařízení nemůže přijmout další I-rámce, protože je obsazené
REJ REJ vyžaduje opakování přenosu I-rámce, paket obsahuje rámcovou chybu, takže KZD bude opakovat vysílání všech paketů kvůli opravě chyby
SREJ vyžaduje opakování přenosu vybraného I-rámce, paket obsahuje zvláštní rámce, které KZD bude opakovat vysílání (tento příkaz se nepoužívá pro modulo 8, je volitelný pro modulo 128 a povinný pro modulo 32768)
Nečíslovaný SABM UA zahájí spojení mezi KZD a UZD v normálním (základním) režimu (modulo 8)
SABME UA zahájí spojení mezi KZD a UZD v rozšířeném režimu (modulo 128)
SM UA zahájí spojení mezi KZD a UZD v super režimu (modulo 32768)
DISC DM ukončí spojení
FRMR odmítnutí rámce, oznamuje chybovou podmínka
Informační I
Příkazový rámec poslaný s P = 1 Rámec odezvy vrácený s F = 1
SABM, SABME, SM UA, DM
I-rámec RR, RNR, REJ, SREJ
I-rámec FRMR
RR, RNR, REJ RR, RNR, REJ, SREJ
FRMR FRMR
DISC UA, DM

Související články

[editovat | editovat zdroj]

Externí odkazy

[editovat | editovat zdroj]