24. Jak pracuje modem

Osobní počítač je digitální zařízení. Data jsou reprezentována posloupností 0 a 1. Telefonní systém je analogové zařízení. Vznikl v době, kdy digitální elektronika nebyla známá. Je určen pro přenos různých zvuků a tónů lidského hlasu. Hlas je transportován elektronicky pomocí analogového signálu jako spojitý elektrický proud, jehož frekvence mírně kolísá.

Modem je můstkem mezi digitálními a analogovými signály. Převádí digitální data na analogové signály změnou (modulací) kmitočtu. Na přijímacím konci telefonického spojení dělá pravý opak: demoduluje analogové signály zpět do digitálního kódu. Výrazy MOdulace a DEModulace dávají modemu jeho jméno. Modemová komunikace pracuje se třemi nejméně standardizovanými prvky osobního počítače, kterými jsou sériový port, příkazy pro modem a komunikační software. Neslučitelnosti znemožňují popsat nějaký univerzální způsob, jak všechny modemy pracují, nicméně operace zde uvedené přesně popisují většinu programů, které používají sadu příkazů pro modem Hayes s 25 ti kolíkovým sériovým portem.

Modem
1. Váš komunikační software přivádí napětí na kolík 20 sériového portu, ke kterému je připojen modem. Napětí představuje signál jménem Data Terminal Ready nebo krátce signál DTR. Sděluje modemu, že počítač je zapnut a přípraven přenášet data. Ve stejnou dobu počítač zkoumá napětí z modemu na kolíku 6 - signál Data Set Ready, krátce signál DSR - který zase počítači oznamuje, že modem je připraven přenášet data nebo povely. U normálního modemového spojení musí být oba dva signály přítomny předtím, než se může stát cokoliv jiného.
2. Používáme-li standardní komunikační jazyk, vyšle komunikační software po vodiči 2 (vodič Transmit Data DT), povel do modemu. Povel nařizuje modemu, aby zvedl sluchátko a zahájil komunikaci na telefonní lince. Software pokračuje dalším povelem Hayes, který nařizuje modemu, aby vydal tónové nebo pulsní signály potřebné pro volbu daného telefonního čísla. Modem povel potvrdí tím, že ho počítači zopakuje na vodiči 3, vodič Receive Data (RD).
3. Pokud modem na druhém konci telefonního spojení - vzdálený modem - na volání odpoví, vyšle místní modem pozdravný tón, aby vzdálený modem věděl, že ho volá jiný modem. Vzdálený modem odpoví o něco výše posazeným tónem. (Pokud je váš modem vybaven reproduktorem, opravdu uslyšíte dva tóny).
4. Po navázání spojeni vyšle místní modem do počítače po vodiči 8 signál Carrier Detect (CD). Signál sděluje komunikačnímu software, že modem přijímá nosný signál, což je stabilní tón o určitém kmitočtu, který bude později modulován přenášenými daty.
5. Oba modemy si vzájemně vymění informace o tom, jak si hodlají posílat data. Tomuto procesu se říká anglickým slovem handshake. Oba dva modemy se musí shodnout na přenosové rychlosti, počtu bitů, které tvoří datový paket - např. jeden byte - kolik bitů bude označovat začátek a konec paketu, zda modemy budou používat paritní bity pro kontrolu chyb a zda budou pracovat v poloduplexu nebo plném duplexu. Pokud místní a vzdálený modem nepoužijí tatáž nastavení, budou buď rozmotávat vysílané znaky, které nedávají smysl nebo budou komunikaci vůbec odmítat.
6. Chce-li komunikační software vyslat data, nejprve po vodiči 4 pošle do sériového portu napětí. Tento signál Request to Send (RTS) ve skutečnosti zjišťuje, zda je modem volný pro příjem dat z počítače. Jestliže modem přijímá vzdálená data, která chce předat do počítače v okamžiku, kdy počítač dělá něco jiného (jako třeba ukládání dřívějších dat na disk), počítač v tom případě signál RTS přeruší, a sdělí tak modemu, aby přestal se zasíláním dat, dokud si počítač neukončí svoji práci a znovu nevydá signál RTS.
7. Není-li modem příliš zaneprázdněn zpracováváním jiných dat a může tedy přijmout z vašeho systému nová data, vrátí na sériovém vodiči 5 signál Clear to Send (CTS), načež počítač zašle přenášená data po vodiči 2. Modem zasílá data, která obdržel od vzdáleného systému do počítače po vodiči 3. Když modem nemůže přenášet data tak rychle, jak mu je posílá počítač, modem přeruší signál CTS a sdělí tím počítači, aby na chvíli přestal s dalšími daty, dokud se modem nevzpamatuje a signál neobnoví.
8. Na druhém konci telefonního vedení slyší vzdálený modem přicházející data jako řadu tónů s různými kmitočty. Demoduluje tóny zpět na digitální signály a ty odešle přijímacímu počítači. Ve skutečnosti mohou oba počítače posílat signály sem a tam současně, protože používaný standardní systém tónů umožňuje modemům na obou koncích rozlišit přijímané vysílané signály.
9. Požádáte-li komunikační software o ukončení komunikační relace, zašle do modemu jiný povel Hayes, který způsobí přerušení telefonního spojení. Pokud je spojení přerušeno vzdáleným systémem, váš modem přeruší signál Carrier Detect do počítače, aby informoval software, že komunikace je přerušena.

