Internetový protokol (zkratka IP) je v internetu a počítačových sítích používajících rodinu protokolů TCP/IP základním protokolem síťové vrstvy poskytující datagramovou službu. Sám o sobě neposkytuje záruky na přenos dat a rozlišuje pomocí IP adresy pouze jednotlivá síťová rozhraní (doplňující služby jsou poskytovány na vyšších vrstvách, viz referenční model ISO/OSI). I v roce 2020 je stále ještě používána starší verze protokolu IPv4 (32 bitů na adresu), nově se přechází na IPv6 (128 bitů na adresu).

Funkce protokolu

Internet Protocol je zodpovědný za směrování datagramů (paketů) ze zdrojového do cílového počítače (uzlu, hostitele) přes jednu nebo více IP sítí. Paket se skládá z řídících dat (metadat) a z uživatelských dat (užitečné zatížení, anglicky payload). Řídící data poskytují síti potřebná data k doručení paketu, například adresu zdroje a cíle, kódy pro detekci chyb – kontrolní součet hlavičky a informace o pořadí.

Data se v IP síti posílají po blocích nazývaných datagramy. Jednotlivé datagramy putují sítí zcela nezávisle, na začátku komunikace není potřeba navazovat spojení či jinak „připravovat cestu“ datům, přestože spolu třeba příslušné stroje nikdy předtím nekomunikovaly.

IP v doručování datagramů poskytuje nespojovanou a nespolehlivou službu, označuje se také jako best effort – „nejlepší úsilí“; tj. všechny stroje na trase se datagram snaží podle svých možností poslat blíže k cíli, ale bez záruky doručení. Datagram vůbec nemusí dorazit, může být naopak doručen několikrát a neručí se ani za pořadí doručených paketů. Pokud aplikace potřebuje spolehlivost, je potřeba ji implementovat v jiné vrstvě síťové architektury, typicky protokoly bezprostředně nad IP (viz TCP).

Pokud by síť často ztrácela pakety, měnila jejich pořadí nebo je poškozovala, výkon sítě pozorovaný uživatelem by byl malý. Na druhou stranu příležitostná chyba nemívá pozorovatelný efekt. Navíc se obvykle používá vyšší vrstva, která ji automaticky opraví.

Adresování a směrování

Každé síťové rozhraní komunikující prostřednictvím IP má přiřazeno jednoznačný identifikátor, tzv. IP adresu. V každém datagramu je pak uvedena IP adresa odesílatele i příjemce. Na základě těchto adres pak směrovače (routery) na trase provádí rozhodnutí, jakým směrem paket odeslat, tzv. směrování (routing).

Spolehlivost

Návrh internetových protokolů předpokládá, že síťová infrastruktura je neodmyslitelně nespolehlivá a dynamická z hlediska dostupnosti a propojení uzlů. Neexistuje žádný centrální monitoring anebo měření výkonnosti, který by umožňoval sledování, nebo udržování stavu sítě. V zájmu snížení složitosti sítě se využívá tzv. konec-konec princip. Routery v přenosové cestě pouze přepošlou pakety na další známé místní brány, které odpovídají směrovacímu prefixu cílové adresy.

V důsledku tohoto návrhu Internet Protocol poskytuje nejlepší výkon, ale služba jako taková je charakterizována jako nespolehlivá. Proto se mohou v průběhu přenosu objevit různé chyby, jako například poškození dat, ztráta paketů a opakování, ale i špatné pořadí paketů. Vzhledem k tomu, že je směrování dynamické pro každý paket a síť si neuchovává stav cesty, je možné, že některé pakety jsou směrovány přes delší cestu k určenému cíli, což vede k nesprávnému pořadí v přijímači.

Jediná pomůcka, kterou poskytuje Internet Protocol verze 4 (IPv4), je zajištění záhlaví IP paketu bez chyb pomocí výpočtu kontrolního součtu při průchodu každým uzlem. Díky této metodě je možné vyřazení paketu se špatným kontrolním součtem. V tomto případě se chyba zasílá koncovému uzlu, i když existuje tzv. Internet Control Message Protocol(ICMP). V nové verzi IPv6 se upustilo od používání IP hlavičky s kontrolním součtem ve prospěch rychlého zasílání přes směrovací prvky v síti.

