Archiv pro štítek: switch

Protokol IP, adresa a maska, směrování, IP multicast

Následující článek vám vysvětlí, co je to vlastně ta IP adresa a proč, když si chcete zahrát csko po LANce, tak musíte vyplnit nějaké 255.255.255.0. Ale pěkně popořadě.

IP adresa

Jedná se jednoznačný identifikátor počítače v síti (ale té počítačové), pokud je používán protokol IP, což bude platit prakticky pro každého čtenáře tohoto článku. IP adresa se skládá ze čtyř částí, které oddělují tečky. Každé této čtvrtině se říká oktet, IP adresa je tedy složena ze čtyř oktetů. Každý oktet může obsahovat číslo v rozmezí  0 až 255. Proč zrovna 255? Protože na uložení čísla máme jen 8 bitů, tedy jeden bajt a pokud tento bajt vyplníme samými jedničkami, tak větší číslo než 255 nedostaneme (111111112 => 25510). Takový běžný domácí počítač mívá IP adresu ve stylu 192.168.1.X nebo 10.0.0.X, kde X je typicky malé číslo (např. 1, 2 nebo 3) .

Proč já mám 192.168.1.1, kamarád taky a internet nespadne?

Protože kamarád bydlí jinde, a má u sebe jinou počítačovou síť, než je u vás doma. Koukněte znovu na první řádek předcházejícího odstavce, IP adresa musí být jedinečná v rámci sítě, kterých je ale na světě nepočítaně (Blaník, Jára Cimrman). Kamarád má síť, vy máte síť. Ale zkuste se oba sejít např. u vás doma (v rámci jedné počítačové sítě) a oba dva si nastavte stejnou IP adresu, to se teprve budou dít divy :-).

Protokol IP

Toto téma jsme už načali, troufale jsem tvrdil, že protokol IP používá prakticky každý. Umí totiž velice důležitou věc, propojit více sítí dohromady. Tohoto cíle dosahuje směrováním paketů. Až si budete na Facebooku psát se svým kamarádem, bude to právě protokol IP, který zaslanou zprávu přes různé počítačové sítě doručí na servery Facebooku a odtud až do počítače vašeho známého. Zmíněný paket se skládá jak se samotné zaslané zprávy na Facebooku (např. jj, příjdu), tak metadat, s jejíchž pomocí bude protokol IP vědět, kam paket doručit.

Zajímavé je, že protokol IP nezaručuje, že paket skutečně doručí, jen se o to pokusí. Což může být docela problém, že? Co kdybychom posílali přes datovou schránku daňové přiznání a ono nedorazilo? Proto se IP kombinuje s dalším protokolem TCP. Výsledné kombinaci se říká TCP/IP a zmíněné TCP v této dvojici zaručuje spolehlivé doručení zprávy ve správném pořadí. Ne vždy je to ale výhodné. Až bude Česko sledovat na internetu mistrovství světa v hokeji, počítačové sítě by měly co dělat, pokud by musely garantovat dodání každého pixelu v obraze, přičemž výpadek jednoho čtverečku běžně člověk ani není schopný zaregistrovat. Naštěstí zde máme protokol UDP, opět kombinovaný s IP do podoby UDP/IP. UDP na spolehlivost příliš nehledí, raději se zaměřuje na rychlost. Servery České televize pak nemusí přeposílat ztracený (a v tu dobu již starý) pixel, protože hokejové utkání již pokročilo o nějakou vteřinu a raději odešlou aktuální data.

Maska

Teď se můžeme vrátit k IP adrese a vysvětlit si pojem maska. Správně totiž nemá moc smysl uvádět jen samotnou IP adresu, protože maska s ní umí dělat úplné divy a tak je více než žádoucí ji znát. Každá IP adresa je rozdělena na 2 části. První část udává síť, druhá již identifikuje konkrétní zařízení v síti. Podívejme se například na populární kombinaci 192.168.1.1 a masku 255.255.255.0. Masku si musíme převést do binární podoby a počet jedniček zleva nám říká, kde se IP adresa dělí na zmíněné dvě poloviny.

  • Maska 255.255.255.0 je binárně 11111111.11111111.11111111.0, máme zde tedy 24 jedniček.
  • IP adresa 192.168.1.1 je binárně 11000000.10101000.00000001.00000001, zleva si odpočítáme 24 pozic, protože naše maska má 24 jedniček.

Po rozdělení máme 11000000.10101000.00000001.00000001. Červená část udává síť, modrá prostor, který můžeme použít k identifikaci zařízení (např. počítačů) uvnitř této sítě.

V adresním prostoru automaticky vznikají dvě speciální adresy:

  • 11000000.10101000.00000001.00000000 = 192.168.1.0 — tedy samé nuly v druhé části adresy. Takové IP adrese se říká adresa sítě.
  • 11000000.10101000.00000001.11111111 = 192.168.1.255 — tedy samé jedničky v druhé části adresy. Takové IP adrese se říká adresa broadcastu. Tuto adresu použijeme, pokud chceme zprávu poslat všem uzlům v síti.

K čemu je tedy ta maska? Stručně řečeno, s její pomocí lze měnit rozsah jednotlivých sítí a vytvářet podsítě. U sebe doma si tak např. můžete vyrobit 2 sítě, které se vzájemně neuvidí a k jejich propojení použijete router. K příkladu z úvodu článku — masku při vytváření LAN uvádíme proto, aby počítače byly na stejné síti a vzájemně se viděly.

Směrování

Router neboli směrovač je krabička, která přeposílá pakety. Umí adresovat (směrovat) mezi sousedními sítěmi. Switch dělá něco podobného ale pouze na úrovni lokální sítě. Krásně je to napsáno na Wikipedii:

Rozdílné funkce routerů a switchů si lze představit jako switche coby silnice spojující všechna města ve státě a routery coby hraniční přechody spojující různé země.

Ta krabička co máte pod stolem tedy automaticky není vždy router, i když jí tak možná říkáte. Také může jít o switch. Je jednoduchá metoda, jak poznat, co vám to tam vlastně bliká. Switch ke svému běhu nepotřebuje IP adresu. Koupíte jej v obchodě, donesete domů, strčíte do něj kabel a to je vše. Router je ve své podstatě počítač, který ale nedělá nic jiného, než že neustále přeposílá (směruje) pakety. Ke svému běhu musí mít nastavenou IP adresu, vlastně ideálně dvě, aby mohl mezi těmito dvěma sítěmi směrovat.

IP multicast

Někdy potřebujeme odeslat paket na více cílových stanic zároveň. Představme si například internetové rádio, pro které je zbytečné duplikovat provoz a odesílat ta samá data k mnoha počítačům separátně. Na místo toho je lepší vytvořit tzv. IP multicast. Cílové stanice v tomto případě sdružíme do skupin a paket odešleme právě do této skupiny. Zmíněnou funkcionalitu přináší protokol IGMP.