Počítačové sítě/Úvod k sítím
Počítačové sítě v kontextu této knihy lze chápat jako propojení koncových zařízení. Koncová zařízení zajišťují interakci s uživatelem (mobilní telefon, notebook) nebo poskytují služby či data (server, senzor). Sdílení dat mezi koncovými zařízeními je komunikace.
Izolovaná koncová zařízení mají svůj smysl - na počítači se po odpojení od sítě dá stále pracovat - nicméně sdílení dat je pak problematičtější. Pro komunikaci je třeba použít médium (CD, Flash), data na něj přenést, médium dopravit k cílovému koncovému zařízení a data opět přenést. Snahou Počítačové sítě je optimalizovat komunikaci (rychlost, kapacita, spolehlivost) - například použít kabel.
Komponenty sítě
editovatZařízení
editovatKoncová zařízení
editovatKoncové zařízení je zdrojem-tvůrcem nebo cílovým příjemcem dat v komunikačním řetězci, kde data jsou myšlena uživatelská data (např. dokumenty, obrázky, videa, hudba).
Prostřední zařízení
editovatProstřední zařízení zajišťují komunikaci, tedy přenos dat, mezi koncovými zařízeními. Data jsou přijímána, ale pouze za účelem opětovného přeposlání až k cíli. Jsou hierarchicky uspořádána v rámci větších komunikačních celků, které lze opět nazvat počítačovými sítěmi. Síť může být tedy propojení sítí a v praxi tím je - domácí síť je připojená k Internetu, který propojuje počítačové sítě po celém světě.
Kdyby všechna koncová zařízení používala jedno médium a měla dostatečně silné vysílače, nebylo by prostředních zařízení potřeba - koncová zařízení by komunikovala mezi sebou přímo. V současné době je tento způsob komunikace využíván zřídka a jen v malých geografických prostorách.
Prostřední zařízení jsou označována jako aktivní prvky sítí, protože nějakým způsobem manipulují se signálem (zesilují jej či mění).
Média
editovatPřes médium se přenáší data zakódovaná do signálů vhodných pro dané médium. V počítačových sítích se používá:
Signál | Kód | Médium | Příklad |
---|---|---|---|
Elektromagnetické pole | Různá úroveň napětí | UTP (unshielded twisted pair - nestíněná křížená dvojlinka) | FastEthernet[1] |
Elektromagentické pole | Různá úroveň napětí | STP (shielded twisted pair - stíněná křížená dvojlinka) | 1Gb Ethernet[2] |
Světlo | Různá délka světlených impulzů | Optické vlákno (fiber optic) | 10Gb Ethernet[3], 100Gb Ethernet[4] |
Elektromagnetické vlny | Různá intenzita elektromagnetického pole | Vzduch (bezdrátové technologie, přenos dat elektromagnetickým polem) | Wi-Fi[5] |
Média, konektory a zásuvky jsou označovány jako pasivní prvky sítí - signál přes ně prochází bez aktivního zásahu zařízení.
Pro přenos zprávy je zvoleno jako médium stůl. Signály, které toto médium zvládne přenést, jsou otřesy (otřesy vzniknou ťukáním). Pro kódování zprávy je použita Morseova abeceda (různá písmenka jsou kódována jako kombinace kratších a delších otřesů). Pak stačí zprávu vyťukat, na druhé straně stolu mít přiložené ucho, správně interpretovat signály - krátké a dlouhé otřesy převést na tečky a čárky - a zprávu dekódovat.
V Ethernetu se zpráva přenáší přes UTP kabel. Jedničky a nuly (data) jsou do elektromagnetických vln zakódovány jako různé úrovně napětí: jednička je přechod z -2,5V na +2,5V, nula je přechod z +2,5V na -2,5V[6]. Na druhé straně UTP kabelu je senzor, které změny úrovní napětí detekuje, interpretuje jako jedničky a nuly a zprávu tak dekóduje.
Rozdělení sítí podle velikosti
editovatWAN (wide area network)
editovatWAN je geograficky největší sítí, kterou rozlišujeme. Sestává se z propojení velmi odlehlých zařízení. Nejznámější WAN je celosvětová síť Internet.
MAN (metropolitan area network)
editovatJedná se o síť přibližně velikosti města. Příkladem můžou být třeba komunitní sítě jako http://www.jinonice.cz.
LAN (local area network)
editovatLokální síť je nejčastějším příkladem počítačové sítě. Domácí sítě, ve kterých je alespoň jeden počítač připojený k internetu, jsou LAN. Přesto se do LAN sítí řadí i počítačové sítě rozlohy budovy či kampusu - počítačová sít v obchodním domě nebo ve škole je LAN.
PAN (personal area network)
editovatK základnímu rozdělení počítačových sítí má smysl zmínit ještě osobní sítě s rozlohou do přibližně půl metru, které tvoří propojení mobilního telefonu s headsetem nebo notebookem.
Způsoby komunikace
editovatUnicast
editovatV případě Unicast spolu komunikují dva účastníci. Je to základní způsob komunikace a příkladem může být hovor s kamarádem.
V souvislosti s počítačovými sítěmi jde o Unicast, když komunikace probíhá mezi dvěma zařízeními. Příkladem je komunikace počítače s webovým serverem - přenos webové stránky.
Broadcast
editovatKomunikace typu Broadcast zasahuje všechny účastníky určité skupiny. Příkladem může být přednáška, kdy přednášející sděluje informace všem přítomným v sále.
V souvislosti s počítačovými sítěmi vyšle zařízení Broadcast zprávu, kterou přijmou všechna zařízení v síti - například ARP či DHCP dotaz.
Multicast
editovatMulticast komunikace se vztahuje pouze na určitou skupinu účastníků. Lze modifikovat příklad z Broadcast komunikace o přednášce, kdy přednášející sděluje informace pouze účastníkům, kteří nespí.
V souvislosti s počítačovými sítěmi je Multicast komunikace využívána většinou ve skupině zařízení, kde potřebu sdílet informace má pouze část skupiny. Typickým příkladem je internetová televize či rádio.
Anycast
editovatPři Anycast je ze skupiny potenciálních účastníků vybrán jeden a s ním komunikováno. Na přednášce se přednášející zeptá na nějakou otázku a ze studentů, kteří nespí, mu jeden odpoví.
Rozdíl mezi anycast a unicast komunikací je v počtu potenciálních cílů. V obou případech nakonec komunikují pouze dva účastníci, v případě anycast komunikace je však jeden vybrán z několika možných.
V souvislosti s počítačovými sítěmi lze uvést příklad, kdy nabízená služba (Google, Facebook) má několik serverů a uživatel je připojen k nejbližšímu z nich (zde nejbližší z pohledu topologie Internetu, což nemusí odpovídat geograficky, i když většinou ano).
Topologie
editovatTopologií se v kontextu počítačových sítí rozumí uspořádání umístění a propojení síťových prvků. Topologie počítačových sítí se zaznamenává pomocí schémat. U obou topologií - fyzické i logické - zůstává stejný počet zařízení a jsou stejně propojená, liší se však umístěním ve schématu.
Schématické značky
editovatKoncová zařízení
editovatProstřední zařízení
editovatMédia
editovatFyzická topologie
editovatPokud umístění zařízení ve schématu odpovídá reálnému rozmístění zařízení, jedná se o fyzickou topologii. Ve schématu zaznamenávajícím fyzickou topologii se často zobrazují místnosti, dveře, okna i nábytek.
Logická topologie
editovatU logické topologie nezáleží na reálném rozmístění zařízení. Zařízení mohou být z pohledu fyzické topologie propojena, ale z pohledu logické topologie v různých sítích, hierarchie zařízení je závislá na adresním prostoru, nikoli na počtu prostředních zařízení.
Typy topologií
editovatVšechny následující topologie mohou být fyzické i logické.
Point-to-point
editovatJe nejjednodušší topologie - jde o přímé propojení dvou síťových zařízení přenosovým médiem.
Sběrnicová
editovatJe nejstarší topologie, v současnosti využívaná hlavně v senzorových sítích.
Kruhová
editovatV případě přerušení jednoho spojení je kruhová topologie stále plně funkční.
Hvězdicová
editovatV současnosti nejrozšířenější topologie v sítích LAN.
Rozšířená Hvězdicová
editovatHvězdicová topologie pro rozlehlejší sítě s více koncovými zařízeními.
Mesh
editovatJedná se o tzv. peer-to-peer systémy, zajišťuje největší možnou redundanci (záložní spojení).
Částečná Mesh
editovatJde o variantu topologie mesh, která je levnější. V současnosti nejrozšířenější v sítích ISP (internet service provider).
Komunikační model
editovatKomunikaci dvou uživatelů přes koncová zařízení lze rozdělit do několika vrstev. Napíše-li uživatel email, většinou je mu jedno, na jaké signály se změní v kabelu nebo jakým způsobem síť email doručí. Z hlediska vývoje zařízení je navíc nešikovné celou komunikaci řešit najednou, ideální je celý model komunikace rozdělit (v tomto případě do vrstev) tak, aby se co nejvíce částí dalo znovu použít. Každá vrstva má pak své úkoly a komunikuje s vrstvami přilehlými. Také je nutné, aby implementace stejných vrstev komunikačního modelu v různých zařízeních byly kompatibilní. K tomu slouží sady pravidel zvané protokoly.
Každá vrstva pracuje s daty, ke kterým přidá informace potřebné pro svou funkčnost. Říká se, že vrstva data zabalí. Zabalená data (tedy data + pomocné informace) se označují jako Protocol data unit (PDU), česky datová jednotka protokolu. Pro každou vrstvu se konkrétní PDU nazývá jinak.
ISO/OSI
editovatISO/OSI (open systems interconnection) je teoretický, velmi často používaný, komunikační model, který má 7 vrstev.
Aplikační
editovatPrezentační
editovatRelační
editovatTransportní
editovatSíťová
editovatSpojová
editovatFyzická
editovatTCP/IP
editovatKomunikační model TCP/IP se používá při konkrétní implementaci TCP/IP do koncového zařízení. Jedna vrstva modelu TCP/IP zahrnuje několik vrstev ISO/OSI.
Aplikační
editovatZahrnuje ISO/OSI: Aplikační, Prezentační, Relační
V Aplikační vrstvě je zahrnuta komunikace s uživatelem (zobrazení dat, vstup).
Příklad: Webový prohlížeč Iceweasel si přes protokol HTTP příkazem GET vyžádá soubor z webového serveru. Tento soubor obsahuje data ve formátu HTML, která webový prohlížeč zobrazí uživateli.
- Iceweasel je aplikace 7. vrstvy ISO/OSI modelu.
- HTTP je protokol 7. vrstvy ISO/OSI modelu.
- GET je příkaz, který protokol HTTP používá ke komunikaci.
- HTML je formát dat, která jsou obsažena v souboru.
Protokoly: HTTP, HTTPS, FTP, SSH, TELNET, DNS, SMTP, POP3, IMAP, SIP, RTPS
Transportní
editovatZahrnuje ISO/OSI: Transportní
Tato vrstva je zodpovědná za segmentaci dat (rozdělení dat na menší celky - segmenty) a přenos segmentů mezi jednotlivými aplikacemi na koncových zařízeních. Transportní vrstva identifikuje aplikace na cílovém zařízení pomocí čísla portu (16-bit identifikátor), bývá implementovaná v operačním systému.
Příklad: Webový server posílá klientovi s prohlížečem segmenty z portu 80 na cílový port 50000 přes protokol TCP.
- na segmenty se na straně serveru rozloží soubor z Aplikační vrstvy, který server odesílá.
- 80 je well-known port pro webové servery.
- 50000 je port dynamicky přidělený webovému prohlížeči.
- TCP protokol na straně klienta jednotlivé segmenty seřadí, vyžádá si chybějící, složí z nich soubor a ten předá Aplikační vrstvě.
Protokoly: TCP, UDP
- TCP - spolehlivý protokol, zajišťuje, aby data dorazila do cíle a to ve správném pořadí
- UDP - nespolehlivý protokol, data pouze odesílá a neřeší, co se s nimi na síti stane
Identifikátor: číslo portu
- Well-known (0-1023), např.: 80 (HTTP), 443 (HTTPS), 20 a 21 (FTP), 22 (SSH), 23 (TELNET), 53 (DNS), 25 (SMTP), 110 (POP3), 143 (IMAP)
- Registered (1023-49151), např.: 5060 a 5061 (SIP a SIP/TLS), 7400 (RTPS)
- Dynamické, privátní (49152–65535), slouží klientům při odchozí komunikaci, např. 56789 (webový prohlížeč)
Internetová
editovatZahrnuje ISO/OSI: Síťová
Internetová vrstva zajišťuje jednoznačnou identifikaci zařízení v síti (např. v Internetu) a přenos dat z jednoho zařízení na druhé.
Tato vrstva používá protokol IP (Internet protocol), který je nespolehlivý - není zajištěno potvrzení přijetí dat druhou stranou. Aktuální verze protokolu (IPv4 a IPv6) jsou navzájem nekompatibilní. K identifikaci zařízení používá protokol IP adresu, bývá implementovaná v operačním systému.
Příklad: Server posílá klientovi packety. Zjistí, jestli je cílová IP adresa (IP adresa klienta) na stejné síti, jestli ano, pošle mu packety přímo, jinak je pošle na výchozí bránu (DGW - default gateway). Výchozí brána bývá router nebo jiné zařízení, které je schopné routovat (směrovat) packety. Router se podívá do svojí routovací tabulky, pokud je cílová IP adresa v routovací tabulce, přepošle packety tímto směrem, jestli není, packety přepošle směrem přes default route (výchozí cestu). V případě, že routovací tabulka neobsahuje cílovou IP adresu ani default route, router packety zahodí. Tímto způsobem putují packety přes celý Internet (toto je příklad Internetové vrstvy a protokolu IP - Internet protocol), dokud se nedostanou na router, který má cílovou síť v routovací tabulce jako přilehlou síť. Tento router pak odešle packety přímo klientovi (přímo je zde myšleno, že mezi tímto routerem a klientem již není žádný další router).
- packet je PDU (protocol data unit) Internetové vrstvy - jedná se o segment "obalený" zdrojovou a cílovou IP adresou.
- výchozí brána je prostřední zařízení, na které koncové zařízení pošle packety, pokud cílové zařízení není ve stejné síti.
- router (směrovač) je zařízení, které umí routovat.
- routovat (směrovat) znamená přeposílat packety směrem k cíli.
- routovací tabulka je databáze IP adres a zařízení, na která se mají poslat packety, aby do této sítě dorazily.
- default route (výchozí cesta) je záznam v routovací tabulce, který odpovídá všem IP adresám
- přilehlá síť je síť, kterou má router přímo připojenou na jednom ze svých interface (rozhraní)
Protokoly: IP (IPv4), IPv6
Identifikátor: IP adresa
Linková
editovatZahrnuje ISO/OSI: Spojová, Fyzická
Linková vrstva (Network access - přístup k síti) zajišťuje komunikaci v jedné síti. Na rozdíl od ostatních vrstev, tato zahrnuje hardware.
Příklad: Klient posílá jinému klientovi na stejné síti data. Ta jsou zabalena do frame (rámce), jehož hlavička obsahuje zdrojovou a cílovou MAC adresu, následně zakódována do signálu typického pro přenosové médium, např. optické či elektromagnetické pulsy, a tímto způsobem dopravena k cíli.
- frame je PDU (protocol data unit) Linkové vrstvy
- MAC adresa je 48-bitový identifikátor, který na Linkové vrstvě jednoznačně identifikuje zařízení v jedné síti
- signál je dočasná změna vlastností přenosového média (např. při obyčejném mluvení se jedná o změnu tlaku vzduchu)
- přenosové médium je cokoli, co může sloužit k přenosu dat zakódovaných do signálu
Protokoly: Ethernet, Wifi
Identifikátor: MAC adresa