4. díl - Sítě - Internet a směrování dat

Sítě Sítě - Internet a směrování dat

Tento článek obsahuje obecné informace o tom, co je vlastně Internet, jaká je jeho struktura, jak pracují routery apod. Žádné konkrétní detaily zde nenajdete, a není problém článek přeskočit a vrátit se k němu až po přečtení dalších dílů – ty budou již zaměřené na technické detaily.

LAN -> MAN -> WAN -> Internet

Nejzákladnějším stavebním blokem Internetu jsou LAN (local area network). Jako LAN se označuje počítačová síť, která pokrývá malé území. Nejmenší LAN jsou ty v domácnostech (2 – 5 zařízení), ty největší spojují třeba několik firemních budov (tisíce zařízení). Také můžeme říct, že je to síť, která má jednoho majitele (domácí síť - rodina, firemní síť - společnost). Na mapě by mohly vypadat takhle:

Local area network

Domácnosti, firmy a další instituce si zařizují (a platí) připojení k Internetu u poskytovatelů Internetového připojení – tzv. ISP (Internet service provider). ISP může být v jednom městě i více, pro jednoduchost budu předpokládat jednoho. Všechny LAN ve městě tím pádem vedou k tomuto ISP, jsou navzájem propojené, a dohromady tvoří síť označovanou jako MAN (metropolitan area network). Tyto počítačové sítě tedy obvykle pokrývají území jednoho města/obce, případně zahrnují i přilehlé oblasti:

Metropolian area network

Pokud propojíme více MAN, dostaneme WAN (wide area network). Tady se neomezujeme na nějaké konkrétní území – WAN = spojení dvou či více MAN. Můžeme mít tedy WAN Zlín + Otrokovice, WAN Morava, WAN Česká republika, WAN Evropa…

A největší existující WAN – mezikontinentální propojení většiny měst a států - právě to je Internet. Je to síť domácností, firem, ISP, rozvodových center, atd. To vše je pospojované jak měděnými dráty, tak optickými vlákny. Internet umožňuje velmi rychlý přenos informací (doba putování signálu na konec světa a zpět může být ve stovkách milisekund). A také je díky své architektuře odolný vůči výpadkům nebo poškození (což byl původní primární účel při jeho návrhu). Je to zajištěno tím, že na většinu míst vede více spojů (cest), výpadek elektřiny nebo katastrofa v jedné oblasti nemusí tedy nutně odstavit přístup k Internetu oblastem jiným – komunikace bude probíhat jinudy. Největší škoda může být způsobena narušením významného páteřního spojení - např. podmořských kabelů v Atlantiku.

Poskytovatelé Internetového připojení

Už jsem zmínil, že domácnosti, firmy a další platí poplatky ISP za poskytování připojení k Internetu. Otázka zní, komu platí tito ISP za přístup k internetu? A komu platí tito za přístup k Internetu?

ISP se člení na tři úrovně (tiery): Tier 1, 2, 3.

Tier 1 ISP

Je jich celkem 15 (z toho 9 má HQ v USA). Jsou to společnosti, které mají ve správě hlavní síťové rozvodny Internetu a propojení mezi nimi. Jádrové rozvodny jsou propojené jak v rámci jedné společnosti, tak s rozvodnami několika ostatních Tier 1 ISP. Přesnou světovou mapu jsem nenašel, ale takhle by mohlo vypadat rozložení hlavních rozvodů v Evropě:

Europe network map

Je vidět, jak se kabely sbíhají ve velkých městech, kde jsou rozvodny. Od Británie poté vede pás optických podmořských kabelů středem Atlantiku k pobřeží USA.

Těchto 15 Tier 1 ISP tvoří tzv. páteř internetu (Internet Backbone). Tier 1 ISP neplatí nikomu poplatky, naopak – každý, kdo potřebuje přístup do globálního Internetu, musí platit poplatky Tier 1 ISP. Na tuto páteřní síť se napojují buď Tier 2 ISP, nebo centra největších světových společností.

Tier 2 ISP

