Protokolová sada TCP/IP

je vytvořena na základě obecných principů tvorby vrstvové architektury:

  • princip služeb - každá nižší vrstva poskytuje služby vrstvě vyšší,
  • princip přidávání a odebírání záhlaví - na úrovni dané vrstvy  protokolové entity spolu komunikují pomocí výměny informací uložených do záhlaví datových bloků.

Vzdálená komunikace na úrovni vrstvy probíhá pomocí komunikačních protokolů, které si vyměňují příkazy a odpovědi obsažené v záhlaví a vlastní data zvaná PDU (Protocol Data Unit). Záhlaví a PDU vyšší vrstvy tvoří PDU nižší vrstvy.

V současné době se nejvíce používá protokol IP ve verzi 4 (IPv4), je však postupně nahrazován verzí 6 (IPv6). Mezi nejvýraznější rysy IPv6 patří adresa o délce 128 bitů (zapisuje se v tvaru např. 2001:0718:0808:1203:ABEF:0000:0012:C0D2 - tato adresa by patřila uzlu z Univerzity obrany).

Protokol IP verze 4

Jádrem protokolové sady TCP/IP je protokol IP. Jde o typ přenosu dat bez navázání spojení (datagramová služba),  tj. neposkytuje možnost dohovoru o datových službách, který spojově orientované protokoly uzavírají při navazování spojení. Samostatný pohyb datagramů se ukázal pro rozlehlé sítě jako vysoce efektivní. Spojově orientované protokoly poskytují rovněž hlášení o mimořádných stavech a to IP chybí. Proto byla navržena jeho nástavba ICMP (označuje se jako protokol, i když to ve skutečnosti samostatný protokol není), která tyto služby poskytuje. Pro zjišťování MAC adres na základě znalosti IP adres slouží protokol ARP. Ten umožňuje posílat IP pakety na adresu síťové karty.

Z hlediska adresování  protokolová sada vznikla v určité době a pokrývala perspektivní požadavky z hlediska tehdejších představ. Dnes toto schéma bylo zaskočeno prudkým nárůstem počtu uživatelů Internetu. Růst Internetu se rovněž projevuje v nárocích na velikost směrovacích tabulek. Fragmentace a defragmentace paketů podle aktuálních požadavků sítě u rozsáhlých sousítí zpomaluje. Naopak jednoduchost protokolu IP se ukázala jako velmi praktická i pro dnešní dobu.

Uzly sítě jsou jednoznačně identifikovány IP adresou o délce 32 bitů, což se ukázalo jako nedostačující - adresní prostor IPv4 je dnes prakticky vyčerpán. Bývalá Vojenská akademie v roce 1992 získala adresu sítě třídy B (160.216.0.0, viz níže), díky čemuž má nyní Univerzita obrany k disapozici 65 636 adres i zmíněné vyčerpání se jí netýká.

Pro práci s IP protokolem lze doporučit nástroje z http://www.ks-soft.net/ip-tools.eng/.

Význam polí záhlaví IP datagramu specifikuje RFC791 a to následujícím způsobem

  • platná verze je 4;
  • délka záhlaví (IHL – Internet Header Length) je uváděna ve čtyřoktetových
  •    slovech (pokud není použito pole „volby“, je v zde uložena hodnota 5);
  •    pole typ služby má následující strukturu podpolí (užívají se specifikaci požadavku na zajištění kvality služeb, např. u přenosů hlasu nebo u směrovacích protokolů):
    • precedence (tři bity);
    • bity D, T, R;
    • dva nevyužívané bity s nulovou hodnotou;

  Precedence udávají priority síťového provozu (síťové řízení nejvyšší,   směrování nejnižší). Nastavený bit D (delay) označuje požadavek na nízké zpoždění, T (throughput) na vysokou průchodnost) a R (relibility) na  vysokou kvalitu přenosu. Podle bitů D, R a T jsou některé směrovací protokoly (např. OSPF) určovat vhodnou směrovací tabulku.

  •  Význam příznaků Z a M je následující
    • Z  - zákaz fragmentace,
    • M - (more), udává, že za tímto fragmentem jsou ještě další fragmenty segmentu.

Třídy adres sítí IPv4

Při návrhu principů adresace IPv4 autoři stáli před dilematem, jak na jedné straně zajistit unikátnost každé IPv4 adresy a současně se obejít bez tuhé centralizace. Řešení po jistou dobu zajistilo zavedení tříd adres sítí. Centrální autorita přidělovala institucím úvodní část adresy (unikátně) a o zbytek pečovala instituce samotná; složením vznikla kýžená unikátní IP adresa.

Byly definovány tři třídy IP adres pro běžné používání (označené jako A, B, a C), jedna třída pro skupinové vysílání dat (multicasting - D) a jedna experimentální třída (E).

  • Adresy třídy A: 0.0.0.0. až 127.255.255.255
    • V praxi od 1.0.0.0
    • Adresu sítě určuje první oktet, jehož nejvyšší bit má hodotu 0
      • Lze vytvořit 127 sítí po cca 16 miliónech uzlů (224)
  • Adresy třídy B: 128.0.0.0 až 191.255.255.255
    • Adresu sítě určují první dva oktety, nejvyšší dva bity prvního oktetu mají hodnoty 10
      • Lze vytvořit cca 16 tisíc sítí (214) po cca 65 tisícech uzlů (216)
  • Adresy třídy C: 192.0.0.0 až 223.255.255.255
    • Adresu sítě určují první tři oktety, nejvyšší tři bity prvního oktetu mají hodnoty 110
      • Lze vytvořit cca 2 milióny sítí (221) po 256 uzlech (28)
  • Adresy třídy D: 224.0.0.0 až 239.255.255.255
  • Adresy třídy D: 240.0.0.0 až 255.255.255.255

Reálné počty adres uzlů jsou vždy o 2 menší, první adresa každého rozsahu identifikuje samotnou síť, poslední pak slouží pro rozhlašování (broadcast - paket je určen všem). 

Vyhrazené adresy pro použití v privátních sítích, překlad adres

Jedná se o plnohodnotné adresy, u kterých bylo dohodou (standardem RFC1918) stanoveno, že nebudou přiděleny žádné konkrétní instituci, nýbrž že jich smí použít kdokoliv a to uvnitř své sítě. Síťové prvky v Internetu jsou totiž nastaveny záměrně tak, aby pakety určené pro takové sítě zahazovaly. Při odesílání paketů z vnitřní sítě instituce je tedy nutno tyto privátní adresy nahradit veřejnými adresami (a při návratu paketů nesoucích odpovědi pak provést opačnou operaci). Toto řeší mechanismus překladu adres (Network Address Translation, NAT).

  • 10.0.0.0           -   10.255.255.255  (10.0.0.0/8)
  • 172.16.0.0       -   172.31.255.255  (172.16.0.0/15)
  • 192.168.0.0     -   192.168.255.255 (192.168.0.0/16)

 

Zvláštní adresy

  • 0.0.0.0                 - tato stanice
  • 0.0.1.50               - stanice v místní síti
  • 255.255.255.255 - rozhlašování (teoreticky by postihlo celý Internet)
  • 160.216.255.255 - rozhlašování v dané síti
  • 127.0.0.1             - loopback (interní adresa v rámci vlastního systému)

 Address Resolution Protokol (ARP)

Protokol ARP slouží pro nalezení MAC adresy ("fyzické" - správněji adresy na linkové vrstvě) k zadané IP adrese. Stanice A chce poslat paket stanici B. ARP nejprve zkontroluje lokální cache (ARP tabulku), zda se tam ony údaje vyskytují. Pokud ne, rozhlásí svůj požadavek, v němž je místo pro adresu příjemce prázdné. Stanice, která pozná svou IP adresu, odpoví, přičemž v odpovědi bude stát její MAC adresa; tu si tazatel si ji doplní do své cache paměti. Současně si ale všechny stanice poznamenají IP a MAC adresu tazatele, neboť jeho dotaz byl vyslán formou rozhlašování. Údaje v paměti cache (ARP tabulce)  jsou drženy typicky 3 minuty od jejich posledního použití.

Fragmentace paketů

Paket má při odesílná určitou délku (v praxi do 1500 oktetů). Vyskytne-li se na trase úsek, kde je přípustná délka paketu snížena, je možné před vstupem do něj paket rozdělit (fragmentovat). Fragmentaci dokáže provést každý směrovač, avšak může být nastavením bitu v záhlaví paketu zakázána (pak je paket zahozen, o čemž odesílatel je vyrozuměn). Zpětné složení paketů provádí až konečný cíl. Fragmentace po cestě přináší některá bezpečenostní rizika, v IPv6 již není možná.

Příklad:

Původní datagram: Délka dat = 850, Identifikace = 1, Ofset = 0, More = 0

1. fragment: Délka dat = 240, Identifikace = 1, Ofset = 0, More = 1

2. fragment: Délka dat = 240, Identifikace = 1, Ofset = 30, More = 1

3. fragment: Délka dat = 240, Identifikace = 1, Ofset = 60, More = 1

4. fragment: Délka dat = 130, Identifikace = 1, Ofset = 90, More = 0

Doba života paketů

Doba života paketu musí být omezena, jinak by sítě mohly být plné bloudících paketů, hledajících cíl. Původně se předpokládalo, že doba života se bude měřit v časových jednotkách (příslušné pole bylo označeno Time To Live - TTL). To se ukázalo na jedné straně jako neúměrně náročné a na druhé straně jako zbytečné, takže kritériem životnosti je počet skoků přes směrovače. Pole TTL je odesílatelem nastaveno na určenou hodnotu (často 64 nebo 128) a každý překonaný směrovač ji sníží. Dosáhne-li se hodnoty 0, je paket zahozen. V další verzi IP se proto dané pole označuje názvem, který odpovídá realitě - Hop Count neboli počet skoků.

 
Internet Control Message Protocol (ICMP)

  • zprávy ICMP posílají směrovače či stanice
  • slouží pro řízení a informace o chybách
  • konkrétně
    • cíl je nedosažitelný
    • „hašení“ zdroje
    • přesměrování
    • požadavek/odpověď na masku subsítě
    • požadavek-odpověď na odezvu

Adresy podsítí

Z části adresového prostoru, vyhrazené pro identifikaci hosta, je část obětována ve prospěch vytvoření další úrovně adresace - úrovně podsítí. Například firma místo adresace typu „síť firmy - stanice“ bude používat adresaci typu „síť firmy - síť oddělení firmy - stanice“. Ke specifikaci popdsítě slouží maska o délce 32 bitů. Hodnota 1 znamená, že jde příslušná část IP adresy udává adresu sítě, hodnota 0 pak adresu konkrétního uzlu.

Příklad

Adresa sítě: 160.216.0.0

Maska podsítě:  255.255.255.0, tj. binárně

11111111.11111111.11111111.00000000

(Jiná forma zápisu je 160.216.0.0/24)

Tato maska umožňuje vytvořit 256 podsítí, každá může mít až 254 uzlů

Naposledy změněno: středa, 25. dubna 2012, 10.07