14.

Základy přenosu dat

 

Druhy přenosu dat

Při paralelním přenosu jsou data přenášena po více bitech najednou, typicky po celých bytech. K tomu je ovšem zapotřebí příslušný počet souběžných (paralelních) vodičů, což je únosné jen na krátké vzdálenosti (typicky 20 metrů).

Při sériovém přenosu jsou data přenášena postupně bit po bitu, nejnižším (přesněji nejméně významným) počínaje. Nejmenší položka dat přenášená sériově je označována jako znak (character) a má obvykle rozsah 7 nebo 8 bitů. Znak vyjádřený přímo ve formě posloupnosti dvojkových bitů, které se skutečně přenášejí, se pak označuje jako značka.

Sériový asynchronní přenos (serial asynchronous transmission)

Jednotlivé znaky jsou přenášeny s libovolnými časovými rozestupy. Aby poznala přijímací strana další znak, je třeba vysílat vhodný řídící (uvozovací) znak – start-bit. Slouží také k nastavení časové základny příjemce. Zajištění odstupu mezi jednotlivými znaky provádí tzv. stop-bit. Vyslání následujícího znaku může začít nejdříve po odvysílání celého předchozího znaku, tedy včetně jeho stop-bitu

 

Sériový synchronní přenos (serial synchronous transmission)

Při synchronním přenosu jsou obvykle přenášeny celé bloky znaků. Datové bity jednotlivých znaků přitom následují těsně po sobě, bez jakýchkoli časových odstupů, a nejsou prokládány žádnými start- či stop-bity  Začátek bloku je indikován jedním nebo několika speciálními synchronizačními znaky (tzv. znaky SYN), jejichž hlavním smyslem je zajistit potřebnou časovou synchronizaci odesilatele i příjemce - tzn. pomoci příjemci přesně stanovit časové okamžiky, ve kterých má vyhodnocovat jednotlivé datové bity. Blok znaků je pak opět zakončen synchronizačními znaky, které mohu (ale nemusí) být nepřetržitě vysílány až do začátku následujícího datového bloku.

Synchronní přenos je obecně rychlejší než asynchronní, neboť není zatížen režií připadající na start- a stop-bity. Jeho technická a programová realizace však bývá poněkud složitější než u přenosu asynchronního.

 

Druhy dvoubodových spojení

 

Simplex – obvod schopný přenosu jen v jednom směru

 

Poloviční duplex (half duplex, HDX) – schopnost obousměrného přenosu dat mezi vysílající a přijímací stanicí v daném čase pouze v jednom směru.

 

Full duplex (duplex, FDX) – schopnost současného přenosu mezi vysílající a přijímající stanicí v obou směrech zároveň.

 

Základní pojmy

 

Kód – pravidlo přiřazení znaků

Kódování – převod pro zpracování počítačem

 

Rovnoměrný kód – každá značka má stejnou délku (např. mezinárodní telegrafní síť MTA č. 2)

Nerovnoměrný kód (např. Morseova abeceda)

 

Nadbytečný kód – využívá méně značek, než je jeho kapacita – umožňuje detekci a korekci chyb

 

Systematický kód – rovnoměrný kód, u kterého lze rozlišit informaci a zabezpečovací prvky

Nesystematický kód – rovnoměrný kód, u kterého nelze rozlišit informaci a zabezpečovací prvky

 

Interakční kód – vniká postupnou aplikací několika kódů, nejčastěji dvou

 

Chybovost – poměr počtu chybných prvků ke všem prvkům

 

Hammingova vzdálenost

 

         značka d

         minimální vzdálenost kódu

         vyjadřuje počet odlišných prvků dvou značek kódu

         najde se postupně u všech dvojic značek kódu a nejmenší je Hammingova vzdálenost

 

1 0 0                                                      1 0 1 0 1

1 1 0                                                          1 0 0 0 0             

––––                                                      –––––––

0 1 0            d = 1                                  0 0 1 0 1          d = 2

 