Neboli národní/regionální ISP – poskytují připojení v rámci svého státu (nebo jeho oblasti), a platí za připojení k páteřní Tier 1 síti. I Tier 2 poskytovatelé mohou být navzájem propojeni – všechna data tak nemusí putovat přes páteřní síť, a tím se zamezí jejímu přetížení.

Velké korporace si opět mohou v rámci zvýšení spolehlivosti či rychlosti zařídit připojení přímo s Tier 2 rozvodnami, ale jejich hlavní účel je poskytnout přístup Tier 3 ISP:

Tier 3 ISP

Alias lokální poskytovatel připojení – obvykle pokrývají oblast jednoho města + jeho okolí. Za přístup k Internetu samozřejmě platí poskytovatelům druhé úrovně.

Od těchto ISP si domácnosti a běžné instituce pořizují přístup k Internetu.

Architektura (struktura) Internetu

Internet se v podstatě skládá jen ze dvou hlavních komponent: Routerů a spojení (kabelů). Úkolem routerů je dopravit data, která obdrží, na správné cílové zařízení (PC, server, jiný router). Schematický obrázek Internetu může vypadat třeba takhle (ty modré věci, to je obecná značka routeru):

internet schematic

Modré routery znázorňují ty routery, které nejsou spojeny s koncovými zařízeními – pouze mezi sebou. Takové se nacházejí v budovách lokálních ISP a v centrálách Tier 2 a Tier 3 ISP. Jejich úkolem je přenést data přes Internet do cílové LAN, aby LAN router mohl přeposlat data cílovému zařízení.

Internet cloud

scheme network cloud

Pokud řešíme komunikaci mezi dvěma zařízeními (zde PC -> server) na úrovni protokolů (zpracování, sestavení paketů a rámců), tak nás nezajímá, kolik se mezi nimi nachází routerů, přes jaké kabely komunikace prochází, apod. - prostě předpokládáme, že si data přes Internet cestu samy "najdou". Proto se síť routerů znázorňuje tímto způsobem – jako „Internetový obláček“ (nepleťte si to s cloudovým úložištěm!).

IP adresy a routování

Možná jste si 2 odstavce zpátky položili otázku: „Jak můžou routery přesměrovat data na správné místo? Jak můžou vědět, kde se jaký stroj nachází?“ Začneme od začátku:

Už v minulém díle jsem se zmínil o IP adresách. Je to 32-bitová adresa, kterou můžeme přidělit zařízení (resp. jeho NIC). Na Internetu má (musí mít) každé koncové zařízení jedinečnou IP adresu (ano, toto byl původní záměr, ale vyskytl se drobný problém – o tom se dočtete v příštím díle), a routery mají minimálně 2 IP adresy, protože mají minimálně 2 NIC.

Zjednodušeně: Routery vytvářejí ve své paměti mapu, kde se nacházejí jaké zařízení (IP adresy) – tento proces se nazývá Routing. A pomocí těchto map – routovacích tabulek – přeposílají data na cílová zařízení – tento proces se označuje jako forwarding.

Routování

Routování je poměrně složitý proces. Existuje několik routovacích protokolů s netriviálními algoritmy. Jeho základní princip je však vcelku jednoduchý:

Pokud jsou k routeru (A) připojené koncové zařízení přímo, může si router (A) do své routovací tabulky uložit jejich adresy. Tuto tabulku poté přepošle svému „sousednímu“ routeru (B). Ten si záznamy přidá do své routovací tabulky – pokud obdrží data pro nějaký PC, co se nachází za prvním routerem (A), podle své routovací tabulky rozhodne, že je data třeba odeslat právě na první router (A). Router (B) poté sdílí tuto tabulku se svými dalšími sousedy, ti zase se svými, až se informace postupně rozšíří do všech routerů. Tak každý router ví, kde se jaké zařízení nachází, a na jaké routery případně forwardovat data.

Tabulky se odesílají periodicky v určitých intervalech (např. 30 sekund) – když se připojí nové zařízení, za několik minut o něm může vědět celý Internet.

