Přenos dat
Transkript
FAKULTA ELEKTROTECHNIKY A INFORMATIKY VYSOKÁ ŠKOLA BÁŇSKÁ - TECHNICKÁ UNIVERZITA OSTRAVA Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO Garant předmětu: Pavel Nevlud Autoři textu: Pavel Nevlud, Marek Dvorský OSTRAVA 2014 Vznik těchto skript byl podpořen projektem č. CZ.1.07/2.2.00/28.0062 Evropského sociálního fondu a státním rozpočtem České republiky. Za odbornou náplň tohoto vydání odpovídají autoři. Pavel Nevlud je asistentem na Fakultě elektrotechniky a informatiky VŠB-Technické univerzity v Ostravě, kde přednáší předmět Přenos dat pro studenty navazujícího magisterského studia, kurz PD je na fakultě nabízen ve studijním programu Informační a komunikační technologie. Marek Dvorský je odborným asistentem na Fakultě elektrotechniky a informatiky VŠB-Technické univerzity v Ostravě. Vznik skript byl podpořen projektem č. CZ.1.07/2.2.00/28.0062 Evropského sociálního fondu a státním rozpočtem České republiky. Tato publikace neprošla redakční ani jazykovou úpravou. ©Pavel Nevlud, Marek Dvorský 2014, VŠB-Technická univerzita Ostrava Autor: Pavel Nevlud, Marek Dvorský Katedra: Katedra telekomunikační techniky Název: Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO Místo, rok, vydání: Ostrava, 2014, 1. vydání Počet stran: 116 Vydala: Vysoká škola báňská-Technická univerzita Ostrava Náklad: CD-ROM, 100 ks Neprodejné ISBN 978-80-248-3638-6 Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 1 Obsah Úvod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Informační vlastnosti zpráv 5 7 1.1 Základní poznatky a pojmy . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.2 Informační vlastnosti zpráv . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.3 Datový řetězec pro přenos dat . . . . . . . . . . . . . . . . . . . . . . . . . 9 2 Abecedy a kódy 11 2.1 Základní definice použitých abeced . . . . . . . . . . . . . . . . . . . . . . 11 2.2 Typy kódů pro přenos dat . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3 Přenos informací . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3 Způsob přenosu a zabezpečení zpráv 17 3.1 Rušivé vlivy působící na datový signál . . . . . . . . . . . . . . . . . . . . 17 3.2 Způsoby zabezpečení zpráv . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.3 Zpětnovazební metody pro zabezpečení datových přenosů . . . . . . . . . . 20 4 Bezpečnostní kódy 23 4.1 Detekční kódy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 4.2 Korekční kódy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 5 Bezeztrátová komprese dat 31 5.1 Statistické kompresní metody . . . . . . . . . . . . . . . . . . . . . . . . . 31 5.2 Slovníkové kompresní metody . . . . . . . . . . . . . . . . . . . . . . . . . 34 6 Parametry a charakteristiky datových signalů 39 6.1 Základní parametry datových signálů . . . . . . . . . . . . . . . . . . . . . 39 6.2 Rozdělení datových signálů . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 6.3 Datový signál v základním pásmu . . . . . . . . . . . . . . . . . . . . . . . 40 2 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava 6.4 Datový signál v přeloženém pásmu . . . . . . . . . . . . . . . . . . . . . . 42 7 Způsoby modulace a demodulace datových signálů 45 7.1 Amplitudová modulace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 7.2 Frekvenční modulace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 7.3 Fázová modulace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 7.4 Modulace digitálním signálem – praktické využití . . . . . . . . . . . . . . 47 8 Koncová zařízení pro přenos dat 51 8.1 Základní prvky koncového zařízení pro přenos dat . . . . . . . . . . . . . . 51 8.2 Přenosové protokoly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 8.3 Datová rozhraní . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 9 Datové měniče signalů v základním pásmu 55 9.1 Datový měnič typu GDN . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 9.2 Datový měnič typu DMZP . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 9.3 Datové měniče typu HDSL . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 10 Datové měniče signálu v přeloženém pásmu 59 10.1 Základní princip modemu . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 10.2 Modemová detekce a korekce chyb . . . . . . . . . . . . . . . . . . . . . . . 60 10.3 Komprese dat používaná v modemech . . . . . . . . . . . . . . . . . . . . . 61 10.4 Přehled základních typů modemů . . . . . . . . . . . . . . . . . . . . . . . 62 10.5 AT příkazy pro ovládání modemů . . . . . . . . . . . . . . . . . . . . . . . 62 11 Modemy pro širokopásmové kanály 65 11.1 Analogové modemy pro širokopásmové kanály . . . . . . . . . . . . . . . . 65 11.2 Datové měniče ADSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 11.3 Kabelové modemy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 11.4 Powerline modemy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 3 11.5 Multiplexní zařízení . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 11.5.1 FDM (Frequency Division Multiplexing) . . . . . . . . . . . . . . . 68 11.5.2 WDM (Wavelength Division Multiplexing) . . . . . . . . . . . . . . 69 11.5.3 TDM (Time Division Multiplexing) . . . . . . . . . . . . . . . . . . 69 11.5.4 CDM (Code Division Multiplexing) . . . . . . . . . . . . . . . . . . 70 11.5.5 SDM (Space Division Multiplexing) . . . . . . . . . . . . . . . . . . 70 12 Datové sítě 73 12.1 Lokální datové sítě . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 12.2 Metropolitní datové sítě . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 12.3 Rozlehlé datové sítě . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 12.4 Topologie sítě . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 12.5 Řízení přístupu ke společnému médiu . . . . . . . . . . . . . . . . . . . . . 76 12.6 Přenosová média . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 12.7 Síťová architektura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 13 Bezdrátové datové sítě 83 13.1 Bezdrátové osobní sítě (WPAN) . . . . . . . . . . . . . . . . . . . . . . . . 83 13.2 Bezdrátové lokální sítě (WLAN) . . . . . . . . . . . . . . . . . . . . . . . . 85 13.3 Bezdrátové metropolitní sítě (WMAN) . . . . . . . . . . . . . . . . . . . . 86 13.4 Bezdrátové rozlehlé sítě (WWAN) . . . . . . . . . . . . . . . . . . . . . . . 87 13.5 Zabezpečený přenos dat v bezdrátových sítích . . . . . . . . . . . . . . . . 88 13.5.1 Nezabezpečená síť . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 13.5.2 Síť zabezpečená pomocí WEP . . . . . . . . . . . . . . . . . . . . . 89 13.5.3 Síť zabezpečená pomocí WPA . . . . . . . . . . . . . . . . . . . . . 90 13.5.4 Síť zabezpečená pomocí WPA2 . . . . . . . . . . . . . . . . . . . . 90 13.5.5 Virtuální privátní síť VPN . . . . . . . . . . . . . . . . . . . . . . . 90 13.5.6 Metody autentizace . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 13.6 Měření - datové přenosy v bezdrátových sítích . . . . . . . . . . . . . . . . 93 4 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava 14 Šifrování dat 95 14.1 Hash funkce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 14.2 Symetrické šifrování . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 14.3 Asymetrické šifrování . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 14.4 Diffie-Hellman protokol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 14.5 Algoritmus RSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 14.6 Praktické nástroje pro šifrování dat v OS Linux . . . . . . . . . . . . . . . 100 A Příloha GNU Octave 103 A.1 Instalace GNU Octave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 A.2 Spuštění a základní operace GNU Octave . . . . . . . . . . . . . . . . . . . 103 A.3 Generování náhodných dat . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 A.4 Náhodné signály . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 A.5 CRC (Cyclic Redundance Check) kódování a dekódování . . . . . . . . . . 105 A.6 Hamming kódování a dekódování . . . . . . . . . . . . . . . . . . . . . . . 107 A.7 RM (Reed-Muller) kódování a dekódování . . . . . . . . . . . . . . . . . . 108 A.8 RS (Reed-Solomon) kódování a dekódování . . . . . . . . . . . . . . . . . . 108 A.9 RLE (Run Length Encoding) komprese a dekomprese . . . . . . . . . . . . 110 A.10 Huffman komprese a dekomprese . . . . . . . . . . . . . . . . . . . . . . . 110 A.11 LZ77 komprese a dekomprese . . . . . . . . . . . . . . . . . . . . . . . . . 111 A.12 ASK (Amplitude Shift Keying) modulace . . . . . . . . . . . . . . . . . . . 111 A.13 FSK (Frequency Shift Keying) modulace . . . . . . . . . . . . . . . . . . . 112 A.14 PSK (Phase Shift Keying) modulace . . . . . . . . . . . . . . . . . . . . . 113 A.15 QAM (Quadrature Amplitude Modulation) modulace . . . . . . . . . . . . 115 A.16 Substituční šifrování dat . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 A.17 Transpoziční šifrování dat . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 5 ÚVOD Předmět Přenos dat je nabízen v bakalářském studiu studijního programu Informační a komunikační technologie. Přenášet informace na velké vzdálenosti je snahou lidstva od nepaměti. Dlouho se používaly pro přenos dat kouřové signály, které byly postupně nahrazeny jinými způsoby přenosu informací. Dá se očekávat, že v blízké budoucnosti budeme schopni pomocí nejmodernějších technologií, přenášet i myšlenky. Tato skripta jsou rozdělena do patnácti kapitol. Některé kapitoly na sebe navazují, jiné kapitoly se zabývají samostatným tématem. První kapitola je úvodní a popisuje obsah těchto skript. Druhá kapitola se zabývá informačními vlastnostmi zpráv a základním řetězcem pro přenos dat. Třetí kapitola popisuje základní abecedy a kódy používané v přenosu dat. Velký důraz je kladen na znalost ASCII tabulky a zejména je požadována znalost Unicodu. Další kapitola se zabývá různými metodami zabezpečení zpráv. Jsou popsány rušivé vlivy na přenos dat a možnosti jejich potlačování. Pátá kapitola navazuje na předchozí kapitolu a zabývá se bezpečnostními kódy. Jsou popsány detekční i korekční, neboli samoopravné kódy. Následující kapitola se zabývá bezeztrátovými kompresními metodami. Pro každou metodu je uveden pro názornost krátký příklad. Velký důraz je kladen zejména na statistické a slovníkové metody komrese dat. Sedmá kapitola popisuje parametry různých typů datových signálů, které jsou používány při přenosu dat. Následující kapitola navazuje na předchozí kapitolu a popisuje modulace a demodulace používané v přenosu dat. V deváté kapitole se seznámíte s koncovými zařízeními, která jsou používána v přenosu dat. Další tři kapitoly se zabývají datovými měniči v základním a přeloženém pásmu a širokopásmovými datovými měniči. Následující dvě kapitoly se zabývají bezdrátovými a drátovými sítěmi. Jsou popsány jak sítě krátkého dosahu, tak i sítě rozlehlé s velkým dosahem. U bezdrátových sítí je kladen důraz na bezpečný přenos dat. Poslední kapitola popisuje základní možnosti šifrování dat. Jsou popsány hash funkce, symetrické a asymetrické šifrování dat. Také jsou krátké ukázky linuxových programů pro šifrování dat. V příloze je několik krátkých příkladů simulace v programu Octave. 6 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 1 7 INFORMAČNÍ VLASTNOSTI ZPRÁV 1.1 Základní poznatky a pojmy Historie přenosu dat pochází ze starého Řecka, kdy byl přenos uskutečňován pomocí kouřových signálů. Již v počátcích byla snaha o co nejspolehlivější přenosy informací na velké vzdálenosti. Než se budeme zabývat problémy přenosu dat je potřeba se seznámit s několika základními pojmy a vysvětlit možnosti jejich použití. Data – jsou zprávy ve tvaru vhodném pro jejich přenos, uložení do paměti nebo zpracování. Zpráva – skládá se z jednotlivých prvků, které jsou vybírány z množiny prvků. Diskrétní zpráva – uspořádaná posloupnost znaků, určená pro sdělování informace. Přenos dat – spolehlivý přenos diskrétních zpráv o malé nadbytečnosti. 1.2 Informační vlastnosti zpráv Sdělování je proces přenosu zpráv z místa vzniku – zdroj zpráv, do místa využití – spotřebič zpráv. Na obrázku 1.1 je znázorněn způsob přenosu zpráv, včetně rušení, které negativně ovlivňuje přenášené zprávy. Informační kanál představuje souhrn prostředků pro přenos zpráv. Tyto prostředky zahrnují jednotlivé přenosové a spojovací systémy, včetně dalších podpůrných mechanismů. Objem (míra) informace – vyjadřuje množství informace obsažené ve zprávě. Pokud budeme uvažovat zprávu ze zdroje zpráv s pravděpodobnosti výskytu 𝑃𝑖 , potom Obrázek 1.1: Blokové schéma přenosu dat 8 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava množina všech zpráv tvoří úplnou soustavu náhodných jevů: ∑︁ 𝑃𝑖 = 1 (1.1) Objem informace zprávy 𝐼𝑖 je funkcí pravděpodobnosti 𝑃𝑖 . Objem informace dané zprávy vyjadřuje stupeň zvýšení určitosti u pozorovatele, které výskyt zprávy vyvolá. Jistá zpráva nemá žádnou neurčitost, a tudíž nemá žádný objem informace. Je-li jednotkový objem informace dán neurčitostí výskytu jednoho ze dvou stejně pravděpodobných jevů: 𝐼𝑖 = − log2 𝑃𝑖 [𝑠ℎ𝑎𝑛𝑛𝑜𝑛] (1.2) 𝐼𝑖 = − log10 𝑃𝑖 [ℎ𝑎𝑟𝑡𝑙𝑒𝑦] (1.3) [𝑛𝑎𝑡] (1.4) 𝐼𝑖 = − log𝑒 𝑃𝑖 Zpráva o velmi pravděpodobném jevu nese v sobě tedy velmi málo informace a naopak zpráva o málo pravděpodobném jevu obsahuje velké množství informace. Informační entropie – je průměrný objem informace. Míra etropie souvisí s problematikou generování sekvence náhodných čísel, respektive pseudonáhodných. Sekvence naprosto náhodných čísel by měla mít maximální míru entropie. Shannonova etropie také tvoří limit při bezeztrátové kompresi dat. Komprimovaná data nelze beze ztráty informace stlačit více, než dovoluje jejich entropie. Chceme-li charakterizovat neurčitost množiny zpráv, pak použijeme k vyjádření průměrné hodnoty: 𝐻= ∑︁ 𝑃𝑖 𝐼𝑖 = − ∑︁ 𝑃𝑖 log2 𝑃𝑖 (1.5) Příklad 1 výpočet entropie Zdroj generuje 4 nezávislé znaky a, b, c, d s pravděpodobnostmi p(a)=0,5, p(b)=0,25, p(c)=0,125, p(d)=0,125. Entropie zdroje potom bude: 𝐻 = −(0, 5 log2 (0, 5)+0, 25 log2 (0, 25)+0, 125 log2 (0, 125)+ 0, 125 log2 (0, 125)) = 1, 75 Příklad 2 výpočet entropie Zdroj generuje 4 nezávislé znaky a, b, c, d se stejnými pravděpodobnostmi p(a)=0,25, p(b)=0,25, p(c)=0,25, p(d)=0,25. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 9 Entropie zdroje potom bude: 𝐻 = −(0, 25 log2 (0, 25)+0, 25 log2 (0, 25)+0, 25 log2 (0, 25)+ 0, 25 log2 (0, 25)) = 2, 00 1.3 Datový řetězec pro přenos dat Sdělování neboli komunikace, je přenos informace mezi několika místy podle dohodnutých pravidel. V souvislosti se zpracováním informace je informace vyjadřována ve tvarech vhodných ke komunikaci, uložení nebo zpracování. Zařízení pro přenos dat mohou být velmi složitá a neustále jsou na ně kladené přísnější požadavky. Řešení těchto úkolů využívá metod, jež vyplývají z teorie systémů. V současné době se pomocí prostředků, původně určených pro přenos dat přenášejí i jiné digitalizované signály, než pouze signály datové. Cesta pro přenos dat mezi datovým zdrojem a datovým spotřebičem je zajišťována systémem přenosu dat, jehož blokové schéma je na následujícím obrázku. Obrázek 1.2: Obecné schéma systému přenosu dat Systém přenosu dat je realizován různými fyzickými zařízeními a také souborem programového vybavení pro řízení tohoto systému. Význam jednotlivých částí je následující: KZD – koncové zařízení pro přenos dat, je tvořeno vstupním a výstupním periferním zařízením PZ a komunikační jednotkou KJ. UZD – ukončující zařízení pro přenos dat, je umístěné v objektu uživatele, navazující na přípojné vedení a zajišťující všechny funkce potřebné pro vytvoření, udržení a zrušení požadovaného spoje. PZ – periferní zařízení, které zajišťuje vstup, nebo výstup dat. Může být realizováno různými vstupními prvky, jako je např. klávesnice, čidlo s převodníkem, paměťové médium apod. Nebo je realizováno jako výstupní zařízení, kde to může být monitor, akční člen, paměťové médium. KJ – komunikační jednotka, je zařízení, které zajišťuje různé funkce, jako je např. 10 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava synchronizace, zabezpečení přenosu dat proti chybám, přizpůsobení KZD k telekomunikačnímu okruhu. 𝐼3 - je vnitřní rozhraní koncového zařízení a většinou bývá sběrnicového provedení. Na tomto rozhraní je přenos dat uskutečňová na vzdálenosti řádově v jednotkách cm. 𝐼2 - je rohraní mezi koncovým a ukončujícím zařízením. Může se například jednat o sériové rozhraní, případně rozhraní USB (Universal Serial Bus). Typicky je toto rohraní na krátké vzdálenosti, řádově v jednotkách metrů. 𝐼1 - je rozhraní mezi ukončujícími zařízeními. Mohou být využity různé technologie pro vzdálený přenos dat. Toto rozhraní je většinou na velké vzdálenosti, řádově to mohou být i stovky kilometrů. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 2 11 ABECEDY A KÓDY 2.1 Základní definice použitých abeced Již od počátku přenosu dat, byla snaha vytvořit vhodnou abecedu pro přenos dat. Postupně vznikaly a stále vznikají nové typy. Pro přenos dat se používají různé druhy abeced a kódů. Prvek signálu - nejkratší možný úsek, po který může nastat změna stavu, označuje se a. Znak - písmeno, číslice, interpunkční znaménko, stav určitého objektu, povel signálu. Značka - abstraktní nebo fyzikální obraz znaku, složený z prvků kódu nebo prvků signálu. Vztah mezi jednotlivými pojmy je na obrázku 2.1. Obrázek 2.1: Vztah mezi znakem a odpovídajícími značkami Abeceda - sestava převodních vztahů mezi znaky a odpovídajícími značkami. Kód - soustava dohodnutých pravidel, podle kterých se tvoří jednotlivé značky. Nerovnoměrný kód - jednotlivým znakům jsou přiřazeny značky různých délek, např. podle četnosti výskytu. Rovnoměrný kód -jednotlivým znakům jsou přiřazeny značky stejných délek. 2.2 Typy kódů pro přenos dat V případě rovnoměrného kódu, je kapacita abecedy dána počtem použitých prvků, které odpovídají jednotlivým značkám. Pětiprvkový kód - kapacita kódu je 25 = 32 znaků. Tento kód umožňuje mít 32 kódových kombinací. Mezi tyto kódy patří nejstarší Mezinárodní telegrafní abeceda, označovaná jako MTA 2. Tato abeceda se používala při dálnopisné technice. Byla přijata jako standard CCITT 12 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava (dnes ITU). Protože tato abeceda není schopna pokrýt veškerou množinu znaků, používají se řídící znaky přepínání registrů tří registrů. Abeceda obsahuje tzv. registr písmen, všechna písmena (26), registr číslic (10), kde jsou jednotlivé číslice + znaménka a registr pro zabezpečené číslice, nebo transparentní provoz. Tato abeceda má nulovou redundanci a není zabezpečena proti chybám, které vznikají při přenosu dat. Pouze, když je použit speciální registr pro zabezpečené číslice je možno přenášet pouze některé kódové kombinace. Když je přijata nepoužívaná kombinace, je to vyhodnoceno jako chyba. Šestiprvkový kód - kapacita kódu je 26 = 64 znaků. Tento kód umožňuje celkem 64 různých kódových kombinací. Mezi tento kód patří např. abeceda BCD, která kóduje číslice ve dvojkové soustavě a pomocí dvou změn umožňuje teoreticky 124 znaků. V praxi se tyto kódy moc nevyužívají. Sedmiprvkový kód - kapacita kódu je 27 = 128 znaků. Tento kód umožňuje celkem 128 různých kódových kombinací. Mezi tyto kódy patří např. Mezinárodní abeceda pro přenos dat, označovaná jako MA5 a velmi používaná ASCII (American Standard Code for Information Interchange) tabulka. Tyto abecedy obsahují 26 písmen malé abecedy, 26 písmen velké abecedy, 10 číslic, 22 znamének, 34 řídících, ovládacích a služebních znaků a 10 znaků pro národní použití. ASCII tabulka definuje znaky anglické abecedy a jiné znaky používané v informatice. Řídící znaky jsou neviditelné znaky, které jsou určeny pro různé ovládání a mohou být někdy využívány pro různé účely. Výpis ASCII tabulky lze získat v linuxu např. příkazem man ascii. Obrázek 2.2: Výpis ASCII tabulky Osmiprvkový kód - kapacita kódu je 28 = 256 znaků. Tento kód umožňuje celkem 256 různých kódových kombinací. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 13 Mezi tyto kódy patří např. kód EBCDIC (Extended Binary Coded Decimal Interchange Code), nebo ISO-8, který vznikl rozšířením kódu ISO-7. Tyto kódy většinou obsahují další rozšíření pro jiné národní abecedy a další speciální řídící znaky. Např. pro kódování češtiny je používán kód ISO-8859-2, který obsahuje české písmena s diakritikou. Další typy kódů - dnes již existují další typy kódů, které mohou mít i delší kódové kombinace, např. 16, nebo 32 bitů. Mezi tyto kódy patří Unicode. Tento kód vznikl jako naléhavá potřeba sjednotit různé kódové tabulky znaků pro národní abecedy. Například český jazyk používal v informatice nejméně 5 různě kódovaných tabulek. Vznikaly značné komplikace při spolupráci aplikací a při přenosech dat mezi programy. V současné době existuje Unicode ve verzi 6.3. Celkem obsahuje přes 110 tisíc znaků a symbolů z 90 různých jazyků a abeced. Unicode umožňuje pracovat se znaky všech písem i různými jinými symboly stejným způsobem, takže mohou být využívány současně. Unicode Consorcium zaručuje, že všechny nové verze budou zpětně kompatibilní s předchozími verzemi. Tzn., že nové standardy budou přidávat další znaky, ale žádné již nebudou odstraňovat, nebo měnit. Obrázek 2.3: Výpis části Unicode tabulky pro různé obrázky Způsob kódování řetězce znaků Unicode lze např. pomocí UTF-8 UCS Transformation Format. Při tomto způsobu kódování mohou mít jednotlivé znaky různou délku. Od jednoho oktetu do šesti oktetů. Rozsah Unicode U+00000000 - U+0000007F U+00000080 - U+000007FF U+00000800 - U+0000FFFF U+00010000 - U+001FFFFF U+00200000 - U+03FFFFFF 1.oktet 0xxxxxxx 110xxxxx 1110xxxx 11110xxx 111110xx 2.oktet 3.oktet 4.oktet 5.oktet 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 6.oktet 14 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava U+04000000 - U+7FFFFFFF 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx Příklad 1 zakódování slova "Béďa"pomocí UTF8: B é ď a Unicode 0000 0000 0000 0000 0000 0001 0000 0000 2.3 0100 1110 0000 0110 0010 1001 1111 0001 UTF-8 0100 0010 1100 0011 1010 1001 1100 0100 1000 1111 0110 0001 Hexa 42 C3 A9 C4 8F 61 Přenos informací Při vlastním přenosu dat mohou být jednotlivé značky přenášeny sériově od prvku s nejnižší váhou, případný paritní bit nebo zabezpečovací sekvence, jsou na konci značky. Sériový přenos - jednotlivé prvky jsou v časové posloupnosti vysílány po jediném přenosovém kanálu. Paralelní přenos - vyžaduje pro každý prvek samostatný přenosový kanál. Tento typ přenosu je vhodný na velmi krátké vzdálenosti. Můžeme se s ním setkat např. při sběrnicovém přenosu dat v počítači. Přenos dat můžeme z hlediska synchronizace rozdělit do několika skupin. Asynchronní přenos - do vysílaných dat se vkládají synchronizační oddělovací prvky, které nenesou žádnou informaci. Tento typ sychronizace se dnes již nepoužívá, ale klade nejnižší nároky na přijímač z pohledu bitové synchronizace. Na obrázku 2.4 je naznačen průběh asynchronního přenosu dat. Obrázek 2.4: Asynchronní přenos dat Arytmický přenos - jednotlivé značky jsou přenášeny asynchronně, značkové prvky v rámci jedné značky se přenášejí synchronně. Využívají se tzv. start - stop prvky. Přijímač musí být schopen udržet si synchronizaci po dobu trvání značky. Někdy je tento druh přenosu nazýván jako asynchronní. Na obrázku 2.5 je naznačen průběh arytmického přenosu dat. Synchronní přenos - prvky a jednotlivé značky jsou přenášeny synchronně, pro udržení synchronizace se skládají do bloků, kterým předchází synchronizační sled prvků, které Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 15 Obrázek 2.5: Arytmický přenos dat nenesou žádnou informaci. Přijímač musí být schopen udržet synchronizaci minimálně po dobu trvání příslušhého bloku. Na 2.6 je naznačen průběh synchronního přenosu dat. Tento způsop synchronizace se dnes nejčastěji využívá. Obrázek 2.6: Synchronní přenos dat Pro přenos dat se používají různé provozní módy. Nejčastěji se využívají tři typy módů. Simplexní přenos - data se přenášejí pouze jedním směrem. Pro přenos stačí pouze jeden přenosový kanál. Typický simplexní přenos si lze představit jako přenos televizního signálu z jednoho zdroje k několika různým spořebičům. Poloduplexní přenos - data se přenášejí střídavě v jednom směru a opačném směru. Pro přenos také stačí pouze jeden přenosový kanál. Tento typ přenosu se používá např. u radiostanic, nebo v případě počítačových sítí u starších přepínačů. Duplexní přenos - přenos dat probíhá oběma směry současně. Pro přenos musí být použity dva nezávislé kanály. Je možno využít různé metody vícenásobného přenosu. Ty mohou být založeny na časovém, frekvenčním, vlnovém, kódovém, nebo prostorovém multiplexu. Tento způsob komunikace se dnes používá nejčastěji. Pro přenos dat se používají různé definice rychlosti. Modulační rychlost - udává počet možných změn modulačních stavů za jednotkový čas. Je definována jako převrácená hodnota délky nejkratšího prvku a. 𝑣𝑚 = 1 𝑎 [𝐵𝑑, 𝑠−1 ]. (2.1) Přenosová rychlost - vyjadřuje objem přenesených dat za jednotku času. V těchto datech jsou zahrnuty všechny synchronizační, signalizační zabezpečovací, informační a 16 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava zabezpečovací data, včetně časových prodlev mezi jednotlivými bloky dat. 𝑣𝑝 = 𝑣𝑚 𝑙𝑜𝑔2 𝑚 [𝑏𝑖𝑡/𝑠]. (2.2) Efektivní přenosová rychlost - vyjadřuje objem užitečných dat přenesených za jednotku času. Někdy bývá označena jako přenosový výkon. V těchto datech jsou zahrnuty pouze vlastní informační data. Jednotkou pro tento parametr je 𝑏𝑖𝑡/𝑠. Zvýšit hodnotu efektivní přenosové rychlosti je možno za použití různých kompresních metod. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 3 17 ZPŮSOB PŘENOSU A ZABEZPEČENÍ ZPRÁV 3.1 Rušivé vlivy působící na datový signál Při přenosu zpráv může docházet ke vzniku chyb, které mohou vznikat jako důsledek různých vlivů, které působí na datový signál. Rušení z externích zdrojů je zejména způsobeno různými přeslechy, vazbami, rádiovým rušením a přírodními vlivy. Dále je rušení také způsobováno použitými přenosovými prostředky, tzv. vnitřní rušení. Zdrojem jsou různé druhy šumu, mezisymbolová interference, fázová nestabilita (jitter), odrazy na nehomogenitách, apod. Můžeme se také setkat s pojmy barevný šum, kde jednotlivé barvy odpovídají frekvenčnímu spektru příslušného šumu. Nejčastěji se používá bílý šum, který obsahuje všechny složky frekvenčního spektra rovnoměrně. Jako základní šumový model se často používá tzv. aditivní šum, AWGN Aditive White Gaussian Noise. Velmi často se můžeme setkat s pojmem odstup signálu od šumu, který nám udává poměr středního výkonu signálu k střednímu výkonu šumu. Anglicky se to označuje jako SNR Signal to Noise Ratio. 𝑆𝑁 𝑅 = 10𝑙𝑜𝑔( 𝑃𝑠𝑖𝑔𝑛𝑎𝑙 ) 𝑃𝑛𝑜𝑖𝑠𝑒 [𝑑𝐵]. (3.1) Všechny tyto vlivy zhoršují základní parametry datového signálu. Pro digitální signály jsou velmi důležité různé časové parametry. Jsou daleko důležitější časové změny, nebo rychlost těchto změn, než amplituda datového signálu. Telegrafní zkreslení - označuje časovou deformaci digitálního signálu. Individuální telegrafní zkreslení - je definováno, jako časová odchylka charakteristického okamžiku, vzhledem k ideálnímu okamžiku. 𝛿𝑖 = Δ𝑡 100 𝑎 [%]. (3.2) Arytmické telegrafní zkreslení - je definováno, jako maximální absolutní hodnota individuálního telegrafního zkreslení arytmického signálu. 𝛿𝑎𝑟 = |Δ𝑡𝑚𝑎𝑥 | 100 𝑎 [%]. (3.3) Izochronní telegrafní zkreslení - je definováno, jako algebraický rozdíl mezi maxi- 18 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava málním a minimálním individuálním zkreslením. 𝛿𝑖𝑧 = |Δ𝑡𝑚𝑎𝑥 − Δ𝑡𝑚𝑖𝑛 | 100 𝑎 [%], (3.4) kde Δ𝑡𝑚𝑎𝑥 je maximální kladný interval mezi skutečným a ideálním charakteristickým okamžikem, Δ𝑡𝑚𝑖𝑛 je maximální záporný interval mezi skutečným a ideálním charakteristickým okamžikem. Chybovost - neboli četnost chyb, je dána poměrem chybně přijatých symbolů k celkovému počtu přijatých symbolů za určitou dobu pozorování. Rozeznáváme bitovou, znakovou, nebo blokovou chybovost. 𝐵𝐸𝑅 = 𝑚𝑒 𝑣𝑝 𝑡𝑚 [−]. (3.5) Pro vyhodnocování chybovosti existují růné standardy. Doporučení G.821 se zabývá vyhodnocováním bitové chybovosti. Definují se zde základní pojmy se kterými se dále pracuje. Chybová sekunda ERS (Errored Second) - je sekunda použitelné doby, během níž nastala alespoň jedna chyba. Neakceptovatelná sekunda SES (Severely Errored Second) - sekunda použitelné doby, během které chybovost překročila hodnotu 10−3 . Pro vysokorychlostní systémy ovšem není vhodné vyhodnocovat jednotlivé bity, ale vyhodnocují se celé bloky (skupiny bitů). Tímto se zabývá doporučení G.826, které definuje další nové pojmy. Chybový blok - blok ve kterém je jeden, nebo více chybných bitů. Silně chybový interval - časový interval, ve kterém se vyskytnou nejméně tři, ale ne více než devět za sebou jdoucích SES. Pro hlubší analýzu chybovosti je velmi důležité časové rozložení výskytu chyb. Získání těchto průběhů je ovšem časově velmi náročné. Poznatky o chybách lze získat několika způsoby. První metoda využívá měření chyb v použitém kódu. Např. kód HDB3 můțe mít pouze definované bitové kombinace, a pokud jsou narušeny, je to vyhodnoceno jako chyba. Další metoda využívá vyhodnocování tzv. synchroskupin, které nenesou žádné informace a pravidelně se vyskytují v přesně definovaných časových okamžicích. Poslední metoda využívá měření věrnosti přenosu bit po bitu. Tato metoda vyžaduje znalost vysílaných dat, a tím neumožňuje přenášet žádné nové informace. Využívá se při testování nových datových okruhů, v případě změn, nebo v případě velkých problémů. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 19 Obrázek 3.1: Časové rozložení výskytu chyb 3.2 Způsoby zabezpečení zpráv Zprávy lze zabezpečit proti chybám různými způsoby. Vždy záleží na důležitosti přenášených dat, která budeme zabezpečovat. První metoda, kterou můžeme využít je úpravou přenášené zprávy. Zpráva obsahuje nadbytečné informace a příjemce může vyhodnotit přijatou zprávu jako narušenou. Pokud budeme posílat informaci o nějaké důležité schůzce, můžeme vložit informaci o datu, dni a hodině. Např. “Sejdeme se zítra, 1.1.2011 ve tři hodiny odpoledne, 15:00.“ Další metoda využívá změnu přenosové rychlosti. Některá zařízení automaticky přizpůsobují přenosovou rychlost v závislosti na kvalitě přenosového kanálu. Při nižší rychlosti je ovlivňován nižší počet přenášených symbolů. Nejpoužívanější metodou je využití bezpečnostního kódování, které je založeno na nadbytečnosti digitálního signálu. Princip bezpečnostního kódování se nejsnadněji předvádí na tzv. kódové krychli. Tato krychle představuje kód s délkou 3 bitů. Černě označené vrcholy znamenají využití kódové kombinace. Prázdné vrcholy označují nevyužité kódové kombinace. Na následujícím obrázku jsou znázorněny tři typy kódů a jejich využití. Obrázek 3.2: Princip bezpečnostního kódování 20 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Nezabezpečený kód využívá všechny kódové kombinace. Pro tři bity existuje celkem 8 různých kombinací. Tento kód není schopen ani detekovat ani opravit jednoduchou chybu. Detekční kód využívá pouze některé kombinace. Ty jsou zvoleny tak, aby mezi dvěma libovolnými kombinacemi byly alespoň dvě změny. Detekční kód umí pouze chybu detekovat, ale neumí ji opravit. Korekční kód využívá pouze dvě kombinace z osmi možných. Např. lze využít pouze dvě platné kódové kombinace “000“ a “111“. Tento opravný kód je schopen opravit jednoduchou chybu. Pokud nastane více chyb, jsou opraveny na chybnou kódovou kombinaci. Hammingova vzdálenost - označuje se jako 𝑑 a udává počet míst, ve kterých se liší dvě kódové kombinace. Minimální Hammingova vzdálenost - označuje se jako 𝑑𝑚𝑖𝑛 a udává počet míst, ve kterých se liší libovolné dvě kódové kombinace. Hammingova váha - označuje se jako 𝑤 a udává počet nenulových míst v kódové kombinaci. 3.3 Zpětnovazební metody pro zabezpečení datových přenosů Pro tyto metody musí existovat tzv. zpětný kanál. Musí být k dispozici minimálně poloduplexní provoz. Informační zpětná vazba - vysílaný blok nemusí obsahovat žádné zabezpečení. Na přijímací straně se zpráva jednak uloží do paměti a zároveň se posílá zpět k vysílači. Vysílač potom pošle potvrzení o správnosti doručení, případně je zpráva posílána znova. Obrázek 3.3: Informační zpětná vazba Rozhodovací zpětná vazba - tato metoda vyžaduje zabezpečení vysílaných dat. Označuje se jako ARQ (Automatic Repeat reQuest). Tato metoda může využívat různé způsoby potvrzování přenášených dat. Rozlišují se tři metody potvrzování. Pozitivní potvrzování - u této metody se po každém odeslaném bloku dat čeká na jeho kladné potvrzení, nebo záporné potvrzení. Označuje se jako ARQ-ACK, nebo Stop- Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 21 and-Wait ARQ, zastav a čekej. Tato metoda generuje velké zpoždění, protože se čeká na potvrzení každého bloku. Obrázek 3.4: Rozhodovací zpětná vazba s pozitivním potvrzováním Negativní potvrzování - při této metodě, vysílač trvale posílá bloky dat. Pokud při přenosu dojde k chybě, přijímač odešle negativní potvrzení s číslem chybného bloku. Data se začnou vysílat znova od chybného bloku. Označuje se jako Go-Back-N ARQ. Zpoždění je menší, než u předchozí metody. Problém je, že se znova vysílají všechny bloky od chybného bloku. Obrázek 3.5: Rozhodovací zpětná vazba s negativním potvrzováním Selektivní potvrzování - tato metoda selektivně opakuje pouze chybně přijaté bloky dat. Má vyšší nároky na řízení průběhu přenosu dat, ale je lepší využití přenosových kanálů a paměti vysílače a přijímače. Obrázek 3.6: Rozhodovací zpětná vazba se selektivním potvrzováním V praxi se zpětnovazební metody používají například u modemů, které si vzájemně potvrzují jednotlivé bloky dat. Také se s touto metodou můžeme setkat u protokolu TCP, který umožňuje najednou přenášet větší mnošství bloků dat, které jsou následně potvrzovány. Podobně protokol Kermit 9.0 umožňuje potvrzovat až 32 bloků dat o velikosti jednoho bloku 9kB. 22 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 4 23 BEZPEČNOSTNÍ KÓDY Bezpečnostní kódy můžeme rozdělit na kódy detekční a kódy opravné. Detekční kódy mají schopnost chybu pouze detekovat a opravit se může znovuposláním dané zprávy. Je nutný zpětný kanál. Kódy opravné již mají schopnost nejen chybu detekovat, ale jsou schopny nelezenou chybu i opravit. Nepotřebují žádný zpětný kanál a jsou vhodné u systémů, kde by znovuposlání bloku dat bylo časově náročné. Typicky to jsou satelitní přenosy. 4.1 Detekční kódy Detekční kódy mají schopnost rozpoznat jednu nebo několik chyb. Schopnost kódu detekovat chyby vychází z nadbytečnosti vložené informace. Počet detekovatelných chyb vychází z minimální Hammingovy vzdálenosti. 𝑒𝑟𝑟𝑑𝑒𝑡 = 𝑑𝑚𝑖𝑛 − 1 (4.1) Nesystematické kódy - nemají rozdělenou zvlášť informační a zabezpečovací část přenášené zprávy. Mezi tyto kódy patří např. tzv. izokódy. Například kód “M z N“ má konstantní Hammingovu váhu. V kódové kombinaci je vždy použit stejný počet jedniček a nul. Pokud je toto narušeno, je to vyhodnoceno jako chyba. Systematické kódy - skládají se z informační části a zabezpečovací části. Zabezpečovací část bývá většinou za informační části, ale může také být i v informační části. Paritní kódy - datový blok se doplní jedním, nebo několka paritními bity. Používá se lichá, nebo sudá parita. Lichá parita - obsahuje lichý počet “1“, včetně paritního bitu. Sudá parita - obsahuje sudý počet “1“, včetně paritního bitu. Iterační kódy - využívají paritních kódů. Pro první iteraci se použije značková parita pro jednotlivé značky. Pro druhou iteraci se použije bloková parita. A pro třetí iteraci je použita tzv. spirálová parita, která počítá značkovou a blokovou paritu. Tento speciální typ kódu umožňuje nejenom detekovat jednu chybu, ale dovede i opravit jednu chybu v přenášené datové posloupnosti. Cyklické kódy - jsou lineární blokové kódy, kde posunem každého kódového slova vzniká nové kódové slovo. Matematicky lze zapsat tuto definici: jestliže pro každé kódové slovo (𝑎0 , 𝑎1 , 𝑎2 , ..., 𝑎𝑛−1 ) je také slovo (𝑎𝑛−1 , 𝑎0 , 𝑎1 , ..., 𝑎𝑛−2 ) kódovým slovem. Tyto kódy se vyznačují jednoduchou realizací kodérů a dekodérů. Vlastní realizace těchto kódů může být řešena jednak softwarově nebo hardwarově. Při hardwarové rea- 24 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Obrázek 4.1: Iterační kódy Obrázek 4.2: Cyklický kód lizaci jsou použity zpětnovazební posuvné registry. Tyto kódy vykazují velkou účinnost zabezpečení. CRC Cyclic Redundancy Check kód je určen tzv. generujícím (vytvářecím) polynomem 𝐺(𝑥). Tento mnohočlen musí být primitivní a stupně 𝑟, kde 𝑟 udává počet zabezpečovacích prvků kódu. Pokud 𝐵(𝑥), je kódová kombinace cyklického kódu, definovaného generujícím polynomem 𝐺(𝑥), potom je tato kódová kombinace dělitelná 𝐺(𝑥) beze zbytku. 𝐵(𝑥) = 𝑄(𝑥) 𝐺(𝑥) (4.2) Kódové slovo cyklického kódu odpovídá bloku informačních symbolů 𝑀 (𝑥) vynásobením stupněm generujícího polynomu a zbytku po dělení generujícím polynomem 𝐺(𝑥). 𝐵(𝑥) = 𝑥𝑟 𝑀 (𝑥) ⊕ 𝑅(𝑥) (4.3) kde 𝑅(𝑥) je zbytek po dělení. 𝑥𝑟 𝑀 (𝑥) 𝑅(𝑥) = 𝑄(𝑥) ⊕ 𝐺(𝑥) 𝐺(𝑥) (4.4) Zabezpečovací symboly 𝑅(𝑥), získané z tohoto vztahu, se označují jako kontrolní slovo CRC Cyclic Redundancy Check. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 25 Na přijímací straně je přijaté kódové slovo 𝐵 ′ (𝑥) prověřováno, zjištěním zbytku po dělení tohoto slova generujícím polynomem 𝐺(𝑥) 𝐵 ′ (𝑥) 𝑆(𝑥) = 𝑄′ (𝑥) ⊕ 𝐺(𝑥) 𝐺(𝑥) (4.5) kde 𝑆(𝑥) je kontrolní syndrom. Je-li zbytek po dělení nulový, pak při přenosu buď nedošlo k chybě, nebo došlo k chybě nedetekovatelné. V reálné praxi se můžeme setkat s různými délkami zabezpečení. Nejjednodušším detekčním CRC kódem je sudá parita, kde generující polynom 𝐺(𝑥) = 𝑥+1, označuje se jako CRC-1. Dále se často používá osmibitové zabezpečení označované jako CRC-8, šestnáctibitové CRC-16, třiceti dvou bitové CRC-32, nebo CRC-64. Přehled používaných kombinací CRC kódů lze nalezt na http://en.wikipedia.org/wiki/Cyclic_redundancy_check 4.2 Korekční kódy Korekční kódy se označují jako FEC (Forward Error Correction), neboli tzv. samoopravné kódy. Pro zajištění své funkce nepotřebují zpětný kanál. Chyba, nebo skupina chyb jsou opraveny na základě vazeb mezi jednotlivými prvky kódové kombinace. Tyto kódy mají mnohem větší nadbytečnost, vzhledem ke kódům detekčním. Počet opravitelných chyb vychází z minimální Hammingovy vzdálenosti. 𝑒𝑟𝑟𝑐𝑜𝑟 = 𝑑𝑚𝑖𝑛 − 1 2 (4.6) Opakovací kódy - patří mezi nejjednodušší samooravné kódy, s délkou opakování 𝑛. Tento kód má nejnižší účinnost, protože má nejvyšší nadbytečnost zabezpečovacích prvků. Pokud potřebujeme opravit jednu chybu, musí být minimální Hammingova vzdálenost 𝑑𝑚𝑖𝑛 = 3. V praxi se můžeme setkat např. s opakovacím kódem 𝑛 = 3, který dokáže opravit jednu chybu. Pokud použijeme opakovací kód s 𝑛 = 5, potom tento kód dokáže opravit 2 chyby. Hammingovy kódy H(n,k) - jsou binární lineární perfektní kódy, které mají nejnižší nadbytečnost. Jeho hlavní nevýhodou je, že dokáže opravit pouze jednu chybu. V praxi to znamená, že pokud bude vznikat více nezávislých chyb, je potřeba zmešit délku bloku. Tento blok již může tuto chybu opravit. Pokud v bloku vznikne více chyb, není tento kód schopen tuto chybu opravit. Při návrhu Hammingova kódu vycházíme z celkového počtu informačních prvků. Následující tabulka ukazuje možnosti tohoto kódu. 26 m n k Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava zabezpečovací prvky 1 2 3 𝑚 všechny prvky 𝑛=2 −1 1 3 7 informační prvky 𝑘 =𝑛−𝑚 0 1 4 4 5 6 7 15 31 63 127 11 26 57 120 Tabulka 4.1: Tabulka Hammingových kódů kde 𝑚 je počet zabezpečovacích prvků, 𝑛 je počet všech prvků, 𝑛 = 2𝑚 − 1, 𝑘 je počet informačních prvků, 𝑘 = 𝑛 − 𝑚 Kódové slovo se tvoří pomocí generující matice, která vychází z kontrolní matice. Kontrolní matice obsahuje nenulové a různé sloupce. Například 𝐻𝑎𝑚𝑚𝑖𝑛𝑔ů𝑣 𝑘ó𝑑(7, 4) může mít kontrolní matici ve tvaru: ⎡ ⎤ 0 0 0 1 1 1 1 ⎢ ⎥ 𝐻=⎣ 0 1 1 0 0 1 1 ⎦ 1 0 1 0 1 0 1 (4.7) Tuto kontrolní matici upravíme do kanonického tvaru, kde poslední tři sloupečky budou tvořit jednotkovou matici. K této upravené kontrolní matici dojdeme tak, že první řádek je dán binárním součtem prvního a druhého řádku. Druhý řádek je dán binárním součtem prvního a třetího řádku. A poslední řádek je dán binárním součtem všech tří řádků. ⎡ ⎤ 0 1 1 1 1 0 0 ⎢ ⎥ 𝐻𝑘 = ⎣ 1 0 1 1 0 1 0 ⎦ 1 1 0 1 0 0 1 (4.8) Z této kontrolní matice vychází generující matice. První čtyři bity každého řádku budou tvořit poslední tři sloupce v generující matice. ⎡ ⎢ 𝐺=⎢ ⎢ ⎣ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 1 ⎤ ⎥ ⎥ ⎥ ⎦ (4.9) Na vysílací straně, získáme vysílací kódové slovo 𝐵 vynásobením zprávy 𝑀 generující maticí 𝐺: 𝐵 = 𝑀𝐺 (4.10) Na přijímací straně vynásobíme kontrolní matici 𝐻 přijatým kódovým slovem 𝐵 ′ a získáme syndrom 𝑆: 𝑆 = 𝐻𝐵 ′𝑇 (4.11) Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 27 Pokud syndrom 𝑆 = 0, tak chyba nanastala, nebo při přenosu mohlo vzniknout více chyb. Pokud je syndrom 𝑆 ̸= 0, tak tento vektor nám udává pozici, kde nastala chyba. Reed-Mullerovy kódy RM(r,m) - jsou lineární samoopravné kódy, který jsou schopny opravovat několik nezávislých chyb. Počet opravitelných chyb opět vychází z minimální Hammingovi vzdálenosti. Tento kód patří mezi nesystematické kódy, protože není rozdělena zvlášť informační část a zabezpečovací část. Při návrhu Reed-Mullerova kódu vycházíme z požadavku na počet opravitelných chyb. Počet opravitelných chyb je závislý na minimální Hammingově vzdálenosti a při návrhu vycházíme z koeficientů 𝑚 a 𝑟. 𝑑𝑚𝑖𝑛 = 2𝑚−𝑟 (4.12) Následující tabulka ukazuje možnosti tohoto kódu. t m r n k opravitelných chyb koeficient 𝑚 koeficient 𝑟 všechny prvky informační prvky 𝑑𝑚𝑖𝑛 −1 2 𝑚>𝑟 𝑟<𝑚 𝑛 = 2𝑚 (︁ )︁ (︁ )︁ 𝑚 𝑘 = 1 + 1 + ... + 𝑚𝑟 1 3 1 3 4 4 1 1 2 8 16 16 4 5 11 Tabulka 4.2: Tabulka Reed-Mullerových kódů Kódování RM kódu vychází z generující matice. Generující matice se tvoří z dílčích matic. Matice 𝐺0 je vektor, který obsahuje samé jedničky a má délku 2𝑚 . Matice 𝐺1 obsahuje sloupečky, které tvoří všechny kódové kombinace. Rozměr matice je 𝑚 x 2𝑚 . Matice 𝐺2 se vytváří násobením dvojic všech řádků matice 𝐺1 . Matice 𝐺3 se vytváří násobením trojic všech řádků matice 𝐺2 . Pokud vytvoříme generující matici, můžeme zakódovat vstupní data vynásobením generující maticí. 𝐵 = 𝑀𝐺 (4.13) Dekódování RM kódu vychází majoritního dekódování. Přijatý vektor se vynásobí generující maticí a získáme soustavu 𝑛 rovnic o 𝑘 neznámých. Řešením těchto rovnic a majoritním dekódováním získáme původní kódové slovo. Přijaté kódové slovo 𝐵 ′ si vyjádříme pomocí jednotlivých prvků: [𝑥3 𝑥2 𝑥1 𝑥0 ]𝐺 = [𝑏′7 𝑏′6 𝑏′5 𝑏′4 𝑏′3 𝑏′2 𝑏′1 𝑏′0 ] (4.14) V následujícím příkladě si ukážeme vytvoření několika rovnic pro majoritní dekódo- 28 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava vání. Pro náš případ RM(1,3), získáme osm rovnic, které dále upravíme. 𝑥3 𝐺00 ⊕ 𝑥2 𝐺10 ⊕ 𝑥1 𝐺20 ⊕ 𝑥0 𝐺30 = 𝑏′7 𝑥3 𝐺01 ⊕ 𝑥2 𝐺11 ⊕ 𝑥1 𝐺21 ⊕ 𝑥0 𝐺31 = 𝑏′6 ... 𝑥3 𝐺07 ⊕ 𝑥2 𝐺17 ⊕ 𝑥1 𝐺27 ⊕ 𝑥0 𝐺37 = 𝑏′0 (4.15) Upravou těchto rovnic, získáme čtyři výsledky, kde správný výsledek bude reprezentován vyšším počtem stejných hodnot, 0, nebo 1. 𝑥0 𝑥0 𝑥0 𝑥0 = 𝑏′7 ⊕ 𝑏′6 = 𝑏′5 ⊕ 𝑏′4 = 𝑏′3 ⊕ 𝑏′2 = 𝑏′1 ⊕ 𝑏′0 (4.16) Reed-Solomonovy kódy - jsou lineární cyklické blokové samoopravné kódy, které mohou detekovat více náhodných chyb. Přidáním 𝑡 kontrolních symbolů, může RS kód detekovat až 𝑡 chybných symbolů, nebo opravovat 𝑡/2 symbolů. Kódy se označují jako RS(n,k), kde 𝑛 je celkový počet symbolů a 𝑘 je počet informačních symbolů. RS kódy jsou systematické kódy, protože mají zvlášť informační část a zvlášť zabezpečovací část. Počet opravitelných chyb vychází z minimální Hammingovi vzdálenosti. 𝑑𝑚𝑖𝑛 = 𝑛 − 𝑘 + 1 (4.17) Kódování RS kódů vychází z generujícího polynomu 𝑔(𝑥), který má tvar: 𝑔(𝑥) = (𝑥 − 𝛼)(𝑥 − 𝛼1 )...(𝑥 − 𝛼2𝑡−1 ) (4.18) kde 𝛼 je primitivní element GF (Galoise Field). K informačním symbolům zprávy délky 𝑘 se přidá 𝑡 kontrolních symbolů. Tyto kontrolní symboly jsou získány pomocí dělení informačních symbolů generujícím polynomem. Dekódování RS kódů se skládá z několika kroků. V prvním kroku jsou spočítány syndromy 𝑆𝑖 , ze kterých je určen počet chyb 𝑡. Pokud počet chyb převýší schopnosti kódu, dále se nepokračuje a přijaté kódové slovo není opravováno. Z těchto syndromů je následně vypočítán polynom pro lokalizaci chyb. Dále jsou nalezeny kořeny polynomu pro lokalizaci chyb a spočítají se chybové hodnoty. Na základě těchto parametrů jsou případné chyby opraveny. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 29 LDPC kódy - jsou lineární blokové samoopravné kódy, které používají velké řídké paritní matice 𝐻. Jsou známy jako tzv. Gallagerovy kódy, podle svého objevitele. Pro tvorbu LDPC kódů je klíčové vytváření paritních matic. Existují rovnoměrné a nerovnoměrné matice. Rovnoměrné matice mají stejný počet jedniček v jednotlivých sloupcích a stejný počet jedniček v jednotlivých řádcích. LDPC kódy jsou nesystematické, protože nemají zvlášť oddělenou informační část a zabezpečovací část. Kódy LDPC(n,p,q), kde 𝑛 je délka kódu, 𝑝 je počet jedniček na sloupec a 𝑞 je počet jedniček na řádek. Následuje Gallagerova paritní matice 𝐻(20, 3, 4) s minimální vzdáleností 𝑑𝑚𝑖𝑛 = 6. ⎡ 𝐻= ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ (4.19) Pro náš příklad zvolíme menší paritní matici, na které si ukážeme pricip kódování a dekóvání pomocí LDPC kódů. Pro dekódování lze pro jednoduchost použít metodu Lookup Table Decoding. Tato metoda může být využita pro menší bloky dat. Vypočítáme všechny varianty pro vstupní informační data a k nim jsou v tabulce všechna výstupní kódová slova. Při dekódování se hledá posloupnost s nejmenší odchylkou, mezi přijatým kódovým slovem a tabulkou. 30 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 5 31 BEZEZTRÁTOVÁ KOMPRESE DAT Bezeztrátová koprese dat je založena na tzv. redundanci, nebo-li nadbytečnosti dat. Na rozdíl od ztrátové koprese, kde se využívá určité nedokonalosti zraku, sluchu apod. Ztrátová komprese má mnohem větší kompresní poměr a většinou také lze nastavit kvalitu komprese. Bezeztrátové metody můžeme v zásadě rozdělit do dvou základních metod, a to jsou metody statistické a metody slovníkové. V reálné praxi některá zařízení pak kombinují obě metody. Pro přenos dat jsou bezeztrátové metody mnohem významnější. Také jsou velmi důležité parametry týkajícící se rychlosti komprese a rychlosti dekomprese přenášených dat. Základním parametrem ovšem zůstává kompresní poměr, který udává poměr nekomprimovaných dat k datům komprimovaným. 𝑘= 5.1 𝑛𝑒𝑘𝑜𝑚𝑝𝑟𝑖𝑚𝑜𝑣𝑎𝑛é 𝑧𝑛𝑎𝑘𝑦 𝑘𝑜𝑚𝑝𝑟𝑖𝑚𝑜𝑣𝑎𝑛é 𝑧𝑛𝑎𝑘𝑦 (5.1) Statistické kompresní metody Statistické kompresní metody jsou založeny na četnosti výskytu jednotlivých znaků. Některé metody využívají speciální znak, tzv. 𝐼𝐶 Indikátor Komprese, kterým může být libovolný znak, který není použitý. Typicky se používají znaky ASCII tabulky, které se nacházejí na pozicíchc 0 - 31. Algoritmus potlačení nul, mezer umožňuje komprimovat pouze jeden znak. Může se např. jednat o znak 0. Příklad 1 𝐴𝐵00𝐶𝐷00000𝐴𝐶000 → 𝐴𝐵00𝐶𝐷𝐼𝐶 5𝐴𝐶𝐼𝐶 3 kompresní poměr 𝑘 = 16*8 12*8 = 1.33 Algoritmus proudového kódování RLE (Run Length Encoding) komprimuje libovolné znaky, které se vyskytují alespoň 4x za sebou. Nahrazuje za sebou vyskytující se znaky za indikátor komprese, opakující se znak a počet zbývajících znaků (celkový počet - 1). Příklad 2 𝐴𝐵𝐵𝐵𝐵𝐶𝐶𝐶𝐶𝐶𝐴𝐴𝐴 → 𝐴𝐼𝐶 𝐵3𝐼𝐶 𝐶4𝐴𝐴𝐴 kompresní poměr 𝑘 = 13*8 10*8 = 1.3 Algoritmus upraveného proudového kódování nahrazuje Indikátor komprese 3x 32 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava opakujícím se libovolným znakem, následovaným počtem stejných znaků. Umožňuje komprimovat libovolné znaky, podmínkou je, aby se znak vyskytoval alespoň 4x, aby se nenavyšovalo množství dat. Příklad 3 𝐴𝐵𝐵𝐵𝐵𝐶𝐶𝐶𝐶𝐶𝐴𝐴𝐴 → 𝐴𝐵𝐵𝐵1𝐶𝐶𝐶2𝐴𝐴𝐴0 kompresní poměr 𝑘 = 13*8 13*8 =1 Algoritmus bitové mapy provádí kompresi jednoho znaku, které ale nemusí být za sebou. Před jednotlivými symboly se přenáší bitová mapa, kdy komprimovaný znak je nahrazen "0". Příklad 4 𝐴0𝐴𝐵00𝐶𝐷 → 10110011𝐴𝐴𝐵𝐶𝐷 kompresní poměr 𝑘 = 8*8 8+5*8 = 1.83 Algoritmus půlbajtové komprimace komprimuje číslice, které kóduje pomocí čtyř bitů, používá indikátor komprese. První číslice za indikátorem komprese udává počet komprimovaných číslic, dále jsou zakódovány jednotlivé číslice, ale již pomocí čtyř bitů. Příklad 5 𝐴𝐵𝐶123456𝐷 → 𝐴𝐵𝐶𝐼𝐶 5123456𝐷 kompresní poměr 𝑘 = 10*8 6*8+3*8 = 1.11 Shannon-Fanovo kódování využívá pravděpodobnosti výskytu jednotlivých znaků. Pro kódování se používá binární strom, který se tvoří od kořene k jednotlivým listům. Příklad 6 𝐴𝐶𝐶𝐷𝐴𝐶𝐵𝐴𝐵𝐴 → 𝐴4𝐶3𝐵2𝐷1 0101011101011001100 kompresní poměr 𝑘 = 10*8 8*8+19 = 0.96 Postup Obrázek 5.1: Vytvoření binárního stromu pro Shannon-Fanovo kódování 1. Vytvoříme množinu četností a seřadíme je podle četnosti, od nejvyšší po nejnižší. 2. Rozdělujeme množinu četností na přibližně stejné části, tak dlouho, dokud nevytvoříme celý strom. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 33 3. Jednotlivým znakům jsou přiřazeny kódové kombinace podle umístění na stromu. 4. Kódové kombinace jsou vždy sestaveny od kořene k jednotlivým listům. Huffmanovo kódování využívá četnosti výskytu jednotlivých znaků. Pro kódování se používá binární strom, který se tvoří od jednotlivých listů ke kořenu. Příklad 7 𝐴𝐶𝐷𝐸𝐵𝐸𝐹 𝐶𝐴𝐷𝐸𝐹 𝐴𝐶𝐵𝐶𝐷 ↓ 𝐶4𝐴3𝐷3𝐸3𝐵2𝐹 201001001011101011110001100101111010011000100 kompresní poměr 𝑘 = 17*8 12*8+44 = 0.97 Postup 1. 2. 3. 4. 5. Vytvoříme množinu četností a seřadíme je podle četnosti, od nejvyšší po nejnižší. Sečteme dvě nejnižší četnosti a jejich součet dále považujeme za jednu četnost. Předchozí krok opakujeme dokud nevytvoříme celý strom. Jednotlivé četnosti procházíme odspodu směrem nahoru. Kódové kombinace jsou vždy sestaveny od kořene k jednotlivým listům. Obrázek 5.2: Vytvoření binárního stromu pro Huffmanovo kódování Adaptivní Huffmanovo kódování využívá četnosti výskytu jednotlivých znaků. Pro kódování se používá binární strom, který se tvoří průběžně, jak se kódují jednotlivé znaky. Tato metoda je velmi vhodná pro komprese při přenosu dat. Příklad 8 𝐵𝐶𝐴𝐴 → 𝐵0𝐶00𝐴101 kompresní poměr 𝑘 = 4*8 3*8+6 = 1.067 Postup 1. Binární strom se tvoří průběžně, 2. Vyměňují se jednotlivé listy, nebo uzly větví. 3. Platí základní pravidlo, že nahoře a napravo musí být větší hodnota četnosti výskytu. 4. Pokud přijde nový znak, označuje se jako 𝑁 𝑍. 34 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava 5. Znaky se kódují podle předchozího stromu, nebo-li podle odeslaných dat. Obrázek 5.3: Průběžné tvoření binárního stromu při adaptivním Huffmanově kódování Aritmetické kódování využívá metody, kdy je celý datový řetězec zakódován do reálného čísla v rozsahu (0,1). Tato kompresní metoda má celou řadu různých variant, jakým způsobem převést výsledné reálné číslo do digitální podoby. Postup 1. Seřadíme znaky podle abecedy a přiřadíme jim jejich četnosti. 2. Rozdělíme osu podle četnosti jednotlivých znaků v rozsahu (0, 1) 3. Nová osa bude rozdělena ve stejném poměru, ale mezní rozsahy budou odpovídat kódovanému znaku. 4. Postupné zúžování osy bude dáno množstvím znaků v bloku dat. 5. Výsledkem bude reálné číslo z posledního rozsahu. 5.2 Slovníkové kompresní metody Slovníkové kompresní metody jsou založeny na principu vyhledávání podobnosti v již přenesených, nebo komprimovaných datech. Data se průběžně ukládají do slovníku. Účin- Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 35 Obrázek 5.4: Grafické znázornění principu aritmetického kódování nost komprese je založena na velikosti tohoto slovníku. Nevýhodou velkých slovníků je relativně časově náročnější vyhledávání shody. LZ77 (Abraham Lempel, Jakob Ziv, 1977) je slovníková metoda, založená na vyhledávání shodnosti v již odeslaných datech. Účinnost komprese ja dána velikostí prohledávacího okna. Nevýhodou je velký počet prohledávání, protože při shodě se začíná prohledávat znova od začátku v původních datech. Příklad 9 𝐴𝐴𝐵𝐶𝐵𝐵𝐴𝐵𝐶 → 00𝐴11𝐵00𝐶21𝐵53 kompresní poměr 𝑘 = 9*8 14*8 = 0.64 Postup 1. První znak přeneseme samostatně, (𝑥, 𝑦)𝑁 𝑍. 2. Další znak a skupinu znaků porovnáváme s již přenesenými znaky. 3. Odeslána je vždy informace o kolik znaků zpět - 𝑥 a kolik znaků z původní sekvence zopakovat - 𝑦 a zakončeno novým znakem - 𝑁 𝑍 4. Posledním znakem může být informace, že je konec přenosu (např. ASCII EOT End of Transmission) krok 1 2 3 4 5 pozice 1 2 4 5 7 shoda A B ABC nový znak A B C B - výstup (0,0)A (1,1)B (0,0)C (2,1)B (5,3) Tabulka 5.1: Ukázka LZ77 komprese Dekomprese je velmi rychlá. Z přijaté posloupnosti se postupně dekomprimuje původní poslouponost dat. Na přijímací straně není potřeba vytářet žádný slovník. Informace vždy ukazují na data, která již byla dekomprimována. LZ78 (Abraham Lempel, Jakob Ziv, 1978) je slovníková metoda, která vyhledává shodu dat ve slovníku. pokud dojde ke shodě, musí prohledávat celý slovník znova od začátku. tato metoda má menší počet prohledávání, ale vyžaduje vyhradit část paměti pro slovník. 36 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava vstup (0,0)A (1,1)B (0,0)C (2,1)C (5,3) výstup A AAB AABC AABCBB AABCBBABC Tabulka 5.2: Ukázka LZ77 dekomprese Příklad 10 𝐴𝐴𝐵𝐶𝐵𝐵𝐴𝐵𝐶 → 0𝐴1𝐵0𝐶0𝐵4𝐴4𝐶 kompresní poměr 𝑘 = 9*8 12*8 = 0.75 Postup 1. Postupně se vytváří slovník na obou stranách přenosu dat. 2. Na výstupu je zápis formou 𝑖𝑁 𝑍, kde 𝑖 je index ve slovníku, a 𝑁 𝑍 je nový znak. 3. Vyhledává se shoda ve slovníku a pokud dojde ke shodě, přibere se další znak a začne se vyhledávat od začátku slovníku. 4. Pokud nedojde k žádné shodě, je použit index 𝑖 = 0, kde není nic uloženo. krok 1 2 3 4 5 6 index 1 2 3 4 5 6 slovník A AB C B BA BC výstup 0A 1B 0C 0B 4A 4C Tabulka 5.3: Ukázka LZ78 komprese Při dekompresi se používá slovník, kdy v přijatých datech je vždy odkaz na index, pod kterým je uložen příslušný zkomprimovaný řetězec dat. vstup 0A 1B 0C 0B 4A 4C index 1 2 3 4 5 6 slovník A AB C B BA BC výstup A AAB AABC AABCB AABCBBA AABCBBABC Tabulka 5.4: Ukázka LZ78 dekomprese LZW (Abraham Lempel, Jakob Ziv, Terry Welch) je upravená slovníková metoda, která již má ve slovníku uložené informace. Může to být např. ASCII tabulka. V Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 37 datech se vyhledává shodnost dat se slovníkem, a když dojde ke shodě, tak se přibere další znak a pokračuje se ve vyhledávání. Pro rychlé vyhledání shody je tato metoda velmi vhodná pro přenos dat. Příklad 11 𝐴𝐴𝐵𝐶𝐵𝐵𝐴𝐵𝐶 → 𝐴𝐴𝐵𝐶𝐵𝐵257𝐶 kompresní poměr 𝑘 = 9*8 7*8+9 Postup 1. 2. 3. 4. 5. Při vytváření spojení si dohodnou vysílač a přijímač počet bitů na znak. Ve slovníku jsou již uložena data. např. ASCII tabulka. Při komprimace se hledá shoda ve slovníku. Pokud dojde ke shodě přibere se další znak a pokračuje se ve vyhledávání ve slovníku. Ve slovníku se postupně vytvářejí kombinace jednotlivých znaků, dvojice, trojice, atd. 6. Potom jsou přenášeny pouze položky ve slovníku. vstup A A B C B B A B C slovník výstup 256=AA 257=AB 258=BC 259=CB 260=BB 261=BA A A B C B B 262=ABC 257 C Tabulka 5.5: Ukázka LZW komprese Při dekompresi si přijímací strana tvoří stejný slovník jako strana vysílací. Přicházející data jsou průběžně dekódována podle slovníku. http://www.data-compression.com/theory.shtml 38 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava vstup A A B C B B 257 slovník výstup 256=AA 257=AB 258=BC 259=CB 260=BB 261=BA C 262=ABC A A B C B B A B C Tabulka 5.6: Ukázka LZW dekomprese Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 6 39 PARAMETRY A CHARAKTERISTIKY DATOVÝCH SIGNALŮ 6.1 Základní parametry datových signálů Signál je fyzický nosič zprávy. Rozlišujeme různé druhy datových signálů. Mezi základní typy patří signály elektrické, optické, rádiové a akustické. Signály můžeme popsat v časové nebo frekvenční oblasti. Ve frekvenční oblasti tomu říkáme frekvenční spektrum signálu. Obecná představa o vztahu mezi časovou délkou signálu a šíří jeho spektra vyplývá z vlastností Fourierovy transformace. Základem spektrální analýzy periodických signálů je vyjádření časové funkce ve tvaru Fourierovy řady. Datová posloupnost 1010101010.... představuje z hlediska přenosu, nejméně příznivý případ při dané šířce pásma. Při volbě praktické šířky kanálu je nutno respektovat, jednak požadavek na energii signálu, a také i požadavek na zachování tvaru signálu. Pro reálný přenos číslicového signálu má vždy k dispozici datový signál reálný kanál s omezenou šířkou pásma. Základním parametrem, který omezuje rychlost kanálu je šířka použitého frekvenčního pásma. Pro diskrétní signály může každý vzorek nabývat 𝑉 diskrétních hodnot. Pro kapacitu kanálu 𝐶 platí Nyquistova věta: 𝐶 = 2𝑊 𝑙𝑜𝑔2 𝑉 [𝑏𝑖𝑡/𝑠, 𝐻𝑧] (6.1) kde 𝑊 označuje šířku frekvenčního pásma. Teoretický limit kapacity kanálu s ohledem na odstup signálu od šumu udává Shannonova věta: 𝐶 = 𝑊 𝑙𝑜𝑔2 (1 + 𝑆 ) 𝑁 [𝑏𝑖𝑡/𝑠, 𝐻𝑧] (6.2) kde 𝑆 označuje spektrální výkonovou hustotu datového signálu a 𝑁 představuje spektrální výkonovou hustotu šumu datového kanálu. 40 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava 6.2 Rozdělení datových signálů Datové signály můžeme dělit do několika skupin. Základní dělení signálů je na signály náhodné a signály nenáhodné. Náhodné signály - (stochastické) můžeme je charakterizovat tím, že jejich hodnotu v určitém časovém okamžiku nemůžeme přesně předpovídat. Můžeme pouze vyjádřit pravděpodobnost výskytu daného prvku. Tyto signály nesou informace. Nenáhodné signály - (deterministické) můžeme je charakterizovat tím, že hodnota signálu je v libovolném časovém okamžiku přesně známa. Tento signál nenese žádnou informaci. Slouží jako stavební prvky pro vytváření náhodných signálů. Typickým představitelem nenáhodného signálu je harmonický signál, který lze popsat funkcí: 𝑓 (𝑡) = 𝐴 sin(𝜔𝑡 + 𝜙0 ) (6.3) Podle časových průběhů dělíme datové signály na tři základní typy. Spojité signály jsou popsány ve všech časových okamžicích a jsou popsány spojitou funkcí času. Tyto signály se většinou nepoužívají pro přenos dat. Diskrétní signály jsou popsány tím, že ke změnám dochází pouze v určitých časových okamžicích. Signál může nabývat různých napěťových hodnot. Digitální signály jsou popsány tím, že nabývají pouze určitých, předem definovaných hodnot. Tyto signály se mohou dále dělit na signály izochronní, nebo anizochronní. Izochronní signály mění své hodnoty pouze v určitých okamžicích. Anizochronní signály mění své hodnoty v libovolných časových okamžicích. 6.3 Datový signál v základním pásmu Signály v základním pásmu mají frekvenční spektrum omezeno pouze daným přenosovým médiem. Tyto signály mohou obsahovat i stejnosměrnou složku. Jejich frekvenční spektrum bývá velmi široké. Stavy signálů, které přísluší jednotlivým signálovým prvkům, jsou určeny velikostí elektrické veličiny a její polaritou. U binárních signálů mohou existovat a používají se následující tvary a průběhy datových signálů. Unipolární signál je definován jako signál, který má pouze dvě různé hodnoty stejné polarity. Tento signál má minimum synchronizační informace a obsahuje stejnosměrnou složku. Většinou se využívá pro přenosy na velmi krátké vzdálenosti. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 41 Obrázek 6.1: Časový průběh unipolárního signálu Polární signál je definován, jako signál, který má dvě různé polarity a stejné hodnoty. Tento signál v základním tvaru má minimální, v některých případech žádnou synchronizační informaci. Označuje se jako NRZ Non Return to Zero. Využívá se např. v sériovém přenosu podle standardu RS232. Obrázek 6.2: Časový průběh polárního signálu Bipolární signál je definován tak, že může nabývat nulové hodnoty pro jeden datový symbol a dvě různé polarity pro další symbol. Tento typ signálu má potlačenou stejnosměrnou složku. Kladné a záporné symboly se vzájemně vyruší a signál má minimální stejnosměrnou složku. Výhoda je zejména pro přenosy na větší vzdálenosti a možnost použít galvanický oddělovací prvek. Obrázek 6.3: Časový průběh bipolárního signálu Vícestavový signál se používá v případě, že skupině binárních symbolů odpovídá jeden stav. Tím dosáhneme větší přenosvé rychlosti, ale můsíme vzít do úvahy vyšší nároky na poměr signál šum SNR. S rostoucím počtem jednotlivých stavů je snížena diference mezi jednotlivými rozhodovacími úrovněmi. Je nutné vyšší potlačení stejnosměrné složky a jejího kolísání, protože oproti binárním kódům je zmenšena detekční oblast a tedy odolnost proti rušení interferencí impulsů a šumu. 42 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Obrázek 6.4: Časový průběh vícestavového signálu 2B1Q 6.4 Datový signál v přeloženém pásmu Při vytváření signálů v přeloženém pásmu se používá modulace signálu v základním pásmu na harmonický nosný signál. Používá se metoda, která se nazývá klíčování. Existují tři základní metody při vytváření datových signálů v přeloženém pásmu. Klíčování amplitudovým posunem – ASK (Amplitude Shift Keying), tato metoda využívá toho, že datový signál, nesoucí informace ovlivňuje amplitudu nosného signálu. ASK signál je citlivý na šum, zkreslení, podmínkách šíření na různých trasách atd. Výhodou je poměrně jednoduchá realizace vysílačů a přijímačů. Nejjednodušší metoda je modulace OOK On-Off Keying, kdy je, nebo není vysílán harmonický nosný signál. Obrázek 6.5: Časový průběh ASK signálu, typu on-off Klíčování frekvenčním posunem – FSK (Frequency Shift Keying), tato metoda využívá toho, že datový signál ovlivňuje frekvenci nosného signálu. Tento signál je odolnější vúči šumu, ale je potřeba větší frekvenční spektrum. Využívají se i FSK signály, které využívají několika frekvencí, typicky to jsou násobky 2𝑛 . Klíčování fázovým posunem – PSK (Phase Shift Keying), tato metoda využívá toho, že datový signál ovlivňuje fázi nosného signálu. Tento typ signálu se velmi často používá pro přenos dat. Využívají se zejména PSK signály, přenášející najednou skupinu bitů, tzv. N-PSK. Kromě těchto tří základních metod vytváření datových signálů v přeloženém pásmu se používají kombinace základních metod. Nejčastěji to je kombinace, při níž je ovlivňována Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 43 Obrázek 6.6: Časový průběh FSK signálu Obrázek 6.7: Časový průběh PSK signálu amplituda a fáze nosného signálu. QAM Quadrature Amplitude Modulation využívá právě této metody a je dnes nejčastěji využívanou metodou pro přenos dat. Obrázek 6.8: Časový průběh QAM signálu 44 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 7 45 ZPŮSOBY MODULACE A DEMODULACE DATOVÝCH SIGNÁLŮ Modulace je proces, při kterém dochází k ovlivňování parametrů jednoho signálu (nosná), jiným signálem (modulačním). Výsledkem modulace je modulovaný signál. Zařízení, které provádí modulaci, se nazývá modulátor a musí vždy obsahovat nelineární prvek, na kterém se modulace realizuje. Obrázek 7.1: Základní princip modulace Demodulace je proces, fyzikálně shodný s modulací, používá se ke změně formy elektrického signálu na přijímací straně. Při tomto procesu se zpětně získává z vysokofrekvenčního signálu původní modulační signál. 7.1 Amplitudová modulace Amplitudová modulace je proces, při němž je ovlivňována amplituda nosného signálu modulačním signálem. Jedná se o historicky nejstarší typ modulace. Začala se používat při experimentech s rádiovým vysíláním. Klasická amplitudová modulace obsahuje nosnou vlnu a dvě postranní pásma (součtové a rozdílové). V praxi se většinou některé z těchto složek odstraňují a vzniká tak modulace s jedním postranním pásmem, nebo s potlačenou nosnou. Amplitudovou modulaci můžeme popsat matematicky následujícím vztahem: 𝑓𝐴𝑀 = 𝐴[1 + 𝑚 cos(𝜔𝑚 𝑡)]𝑐𝑜𝑠(𝜔𝑛 𝑡) (7.1) kde 𝐴 je amplituda nosného signálu, 𝑚 je hloubka modulace, 𝜔𝑚 je úhlový kmitočet modulačního signálu a 𝜔𝑛 je úhlový kmitočet nosného signálu. 46 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Obrázek 7.2: Frekvenční analýza amplitudové modulace 7.2 Frekvenční modulace Frekvenční modulace je proces, při němž je ovlivňována frekvence nosného signálu. Amplituda zůstává stejná. Maximální amplitudě napětí modulačního průběhu odpovídá maximální změna kmitočtu nosné. Tyto změnu označujeme jako frekvenční zdvih. Frekvenční modulaci můțeme popsat matematicky následujícím vztahem: 𝑓𝐹 𝑀 = 𝐴 cos[𝜔𝑛 𝑡) + Δ𝜔 sin(𝜔𝑚 𝑡)] (7.2) kde 𝐴 je amplituda nosného signálu, 𝜔𝑛 je úhlový kmitočet nosného signálu, Δ𝜔 je modulační index a 𝜔𝑚 je úhlový kmitočet modulačního signálu. Frekvenční modulace jednou frekvencí vytváří nekonečně mnoho postranních frekvencí. Amplitudy nosné vlny i jednotlivých postranních frekvencí jsou dány hodnotami Besselovských funkcí a jsou tedy závislé na modulačním indexu. Pro dostatečně kvalitní přenos pak stačí přenášet pouze několik prvních postranních kmitočtů. Potřebná šířka přenosového pásma je závislá na modulačním indexu. 7.3 Fázová modulace Fázová modulace je proces, při něm6 je ovlivňována fáze nosného signálu. Amplituda zůstává stejná. Fázová modulace patří spolu s frekvenční modulací k takzvaným úhlovým modulacím. Spojitá fázová modulace se příliš nepou6ívá, ale velmi často se vyu6ívají různé varianty, zalo6ené na fázové modulaci. Zejména varianta s diskrétním modulačním signálem, nazývaná PSK. Fázovou modulaci můțeme popsat matematicky následujícím vztahem: 𝑓𝑃 𝑀 = 𝐴 cos[𝜔𝑛 𝑡) + Δ𝜙 sin(𝜔𝑚 𝑡)] (7.3) kde 𝐴 je amplituda nosného signálu, 𝜔𝑛 je úhlový kmitočet nosného signálu, Δ𝜙 je modulační index a 𝜔𝑚 je úhlový kmitočet modulačního signálu. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 7.4 47 Modulace digitálním signálem – praktické využití Pro přenos dat jsou velmi důležité zejména digitální modulace, které umožňují přenos jednotlivých bitů, nebo skupin bitů. Jako základní digitální metody se používají různé metody klíčování. Jedna z prvních využívaných digitálních modulací je dvoustavová FSK modulace. Někdy se tato modulace označuje jako BFSK (Binary Frequency Shift Keying). Tato metoda používá dvě frekvence, pro jeden stav je určena jedna frekvence, pro druhý stav je určena druhá frekvence. Modulátor bývá realizován, jako oscilátor řízený napětím, při odvození řídícího signálu z modulačního signálu. V našem případě je modulačním signálem digitální signál v základním pásmu. Demodulátor bývá realizován jako frekvenční diskriminátor, nebo se využívá metoda demodulace na principu detekce průchodu nulou. Frekvenční diskriminátor využívá sklonu boku rezonanční křivky oscilačního obvodu k převodu frekvenční modulace na amplitudovou modulaci. Obrázek 7.3: Princip demodulace pomocí frekvenčního diskriminátoru Dalším využívaným typem digitální modulace je dvoustavová PSK modulace. Tato modulace se označuje jako BPSK (Binary Phase Shift Keying). Tato metoda využívá dvě fázové změny. Existují dvě varianty, buď koherentní, nebo diferenciální PSK. Modulátor může být realizován jako jednoduchý součinový modulátor, nebo modulátor na principu fázové inverze nosné vlny. Demodulátor využívá násobiče a zpožďovacího článku. Další typy digitálních modulací jsou založeny na vícestavových PSK modulací. Pokud chceme dosáhnout lepšího využití přenosového pásma, využívají se kombinace ASK a PSK. Tyto metody se nazývají QAM (Quadrature Amplitude Modulation). Více můžeme vidět na následujícím obrázku, který zobrazuje rozložení jednotlivých symbolů. 48 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Obrázek 7.4: Konstelační diagram 16-stavové QAM modulace Konstelační diagram zobrazuje koncové body fázorů, které odpovídají jednotlivým stavům. Na obrázku 7.4 představuje každý symbol čtveřici bitů. Přijímač musí být schopen rozlišit jednotlivé stavy. Nejnovější a nejperspektivnější metodou modulace je metoda OFDM (Orthogonal Frequency Division Multiplexing). OFDM je založena na více samostatných nosných, které jsou ortogonálně rozděleny po celé šířce dostupného pásma. Jednotlivé nosné jsou rozloženy na nezávislých frekvencích tak, aby se vzájemně co nejméně ovlivňovaly. Lze je impementovat pomocí inverzní rychlé Fourierovy transformace (IFFT). Přijímač pak udělá opak pomocí rychlé Fourierovy transformace (FFT). Délka FFT je shodná s počtem nosných kmitočtů. Každá nosná používá samostatně některou z QAM, nebo PSK modulačních metod. Obrázek 7.5: Frekvenční spektrum OFDM modulace Poněvadž jsou ve výsledku toky na jednotlivých subnosných malé, je možné vkládat Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 49 ochranný interval – čas, kdy se nevysílá žádná nová informace. Na přijímací straně je tak možné nerušeně přijmout (právě) vysílaný symbol, i když přichází k přijímači více cestami s různým zpožděním. Zjednodušené blokové schéma vysílače je na obrázku 7.6. Vstupní sériová data jsou převáděna do paralelního přenosu, kde jsou mapována na jednotlivé symboly podle konstelačního diagramu. Každému symbolu odpovídá pomocí inverzní FFT reálná a imaginární část signálu. Tyto signály jsou dále v modulátoru modulovány a ve výsledném součtovém členu sečteny. Obrázek 7.6: Základní princip OFDM vysílače Blokové schéma přijímače je na obrázku 7.7. Přijímaný signál přichází do demodulátoru, dále jde přes pásmovou propust a přes analogově-digitální převodník. Pomocí FFT transformace jsou jednotlivé symboly převedeny na původní datovou poslopnost. Obrázek 7.7: Základní princip OFDM přijímače Využití OFDM je dnes prakticky ve všech přenosových technologiích. Například tuto metodu využívají technologie xDSL, PowerLine, WLAN, WiMAX, UMTS, DVB, LTE atd. 50 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 8 8.1 51 KONCOVÁ ZAŘÍZENÍ PRO PŘENOS DAT Základní prvky koncového zařízení pro přenos dat Koncové zařízení pro přenos dat se skládá z několika dílčích částí. Na obrázku 8.1 je zobrazeno zjednodušené schéma koncového zařízení pro přenos dat, včetně jednotlivých rozhraní. KZD je zkratka pro Koncové zařízení pro přenos dat, UZD je zkratka pro Ukončující zařízení pro přenos dat. 𝐼3 , 𝐼2 a 𝐼1 jsou definovaná rozhraní. Obrázek 8.1: Koncové zařízení pro přenos dat Zdroj dat je zařízení, ve kterém se data vytváří. Může to být například záznamové zařízení, klávesnice, dotyková obrazovka, čidlo s A/D převodníkem atd. Spotřebič dat je zařízení, ve kterém se data zpracovávají. Může to být například záznamové zařízení, zobrazovací jednotka, akční člen atd. Řadič je část koncového zařízení, nebo ukončujícího zařizení, které umožňuje, aby zdroj a spotřebič mohly vysílat a přijímat data. Řadič může obsahovat několik modulů. Např. převodník kódu, formátování dat do bloků, zabezpečovací modul, řídící jednotku. Terminál je speciální koncové zařízení. Je definován jako prostředek k dálkovému styku člověka, nebo řízeného objektu, s prostředím zpracování dat. Dávkový terminál má omezené řídící funkce. Je ale žádoucí, aby pracoval bez obsluhy. Tento terminál musí být vybaven jednotkou pro automatické navazování, udržování a ukončení spojení. Konverzační terminál využívá přítomnost obsluhy, a proto vyžaduje minimálně poloduplexní spojení. Jako koncové zařízení může být využit osobní počítač, mobilní telefón, tablet, nebo jiné zařízení. Musí obsahovat komunikační program, který musí umožňovat příslušné funkce. Mezi tyto funkce patří emulace funkce koncového zařízení, možnost nastavení různých funkcí ukončujícího zařízení přenosu dat. Dále musí mít vhodné rozhraní pro uživatele. 52 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Mezi další funkce patří možnost vysílání a příjem datových souborů prostřednictvím přenosového protokolu a v neposlední řadě je důležité zajistit bezpečný přenos dat. 8.2 Přenosové protokoly Pro přenos souborů je možno využít některý z následujících přenosových protokolů. Tyto protokoly slouží k zabezpečenému přenosu souborů mezi dvěma koncovými zařízeními. Před přenosem jsou data rozdělena do menších bloků, které mohou být různě dlouhé a mohou mít různou strukturu. X-modem je jednoduchý, znakově orientovaný protokol. Jednotlivé znaky jsou uspořádány do bloků délky 128 znaků. Používá zabezpečení cyklickým kódem. Při příjmu bloku se vyšle vysílací straně potvrzení, nebo nepotvrzení přijatého bloku dat. Existuje i varianta pro větší bloky, která se označuje jako X-modem-1k. Tato varianta má délku bloku 1024 znaků. Y-modem rozšiřuje X-modem o možnost jednak posílat několik souborů najednou a také posílá informace o souborech. Jedná se o časové informace a názvy jednotlivých souborů. Z-modem je přenosový protokol s možností přenášet několik souborů najednou. Velikost souboru může být až 8kB, s možností potvrzovat několika bloků najednou. Pokud dojde při přenosu k přerušení datového spoje, dokáže tento protokol pokračovat v přenášení dat, které ještě nebyly přeneseny. V některých implementacích Z-modemu, existují i varianty s velikostí bloku 32 kB, nebo až 64 kB. Některé varianty také umožňují i komprimaci přenášených dat. C-Kermit open-source nástroj pro síťovou a sériovou komunikaci. Umožňuje nastavit velikost paketu až 9024 znaků, s maximální velikostí okna 32. To celkově umožňuje poslat 288 768 znaků bez potvrzení. Toto nastavení umožńuje efektivně přenášet velké množství dat, ale předpokládá se velmi kvalitní přenosové prostředí. Tento protokol umožňuje přenášet velké soubory o velikosti až 8GB. 8.3 Datová rozhraní V datovém řetězci pro přenos dat jsou definována tři rozhraní. Rozhraní 𝐼3 je vnitřní rozhraní koncového zařízení. Toto rozhraní si definuje výrobce koncového zařízení, a může to být vnitřní sběrnice na bázi 𝐼 2 𝐶, PCI Peripheral Component Interconnect, PCI Express apod. Mezi koncovým zařízením pro přenos dat KZD a ukončujícím zařízením pro přenos dat UZD je definováno rozhraní 𝐼2 . Toto rozhraní bývá standardizováno, nejčastěji je využíváno rozhraní RS232, nebo USB Universal Serial Bus. Posledním rozhraním je rozhraní 𝐼1 , které je mezinárodně standardizováno, většinou v rámci ITU (International Telecommunication Union). Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 53 Každé rozhraní je posáno pomocí čtyř základních charakteristik, které popisují příslušné rozhraní. Mechanická charakteristika určuje a popisuje fyzické vlastnosti rozhraní. Tzn., určuje typ použitého konektoru, přiřazení jednotlivých vývodů apod. Obrázek 8.2: Přiřazení pinů na rozhraní RS232 Elektrická charakteristika přiřazuje logickým binárním stavům jejich elektrické vyjádření. Definuje polaritu signálu, rozmezí amplitudy, impedanční přizpůsobení apod. Na následujícím obrázku je ekvivalentní obvod rozhraní pro doporučení V.28., který se používá u rozhraní RS232. Funkční charakteristika definuje seznam obvodů rozhraní a jejich funkce. Například doporučení V.24 definuje 42 vazebních obvodů pro všeobecné použití a 13 vazebních obvodů pro automatické volání. Každý z těchto obvodů je připojen k určitému pólu konektoru a plní určitou funkci, která může být iniciována buď ze strany KZD, nebo UZD. Mezi základní funkce patří vysílání dat, příjem dat, synchronizace, řízení toku dat, atd. Protokolová charakteristika popisuje proces komunikace. Protokolovou charakteristiku lze rozdělit do pěti základních bodů. Nejdříve musí dojít k vytvoření spojení, poté se zřizuje datový okruh, následně je možné přenášet vlastní data. Po přenosu dat dochází k zrušení datového okruhu a následně k rozpojení spojení, pokud je to požadováno. V některých případech mohou být data přenášena bez vytvoření datového okruhu. 54 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Obrázek 8.3: Průběh signálu na rozhraní RS232 Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 9 55 DATOVÉ MĚNIČE SIGNALŮ V ZÁKLADNÍM PÁSMU Hlavním úkolem ukončujícího zařízení pro přenos dat, je přeměnit původní datový signál, vyskytující se na rozhraní 𝐼2 , na signál vhodný pro přenos po daných telekomunikačních kanálech. Ukončující zařízení pro přenos dat nazýváme datový měnič s ohledem na jeho základní funkce. Datové měniče v základním pásmu mění kódování, impedanci a úroveň vysílaného signálu, tak aby byl přizpůsoben pro dálkový přenos. 9.1 Datový měnič typu GDN Datový měnič typu GDN je odvozen z německého názvu Gleichstrom Daten Niedrig, což v překladu znamená, stejnosměrný datový přenos s nízkou impedancí a výstupní úrovní. Na vstupu datového měniče může být např. při použití rozhraní RS232, signál s úrovní ± 15V. Na výstupu měniče je polární signál s úrovní ± 0.3 V. Obrázek 9.1: Datový měnič typu GDN Datový signál, vystupující z datového měniče obsahuje stejnosměrnou složku a využívá duplexní provoz. Díky nízké výstupní úrovni signálu, jsou velmi malá přeslechová napětí. Vlivem nízké výstupní a vstupní impedance vysílače a přijímače je velký útlum hlukových napětí. Na obrázku 9.1 je schéma zapojení datového měniče typu GDN. Tento měnič může 56 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava pracovat na čtyřdrátových okruzích bez využití vidlice. Při tomto způsobu realizace je možno překlenout větší vzdálenosti. Pokud budeme mít k dispozici pouze dvoudrátové okruhy, musíme využít v zapojení vidlici. Tím se oddělí vysílací provoz od přijímacího provozu. Nevýhodou je nižší překlenovací vzdálenost mezi jednotlivými měniči. 9.2 Datový měnič typu DMZP Datový měnič v základním pásmu s potlačenou stejnosměrnou složkou. Tyto datové měniče se někdy nazývají “base-band“ modemy. Pro potlačení stejnosměrné složky se používá bipolární AMI (Alternate Mark Inversion) signál, nebo dvoufázový signál. Bipolární AMI kód je využíván v přenosové technice. Zde je například binární 0 realizována jako stav bez napětí, a binární 1 je realizována pravidelně se střídající kladné a záporné hodnoty napětí. Dvoufázový signál je využíván například u standardního Ethernetu, kdy pro každý bit je určen jeden kladný a jeden záporný puls, tak aby stejnosměrná složka byla nulová. Nevýhodou je, țe jsou větší nároky na šířku pásma. Obrázek 9.2: Datový měnič v základním pásmu s potlačenou stejnosměrnou složkou Tyto typy datových měničů se využívají pro realizaci pevných datových okruhů. Hlavní Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 57 nevýhodou těchto typů je vzájemná nekompatibilnost těchto zařízení. Pro realizaci datového okruhu se musí vždy využít datového měniče stejného výrobce. Na obrázku 9.2 je principiální schéma zapojení datového měniče v základním pásmu s potlačenou stejnosměrnou složkou. 9.3 Datové měniče typu HDSL Datové měniče HDSL (High bit rate Digital Subscriber Line) jsou mezinárodně standardizovány mezinárodní telekomunikační unií ITU. Tento typ datových měničů je zejména využíván na telekomunikačních okruzích. Používají se na stávajících metalických kabelech. Mohou využívat jeden, dva, nebo tři kroucené páry telekomunikačního kabelu. HDSL měniče používají každý pár pro plně duplexní provoz s použitím metody potlačení ozvěn. Metoda potlačení ozvěn se označuje EC (Echo Cancellation). Tato metoda slouží k potlačení nežádoucích rušivých signálů, které vznikají jednak nedokonalosti vidlic a nepřizpůsobením impedance k vedení. Na každé straně HDSL datového měniče jsou potřeba jeden, dva, nebo tři vysílače/přijímače. Přenos může probíhat po několika párech kabelu současně. Vzorkovací frekvence na obou stranách musí být synchronizována. Obrázek 9.3: Blokové schéma HDSL měniče Analogový filtr, který je ve funkci dolní propusti, slouží pro úpravu spektra přenášeného signálu. V přijímací části jsou také použity obvody pro obnovu taktu v přijímaném signálu. Tato časová základna slouží ke korekci fáze vnitřního oscilátoru datového měniče. 58 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Na obrázku 9.3 je blokové schéma HDSL měniče s využitím kódu 2B1Q. Tento linkový kód převádí na jeden kvarternární symbol. Symbol může nabývat jednoho ze čtyř stavů. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 10 59 DATOVÉ MĚNIČE SIGNÁLU V PŘELOŽENÉM PÁSMU Datové měniče v přeloženém pásmu převádějí původní datový signál v základním pásmu na jiný signál v přeloženém frekvenčním pásmu, který je vhodný pro přenos daným telekomunikačním kanálem. Metodou pro tento převod je nejčastěji modulace harmonického nosiče. Protože datové měniče většinou obsahují modulátor a demodulátor, nazývají se modemy. Modemy jsou zařízení, která převádějí analogový signál na signál digitální. Modemy se používají především pro přenos digitálních dat pomocí analogové přenosové cesty. 10.1 Základní princip modemu Modem může obsahovat různé části, které mají za úkol vhodným způsobem připravit signál pro dálkový přenos dat přes telekomunikační kanály. Existuje celá řada typů různých modemů. Původně se používaly modemy pro komutované připojení do standardní telefonní sítě. Tyto modemy převádí digitální signál do pásma pro běžný hovor. Standardní telefonní pásmo je 300 Hz až 3400 Hz. Pro přenos se potom využívá běžná kroucená telefonní linka. Obrázek 10.1: Základní princip sériového modemu Také se využívají modemy pro pronajaté okruhy, které mají dvoudrátové, nebo čtyřdrátové propojení. Tato zařízení mají většinou lepší vybavení a mají možnost v průběhu spojení měnit přenosovou rychlost a mají také většinou lepší kompresní moduly. 60 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Mezi další typy lze zařadit modemy pro širokopásmové kanály, například kabelové a ADSL modemy. Tyto modemy mají přenosovou cestu, která má k dispozici větší šířku pásma a je možno přenášet data s vyšší přenosovou rychlostí. Pro bezdrátové připojení existuje celá řada radiomodemů, a modemů pro mobilní sítě. Tyto modemy jsou často přímo součástí koncového zařízení. Modem může být realizován buď jako samostatné zařízení, nebo jako vestavěné zařízení do počítače. Na obrázku 10.1 je zjednodušené principiální schéma modemu. Skrambler, deskrambler – mění původní datovou sekvenci na pseudonáhodnou posloupnost. Skramblování dat se používá pro dva základní účely. Jednak lépe rozkládá frekvenční spektrum signálu a také vytváří lepší podmínky pro časovou synchronizaci dat. Kodér, dekodér se využívá pro vícestavovou modulaci a řadí jednotlivé bity do skupin, které jsou dále modulovány. Modulátor, demodulátor slouží pro převedení signálu do jiného frekvenčního spektra, které je vhodné pro přenos dat. Nejčastěji je využívána vícestavová kvadraturní amplitudová modulace QAM. Vstupní, výstupní obvody slouží pro úpravu signálu. Zde jsou používané různé korektory, zesilovače, omezovače apod. Vidlice slouží k rozdělení dvoudrátového vedení na čtyřdrátové vedení a naopak. Při navazování spojení si modemy na začátku ustavují dostupné modulační režimy, dostupné modulační rychlosti. Dále si proměřují telekomunikační okruh a nastavují jednotlivé korektory. V závěrečné fázi si určí maximální přenosovou rychlost a dohodnou se na detekci a korekci chyb, případně se dohodnou na kompresi dat. 10.2 Modemová detekce a korekce chyb Data jsou rozdělena do jednotlivých bloků a jsou nejčastěji zabezpečena pomocí metody CRC. Pro vyhodnocování chyb, které mohou vznikat při přenosu, se používá rozhodovací zpětná vazba, označovaná jako ARQ. Pro modemovou detekci a korekci chyb se používají různé protokoly, které definují jakým způsobem se řeší detekce a oprava chyb. Pro asynchronní znakově orientované protokoly se používá protokol MNP1 (Microcom Networking Protocol). Pro bitově orientované přenosy se pouțívá protokol MNP3. Protokol MNP4 se používá v případě adaptivní tvorby bloků. Modemy si průběžně monitorují chybovost a podle toho mění délku zabezpečených bloků. Při nízké chybovosti vytváří delší bloky a při vyšší chybovosti jsou bloky kratší. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 61 Další typ protokolu pro detekci a opravu chyb je protokol LAP-M (Link Access Procedure for Modems), který vychází z bitově orientovaných protokolů. Pro detekci chyby v přijatém bloku se používá zabezpečení cyklickým kódem. Při detekci chyby je chybný blok znova posílán. Posledním typem protokolu je protokol V. 42, který je standardizován mezinárodní telekomunikační unií. Tento protokol se používá pro duplexní modemy, zahrnuje všechny předchozí protokoly. 10.3 Komprese dat používaná v modemech Hlavním úkolem komprese dat je redukce původní datové sekvence. Slouží pro zvýšení průchodnosti přenášených datových zpráv v datových kanálech. Tím dochází ke zkrácení doby přenosu. Účinnost komprese je dána redundancí, nebo-li nadbytečností původních dat. Účinnost je popsána kompresním poměrem, který udává poměr přenosové rychlosti komprimovaných dat k rychlosti původních nekomprimovaných dat. Existují tři základní typy redundance, znaková, bloková a poziční. Při znakové redundanci je využíván algoritmus, který nahrazuje nejčastěji se vyskytující se znaky, kratším bitovým vyjádřením. Při blokové redundanci je využíván algoritmus, který nahrazuje často se opakující se skupiny znaků, zkráceným vyjádřením. Mohou to být různé formuláře, hlavičky, tabulky, apod. Poziční redundance nahrazuje skupinu znaků, které se vyskytují na předem odhadnutelné pozici datové zprávy. Mohou to být například záhlaví souborů apod. V praxi se využívají různé protokoly, které popisují kompresní metody. U modemů se používají buď protokoly MNP, nebo doporučení V.42bis. Oba typy jsou vzájemně nekompatibilní. Protokoly MNP používají pro kompresy dat adaptivní Huffmanův algoritmus, který je založen na četnosti výskytu jednotlivých znaků. Doporučení V.42bis využívá pro kompresi dat slovníkovou metodu LZW, která využívá dynamický slovník. Umí také automaticky rozpoznat náhodná data, která již nelze zkomprimovat a kompresi nepoužívá. Dosahuje vyšších kompresních poměrů, než protokoly MNP. 62 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava 10.4 Přehled základních typů modemů Historicky nejstarší modemy jsou popsány v doporučení V. 21. Tyto modemy používají dvoustavovou FSK modulaci. Dosahují maximální přenosové rychlosti 300 bit/s. Modulační rychlost u dvoustavové modulace je stejná jako přenosová rychlost. Tento modem obsahuje pouze modulátor, demodulátor, vstupní a výstupní obvody a vidlici. Dalším typem modemu, je modem popsaný v doporučení V.22bis, který již používá 16-stavovou QAM modulaci. Tok dat je rozdělen do čtveřice bitů a ty jsou potom společně modulovány. Tento typ modemu má modulační rychlost 600 Bd a přenosová rychlost je maximálně 2400 bit/s. Modem je možné využít, jak pro komutované linky, tak pro pevné dvoudrátové telefonní okruhy. Tento typ modemu obsahuje všechny části, které jsou na obrázku 10.1. Mezi velmi využívané modemy, patří modem podle doporučení V.34. Tento typ modemu může používat až 1664-stavovou QAM modulaci. Modulační rychlost je závislá na kvalitě linky a může nabývat hodnot 2400 – 3429 Bd. Přenosová rychlost se může měnit v rozsahu 2400 – 33600 bit/s, podle kvality linky. Nejnovějším typem modemu je modem podle doporučení V.90. Při tomto doporučení se musí používat dva druhy modemu. Jeden modem je analogový a druhý modem musí být digitální, nejčastěji ISDN modem s podporou V.90. Pro upload je maximální rychlost 33600 bit/s a pro download je maximální rychlost 56700 bit/s. 10.5 AT příkazy pro ovládání modemů AT (Attention) příkazy slouží pro nastavování a ovládání modemů pomocí sériového rozhraní. Často jsou také využívány různé skripty pro automatizované operace. Modem pracuje ve dvou základních režimech. Příkazový režim slouží k vkládání AT příkazů, a přenosový režim slouží pro přenos dat mezi modemy. Modem nemůže pracovat v obou režimech zároveň, ale může mezi nimi přepínat bez ztráty spojení. Přepínání se provádí tzv. escape sekvencí, která se sestává ze tří stejných znaků stisknutých rychle po sobě. Je využívána sekvence "pauza 1s + + + pauza 1s". Protože koncové zařízení posílá data průběžně do modemu, který musí následaně tato data přenést do modemu na druhé straně, musíme zajistit řízení toku dat, neboli Flow Control. Řízení toku dat může být hardwarové, pomocí vyhražených vodičů, RTS (Request to Send) a CTS (Clear to Send). V případě, že nemáme speciální kabel, je možno využít softwarové řízení toku dat, pomocí signálů Xon (modem je připraven přijímat data) a Xoff (vyrovnávací paměť modemu je přeplněna). Na obrázku 10.2 je analogový modem US Robotics. Na předním panelu jsou čtyři diody, které slouží pro zobrazení stavu napájení, vysílání a příjem dat a pro detekci nosné. Pro vlastní konfiguraci modemu můžeme použít vhodný program, např. v linuxu to Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 63 Obrázek 10.2: Analogový modem US Robotics 5630 může být minicom, nebo C-Kermit. Základní příkaz je AT, kdy modem odpoví OK. Pokud modem neodpovídá, většinou je problém v kabeláži. Příkazem ATI4 zjistíme aktuální nastavení modemu. Příkazem ATI6 a ATI11 zjistíme základní diagnostické informace o spojení. Pro vytvoření spojení je jeden modem v režimu volajícího a druhý modem v režimu přijímacího zařízení. Pro spojení zadáme příkaz AT DT 1234, na druhé straně bude zpráva RING a nyní můžeme vložit příkaz AT A. Nyní se modemy pokusí spojit a vypíšou případnou informaci na terminál. Následně můžeme přenášet jednotlivé znaky, nebo vhodným přenosovým protokolem celé soubory, nebo skupiny souborů. Pro ukončení spojení musíme použít escape sekvenci a pomocí příkazu AT H0 ukončíme spojení. 64 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 11 65 MODEMY PRO ŠIROKOPÁSMOVÉ KANÁLY Modemy pro širokopásmové kanály využívají velkou šířku kanálu. Existuje celá řada technologických principů přenosu dat po těchto kanálech. V této kapitole se budeme zabývat pouze některými modemy. V současné době většina širokopásmových modemů využívá modulaci OFDM. 11.1 Analogové modemy pro širokopásmové kanály Širokopásmové modemy se původně používaly pro tzv. primární skupinu v systémech pro nosnou telefonii. Tyto modemy využívaly šířku pásma 48 KHz, ve frekvenčním spektru 60 – 108 KHz. Pro tyto modemy se používala ASK modulace přes celou šířku pásma. Dosahovalo se maximálních rychlostí 168 kbit/s. Tyto modemy jsou popsány v doporučeních V.35, V.36 a V.37. 11.2 Datové měniče ADSL Datové měniče typu ADSL (Asymmetric Digital Subscriber Line) jsou digitální datové měniče, které využívají stávající metalické účastnické vedení. Název Asymetric vychází z nestejných rychlostí, které jsou použity v dopředném a zpětném přenosu dat. Typicky je to určeno pro aplikace, které vyžadují velké rychlosti pro příjem dat, řádově desítky Mbit/s a nízké rychlosti pro odesílání dat, řádově stovky kbit/s. Maximální přenosová rychlost závisí na délce přípojného vedení, průřezu vodiče, použití odboček, útlumu přeslechu a dalších rušivých vlivů. Na straně uživatele je použit ADSL modem, a na straně poskytovatele přístupový multiplexer DSLAM (Digital Subscriber Line Access Multiplexer). Tento multiplexer umožňuje sdružovat data od několika účastníků. Obrázek 11.1: Princip ADSL datového měniče 66 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Aby byl možný současný přenos se stávající telefonní, nebo ISDN linkou, datový signál se moduluje nad hovorové pásmo. Pro oddělení provozu jsou použity filtry typu horní propust a dolní propust. Tyto filtry jsou součástí splitteru a jsou většinou řešeny jako pasivní části, bez nutnosti napájení. Současný přenos hovorového signálu a datového signálu může být realizováno dvěma způsoby. Starší způsob využívá frekvenčního multiplexu. U této metody jsou frekvenčně odděleny vysílací a přijímací pásma. Novější metoda využívá metody potlačení ozvěn, kdy je možný současný přenos signálů oběma směry. Tím je k dispozici více kanálů a celková přenosová rychlost je také vyšší. Celé frekvenční pásmo je rozděleno do jednotlivých subpásem, kde je následně využita QAM modulace. Tato metoda se nazývá DMT – diskrétní multitónová modulace. Obrázek 11.2: Závislost SNR na frekvenci a naznačení využití kanálů Na obrázku 11.2 je naznačeno, jak je frekvenční pásmo rozděleno do jednotlivých subkanálů. Pro každý subkanál je ze střední hodnoty SNR (Signal to Noise Ratio) odvozen maximální počet bitů na symbol. 11.3 Kabelové modemy Kabelové modemy využívají kabelových sítí pro televizní rozvody. Nejčastěji jsou připojovány na koaxiální rozvody. Využívají tzv. HFC (Hybrid Fiber Coax) sítí, což je kombinace optických a koaxiálních rozvodů. CMTS (Cable Modem Termination System), někdy se také nazývá headend, je zařízení používané v sítích kabelových operátorů pro širokopásmové služby. Node slouží pro převedení optického signálu na signál elektrický a naopak. K jednomu CMTS může být připojeno několik kabelových modemů. Kabelové modemy využívají nejnižší dvě vrstvy referenčního modelu OSI. Jsou standardizovány v průmyslovém standardu DOCSIS (Data Over Cable Service Interface Specification), případně EuroDOCSIS. Jsou zde specifikována pravidla pro obousměrné datové přenosy po stávajících kabelových televizních rozvodech. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 67 Obrázek 11.3: Kabelové modemy využívající HFC sítě Tyto modemy využívají několik typů modulací. Nejpoužívanější je však kvadraturní amplitudová modulace QAM a kvadraturní klíčování fázovým posunem QPSK. Kabelové modemy jsou koncipovány tak, aby nevyžadovaly žádnou konfiguraci ze strany uživatele. Veškeré potřebné parametry si automaticky stahují ze sítě pomocí protokolu TFTP (Trivial File Transfer Protocol). Přidělování IP adres zajišťuje DHCP (Dynamic Host Control Protocol) a management může být založen na protokolu SNMP (Simple Network Management Protokol). DOCSIS/euroDOCSIS používá na linkové vrstvě MAC (Medium Access Control) adresu, která slouží kromě adresování také pro identifikační a autorizační procedury. 11.4 Powerline modemy Powerline modemy využívají pro komunikaci silových rozvodů. Silová elektrická síť je dálkově přenášena přes linky velmi vysokého napětí, dále je distribuována přes linky vysokého napětí a rozvody k jednotlivým uživatelům jsou přenášeny pomocí nízkého napětí. Vlastní vysokorychlostní síť může být využita přímo v silových rozvodech domů, bytů apod. Obrázek 11.4: Powerline modemy využívající silových rozvodů 68 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava V této části se budeme zabývat zejména powerline modemy při využítí pásma až 100 MHz. Tyto modemy jsou standardizovány v doporučení IEEE 1901, který popisuje vysokorychlostní komunikaci až 500 Mbit/s při využití OFDM modulace. Jako opravné kódy se využívají konvoluční kódy, nebo LDPC kódy. Podobně jako u kabelových modemů je využita i MAC vrstva, která se stará o přístup na společné přenosové médium, v tomto případě to jsou silové rozvody v domech, bytech apod. Problémem těchto powerline modemů jsou zejména trojfázové rozvody, kdy se musí zajistit vhodné překlanutí oddělení jednotlivých fází. Někdy se to řeší pomocí bezdrátových přenosů. 11.5 Multiplexní zařízení Hlavním úkolem multiplexních zařízení je zvýšit efektivitu dálkových přenosů sdružením několika nízkorychlostních datových kanálů do jednoho společného datového kanálu s vyšší přenosovou rychlostí. Existuje několik základních typů multiplexních zařízení, které využívají různé principy sdružování, nebo-li multiplexování. 11.5.1 FDM (Frequency Division Multiplexing) Systém FDM umožňuje kmitočtové dělení jednotlivých signálů, kdy jsou jednotlivé signály posunuty do různých kmitočtových pásem. Na přijímací straně jsou jednotlivé frekvenční kanály odděleny pomocí pásmových propustí a posunuty do původního kmitočtového pásma. Obrázek 11.5: Princip FDM Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 11.5.2 69 WDM (Wavelength Division Multiplexing) Systém sdružování WDM je velmi podobný předchozí metodě. Využívá principu multiplexování několika optických signálů v jednom vlákně s použitím různých vlnových délek. Obrázek 11.6: Princip WDM 11.5.3 TDM (Time Division Multiplexing) Systém sdružování TDM je založen na principu časového třídění jednotlivých signálů. Jednotlivé signály jsou odděleny tím, že se každý z nich vysílá pouze v krátkých pevně definovaných časových intervalech, nazývaných časové sloty. Obrázek 11.7: Princip TDM Synchronní multiplexery přidělují pravidelně každému pomalému datovému kanálu k dispozici časový interval. Přenosová rychlost rychlého datového kanálu nesmí být menší 70 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava než součet přenosových rychlostí všech pomalých datových kanálů. Asynchronní multiplexery, někdy nazývané statisticlké, přidělují časové intervaly podle aktivity jednotlivých pomalých datových kanálů. Přenosová rychlost rychlého datového kanálu může být i menší než součet přenosových rychlostí všech pomalých datových kanálů. 11.5.4 CDM (Code Division Multiplexing) Systém sdružování CDM je založen na multiplexování několika signálů na principu kódování. Využívá se tzv. chip code, kdy každý kanál má přidělen jiný kód. Obrázek 11.8: Princip CDM 11.5.5 SDM (Space Division Multiplexing) Systém sdružování SDM využívá principu prostorově oddělených signálů, které jsou vysílány speciální smart anténou. Této techniky využívá např. princip MU-MIMO (MultipleUser Multiple Input Multiple Output). Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO Obrázek 11.9: Princip SDM 71 72 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 12 73 DATOVÉ SÍTĚ Pro přenos dat se používá buď hostitelských telekomunikačních sítí, nebo sítí vytvořených pro účely přenosu dat. Dnes vznikají tzv. integrované sítě, které jsou určeny pro všechny typy signálů. Z hlediska vzdálenosti koncových zařízení rozdělujeme datové sítě na sítě personální PAN (Personal Area Network), lokální LAN (Local Area Network), metropolitní MAN (Metropolitan Area Network) a rozlehlé WAN (Wide Area Network). Někdy se můžeme ještě setkat s pojmy BAN (Body Area Network), což mohou být různé sondy a měřící body, umístěné na těle člověka. Další pojem může být GAN (Global Area Network), kde mohou být zahrnuty tzv meziplanetární přenosy dat. Mezi sítě také patří sítě SAN (Storage Area Network), které slouží pro ukládání dat. Obrázek 12.1: Ukázka základních typů sítí 12.1 Lokální datové sítě Mezi základní vlastnosti lokálních datových sítí je její omezený dosah a velmi vysoké přenosové rychlosti. Volba topologie nebo-li uspořádání koncových zařízení má vliv na řadu vlastností. Mezi základní vlastnosti patří spolehlivost sítě. Je to vlastně odolnost sítě proti poruchám. Další důležitou vlastností je rozšiřitelnost nebo-li možnost zařazení dalšího koncového zařízení s minimálními náklady. Také je velmi důležitá výkonnost sítě, která znamená využití kapacity linky, zpoždění signálu apod. 74 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Obrázek 12.2: Lokální datová siť V neposlední řadě hraje důležitou roli i cena. Zde jsou zahrnuty všechny pořizovací a udržovací náklady. Mezi významné vlastnosti lze zařadit i možnost dálkového dohledu a správy sítě. 12.2 Metropolitní datové sítě Metropolitní sítě umožňují rozšíření lokálních sítí jejich prodloužením, zvýšením počtu připojených koncových zařízení a zvýšením rychlosti. Dost často bývá metropolitní síť ve vetších městech, kde propojuje důležité instituce a velké společnosti v rámci jednoho města. Mezi technologie využívající metropolitní sítě je technologie Metro Ethernet. Metro Ethernet nabízí transparentní přenos dat, kde jsou využívány standardní Ethernet rámce. Nabízí propojení dvou bodů, nebo více bodů sítě, bez nutnosti přechodu přes síťovou vrstvu. Podporuje VLANy (Virtual LAN), STP (Spanning Tree Protokol) a další protokoly, které jsou využívány i v LAN sítích. Jako topologie bývá použita kruhová tolpologie, toplogie hvězda, nebo částečná nebo plná mesh (každý s každým) síť. Využívá hierarchii tří vrstev, kde nejvyšší vrstva tvoří páteř sítě, nižší vrstva je distribuční a nejnižší vrstva je přístupová, kde se připojují koncové stanice. Metro Ethernet využívá agragace linek, redundance a recovery linky v distribuční síti, aby byl zajištěn velmi spolehlivý přenos dat. Tyto sítě také často využívají technologii MPLS (Multiprotokol Label Switching), která podporuje přenos různých typů protokolů. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 75 Obrázek 12.3: Ukázka metropolitní datové sítě 12.3 Rozlehlé datové sítě Rozlehlá datová síť pokrývá rozlehlé geografické území. Většinou překračuje hranice jednoho města, regionu, nebo i státu. Typickým příkladem rozlehlé sítě je síť Internet. Sítě WAN jsou využívány pro projování sítí LAN, nebo MAN. Mezi propojovací technologii patří zejména pronajaté linky, tzv leased line, které jsou velmi bezpečné, ale jsou velmi nákladné. Zde se využívají protokoly HDLC (High-Level Data Link Control), PPP (Point-to-Point Protokol), nebo nebo případně jiné protokoly. Další možností je využívání sdílených linek, kde se využívá protokol Frame-Relay, nebo celosvětově využívaná síť Internet. Síť Internet je sice dostupné téměř všude, ale je nutné počítat s minimání bezpečností. Proto je nutné pro spolehlivé datové přenosy využívat různé šifrovací a autentizační metody. 12.4 Topologie sítě Existuje celá řada různých typů topologie sitě. V zásadě můžeme definovat tři základní typy uspořádání. Dále můžeme rozlišovat topologii fyzickou a topologii logickou. Topologie typu sběrnice je jednoduchá, snadno rozšiřitelná. Není ovšem vhodná pro větší počet koncových zařízení. Je také velmi citlivá na výpadek linky. Topologie typu hvězda je charakterizována spolehlivostí, lepší správou. Tato topologie 76 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Obrázek 12.4: Ukázka rozlehlé datové sítě Obrázek 12.5: Topologie typu sběrnice je odolná na výpadek linky, nebo stanice. Je velmi citlivá na výpadek centrálního uzlu. V praxi se používají topologie rozšířená hvězda, nebo topologie typu strom. Topologie typu kruh je charakterizována vysokou spolehlivostí. Většinou využívá deterministický způsob řízení přístupu ke společnému médiu. Je citlivá na výpadek linky nebo stanice. 12.5 Řízení přístupu ke společnému médiu Protože pro datové sítě je charakteristické, že využívají stejné přenosové médium, musí se nějakým vhodným způsobem řešit přístup k tomuto médiu. Existují dva základní principy řízení přístup ke společnému médiu. Prvním typem jsou tzv. deterministické metody, kde je přesně určeno, kdy bude která stanice vysílat. Druhým typem jsou tzv. stochastické neboli náhodné metody, kdy není přesně určeno, kdy stanice bude mít přístup k médiu. Deterministické metody řízení k přístupu se dále dělí na centralizované a distribuované. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 77 Obrázek 12.6: Topologie typu hvězda Obrázek 12.7: Topologie typu kruh Centralizované metody jsou založeny na tom, že jedna stanice je řídící a přiděluje ostatním stanicím kapacitu kanálu. Přidělování může být buď na výzvu, kdy řídící stanice postupně vyzívá podřízené stanice k odeslání zprávy, nebo přidělování na žádost, kdy řídící stanice rozhodne na základě požadavků od jednotlivých stanic. Distribuované metody řízení nemají žádnou řídící stanici. Pro řízení přístupu používají buď rezervační metodu, nebo prioritní přístup. Stochastické metody řízení přístupu ke společnému přenosovému médiu vyžívají náhodného přístupu. Tyto metody se postupně vyvíjely. První metodou byla tzv. ALOHA (Aditive Link On-line Hawaii Area), která byla právě poprvé použita na Havajských ostrovech. Tato metoda je založena na tom, že pokud chce stanice vysílat, tak začne vysílat, bez ohledu na provozu v daném kanále. Dalším vylepšením této metody je tzv. synchronní ALOHA, která je založena na tom, že stanice vysílá pouze v určitých časových intervalech. Další metoda je metoda CSMA (Carrier Sense Multiple Access), která se nazývá jako 78 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Obrázek 12.8: Princip přístupové metody ALOHA vícenásobný přístup s nasloucháním nosné. Tato metoda je založena na tom, že stanice před tím než začne vysílat, musí naslouchat, zdali je sdílené médium volné. Poté může začít s vysíláním svých dat. Vysílá po celou dobu, i když nastala kolize. Obrázek 12.9: Princip přístupové metody CSMA Tato metoda byla zdokonalena v metodu CSMA/CD (Carrier Sense Multiple Access/ Collision Detection), která se snaží detekovat případné kolize. Kolize se projeví například zvýšením napětí na lince. Stanice přestane vysílat. Stanice je potom povinna za náhodnou dobu znova odvysílat narušený rámec dat. Tato metoda je využívaná například u technologie Ethernet. Obrázek 12.10: Princip přístupové metody CSMA/CD Další metodou je metoda CSMA/CA (Carrier Sense Multiple Access/ Collision Avoidance), která se snaží kolizím vyvarovat. Stanice při volném médiu počká náhodně zvolenou dobu a poté odvysílá svůj datový rámec a počká na jeho potvrzení. Tato metoda je například používaná u bezdrátových sítí Wi-Fi. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 79 Obrázek 12.11: Princip přístupové metody CSMA/CA 12.6 Přenosová média Pro datové sítě se používají různé typy přenosových médií. Základní používané typy médií jsou metalické, optické a bezdrátové způsoby přenosu signálů. Koaxiální kabely jsou definovány jako nesymetrické vedení. Mezi základní vlastnosti patří charakteristická impedance, která je dána průměrem vnějšího a vnitřního vodiče a použitým dielektrikem. Dalším základním parametrem je měrný útlum, který vyjadřuje, kolikrát se zmenší výkon signálu po průchodu kabelem definované délky. Tento parametr je kmitočtově závislý. Obrázek 12.12: Ukázka koaxiálního kabelu Kroucené páry jsou definovány jako symetrické vedení. Důvodem kroucení vodičů je zlepšení elektrických vlastností kabelu. Minimalizují se přeslechy mezi páry a snižuje se vzájemné ovlivňování mezi kabelem a okolím. Tím je omezeno vyzařování elektromagnetického záření do okolí i jeho příjem z okolí. Obrázek 12.13: Ukázka kroucené kabeláže Optická vlákna jsou skleněná nebo plastová, která přenáší signály pomocí světla. 80 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Vlákna přenášejí signály s menší ztrátou a jsou imunní vůči elektromagnetickému rušení. Mezi základní vlastnosti patří útlum, který je ovlivněn materiálovou absorpcí, rozptylem, ohybem a ztrátami při spojování. Disperze je příčinou zkreslení přenášeného signálu, dochází ke zpožďování impulsů a změně jejich tvaru. Dalším parametrem je numerická apertura, která vyjadřuje schopnost optického vlákna navázat optický výkon do svého jádra. Obrázek 12.14: Ukázka optického kabelu 12.7 Síťová architektura Síťová architektura přestavuje strukturu řízení komunikace v systémech. Je to souhrn řídících činností umožňujících výměnu dat mezi komunikujícími systémy. Protože komunikace a její řízení je relativně složitá záležitost, člení se archtektura do několika vrstev. Členění do vrstev odpovídá hierarchii činností, které se při řízení komunikace vykonávají. Každá vrstva sítě je definována službou, která je poskytována vyšší sousední vrstvě, a funkcemi, které vykonává v rámci protokolu. Řízení komunikace slouží ke spolupráci komunikujících prvků, tato spolupráce musí být koordinována pomocí řídicích údajů. Koordinaci zajišťují protokoly, které definují formální stránku komunikace. Protokoly jsou tedy tvořeny souhrnem pravidel, formátů a procedur, které určují výměnu údajů mezi dvěma či více komunikujícími prvky. Tato síťová architektura, tzv. architektura otevřených systémů, byla standardizována organizací ISO (International Stnadardization Organisation). Tato organizace vytvořila referenční model OSI (Open System Interconnection). Tento referenční model je sedmivrstvý a většina ostatních modelů se s ním srovnává. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 81 Naproti tomu existuje model TCP/IP, který je pouze čtyřvrstvý a v reálné praxi se využívá. Tento model je popsán sadou protokolů, které jsou součástí RFC (Request For Comments). Obrázek 12.15: Porovnání TCP/IP a OSI modelu Referenční model OSI je sedmivrstvý. Nejvyšší sedmá aplikační vrstva poskytuje aplikačním procesům přístup ke komunikačnímu systému. Prezentační vrstva určuje formát a prezentaci přenášených dat. Relační vrstva zřizuje, řídí a ukončuje relaci mezi aplikacemi. Transportní vrstva poskytuje spolehlivý přenos s požadovanou kvalitou služby. Síťová vrstva poskytuje propojení a výběr nejlepší cesty mezi uživateli. Linkvá vrstva zajišťuje přístup k médiu a poskytuje zabezpečení proti chybám, které mohou vzniknout při přenosu. Nejnižší fyzická vrstva zajišťuje přenos vlastních dat ve formě jednotlivých bitů. 82 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 13 83 BEZDRÁTOVÉ DATOVÉ SÍTĚ Bezdrátové datové sítě se dají rozdělit podle dosahu koncových zařízení na různé typy (obrázek 13.1). U každého typu sítě je potom použita vhodná přenosová technologie. W W AN W MAN W LAN W PAN B T , Z ig b e e W iF i W im a x GSM, UM TS, LTE Obrázek 13.1: Dělení bezdrátových sítí dle velikosti pokrývaného území V následujících kapitolách budou tyto čtyři typy bezdrátovýh technologií stručně představeny. 13.1 Bezdrátové osobní sítě (WPAN) Bezdrátové osobní sítě se v anglickém originále označují jako WPAN (Wireless Personal Area Network). Tento typ sítí je určen do vzdálenosti do cca 10 m. Vzdálenost většinou závisí na vysílacím výkonu, který bývá předepsán. WPAN sítě jsou popsány v doporučení IEEE 802.15. V současné době je nejpoužívanější technologií Bluetooth, která je popsána v doporučení 802.15.1. Pracuje v ISM pásmu na kmitočtu 2.4 GHz. K přenosu využívá metod FHSS (Frequency Hopping Spread Spectrum), kdy využívá 1600 přeskoků za sekundu mezi 79 frekvencemi. Dosahuje maximální přenosovou rychlost 1 Mbit/s. V současné době je definována specifikace Bluetooth 4.0, která umožňuje maximální přenosovou rychlost až do 24 Mbit/s, má sníženou spotřebu a umožňuje šifrování AES-128. 84 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava P iko b u ň ka S la ve S la ve M a ste r Obrázek 13.2: Princip přenosu dat technologií Bluetooth Základní vlastnosti technologie Blutooth: • Blutooth je paketově orientovaný protokol. • Zařízení mezi sebou komunikují přes řídící stanici (Master) v rámci tzv. pikobuňky. Jedna Master stanice může řídit až 7 Slave stanic (obrázek 13.2) • Pracovní kmitočet: 2402 − 2480 MHz). • Použitá modulace 𝜋/4-DPSK a 8𝐷𝑃 𝑆𝐾. • Zařízení se dělí dle výkonnosti následujícím způsobem: – Class 1. - max. výkon 100 mW (20 dBm)- dosah 100 metrů. – Class 2. - max. výkon 2,5 mW (4 dBm)- dosah 10 metrů. – Class 3. - max. výkon 1 mW (0 dBm)- dosah 1 metr. • Přenosové rychlosti standardů: – Bluetooth 1.2 - 1Mb/s. – Bluetooth 2.0 + EDR - 3 Mb/s. – Bluetooth 3.0 + HS - 24 Mb/s. – Bluetooth 4.0 - 24 Mb/s. • Bezpečnost zajištěna párujícím PINem a frekvenčním skákáním dle unikátní skokové sekvence. Využití technologie Bluetooth je zejména pro bezdrátové připojení různých příslušenství. V nové verzi se předpokládá i větší využití pro vzájemné propojení různých zařízení. Další hojně využívanou technologií WPAN sítí je Zigbee, která je popsána v doporučení 802.15.4. Primárním účelem této technologie je nasazení v průmyslu, lékařství v rámci senzorových spojů. Základní vlastnosti technologie Zigbee: • • • • • Pracovní kmitočet: 868 MHz, 902–928 MHz a 2,4 GHz. Přenosová rychlost: 20, 40, 250 kbit/s. Velmi nízká energetická náročnost. Dosah 10 - 50 m. Modulace O-QPSK (BPSK), symboly se přenášejí prostřednictvím metody přímého rozprostření frekvenčního spektra DSSS. • Sítě stromové (hvězdicové) topologie s centrálním koordinátorem nebo typu mesh (propojení všech klientů navzájem). • Základní zabezpečení pomocí metody AES (Advanced Encryption Standard). Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 13.2 85 Bezdrátové lokální sítě (WLAN) Bezdrátové lokální sítě se v anglickém originále označují jako sítě WLAN (Wireless Local Area Network. Tento typ sítí je převážně určen pro komunikaci na vzdálenosti do 100 m. Bezdrátové lokální sítě jsou mezi uživateli velmi oblíbené a často používané. Jsou standardizovány doporučením IEEE 802.11. Pracují v bezlicenčním pásmu ISM, na kmitočtech buď 2.4 GHz, nebo na kmitočtech 5 GHz. Datové přenosy mohou být realizovány přímo mezi dvěma stanicemi, tzv. Ad-hoc síti. Ale častější je způsob komunikace mezi několika stanicemi, kdy je využitý centrální prvek s jedním, nebo několika přístupovými body, které řídí veškerou komunikaci - tzv. Infrastructure (obrázek 13.3). In fra s tru c tu re C lie n t A d -H o c C lie n t C lie n t C lie n t W ire le s s AP C lie n t Obrázek 13.3: Infrastrukturní zapojení stanic a přístupového bodu AP Důležitou roli při rozlišování jednotlivých sítí hraje identifikátor, označovaná jako SSID (Service Set Identifier). Tento řetězec může obsahovat až 32 ASCII znaků. V některých případech bývá tento identifikátor skryt a připojující se stanice musí tento řetězec znát. WLAN sítě používají různé způsoby modulace. Poslední standard například využívá dnes nejrozšířenější metodu OFDM (Orthogonal Frequency Division Multiplexing). Pro bezdrátové komunikace je velmi důležité zabezpečení sítě, zejména proto, že se signál šíří i mino zabezpečený prostor. Mezi jednoduchý způsob zabezpečení, patří kontrola MAC (Media Access Control) adres na přístupovém bodě. Další možností zabezpečení je pomocí statických WEP (Wired Equivalent Privacy) klíčů a symetrického šifrování, které jsou ručně nastavovány na jednotlivých zařízeních. Lepším způsobem zabezpečení je využívání dynamických klíčů, pomocí standardu WPA (Wi-Fi Protected Access). V tomto případě se většinou využívá autentizační server RADIUS (Remote Authentication Dial In User Service). Vhodnější je používat WPA2, která přináší silnější šifrování podle standardu AES. 86 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Vývoj a základní vlastnosti technologie WiFi: • 802.11 (r.1999) – Původní 802.11 má omezení rychlosti na 2 Mb/s. – Používá metodu rozprostření frekvenčního spektra DSSS. – Šířka kanálu je 22 MHz s krokem 5 MHz. • 802.11b (1999) – High-Rate Direct Sequence. – Kmitočty ISM 2,4 GHz (2,400-2,4835 GHz). – Maximální rychlost na fyzické vrstvě je sice 11 Mbit/s, užitná rychlost je nižší, 30-40 % teoretické kapacity tvoří režie. Testovaná uživatelská rychlost se udává cca 6 Mbit/s. • 802.11a a 802.11g (2003) – Používá OFDM, frekvenční pásmo je děleno na množství úzkých subkanálů s menší bitovou rychlostí, do nich je dělena informace, signál pomalejšího subkanálu je robustnější. – Maximální přenosová rychlost 54 Mb/s, skutečná přenosová rychlost se pohybuje do 30-36 Mb/s. – Modulace 54 subnosných (4 pilotní) pomocí 64QAM – Počet kanálů: ∗ 802.11g 13 kanálů (3 nepřekrývající se). ∗ 802.11a 23 nepřekrývajících se kanálů. ∗ 802.11 b/g mají dle ČTU maximální povolený výkon 100 mW (20 dBm). ∗ 802.11a spadá do tří pásem: 5,150-5,350 GHz (uvnitř budov max. EIRP 200 mW); 5,470-5,725 GHz (max. EIRP 1W) a 5,725-5,875 GHz (max. EIRP 25mW). • 802.11n (2009) – Standard 802.11n využívá techniku MIMO (Multiply In – Multiply Out). – Použitá modulace OFDM – Maximální přenosová rychlost 150 Mb/s (bitová rychlost 600 Mb/s) – Šířka kanálu: 40 MHz (2x 20 MHz). • 802.11ac (2012) – Nejnovějším standardem je 802.11ac, který také využívá techniku MIMO. – Použitá modulace OFDM – Maximální bitová rychlost 6.7 Gb/s (8x2 MIMO) – Šířka kanálu 80-160 MHz. – 256 QAM 13.3 Bezdrátové metropolitní sítě (WMAN) Bezdrátové metropolitní sítě se v anglickém originále označují jako WMAN (Wireless Metropolitan Area Network). Tento typ sítí je typický pro městské aglomerace a používá se na vzdálenosti do 50 km. Tyto sítě jsou standardizovány doporučením IEEE 802.16 a označují se WiMAX (Worldwide Interoperability for Microwave Access). Tyto sítě využívají jak bezlicenční, tak licenční. WiMAX používá OFDM modulaci a maximální dosahovaná rychlost je 70 Mbit/s. Tato technologie není v současné době mnoho využívaná. Spíše lze očekávat větší využívání Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 87 v mobilních sítích 4. generace – 4G sítě. WiMAX má velké ambice nahradit stávající technologie 802.11. Ve verzi 802.16d2004 je označován jako fixní WiMAX, 802.16e-2005 pak jako mobilní WiMAX. Ve své podstatě představuje alternativu k broadbandovým kabelovým technologiím DSL (Digital Subscriber Line). Základní vlastnosti technologie WiMAX: • • • • • • Přenosové rychlosti 34 Mbit/s až 1 Gbit/s (reálně 70 Mb/s na vzdálenost 50 km). Pracovní frekvence (přímá viditelnost: 10 – 66 GHz; nepřímá 2 - 11 GHz). Bezlicenční pásma: 2,4; 5,1; 5,4 a 5,7 GHz. Licencovaná pásma: 2,3; 2,5 a 3,5 GHz. Dosah technologie: 40- 70 km. Modulace OFDM (128, 512, 1024 a 2048, subkanálů) s využitím HSPA (High Speed Packet Access). Možná další variante s OFDMA s 2048 subkanály. • Přenosy na základě technologie MIMO (Multiple IN – Multiple OUT) • Šířka kanálu 1.25 MHz, 5 MHz, 10 MHz nebo 20 MHz. 13.4 Bezdrátové rozlehlé sítě (WWAN) Bezdrátové rozlehlé sítě označované jako WWAN (Wireless Wide Area Network) jsou sítě využívané u mobilních operátorů. Podle použité technologie je lze rozdělit do několika generací. První typ mobilních technologií je systém GSM (Global System for Mobile communication). Tato technologie byla původně určena převážně pro hlasové služby. Lze zde také přenášet data s přenosovou rychlostí 9,6 kbit/s. Využívá modulaci GMSK (Gaussian Minimum Shift Keying). Obrázek 13.4: Přenos dat v sítích GSM Na obrázku 13.4 je naznačen způsob přenos dat v sítích GSM. Terminál komunikuje se základnovou stanicí BTS (Basic Tranceiver Station). Několik základnových stanic může být propojeno na řídicí systém pro BTS, tzv. BSC (Base System Controller). Jednotlivé řídicí systémy jsou napojeny na MSC (Mobile Switching Centre), který je ve funkci mobilní přepínací ústředny. Rozšířením GSM vznikla mobilní datová služba GPRS (General Packet Radio Service). Využívá TDMA (Time Division Multiplexing Access) kanály v GSM síti. Podle 88 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava kódovacího schématu a počtu použitých timeslotů, může dosáhnou teoretické přenosové rychlosti až 160 kbit/s. Skutečná rychlost závisí na vytíženosti dané buňky, ve které se mobilní terminál nachází. Dalším typem mobilních služeb je UMTS (Universal Mobile Telecommunication System). Je označovaný jako 3G standard mobilních telefonů. Pro přístup používá technologii W-CDMA (Wideband Code Division Multiple Access), která může být dále kombinována TDMA nebo FDMA. Tento standard se stále vyvíjí a má celou řadu variant. Dosahované teoretické přenosové rychlosti jsou řádově v jednotkách Mbit/s. Výrazným vylepšením této generace je systém HSPA a HSPA+ (High-Speed Packet Access), což je technický standard vylepšující komunikaci směrem od sítě k uživateli (až na 168 Mbit/s downlink a 22 Mbit/s uplink). Posledním typem mobilních služeb je LTE (Long Therm Evolution). Je označovaný jako 4G standard mobilních telefonů. Je to systém určený pro vysokorychlostní mobilní datové sítě. Plnohodnotný systém se nazývá LTE-Advanced. Plánovaná rychlost je 172,8/57,6 Mbit/s. LTE používá pásma GSM, DVB-T (800, 1800 a 2600 MHz). 13.5 Zabezpečený přenos dat v bezdrátových sítích 13.5.1 Nezabezpečená síť Nezabezpečená síť neboli otevřený systém (open system) znamená, že se k ní může připojit kdokoliv. Uživatelé pošlou požadavek na AP, které vzápětí odpoví a přidělí IP adresu plus další potřebné nastavení. Většina těchto systémů pracuje s protokolem DHCP (Dynamic Host Configuration Protocol), který dovoluje přiřazení potřebných nastavení pro připojení do sítě jakémukoliv uživatelskému zařízení. Připojením k takovéto síti posíláme veškeré informace nešifrovaným způsobem. Tudíž kdokoliv, kdo má potřebný hardware a software, může odposlechnout vysílaná či přijímaná data. Je to totožné, jako byste někde v kavárně nechali několik volných ethernetových portů a kdokoliv kdo přijde, si může připojit kabel a tak se lehce dostane do vaší sítě nebo do internetu. Tato metoda zabezpečení sítě je vhodná, pokud chcete mít veřejně přístupný bod. Tudíž vhodné řešení na veřejná místa jakými jsou kavárny, letiště, nádraží, nákupní centra a jiná místa, kde chceme lidem dopřát jednoduché připojení k internetu. Aby vůbec bylo možno se připojit na jakékoliv AP, existuje SSID (Service Set Identifier). V jednoduchosti si lze představit AP jakoby maják na pobřeží, který světlem oznamuje svou přítomnost. Tak i AP oznamuje svou přítomnost vysíláním jednoduchých SSID zpráv (tzv. beacon frame). Na základě znalosti SSID lze zaslat požadavek na spojení s AP. Některá AP mají možnost toto vysílání i případně vypnout. Díky vypnutému vysílání SSID lze zaručit jistou míru bezpečnosti, protože se standardním vybavením zařízení netuší, že je v blízkosti nějaký přístupový bod. Nesmíme však zapomenout, že když vysílaní SSID vypneme, tak se nejedná o žádné šifrování, pouze o utajení našeho zařízení Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 13.5.2 89 Síť zabezpečená pomocí WEP Zabezpečení sítě za pomoci WEP klíčů je nejslabším možným řešením zabezpečení bezdrátové sítě. Avšak již tato metoda je jakýmsi ukazatelem, že se už nejedná o veřejnou síť, ale o privátní. Tudíž každý, kdo se k této síti nějakým způsobem připojí, nemůže říci, že to byla náhoda. Šifrování probíhá za pomoci proudové šifry RC4. To, že se jedná o nejslabší řešení, není dáno použitou šifrou, ale způsobem jakým je použita. Ve stručnosti šifra RC4 má požadavek aby se inicializační klíč neopakoval. V implementaci WEP se však běžně stává, že se klíč opakuje po určité době respektive po určitém objemu dat. Zmíněné opakování má na svědomí inicializační vektor IV (obrázek 13.5, který má délku 24 bitů a při vyšších rychlostech přenosu se tento prostor rychle vypotřebuje a musí se začít od začátku. Tudíž je porušeno pravidlo šifry RC4, že se klíč nesmí opakovat. Z toho plyne, že útočník, který odchytí velké množství dat, je schopen dešifrovat WEP klíč a tudíž i celou komunikaci. IV W E P k líč RC4 šifro va c í k líč Obrázek 13.5: Princip šifrování WEP Průběh autentizace sdíleným klíčem (obrázek 13.6): • • • • • Klient zašle požadavek o autentizaci na AP. AP pošle klientovi výzvu 128bajtů dlouhou. Klient tuto výzvu zašifruje svým 128bajtovým WEP klíčem a pošle zpět na AP. AP ze znalosti WEP klíče určí, zda je zpráva zašifrována korektně. AP oznámí klientovi úspěšnou či neúspěšnou autentizaci. P o ža d a v e k a u te n tiz a ce 1 2 8 b a jtů d lo u h á š ifra AP K lie n t Z a š ifro v a n á v ý z v a O u n á m e n í o ú s p ě šn é a u te n tiza c i Obrázek 13.6: Autentizace 90 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava 13.5.3 Síť zabezpečená pomocí WPA Toto zabezpečení vychází taktéž z šifry RC4, avšak ji používá jiným způsobem. Proto WPA řeší většinu nedostatků WEP. Pomoci mechanismů TKIP(Temporal Key Integrity Protocol), který se stará o šifrování dat a 802.1x pro autentizaci uživatelů. TKIP odstranil IV a namísto něj mixuje vstup do RC4 jinými hodnotami. Díky tomu zachovává požadavek šifry na to, aby se vstupní hodnoty klíče neopakovaly. Vyřešené nedostatky technologie WEP: • • • • • Opakování hodnoty IV. Chybějící správa klíčů. Podpora pokročilých autentizačních metod. Chybějící identifikace a autentizace uživatelů. a další. . . 13.5.4 Síť zabezpečená pomocí WPA2 Technologie WPA2 již plně implementuje kompletní řešení 802.11i, které bylo schváleno k použití v červnu 2004. WPA2 opouští proudovou šifru RC4 a přechází na blokovou šifru AES (Advanced Encryption Standard). Pro zabezpečení dat využívá následující komponenty. 802.1x pro autentizaci (s využitím EAP a autentizačního serveru), RSN (Robust Security Network) pro udržování záznamů asociací a na AES založený CCMP (Counter Mode with Cipher Block Chaining Message Authentication Code Protocol) jenž se stará o šifrování dat. Od roku 2006 musí každé zařízeni, které chce být certifikováno jako Wi-Fi, implementovat WPA2. 13.5.5 Virtuální privátní síť VPN Virtuální privátní síť nazýváme virtuální, protože existuje jen logicky nikoli však fyzicky. Je to princip přenosu dat na již jiné vybudované síti. Privátní je protože využívá šifrovacích algoritmů a autentizačních mechanismů, tudíž ne každý se do ní dostane. A sítí je protože dokáže propojit několik uživatelů k serveru či několik VPN bran mezi sebou, základní druhy spojení VPN jsou naznačeny v následujícím odstavci. Virtuální privátní sítě jsou využívány zřejmě nejčastěji pro propojení několika lokálních sítí LAN přes veřejnou síť (internet). Je to jednoduché a hlavně levné řešení propojení již přes vybudovanou infrastrukturu veřejné sítě. Mějme modelovou situaci, kdy má firma pobočku v Praze, Brně, Olomouci a Ostravě. Propojení těchto poboček optickou, bezdrátovou či metalickou sítí je náročné a hlavně nákladné. V případě, že máme připojení do transportní sítě, kupříkladu internet, které propojuje zmíněné pobočky, pak není problém nakonfigurovat VPN brány tak, aby se těchto několik LAN sítí, chovalo jako by byly propojeny na jedné lokální síti. Maximální rychlost je dána rychlostí připojení, jež garantuje Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 91 poskytovatel připojení a ne maximum rychlosti, které lze implementovat na použitém médiu. 13.5.6 Metody autentizace Autentizace je způsob ověření identity uživatele, respektive jeho zařízení, připojujícího se do systému. Toto ověření přístupu se provádí několika způsoby, kupříkladu klasické uživatelské jméno a heslo, nebo sofistikovanější metodou za pomocí certifikátů. V následujících několika odstavcích je výčet technologií používaných v bezdrátových sítích. EAP Cílem proč vznikl EAP bylo vytvoření obecné platformy pro různé autentizační metody. EAP vychází z protokolu PPP (Point to Point Protocol). Jinými slovy by se dalo říci, že EAP je PPP se zásuvnými moduly pro autentizaci. Díky tomu můžeme používat jakékoliv dostupné ověřovací metody například klasické uživatelské jméno a heslo či otisky prstů nebo otisk oční sítnice případně různé další dostupné metody identifikace uživatele. 802.11x 802.1x je protokol umožňující využití protokolu EAP na metalické i bezdrátové síti. Tato technologie je založena na třech komponentách: žadatel, autentizátor a autentizační server. Ve stručnosti žadatelem je klient co žádá o přístup k síti. Autentizátor je obvykle mezičlánek mezi klientem a serverem, například AP. Autentizační server je kupříkladu server RADIUS či jiný AAA (authentication, authorization and accounting) server (obrázek 13.7). EAP EAP 8 0 2 .1 x ž a d a te l (k lie n t) a u te n tizá to r (A P ) a u te n tiza čn í se rve r (R A D IU S ) Obrázek 13.7: Autentikace pomocí 802.1x MD5 Jedná se o nejnižší možnou úroveň zabezpečení, jelikož hesla se ukládají na server v jednoduché textové podobě a v případě úspěšného útoku na takovýto server je celá autentizace 92 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava k ničemu. Při tomto druhu autentizace se ověřuje pouze klient nikoli, však AP. Z toho vyplývá možné podvrhnutí cílového AP. V dnešní době již málo využívané řešení. Lightweight Extensible Authentication Protocol LEAP Pochází od společnosti Cisco, která toto řešení představila v roce 2000. Bylo to dočasné řešení před příchodem 802.1x. Umožňuje vzájemnou autentizaci a dynamickou obnovu WEP klíčů. Jedinou slabinou je fakt, že toto řešení implementovali pouze Cisco zařízení a tudíž se nerozšířilo i k jiným výrobcům. Transport Layer Security TLS Představuje nejsilnější řešení z pohledu bezpečnosti, avšak za jistou cenu výpočetního výkonu. Jelikož TLS potřebuje pro autentizaci klienta a serveru certifikát na obou stranách (obrázek 13.8). Při obousměrné autorizaci je také zapotřebí mít PKI (Public Key Infrastructure), neboli infrastrukturu veřejných klíčů. PKI zahrnuje jak správu certifikátů, klíčů tak i asymetrické šifrování a jiné potřebné mechanizmy. Díky PKI lze také využít technologie elektronického podpisu a autorizovat tak přenášená data. za b e z p e č e n ý ka n á l 8 0 2 .1 x AP k lie n t s c e rtifik á te m ce rtifiko va n ý s e rve r Obrázek 13.8: Zabezpečená autentizace Zmíněné certifikáty jsou standardizovány a lze je najít pod standardem X.509. Systémy založené na již zmíněné technologii PKI využívají právě certifikáty standardu X.509. Ověření certifikátu je de facto výpočet hodnot, které obsahují. Data se pro účel srozumitelnosti výpočetních strojů ještě kódují do binární formy a vkládají mezi uvozující značky, kterými jsou kupříkladu: ––-BEGIN CERTIFICATE––- pro začátek ––-END CERTIFICATE––- pro konec. Další metody založenou na uživatelském jménu a heslu jsou TTLS (Tunnelled Transport Layer Security) a PEAP (protected EAP). vycházející z TLS a slouží pro autentizaci AP. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 13.6 93 Měření - datové přenosy v bezdrátových sítích Zadání: • Přes konzolový port nakonfigurujte přístupový bod (Cisco Aironet 1240ag) na libovolný kanál s ESSID: PD). • Připojte své pracoviště pomocí bezdrátové síťové karty do vaší sítě. • Oscanujte okolí a zjistěte ESSID okolních sítí, pracovní kanály a kmitočty. • Pomocí příkazu ping zjistěte zpoždění paketů mezi vaším pracovištěm a přístupovým bodem (případně mezi dvěma pracovišti). Při přenosu vyšlete vždy 10 dotazů najednou. Postupně volte 10 různých velikostí paketu, tak aby vhodně zastoupily celé spektrum možných velikostí MTU a zaznamenejte všechny dostupné výsledné informace. Použité zařízení pro měření: • • • • Server PC s OS Linux. Cisco AP Aironet 1200/1240 series. WiFi karta AirLive-WL-5480USB-50. Klient PC studenta s OS Linux. Vyhodnocení měření: • • • • • Uveďte postup konfigurace AP a klienta. Zapište zjištěné ESSID okolních sítí ,pracovní kanály a kmitočty. Zhodnoťte zpoždění spojení uskutečněného přes bezdrátovou síť. Porovnejte toto zpoždění se zpožděním v metalických sítích. Zjistěte přenosový výkon pomocí nástroje iperf. 94 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 14 14.1 95 ŠIFROVÁNÍ DAT Hash funkce Algoritmy, které hrají velice důležitou roli v moderní kryptografii, jsou Hash-algoritmy. Otisk je jednocestná funkce, která z libovolně dlouhého textu vytvoří krátký řetězec o konstantní délce. Výsledný řetězec (otisk) musí maximálně charakterizovat původní text. Velikost výsledného textu je 16bajtový (např. algoritmus MD-5), 20 bajtový (algoritmus SHA-1). Dnes se již algoritmy jako MD-5 a SHA-1 považují za slabé, proto se stále častěji setkáváme s novými algoritmy, které produkují delší a tím pádem bezpečnější otisky. Mezi tyto algoritmy patři SHA-224 (otisk dlouhý 28 bajtů), SHA-256 (otisk dlouhý 32 bajtů), SHA-384 (otisk dlouhý 48 bajtů) a SHA-256 někdy taky označovanou SHA-2 (otisk dlouhý 64 bajtů). Jak bylo výše uvedeno, hash je jednocestná funkce. To znamená, že z výsledné funkce nelze zpětně zjistit funkci původní. Jednocestné algoritmy jsou výpočetně nenáročné. Výpočetně náročné ale je nalézt k výsledku původní text. Kvalitní jednocestná funkce musí dát výrazně jiný výsledek i při drobné změně původního textu. Například u digitálního podpisu použitého k platebnímu příkazu by bylo velice špatné, kdyby se po připsání třeba jedné nuly k převáděné částce otisk nezměnil. Otisk se počítá z libovolně dlouhého textu a to znamená, že by teoreticky mělo být ke konkrétnímu otisku možné najít nekonečně mnoho původních textů. Hashovací funkce jsou konstruovány na výpočetních operacích nízké úrovně (bitové operace a posuny) a to znamená, že jsou výpočetně velmi rychlé a efektivní. Tyto algoritmy nejsou v žádném případě šifrovací algoritmy, protože obecně neexistuje inverzní funkce. Používají se v roli kvalitního otisku prstu dat (fingerprint). Otisk se může využít v komunikaci jako důkaz, že zpráva nebyla na cestě od jednoho uživatel k druhému změněna. To znamená, že využije otisk jako důkaz integrity dat. Obrázek 14.1 popisuje podstatu hashe. Mějme uživatele Davida a uživatelku Petru. David Petře neodešle pouze samotná data zprávy, ale ke zprávě připojí i otisk z textu zprávy. Petra poté, co zprávu přijme, spočítá otisk z přijaté zprávy a ten srovná s přijatým otiskem od Davida. Pokud se oba otisky shodují, tak to znamená, že zpráva nebyla po cestě nijak změněna. Jelikož je ale algoritmus pro výpočet otisku veřejně popsán v příslušné technické normě, tak existuje hrozba, že se někdo pokusí zprávu od Davida zachytit, změnit ve svůj prospěch a odeslat Petře. Tomuto zabrání David s Petrou tak, že si osobně vymění nějaké tajemství a vždy, když budou odesílat nějakou zprávu tomu druhému, přidají k ní i tohle sdílené tajemství. 96 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava D a v id P e tra P ů v o d n í d a ta P ů v o d n í d a ta p ře d á n í zp rá vy HASH p ře d á n í H A S H =? HASH Obrázek 14.1: Otisk jako důkaz integrity zprávy Třetí osoba tohle tajemství nezná, tudíž není schopna spočítat takovýto otisk a pozměnit zprávu, aniž by to někdo poznal. Takovýto otisk se označuje MAC (Message Authentification Code – kryptografický kontrolní součet). Velice často je MAC použit u protokolu SSL a protokolu IPSec. 14.2 Symetrické šifrování Symetrické šifry se vyznačují tím, že pro šifrování a dešifrování se používá stejný klíč. Vstupem je nějaký tajný text a šifrovací klíč. Šifrovací funkce za pomocí klíče převede text na kód, který může být dále předán příjemci. Příjemce poté použije dešifrovací funkci se stejným klíčem, jakým byl původní text zašifrován a získá původní tajný text. Je důležité, aby měl příjemce pro dešifrování stejný klíč jako ten, kterým byl původní text zašifrován. Bez tohoto klíče zprávu nikdo nerozluští. Při šifrování symetrickými šiframi je nutné, aby si komunikující osoby předaly nějakým bezpečným způsobem klíč. Pro symetrické šifrovací funkce musí platit, že při znalosti vstupního a zakódovaného textu je obtížné vygenerovat klíč. Při tom vlastní kódovaní a dekódování pomocí tohoto klíče je rychlá záležitost. Obtížné zjištění klíče záleží na jeho délce. Šifrovaná zpráva by měla odolat takzvanému útoku hrubou silou, to znamená, že se předpokládá vyzkoušení všech možných klíčů. Například pokud jé klíč dlouhý 8 bitů, existuje 28 (256) možných klíčů. Mezi nejběžnější šifrovací algoritmy patří: • DES – délka klíče 56 bitů. Dnes nedostačující. V roce 1997 byl tento algoritmus prolomen. • 3DES – délka klíče je 112 bitů, nebo 168 bitů. Algoritmus je odvozen od algoritmu DES. • AES – dnes doporučovaný. Délka klíče je 128, 192 nebo 256 bitů. Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO O d e s íla te l S ym e trický klíč O te vře n á zp rá va N e za b e zp e če n ý ka n á l Z a šifro va n á z p rá va O te vře n á zp rá va P říje m c e 97 Z a šifro va n á zp rá va Obrázek 14.2: Symetrické šifrování dat Symetrická kryptografie má jednu velkou nevýhodu a to v tom, že chtějí-li dva uživatelé mezi sebou tajně komunikovat, musí se napřed dohodnout na šifrovacím klíči. Tento ale musí být předán nějakou bezpečnou cestou (např. osobní kontakt), nesmí být předán po nezabezpečeném kanále. Výhody a nevýhody symetrické kryptografie: Výhody : • Patří mezi ně rychlost a nenáročnost na výpočetní výkon. Je velmi dobrá pro šifrování dat, které se nepotřebují nikam zasílat, nebo přenášet (zašifrování dokumentů na počítači). Nevýhody: • Pro šifrovanou komunikaci je nutné předem si bezpečně vyměnit šifrovací klíč. Největší nevýhodou je počet klíčů. Pro komunikaci mezi více osobami je nutný velký počet klíčů. Pro komunikaci 2 osob je potřeba 1 klíč, pro 3 osoby jsou to 3 klíče a pro 4 osoby již 6 klíčů. Obecně se potřebný počet klíčů vyjádří podle vzorce: 𝑁= , kde n je počet klíčů. 𝑛(𝑛 − 1) 2 (14.1) 98 14.3 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Asymetrické šifrování Asymetrická kryptografie (public key cryptography) je metoda, při které se pro šifrování a dešifrování zprávy používají jiné klíče. Tyto dva klíče, které jsou spolu matematicky svázány, spolu tvoří pár (keypair). Pro šifrování se tedy používá jeden z párů klíčů (příjemce zprávy jej ani nemusí znát) a pro dešifrování se použije druhý z páru. Výhodou u tohoto typu kryptografie je to, že ten kdo šifruje, nemusí s příjemce sdílet žádné tajemství. Tímto se odstraňuje riziko při výměně šifrovacího klíče jako u symetrické kryptografie. Nyní si ukážeme blíže, jak tato metoda funguje. Nejprve příjemce (David) si vygeneruje pár klíčů, z nichž jeden je veřejný a je k dispozici všem. David jej veřejným (nezabezpečeným) kanálem předá Petře. Petra s pomocí tohoto veřejného klíče zašifruje zprávu, určenou Davidovi a pošle mu ji. David ji po přijetí dešifruje svým privátním klíčem, který si pečlivě uschoval. Celý proces je zobrazen na obrázku 14.3. Tuto zprávu nemůže nikdo jiný než vlastník příslušného soukromého klíče dešifrovat, protože nezbytnou podmínkou pro asymetrickou kryptografii, je praktická nemožnost ze znalosti šifrovacího klíče spočítat dešifrovací. O te v ře n á zp rá v a V e ře jn ý m klíč e m za š ifro va n á zp rá va V e č e jn ý k líč p říje m ce S o u k ro m ý klíč p říje m ce P říje m c e O te v ře n á zp rá v a Obrázek 14.3: Asymetrické šifrování dat S o u kro m ý m k líče m d e šifro v a n á z p rá va N e za b e zp e če n ý ka n á l O d e síla te l Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 14.4 99 Diffie-Hellman protokol Jednu z metod asymetrické kryptografie lze využít v symetrické kryptografii. Touto metodou je Diffie-Hellman protokol. Je to protokol pro bezpečnou výměnu šifrovacího klíče pro symetrickou kryptografii. Tento protokol navrhli pánové Whitfield Diffie a Martin Hellman. Postup výměny klíče je znázorněn na obrázku 14.4. D a vid P e tra X = qx m od p Y = qy m od p K = q xy m o d p Obrázek 14.4: Diffie-Hellman protokol Postup výměny klíče: 1. Petra a David se dohodnou na velkém prvočíslu 𝑝 a 𝑞. 2. Petra si zvolí takové číslo 𝑥, že 1 ≤ 𝑥 ≺ 𝑝 − 1 a vypočítá se 𝑋 = 𝑞 𝑥 𝑚𝑜𝑑 𝑝, které pošle Davidovi. 3. David si zvolí libovolné takové číslo y, že 1 ≤ 𝑦 ≺ 𝑝 − 1 a vypočítá 𝑌 = 𝑞 𝑦 𝑚𝑜𝑑 𝑝, které pošle Petře. 4. Petra vypočítá 𝑌 𝑥 𝑚𝑜𝑑 𝑝 a David vypočítá 𝑋 𝑦 𝑚𝑜𝑑 𝑝. 5. Petra a David nyní vlastní tajný šifrovací klíč 𝐾 pro symetrickou kryptografii, protože 𝐾 = 𝑌 𝑥 𝑚𝑜𝑑 𝑝 = 𝑞 𝑥 𝑦𝑚𝑜𝑑 𝑝 = 𝑋 𝑦 𝑚𝑜𝑑 𝑝 = 𝐾. Pokud by nějaká osoba odposlouchávala komunikaci mezi Petrou a Davidem, musela by pro získání 𝑥, ze znalosti 𝑋, 𝑝, 𝑞, nebo 𝑦 ze znalosti 𝑌, 𝑝, 𝑞 umět vypočítat diskrétní algoritmus, to se ale předpokládá jako neřešitelný problém. 14.5 Algoritmus RSA Algoritmus RSA vymysleli pánové Ron Rivest, Adi Shamir a Len Adleman v roce 1978. Zkratka RSA je z počátečních písmen jejich příjmení. Tento algoritmus je založen na problému faktorizace velkých čísel. Předpokládá se totiž, že rozložit velké číslo na součin prvočísel je velmi složitá úloha. 100 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Postup vygenerování klíčů pomocí algoritmu RSA: 1. David si zvolí dvě dostatečně velká prvočísla 𝑝 a 𝑞, která mezi sebou vynásobí a získá číslo. 2. Potom začne počítat dvě celá čísla 𝑑 a 𝑒 tak, že si zvolí nějaké náhodné číslo 𝑒, které není soudělné s (𝑝 − 1)(𝑞 − 1). Poté z výrazu 𝑒𝑑 = 𝑙𝑚𝑜𝑑(𝑝 − 1)(𝑞 − 1) vypočítá číslo 𝑑. 3. Potom pošle Petře veřejný klíč, který má podobu páru čísel {𝑒, (𝑛)}. 4. Petra vytvoří zprávu 𝑀 ∈ 𝑍𝑛 . 5. Petra nyní zprávu zašifruje pomocí Davidova veřejného klíče 𝐶 = 𝑀 𝑒 𝑚𝑜𝑑 𝑛. 6. Tuto zprávu pak zašle Davidovi, který pomocí privátního klíče tuto zprávu dešifruje jako 𝑀 = 𝐶 𝑑 𝑚𝑜𝑑 𝑛 a potom ji převede zpět do textové podoby. 14.6 Praktické nástroje pro šifrování dat v OS Linux ccrypt Nástroj pro šifrování a dešifrování souborů a toků. Využívá AES. ccrypt -e pd.txt požádá o encryption key a provede šifrování souboru 𝑝𝑑.𝑡𝑥𝑡 do souboru 𝑝𝑑.𝑡𝑥𝑡.𝑐𝑝𝑡 ccrypt -d pd.txt.cpt požádá o encryption key a provede dešifrování souboru md5sum Nástroj na výpočet MD5 hash otisku. md5sum vypočítá a ověří MD5 hash md5sum pd.txt vypočítá MD5 hash md5sum pd.txt>pd.md5 vypočítá MD5 hash a výsledek uloží do souboru 𝑝𝑑.𝑚𝑑5 md5sum -c pd.md5 ověří MD5 hash sha1sum sha1sum vypočítá a ověří SHA1 hash sha1sum pd.txt vypočítá SHA1 hash sha1sum pd.txt>pd.sha1 vypočítá SHA1 hash a výsledek uloží do souboru pd.md5 sha1sum -c pd.sha1 ověří SHA1 hash Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 101 steghide Steghide steganography program pro formáty JPEG, BMP, WAV, AU steghide embed -cf obrazek.jpg -ef secret.txt uloží text do 𝑜𝑏𝑟𝑎𝑧𝑒𝑘.𝑗𝑝𝑔 steghide info obrazek.jpg steghide extract -sf obrazek.jpg -xf secret.txt uloží text do souboru 𝑠𝑒𝑐𝑟𝑒𝑡.𝑡𝑥𝑡 openssl Program openssl je možno využít pro různé bezpečnostní funkce. Pro symetrické šifrování a dešifrování lze využít např. šifrování podle standardu AES: openssl enc -aes256 -in a.txt -out enc.txt symetrické šifrování AES openssl enc -d -aes256 -in enc.txt symetrické dešifrování Pro generování dvojice veřejný/privátní klíč: openssl genrsa -out private.key 1024 vygenerování dvojice klíčů, veřejný/privátní openssl rsa -in private.key -pubout > public.key vytažení veřejného klíče Tyto klíče lze dále využít pro asymetrické šifrování dešifrování: openssl rsautil -encrypt -inkey public.key -pubin -in test.txt zašifrování souboru pomocí veřejného klíče openssl rsautil -decrypt -inkey private.key -in cipher.txt dešifrování souboru pomocí privátního klíče 102 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO A 103 PŘÍLOHA GNU OCTAVE GNU Octave je svobodný software šířený pod licencí GPL. Jeho využití je především ve vědecké praxi pro řešení lineárních a nelineárních rovnic, integrování a derivování funkcí a vykreslování grafu, pomocí programu Gnuplot. Do značné míry je kompatibilní s komerčním programem MATLAB. Octave lze spustit pod všemy operačními systémy, včetně Androidu. A.1 Instalace GNU Octave Tento postup je aplikovatelný na systémech založených na Debianu. Pokud je Octave dostupný v repozitářích, je instalace velmi jednoduchá. Nejdříve si zjistíme jaké jsou dostupné balíčky a následně vybrané balíčky nainstalujeme: apt-cache search octave sudo apt-get install octave octave-communications octave-signal Pro pokročilejší uživatele je možno využít instalaci ze zdrojových kódů. Nejdříve si stáhneme zdrojové kódy, následně balíček rozbalíme a naistalujeme: wget ftp://ftp.gnu.org/gnu/octave/octave-3.8.2.tar.bz2 bunzip2 octave-3.8.2.tar.bz2 cd octave-3.8.2 ./configure make sudo make install A.2 Spuštění a základní operace GNU Octave Program octave spustíme přímo v terminálu příkazem octave. octave:1>help help octave:2>lookfor example octave:3>date ans = 10-Aug-2014 octave:4>vector=[1 0 0 1] 104 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava vector = 1 0 0 1 octave:5>matrix=[1 0 0 0; 0 1 0 0; 0 0 1 0; 0 0 0 1] matrix = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 octave:6>vectorXmatrix=mod(vector*matrix,2) vectorXmatrix = 1 0 A.3 0 1 Generování náhodných dat b = randint(3,5) % Generate binary random data b = 0 1 0 0 0 1 1 0 1 0 0 0 1 1 0 s = randsrc (3,5) % Generate random symbols s = 1 -1 -1 1 1 -1 -1 -1 -1 -1 1 1 1 -1 1 e = randerr (3,5) % Generate random bit errors e = 0 1 1 A.4 0 0 0 0 0 0 1 0 0 0 0 0 Náhodné signály Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 105 clear all; % Clear all variables x = [0:0.1:4*pi]; y = sin (x); plot(y,’r’) xlabel(’Time’); ylabel(’Amplitude’); hold on; noisy = awgn (y, 10, "measured"); plot(noisy,’b’) Obrázek A.1: Sinusový signál s rušením SNR=10dB A.5 CRC (Cyclic Redundance Check) kódování a dekódování clear all; % Clear all variables % CRC-4 Cyclic Redundancy Check Gx=[1 0 0 1 1] %G eneric polynom Gx = 1 0 0 1 1 106 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Mx=[0 1 0 0] Mx = 0 1 0 % Binary message xr=[1 0 0 0 0] xr = 1 0 0 0 % Order of generic polynom 0 0 xrMx=conv(xr,Mx) % Shift Mx xrMx = 0 1 0 0 0 0 0 0 [Qx, Rx]=deconv(xrMx,Gx) % Compute Rx Qx = 0 1 0 0 0 0 0 Rx = 0 -1 -1 0 0 Rx=mod(Rx,2) % Transfer to modulo 2 Rx = 0 0 0 0 1 1 0 0 1 0 0 Bx=xrMx|Rx % Codeword Bx = 0 1 0 0 1 [Qx,Sx]=deconv(Bx,Gx) Qx = 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Sx = 0 Sx=mod(Sx,2) Sx = 0 0 0 Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO A.6 107 Hamming kódování a dekódování clear all; % Clear all variables H=[0 0 0 1 1 1 1; 0 1 1 0 0 1 1; 1 0 1 0 1 0 1] H = 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 % Hamming(7,4) Check Matrix 1 1 1 G=[1 0 0 0 0 1 1; 0 1 0 0 1 0 1; 0 0 1 0 1 1 0; 0 0 0 1 1 1 1] % Hamming(7,4) Generic Matr G = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 1 M=[0 1 0 0] % Binary message M = 0 1 0 0 B=mod(M*G,2) % Codeword B = 0 1 0 0 1 0 1 Berr = [1 1 0 0 1 0 1] % Errored Codeword Berr = 1 1 0 0 1 0 S=mod(H*Berr’,2) % Syndrom S = 0 0 1 1 108 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava A.7 RM (Reed-Muller) kódování a dekódování clear all; % Clear all variables G=reedmullergen (1,3) % Reed-Muller generic matrix ans = 1 0 0 0 1 1 0 0 1 0 1 0 1 1 1 0 1 0 0 1 1 1 0 1 1 0 1 1 1 1 1 1 M=[1 1 1 1] % Binary message M = 1 1 1 1 B=reedmullerenc ([1 1 1 1], 1, 3) % Codeword ans = 1 0 0 1 0 1 1 0 Berr = [1 1 0 1 0 1 1 0] % Errored Codeword [dec_B, dec_M]=reedmullerdec (Berr,G,1,3) % RM decoding dec_B = 1 0 0 1 1 1 1 0 1 1 0 dec_M = 1 A.8 RS (Reed-Solomon) kódování a dekódování clear all; % Clear all variables m = 3; % Number of bits per symbol n = 2^m-1; k = 3; % Word lengths for code msg = gf([2 7 3; 4 0 6; 5 1 1],m) % Three rows of m-bit symbols msg = GF(2^3) array. Primitive Polynomial = D^3+D+1 (decimal 11) Array elements = 2 7 3 Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 4 5 0 1 6 1 code = rsenc(msg,n,k) code = GF(2^3) array. Primitive Polynomial = D^3+D+1 (decimal 11) Array elements = 2 4 5 7 0 1 3 6 1 3 4 4 6 2 5 7 2 4 6 0 0 errors = gf([2 0 0 0 0 0 0; 3 4 0 0 0 0 0; 5 6 7 0 0 0 0],m) errors = GF(2^3) array. Primitive Polynomial = D^3+D+1 (decimal 11) Array elements = 2 3 5 0 4 6 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 noisycode = code + errors noisycode = GF(2^3) array. Primitive Polynomial = D^3+D+1 (decimal 11) Array elements = 0 7 0 7 4 7 3 6 6 3 4 4 6 2 5 7 2 4 6 0 0 [dec,cnumerr] = rsdec(noisycode,n,k) dec = GF(2^3) array. Primitive polynomial = D^3+D+1 (11 decimal) Array elements = 2 4 0 7 0 7 3 6 6 cnumerr = 1 2 -1 % 1 error % 2 errors % more errors 109 110 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava A.9 RLE (Run Length Encoding) komprese a dekomprese message=[41 41 41 42 42 41 41 42 43] message = 41 41 41 42 42 41 41 42 43 42 2 41 1 42 1 rleenco(message) ans = 3 41 2 dmessage=[3 41 2 42 2 41 1 43 42 1 43] dmessage = 3 41 2 42 2 41 1 42 1 42 41 41 42 43 43 rledeco=(dmessage) ans = 41 41 A.10 hd 41 42 Huffman komprese a dekomprese = huffmandict (1:4, [0.5 0.25 0.15 0.10]) % Huffman binary tree hd = { [1,1] [1,2] [1,3] [1,4] } = = = = 1 0 1 0 0 0 0 0 1 hcode = huffmanenco (1:4, hd) % Huffman compress hcode = 1 0 1 0 0 0 0 0 1 Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 111 hdecode = huffmandeco (hcode, hd) % Huffman decompress hdecode = 1 2 3 A.11 4 LZ77 komprese a dekomprese lz77enco ([0 0 1 0 1 0 2 1 0 2 1 0 2 1 2 0 2 1 0 2 1 2 0 0], 3, 9, 18) ans = 8 7 6 2 2 3 7 8 1 2 2 0 lz77deco ([8 2 1 ; 7 3 2 ; 6 7 2 ; 2 8 0], 3, 9, 18) ans = 0 0 A.12 1 0 1 0 2 1 0 2 1 0 2 1 2 0 2 1 0 2 1 2 0 ASK (Amplitude Shift Keying) modulace format long; clear all; % Clear all variables N = 8; % The number of bits to send - Frame Length bit_stream=[1 0 0 1 0 1 1 1] % Generate sequence: 10010111 A1 = 0; % Amplitude for 0 bit A2 = 5; % Amplitude for 1 bit f = 3; % Frequency of Modulating Signal fs = 100; % Sampling rate - This will define the resoultion t = 0: 1/fs : 1; % Time for one bit time = []; Digital_signal = []; ASK_signal = []; for ii = 1: 1: length(bit_stream) Digital_signal = [Digital_signal (bit_stream(ii)==0)*... zeros(1,length(t)) + (bit_stream(ii)==1)*ones(1,length(t))]; ASK_signal = [ASK_signal (bit_stream(ii)==0)*A1*sin(2*pi*f*t)+... 0 112 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava (bit_stream(ii)==1)*A2*sin(2*pi*f*t)]; time = [time t]; t = t + 1; end subplot(2,1,1); plot(time,Digital_signal,’r’,’LineWidth’,2); xlabel(’Time (bit period)’); ylabel(’Amplitude’); title(’Original Digital Signal’); axis([0 time(end) -0.5 1.5]); grid on; subplot(2,1,2); plot(time,ASK_signal,’LineWidth’,2); xlabel(’Time (bit period)’); ylabel(’Amplitude’); title(’ASK Signal with two Amplitudes’); axis([0 time(end) 1.5 1.5]); grid on; Obrázek A.2: Vykreslení ASK modulace pomocí gnuplot A.13 FSK (Frequency Shift Keying) modulace format long; clear all; % Clear all variables Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO N = 8; % The number of bits to send - Frame Length bit_stream=[1 0 0 1 0 1 1 1] % Generate sequence: 10010111 f1 = 3; % Frequency component for 0 bit f2 = 5; % Frequency component for 1 bit fs = 100; % Sampling rate - This will define the resoultion t = 0: 1/fs : 1; % Time for one bit time = []; FSK_signal = []; Digital_signal = []; for ii = 1: 1: length(bit_stream) FSK_signal = [FSK_signal (bit_stream(ii)==0)*sin(2*pi*f1*t)+... (bit_stream(ii)==1)*sin(2*pi*f2*t)]; Digital_signal = [Digital_signal (bit_stream(ii)==0)*... zeros(1,length(t)) + (bit_stream(ii)==1)*ones(1,length(t))]; time = [time t]; t = t + 1; end subplot(2,1,2); plot(time,FSK_signal); xlabel(’Time (bit period)’); ylabel(’Amplitude’); title(’FSK Signal with two Frequencies’); axis([0 time(end) -1.5 1.5]); grid on; subplot(2,1,1); plot(time,Digital_signal,’r’,’LineWidth’,2); xlabel(’Time (bit period)’); ylabel(’Amplitude’); title(’Original Digital Signal’); axis([0 time(end) -0.5 1.5]); grid on; A.14 PSK (Phase Shift Keying) modulace format long; clear all; % Clear all variables N = 8; % The number of bits to send - Frame Length bit_stream=[1 0 0 1 0 1 1 1] % Generate sequence: 10010111 P1 = 0; % Phase for 0 bit P2 = pi; % Phase for 1 bit 113 114 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Obrázek A.3: Vykreslení FSK modulace pomocí gnuplot f = 3; % Frequency of Modulating Signal fs = 100; % Sampling rate - This will define the resoultion t = 0: 1/fs : 1; % Time for one bit time = []; PSK_signal = []; Digital_signal = []; for ii = 1: 1: length(bit_stream) PSK_signal = [PSK_signal (bit_stream(ii)==0)*sin(2*pi*f*t + P1)+... (bit_stream(ii)==1)*sin(2*pi*f*t + P2)]; Digital_signal = [Digital_signal (bit_stream(ii)==0)*... zeros(1,length(t)) + (bit_stream(ii)==1)*ones(1,length(t))]; time = [time t]; t = t + 1; end subplot(2,1,2); plot(time,PSK_signal,’LineWidth’,2); xlabel(’Time (bit period)’); ylabel(’Amplitude’); title(’PSK Signal with two Phase Shifts’); axis([0 time(end) -1.5 1.5]); grid on; subplot(2,1,1); plot(time,Digital_signal,’r’,’LineWidth’,2); Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO 115 xlabel(’Time (bit period)’); ylabel(’Amplitude’); title(’Original Digital Signal’); axis([0 time(end) -0.5 1.5]); grid on; Obrázek A.4: Vykreslení PSK modulace pomocí gnuplot A.15 QAM (Quadrature Amplitude Modulation) modulace clear all; % Clear all variables %16-QAM c=[2+2i -2+2i -2-2i 2-2i 4+2i 2+4i -2+4i -4+2i -4-2i -2-4i 2-4i 4-2i 4+4i -4+4i -4-4i 4-4i % [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 %d=randint(1,1e4,16); % For random data d=[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15]; % data 0 ... 15 y=genqammod(d,c); % QAM modulation % Plot constellation diagram plot(y,’ro’); text(2,2,’ 0000’,’FontSize’,14);text(-2,2,’ 0001’,’FontSize’,14);text(-2,-2,’ 0010’,’FontS text(4,2,’ 0100’,’FontSize’,14);text(2,4,’ 0101’,’FontSize’,14);text(-2,4,’ 0110’,’FontSiz text(-4,-2,’ 1000’,’FontSize’,14);text(-2,-4,’ 1001’,’FontSize’,14);text(2,-4,’ 1010’,’Fon text(4,4,’ 1100’,’FontSize’,14);text(-4,4,’ 1101’,’FontSize’,14);text(-4,-4,’ 1110’,’FontS 116 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava xlabel(’In phase’); ylabel(’Quadrature’); title(’Constellation diagram for 16-QAM’); axis([-5 5 -5 5]); grid on; Obrázek A.5: Vykreslení konstelačního diagramu pro 16-QAM A.16 Substituční šifrování dat y=input("insert characters: ", "s") insert characters: ABCDEFGH y = ABCDEFGH ys=y+1; char(ys) ans = BCDEFGHI A.17 % ... posun o jeden znak Transpoziční šifrování dat y=input("insert characters: ", "s") insert characters: ABCDEFGH y = ABCDEFGH Přenos dat v komunikacích pro integrovanou výuku VUT a VŠB-TUO yt=shift(y,1) yt = HABCDEFG % ... rotace znaků 117 118 Fakulta elektrotechniky a informatiky, VŠB - TU Ostrava Reference [1] Němec, K. Datová komunikace. VUT Brno 2000. ISBN 80-214-1652-1 [2] Svoboda, J. Základy teleinformatiky. ČVUT Praha 1998. ISBN 80-901936-3-3 [3] Hanus, S. Bezdrátové a mobilní komunikace. VUT Brno 2003. ISBN 80-214-1833-8 [4] Blahut, R.E. Algebraic Codes for Data Transmission. Cambridge University Press 2003 ISBN 978-0521553742 [5] Bidgoli, H. Handbook of Computer Networks: Key Concepts, Data Transmission, and Digital and Optical Networks. Wiley 2011. ISBN 978-0471784586 [6] Sayood, K. Introduction to Data Compression. Morgan Kaufmann 2012. ISBN 9780124157965 [7] Nelson, M., Gailly, J. The Data Compression Book. Wiley 1995. ISBN 978-1558514348 [8] MacKay, D.J.C. Information Theory, Inference, and Learning Algorithms. Cambridge University Press 2003. ISBN 978-0521642989 [9] Lathi, B.P., Ding, Z. Modern Digital and Analog Communication Systems. Oxford University Press 2009. ISBN 978-0195331455 [10] Xiong, F. Digital Modulation Techniques. Artech House Publishers 2000. ISBN 9780890069707 [11] Sklar, B. Digital Communications: Fundamentals and Applications. Prentice Hall 2001. ISBN-13: 978-0130847881 [12] Agrawal, G.P. Fiber-Optic Communication Systems. Wiley 2010. ISBN-13: 9780470505113 [13] Garg, V. Wireless Communications and Networking. Morgan Kaufmann 2007. ISBN13: 978-0123735805 [14] Stallings, W. Data and Computer Communications. Prentice Hall 2013. ISBN-13: 978-0133506488 [15] Hansen, J.S. GNU Octave Beginner’s Guide. Packt Publishing 2011. ISBN-13: 9781849513326 [16] Eaton, J.W. GNU Octave Manual Version 3. Network Theory Ltd. 2008 ISBN-13: 978-0954612061 [17] Phillips, L. gnuplot Cookbook. Packt Publishing 2012. ISBN-13: 978-1849517249
Podobné dokumenty
přenos dat - Personalizace výuky prostřednictvím e-learningu
Historie přenosu dat pochází ze starého Řecka, kdy byl přenos uskutečňován pomocí kouřových
signálů. Jiţ v počátcích byla snaha o co nejspolehlivější přenosy informací na velké vzdálenosti.
Neţ se ...
Akademický bulletin, rok 2013, číslo 5
ústavy z jedné sekce mají k sobě často dál než ty
mezisekční. V současném uspořádání provádějí ústavy výzkum zcela autonomně a Akademie věd jako zřizovatel jim (pouze) poskytuje institucionální pod...
Novinky Ruckus Wireless
Zjednodušení cen ZoneDirectorů – od 1.3.2013
• Zjednodušení konfigurace redundantních ZoneDirector – nová “RDY”
SKU, od 1.3.2013
– K objednání záložní ZoneDirector (základní verze) + nová Watchdog...
Elektronika4-1
v osnovách pro 4. ročníky středních průmyslových škol elektrotechnických. Především je skriptum
zaměřeno na Radioelektronická zařízení, pro obory Automatizace a Počítačové systémy, je nutné vybrat
...
Dýdžejem za deset dní
Poznámka: Při ukládání zvuku můžete tyto parametry buď
nechat tak, jak jsou, nebo je můžete snížit. Zvyšování těchto
parametrů nemá obvykle smysl, vyšší kvalitu tím stejně
nezískáte.
Phaser (Fázer)...
IVT přehled (2005)
Programové vybavení pro psaní textu.......................................................................................................... 36
Dělení slov a mezislovní mezery .......................