Počítačové sítě ■ Určeny k přenosu dat ■ Dva základní přístupy: ■ Spojované (connection oriented) ■ Paketové sítě PB001 1 Podzim 2009 Spojované sítě ■ Dvě fáze: ■ Navázání spojení (odtud spojovaná síí) ■ Přenos dat ■ Klasická telefonní síí ■ Cesta sítí ustavena před vlastním přenosem dat ■ Vysílající ví, že data někdo přijímá ■ Síí ví, kdo s kým „mluví" (je spojen): stav ■ V podstatě abstrakce drátu PB001 2 Podzim 2009 22 Paketové sítě ■ Data jsou vysílána v „malých" jednotkách: paket (datagram) ■ Každý paket prochází sítí samostatně (žádné spojení) ■ Pakety mohou přicházet v různém pořadí (různé cesty) ■ Další vlastnosti ■ Větší odolnost ■ Nelze s lidskou spojovatelkou (nestíhala by „přepojovat" každý datagram zvláší) ■ Síí neví, jaká data jí tečou: bezstavová PB001 3 Podzim 2009 Internet ■ Datová sít, budovaná od počátku 70. let (tehdy samozřejmě nikoliv jako Internet) ■ Inter-net: Sít sítí, hlavní vlastnosti: ■ Hierarchický návrh (propojení malých sítí do větších celků) ■ Postupná konvergence k jedinému protokolu: IP (Internet Protocol) ■ Otevřený návrh (standardy), nezávislý na konkrétních dodavatelích či firmách PB001 4 Podzim 2009 Historie 1969 ARPANET 1971 email 1972 telnet 1973 FTP 1976 královna Elizabeth posílá e-mail 1977 mailing list 1979 Usenet, uucp 1981 BITNET PB001 Internetu 1982-3 TCP/IP 1984 DNS 1986 NSFNET 1990 ARPANET končí 1991 WWW, gopher 1992 Veronica 1993 Mosaic (následně Netscape) Optické sítě Google Sociální sítě (Facebook) 5 Podzim 2009 Současnost Internetu ■ Jedna ze základních infrastruktur (jako elektřina, železnice, silnice, voda, plyn, ...) ■ Paralelní rozvoj ■ Akademického Internetu: pro akademickou komunitu (univerzity, výzkum, školství, ...) ■ Obecného (commodity) Internetu: pro všechny ostatní (podniky, domácnosti, ...) ■ Akademický Internet ukazuje cestu ■ Internet2 (Abilene) v USA ■ Can4net v Kanadě ■ Geant v Evropě ___ ______ v ___ PB001 ■ CESNET2 v CR 6 podzim 2009 Internet - struktura ■ Propojené uzly ■ Data přenášena od výchozího do koncového uzlu ■ Z pohledu aplikace vnitřní struktura transparentní: tzv. end-to-end pohled, tj. sít stále chápeme jako abstraktní „drát" ■ Uzly ■ Koncové - stanice, servery, ...; především aplikační záležitost ■ Mezilehlé - směrovače (routers), přepínače (switches): odpovídají za přenos dat PB001 7 Podzim 2009 Architektura - základy ■ Vrstevná architektura ■ Tzv. ISO OSI model (viz. následující slide) ■ Každá vrstva odpovídá za konkrétní funkcionalitu ■ Vrstva je abstrakce, skutečná implementace se více či méně liší ■ Logicky se komunikace odehrává mezi stejnými vrstvami, fyzicky prochází všemi nižšími vrstvami PB001 8 Podzim 2009 ISO OSI model Aplikační vrstva Prezentační vrstva Relační vrstva Transportní vrstva Sitová vrstva Vrstva datových spojů Fyzická vrstva 9 ISO OSI model - barevné rozlišení ■ Vrstvy červenou barvou jsou většinou součástí aplikací ■ Černá vrstva zajištuje pozorované vlastnosti přenosu (např. zda je prováděna kontrola doručení apod.) ■ Zelená vrstva skutečně přenáší pakety (datagramy), v Internetu bez zaručení ■ Modré vrstvy by většinou měly zůstat transparentní (např. použití optických nebo kovových vláken, Ethernet či ATM apod.) PB001 10 Podzim 2009 PB001 11 Podzim 2009 Přenosová vrstva - IP ■ Internet protokol ■ Odpovídá za dopravu dat mezi uzly ■ Je vysoce ckalovatelný: princip použitelný i pro velmi velké sítě ■ Základní jednotkou přenosu paket (data plus hlavičky) PB001 12 Podzim 2009 Internet protokol ■ Určení (adresa) vysílacího a cílového uzlu ■ Číselná adresa, 32 bitů (pro IPv4; nový protokol IPv6 má adresy 128bitů dlouhé) ■ Struktura: AAA.BBB.CCC.DDD ■ aisa.fi.muni.cz má adresu: 147.251.48.1 ■ Jeden uzel může mít více adres PB001 13 Podzim 2009 IP adresy ■ Hierarchie Síí:Uzel ■ Centrální správa/přidělování tzv. podsítí ■ Rozděleno na několik skupin: ■ A třída: 8 bitů přiděleno, 24 bitů ve správě „vlastníka" (nejvyšší bit 0, např. 10.0.0.0) ■ B třída: 16 bitů přiděleno, 16 bitů ve správě „vlastníka" (nejvyšší bity 10, např. 147.251.0.0) ■ C třída: 24 bitů přiděleno, 8 bitů ve správě „vlastníka" (nejvyšší bity 100, např. 195.211.132.0) ■ Dnes používány i podsítě (např. třída B může být rozdělena na 256 podsítí C; možné i hrubší a jemnější dělení) PB001 14 Podzim 2009 Pojmenování ■ IP čísla nevhodná pro lidi ■ Symbolická jména (aisa.fi.muni.cz) ■ Jmenná služba: převod IP adres a jmen ■ DNS (Domain Name Service) ■ Hierachické ■ Lokální servery obsluhují skupinu „příbuzných" adres (např. muni. cz či fi.muni.cz) ■ 13 kořenových serverů (USA, Japonsko, Amerika) PB001 15 Podzim 2009 Přenos paketů ■ Na IP úrovni každý paket má cílovou adresu ■ Pokud není vysílající přímo propojen s cílovým, nutno doručit paket skrz sít: smerovania směrovací protokoly ■ V podstatě grafový problém: sít jako graf ■ Algoritmy nalezení cesty mezi dvěma uzly grafu ■ Cestu znají uzly, podle cílové adresy rozhodnou, kam poslat dále ■ Uzly znají implicitně nebo explicitně cestu ■ Tuto znalost použijí při vlastním přenosu paketu PB001 16 Podzim 2009 Směrování ■ Dvě fáze ■ Proces nalezení a udržení směrovacích tabulek ■ Vlastní posílání datových paketů PB001 17 Podzim 2009 Směrovací schemata ■ Distribuované nebo centralizované ■ „Krok za krokem" nebo zdrojové ■ Deterministické nebo stochastické ■ textcolorredJednocestne nebo vícecestné ■ Dynamické nebo statické Protokoly používané i Internetu jou označeny červeně PB001 18 Podzim 2009 Vlastnosti podrobněji ■ Statické algoritmy ■ Jednorázové (často ruční) tabulky ■ Vhodné pro statickou topologii ■ Dynamické algoritmy ■ Flexibilní/robustní (reakce na změny) ■ Nezbytná aktualizace tabulek * Aktualizační algoritmus * Aktualizační protokol PB001 19 Podzim 2009 Dynamické směrovací algoritmy Centralizované ■ Stav se posílá do centra ■ Centrum spočte tabulky a posílá je uzlům Izolované ■ Každý uzel „sám za sebe" Distribuované ■ Vzájemná kooperace uzlů PB001 20 Podzim 2009 Hierarchie směrování ■ Hierarchie sítí ■ Lokální sítě ■ Propojovány do vyšších celků ■ Hierarchie směrovačů ■ Směrování uvnitř sítí ■ Směrování mezi sítěmi ■ Zde se vrací adresace: adresa (pod)sítě - adresa uzlu PB001 21 Podzim 2009 06 Funkce směrovacího algoritmu ■ Výběr komunikační cesty ■ Propustnost Zpoždění („délka" cesty) ■ Vlastní doručení dat ■ Využití směrovacích tabulek PB001 22 Podzim 2009 Přepínání ■ Nižší vrstva ■ Určeno pro propojení lokálních sítí na sdíleném médiu (např. Ethernet) ■ Transparentní pro IP PB001 23 Podzim 2009 Multicast ■ Skupinová komunikace ■ Revize všech základních aspektů ■ směrování ■ hierarchie ■ adresace ■ kvalita doručení (spolehlivost, uspořádanost,...) PB001 24 Podzim 2009 Multicast - motivace ■ Data pro více „odběratelů" ■ všesměrové vysílání (broadcast) ■ vzdálená spolupráce (telecollaboration) ■ update programového vybavení a dat (antiviry) ■ Dotaz „neznámému" (vyhledávání) ■ peer-to-peer sdílení souborů (gnutella, napster) ■ hledání zdrojů ■ distribuované databáze PB001 25 Podzim 2009 Multicast - požadavky ■ Každým uzlem prochází data pouze jednou ■ Nezaručené doručení ■ Nelze zajistit bez podpory sítě PB001 26 Podzim 2009 Transportní vrstva ■ Pojem portu ■ Více aplikací na jednom stroji: nutná jemnější adresace ■ Port: adresa posktyované služby ■ UDP protokol ■ Pouze nezaručený přenos ■ Datagramy jsou zasílány do sítě bez další kontroly * Žádná garance ani kontrola doručení ■ TCP PB001 27 Podzim 2009 TCP ■ Transmition Control Protokol ■ Staví „spojovanou" službu nad IP ■ Iniciace spojení ■ Garantovaný přenos ■ Schopen reagovat na zahlcení (zpomalí a znovu postupně „přidává") ■ Hlavní přenosový protokol na Internetu PB001 28 Podzim 2009 Vyšší vrstvy ■ Protokoly vyšších vrstev ■ Příklady ■ http: komunikace s webovým serverem, přenos webových stránek ■ ftp: přenos dat ■ telnet: připojení na vzdálený počítač ■ ssh: rovněž připojení, ale se zabezpečením (šifrování) PB001 29 Podzim 2009 Multimediální systémy ■ Primárně přenos zvuku a obrazu ■ Požadavky na kvalitu (vlastnosti) spojení ■ Včasné doručení ■ Nepříliš velký rozptyl doručení paketů ■ Spojované sítě (telefony) nabízí jednodušší řešení ■ Nedostatečná koncová kapacita ■ Potenciální plýtvání pásmem (musí být vyhrazeno, i když mlčíte) PB001 30 Podzim 2009 Multimedia - podpora v IP sítích ■ Mohou dobře využít multicast ■ Vyžadují Kvalitu služby: rezervace ■ Možná řešení ■ Overprovision (dostatek kapacity bez ohledu na požadavky) ■ Dedikované okruhy (ä la telefony): VPN ■ Rezervace pro každý tok zvláší: RSVP ■ Agregace toků, rezervace (statická) pro agregace: DiffServ ■ Pro současný Internet vhodné poslední řešení PB001 31 Podzim 2009 Bezdrátové sítě ■ Optické infra: např. infraport notebooku či mobilního telefonu ■ laser: větší vzdálenosti Silně závislé na vnějších podmínkách (přímá viditelnost, mlha, ...) ■ Radiové ■ Kapacita přenosu závislá na frekvenci, kvalita souvisí s kódováním a vyzářenou energií (v lokálních sítích pod 1 W) PB001 32 Podzim 2009 Radiové sítě - příklady ■ Mobilní telefony: 800, 900, 1 800 a 1 900 MHz ■ Kapacita desítky až stovky Kb/s (pod jedem Mb/s) ■ Bluetooth: 2,4 GHz (nelicencované pásmo) ■ Nízká spotřeba, krátká vzdálenost ■ Kapacita jednotky Mb/s ■ WiFi (např. fakultní bezdrátová sít) ■ Základní protokol: 2,4 GHz; kapacita od 1 Mb/s (802.11) přes 11 Mb/s (802.11 b) až po 54 Mb/s (802.11 g) ■ WiFi na vyšší frekvenci: 5 GHz, kapacita 54 Mb/s (802.11a) ■ Multiple input, multiple outpot (MIMO), kombinace obou frekvencí, vícenásobné kanály, propustnost až 600 Mb/s (802.11 n) PB001 33 Podzim 2009 70 Radiové sítě - příklady pokr. ■ WiMax (Worldwide Interoperability for Microwave Access) ■ Rodina protokolů IEEE 802.16 ■ Frekvence 2,5-10,5 MHz íčást licencovaná, zahrnuje i nelicencovaná pásma WiFi). ■ Velký dosah a plošné pokrytí (do 100 km) ■ Vyšší frekvence (desítky GHz) ■ Licencované, kapacita až stovky Mb/s PB001 34 Podzim 2009 Bezdrátové sítě - specifika ■ Podstatně vyšší chybovost ■ vhodná oprava přímo na spojení, ne ve vyšších protokolech ■ často kombinováno s redundancí (vysílá se více a na druhé straně se rekonstruuje) ■ Nové typy způsobu práce PB001 35 Podzim 2009 Mobilní počítání ■ Podpora pohyblivosti ■ Dva základní mody ■ always on ■ přenos prostředí (připojení kdykoliv odkudkoliv) ■ Bezdrátové sítě umožňují první způsob ■ Softwarová podpora pro druhý způsob PB001 36 Podzim 2009 Mobilita s přenosem prostředí ■ Příklad: čtení pošty přes webový prohlížeč ■ Problémy Různost operačních systémů ■ Bezpečnost * autentizace uživatele ■ Vnímaná kvalita * adaptace na různou kvalitu spojení PB001 37 Podzim 2009 Distribuované systémy ■ Počítač: několik vzájemně propojených komponent ■ Co se stane, když některé z propojení nahradíme sítí? Vznikne distribuovaný systém ■ Definice: ■ Systém, který je tvořen dvěma nebo více nezávislými počítači propojenými sítí a komunikujícími formou předávání zpráv. ■ Distribuovaný systém tvoří nezívislé počítače, které se uživateli jeví jako jeden celek [Tanenbaum]. PB001 38 Podzim 2009 Příklady ■ Internet ■ Telefonní systém (automatické ústředny) ■ Multimediální systémy (videokonference, e-Learning) ■ Mobilní systémy ■ World Wide Web ■ Clustery - Gridy PB001 39 Podzim 2009 Srovnání ■ Počítačové sítě ■ Každý počítač je explicitně viditelný ■ Distribuované systémy ■ Počítače jsou skryty ■ Společné vlastnosti ■ Počítačová síí je z určitého pohledu rovněž distribuovaným systémem (např. systém směrovačů, jmenných serverů, ...) ■ Každý distribuovaný systém využívá služeb počítačové sítě PB001 40 Podzim 2009 Problémy distribuovaných systémů ■ Heterogenita jednotlivých složek ■ Middleware: skrývá heterogenitu * CORBA, Globus ■ Mobilní kód (Java) ■ Otevřenost/interoperabilita ■ Nezbytné využití standardů PB001 41 Podzim 2009 Problémy distribuovaných systémů II ■ Bezpečnost ■ Autentizace ■ Autorizace ■ Soukromí ■ Rozšiřitelnost PB001 Problémy distribuovaných systémů III ■ Zpracování výpadků ■ Detekce ■ Maskování ■ Tolerance ■ Paralelismus ■ Nebezpečí „smrtelného objetí" (deadlock) ■ Závislosti (synchronní pohled) PB001 43 Podzim 2009 Problémy distribuovaných systémů IV ■ Transparence ■ Přístup ■ Místo ■ Replikace ■ Selhání ■ Mobilita/přenositelnost ■ Výkon ■ Škálovatelnost/rozšiřitelnost PB001 44 Gridy ■ Rozsáhlé distribuované systémy ■ Heterogenní ■ Geograficky rozsáhlé ■ Dynamické (z pohledu uživatele) ■ Velký výkon (desítky tisíc procesorů) ■ Velké datové objemy (PB a více) PB001 45 Gridy - příklady ■ Data Gridy ■ Zpracování velkých objemů dat, generovaných * zařízeními časticové fyziky * radioteleskopy * analýzou genomu * 3D snímky (mozek) ■ Výpočetní Gridy ■ Náročné výpočty, např. * astronomie * vlastnosti materiálů * předpověď počasí (též Data Grid) PB001 * struktura a chování molekul 46 Podzim 2009