Hammingova váha

 

         značka w

         je dána vzdáleností kódové značky od nulové značky (značka tvořená nulami) a u binárního kódu je to počet jedniček ve značce

 

Vyjádření kódu

 

         každý kód se dá geometricky vyjádřit

         vždy mnohoúhelníkem

         nebo např. krychlí

 

Bezpečnostní kódy

 

         jednoduchý paritní

 

Systematický kód. Jeho značky mají jen jeden zabezpečovací prvek závislý na všech informačních prvcích – rozlišujeme sudý a lichý, podle toho doplňujeme jedničkou nebo nulou.

 

         křížový paritní (maticový)

 

Interakční kód. Vzniklý aplikací dvou paritních kódů – příčného a podélného. Používá se pouze jako detekční s využitím rozhodovací zpětné vazby.

 

Př.

1 1 0 0 1 | 1

              1 0 0 0 1 | 0

1 1 1 0 1 | 0

1 0 0 1 1 | 1

–––––––––

0 0 1 1 0 | 0

                      \ křížová parita, “kontrola kontroly” 

 

         cyklický kód – CRC (cyclic redundancy check)

 

Zabezpečují kód proti shluku chyb. Provádí se pomocí zbytku po provedeném dělení.

 

 

 

 

 

 

 

 

 

 

 

Př.

                                                                      /  generující mnohočlen    

(x9  + x7      +    x4   + x2+x1)                    x3+x2  + 1

1  0  1  0  0  1  0  1  1  0  0  0  0  :  1  1  0  1  =  0  0  1  1 – zbytek po dělení

1  1  0  1

–––––––

0  1  1  1  0

    1  1  0  1

    –––––––

    0  0  1  1  1  0

            1  1  0  1

            –––––––

            0  0  1  1  1  1

                    1  1  0  1

                    –––––––

                    0  0  1  0  0  0

                            1  1  0  1

                            –––––––

                            0  1  0  1 0

                                1  1  0 1

                                –––––––

                                0  1  1  1 0      

                                    1  1  0  1

                                    ––––––– 

                                    0  0  1  1

 

Návod:

Nejprve je třeba na konec čísla přidat tolik nul, kolikátého řádu je generující mnohočlen – je to počet jeho číslic mínus jedna. Potom postupně sepisujeme mnohočlen a porovnáváme v logice modulo 2 – pokud jsou rozdílné, píšeme 1. Sepisujeme vždy tolik číslic, kolik má předchozí výsledek na začátku nul.

 

Toto postupné odečítání dělence od děliletele se provádí pomocí

a)       zpožďovacího členu (obvod 7474)

    obsahuje 1 vstup,  1 výstup a 1 řízení

    tvoří ho posuvný registr

b)       sumačního členu

– provádí součet (XOR) vztahů vstupů v algebře modulo 2 (obv. 7486)

c)       zpětné vazby

– z výstupu jsou zavedeny do sumačních členů před zpožďovací členy, které odpovídají mocninám proměnné x, které jsou v generujícím mnohočlenu

 

Taktovací impulzy jsou přiváděny na všechny zpožďovací členy, tvořící posuvný registr, současně.

 

Změna stavu vstupu probíhá mezi dvěma taktovacími impulzy. Při přivedení taktovacího impulzu na řídící vstup se přenese stav vstupu na výstup. Má–li zpráva n bitů, pak po n+1 taktovacích krocích je na výstupech zpožďovacích členů uložen zbytek po dělení.

 

OSCANNOVAT OBRAZEK, DOPLNIT NAVOD, OSCANNOVAT (?) TABULKU s vypoctem, nevim jak to lip napsat…

 

Zabezpečení přenosu dat zpětnou vazbou

 

Informační zpětná vazbazpůsob zabezpečení přenosu zpětným vysíláním dat. V případě zjištění chyby se oprava provede novým vysíláním dat.

 

Rozhodovací zpětná vazba – způsob zabezpečení přenosu zjišťováním výskytu na příjmu. Oprava se děje opakováním přenosu.

 

Metody neuvažují chybnou zpětnou vazbu.

 