Rozpoznání a opravu některého z těchto problémů je v kompetenci vrchní vrstvy protokolu. Například, aby bylo dodrženo pořadí doručení, může horní vrstva využít "cachování" dat.

Co se týče spolehlivosti, dynamický charakter a rozmanitost internetu a jeho součástí, není poskytnuta žádná záruka, že konkrétní cesta je schopná, nebo vhodná pro provedení požadovaného přenosu, i když je cesta dostupná a spolehlivá. Jedním z technických omezení je velikost datových paketů k danému odkazu. K dispozici je mechanizmus, který může zjistit velikost místní sítě (Maximum transmission unit(MTU)), stejně jako pro celou naplánovanou cestu k cíli při použití IPv6. Síťová vrstva IPv4 umožňuje automaticky fragmentovat původní datagram do menších jednotek. V tomto případě IP znovu uspořádá fragmenty dodané ve špatném pořadí.

Směrování (anglicky routing, též routování) označuje v informatice určování cest datagramů v prostředí počítačových sítí. Směrování zajišťují nejen routery, ale i koncové stanice (při vysílání) a jeho úkolem je doručit datagram (resp. paket) adresátovi, pokud možno co nejefektivnější cestou. Směrování zajišťuje síťová vrstva modelu ISO/OSI a je využíváno v lokálních sítích LAN i na Internetu, kde jsou dnes směrovány zejména IP datagramy. Síťová infrastruktura mezi odesílatelem a adresátem paketu může být velmi složitá, a proto se směrování zpravidla nezabývá celou cestou paketu, ale řeší vždy jen jeden krok, tj. komu datagram předat jako dalšímu.

Směrování podle tabulky

Pokud je po přijetí IP datagramu zjištěno, že není určen pro toto zařízení, měl by nutně být předán dále tak, že bude předán podle záznamů ve směrovací tabulce dalšímu cíli. V každém IP datagramu je uvedena IP adresa cíle, pro který je určen. Tato cílová IP adresa je porovnávána postupně se všemi záznamy ve směrovací tabulce. Tabulka je setříděna podle délky masky v jednotlivých záznamech od nejdelších (nejvíce jedniček zleva) po nejkratší (nejméně jedniček zleva), což vyjadřuje velikost cílových podsítí. Nejprve jsou tedy záznamy pro jednotlivé počítače nebo malé podsítě a teprve dále jsou záznamy pro postupně větší a větší podsítě. Postup porovnání s každým záznamem ve směrovací tabulce je následující:

  1. je proveden logický součin cílové IP adresy a masky ze zkoumaného řádku tabulky
  2. je-li výsledek roven cíli uvedenému ve zkoumaném záznamu, je nalezena shoda
  3. není-li nalezena shoda, je zpracován další řádek tabulky
  4. není-li již k dispozici další záznam v tabulce a shoda dosud nebyla nalezena, je ohlášena nedosažitelnost cílové sítě pro zkoumaný IP datagram

Vznik směrovací tabulky

Podle vzniku záznamů ve směrovací tabulce hovoříme o statickém nebo dynamickém směrování.

Statické směrování

Při statickém (též neadaptivním) směrování nejsou za běhu stanice záznamy ve směrovací tabulce nijak aktivně měněny. Může je do ní zapsat správce počítače (typicky podle údajů poskytnutých správcem příslušné počítačové sítě) nebo jsou do tabulky zapsány při startu počítače. Záznamy mohou být uchovány v konfiguračním souboru (v Microsoft Windows pak v registrech) nebo poskytovány například pomocí protokolu DHCP.

Statické směrování typicky používají koncové stanice nebo routery v malých počítačových sítích (LAN), protože záznamy není nutné v průběhu činnosti zařízení měnit a nebo proto, že jsou záznamy jednoduché.

Dynamické směrování

Dynamické (adaptivní) směrování průběžně reaguje na změny v počítačové síti (přidávání nebo odebírání podsítí) a přizpůsobuje jim obsah směrovací tabulky. Podle způsobu, jakým si jednotlivá zařízení vyměňují informace o změnách v počítačové síti, lze dynamické směrování rozdělit do několika základních skupin (které se vzájemně prolínají a kombinují). Pro distribuci těchto informací mezi směrovači se používají různé směrovací protokoly (viz níže).

