Sieťový protokol TCP/IP

Transmission Control Protocol and Internet Protocol (TCP/IP) je štandardná sada protokolov (dohovorov o komunikácii), ktorá bola vyvinutá koncom sedemdesiatych rokov armádnou agentúrou Defense Advanced Research Projects Agency (DARPA) ako prostriedok na komunikáciu medzi rôznymi typmi počítačov a počítačových sietí. TCP / IP je hnacou silou Internetu, a preto je najpopulárnejším súborom sieťových protokolov na Zemi.

Úvod do TCP/IP

Dve súčasti protokolu TCP/IP sa zaoberajú rôznymi aspektami počítačových sietí. Internet Protocol -"IP" je protokol, ktorý sa nezaoberá pripojením, ale iba smerovaním sieťových paketov pomocou IP Datagramov a packety považuje za základnú jednotkou sieťovej informácie. IP Datagram obsahuje hlavičku, za ktorou nasleduje správa. Transmission Control Protocol - "TCP" umožňuje sieťovým hostiteľom (zariadeniam v sieti, ktoré majú svoju sieťovú adresu) nadviazať spojenie, ktoré sa použije na výmenu dát. TCP tiež zaručuje, že dáta budú doručené a že do cieľa prídu v rovnakom tvare, v akom boli odoslané.

Konfigurácia TCP/IP

Konfigurácia TCP/IP protokolu pozostáva z niekoľkých prvkov, ktoré sa nastavujú v príslušných konfiguračných súboroch alebo nasadením riešenia, akým je napríklad DHCP server (protokol na dynamickú konfiguráciu staníc), ktorý môže byť nakonfigurovaný tak, aby správnu konfiguráciu TCP/IP poskytoval sieťovým klientom automaticky. Tieto konfiguračné hodnoty musia byť správne nastavené, aby systém Ubuntu mohol vykonávať sieťové operácie.

Bežnými konfiguračnými prvkami TCP/IP sú tieto:

  • IP adresa IP adresa je jedinečný identifikačný reťazec vyjadrený štyrmi dekadickými číslami v rozsahu 0 až 255 oddelených bodkami, z ktorých každé číslo reprezentuje 8 bitov adresy s celkovou dĺžkou 32 bitov. Tento formát sa nazýva dotted quad notation.
  • Sieťová maska Maska podsiete (alebo jednoducho sieťová maska) je lokálna bitová maska určujúca, ktorá časť IP adresy prislúcha sieti a ktorá časť IP adresy patrí podsieti. Napríklad sieť triedy C má štandardnú sieťovú masku 255.255.255.0, ktorá zamaskuje prvé tri bajty (24 bitov) IP adresy a zostávajúci bajt (8 bitov) IP adresy umožňuje prideliť klientom v podsieti.
  • Adresa siete Adresa siete je reprezentovaná bajtami IP adresy, ktoré prislúchajú sieti. Napríklad stanica 12.128.1.2 v sieti triedy A používa adresu siete 12.0.0.0, pričom číslo 12 reprezentované prvým bajtom IP adresy prislúcha sieti a nuly reprezentované zvyšnými troma bajtami prislúchajú hodnotám potenciálnych staníc. Klient inej siete používajúci privátnu IP adresu 192.168.1.100 používa sieťovú adresu 192.168.1.0, ktorá je určená prvými troma bajtami 192.168.1, pretože ide o sieť tried C a nulu pre potencionálnych staníc siete.
  • Broadcast adresa Broadcast adresa je IP adresa, ktorá umožňuje poslať dáta naraz všetkým klientom siete v danej podsieti. Štandardná všeobecná broadcast adresa pre IP siete je 255.255.255.255, táto broadcast adresa sa však samozrejme nedá použiť na odoslanie broadcast správy každému klientovi v sieti Internet, pretože to smerovač nedovolí. Vhodnejšia broadcast adresa je nastavená tak, aby zodpovedala konkrétnej podsieti. Napríklad v privátnej sieti triedy C s adresou 192.168.1.0 bude brodacat adresa 192.168.1.255. Broadcast správy sú väčšinou vytvárané sieťovými protokolmi ako napríklad Address Resolution Protocol (ARP) a Routing Information Protocol (RIP).
  • Adresa brány Adresa brány je IP adresa, cez ktorú sa dá pripojiť do určitej siete alebo ku klientovi siete. Ak jedna stanica chce komunikovať s inou stanicou, ktorá nie je umiestnená v rovnakej sieti, potom je potrebné použiť bránu. V mnohých prípadoch je adresa brány zároveň adresou smerovača, ktorý prepúšťa komunikáciu do iných sietí - napríklad do Internetu. Adresa brány musí byť nastavená správne, inak sa váš systém nebude schopný pripojiť na žiadne stanice okrem tých, ktoré sú v rovnakej sieti.
  • DNS adresa DNS adresy predstavújú IP adresy systémov Domain Name Service (DNS), ktoré prekladajú menné adresy staníc na IP adresy. Existujú tri úrovne DNS adries, ktoré môžu byť zadané v tomto poradí: primárny DNS server, sekundárny DNS server a terciárny DNS server. Aby bol váš systém schopný získavať IP adresy prislúchajúce menným adresám staníc, musíte zadať správne adresy DNS serverov, ktoré ste oprávnený používať vo Vašom nastavení TCP/IP. V mnohých prípadoch vám tieto adresy poskytne Váš dodávateľ sieťových služieb, ale existujú tiež verejne prístupné DNS servery, ako napríklad servery Level3 (Verizon) IP adresami od 4.2.2.1 po 4.2.2.6.
    [Tip]

    IP adresa, sieťová maska, adresa siete, broadcast adresa a adresa brány sú nastavené v konfiguračnom súbore /etc/network/interfaces. DNS adresy sú väčšinou nastavené pomocou direktív nameserver v súbore /etc/resolv.conf. Viac informácií sa dozviete na stránkach systémového manuálu pre interfaces a resolv.conf zadaním nasledujúcich príkazov do príkazového riadka:

    Pre zobrazenie systémového manuálu pre interfaces použijeme nasledujúci príkaz:

    man interfaces

    Pre zobrazenie systémového manuálu pre resolv.conf použijeme nasledujúci príkaz:

    man resolv.conf