Protokol BSC – Binary Synchronnous Communications

 

V roce 1975 vydán s malými změnami jako mezinárodní norma ISO 1745.

Zajišťuje poloduplexní přenos po dvoubodovém nebo mnohabodovém spoji mezi jednou řídící stanicí a jednou nebo více stanicemi podřízenými.

Přenášené rámce jsou tvořeny textem a řídícími znaky kódové abecedy ASCII (vychází z MA5 – sedmiprvkové, osmý bit je parita => 128 znaků)

 

Řídící znaky:

 

         SYN: synchorniazace

         ENQ: dotaz (výzva, volání)

         SOH: začátek záhlaví

         EOT: ukončení přenosu

         ETX: konec textu

         STX: začátek textu

         ACK: kladné potvrzení

         NAK: odmítnutí

         ETB: konec bloku

         DLE: změna významu následujícího bloku

 

Formát informačního rámce

 

 

SOH

záhlaví

STX

data

ETX (ETB)

bcc

Počet znaků

1

n

1

n

1

8 bit

 

bcc – kontrolní součet

 

Používá se buď podélná parita (křížový kód), nebo cyklický kód CRC 16 ..... x16 + x12 + x5 + 1

 

ASCII – American Standard Code for Information Interchange

 

         americký standardní kód pro výměnu informací – v Evropě normován jako ISO-7

         uspořádání: 0 ÷ 15 řádků, 0 ÷ 7 sloupců

 

Řádek č.

b4

b3

b2

b1

 

 

 

 

 

1

 

 

b7

kódová značka

0

b6

1

b5

0

1

.

.

.

4

.

.

.

15

 

 

 

 

 

0

 

 

 

 

 

1

 

 

 

 

 

0

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

T

 

 

 

 

Sloupec č.

0

1

2

3

4

5

6

7

 

 

Př: 1010100 – odpovídá znaku „T“

      Další možný zápis 5/04 (5. sloupec, 4. řádek)

      Ve dvojkové soustavě: 101/0100

 

U protokolu BSC u dvoubodového spojení nemusí být záhlaví použito. V tom případě začíná vysílání rámce znakem STX.

 

 

 

 

Asynchronní přenos (arytmický) – není nutno zvlášť zajišťovat synchronizaci

Synchronní přenos – před každým blokem se vysílá znak SYNa při dlouhých blocích se vysílá i uvnitř bloku.

Zabezpečení přenosu

Bloková metoda ARQ (automatická žádost o opakování)

 

a)       postupné vysílání bloků

ACK – povel potvrzení bloku

NAK – negativní  potvrzení bloku, následuje opakování bloku

 

b)       plynulé vysílání bloků

         opakování vysílání od chybného bloku znovu

         opakování pouze chybného bloku

 

Metody neuvažují chybný zpětný kanál.

 

Podle protokolu ISO-7 lze zajistit kódově transparentní (nezávislý) přenos v libovolné abecedě vysíláním před každým řídícím znakem DLE, a to ke pak vyhodnoceno jako řídící znak.

Obsahuje-li jiná abeceda kódovou značku odpovídající znaku DLE, potlačí se její řídící význam dalším znakem DLE. Vyšle se tedy DLE DLE a pak je to vyhodnoceno jako část textu.

 

Princip datové komunikace řízené protokolem ISO-1745

 

1)       Vytvoření logického spojení

Řídící stanice (ŘS)                                              Volaná stanice (VS)

––––––––––––––––> ENQ + adresa volané stanice

                                   NAK <–––––––––––––––– buď

A následuje zrušení (ukončení) přenosu ––––––––––––––––> EOT

                                   ACK <–––––––––––––––– nebo

––––––––––––––––> vysílání 1. bloku datové zprávy

 

2)       Přenos zpráv

Vysílací stanice                                                  Volaná stanice

SYN…SYN ENQ ––––––––––––––––>     

                                     <–––––––––––––––– SYN…SYN ACK  vytvoření spojení

 

