Komunikácia v počítačových sieťach
Obsah
Komunikačné siete popísané v predchádzajúcej kapitole predstavujú prenos informácií na úrovni hardvéru. Na to, aby dve sieťové zariadenia vedeli spolu komunikovať, musia používať rovnaký komunikačný protokol. To znamená, že žiadna sieť, počítačová ani priemyselná, sa nezaobíde bez použitia aspoň jedného komunikačného protokolu.
Referenčný model ISO/OSI
Model ISO/OSI definuje spôsob komunikácie v sieti medzi počítačmi. Spôsob komunikácie je rozdelený do siedmych vrstiev [3]:
- Aplikačná vrstva (Application layer),
- Prezenčná vrstva (Presentation layer),
- Relačná vrstva (Session layer),
- Transportná vrstva (Transport layer),
- Sieťová vrstva (Network layer),
- Spojovacia vrstva (Link layer),
- Fyzická vrstva (Physical layer).
Používateľ alebo aplikačný program zadá požiadavku na prenos správy. Správa prechádza postupne jednotlivými vrstvami od aplikačnej až po fyzickú a je príslušnou vrstvou spracovaná. Vrstva môže komunikovať iba zo susednou vrstvou, vyššia vrstva odovzdá správu na spracovanie nižšej vrstve. Po prenose spojovacím vedením na stanicu adresáta je správa opäť spracovaná jednotlivými vrstvami, ale v opačnom poradí, od fyzickej po aplikačnú, nižšia vrstva odovzdáva správu vyššej vrstve. [3], [4]
- Fyzická vrstva
- je to najnižšia vrstva v modeli ISO/OSI a ako jediná je prezentovaná fyzickým hardvérom. Sú to sieťové karty a spojovacie vedenie. Úlohou tejto vrstvy je zabezpečenie prenosu správy medzi odosielateľom a príjemcom. Na tejto úrovni je správa prenášaná vo forme jednotlivých bitov, elektrické impulzy, svetelný lúč a pod. [3]
- Spojovacie vrstva
- , jej úlohou je bezchybný prenos dát medzi sieťovými entitami, prípadná oprava chýb, ktoré sa vyskytnú na fyzickej vrstve. Na tejto vrstve sú dáta prenášané vo forme rámcov (frames). [3]
- Sieťová vrstva
- riadi prenos dát medzi stanicami, jej úlohou je zabezpečenie vhodnej trasy pre pakety (packets). Táto činnosť sa nazýva smerovanie (routing). [3]
- Transportná vrstva
- rieši komunikácia medzi koncovými užívateľmi. Súbory sa rozkladajú na pakety a na cieľovej stanici sa pakety skladajú do súboru. [3]
- Relačná vrstva
- nadväzuje, udržuje a ukončuje spojenie medzi koncovými zariadeniami a riadi komunikáciu medzi dvoma aplikáciami na rôznych počítačoch. [3], [4]
- Prezenčná vrstva
- zabezpečuje konverziu prenášaných dát, prípadne ich pakovanie a šifrovanie. [3]
- Aplikačná vrstva
- je najvyššia vrstva v modeli ISO/OSI. Táto vrstva tvorí rozhranie medzi prostredím siete a užívateľom, napríklad e-mailový klient. Podkapitoly diplomovej práce slúžia na členenie textu diplomovej práce s cieľom čo najväčšej prehľadnosti. [3]
Model TCP/IP
Model protokolu TCP/IP (Transmission Control Protokol / Internet Protokol) je podobný referenčného modelu OSI, ale má iba štyri vrstvy (Obr. 2) [4], [5]:
- Aplikačná vrstva (Application layer),
- Transportná vrstva (Transport layer),
- Internetová vrstva (Internet layer),
- Sieťová vrstva (Network layer).
Podľa [5] aplikačná vrstva modelu TCP/IP vykonáva činnosti aplikačnej, prezenčnej a relačnej vrstvy modelu ISO/OSI (Obr. 2). Transportné vrstvy oboch modelov zabezpečujú rovnaké úlohy, takisto činnosť internetovej vrstvy modelu TCP/IP je identická zo sieťovou vrstvou modelu ISO/OSI. Sieťová vrstva modelu TCP/IP vykonáva úlohy linkovej a fyzickej vrstvy modelu ISO/OSI.
Protokol TCP/IP
Protokol TCP/IP je v súčasnosti najpopulárnejším komunikačným protokolom v počítačových sieťach. Protokol je možné používať pri komunikácii medzi počítačmi s rôznymi operačnými systémami. Jeho hlavnou výhodou je, že sa dá smerovať (Kap. 2.3.2) čo umožňuje komunikáciu aj medzi zariadeniami, ktoré sa nenachádzajú v spoločnej sieti. Vďaka tejto vlastnosti sa stal štandardom pre komunikáciu v sieti Internet.
- TCP
- Transmition Control Protocol pracuje na transportnej vrstve modelu TCP/IP. Používa systém potvrdzovania doručenia správ (paketov). Pre každú doručenú správu prijímateľ generuje potvrdzovaniu správu, ktorá je odoslaná odosielateľovi. Odosielateľ udržiava informácie o stave komunikácie. Odoslané pakety ukladá do špeciálnej fronty a uvoľňuje ich až po doručení potvrdenia. Ak nie je doručené potvrdenie, po určitom čase je paket opäť odoslaný príjemcovi. V prípade doručenia poškodeného paketu, prijímateľ požiada o jeho nové poslanie odosielateľa a ten mu ho odošle. Tento protokol zaručuje doručenie správy príjemcovi za každých podmienok. [4]
- UDP
- User Datagram Protocol pracuje na transportnej vrstve modelu TCP/IP. Na rozdiel od protokolu TCP nekontroluje doručenie správy prijímateľovi, preto je pri doručovaní správ rýchlejší a dátová komunikácia v sieti je nižšia ako pri protokole TCP. Protokol UDP sa používa na transport správ, kde je povolené určité percento strát údajov, napríklad audio alebo video dáta. [4]
- IP
- Internet Protokol je najvyťaženejším protokolom v rodine TCP/IP. Všetky ostatné protokoly pracujú nad týmto protokolom a využívajú ho na logické adresovanie [4]. Pracuje na internetovej vrstve modelu TCP/IP.
Samotný protokol nezabezpečuje doručenie správ ani nevytvára spojenie medzi komunikujúcimi stanicami. O to sa starajú protokoly TCP a UDP. Protokol IP ku správe pridá logickú (IP) adresu odosielateľa a príjemcu. Doručenie správy zabezpečujú protokoly vyšších vrstiev, napr. TCP. [4] IP protokol prenáša dáta vo forme paketov (Obr. 3). Pakety sú dáta rozdelené na menšie časti, ktoré sú vhodnejšie na transport údajov v sieti. Ostatné protokoly z rodiny TCP/IP využívajú IP paket na prenos vlastných dát [4].
Štruktúru dátového IP paketu (Obr. 3) je tvorená z dvoch základných častí. Úvodná časť sa nazýva hlavička a obsahuje informácie potrebné pri transporte správ v sieti. (Tab. 1). Zvyšok tvoria samotné prenášané údaje, napr. textový dokument alebo paket SNMP protokolu (Kap. 3.1). Celková veľkosť IP paketu sa pohybuje v rozmedzí od 20 bajtov do maximálne 65 535 bajtov. [5], [6]
Adresovanie správ v protokole TCP/IP
Komunikácia zahŕňa potrebu adresovania uzlov siete, smerovanie správ k adresátovi po rôznych cestách a tiež nadväzovať, udržiavať a ukončovať spojenie. Pre identifikovanie počítačových uzlov v prostredí TCP/IP sieti sa používa IP adresa alebo doménové meno. [4]
Názov poľa | Dĺžka (bit) | Význam |
Verzia | 4 | Verzia protokolu (IPv4, IPv6) |
Dĺžka hlavičky | 4 | Dĺžka hlavičky v 32bitových slovách |
Typ služby | 8 | Priorita doručovania správ |
Celková dĺžka | 16 | Celková dĺžka paketu vrátene hlavičky |
Identifikácia | 16 | Identifikácia paketu |
Flagy | 3 | Povolenie rozdelenia paketu na menšie časti |
Offset fragmentu | 13 | Poradie odosielania paketov |
Životnosť | 8 | Maximálna životnosť paketu |
Protokol | 8 | UDP, TCP... |
Kontrolný súčet hlavičky | 16 | Kontrolný mechanizmus správnosti hlavičky |
Zdrojová adresa | 32 | IP adresa odosielateľa |
Cieľová adresa | 32 | IP adresa príjemcu |
Voliteľné | Premenlivá | Nepovinné parametre |
Výplň | Premenlivá | Doplnok núl do 32 bitov |
Dáta | Premenlivá | Prenášané údaje |
IP adresa je 32 bitové číslo, ktoré sa skladá zo štyroch oktetov po 8 bitov v tvare A.B.C.D. Každému oktetu odpovedá desiatkové číslo v rozsahu 0 až 255. Dva počítače v jednej sieti nemôžu mať rovnakú IP adresu, inak nastane kolízia v dátovej komunikácii.
Dekadický tvar | Binárny tvar | |
IP adresa | 192.168.1.100 | 11000000. 10101000.00000001.01100100 |
Príklad konkrétnej IP adresy sieťového zariadenia je uvedený v Tab. 2. Adresa sa zapisuj v dekadickom tvare, pretože počítače používajú dvojkovú sústavu je IP adresa uvedená aj v dvojkovom tvare.
Doménové meno (hostname) je unikátne meno počítača v sieti. Jedná sa o slovný prepis číselnej IP adresy. V spoločnej sieti nemôžu existovať dva počítače s rovnakým menom. V lokálnych sieťach je to zvyčajne jedno slovo, napr. PC1. Na Internete je meno počítača zložené z lokálneho mena a domény, napr. mail.mojafirma.sk. Takémuto menu sa hovorí plne kvalifikované doménové meno (FQND). V tomto prípade je mail lokálne meno a mojafirma.sk je doménové meno, sk je regionálna skratka pre Slovensko.
Smerovanie
Smerovanie je proces, v ktorom sa vyhľadáva cesta pre transportujúce pakety tak, aby spoľahlivo dorazili do cieľa. Počítač, ktorý o smerovaní rozhoduje sa nazýva brána (gateway), alebo tiež smerovač (router). Vďaka smerovaniu môžu navzájom komunikovať sieťové zariadenia z rôznych sieti alebo cez verejnú sieť. Výhodou smerovanie je aj vzdialená správa sieťových alebo priemyselných zariadení.
Poznáme dva typy smerovania, priame a nepriame. Pri priamom smerovaní sú správy zo zdrojového počítača prenášané priamo na cieľový počítač. V tomto prípade sa oba počítača nachádzajú v jednej sieti a majú vytvorené priame spojenie, t.j. nekomunikujú cez sprostredkovateľa (smerovač). [4] Pri nepriamom smerovaní správy prechádzajú z jednej siete do druhej, prípadne viacero sieti, napr. Internet. V pamäti počítača je uložená smerovacia tabuľka, z ktorej sa vyberá trasa smerovania dát. Zdrojový počítač odošle správu na svoju predvolenú bránu (smerovač). Smerovač v smerovacej tabuľke zistí či pozná príjemcu správy alebo smer, ktorým má správu odoslať. Pokiaľ nemá informácie o cieľovej sieti, odošle správu na svoju predvolenú bránu. Proces sa opakuje až kým správa nedorazí na smerovač, ktorý pozná príjemcu správy alebo správa prekročí svoju životnosť (Tab. 1). Smerovač, ktorý cieľový počítač, smeruje správu priamo. [4]
Komunikačné porty
V sieťach s komunikačným protokolom TCP/IP prebieha komunikácia cez porty. Port je 16-bitové číslo v rozsahu od 0 do 65535. K IP adrese počítača prislúcha číslo komunikačného portu, t.j. číslo brány, cez ktoré sieťové zariadenie komunikuje. [4]
Pred zahájením prenosu dát v sieti sa medzi komunikujúcim stranami vytvorí spoľahlivé spojenie. V praxi to znamená, že obe strany sa musia dohovoriť na portoch cez budú komunikovať. Serverové služby majú definované porty, číslo portu klienta sa vyberie náhodne z rozsahu od 1024 do 655536. [4]