Centralizované
V centralizovaném směrování posílají všechny směrovače informace, které vědí o stavu okolní sítě do jednoho centra. Řídící centrum sestavuje mapu sítě, vypočítá směrovací tabulky a rozesílá je směrovačům. Z pohledu směrovače je tento přístup velmi jednoduchý (pošle hlášení a za chvíli dostane směrovací tabulku). Navíc centrum má k dispozici kompletní mapu sítě, takže dokáže globálně určit optimální tabulky. Hlavním problémem centralizovaného přístupu je špatná škálovatelnost, protože zatěžuje přenosové kapacity sítě režijním provozem tím více, čím větší je obsluhovaná síť. Velikost sítě, kterou lze takto směrovat, je proto omezená. Dílčí problém představuje i synchronizace tabulek – směrovače poblíž centra je dostávají dříve.Při příliš velké síti může dojít k nesouhlasu tabulek z důvodu časového prodlení při aktualizaci. Centralizované směrování se proto nedočkalo širšího uplatnění.
Distribuované
Distribuované směrování představuje standardní přístup ke směrování v síti Internet. Informace o změnách se předávají postupně mezi sousedními směrovači, až se rozšíří do celé sítě. Tento přístup je dostatečně pružný a robustní, aby zvládl i dost rozlehlé sítě. Skutečnost, že Internet stojí na distribuovaných algoritmech, je nejlepším vysvědčením životaschopnosti tohoto konceptu. Konkrétní přístupy a mechanismy se výrazně liší. Nejvýznamnějšími představiteli distribuovaných protokolů jsou: RIP, OSPF, BGP.
Hierarchické
Řeší problém rozlehlých sítí a neúměrné velikosti směrovacích informací tím, že autonomní systém rozdělují do několika relativně samostatných oblastí (autonomní systémy). Záplavové informace o změně v topologii sítě se šíří pouze v rámci oblasti. O výměnu souhrnných informací mezi oblastmi se starají hraniční směrovače (propojující jednotlivé oblasti mezi sebou). Jedna oblast tedy dostává o ostatních oblastech pouze souhrnné informace (s agregovanými prefixy). Tento způsob nabízí např. protokol OSPF.

Dále vypsaná směrování nejsou široce používána, jsou uvedena pro ucelený přehled:

Izolované
Izolované směrování je založeno na individuálním přístupu. Nikdo nikomu neposílá žádné informace o stavu sítě, každý směrovač se rozhoduje zcela samostatně. Do této skupiny patří například záplavový algoritmus (též roztékání, flooding), kdy každý směrovač pošle paket do všech rozhraní kromě toho, z nějž dorazil. Tento algoritmus je velmi nehospodárný, na druhé straně ale zkouší všechny cesty, takže najde i tu nejlepší. Používá se v případech , kdy je možné síť nadimenzovat (například pro přepravu dat pro řízení jaderného reaktoru, nebo ve vojenství) nebo je třeba informaci co nejrychleji rozšířit po celé síti. Největším problémem roztékání jsou cykly v síti, které způsobí, že paket se po čase vrátí znovu a znovu… Primitivním řešením tohoto problému je omezit životnost paketu.
Záplavový algoritmus používá směrovací protokol OSPF pro šíření informací o změnách v síti.
Náhodné směrování
Náhodné směrování je zdánlivě nesmyslný způsob, avšak občas se používá v případě zahlcení směrovače, který nestíhá prohledávat routovací tabulku, a tak pakety, které by normálně zahodil, pošle náhodným směrem a má částečnou šanci se s paketem trefit do správné cesty (tudíž odesílatel nebude muset ztracený paket znovu po síti posílat a tím fakticky zvyšovat zátěž sítě).V pozadí je myšlenka, že kromě náhodnosti paket narazí na router, který správnou cestu zná (nalezne ve své tabulce).Kromě šance na doručení jinak zahozeného paketu může takto zahlcený router přenést část své zátěže na okolní aktivní prvky.
Zdrojové směrování
Zdrojové směrování (anglicky source routing) je používán na linkové vrstvě např. v Token ringu. Odesílatel nejprve zašle do sítě záplavovou výzvu ke zjištění cesty k hledanému cíli. Pokud je příjemce dosažitelný, vrátí se mu odpověď v podobě výsledné trasy (seznamu routerů po cestě od odesílatele k příjemci). Výhodou tohoto způsobu je, že najde opravdu tu nejkratší cestu ze všech možných cest, avšak záplavový způsob je značně nešetrný k přenosovým kapacitám sítě.
Zpětné učení
Zpětné učení funguje podobně jako přehazování paketů na switchi na linkové vrstvě. Pokud router obdrží paket s příjemcem, o kterém neví, kde se nachází, pošle ho dál na všechna rozhraní (s výjimkou toho, odkud paket přišel). Avšak současně s každým procházejícím paketem si poznamenává, na jaké rozhraní přišel paket s daným odesílatelem. Tímto způsobem se učí topologii sítě (na kterém rozhraní jsou kteří hostitelé, tedy fakticky routovací tabulku).