Zní to docela jednoduše, a to proto, že to tak bohužel reálně nefunguje. Na světě je prý 3x více zařízení než lidí, a kdyby měl každý router mít v tabulce každé konkrétní zařízení, a tuto tabulku navíc periodicky posílat sousedům… Prakticky nerealizovatelné. Naštěstí mají routery usnadněnou práci, protože IP adresy nejsou přiřazovány jen tak „random“, ale systematicky:

Přidělování IP adres

Všechny IP adresy „vlastní“ organizace Internet assigned numbers authority (IANA), a ta je přiděluje celkem pěti světovým regionům. Zde se můžete dozvědět detaily: http://www.iana.org/numbers. Každý region dostává určité rozsahy IP adres (takže můžeme rozhodnout, která IP adresa je „africká“ a která je ze Severní Ameriky), a region z tohoto rozsahu přiděluje další díly jednotlivým zemím, jednotlivé země zase jednotlivým Tier 2 ISP. Tier 2 ISP pak přidělují adresy lokálním ISP, a až tito Tier 3 ISP přidělují adresy nám – uživatelům.

Routování je tímto velmi usnadněno – pokud „americký“ router dostane paket s cílovou IP adresou z Evropy (ČR), stačí to poslat na sousední router, který je „blíže“ Evropě. Tak se paket dostane k „evropským“ routerům, kterým zase stačí vědět, že je to paket pro ČR. Další router už bude vědět, že jej má odeslat do Olomouckého kraje. Tam se dostane k lokálnímu ISP, a jejich router paket přepošle na správnou LAN.

Routovací tabulky tedy nemusí obsahovat konkrétní IP, ale pouze rozsahy. Vlastně vůbec neobsahují (výjimka se ale asi najde) konkrétní IP adresy, ale tzv. podsítě – o nich se dočtete v dalších dílech.

Default route

Kromě toho má (nebo by alespoň měl) každý router nakonfigurovanou tzv. default gateway/route (jeden ze sousedních routerů je zvolen jako "výchozí") - na něj pošle každý paket, jehož cílovou adresu nemá router ve své tabulce. Toto dovoluje, aby některé (spíše jen ty menší, okrajové Tier 3 ISP) routery měly konkrétní záznamy jen o svém blízkém okolí, a s čím si neví rady, to pošlou přes default route. Takto se třeba zvýší pravděpodobnost doručení paketů na "čerstvě" přidělené IP adresy, o nichž ještě nemají "povědomí" všechny routery (ačkoliv to je otázka několika minut).

To by bylo k obecnostem vše, další díl začneme zase od jednotlivých bitů k IP adrese, masce podsítě, výchozí bráně, dále až k samotnému IP paketu a jeho funkcím. Pokud máte nějaké dotazy nebo připomínky, tak si je rád přečtu v komentářích.


 

  Aktivity (8)

Článek pro vás napsal Lukas C#
Avatar
Věnuji se IT spíše co se týče SW, baví mě programování v C#. Nejvíc mě však těší, když můžu pomáhat a učit ostatní :-)

Jak se ti líbí článek?
Celkem (20 hlasů) :
4.800014.800014.800014.800014.80001


 


Miniatura
Všechny články v sekci
Síťové technologie
Miniatura
Následující článek
Sítě - Internet protokol - hlavička

 

 

Komentáře
Zobrazit starší komentáře (13)

Avatar
pavel.masika
Člen
Avatar
pavel.masika:

Na konec světa a zpět v řádu milisekund? To už jsme překonali rychlost světla?

 
Odpovědět  -3 30.11.2015 10:14
Avatar
Lukas C#
Redaktor
Avatar
Odpovídá na pavel.masika
Lukas C#:

