Vyšlo v týdeníku CHIPweek č. 6/96, 6. února 1995
Vytištěno z adresy: http://www.earchiv.cz/a96/a605k203.php3

Jaký software potřebujete pro práci v Internetu?


Tento článek je třetí ze série, která vyšla v rámci zvláštní přílohy týdeníku CHIPweek č. 5/96 k problematice Internetu.

Obsah:


Chcete-li proniknout do báječného světa Internetu, neobejdete se bez fungující přípojky k této celosvětové soustavě vzájemně propojených sítí. Stejně tak se ale neobejdete bez vhodného programového vybavení. Ale jakého vlastně?

Všechny počítačové sítě, Internet nevyjímaje, dnes vychází z takzvaného vrstvového modelu. To v praxi znamená, že jejich funkce jsou rozděleny do několika vrstev, z nichž každá má něco konkrétního na starosti - nižší vrstvy jsou zaměřené na přenos dat, zatímco vyšší vrstvy jsou již orientovány uživatelsky a poskytují přímou podporu jednotlivým aplikacím. Každá vrstva přitom funguje podle určitých pravidel, které tvoří takzvané protokoly - v konkrétním případě Internetu se jedná o celou soustavu protokolů, označovaných souhrnným názvem TCP/IP, resp. jako „rodina protokolů TCP/IP" (anglicky: TCP/IP Protocol Suite). No a od toho již lze odvodit základní požadavek na programové vybavení počítače, který má mít přístup do Internetu a má být schopen v něm pracovat: musí mít implementovány protokoly TCP/IP, a musí být schopen jejich prostřednictvím komunikovat s ostatními uzlovými počítači v Internetu.

Podívejme se nyní podrobněji na to, jaké jsou nejdůležitější protokoly z rodiny protokolů TCP/IP, a hlavně jakým způsobem jsou obvykle implementovány v prostředí, které lze očekávat u největšího počtu našich uživatelů - tedy v prostředí MS Windows počítačů PC.

Není SLIP jako IP

Základním protokolem, který se v sítích na bázi protokolů TCP/IP (tj. i v Internetu) stará o přenos dat, je protokol s příznačným jménem „Internet Protocol", zkratkou IP. Je to protokol, který bezprostředně využívá přenosových mechanismů počítačových sítí na úrovni nižších vrstev (například přenosových technologií sítí typu Ethernet či Token Ring, FDDI apod.), a na druhé straně je sám využíván přenosovými protokoly vyšších vrstev, mezi které patří například protokol TCP (Transmission Control Protocol). Právě tyto dva protokoly, IP a TCP, jsou natolik charakteristické a významné, že daly název celé soustavě protokolů TCP/IP. Nejsou ale zdaleka jedinými protokoly v této rodině protokolů.

Například pro přenos dat po sériových linkách byla vyvinuta zvláštní verze protokolu IP, označovaná jako SLIP (Serial Line IP). Zde je přitom vhodné si uvědomit, že jednou z variant sériových linek jsou i komutované linky veřejné telefonní sítě, vybavené na obou koncích potřebnými modemy - takže budete-li se chtít se svým počítačem připojit k Internetu „po telefonu", neboli prostřednictvím komutovaných linek veřejné telefonní sítě, budete potřebovat vhodnou implementaci protookolu SLIP. Alternativou k protokolu SLIP je pak novější protokol PPP (Point-to-Point Protocol), který je také určen pro sériové linky, a časem zřejmě nahradí starší SLIP.

Naproti tomu v případě, kdy váš počítač bude připojen do nějaké lokální sítě, budete používat přímo základní přenosový protokol IP. Budete tedy potřebovat jeho implementaci nad takovou základní přenosovou technologií, jaká se v dané síti používá - nejspíše tedy nad Ethernetem, Token Ringem, nad FDDI apod.

Protocol stack

Základní přenosové protokoly jsou v prostředí dnešních operačních systémů implementovány většinou společně, jako jediný ovladač, rezidentní program, systémový proces či jako taková programová entita, s jakou daný operační systém pracuje. Podstatné je zde přitom to, že společně implementované protokoly pokrývají několik hierarchicky uspořádaných vrstev, a tak samy o sobě také vytváří hierachicky uspořádanou strukturu, které se ne nadarmo říká „protocol stack" (doslova „protokolový zásobník"). V našem konkrétním případě musí jít o protokolový zásobník implementující protokoly TCP/IP, neboli o tzv. „TCP/IP protocol stack".

Ilustrační obrázek
Síťové programové vybavení uzlového počítače v síti, připojené k Internetu

Potřebný „TCP/IP protokol stack" pro počítače PC s MS Windows existuje v mnoha podobách, od volně šiřitelných, přes sharewarové implementace, až po komerční implementace (a po technické stránce jak ve formě DLL knihoven, tak i modulů VxD). Například nové Windows 95 již mají „TCP/IP protocol stack" od firmy Microsoft přímo zabudován v sobě, a tedy zdarma (resp. v ceně samotných Windows). V případě dosavadních Windows 3.11 je prakticky tentýž „TCP/IP protocol stack" od firmy Microsoft dostupný jako volně šiřitelný program (známý též pod jménem Volverine, který ale nebyl dodáván jako standardní součást MS Windows 3.11). Na trhu síťového softwaru přitom existuje poměrně bohatá nabídka nejrůznějších „TCP/IP protocol stack-ů", s různými schopnostmi (například co do možnosti konfigurování, dynamického přidělování IP adres apod.).

Ať již se ale rozhodnete pro kterýkoli „TCP/IP protocol stack", vždy budete potřebovat takový, který si bude rozumět se síťovým hardwarem vašeho počítače - tedy s vaší síťovou kartou. S tou prakticky vždy komunikuje přes jedno ze standardizovaných rozhraní, mezi které patří zejména rozhraní tzv. NDIS ovladačů, rozhraní ovladačů ODI, a rozhraní tzv. paketových ovladačů. Ke své síťové kartě tedy budete potřebovat alespoň jeden z těchto ovladačů.

Dialer, a dial-up stack

Poněkud jiná situace nastane v případě, kdy se budete se svým počítačem připojovat k Internetu prostřednictvím komutovaných linek veřejné telefonní sítě, a tedy prostřednictvím protokolu SLIP nebo PPP. V tomto případě budete potřebovat takový TCP/IP protocol stack, který je určen pro komutované připojení a podporuje alespoň jeden z těchto protokolů (nejlépe pak oba). Takovéto „dial-up TCP/IP stack-y" samozřejmě také existují, a opět v celé bohaté škále, od volně šiřitelných až po komerční produkty.

Ilustrační obrázek
Síťové programové vybavení samostatného počítače s komutovanou přípojkou do Internetu

Nezbytnou součástí všech implementací protokolů TCP/IP pro komutované přípojky je i vhodná utilita schopná obsluhovat telefonní modem a navazovat spojení s druhou stranou - což obnáší „vytáčení" telefonních čísel prostřednictvím modemu a po navázání spojení pak možnost interaktivního zadávání různých údajů v rámci tzv. přihlašování k přístupovému serveru poskytovatele připojení (například zadávání jméne a hesla, volba mezi protokoly SLIP a PPP apod.). Program, který má toto na starosti, je obvykle označován jako tzv. Dialer (doslova: „vytáčeč"). Může to být zcela samostatný program, ale častěji je alespoň nepřímou součástí či doplňkem TCP/IP protocol stack-u.

Většina programů typu Dialer je také vybavena vlastním skriptovým jazykem. Ten je určen především k automatizaci přihlašovacích postupů - tedy k tomu, aby tento program za vás nejen vytočil potřebné telefonní číslo na vstupní bod vašeho poskytovatele připojení k Internetu, ale také sám provedl celé vaše přihlášení. Teprve pak je totiž možné realizovat to, po čem tak volají jak uživatelé, tak i producenti softwaru a poskytovatelé přístupu k Internetu - aby váš vstup do této sítě obnášel pouhé kliknutí na jednu jedinou ikonu.

Rozhraní Winsock

Když už máte na svém počítači nainstalován (a také správně nakonfigurován) fungující „TCP/IP protocol stack", máte vlastně již k dispozici základní komunikační mechanismy pro práci v Internetu, a můžete se začít ohlížet po konkrétních aplikacích. Těch opět existuje opravdu velký výběr, pokrývající všechny existující internetové služby, v provedení od volně šiřitelných programů až po čistě komerční produkty. Pro vás je ale velmi důležité vědět, zda jste při jejich výběru nějak omezeni - zda například musíte používat TCP/IP protocol stack i jednotlivé aplikace od stejného výrobce, aby asi vzájemně rozumněli.

Odpověď na tuto veledůležitou otázku je naštěstí záporná, alespoň pro prostředí MS Windows (všech současných verzí). Zde se totiž podařilo prosadit jednotné rozhraní mezi TCP/IP protocol stack-em a aplikacemi, které chtějí využívat jeho služeb. Toto rozhraní se jmenuje Winsock (od: Windows Sockets), a jeho speficikace jsou poměrně důsledně dodržovány - což v praxi znamená, že když si pořídíte dva produkty od různých výrobců, které podporují toto rozhraní a komunikují spolu přes něj, máte rozumnou záruku toho, že si budou vzájemně rozumět. No a rozhraní Winsock dnes podporují snad úplně všechny aplikace i protocol stack-y pro prostředí Windows.

internetové aplikace

Možnosti, které dnešní Internet nabízí, jsou opravdu velké a velmi rozmanité. Stejně tak jsou rozmanité i konkrétní způsoby a mechanismy, kterými jsou tyto možnosti realizovány - obecně se přitom hovoří o „službách", které jsou v prostředí Internetu poskytovány. Příkladem služby může být elektronická pošta, přenos souborů, služba World Wide Web, služba Gopher atd. (.. sem dát odkaz na článek: Stručný průvodce internetovými službami, pokud jej stihnu napsat :-) ).

Každá služba tedy funguje svým specifickým způsobem, resp. využívá ke svému chodu konkrétní protokoly z rodiny protokolů TCP. Například elektronická pošta v Internetu používá pro přenos jednotlivých zpráv protokol SMTP (Simple Mail Transfer Protocol), zatímco pro přenos souborů se používá protokol FTP (File Transfer Protocol), pro přenos tzv. síťových news se používá protocol NNTP (Network News Transfer Protocol), pro vzdálené přihlašování protokol Telnet, pro přenos hypertextových dokumentů v rámci služby World Wide Web se používá protokol HTTP (HyperText Transfer Protocol) apod. Pro koncového uživatele toto vše znamená, že pro využití jednotlivých služeb potřebuje různé aplikace, „šité na míru" příslušným mechanismům fungování příslušných služeb.

Klient a jeho server

Většina internetových služeb je dnes založena na modelu klient/server. To v praxi znamená, že v rámci těchto služeb existuje dosti přesná „dělba práce": existuje zde někdo, kdo služby poskytuje (a je proto označován jako server), a někdo kdo tyto služby využívá (a je označován jako klient). Pokud tedy budete chtít využívat určitou službu, budete potřebovat takovou aplikaci, která implementuje klientskou část této služby (lidově: klienta této služby, například klienta elektronické pošty, FTP klienta apod.). Pokud by jste naopak chtěli nějakou službu sami poskytovat, budete k tomu potřebovat aplikaci implementující serverovou část služby, tedy server příslušného typu (například poštovní server, WWW server, server služby Gopher apod.).

Pro klientské programy některých internetových služeb se mnohdy již vžily samostatné názvy, resp. specifická označení. Například programu, který realizuje klientskou část služby World Wide Web, dnes nikdo neřekne jinak než „browser" - což souvisí se způsobem práce uživatele, který se „brouzdá" (anglicky: to browse) soustavou WWW stránek. Jiným příkladem může být aplikace pro vzdálené přihlašování k hostitelským počítačům, které se většinou říká rovnou „Telnet" (podle protokolu, na jehož základě funguje). V případě elektronické pošty se někdy hovoří o tzv. maileru, ale pojem „poštovní klient" se používá také. Podobně tomu je v případě tzv. síťových news, kde se příslušnému klientskému programu říká „čtečkaˇ" (anglicky: news reader).

Samostatně nebo integrovaně?

Obecně tedy při práci v Internetu budete potřebovat tolik různých aplikací, kolik různých služeb budete chtít využívat. Pro každou službu většinou existuje celá široká škála klientských programů, mezi kterými je možné si vybírat podle celé řady různých kritérií - podle ceny, podle výrobce, podle celkového uživatelského komfortu apod. Většina takovýchto klientských aplikací přitom představuje samostatné programy, resp. programy plnící funkci klienta jen jedné konkrétní služby, i když jsou často nabízeny a prodávány „v jednom balíku" s dalšími klientskými programy.

V poslední době se ale začíná prosazovat jeden zajímavý, a zřejmě i užitečný trend, kterým je integrování klientských částí různých služeb do jediného programu. Příkladem může být program, který je schopen fungovat současně jako klient služby WWW (tedy jako tzv. browser), současně i jako klient elektronické pošty, a také jako čtečka síťových news. Přesně takovéto schopnosti například má oblíbený browser Netscape Navigator firmy Netscape Communications, která má na trhu WWW browserů velmi dominantní postavení.

Velkou výhodou takovýchto integrovaných aplikací je skutečnost, že nabízí uživateli jednotné uživatelské rozhraní pro práci s různými službami, a nenutí jej učit se pracovat s různými aplikacemi. To pak výrazným způsobem zjednodušuje zaškolování uživatelů, a v neposlední řadě i usnadňuje správu počítačových sítí - je vždy snažší udržovat ve správně nakonfigurovaném a fungujícím stavu jednu jedinou aplikaci, než několik relativně různorodých aplikací.

Programové balíky pro Internet

Programových produktů pro práci v Internetu se v poslední době objevuje čím dál tím více - není divu, vždyť poptávka po nich je velká, a trh jimi stále ještě není nasycen. Největší poptávka přitom zřejmě je po takových řešeních, které vyžadují minimální (nejlépe nulovou) součinnost uživatele při svém instalování a uvádění do provozu - tedy takové aplikace, které si může sám nainstalovat a pak používat i laický uživatel, který dosud nemá žádné specifické znalosti a zkušenosti s Internetem. Pro takovéto uživatele, kterých zřejmě bude čím dál tím více, jsou pak určené celé programové balíky, obsahující nejen základní repertoár internetových aplikací, ale také všechny ostatní náležitosti - zejména TCP/IP protocol stack, vytáčecí program (Dialer), a hlavně dokonale propracovaný instalační program, který si dokáže v maximální možné míře poradit sám, a svého uživatele „otravuje" skutečně jen tehdy, když opravdu není zbytí. Příkladem takovýchto integrovaných integrovaných balíků mohou být produkty OnNet 2.0 firmy FTP Software, Internet Suite firmy Quarterdeck, Netscape Personal Edition firmy Netscape Communications, Internet in a Box firmy Spry a další.

Důležitou součástí všech těchto integrovaných balíků jsou i zvláštní aplikace (obvykle označované jako „wizards"), které dokáží zautomatizovat i proces objednání přístupu k Internetu u některého z poskytovatelů, kterého si uživatel sám vybere - příslušný program se pak dovolá k tomuto poskytovateli, a zařídí vše potřebné pro vaše připojení k Internetu (zřejmě kromě zaplacení). Všechno tedy skutečně spěje k tomu, aby přístup k Internetu skutečně byl „tak snadný, jako pouhé kliknutí na ikonu".