SYN…SYN STX ETB BCC ––––––––––––––––>

                     <––––––––––––––––          SYN…SYN ACK

                     <––––––––––––––––           SYN…SYN NAK při chybě

 

            SYN…SYN je dostatečně dlouhá posloupnost

 

3)       Ukončení

Poslední blok textu ––––––––––––––––>

                                <–––––––––––––––– SYN…SYN ACK

 SYN…SYN EOT   ––––––––––––––––>

 

V případě chyby datového kanálu se ztratí blok, anebo se přijme 2×. Tomu se dá zabránit číslováním bloků v jejich záhlaví a dokonce i číslováním odpovědí.

 

Mnohabodový spoj (1 řídící stanice)

 

1)       Řídící stanice ––––––––––––––––> výber podřízené stanice

a)       Běžný výběr

Řídící stanice                                                              podřízená stanice

––––––––––––––––> EOT (uvede podřízené stanice do klidu)

––––––––––––––––> adresa vlastní stanice + ENQ

ACK nebo NAK <––––––––––––––––

––––––––––––––––> SOH záhlaví STX text ETB BCC

 

               ACK <––––––––––––––––

                    nebo

               NAK <––––––––––––––––    

                    při chybě

b)       Rychlý výběr

Nevysílá se dotaz a souhlas k přenosu

––––––––––––––––> EOT adresa volané stanice STX text ETX BCC

                                   ACK <––––––––––––––––

 

2)       Řídící stanice <––––––––––––––––– výzva

a)       programová výzva

= vyzvedání dat z paměti přidružených stanic

 

řídící stanice                                                přidružená stanice

––––––––––––––––> EOT

––––––––––––––––> adresa přidružené stanice + ENQ

SOH záhlaví atd. <–––––––––––––––– má-li zprávu

––––––––––––––––> ACK

 

                                    EOT <–––––––––––––––– nemá-li zprávu

 

b)       Štafetová výzva

Řídící stanice naváže spojení s jednou podřízenou stanicí, a  ta má-li zprávu, tak ji vyšle a pak předá výzvu další podřízené stanici a nemá-li výzvu, předá výzvu hned.

 

Konverzační provoz – výměna krátkých zpráv

 

Řídící stanice                                                              podřízená stanice

–––––––––––––––––> adresa + ENQ

    . . .                            <––––––––––––––––– má-li zprávu

    EOT                         <––––––––––––––––– nemá-li zprávu

 

Chce-li sama předat zprávu  –––––––––––––––––> ENQ

 

                            ACK <––––––––––––––––– může-li přijímat

–––––––––––––––––> SOH . . .

                            NAK <––––––––––––––––– nemůže-li přijímat

3)       Režim ohlášení

Podřízená stanice má možnost ohlášení žádosti o výzvu řídící stanici.

Pozn.: U dvoubodového spoje nemusí být záhlaví použito. Takže rámec začíná STX…

 

Protokol HDLC – bitově orientovaný formát (High Level Data Link Control)

 

Může se použít v simplexním, poloduplexním a duplexním provozu. Je vhodný pro dávkový i konverzační provoz. Dá se použít pouze u synchronního přenosu na pevných i komutovaných spojích, na dvoubodovém, mnohabodovém a kruhovém spoji; centralizované i decentralizované řízení sítí. Bitově orientovaný formát je kódově transparentní (nezávislé). Tento formát tvoří rámec, na kterém jsou vydělena bitová místa pevné délky (tzv. pole) a v nich jsou umístěny ucelené informace (adresa, řídící znak, ...).

 

U protokolu HDLC jsou režimy:

a) normální režim odpovědi NRM

b) asynchronní režim odpovědi ARM

c) asynchronní vyvážený režim ABM – u VDS pro provozně rovnoprávné stanice

d) další režimy se nastaví příkazy v nečíslovaných rámcích (3. a 4. bit a 6., 7., 8. bit)

 

a), b) – u dvoubodových a mnohabodových spojů

 

a) NRM – normal response mode – P.S. na výzvu odesílá rámce do č. 7 nebo č. 127 (podle délky řídícího pole) – další rámce po další výzvě.

 