Směrování v Internetu

Jelikož jsou rozměry Internetu obrovské, je v něm směrování realizováno hierarchicky. Celý Internet je rozdělen na autonomní systémy (anglicky Autonomous System, AS). Autonomní systém je část sítě s jednotnou směrovací politikou vůči zbytku Internetu. Typickým příkladem je síť jednoho poskytovatele Internetu a jeho připojených zákazníků. Uvnitř autonomního systému se typicky používá směrovací protokol IGP (anglicky Interior Gateway Protocol). Předávání směrovacích informací mezi autonomními systémy řeší směrovací protokol EGP (anglicky Exterior Gateway Protocol).

Autonomní systém (AS) je skupina směrovačů a IP prefixů (též rozsahů, např. 128.6.0.0/16) se společnou směrovací politikou a pod společnou správou. Vlastní autonomní systém mají typicky ISP, datacentra nebo jiné společnosti s rozsáhlou počítačovou sítí.[1]

Každý IP rozsah patří do jednoho autonomního systému. Nemá-li síť vlastní autonomní systém, spadá zpravidla do autonomního systému svého ISP – svoje IP rozsahy pak má od tohoto ISP zapůjčené. Vlastní autonomní systém (a IP rozsah) je ale nezbytný pro tzv. multihoming, tedy připojení sítě k Internetu přes více ISP najednou. Protože se potřeba záložní internetové konektivity stále více rozmáhá i mezi menšími podniky a počet autonomních systémů v Internetu není neomezený, čísla autonomních systémů se postupně vyčerpávají, podobně jako IPv4 adresy.

Autonomní systémy vytváří dvouúrovňovou hierarchii směrování na Internetu – dělí směrování na směrování mezi autonomními systémy a na směrování v rámci jednoho autonomního systému. Pro směrování mezi autonomními systémy se používají EGP (Exterior Gateway Protocol) protokoly. Současným standardem je BGP (Border Gateway Protocol) verze 4. Pro směrování v rámci autonomního systému se používá některý z IGP (Interior Gateway Protocols) protokolů – typicky RIP, OSPF, IS-IS nebo EIGRP. Směrování v rámci AS je interní záležitostí AS a rozhoduje o něm správce AS – nemá vliv na část internetu vně AS.[1]


Používané směrovací protokoly

interní (uvnitř AS):

  • RIP(2) (Routing Information Protocol)
    • velmi jednoduchý
    • v malých sítích (max.15 skoků)
    • všechny routery broadcastují to, co znají (na počátku jen okolní sítě)
    • pomalá konvergence
  • OSPF (Open Shortest Path First)
    • ve větších sítích
    • area backbone (0.0.0.0)
    • ostatní arey
externí (mezi AS):

Border Gateway Protocol (BGP) je dynamický směrovací protokol, který umožňuje routerům automaticky reagovat na změny topologie počítačové sítě. Protokol BGP je používán v rámci směrování hraničních uzlů AS, a proto jej používají poskytovatelé připojení k Internetu s vlasním AS a peeringové uzly. Pro rozlišení jednotlivých podsítí jsou používána čísla autonomních systémů (AS). Aktuální verze je BGP4, která byla popsána v RFC 4271 v roce 2006.



zdroj: cs.wikipedia.org



Naposledy změněno: čtvrtek, 5. ledna 2023, 16.49