IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

4. diel - Siete – Prenos informácií (paketov)

V predchádzajúcej lekcii, { PREVIOUS}, sme si predstavili a vysvetlili pojmy internet, extranet a intranet.

V nasledujúcom tutoriále základov počítačových sietí sa zameriame na základné princípy prenosu informácií, najmä na prenos paketov.

Prenos informácií (paketov)

Paket je základná jednotka dát, ktorá sa prenáša v sieti. Ide o všetky dáta, ktoré behajú po internete. V paketoch nám do počítača dorazí email, posledný diel Simpsonovcov, alebo instagramové fotky najmenšej čivavy na svete. Prečo sa dáta neposielajú vcelku alebo ako stream má dobré dôvody. Keď pozeráme na stream youtubera, veľmi nám nevadí, keď sa raz za hodinu na necelú sekundu nadrobno zadrhne. Ak by sme ale takto prenášali napríklad nejaký program, to „drobné zadrhnutie“ by znamenalo, že po stiahnutí nebude fungovať a najskôr ani nepôjde spustiť.

Štruktúra paketu

Dôvodom číslo jedna pre "drobenie" dát do paketov je teda bezpečnosť a spoľahlivosť prenosu. Ako sa dozvieme ďalej v lekcii, pakety sa totiž vedia opravovať a keď o nejakej ceste prídeme, máme možnosť si ich poslať znova. Ďalšími faktormi sú aj efektivita využitia siete a zníženie oneskorenia pri prenose dát. Každý paket sa skladá z:

  • riadiacich dát (metadat),
  • užívateľských dát (užitočné zaťaženie, anglicky payload).
Riadiace údaje poskytujú sieti informácie na doručenie paketu, napríklad adresu zdroja a ciele a kódy na detekciu chýb – kontrolné súčty a informácie o poradí. Obvykle sa riadiace dáta nachádzajú v hlavičkách paketov a na ich konci, pričom užívateľské dáta sú medzi nimi:
TCP/IP protokol - Základy sietí

Komunikačné protokoly

Rôzne komunikačné protokoly používajú rôzne konvencie na rozlišovanie medzi riadiacimi prvkami a dátami. V binárnych synchrónnych prenosoch používajú pakety 8-bitové skupiny (bajty) a na vymedzenie jednotlivých prvkov sú použité špeciálne znaky. Ďalšie protokoly (napríklad Ethernet), definujú začiatok hlavičky a dátových prvkov ako pozíciu vzhľadom k začiatku paketu. Niektoré protokoly formátujú informácie na úrovni bitov namiesto použitia bajtovej úrovne. Protokoly majú špecifické využitie:

  • Ethernet: široko používaný sieťový protokol pre prenos dát v lokálnych sieťach,
  • TCP/IP: sada protokolov používaných na komunikáciu v internetových sieťach,
  • HTTP: protokol pre prenos hypertextových dokumentov (webových stránok) v sieti,
  • FTP: protokol pre prenos súborov medzi počítačmi v sieti,
  • SMTP: protokol pre prenos emailov medzi počítačmi v sieti,
  • POP3: protokol pre prijímanie emailov na počítači klienta,
  • IMAP: protokol pre prijímanie a správu emailov na vzdialenom serveri,
  • DNS: protokol pre preklad doménových mien na IP adresy a naopak,
  • SSH: protokol pre zabezpečený prenos dát medzi počítačmi v sieti,
  • Telnet: protokol pre vzdialený prístup k počítaču,
  • ICMP: protokol pre odosielanie chybových správ a zisťovanie dostupnosti siete.
Obvyklý spôsob, ako vysvetliť paket, je predstaviť si ho ako list. Budeme sa ho držať aj my:-) Hlavička teda slúži ako obálka so známkou (kontrolné dáta) a adresou. Vnútri sú potom naše dáta, napríklad kúsoček spomínanej čivavy. A rovnako ako papierové listy môžu mať rôzne veľké a rôzne nadité obálky, aj počítačová sieť vie rozdeliť dáta na rôzne veľké pakety. Dokonca vie aj už odoslané pakety cestou rozdeliť na viac menších, pokiaľ je to nutné.

Siete využívajúce pakety majú teda dve základné výhody: detekciu chýb a adresáciu viacerých cieľov doručenia. Detekcia chýb zaisťuje, že prenášané dáta dorazia do cieľa v poriadku, zatiaľ čo adresácia viacerých cieľov umožňuje odoslanie jedného paketu viacerým príjemcom súčasne.

Zapuzdrenie

Máme teda fotku zubiacej sa čivavy a nutkavú potrebu podeliť sa o ňu s rodinou. Aby sme ju dostali z nášho počítača v Česku do notebooku alebo mobilu kamaráta z vedľajšej štvrti (alebo napríklad zo Španielska), musí ju naša sieťová karta rozdeliť na malé kúsky a tie potom obaliť „cestovnými dátami“ – musia z nej vytvoriť pakety. Tomuto procesu sa hovorí zapuzdrenie. Pri ňom sa dáta z jednej vrstvy siete balia do protokolu inej vrstvy, aby mohli byť poslané cez sieť. To znamená, že dáta sú obalené ďalšími informáciami, ako sú hlavičky a metadáta, aby sa zabezpečilo, že budú doručené správne a bezpečne.

Vrstvy

V modeli OSI, ako sme si ho popísali v lekcii Typy sieťových zariadení, sa zapuzdrenie používa na prenos dát od jednej vrstvy k druhej. Keď dáta opúšťajú jednu vrstvu, pridá sa k nim hlavička pre ďalšiu vrstvu, ktorá obsahuje informácie o tom, kde sa dáta nachádzajú a kam majú byť doručené. Potom sú dáta poslané na nižšiu vrstvu, kde je pridaná ďalšia hlavička a proces sa opakuje, kým dáta nedosiahnu najnižšiu vrstvu. OSI je teoretický a univerzálny model pre komunikáciu v počítačových sieťach. V praxi sa používa model TCP/IP.

Vrstvy TCP/IP

Model má štyri vrstvy, do ktorých postupne balia dáta:

  • aplikačnú vrstvu (ktorá zahŕňa relačné, prezentačné a aplikačné vrstvy OSI) poskytujúce aplikáciám prístup k systému a umožňuje im spoluprácu,
  • transportnú vrstvu poskytujúcu služby na kontrolu celistvosti dát,
  • sieťovú vrstvu, ktorá zaisťuje predovšetkým sieťovú adresáciu, smerovanie a odovzdávanie datagramov,
  • linkovú vrstvu (ktorá zahŕňa fyzickú a linkovú vrstvu OSI) umožňujúcu prístup k fyzickému prenosovému médiu.
Až potom sa výsledný paket vydá na cestu internetom po drôte, optickom vlákne alebo vzduchom, aby zakotvil v cieľovom počítači. Tam celý proces prebehne v obrátenom poradí. A až na miesto určenia dorazia všetky potrebné pakety, na kamarátovom monitore sa objaví odoslaná čivava vcelku a bez chýbajúcich dát.

Zapuzdrenie dát

Ukážme si celý proces ešte raz skrátene na prenose dát z webového prehliadača do webového servera. Keď zadáme adresu URL v prehliadači, s dátami (HTTP požiadavka) sa stane toto:

  • najprv sú poslané na aplikačnú vrstvu modelu OSI, kde sú balené do protokolu HTTP,
  • potom ich prevezme transportná vrstva, ktorá im pridá hlavičku TCP a kontrolný súčet pre zaistenie spoľahlivého prenosu,
  • následne ich preberá sieťová vrstva. Tá k nim pridá IP adresu a routingové informácie pre doručenie dát na správne miesto,
  • nakoniec si dáta prevezme linková vrstva, ktorá sa k nim pridá fyzickú adresu a kontrolný súčet na detekciu chýb.
Vidíme teda, že každučký kúsok čivavy vyráža na cestu internetom zabalený ako cibuľa do štyroch vrstiev "obalových" dát, ktorých jediným účelom je, aby dorazil nepoškodený a nezmenený do cieľového počítača.

HTTP požiadavka je vytvorený, keď používateľ zadá adresu URL do webového prehliadača. Obsahuje informácie o požadovanej webovej stránke, ako je napríklad názov servera (v URL adrese), typ požiadavky (GET, POST, atď.), hlavičky požiadavky a ďalšie metadáta.

Fragmentácia a zostavovanie paketov

Už sme si vysvetlili, že aby dáta dorazili bezpečne av poriadku z jedného počítača cez internet do druhého, delíme ich na pakety. Tie môžu mať rôznu veľkosť. Dôvodom je, že všetky siete po ceste nemusia byť rovnako priepustné. Tu sa dostáva k slovu fragmentácia. To je proces, pri ktorom sú väčšie dátové pakety rozdelené na menšie časti. Zostavovanie paketov potom znamená opačný proces, kedy sú tieto menšie časti opäť zložené do pôvodných väčších paketov.

Fragmentácia

Veľké dátové pakety sa teda v prípade potreby rozdelia na menšie časti, ktoré sa nazývajú fragmenty. Tieto fragmenty sú potom prenesené po sieti a na cieľovom zariadení sú opäť spojené do pôvodného paketu. Tento proces je potrebný v prípadoch, keď sú veľké dátové súbory prenášané cez siete s obmedzenou kapacitou alebo keď sú prenášané dáta cez sieť s obmedzenou maximálnou veľkosťou prenášaných paketov.

Príkladom môže byť situácia, kedy používateľ sťahuje veľký súbor z internetu. Ak je tento súbor prenášaný po sieti s obmedzenou maximálnou veľkosťou paketov, môže byť potrebné súbor rozdeliť na menšie časti, aby bolo možné ho úspešne preniesť. Tieto menšie časti súboru sú potom prenesené po sieti a na cieľovom zariadení opäť spojené do pôvodného súboru. Fotka našej čivavy veľká 10 MB by mohla rozprávať:-)

Veľkosť fragmentov v Internet Protocole (IP) je obvykle obmedzená na maximálnu veľkosť prenosnej jednotky (Maximum Transmission Unit, MTU) danou fyzickou vrstvou používanou v danej sieti. Väčšina sietí používa štandardnú MTU veľkosť 1500 bajtov pre ethernetové siete. To znamená, že ak chceme poslať dátový paket väčší ako 1500 bajtov, bude rozdelený na menšie fragmenty s veľkosťou 1500 bajtov alebo menej.

Fragmentácia môže byť tiež využitá v situáciách, keď sú siete zaťažené a dochádza k výpadkom prenosu. Fragmentácia potom umožňuje obnoviť prenos dát tam, kde došlo k výpadku, bez nutnosti prenášať celý paket znova.

Strata paketu

Sieťové zariadenia, ako sú smerovače a prepínače, používajú rôzne techniky na detekciu straty paketov. Napríklad sa môže použiť kontrolný súčet pre každý fragment alebo paket, ktorý je pridaný do hlavičky, aby sa mohlo zistiť, či boli dáta poškodené alebo stratené počas prenosu. Ak sa zistí, že paket alebo fragment je poškodený alebo stratený, môže sieťové zariadenie požiadať o opätovné odoslanie poškodených dát alebo použiť iné metódy nápravy problému. Tých existuje niekoľko. Jednou z nich je napríklad použitie protokolu TCP, ktorý využíva potvrdzovanie prenosu a automatické opakovanie prenosu stratených segmentov. Pokiaľ nejaký segment nie je potvrdený v určitom časovom limite, odosielateľ ho automaticky znovu odošle. Ďalšou metódou môže byť využitie protokolu FEC (Forward Error Correction), ktorý umožňuje obnovu dát bez nutnosti opakovania celého prenosu. Protokol FEC do dát vkladá redundantné informácie, ktoré umožňujú obnoviť pôvodné dáta v prípade straty niektorých fragmentov.

Zostavovanie

Zostavovanie (reassembly) je proces, pri ktorom sú fragmenty paketov spojené späť do pôvodného paketu. Tento proces prebieha na cieľovom zariadení a zahŕňa kontrolu, či sú všetky fragmenty prítomné, a ich správne spojenie v poradí, aby bol obnovený pôvodný paket.

Ak sa však fragmenty stratia alebo poškodia, cieľové zariadenie musí použiť niektorú zo spomínaných metód, ktoré problém straty alebo poškodenia paketu vyriešia.

V budúcej lekcii, Siete - IPv4 a IPv6 - Tvorba podsietí , si vysvetlíme proces tvorby podsietí, tzv. subnetting.


 

Predchádzajúci článok
Siete - Pojmy internet, extranet, intranet
Všetky články v sekcii
Základy sietí
Preskočiť článok
(neodporúčame)
Siete - IPv4 a IPv6 - Tvorba podsietí
Článok pre vás napísal Karel Zaoral
Avatar
Užívateľské hodnotenie:
4 hlasov
Karel Zaoral
Aktivity