b) ARM – asynchronous response mode – P.S. může vysílat zprávu kdykoliv i bez výzvy.

 

c) ABM – asynchronous baanced mode – Ř.S. i P.S. mohou zahájit komunikaci na dvoubodovém spoji (patří sem linková procedura LAPB – doporučení X.25).

 

d) např. SARM – pracuje v asynchronním režimu.

Struktura rámce

 

F

návěst

01111110

A

adresové pole

C

řídící pole

I

informační pole (paket)

FCS

zabezpeč. pole

F

návěst

                8                              8                              8 (16)                      n x 8                            16                                8 bitů

 

Adresové pole A:

 

Do vedení

kombinace

z vedení

povel

odpověď

10000000

11000000

odpověď

povel

               

Návěst F:

01111110 – aby při vysílání textu nedošlo k záměně za návěst, vkládá se v každém případě v textu po 5 x 1 nulový bit

 

Řídící pole C:

 

určuje typ rámce:

 

a) informační rámec – pak následuje informační pole

 

0

číslo

vysílaného

rámce

V/K

číslo očekávaného

přijímaného

rámce

 

V – v rámcích s povely (adresové pole) znamená výzvu k vysílání: V=1 (dotaz)

K – v rámcích s odpovědí má význam ukončené odezvy: K=1

 

b) řídící rámce

 

- dohlížecí S:

 

1

0

řídící

povely

V/K

číslo očekávaného

přijímaného

rámce

 

řídící povely:        0 0 = RR = pohotovost (připravenost k příjmu; kladné potrvzení)

                               1 0 = RNR = nepohotovost (nepřipravenost přijmout inform. rámec)

                               0 1 = REJ = odmítnutí (žádost o opakování od rámce č. poslední 3 bity)

1 1 = SREJ = selektivní zamítnutí (tímto pokynem si stanice vyžádá opakování pouze rámce určitého podle posledních 3 bitů)

 

                - nečíslovaný LI

 

1

1

 

 

V/K

 

 

 

                            1          1                      1          0          0                    - SABM – pracuj v asyn. režimu

                            0          0                      0          1          0                    - DISC – rozpoj

                            1          1                      0          0          0                    - DM – rozpojeno

                            0          0                      1          1          0                    - UA – potvrzeno

                            1          0                      0          0          1                    - FRMR – rámec odmítnutí               

 

 

Zabezpečovací pole FCS:

 

Všechny bity v polích A, C, I a 16x nula (úprava před dělením) se vydělí x16 + x12 + x5 + 1 a zbytek dělení se vyšle v poli FCS. Na přijmu se provede totéž a pole FCS se porovná .....

 

Pozn.:

Znakově orientovaný formát

Základními prvky formátu jsou znakyz abecedy používané daným spojovým protokolem. Těmito znaky jsou vyjádřeny řídící informace, záhlaví i text.

U formátů s proměnlivou délkou fragmentů nesmějí být v textu obsaženy řídící znaky. Nedají se přenášet v jiné abacedě => jsou kódově závislé = netransparentní.

Bitově orientovaný formát

Základním prvkem je bit. Délka formátu (obálka a text) bývá pevná. Řídící kódové kombinace se mohou objevit i v textu, kde nejsou přijímány jako řídící znaky. Text se tedy může přenášet v libovolné abecedě => jsou kódově nezávislé (transparentní).

 

Protokol HDLC byl vytvořen pro řízení datové komunikace (tedy ne pro vytvoření a rušení spoje) především v duplexním režimu.

Značení rámců:

T             - informační rámec

R             - řídící dohledový rámec

N (U)      - řídící nečíslovaný rámec

 

Použitá značení ve znázornění komunikace stanic:

ČV          - pořadové číslo vysílaného rámce

ČP           - pořadové číslo přijímaného rámce (očekávaného)

RF           - řídící funkce

D             - dotaz (musí být vyslán nejpozději v rámci č. 7 nebo č. 127)

K             - odpověď

 

Pozn.:

