Báječný svět počítačových sítí
Část XXIII.: Bezdrátový Ethernet
Vývoj Ethernetu se neubíral pouze cestou zrychlování a zvětšování dosahu „po drátech“, ať již po kroucené dvoulince či po optických vláknech. Časem zákonitě došlo i na myšlenku, zda to nezkusit bez drátů. Podařilo se, a po prvních nesmělých krůčcích se bezdrátový Ethernet vydal dobývat svět. A i zde uspěl, dokonce navýsost dobře. A to i bez jména „Ethernet“, kterého se bezdrátová verze časem zbavila. Dnes o ní nejčastěji hovoříme jako o technologii Wi-Fi, i když ani to není úplně přesně. Wi-Fi je totiž jen něco jako nálepka, stvrzující že určité řešení plně vyhovuje příslušným standardům a je kompatibilní s dalšími produkty, které vychází ze stejných standardů.pImpulsů, které otevřely cestu k bezdrátovému Ethernetu, bylo určitě více. Kromě snahy zbavit se závislosti na drátech to určitě bylo i rozhodnutí amerického regulátora (FCC, Federal Communications Commission) z roku 1985, kterým tento úřad uvolnil tři „odpadková“ frekvenční pásma pro bezlicenční využití. To byl významný průlom do tehdejší praxe, která (snad kromě radioamatérských pásem) počítala jen s licenčním principem využití frekvenčního spektra. Tedy s tím, že pokud chtěl někdo na nějakých frekvencích něco vysílat, musel k tomu mít individuální oprávnění (individuální licenci). FCC však tehdy zvolil bezlicenční princip, v rámci kterého individuální licence nejsou potřeba a každý, kdo chce určité frekvence využít, tak může učinit - a nepotřebuje k tomu žádnou individuální licenci.
Samozřejmě to neznamená, že si každý může v takovýchto bezlicenčních pásmech může dělat co chce. I pro pásma, využívaná na bezlicenční principu, vždy existují určitá pravidla, která říkají co a jak se v nich smí a co naopak nesmí Třeba jaké vysílací výkony nesmí být překročeny. Nebo když dojde k rušení, že musí přestat vysílat ten, kdo začal jako poslední. Všechna takováto pravidla pak jsou zakotvena v “generálních licencích“, které vydává správce kmitočtového spektra a které nejsou adresné - nemají charakter individuálního povolení, ale povolení generálního.
Podmínkou je rozprostření do širšího spektra
V roce 1985 takto americký regulátor uvolnil pro bezlicenční využití celkem tři rozsahy frekvencí ve dvou pásmech, označovaných jako “ISM“ (Industry, Science and Medical, tedy pro využití v oblasti průmyslu, vědy a zdravotnictví), a UNII (Unlicensed National Information Infrastructure). Jak už název druhého pásma naznačuje, jeho vymezení je spíše „národní“, resp. „hodně americké“, a v dalších částech světa může, ale nemusí mít ekvivalenty. Naproti tomu první pásmo (ISM) má charakter podstatně více mezinárodní, a s možností jeho využití na bezlicenčním principu se dnes lze setkat v podstatně více zemích. Tedy alespoň pokud jde oblast 2,4 GHz. Naproti tomu oblast 5 GHz (v pásmu UNII) se pro licenční využití v ostatních zemích prosazovalo podstatně pomaleji. Například v ČR se tak stalo až 1. září 2005.
Uvolněním popisovaných pásem pro bezlicenční využití poskytl americký regulátor mocný impuls všem snahám o bezdrátová řešení. Současně ale jednou částí svého rozhodnutí dost podstatně ovlivnil i jejich konkrétní podobu. Dal si totiž podmínku, že v těchto nově bezlicenčních pásmech mají být používána řešení „širokopásmová“, fungující na principu rozprostření do širšího spektra (spread spectrum), která jsou podstatně šetrnější k životnímu prostředí. Při klasickém vysílání (tzv. „úzkopásmovém“) je energie vyzařovaná vysílačem soustředěna do úzkého rozsahu frekvencí, a svou intenzitou musí převýšit úroveň šumu, neboť příjemce vyhodnocuje fakticky jen to, co přesáhne hladinu šumu.
Ovšem při “širokopásmovém“ přenosu se využívají takové techniky, které umožňují aby vysílač vysílal v širším rozsahu frekvencí (aby své vysílání doslova „rozprostřel do širšího spektra“), a mohl vysílat jen s nižší intenzitou, která ani nemusí přesahovat hladinu šumu. Podstatné je to, aby příjemce věděl, jakým způsobem k „rozprostření do šířky“ došlo, a uměl zpětně extrahovat užitečný signál, smíchaný s šumem. Naopak tomu, kdo potřebné informace o způsobu rozprostření nemá, se přijímaný signál jeví jen jako neužitečný šum. Výsledným efektem je pak větší robustnost přenosů, a naopak menší šance vzájemného ovlivňování různých přenosů. Ostatně, jednou z motivací amerického regulátora pro takovýto požadavek byla snaha co nejvíce omezit rušivé vlivy od jiných „zářičů“ ve stejných frekvenčních pásmech. Tedy například od mikrovlnných trub.
Rodí se bezdrátový Ethernet
První snahy přenést do té doby drátový Ethernet i do bezdrátové podoby, a využít k tomu nově uvolněná frekvenční pásma, na sebe nenechaly dlouho čekat. Historické anály přitom říkají, že iniciátorem těchto snah byla společnost NCR, která měla poměrně zajímavou motivaci: vyráběla totiž různá zařízení, mezi nimi i pokladny (do obchodů), a hledala možnost jak je propojit mezi sebou, bez nutnosti „tahat dráty“. A tak z její iniciativy vzniká v roce 1988, na půdě společnosti IEEE (Institute of Electrical and Electronics Engineers) další pracovní skupina, aby se navrhovanému řešení věnovala. Jde tedy o stejnou platformu (IEEE), na které vznikaly a nadále vznikají standardy Ethernetu, v rámci pracovní skupiny IEEE 802.3. Ovšem bezdrátová varianta Ethernetu od začátku měla svou vlastní pracovní skupinu, očíslovanou jako IEEE 802.11.
Trvalo však ještě devět dlouhých let, než práce na „bezdrátovém Ethernetu“ přinesly první ovoce. Teprve v roce 1997 se totiž podařilo najít v rámci pracovní skupiny 802.11 shodu na tom, jak by celé řešení mělo vypadat. Takže teprve tehdy se zrodil první standard bezdrátové varianty Ethernetu, označovaný podle svého původu jako „IEEE 802.11“. Nepleťme si ho ještě s dnešním Wi-Fi, protože do něj měl stále poměrně daleko. Byl to jen jeho předchůdce. Navíc mnohem méně výkonný. Dokázal totiž přenášet data (nominální) rychlostí jen 1 či 2 megabity za sekundu. Už měl ale vyvinuty ty přístupové metody, které používá i dnešní Wi-FI. A pokud jde o možné techniky vysílání, alias řešení své fyzické vrstvy, zde tento první bezdrátový Ethernet nabízel dokonce více možností než dnešní Wi-Fi.
Ovšem už v době svého vydání byl tento standard bezdrátového Ethernetu zastaralý, a poměrně brzy byl nahrazen dalšími standardy. V roce 1999 tak spatřily světlo světa další dvě verze, a to IEEE 802.11a a IEEE 802.11b. No a ty už jsou tím, co dnes známe a používáme jako Wi-Fi. Ale nepředbíhejme.
Tři varianty řešení fyzické vrstvy
První varianta bezdrátového Ethernetu, kterou je standard IEEE 802.11 (pozor, ještě bez dalšího rozlišujícího písmene na konci), počítala celkem se třemi vzájemně alternativními možnostmi fungování své fyzické vrstvy, resp. způsoby vysílání a přenosu dat bezdrátovým éterem. Tedy vlastně se třemi různými technikami rozprostření do šířky (do širšího frekvenčního spektra).
Jedna z těchto technik je označována jako tzv. frequency hopping (FHSS, Frequency Hopping Spread Spektrum). Jde o rychlé přeskakování z jedné frekvence na druhou, resp. z jednoho úzkého frekvenčního kanálu na jiný, způsobem který může vypadat jako zcela náhodný, ale oběma komunikujícím stranám je dopředu znám (je tzv. pseudonáhodný). Vysílač i příjímač pak vždy „zůstávají“ na každém jednotlivém frekvenčním kanále jen velmi krátkou doby, načež oba současně přechází na jiný frekvenční kanál – a tak stále dokola. Výhoda je i v tom, že pokud mezi stejnými frekvenčními kanály „přeskakuje“ nějaký jiný přenos, podle své vlastní pseudonáhodné posloupnosti kanálů, je šance že se oba přenosy ve stejném čase sejdou na stejných frekvencích relativně malá. A pokud k ní dojde, dají se dopady krátkého vzájemného zarušení snadno napravit. Nebo se dají i ignorovat, například u multimediálních přenosů, které si tolik nepotrpí na spolehlivost přenosů. Celou představu ukazuje následující obrázek.
U bezdrátového Ethernetu (tj. u standardu IEEE 802.11) se předpokládalo poměrně pomalé přeskakování (hopping), a to 2,5krát za sekundu. Pro srovnání: stejná technika se dnes používá u technologie Bluetooth, ale zde dochází k přeskokům podstatně rychleji, 1600x za sekundu.
Další možností, kterou mohl bezdrátový Ethernet využívat, byly infračervené přenosy (DFIr, Difuse InfraRed), v pásmu 300 až 428 GHz. Ovšem tato varianta se používala zcela minimálně. Naopak jako nejperspektivnější se ukázala třetí varianta, označovaná jako „přímé rozprostření do spektra“, resp. „s přímou modulací kódovou posloupností“ (zkratkou DSSS, z anglického DSSs, Direct Sequence Spread Spectrum). Ta už nepočítá s přeskoky či jinými změnami frekvencí, ale s tím, že se trvale vysílá v širším rozsahu frekvencí. Navíc se zde nevysílají přímo jednotlivé datové bity, ale místo nich celé sekvence bitů, označované jako tzv. chipy (česky snad: úlomky). Můžeme si to představit tak, že pokud je třeba přenést jedničkový datový bit, vyšle se místo něj skupina bitů tvořících chip. Pokud se naopak má přenést jedničkový datový bit, vyšle se místo něj stejná sekvence bitů (chip), ale invertovaná. Vše naznačuje následující obrázek.
Řízení přístupu u bezdrátového Ethernetu
Stejně jako jeho „drátový“ předek, musel se i bezdrátový Ethernet nějak vyrovnat se sdílenou povahou použitého přenosového média. Sdílenou proto, že podobně jako na původním koaxiálním kabelovém segmentu může i bezdrátově vysílat vždy jen jeden uzel (a ostatní mohou poslouchat). Ale jakmile začne vysílat více uzlů současně (ve vzájemném dosahu), dochází ke kolizi: jejich vysílání se „střetávají“ a vzájemně nenávratně promíchávají.
U drátového Ethernetu řešila problém přístupu ke sdílenému média přístupová metoda CSMA/CD. Předpokládala, že je možný příposlech nosné (CS, Carrier Sense), a tedy že každý uzel si může nejprve poslechnout, zda nevysílá někdo jiný. U bezdrátového Ethernetu je příposlech nosné stále možný, a tak ho zájemci o vysílání používají. Jen se liší v tom, jak zareagují v případě, kdy zjistí že někdo již vysílá. U drátového Ethernetu, v rámci přístupové metody CSMA/CD, uzel čeká na konec vysílání, a jakmile toto skončí, začne vysílat sám. Je tedy „vytrvalý“, neboli tzv. 1-persistentní.
V případě bezdrátového Ethernetu je to naopak: uzel, který zjistí že právě vysílá někdo jiný, to okamžité „vzdá“: hodí si kostkou, odmlčí se na náhodně dlouhou dobu (takovou, jakou mu určilo hození pomyslné kostky, jako prvku náhody), a teprve pak vše zkouší znovu, počínaje příposlechem nosné. Toto chování odpovídá tzv. 0 persistentnosti. Rozdíl mezi oběma přístupy ukazuje následující obrázek.
Důvodem pro tuto zajímavou odlišnost je to, že u bezdrátového vysílání nelze (jednoduše) detekovat kolize. Rádiová rozhraní jsou totiž obvykle jen poloduplexní, v tom smyslu že buďto přijímají nebo naopak vysílají, ale nikoli současně. Proto nedokáží vysílat a současně s tím skrze příjem monitorovat, zda v éteru nedošlo ke kolizi. Ostatně, proto také přístupová metoda bezdrátového Ethernetu není (a nemůže být) metodou CSMA/CD, neboli s detekcí kolize (CD, Collision Detect). Místo toho se označuje jako CSMA/CA, přičemž ono „CA“ na konci značí „Collision Avoidance“, neboli předcházení kolizím. To je ale poněkud nadnesené označení, protože popsaný přístup nedokáže zcela zabránit všem kolizím. Samotný příposlech nosné (CS, Carrier Sense) před začátkem vlastního vysílání sice dokáže počet kolizí poměrně významně zmenšit, ale ne zcela vyloučit.
Jak se tedy v bezdrátovém Ethernetu řeší kolize, když k nim stále může docházet? Odpověď je zajímavá: nijak. Vše se řeší skrze potvrzování: příjemce, který v pořádku přijal přenášená data, má povinnost poslat odesilateli potvrzení o jejich doručení. Pokud odesilatel nedostane takovéto potvrzení do určitého časového limitu, považuje to za ztrátu původně odeslaných dat (ať již kvůli kolizi či z jiného důvodu) a snaží se je odeslat znovu.
Problém skryté a předsunuté stanice
Řízení přístupu ke společně sdílenému médiu (éteru) má u bezdrátového Ethernetu (a obecně u bezdrátových přenosů jako takových) dva specifické problémy, obvykle označované jako problém skryté a předsunuté stanice. Lze si je nejlépe představit na následujících dvou obrázcích, se čtyřmi stanicemi A až D.
Na prvním obrázku vidíme problém skryté stanice: stanice C zde vysílá, a stanice B její vysílání přijímá. Vysílání stanice C ale není tak silné, aby dosáhlo až ke stanici A. Pokud by ta chtěla začít vysílat, nejprve by pomocí příposlechu nosné (CS) dospěla k závěru, že právě nikdo nevysílá. A tak by stanice A začala vysílat sama, čímž by ale s velkou pravděpodobností narušila právě probíhající komunikaci mezi stanicemi B a C. Ty by to následně poznaly až z absence potvrzení správně přenesených dat.
Na druhém obrázku vidíme jinou situaci, která představuje problém tzv. předsunuté stanice. Zde stanice B komunikuje se stanicí A, ale její vysílání je všesměrové a tak jej může přijímat také stanice C. Ta by sama chtěla komunikovat se stanicí D, a to by mohla (vzájemná vysílání mezi B a A, a mezi C a D by se nerušila). Jenže když stanice C použije příposlech nosné (CS), zjistí že někdo právě vysílá a tak sama vysílat nezačne, a podle pravidel přístupové metody CSMA/CA se odmlčí na náhodnou dobu. A teprve pak zkouší vše znovu.
Až dosud popisované chování, na základě přístupové metody CSMA/CA a bez ošetření hrozícího problému skryté a předsunuté stanice, představuje nejjednodušší variantu řízení přístupu u bezdrátového Ethernetu. Tato varianta je označována také jako metoda DCF, což je zkratka od Distributed Coordination Function.
Pro řešení problému skryté a předsunuté stanice byla metoda DCF rozšířena o další variantu, označovanou jako „DCF se zprávami RTS/CTS“. Její princip si lze představit tak, že když dvě stanice chtějí vzájemně komunikovat a předávat si data, nejprve upozorní své okolí (resp. všechny stanice, které se právě nachází v dosahu jejich vysílání), že tak budou činit a že je ostatní nemají vyrušovat. Navíc jim řeknou, jak dlouho bude jejich komunikace probíhat, a tak ostatní uzly v dosahu vědí, jak dlouho mají být zticha.
Konkrétní fungování této metody naznačují následující dva obrázky. První ukazuje, jak stanice, která je iniciátorem komunikace, rozešle do svého okolí zprávu, v podobě speciálního rámce RTS (Request To Send). Ten obsahuje vektor NAV (Network Allocation Vector), který není ničím jiným než údajem o tom, jak dlouho bude budoucí komunikace probíhat. Všechny stanice, které tento rámec přijmout, tedy na tuto dobu přestanou vysílat.
Zpráva v rámci RTS kromě vektoru NAV také identifikuje stanici C jako „tu, se kterou chce stanice B komunikovat“. A tak stanice C zareaguje vysláním „potvrzující“ zprávy CTS (Clear To Send), která také obsahuje (aktualizovaný) údaj o délce budoucího vysílání. Tuto zprávu zachytí všechny stanice v dosahu stanice C, a díky ní vědí, že musí zůstat zticha (i na jak dlouho). Pak už komunikace mezi stanicemi B a C může probíhat, a ostatní stanice by do ní neměly zasahovat.
Ani uvedený postup se zprávami RTS a CTS však není schopen zaručit, že žádná jiná stanice nenaruší komunikaci, probíhající mezi uzly B a C (v našem případě). Již jen proto, že u bezdrátových přenosů není poloha stanic fixována, a tak se do blízkosti komunikujících stanic může dostat nějaká jiná stanice, která se neúčastnila původního dialogu se zprávami RTS a CTS a tudíž neví, že by měla být zticha.
Další vývoj bezdrátového Ethernetu
Zpět ale ke standardu IEEE 802.11, o kterém se ještě hovořilo jako o Ethernetu: následující obrázek shrnuje to, co jsme si o něm již řekli. Konkrétně že na úrovni fyzické vrstvy nabízí tři alternativní řešení, představující tři různé varianty bezdrátových přenosů: prostřednictvím techniky infračerveného přenosu, pomocí frekvenčních přeskoků (Frequency Hopping, FHSS), a s přímým rozprostřením do širšího spektra (Direct Sequence Spread Spectrum, DSSS). Nezapomínejme na to, že rychlostní maximum všech těchto variant byly 2 Mbity za sekundu.
Nad trojím možným řešením fyzické vrstvy pak byla implementována distribuovaná metoda řízení přístupu DCF (Distributed Coordination Function), fungující na principu CSMA/CA a popisovaná výše. Případně ještě metoda PCF (Point Coordination Function), která je centralizovaná a řízená: předpokládá, že jedna konkrétní stanice je pověřena řízením, a že ostatním stanicím přiděluje právo vysílat na základě jejich žádostí. Ale tato metoda přístupu je i dnes velmi vzácná.
Jak jsme si již uvedli výše, standard IEEE 802.11, přijatý v roce 1987 a označovaný jako bezdrátový Ethernet, byl zastaralý už v době svého přijetí. Snahy o jeho zdokonalení se ubíraly především směrem ke zrychlení datových přenosů, a byly úspěšné. Vyžadovaly ovšem poměrně zásadní změnu ve způsobu realizace fyzické vrstvy, neboť právě ona rozhoduje o rychlosti přenosu dat.
Proto když v roce 1999 spatřily světlo světa dva další standardy, IEEE 802.11a a IEEE 802.11b, řešení jejich fyzické vrstvy bylo podstatně jiné. Jak se lišilo, naznačuje následující obrázek:
Standard IEEE 802.11b, který je do dnešních dnů (nejen v ČR) asi nejrozšířenější, si ponechal pouze jednu ze tří původních variant řešení fyzické vrstvy, a to přímé rozprostření do spektra (DSSS). Stejně tak mu zůstalo fungování v pásmu 2,4 GHz, ale oproti původnímu standardu IEEE 802.11 dokázal podstatně zrychlit: z 2 Mbit/s až na 11 Mbit/s. To druhý standard, IEEE 802.11a, šel ještě dále, a dostal se až na úctyhodných 54 Mbit/s (vše ovšem jen nominálně, efektivní přenosové rychlosti jsou vždy podstatně nižší). Dosaženo toho bylo použitím úplně jiného řešení fyzické vrstvy, a to na bázi tzv. ortogonálního frekvenčního multiplexu (OFDM). Současně pak i přechodem do jiného bezlicenčního pásma – 5 GHz.
V ČR se mohou používat produkty, vycházející z obou těchto variant, i když u druhé z nich jen s určitými omezeními. Už se ale v souvislost s nimi nehovoří o bezdrátovém Ethernetu, protože tak se označoval jen původní standard IEEE 802.11 z roku 1997 (s max. rychlostí 2 Mbit/s). Spíše se o nich mluví jako o Wi-Fi, i když ani toto označení není vůbec přesné. Samotné Wi-Fi je totiž něčím jako nálepkou, stvrzující že konkrétní produkt vyhovuje standardu IEEE 802.11a nebo 802.11b a je plně kompatibilní a interoperabilní s jinými produkty, které vychází ze stejných standardů. Ale to si už nechme na další díl tohoto seriálu, protože o Wi-Fi si toho musíme ještě hodně říci.