IP smerovanie

IP smerovanie alebo tiež IP routing predstavuje spôsob určenia alebo nájdenia cesty v sieti TCP/IP, po ktorej sa budú posielať dáta. Smerovanie používa na posielanie dátových paketov od odosielateľa k príjemcovi smerovacie tabuľky. Odoslanie pritom často prebieha cez mnoho medzičlánkov, ktorým hovoríme smerovače alebo tiež routre. Existujú dva hlavné spôsoby smerovania: statické smerovanie a dynamické smerovanie.

Statické smerovanie spočíva v manuálnom pridávaní IP trás do smerovacej tabuľky. Najčastejšie sa to vykonáva pomocou príkazu route. Statické smerovanie má oproti dynamickému smerovaniu mnoho výhod, ako napríklad jednoduchú implementáciu v malých sieťach, predvídateľnosť (smerovacia tabuľka sa určí vopred a preto je cesta rovnaká pri každom jej použití) a nízka záťaž ostatných smerovačov a sieťových prepojení vďaka tomu, že sa nepoužíva protokol dynamického smerovania. Statické smerovanie má však aj svoje nevýhody. Statické smerovanie je obmedzené na malé siete a nie je dobre prispôsobiteľné. Statické smerovanie sa tiež nedokáže prispôsobiť výpadkom pripojení kvôli nemennej povahe smerovania.

Dynamické smerovanie sa používa vo veľkých sieťach s viacerými možnými spôsobmi pripojenia od zdroja k cieľu, pričom využíva špeciálne protokoly smerovania, ako napríklad Router Information Protocol (RIP), ktorý automatický robí zmeny v smerovacej tabuľke, aby umožnil dynamické smerovanie. Dynamické smerovanie má niekoľko výhod oproti statickému smerovaniu, akými sú napríklad vynikajúca prispôsobiteľnosť a schopnosť prispôsobiť sa výpadkom pripojenia v sieti. Taktiež nevyžaduje toľko ručného nastavovania smerovacích tabuliek, pretože smerovače sa navzájom informujú o svojej prítomnosti a dostupných trasách. Táto vlastnosť tiež vylučuje chyby spôsobené ľudským faktorom. Dynamické smerovanie nie je dokonalé, pretože má aj určité nevýhody akými sú vyššia zložitosť a záťaž pri komunikácii smerovačov, čo následne pocítia koncoví používatelia zníženou šírkou prenosového pásma.

TCP a UDP

TCP je protokol, poskytujúci korekciu chýb a garanciu doručenia dát, čo je známe ako riadenie toku alebo flow control. Riadenie toku určuje, kedy je potrebné prerušiť tok dát a vyžiadať o znovuzaslanie dátových paketov kvôli problémom, akými sú napríklad tzv. kolízie, a tak zabezpečiť správne doručenie údajov. TCP sa využíva najmä na výmenu dôležitých informácii, akými sú napríklad databázové transakcie.

UDP protokol (User Datagram Protocol) je naopak protokolom, ktorý sa len zrieka zaoberá prenosom dôležitých dát, pretože nepoužíva riadenie toku ani žiadnu ďalšiu metódu, aby zabezpečil spoľahlivý prenos dát. UDP sa najčastejšie používa všade tam, kde strata zopár paketov nie je žiadna katastrofa, ako napríklad pri tzv. audio a video streamingu, pri ktorom je neporovnateľne rýchlejší ako TCP, pretože sa nezaoberá opravou chýb a riadením toku.

ICMP

ICMP protokol  (Internet Control Messaging Protocol) je rozšírením IP protokolu podľa definície Request For Comments (RFC) číslo 792 a umožňuje riadenie obsahu paketov, chýbových a informačných správ. Prokol ICMP je využívaný takými sieťovými aplikáciami, akou je napríklad nástroj ping, ktrorý vie overiť dostupnosť stanice. Príkladmi niektorých chybových hlásení užitočných pre obe komunikujúce strany, ktoré posiela ICMP, sú hlásenia Destination Unreachable (cieľ nedostupný) a Time Exceeded (vypršal čas na spojenie).

Démoni

Daemons alebo démoni sú špeciálne systémové aplikácie, ktoré sú zvyčajne spustené v pozadí a čakajú na požiadavky o služby, ktoré poskytujú z iných aplikácií. Mnoho démonov je sieťovo zameraných. Aj v Ubuntu je na pozadí spustených veľa démonov, ktoré poskytujú sieťovo zamerané služby. Medzi nich patria aj démoni: Hyper Text Transport Protocol Daemon (httpd), ktorý poskytuje služby webového servera, Secure SHell Daemon (sshd), ktorý poskytuje rozhranie pre vzialenú správu a funkcie na prenos súborov a Internet Message Access Protocol Daemon (imapd), ktorý poskytuje e-mailové služby.

Zdroje