Rychlost šíření elektrického pole (napětí) je téměř shodná s rychlostí světla. Takže jdeme počítat: Třeba případ, kdy by se jelo kolem celého rovníku a zpátky - 80 000 km. 80 000 km / 300 000 km/s = 266 milisekund. A kdybychom jeli třeba z Londýna do Pekingu, tak i kdyby byly kabely zkroucené o zatáčené do délky 60 000 km, tak máme 120 000 km / 300 000 km/s = 400 ms. Práce routerů by měla být v řádu mikrosekund, takže tu nepočítám. Zkus si zahrát agar.io na čínských serverech - já měl maximální odezvu 2 sekundy.

 
Odpovědět  +3 30.11.2015 15:06
Avatar
pavel.masika
Člen
Avatar
Odpovídá na Lukas C#
pavel.masika:

Takže to jsou STOVKY milisekund.

 
Odpovědět 30.11.2015 15:12
Avatar
Lukas C#
Redaktor
Avatar
Odpovídá na pavel.masika
Lukas C#:

V řádech milisekund neznamená, že je to v **jednotkách **milisekund. To znamená, že ta hodnota je menší, než celá jednotka o řád - tisíc - nad ním. V řádu milisekund je 1, 10, 100, 800 milisekund, ale ne už 1000 milisekund a výš.

 
Odpovědět  +1 30.11.2015 15:24
Avatar
pavel.masika
Člen
Avatar
Odpovídá na Lukas C#
pavel.masika:

Řád je tisíc? Takže ty nepoužíváš desítkovou soustavu? Zajímavé.

 
Odpovědět 30.11.2015 15:40
Avatar
Lukas C#
Redaktor
Avatar
Odpovídá na pavel.masika
Lukas C#:

Ve fyzice používáme řády spíše jako označení pro stupně tisíců - nano, mili, mikro, mega, giga, tera... Jinak máš samozřejmě pravdu, řád je jedno des. místo. Co se týče soustav, Teď mám pocit, jakobych používal více šestnáctkovou a binární než desítkovou :-). Ale co je nejpodstatnější - článek je určený pro lidi se zájmem sa chutí si něco přečíst, ne pro rejpaly, kterým nejde ani tak o obsah jako o zdvíhání svého nízkého sebevědomí na prokazovaní svojí pravdy o minoritních detailech. Odpověď jsem ti už přeci dal - na dvě nejvzdálenější místa Internetu by to mohlo trvat půl vteřiny až dvě, v době zatížení to sotva lze přesně říct.

 
Odpovědět 30.11.2015 15:59
Avatar
pavel.masika
Člen
Avatar
pavel.masika:

Tak my teda ve fyzice řády jako "stupně tisíců" nepoužíváme, ani jsem se s tím ještě nesetkal u nikoho z kolegů fyziků. A právě proto, že mi jde o obsah, jsem upozornil na chybnou informaci v článku. Kdybych byl laik tak bych po přečtení inkriminované věty měl dojem, že zpoždění bude stokrát menší než je ve skutečnosti. A když už jsem za rejpala tak pro úplnost ještě koukni na https://en.wikipedia.org/…_fiber_cable#…. Já bych neřekl, že číslo 200 je téměř shodné s číslem 300 jako ty. Ale je to zanedbatelná nepřesnost v porvnání s chybou dvou řádů, to zase jo, vzhledem k tomu, že stonásobek je minoritní detail...

 
Odpovědět 30.11.2015 16:17
Avatar
Lukas C#
Redaktor
Avatar
Odpovídá na pavel.masika
Lukas C#:

Jaj, jsem se netrefil o 100 000 km/s - díky za upozornění, a promiň za rage. No, každopádně, v článku to tedy přepíšu na stovky milisekund, ať je to v pohodě.

 
Odpovědět 30.11.2015 16:35
Avatar
pavel.masika
Člen
Avatar
pavel.masika:

Bezva, dik.

 
Odpovědět 30.11.2015 16:38
Avatar
Odpovídá na pavel.masika
Aleš Hamerle:

Vzhledem k probíranému tématu je to skutečně minoritní detail. Stejně jako mě netrápí že RS ≠ 300.000 km/s, z čehož ty musíš šílet...

Editováno 19. října 14:28
 
Odpovědět 19. října 14:27
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 23. Zobrazit vše