HDLC umožňuje vysílání několika rámců jedním směrem za sebou. Tím se změnšuje počet změn směru přenosu => efektivnější přenos.

Dvoubodový poloduplexní spoj

 

(zjednodušené znázornění – rámce mají ale úplnou strukturu)

 

Př.:

stanice S1                                                            stanice S2

T –  0    0  –––––––––––––––––––––––––––––––>

     ČV   ČP

 

T – 1 – 0 –––––––––––––––––––––––––––––––––>

T – 2 – 0 –––––––––––––––––––––––––––––––––>

T – 3 – 0 – D –––––––––––––––––––––––––––––>

<––––––––––––––––––––––––––––––––––– RR – 4 – K

                                                                              řídící rámec RR, S2 očekává rámec č. 4 => příjem bez chyb

T – 4 – 0 –––––––––––––––––––––––––––––––––>

 

Vyskytne-li se chyba:

 

stanice S1                                                            stanice S2

T – 0 – 0 –––––––––––––––––––––––––––––––––>

T – 1 – 0 –––––––––––––––––––––––––––––––––> chyba

T – 2 – 0 –––––––––––––––––––––––––––––––––>

T – 3 – 0 – D –––––––––––––––––––––––––––––>

<–––––––––––––––––––––––––––––––––––– RR – 1 – K

                                                                              žádost o opakování od rámce č.1

 

T – 1 – 0 –––––––––––––––––––––––––––––––––>

T – 2 – 0 –––––––––––––––––––––––––––––––––>

T – 3 – 0 –––––––––––––––––––––––––––––––––>

T – 4 – 0 – D –––––––––––––––––––––––––––––>               

<––––––––––––––––––––––––––––––––––––– RR – 5 – K

T – 5 – 0 –––––––––––––––––––––––––––––––––>

       .

       .

       .

Datová komunikace na poloduplexním spoji v případě, že stanice S2 má také zprávu:

     S1                                                                                       S2

T – 0 – 0 –––––––––––––––––––––––––––––––––>

T – 1 – 0 –––––––––––––––––––––––––––––––––>

T – 2 – 0 – D –––––––––––––––––––––––––––––>

<–––––––––––––––––––––––––––––––––––––––– T – 0 – 2

<–––––––––––––––––––––––––––––––––––––––– T – 1 – 2

<–––––––––––––––––––––––––––––––––––––––– T – 2 – 2 – K

T – 3 – 3 – D ––––––––––––––––––––––––––––––>

Dvoubodový duplexní spoj

 

Pozn.:

S1 vysílá bez mezery i po vysílání dotazu D.

 

     S1                                                                                       S2

T – 0 – 0 –––––––––––––––––––––––––––––––––>

T – 1 – 0 –––––––––––––––––––––––––––––––––>

T – 2 – 0 – D –––––––––––––––––––––––––––––>

T – 3 – 0 –––––––––––––><–––––––––––––– RR – 3 – K

T – 4 – 0 –––––––––––––––––––––––––––––––––>

 

 

Při výskytu chyby:

     S1                                                                                       S2

T – 0 – 0 –––––––––––––––––––––––––––––––––>

T – 1 – 0 –––––––––––––––––––––––––––––––––> chyba

T – 2 – 0 – D –––––––––––––––––––––––––––––>

T – 3 – 0 –––––––––––––><–––––––––––––– RR – 1 – K

T – 1 – 0 –––––––––––––––––––––––––––––––––>

 

Nová žádost o potvrzení správnosti při řízení protokolem HDLC se může vyslat až po obdržení příchozí odpovědi. (Závisí na délce T rámců a na době zpoždění přenosem.)

 

Znázornění komunikace vhodnější pro časové znázornění:

Duplexní spoj:

Duplexní provoz v režimu NRM

Podřízená stanice (má-li připravenou zprávu) může vysílat až po příjmu výzvy D.

NRM při výskytu chyby:

 

 

Duplexní provoz v režimu ARM:

 

Obě stanice jsou rovnocenné – např. stejná práva.

ARM při výskytu chyby: