SK

Seriál: Príbeh o sieťach - prológ

Kapitola druhá - Protokol

Čo to vlastne protokol je? Dalo by sa tiež použiť slovo pravidlo. Protokoly totiž definujú pravidlá, ktorými sa má komunikácia riadiť, aby bola úspešná. Protokoly stanovujú spôsob, akým sa má komunikovať, formát správ, ich význam, či môžu slúžiť na zabezpečenie konkrétnej služby. Protokolov je mnoho, avšak v základe by sme ich mohli rozdeliť na otvorené a proprietárne. Protokoly bývajú popísané v RFC (Request For Comment) dokumentoch, ktoré vydáva združenie IETF (Internet Engineering Task Force).

Otvorený protokol je taký, ktorý je voľne k dispozícii a výrobca ho môže ľubovoľne implementovať. Autormi otvorených protokolov sú zvyčajne organizácie ako IEEE, ITU-T, IETF... Okrem ceny, ktorá môže byť aj nulová, majú otvorené protokoly ešte jednu výhodu. Ich nasadenie garantuje kompatibilitu medzi zariadeniami rôznych výrobcov.

Oproti tomu proprietárne protokoly sú väčšinou uzavreté protokoly vytvorené nejakou firmou. Za používanie vyžadujú poplatky. Nevýhodou môže byť nekompatibilita pri použití zariadení iných výrobcov (napríklad v čase, keď bol EIGRP proprietárny protokol firmy Cisco, nebolo možné ho použiť na iných zariadeniach, iba na tých od Cisca).

Čo by to bolo za článok o sieťach, keby v ňom neboli spomenuté referenčné modely ISO OSI a TCP/IP.

ISO OSI je referenčný model, ktorý popisuje dianie v sieti. Nepredpisuje však konkrétne protokoly ani služby. Je modelom všetkých procesov v sieti, nie však špecifických protokolov.

TCP/IP je najpoužívanejším protokolovým modelom. Popisuje delenie protokolov vo vnútri istej protokolovej sady, ich funkcie, služby a kompetencie, nepopisuje však všetky deje v sieti. Je modelom protokolov, nie celej siete.

 

Vrstvy OSI modelu

1. Fyzická vrstva (physical): zaoberá sa fyzickými vlastnosťami médií ako modulácia či kódovanie, alebo aj konektormi. Jej úlohou je preniesť informáciu vo forme bitov daným médiom.

2. Linková vrstva (data link): PDU (datagram danej vrstvy) tejto vrstvy je rámec (frame). Prenáša rámce medzi susednými uzlami, kontroluje chyby.

3. Sieťová vrstva (network): PDU je paket. Prenáša pakety medzi uzlami.

4. Transportná vrstva (transport): PDU tejto vrstvy sa volá segment. Táto vrstva má za úlohu prenos segmentov medzi uzlami, pričom sa stará o ich usporiadanie do správneho poradia, prípadne aj o potvrdzovanie prijatia.

5. Relačná vrstva (session): prenáša dáta ku konkrétnemu procesu, riadi dialóg medzi procesmi.

6. Prezentačná vrstva (presentation): stará sa o to, aby prenášané dáta mali spoločný formát

7. Aplikačná vrstva (application): poskytuje nástroje pre tvorbu sieťových aplikácií a služieb

 

Vrstvy TCP/IP modelu

1. Vrstva prístupu k sieti (network access): zabezpečuje funkcie spojené s prenosom rámcov k susedným staniciam po danom médiu

2. Internetová vrstva (internet): prenáša pakety medzi koncovými uzlami

3. Transportná vrstva (transport): prenáša dáta rozdelené na segmenty, vrátane adresovania vhodnému procesu na cieľovom počítači, rieši otázky spoľahlivosti, spojovanosti a riadenia toku dát

4. Aplikačná vrstva (application): poskytuje nástroje na tvorbu sieťových aplikácií a služieb vrátane identifikácie spoločného formátu prenášaných dát a riadenie dialógov medzi komunikujúcimi procesmi

 

Medzi oboma modelmi je určitý vzťah a jedna vrstva TCP/IP modelu môže zahŕňať funkcie viacerých vrstiev OSI modelu.

Ako dáta putujú sieťou, menia svoju formu, naberajú rôzne hlavičky či pätičky danej vrstvy a tento proces sa nazýva enkapsulácia. Každá vrstva pridá svoju hlavičku a vznikne PDU – datagram danej vrstvy. Spätný proces odstraňovania hlavičiek voláme dekapsulácia. 

V hlavičkách sú tiež uvádzané adresy. Linková vrstva používa fyzické adresy, napr. známe MAC adresy, sieťová vrstva používa ešte známejšie IP adresy a transportná vrstva používa ako adresy číslo portu.

Pre zosumarizovanie si predstavme určitú aplikáciu, napríklad webový prehliadač. V ňom máte otvorenú Vašu e-mailovú schránku, napríklad obľúbený gmail. Napíšete text a kliknete na „Odoslať“. V tomto momente prehliadač vytvoril dáta, ktoré však nie sú na prenos po sieti vhodné (aplikačná vrstva). Sú v súvislom bloku v akom ich vytvorila aplikácia a nemajú stanovený spoločný formát, šifrovanie či kompresiu (prezentačná vrstva). V ďalšom kroku sa relačná vrstva postará o vytvorenie a kontrolovanie spojenia. Na transportnej vrstve sa dáta segmentujú podľa potreby a adresujú na základe portov. Segment sa zabalí do paketu, ktorý obsahuje IP adresy (sieťová vrstva). Paket sa zabalí do rámca, ktorý pracuje s MAC adresami (linková vrstva). Takto pripravené informácie sa vo forme bitov prenesú na médium (fyzická vrstva) a u príjemcu prechádzajú opačným procesom a rozbaľovaním.

My sa v našom sprievodcovi budeme venovať hlavne druhej, tretej a štvrtej vrstve. V krátkosti si však predstavíme aj ostatné.

Začnime rovno aplikačnou vrstvou. Ako som už písal vyššie, jej úlohou je poskytnúť nástroje, pomocou ktorých je možné vytvárať sieťovo komunikujúce aplikácie. Ako vyplýva z obrázku vyššie, na ktorom je porovnanie OSI a TCP/IP modelu, aplikačná vrstva v sebe zahŕňa aj funkcie prezentačnej a relačnej vrstvy OSI modelu.

Aplikačné protokoly a služby existujú v jednej z dvoch foriem:

1. architektúra klient-server. Ide o centralizované poskytovanie služieb, kde klient je konzumentom a server poskytovateľom služby

2. architektúra peer-to-peer. Ten istý stroj je súčasne poskytovateľom i konzumentom služby. Softvér je teda súčasne klient i server.

Spomeňme teraz niektoré protokoly aplikačnej vrstvy.

 

Protokol DHCP (Dynamic Host Configuration Protocol)

Pre väčšinu zrejme známy protokol. Umožňuje automatickú konfiguráciu uzlov. Väčšina z Vás má na zariadení doma zrejme nastavené, aby sa IP adresa získala automaticky z DHCP servera. DHCP server vie poskytnúť aj iné nastavenia, akými sú maska, brána či adresa DNS servera. Zjednodušuje prácu, nakoľko bez neho by bolo nutné všetky údaje vpisovať ručne. 

DHCP klienta možno ovládať z prostredia operačného systému Windows príkazmi ipconfig. Príkaz ipconfig /release vymaže IP adresu, bránu a masku získanú od DHCP servera. Príkazom ipconfig /renew si klient od DHCP servera vyžiada nové údaje. Protokolu DHCP sa budem podrobnejšie venovať v nasledujúcom dieli, keď budeme vedieť, čo to znamená broadcast a povieme si čosi aj o IP adresách.

Ďalším zo známych aplikačných protokolov je DNS (Domain Name System). Ide akoby o telefónny zoznam strojov na internete. Keďže my požívame slovné názvy ako napr. www.pc.zoznam.sk a počítače používajú IP adresy, je nutný preklad a práve na to slúži DNS. Vyhľadáva IP adresy počítačov podľa ich mena. DNS server nie je jeden, ide o hierarchicky organizovanú štruktúru, pričom každý DNS server má na starosti určitú zónu, pre ktorú je autoritatívny (má o nej priame informácie).

 

Kto by nepoznal protokol HTTP (Hyper Text Transfer Protocol)? Ide o jeden z najznámejších protokolov, ktoré taktiež radíme medzi aplikačné. Umožňuje nám vyžiadať si daný súbor. HTTP je nešifrovaný, jeho šifrovaná odnož je HTTPS.

Aplikačný protokol FTP (File Transfer Protocol) slúži na prenos súborov medzi klientom a serverom. FTP si vytvára 2 spojenia, jedno na porte 20, ktoré slúži na samotný prenos dát a druhé na porte 21, ktoré slúži na kontrolu dát a posielanie príkazov. Je to autentifikovaný protokol, ale nie šifrovaný. Šifrované FTP sa volá SFTP. Existuje ešte jeden variant, a tým je TFTP (Trivial FTP). Ten nie je ani autentifikovaný a nedisponuje takými možnosťami ako FTP.

 

Protokoly aplikačnej vrstvy Telnet a SSH (Secure SHell) tvoria gro pre správcov sieti. Umožňujú totiž na diaľku ovládať príkazové riadky zariadení (žiadne GUI) miesto toho, aby ste sa museli fyzicky zakaždým pripojiť na konzolu zariadenia. Telnet je starší, nešifrovaný protokol, odporúča sa použiť SSH, ktorý je šifrovaný. 

 

Z aplikačných protokolov ešte spomeniem napríklad SMTP a POP3, ktoré slúžia na prácu s elektronickou poštou. Už som spomínal, že aplikačná vrstva má v sebe funkcie prezentačnej a relačnej vrstvy modelu, takže tým sa hlbšie venovať nebudeme. 

Iba v skratke. Prezentačná vrstva slúži na identifikáciu spoločného formátu dát, konverziu, kompresiu a šifrovanie dát na úrovni aplikácie.

Relačná vrstva adresuje toky dát konkrétnym procesom, identifikuje dialógy a riadi ich. 

Tým by som prvé tri vrstvy uzavrel a posunul sa ďalej na transportnú a sieťovú vrstvu, ktorej sa budem venovať v ďalšom dieli seriálu, ktorý prinesieme o dva týždne. 

Add new comment
TOPlist