Přenosová rychlost. Třebaže se přenosová rychlost často vyjadřuje v jednotkách jménem baud - což je počet kmitočtových změn za sekundu - jde o jednotku zastaralou. Dnes se používá přesnější jednotka - bit za sekundu. Přenosová rychlost činila u raných modemů 300 bitů za sekundu a dosahovala se zasíláním jednoho kmitočtu, který znamenal 0 a jiného kmitočtu znamenajícího 1. Analogový signál na telefonní lince je omezen tím, jak rychle se mohou přepínat kmitočty, které jsou součástí vynuceného rozdílového schématu pro zvýšení rychlosti přenosu dat.

Skupinové kódování umožňuje, aby různé kmitočty znamenaly více než jeden bit. Pro přenosy rychlostí např. 1200 bitů za sekundu jsou signály ve skutečnosti přenášeny modulační rychlostí 600 baudů, ale pro reprezentaci tří různých možných párů bitů - 0/0, 0/1 a 1/1 - jsou použity tři různé kmitočty. Podobné schéma používá více frekvencí s větším množstvím informace pro dosažení rychlosti 2400 bitů za sekundu. Pro ještě větší přenosové rychlosti musejí oba dva modemy používat tutéž metodu komprimace dat, spočívající v rozpoznání často se opakujících posloupností nul a jedniček a použití zkratek místo těchto posloupností.

Datové bity. Komunikační systémy mohou pro zobrazení datových paketů používat buď sedm nebo osm bitů.

Start/stop bity. Každý datový paket používá jeden bit pro označení začátku znaku a jeden nebo dva bity pro ukončení znaku. Zde uvedený příklad používá jeden stop bit.

Paritní bit. Jako používanou formu opravy chyb si oba systémy mohou dohodnout sudou paritu, lichou paritu nebo vůbec žádnou paritu. Jestliže se domluví na sudé nebo liché paritě, oba systémy předávají bity obsažené ve znaku a za ně přidají jiný bit, kterému se říká paritní. Může být buď 0 nebo 1, podle toho co se hodí, aby počet všech jedničkových bitů v celé posloupnosti byl buď sudý nebo lichý v závislosti na dohodnutém typu parity.

Poloviční/plný duplex. Oba dva systémy se musí dohodnout na tom, kdo je zodpovědný za výpis textu na místním počítači. Jeden systém musí být nastaven pro plný duplex a druhý na poloviční duplex. Systém, používající plný duplex je zodpovědný za výpis textu na obou systémech a echuje jakýkoliv text, který je mu zaslán pomocí poloduplexního systému. Pokud tyto dva systémy nepoužívají komplementárně nastavený duplex, na místním systému se buď neobjeví žádný text nebo se každý znak objeví dvakrát.

Světelné signály na panelu modemu
  Světelné indikátory na předním panelu externího modemu ukazují, co se děje během komunikační relace. Umístění světýlek a jejich pořadí se může modem od modemu lišit. Obvykle jsou však označeny dvoupísmennou zkratkou. Uvedeme si jejich význam.
HS Indikátor High Speed (vysoká rychlost) oznamuje, že váš modem právě pracuje nejvyšší dostupnou přenosovou rychlostí.
AA Indikátor Auto Answer (automatická odpověď) oznamuje, že modem bude automaticky odpovídat na přicházející hovory. Tato volba umožňuje přístup k vašemu systému po dobu, kdy je bez obsluhy.
CD Indikátor Carrier Detect (zjištěn nosný signál) se rozsvítí pokaždé, když modem zjistí nosný signál. To znamená, že je navázáno spojení se vzdáleným počítačem. Světlo by mělo zhasnout pouze tehdy, když jeden z počítačů zavěsí a nosný signál se ztratí.
OH Indikátor Off-Hook (sluchátko zvednuto) se rozsvítí pokaždé, když modem získá vládu nad telefonní linkou. Je to totéž, jako když sami zvednete telefonní sluchátko.
<RD Indikátor Receive Data (příjem dat) bliká pokaždé, když modem přenáší do vašeho počítače data. To nastane tehdy, když přijímáte data ze vzdáleného počítače.
SD Send Data (vysílání dat) svítí v okamžicích kdy váš počítač přenáší data do modemu. To nastane tehdy, když vysíláte data do vzdáleného počítače.
TR Indikátor Terminal Ready (terminál připraven) se rozsvítí, když modem zjistí, že komunikační software vysílá signál DTR (Data Terminal Ready). Tento signál informuje modem, že komunikační program je uložen v paměti a spuštěn.
MR Indikátor Modem Ready (modem připraven) vám dává na srozuměnou, že modem je zapnut a připraven k provozu.