Báječný svět počítačových sítí

1. 10. 2005

Sdílet

Naše dnešní povídání o přenosových technikách začneme tím, co jsou duplexní asimplexní přenosy. Rozdíl mezi nimi spočívá v tom, zda jsou data přenášena jen v jednom směru (pak ...
Naše dnešní povídání o přenosových technikách začneme tím, co jsou duplexní a
simplexní přenosy. Rozdíl mezi nimi spočívá v tom, zda jsou data přenášena jen
v jednom směru (pak jde o simplexní přenos), nebo v obou směrech (pak jde o
duplexní přenos).
S tím úzce souvisí i pojmy jako kanál a okruh, které nepochází tolik ze světa
počítačových sítí, jako spíše ze světa telekomunikací a spojů. Jako kanál se
označuje taková přenosová cesta, která je pouze jednosměrná (dá se tedy využít
pouze k simplexním přenosům). Naproti tomu okruh již je obousměrný, umožňuje
duplexní přenos.

Simplex, semiduplex
Příkladem čistě simplexního přenosu může být televizní a rozhlasové vysílání.
To klasické (analogové) sice místo digitálních dat přenáší pouze analogový
signál, ale i tak názorně ilustruje podstatu "simplexu": přenos probíhá jen
jedním směrem, ke koncovým příjemcům. Stejně je na tom i nastupující digitální
televizní vysílání, u něhož již lze hovořit o přenosu dat. Pozemní (i
satelitní) digitální vysílání, řešené na bázi standardu DVB-T (resp. DVB-S pro
satelit) totiž také počítá jen se simplexním přenosem.
Pokud se tedy v souvislosti s digitálním vysíláním hovoří o interaktivitě a
interaktivních službách, jako například o možnosti on-line hlasování,
nakupování či třeba čtení e-mailů, pak musí být použit ještě nějaký "externí"
přenosový kanál, umožňující přenos v opačném směru, od diváka k tomu, kdo
programy připravuje a vysílá. Může to být v zásadě jakýkoli kanál - třeba
telefonický (vytáčené připojení k internetu), mobilní GPRS, ADSL apod.
Přenosy, které již fungují oběma směry, ale v každém z nich jiným způsobem, se
obecně označují jako semiduplexní, někdy také jako asymetrické - ale to není
příliš šťastné. Toto adjektivum se častěji používá k vyjádření rozdílu v
rychlostech přenosu v obou směrech a nikoli v technice přenosu, resp. druhu
použitého přenosového kanálu.

Plný duplex, poloviční duplex
I v případě obousměrných přenosů připadají v úvahu různé varianty, mezi nimiž
je třeba rozlišovat. Někdy je totiž komunikace v obou směrech sice možná, ale
nikoli současně. To je případ tzv. polovičního duplexu, který umožňuje v každém
okamžiku přenášet jen jedním směrem. Je to analogie železniční tratě s jednou
kolejí - vlaky po ní mohou jezdit oběma směry, ale nikoli současně.
Naproti tomu varianta, kdy je možné přenášet oběma směry současně, je
označována jako tzv. plný duplex. V rámci analogie s železnicí by to dopovídalo
dvojkolejné trati.
Ještě ale k terminologii: někdy se lze i v češtině setkat s anglickými názvy
"half-duplex" (poloviční duplex, zkráceně poloduplex), a "full duplex" (plný
duplex).

Duplexní a poloduplexní přenosy
Důležité je rovněž si uvědomit, že různé varianty "duplexů" se nemusí týkat
pouze schopností přenosových médií a cest (resp. okruhů, v terminologii spojů)
jako takových. Mohou vypovídat také o tom, jak jsou tyto schopnosti využívány
pro konkrétní přenosy. Například můžeme mít přenosovou cestu, která je sama o
sobě plně duplexní. Z nějakého důvodu ji ale budeme využívat pouze
poloduplexně. To znamená, že nad plně duplexní přenosovou cestou budou probíhat
pouze poloduplexní přenosy.
Dělat to obráceně, tedy realizovat plně duplexní přenosy nad poloduplexní (či
dokonce jen simplexní) přenosovou cestou není v principu možné. Lze to ale
snadno obejít: stačí vzít dvě přenosové cesty (ať již poloduplexní či plně
simplexní) a každou z nich používat pro přenos jedním směrem.
Příkladem mohou být přenosy po optických vláknech, které jsou (bez dalších
opatření) pouze simplexní. Stačí ale použít jedno vlákno pro každý směr a je
možné realizovat plně duplexní přenosy.

Channel bundling
Další oblíbenou technikou, která souvisí s přenosovými kanály a jejich
"duplexností", či spíše "simplexností", je jejich slučování, resp. skládání
(známější spíše pod anglickým výrazem "channel bundling", případně "channel
bonding"). Jde o to, že v praxi nemusíme mít vždy k dispozici takový přenosový
kanál, který by svými parametry (hlavně rychlostí, resp. přenosovou kapacitou)
odpovídal potřebám zamýšlených přenosů. Někdy ale můžeme získat takových kanálů
více a používat je souběžně. Vlastně z nich jakoby složíme jeden větší (širší,
resp. rychlejší) přenosový kanál, který bude našim potřebám stačit. Právě tomu
se říká "channel bundling".
V praxi se s takovýmto spojováním kanálů můžeme setkat například u přípojek
ISDN. Ty nabízí přenosové kanály (kanály B, fakticky jde o obousměrné okruhy) o
rychlosti 64 Kb/s. Pokud nám tato rychlost nestačí, můžeme je spojovat (na
principu channel bundlingu) do větších celků, odpovídajících celistvým
násobkům. Vezmeme tedy vždy patřičný počet jednotlivých kanálů a používáme je
jako jeden výsledný (sloučený, "bundlovaný") kanál. Pozor ale na to, že právě u
ISDN přípojek je použití jednotlivých kanálů standardně zpoplatněno, a to
samostatně. Takže když použijeme n kanálů současně, platíme n-krát více!
Jiným příkladem mohou být mobilní sítě GSM. Ty vlastně také nabízejí dílčí
přenosové kanály (byť se jim říká timesloty, časové sloty, viz dále), v každém
z nich lze dosáhnout určité přenosové rychlosti (standardně buď 9,6 Kb/s v
případě Oskara a T-Mobile, 14,4 Kb/s u Eurotelu). Chceme-li dosáhnout vyšší
rychlosti, např. v rámci služeb GPRS, musíme použít více takových dílčích
kanálů (timeslotů) současně. Kolik jich skutečně využijeme, záleží na více
faktorech: na tom, zda je mobilní síť má momentálně k dispozici, zda je
provozovatel sítě (operátor) ochoten je uvolnit (resp. přidělit více timeslotů
stejnému uživateli) a také zda je naše mobilní zařízení schopné pracovat s více
timesloty současně. Když se dočtete, že nějaké zařízení podporuje GPRS se 4 + 2
timesloty, znamená to, že může využít nejvýše 4 timesloty pro přenosy ze sítě a
nejvýše 2 pro přenosy opačným směrem (do sítě).

Multiplex a inverzní multiplex
Techniku slučování kanálů (channel bundlingu) si můžeme představit jako řešení
problému s neexistencí dostatečně velkého (širokého) přenosového kanálu. Místo
něj se tedy použije patřičný počet menších (užších) kanálů, mezi něž se celkový
datový tok rozloží.
V praxi ale často nastává přesně opačný problém: máme jeden větší (širší)
přenosový kanál a potřebujeme jej rozdělit na několik dílčích částí, které by
se chovaly jako samostatné a na sobě nezávislé kanály. Tedy tak, aby po nich
bylo možné přenášet několik zcela samostatných a na sobě nezávislých datových
toků.
Řešení právě popsaného úkolu (rozdělení jednoho přenosového kanálu, případně
okruhu, na více částí) se obecně označuje jako "multiplexování", resp.
multiplex. Jeho představu obecně naznačuje obrázek, který jej dává do
protikladu s již popsaným slučováním kanálů (channel bundlingem). Snad je z
nákresu dostatečně zřejmé, proč se technice slučování kanálů někdy říká také
inverzní multiplex.

Frekvenční multiplex
Realizace multiplexu, neboli rozdělení jednoho přenosového kanálu na více
samostatně využitelných částí (kanálů), může být v praxi provedena různými
technikami, resp. postupy. Ty přitom mohou mít jak analogový, tak digitální
charakter.
Příkladem analogové techniky multiplexu je tzv. frekvenční multiplex (anglicky
FDM, Frequency Division Multiplexing). Lze si jej představit tak, že na každém
ze vstupních kanálů je analogový signál posunut do jiné "frekvenční polohy" (do
jiného rozsahu frekvencí), a to tak šikovně, aby se žádné polohy vzájemně
nepřekrývaly. Pak je možné takto frekvenčně posunuté signály jednoduše sečíst
(sloučit) do jednoho "širšího" signálu, a ten přenést přes dostatečně "široký"
přenosový kanál. Na druhé straně se pak provede obrácený postup: jednotlivé
dílčí signály se od sebe oddělí a vrátí do původní frekvenční polohy (do svého
původního frekvenčního rozsahu). Představu ilustruje obrázek.
V praxi ovšem frekvenční multiplex není příliš výhodný právě kvůli tomu, že jde
o analogovu techniku - různé frekvenční posuny, vzájemné slučování a následné
oddělování nejsou nikdy ideální a vždy určitým způsobem znehodnocují přenášený
signál. Jde jen o míru tohoto znehodnocení, ostatně jako u všech analogových
technik.
V minulém dílu tohoto seriálu jsme si ukazovali ještě jednu variantu
analogového multiplexu - multiplex vlnový (WDM, Wavelength Division
Multiplexing). Byl založen na tom, že přes jedno optické vlákno se přenášelo
více "svazků" světla, každý o trochu jiné frekvenci. Každý se choval samostatně
(jako samostatný přenosový kanál). V zásadě tedy šlo o specifickou variantu
frekvenčního multiplexu.

Časový multiplex
Z digitálních technik multiplexu je asi nejčastější multiplex časový (anglicky
TDM, Time Division Multiplexing). Můžeme si ho představit tak, že rozděluje
jeden "širší" přenosový kanál v čase - vždy jej na krátký časový úsek (časový
slot, timeslot) přidělí celý jednomu vstupnímu kanálu, na další krátký časový
úsek (časový slot) jej svěří jinému vstupu, a tak stále dokola.
Pokud tato představa není zcela srozumitelná, lze si pomoci analogií s vláčkem
a vagónky: přes "širší" přenosový kanál, který je dělen v čase pomocí časového
multiplexu, projíždí nekonečně dlouhý vláček. Má nekonečně mnoho vagónů, které
jsou všechny stejně velké (uvezou stejně velký náklad) a jsou pevně přiřazeny
jednotlivým vstupům. Například tak, že první vstupní kanál má vyhrazeny vagóny
č. 1, 3, 5, 7, druhý vagóny č. 2, 6, 10, 14 a třetí vstup pak 4, 8, 12 atd.
Rozdělení může být libovolné - ale s důležitým dovětkem, že je pevně dáno a
předem známo. Příjemce tedy nemusí nikdy přemýšlet o tom, komu patří obsah
určitého vagónu (časového úseku, resp. slotu). Jelikož zná příslušnou konvenci,
okamžitě ví, na který výstup má předat jeho obsah (vagónu, časového úseku,
timeslotu).
Rozdělení celkové přenosové kapacity (přidělení všech vagónů nekonečně dlouhého
vláčku) přitom nemusí být vůbec rovnoměrné. Časový multiplex může rozdělovat
celkovou přenosovou kapacitu "širšího" přenosového kanálu na různě velké části
(různě velké dílčí přenosové kanály). Stále však platí, že toto rozdělení je
pevně dáno a nemění se v čase.

Statistický multiplex
Fixní a v čase neměnný způsob rozdělení přenosové kapacity u časového
multiplexu může být jak výhodou, tak i nevýhodou. Výhodou je v situaci, kdy
jednotlivé vstupy generují rovnoměrné datové toky, bez významnějších odchylek v
čase. Pak skutečně má smysl a je efektivní rozdělit celkovou přenosovou
kapacitu na příslušný počet částí a toto rozdělení dále neměnit.
Jinak je tomu ale v situaci, kdy se objemy dat, procházející přes jednotlivé
vstupy, v čase významněji mění a kolísají. Problém nastává, když je skutečný
objem dat k přenesení menší, než se původně očekávalo (a odpovídá rozdělení
pomocí časového multiplexu). Pak totiž zůstává část přidělené kapacity
nevyužita a není možné ji přenechat jinému vstupu, který by ji naopak naléhavě
potřeboval, protože potřebuje přenést naopak více dat.
Pokud je třeba reflektovat měnící se zátěž (datové toky) na jednotlivých
vstupech a podle ní průběžně upravovat rozdělení celkové přenosové kapacity na
příslušný počet částí, už je nutné místo časového multiplexu použít multiplex
statistický (anglicky STDM, Statistical Time Division Multiplexing). Jeho
podstatu si lze přiblížit tak, že každý časový úsek (resp. vagón, v analogii se
železnicí) nemá pevně a dopředu určeno, jaký náklad bude přenášet. Místo toho
může být přidělen podle okamžité potřeby tomu vstupu (dílčímu přenosu), který
jej právě potřebuje.
Má to ale jeden závažný důsledek: příjemce se už nemůže spoléhat na to, že zná
konvenci o rozdělení celkové přenosové kapacity a tudíž dopředu ví, komu patří
obsah příslušného časového úseku (timeslotu, vagónu). Místo toho musí u
statistického multiplexu každý časový úsek sám o sobě a explicitně říkat, jaký
obsah přenáší. Spolu s "užitečnými" daty tak musí nést nějakou režijní
hlavičku, ve které je potřebná informace o příslušnosti dat obsažena.
Kolísání objemu dat na jednotlivých vstupech, se kterým si statistický
multiplex dokáže poradit (zatímco časový nikoli), může mít velmi racionální
původ. Jde zejména o použití různých kompresí, které mají co nejvíce zmenšit
objem dat, určených k přenosu. Například při přenosu zvuku (hlasu) či obrazu je
úspěšnost komprese (a s ní i velikost komprimovaných dat) závislá na dění na
scéně, resp. na průběhu zvuku. Naproti tomu bez použití komprese by generovaný
objem dat byl stejný, bez ohledu na to, co se na scéně právě děje, zda právě
někdo mlčí či naopak mluví atd.
Ve stručnosti proto lze konstatovat, že časový multiplex je vhodný pro
nekomprimované přenosy, zatímco statistický je vhodný pro přenosy využívající
komprese dat.

Kódový multiplex
Pro úplnost se musíme zmínit ještě o dalším druhu multiplexu, jímž je multiplex
kódový (CDM, Code Division Multiplexing). Jeho princip si lze nejlépe
představit na příkladu rádiových přenosů s několika na sobě nezávislými
vysílači a přijímači, přičemž všechny tyto přijímače a vysílače využívají
stejný rozsah frekvencí. Vše pak funguje tak, že každý vysílač svá data nejprve
vhodně zakóduje a pak rovnou vysílá, na stejné frekvenci jako ostatní vysílače.
V éteru pak sice dochází ke "smíchání" všech takto vysílaných signálů, ale
důležité je, že není nevratné. Naopak, každý přijímač by měl být schopen z
přijaté "směsi" extrahovat právě to, co vyslal konkrétní vysílač, jehož data
chce přijímat. Představu ilustruje obrázek, který znázorňuje různé signály
(složky) prostřednictvím barev.
Vysvětlení toho, proč je "smíchání" jednotlivých signálů v éteru vratné a jak
lze následně extrahovat z výsledné "směsi" jednotlivé složky, je poněkud
komplikovanější a vydalo by spíše na samostatný článek. Ve stručnosti si ale
můžeme naznačit, že vše je skryto ve způsobu, jakým jednotlivé vysílače kódují
vysílaný signál, resp. data. Musí být použito specifické kódování (u každého
vysílače jiné), které příjemci umožní provést opačný postup (dekódování) a díky
němu získat ze "směsi" požadovanou původní složku či složky. Proto také
označení "kódový multiplex".
Kódový multiplex má jednu zajímavou vlastnost, kterou je vhodné zde zmínit.
Pokud je použit pro rádiové přenosy, jak jsme si právě naznačili, je velmi
šetrný vůči přírodním zdrojům, konkrétně použitým frekvencím. Například
frekvenční multiplex s nimi naopak spíše plýtvá, protože když posouvá
jednotlivé složky (dílčí přenosy) do různých frekvenčních poloh, musí mezi nimi
dělat i určité nenulové odstupy, aby se vzájemně neovlivňovaly a bylo možné je
od sebe zase správně oddělit. Frekvenční multiplex vlastně přenáší svou režii
do vyšší spotřeby frekvencí. Těch je ale od přírody málo, a tak je nutné s nimi
hospodařit co nejefektivněji.
Naproti tomu kódový multiplex "pouští" všechny dílčí přenosy (složky) do
jednoho (a tudíž stejného) frekvenčního pásma, kde dochází k jejich vzájemnému
smíchání. Režie, která je spojena s jejich opětovným oddělením, jde ale na vrub
výpočetní kapacitě jednotlivých odesilatelů a hlavně příjemců. Oni musí provést
příslušné dekódování. K tomu potřebují příslušnou výpočetní kapacitu (procesor,
paměť atd.). Ovšem výpočetní kapacita, na rozdíl od frekvencí, je prakticky
libovolně "nafukovatelná" - lze ji přidávat podle potřeby a její cena navíc
postupně klesá.

Multiplex jako metoda řízení přístupu
Kódový multiplex je tedy šetrný vůči vzácným přírodním zdrojům (frekvencím). To
je důvod, proč je s oblibou používán i v situaci, kdy určitý počet stanic
soupeří o využití jednoho společného přenosového kanálu. K tomu dochází
například v mobilních sítích, protože jejich provozovatelé (mobilní operátoři)
dostali ve svých licencích k dispozici jen určitý omezený rozsah frekvencí
(frekvenčních kanálů), které smí využívat. Proto se operátoři snaží využívat
jednotlivé frekvenční kanály opakovaně a kvůli tomu rozdělují svou síť na buňky
V počítačových sítích se data přenášejí mnoha různými způsoby a s využitím
různých technik. Některé přenosy jsou například plně duplexní, zatímco jiné jen
simplexní. A jak postupovat, pokud potřebujeme rozdělit jeden přenosový kanál
mezi více dílčích přenosů? Jaké techniky multiplexu se k tomu používají?
Konkrétně český regulátor (Český telekomunikační úřad) vyčlenil pro potřeby
mobilních sítí GSM určitý rozsah frekvencí v pásmu 900 MHz (a později i v pásmu
1 800 MHz). Tento rozsah frekvencí pak rozdělil, na principu frekvenčního
multiplexu, na jednotlivé frekvenční kanály, vždy o šířce 200 kHz. Celkem jich
takto v pásmu 900 MHz vzniklo 124. Regulátor dal každému z mobilních operátorů
určitý počet - viz obrázek.
Pro nás je ale v tuto chvíli podstatné něco jiného: i v rámci každé buňky jsou
frekvenční kanály určitým způsobem sdíleny jednotlivými mobilními stanicemi
(terminály), resp. rozděleny mezi ně. A k tomu je již využit multiplex časový.
Když vše hodně zjednodušíme, každý frekvenční kanál je v GSM rozdělen pomocí
časového multiplexu na 8 časových slotů (timeslotů). Představu ilustruje další
obrázek.
Mobilní telefony v sítích GSM pak při telefonování využívají vždy jeden
timeslot pro přenos (digitalizovaného lidského hlasu) v jednom směru, a jeden
timeslot pro přenos v opačném směru. Jak jsme již uvedli, pro datové přenosy se
může využívat i více timeslotů současně.
Síť GSM tedy využívá techniky časového multiplexu k řízení přístupu svých
stanic ke společnému přenosovému médiu, v podobě příslušného frekvenčního
kanálu. Kvůli tomuto konkrétnímu využití, pro potřeby řízení přístupu (anglicky
Access Control), se pak také hovoří o řízení přístupu na bázi časového
multiplexu (zkratka TDMA, Time Division Multiple Access), nebo o řízení
přístupu na bázi frekvenčního multiplexu (FDMA, Frequency Division Multiple
Access).
Ovšem GSM není jediný standard pro mobilní sítě, který se používá. Existují i
jiné, využívající pro sdílení přenosového média (frekvenčních kanálů) a řízení
přístupu jednotlivých stanic úplně jiné metody než časový multiplex, resp.
TDMA. Zejména v zámoří jsou oblíbené mobilní sítě, využívající k danému účelu
techniky kódového multiplexu. Ten je při daném využití (pro potřeby řízení
přístupu) již označován jako CDMA (Code Division Multiple Access). Snad netřeba
připomínat, že i v ČR máme jednu CDMA síť - provozuje ji Eurotel, v pásmu 450
MHz, a to výhradně pro datové přenosy (nikoli pro hlas).

TDD a FDD
Na závěr se musíme zmínit ještě o jedné související technice, a to o technice
tzv. duplexingu. Jak už její název napovídá, jde o způsob, jak je v
bezdrátových sítích řešena komunikace v obou směrech. Základní možnosti jsou
dvě, ilustruje je další obrázek.
( Technika tzv. frekvenčního duplexu (FDD, Frequency Division Duplex)
předpokládá, že pro každý ze směrů jsou použity samostatné (a tudíž různé)
frekvenční rozsahy. Takto je to řešeno například v GSM, kde je fakticky
vyhrazeno 2 x 124 frekvenčních kanálů: 124 v pásmu 890-915 MHz pro tzv. uplink
(směr od mobilního terminálu do sítě) a 124 v pásmu 935 až 960 MHz pro opačný
směr, tzv. downlink.
( Technika tzv. časového duplexu (TDD, Time Division Duplex) předpokládá, že
pro komunikaci v obou směrech se používají stejné frekvence, ale střídavě v
čase. Každý timeslot je vždy použit pro přenos jedním směrem, ale další
timeslot již může být využit pro přenos opačným směrem.
Zajímavé je, že obě tyto techniky nejsou zcela rovnocenné, pokud jde o jejich
vhodnost pro potřeby datových služeb. V případě hlasových služeb ještě nikoli,
protože zde je "spotřeba" přenosových kapacit v obou směrech v zásadě stejná. V
případě datových přenosů bývají požadavky asymetrické, konkrétně vyšší ve směru
downlinku (od sítě k uživateli) a nižší v opačném směru. Technika frekvenčního
duplexu, v jejímž rámci by pro oba směry byl vyhrazen stejný počet frekvenčních
kanálů, by pak nebyla nejvhodnější. Naopak technika časového duplexu umožňuje
rozkládat celkovou přenosovou kapacitu mezi oba směry podle momentálních potřeb.