University of West Bohemia in Pilsen Department of Computer Science and Engineering Univerzitni 8 30614 Pilsen Czech Republic
Dynamick´ e smˇ erov´ an´ı v s´ıt´ıch s vyuˇ zit´ım predikce Odborn´a pr´ace ke st´atn´ı doktorsk´e zkouˇsce
Jindˇrich Skupa
Technical Report No. DCSE/TR-2016-01 April, 2016 Distribution: public
pˇrekryvn´ ych
Technical Report No. DCSE/TR-2016-01 April 2016
Dynamick´ e smˇ erov´ an´ı v s´ıt´ıch s vyuˇ zit´ım predikce
pˇrekryvn´ ych
Jindˇrich Skupa Abstract This technical report consists of the current state of the art in overlay networks and dynamic routing with traffic prediction. Introduction to the overlay networks is followed by routing specifics in overlay networks. Subsequent chapters describe routing metrics and parameters measured in overlay networks. Following chapter introduces time series prediction algorithms and methods. The last chapter brings a description of the further work and the goals of the Ph.D. thesis followed by summary. The work was supported by the UWB grant SGS-2013-029 Advanced Computer and Information Systems. (Pokroˇcil´e v´ ypoˇcetn´ı a informaˇcn´ı syst´emy).
Copies of this report are available on http://www.kiv.zcu.cz/en/research/publications/technical-reports/ or by surface mail on request sent to the following address: University of West Bohemia in Pilsen Department of Computer Science and Engineering Univerzitni 8 30614 Pilsen Czech Republic c Copyright 2016 University of West Bohemia in Pilsen, Czech Republic
Obsah ´ 1 Uvod
2
2 Pˇ rekryvn´ e s´ıtˇ e
3
2.1
Pˇrekryvn´e s´ıtˇe v Internetu . . . . . . . . . . . . . . . . . . . . . .
3
2.2
Rozdˇelen´ı pˇrekryvn´ ych s´ıt´ı . . . . . . . . . . . . . . . . . . . . . .
4
2.3
Podle topologie . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
2.4
Podle vyuˇzit´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
2.5
Experiment´aln´ı prostˇred´ı . . . . . . . . . . . . . . . . . . . . . . .
9
3 Pˇ rekryvn´ e s´ıtˇ e a smˇ erov´ an´ı dat
10
3.1
Skupinov´e vys´ıl´an´ı . . . . . . . . . . . . . . . . . . . . . . . . . .
10
3.2
CDN s´ıtˇe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
3.3
P2P s´ıtˇe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
3.4
Zajiˇstˇen´ı kvality sluˇzeb . . . . . . . . . . . . . . . . . . . . . . . .
14
3.5
Anonymizaˇcn´ı s´ıtˇe . . . . . . . . . . . . . . . . . . . . . . . . . .
15
3.6
Shrnut´ı smˇerov´an´ı v pˇrekryvn´ ych s´ıt´ıch . . . . . . . . . . . . . . .
16
4 Smˇ erovac´ı metriky
16
4.1
Sledov´an´ı a mˇeˇren´ı parametr˚ u v pˇrekryvn´ ych s´ıt´ıch . . . . . . . .
17
4.2
Dalˇs´ı sledovateln´e parametry . . . . . . . . . . . . . . . . . . . . .
17
5 Predikce stavu linek a s´ıtˇ e ˇ 5.1 Casov´ e ˇrady a predikce . . . . . . . . . . . . . . . . . . . . . . . .
19 19
5.2
Predikce pomoc´ı model˚ u ARMA . . . . . . . . . . . . . . . . . . .
20
5.3
Predikce pomoc´ı neuronov´ ych s´ıt´ı . . . . . . . . . . . . . . . . . .
22
5.4
Predikce s vyuˇzit´ım teorie chaosu . . . . . . . . . . . . . . . . . .
24
5.5
Dalˇs´ı metody predikce . . . . . . . . . . . . . . . . . . . . . . . .
26
6 Teze disertaˇ cn´ı pr´ ace
27
7 Z´ avˇ er
28
1
1
´ Uvod
Obsahem t´eto odborn´e pr´ace ke st´atn´ı doktorsk´e zkouˇsce je popis aktu´aln´ıho stavu v oblasti pˇrekryvn´ ych s´ıt´ı (overaly networks) s d˚ urazem na techniky dynamick´eho smˇerov´an´ı s r˚ uzn´ ymi metrikami, ˇr´ızen´ım kvality pˇrenosu a predikce stavu pˇrekryvn´e s´ıtˇe a jej´ıch spoj˚ u. Na z´akladˇe tˇechto poznatk˚ u budou definov´any teze disertaˇcn´ı pr´ace a smˇer dalˇs´ıho v´ yzkumu. Vzhledem k rostouc´ım n´arok˚ um aplikac´ı na rychlost doruˇcov´an´ı obsahu, minimalizaci zpoˇzdˇen´ı a maximalizaci spolehlivosti, si pˇrekryvn´e s´ıtˇe z´ıskaly pozornost odborn´e veˇrejnosti. Pˇrekryvn´e s´ıtˇe jsou zkoum´any s oˇcek´av´an´ımi optimalizuj´ıc´ımi pˇrenos tak, aby vyhovˇel n´arok˚ um aplikac´ı a uˇzivatel˚ u na kvalitu s´ıt’ov´ ych sluˇzeb. Klasick´e IP s´ıtˇe nejsou schopny tyto poˇzadavky ˇreˇsit dostateˇcnˇe, zvl´aˇstˇe v glob´aln´ım prostˇred´ı, kde panuje velk´a heterogenita a platnost r˚ uzn´ ych nastaven´ı, metrik nebo funkc´ı s´ıtˇe konˇc´ı s hranicemi autonomn´ıch syst´em˚ u. Pˇrekryvn´e s´ıtˇe tak vytv´aˇr´ı prostˇred´ı pro aplikace, kde pro vˇsechny u ´ˇcastn´ıky plat´ı stejn´a pravidla, pro kter´a je pˇrekryvn´a s´ıt’ budov´ana. V prvn´ı ˇca´sti bude ˇcten´aˇr sezn´amen s technikou pˇrekryvn´ ych s´ıt´ı a moˇznostmi vyuˇzit´ı, pˇr´ıkladem mohou b´ yt s´ıtˇe pro doruˇcov´an´ı obsahu (Content Delivery Network, CDN), virtu´aln´ı soukrom´e s´ıtˇe (Virtual Private Network, VPN), anonymizaˇcn´ı s´ıtˇe (The Onion Routing, TOR), s´ıtˇe pro zajiˇstˇen´ı spolehlivosti a kvality sluˇzeb (Quality of Service, QoS) a zajiˇstˇen´ı efektivity pˇrenosu (skupinov´e vys´ıl´an´ı, multicasting). Z v´ yˇctu moˇzn´ ych pouˇzit´ı je patrn´e, ˇze pˇrekryvn´e s´ıtˇe nal´ezaj´ı ˇsirok´e uplatnˇen´ı v glob´aln´ı internetov´e s´ıti a jejich vyuˇzit´ı je st´ale aktu´aln´ı. Jejich hlavn´ı v´ yhodou je moˇznost pouˇzit´ı r˚ uzn´ ych technik (QoS, smˇerov´an´ı) a moˇznost provozu samostatn´ ych sluˇzeb (doruˇcov´an´ı obsahu), kter´e nen´ı moˇzn´e v bˇeˇzn´ ych s´ıt´ıch ’ zajiˇst ovat dostateˇcnˇe efektivnˇe nebo pro nˇe neexistuje pˇr´ım´a glob´aln´ı podpora. Ve druh´e ˇc´asti jsou pops´any moˇznosti dynamick´eho smˇerov´an´ı v pˇrekryvn´ ych s´ıt´ıch podle jejich architektury a uˇzit´ı vˇcetnˇe vyuˇz´ıvan´ ych algoritm˚ u. Uvedeny jsou i n´avrhy moˇzn´eho dalˇs´ıho vyuˇzit´ı dynamick´eho smˇerov´an´ı. Dynamick´e smˇerov´an´ı v pˇrekryvn´ ych s´ıt´ıch prob´ıh´a na z´akladˇe mˇeˇren´ ych metrik a jejich n´asledn´em vyhodnocen´ı a nalezen´ı nejkratˇs´ı vzd´alenosti - minimalizace ceny pˇrenosu. Tato ˇca´st d´ale obsahuje i specifika dynamick´eho smˇerov´an´ı pr´avˇe v pˇrekryvn´ ych s´ıt´ıch a jejich odliˇsnost od klasick´ ych s´ıt´ı. N´asleduj´ıc´ı ˇca´st pr´ace se vˇenuje predikci s´ıt’ov´eho provozu, zat´ıˇzen´ı linek a jejich dalˇs´ıch vlastnost´ı v ˇcase. Vlastnosti s´ıt’ov´eho provozu jsou pˇredstaveny jako ˇcasov´e ˇrady, kter´e je moˇzn´e predikovat. Pˇredstaveny jsou nejbˇeˇznˇejˇs´ı postupy pro predikci tˇechto ˇrad a d´ale jsou prezentov´any jejich vlastnosti a principy fungov´an´ı. Posledn´ı ˇc´ast´ı je shrnut´ı m´e ˇcinnosti v pˇredstaven´e oblasti. D´ale jsou pˇredstaveny c´ıle budouc´ı disertaˇcn´ı pr´ace a z´akladn´ı pˇredpoklady pro jej´ı tvorbu.
2
2
Pˇ rekryvn´ e s´ıtˇ e
Pˇrekryvn´e s´ıtˇe pracuj´ı nad definovanou podkladovou vrstvou, v prostˇred´ı dneˇsn´ıch s´ıt´ı je tou vrstvou protokol IP, pˇr´ıpadnˇe nˇekter´ y z vyˇsˇs´ıch transportn´ıch protokol˚ u TCP nebo UDP. Tento z´akladn´ı pˇredpoklad nemus´ı platit pro vˇsechny s´ıtˇe, pˇrekryvn´e s´ıtˇe lze vytv´aˇret i nad protokoly niˇzˇs´ıch vrstev, pˇr´ıkladem je Multiprotocol Label Switching (MPLS)[46]. Pˇrekryvn´e s´ıtˇe jsou navrhov´any a budov´any za c´ılem rozˇs´ıˇrit aktu´aln´ı funkˇcnost existuj´ıc´ıch s´ıt´ı. T´ım m˚ uˇze b´ yt efektivn´ı vyuˇzit´ı zdroj˚ u podkladov´e s´ıtˇe, zprostˇredkov´an´ı pˇremostˇen´ı jednotliv´ ych s´ıt´ı, kter´e nejsou schopny mezi sebou bˇeˇznˇe nˇekterou sluˇzbu podporovat (multicasting). D´ale tak´e umoˇzn ˇuj´ı obch´azet bezpeˇcnostn´ı a syst´emov´a nastaven´ı dan´ ych s´ıt´ı (bezpeˇcnostn´ı politika je natolik restriktivn´ı, ˇze omezuje uˇzivatele v jejich ˇ pˇr´ıstupu k funkc´ım st´avaj´ıc´ı s´ıtˇe). Casto jsou pˇrekryvn´e s´ıtˇe budov´any za u ´ˇcelem z´ıskat pro uˇzivatele jistou v´ yhodu, kterou by v klasick´e IP s´ıti nemˇel, vzhledem k pˇr´ıstupu nejlepˇs´ı snahy“ doruˇcit data, nebo poruˇsen´ı principu s´ıt’ov´e neutra” lity. Princip fungov´an´ı pˇrekryvn´ ych s´ıt´ı je oznaˇcov´an jako sobeck´ y, jejich c´ılem je vyuˇz´ıt maximum dostupn´ ych prostˇredk˚ u podkladov´e s´ıtˇe pro sv´e uˇzivatele a sluˇzby. Existuj´ı r˚ uzn´e pˇr´ıstupy k pˇrekryvn´ ym s´ıt´ım. Podle jednoho je pouˇzit´ı dan´e pˇrekryvn´e s´ıtˇe pouze doˇcasn´e, do doby neˇz bude technologie pˇripraven´a a adaptovan´a do podkladov´e s´ıtˇe, napˇr´ıklad 6BONE zav´ad´ı IPv6 tunely pˇres existuj´ıc´ı s´ıtˇe IPv4. Druh´ y povaˇzuje pˇrekryvn´e s´ıtˇe za sv´ebytnou technologii, kter´a m´a dlouhodob´e uplatnˇen´ı a ˇcasto jej´ı funkce ani nen´ı moˇzn´e uspokojivˇe zakomponovat jako standard do vrstev podkladov´e s´ıtˇe (P2P, TOR Onion routing, VPN, QoS).
2.1
Pˇ rekryvn´ e s´ıtˇ e v Internetu
Existence a realizace pˇrekryvn´ ych s´ıt´ı v Internetu nen´ı nov´a a jeho prostˇred´ı funguje cel´a ˇrada pˇrekryvn´ ych s´ıt´ı r˚ uzn´eho typu a urˇcen´ı. Dneˇsn´ı internet ostatnˇe vznikl jako pˇrekryvn´a s´ıt’ nad podkladovou telefonn´ı s´ıt´ı, n´aslednˇe se vyvinul do samostatnˇe funguj´ıc´ı infrastruktury a dnes jej telekomunikaˇcn´ı sluˇzby zaˇc´ınaj´ı vyuˇz´ıvat jako podkladovou s´ıt’ pro pˇrenos hlasu a videa. Aktu´alnˇe vˇetˇsina pˇrekryvn´ ych s´ıt´ı vyuˇz´ıv´a Internet jako podkladovou vrstvu pro realizaci vlastn´ıch sluˇzeb. Struktura a velikost pˇrekryvn´ ych s´ıt´ı tak´e nen´ı nijak omezena a z´aleˇz´ı na jej´ım n´avrhu a pl´anovan´em vyuˇzit´ı. Struktura pˇrekryvn´ ych s´ıt´ı ˇcasto z´aleˇz´ı na jej´ım prim´arn´ım urˇcen´ı, typick´ ym pˇr´ıpadem jsou P2P s´ıtˇe uspoˇra´dan´e napˇr´ıklad do struktury stromu, kde je struktura vystavˇena tak, aby bylo nalezen´ı dat na co nejmenˇs´ı poˇcet skok˚ u.
3
2.2
Rozdˇ elen´ı pˇ rekryvn´ ych s´ıt´ı
Pˇrekryvn´e s´ıtˇe lze klasifikovat podle r˚ uzn´ ych krit´eri´ı. Jedn´ım z nich m˚ uˇze b´ yt podle topologie (P2P, centralizovan´e, hierarchick´e), dalˇs´ı podle vyuˇzit´ı, urˇcen´ı nebo poskytovan´ ych sluˇzeb (pˇrechod od IPv4 k IPv6 - 6BONE, anonymizace TOR, multicasting MBONE, u ´loˇziˇstˇe - CAN, DHT).
2.3
Podle topologie
Z´akladem kaˇzd´e pˇrekryvn´e s´ıtˇe jsou jednotliv´e uzly podkladov´e s´ıtˇe. Jednotliv´e kroky cesty mezi uzly A a B jsou pro pˇrekryvnou s´ıt´ı povaˇzov´any za jeden spoj. Obecnˇe mohou uzly komunikovat kaˇzd´ y s kaˇzd´ ym - tvoˇr´ı u ´pln´ y orientovan´ y graf, ’ pro dalˇs´ı pouˇzit´ı se pak dle u ´ˇcelu organizuje pˇrekryvn´a s´ıt do konkr´etn´ı topologie. Tato transformace nemus´ı prob´ıhat vˇzdy a pokud prob´ıh´a, pak m˚ uˇze m´ıt charakter trval´ y (pevn´e uspoˇr´ad´an´ı) nebo doˇcasn´ y (dynamick´e uspoˇra´d´an´ı podle aktu´aln´ıch potˇreb). Pˇrekryvn´e s´ıtˇe se nejˇcastˇeji pˇreuspoˇra´d´avaj´ı za u ´ˇcelem poskytnut´ı lepˇs´ıch sluˇzeb a vyvaˇzov´an´ı z´atˇeˇze - napˇr´ıklad ˇsk´alov´an´ı poskytovan´ ych zdroj˚ u, distribuce a redistribuce poskytovan´ ych sluˇzeb nebo vyhled´av´an´ı a replikace obsahu. Ke zmˇenˇe struktury s´ıtˇe m˚ uˇze doj´ıt tak´e vlivem vnˇejˇs´ı zmˇeny, napˇr´ıklad zmˇena parametr˚ u propojovac´ıch linek nebo parametr˚ u jednotliv´ ych uzl˚ u nebo tak´e pˇrid´an´ım nov´eho uzlu. Nˇekter´e pˇrekryvn´e s´ıtˇe mohou m´ıt strukturu pevnou a po dobu jej´ıho fungov´an´ı nemˇennou. Vzhledem k tomu, ˇze topologie pˇrekryvn´e s´ıtˇe nen´ı nijak z´avisl´a na fyzick´e topologii nebo jej´ıch moˇznostech, m˚ uˇze se jednat o bˇeˇzn´e topologie z klasick´ ych s´ıt´ı, peer-to-peer, hvˇezda (centr´aln´ı uzel, pˇres kter´ y ostatn´ı komunikuj´ı, nebo m´a centr´aln´ı datab´azi uzl˚ u, zdroj˚ u atp.), strom (stromov´a struktura jednotliv´ ych komunikaˇcn´ıch spoj˚ u, napˇr. multicasting), kruh, kombinace pˇredchoz´ıch, matice nebo n-rozmˇern´a kostka (DHT, CAN). Jak´e topologie se pouˇz´ıv´a pro jak´e urˇcen´ı, bude pops´ano v n´asleduj´ıc´ıch kapitol´ach popisuj´ıc´ıch existuj´ıc´ı s´ıtˇe.
2.4
Podle vyuˇ zit´ı
Jak bylo jiˇz uvedeno v pˇredchoz´ıch sekc´ıch, vyuˇzit´ı pˇrekryvn´ ych s´ıt´ı je ˇsirok´e. Vytvoˇren´ım pˇrekryvn´e s´ıtˇe je moˇzn´e sledovat nebo poskytovat mnoho s´ıt’ov´ ych sluˇzeb. Od klasick´ ych parametr˚ u pˇrenosu jako je doruˇcen´ı dat, rychlost komunikace, spolehlivost, zaruˇcen´ı kvality sluˇzeb, pˇres sluˇzby koncov´ ych uzl˚ u poskytuj´ıc´ı u ´loˇzn´ y prostor nebo v´ ypoˇcetn´ı v´ ykon aˇz po sluˇzby slouˇz´ıc´ı k anonymizaci uˇzivatel˚ u a ˇsifrov´an´ı komunikace. Pˇrekryvn´a s´ıt’ m˚ uˇze sledovat v´ıce tˇechto c´ıl˚ u z´aroveˇ n nebo nˇekter´e jsou prostˇredkem pro dosaˇzen´ı jin´eho, napˇr´ıklad: • komunikaˇcn´ı infrastruktura,
4
• • • • • • • 2.4.1
spolehlivost doruˇcen´ı dat, kvalita spojen´ı (latence, propustnost, stabilita), u ´loˇziˇstˇe nebo poskytov´an´ı dat, poskytov´an´ı v´ ypoˇcetn´ıho v´ ykonu, poskytov´an´ı aplikaˇcn´ıch sluˇzeb, bezpeˇcnost, anonymizace. Komunikaˇ cn´ı infrastruktura - smˇ erov´ an´ı
Pˇrekryvn´a s´ıt’, jej´ımˇz urˇcen´ım je nab´ızet komunikaˇcn´ı infrastrukturu, m˚ uˇze sledovat nˇekolik r˚ uzn´ ych metrik. Napˇr´ıklad je navrˇzena za u ´ˇcelem zv´ yˇsen´ı spolehlivosti doruˇcen´ı dat, to prov´ad´ı tak, ˇze detekuje a propaguje v´ ypadek rychleji neˇz klasick´e IP protokoly. Bezodkladnˇe zajiˇst’uje alternativn´ı z´aloˇzn´ı cestu. Internetov´ y smˇerovac´ı protokol - Border Gateway Protocol (BGP) pro smˇerov´an´ı mezi autonomn´ımi syst´emy (AS) m´a vzhledem k rozlehlosti dneˇsn´ıho internetu relativnˇe dlouh´e konvergenˇcn´ı ˇcasy, neˇz je v´ ypadek detekov´an a n´ahradn´ı cesty jsou pˇrepoˇc´ıt´any v cel´e s´ıti. C´ılem n´avrhu BGP byla hlavnˇe stabilita a schopnost smˇerovat rozlehl´e s´ıtˇe. Pˇrekryvn´e s´ıtˇe pracuj´ı obyˇcejnˇe s menˇs´ımi smˇerovac´ımi tabulkami, mohou pˇredpoˇc´ıt´avat alternativn´ı cesty a rychleji detekuj´ı v´ ypadky. Doba v´ ypadku je t´ımto postupem minimalizov´ana a koncov´e uzly jej nemus´ı b´ yt schopny ani detekovat. Pˇrekryvn´a s´ıt’ zajist´ı transparentn´ı pˇresmˇerov´an´ı provozu. Kromˇe rychl´eho pˇrep´ın´an´ı s´ıt’ov´ ych cest m˚ uˇze jej´ı konstrukce b´ yt navrˇzena tak, ˇze prov´ad´ı korekci podkladov´ ych protokol˚ u, kde nastaven´ı metrik a pouˇzit´ ych cest nemus´ı b´ yt z hlediska s´ıt’ov´eho provozu optim´aln´ı, ale mohou b´ yt ovlivnˇeny ekonomick´ ymi nebo politick´ ymi faktory. Smˇerov´an´ı provozu v internetu je v´ ysledkem dvoustrann´ ych dohod jednotliv´ ych ’ s´ıt ov´ ych oper´ator˚ u nebo politikou pˇred´avac´ıch (peeringov´ ych) center. Nˇekter´e linky tak mohou b´ yt znev´ yhodnˇen´e napˇr´ıklad kv˚ uli jejich provozn´ı cenˇe. Nˇekter´e linky mohou b´ yt tak´e vyuˇz´ıv´any pro r˚ uzn´e specifick´e u ´ˇcely a jejich parametry ˇ mohou b´ yt vyuˇzity i jinak. Rada linek je tak´e priv´atn´ıch, pˇren´aˇs´ı napˇr´ıklad data mezi poboˇckami a nepouˇz´ıv´a se pro smˇerov´an´ı veˇrejn´eho datov´eho provozu. Pˇrekryvn´a s´ıt’ je schopna tento stav efektivnˇe pˇrekr´ yt takov´ ymi cestami, kter´e jsou skuteˇcnˇe pro dan´ y typ provozu a jej´ı konfiguraci v´ yhodn´e. Pˇrekryvn´e s´ıtˇe mohou tak´e reagovat na aktu´aln´ı stav linek, jejich vyuˇzit´ı a dostupnou propustˇ nost. Casto zajiˇst’uj´ı ˇr´ızen´ı kvality pˇrenosu a rezervaci zdroj˚ u po trase, hojnˇe jsou pak vyuˇz´ıv´any pˇri pˇrenosu proudu dat audio-video (VoIP, IPTV). Pˇrekryvn´e s´ıtˇe mohou tak´e umoˇznit mobilitu zaˇr´ızen´ı. Adresov´an´ı uzl˚ u v Internetu je realizov´ano IP adresami, kter´e jsou pˇridˇelovan´e v r´amci s´ıt´ı. Aby byl klient pod danou IP adresou dostupn´ y, mus´ı v dan´e s´ıti fyzicky existovat, nebo tam m´ıt 5
z´astupce. Pˇrekryvn´e s´ıtˇe umoˇzn´ı spojen´ı i s uzlem, kter´ y je aktu´alnˇe v jin´e s´ıti. V klasick´e IP s´ıti to lze realizovat bud’ kombinac´ı pˇrekladu adres (NAT) v kombinaci napˇr´ıklad s virtu´aln´ı priv´atn´ı s´ıt´ı - VPN (dle potˇreby). Varianta s NAT bez VPN lze pouˇz´ıt v pˇr´ıpadech, kdy zn´ame nov´e um´ıstˇen´ı klienta, pˇri pouˇzit´ı VPN se statickou adresou lze tuto konkr´etn´ı adresu pˇrekl´adat nebo smˇerovat do VPN bez ohledu na to, kde mobiln´ı uzel zrovna je. Dalˇs´ım ˇreˇsen´ım je pr´avˇe vyuˇzit´ı pˇrekryvn´e s´ıtˇe, kdy IP adresa je sluˇzbou pˇrekryvn´e s´ıtˇe a je skrze n´ı smˇerov´ana k mobiln´ımu uzlu. Oproti pouˇzit´ı klasick´e VPN lze v pˇrekryvn´e s´ıti vyuˇz´ıt jej´ıch sluˇzeb vyuˇz´ıvaj´ıc´ı optimalizace datov´ ych tras jak bylo uvedeno v prvn´ı ˇca´sti sekce. 2.4.2
Ukl´ ad´ an´ı a sd´ılen´ı dat
Pˇrekryvn´e s´ıtˇe navrˇzen´e pro ukl´ad´an´ı dat lze rozdˇelit podle zp˚ usobu uˇzit´ı na klasick´e P2P s´ıtˇe urˇcen´e pro sd´ılen´ı velk´ ych soubor˚ u a na content delivery networks, kter´e ukl´adaj´ı obyˇcejnˇe velk´e mnoˇzstv´ı menˇs´ıch soubor˚ u. Klasick´e P2P s´ıtˇe pro sd´ılen´ı soubor˚ u tak´e nekladou vysok´e n´aroky na rychlost pˇrenosu. Proti tomu CDN jsou zˇrizov´any pr´avˇe za u ´ˇcelem distribuovat data k uˇzivateli na co nejkratˇs´ı vzd´alenosti a co nejrychleji (geografick´a dostupnost dat, poplatky za tranzitn´ı pˇrenosy, zpoˇzdˇen´ı a rychlost pˇrenosu). Dalˇs´ım rozd´ılem je, ˇze v pˇr´ıpadˇe P2P s´ıt´ı pro sd´ılen´ı soubor˚ u je uˇzivatel t´eto s´ıtˇe jej´ı souˇc´ast´ı, je ˇclenem s´ıtˇe a tak´e poskytuje svoje zdroje ostatn´ım. V pˇr´ıpadˇe CDN pˇristupuje uˇzivatel ke zdroj˚ um s´ıtˇe zprostˇredkovanˇe, pˇres hraniˇcn´ı uzly CDN s´ıtˇe. Klasick´e P2P s´ıtˇe, oznaˇcovan´e jako prvn´ı generace, napˇr. Napster, vˇetˇsinou obsahovaly jeden centr´aln´ı uzel, kter´ y udrˇzoval informace o vˇsech sd´ılen´ ych datech a jejich um´ıstˇen´ı. Tento pˇr´ıstup se ovˇsem uk´azal jako nedokonal´ y a naivn´ı, protoˇze centr´aln´ı uzel, byt’ replikovan´ y, se pro s´ıt’ st´av´a kritick´ ym a v pˇr´ıpadˇe jeho v´ ypadku je ochromen provoz cel´e s´ıtˇe. Proto byly navrˇzen´e P2P s´ıtˇe druh´e generace, kter´e eliminuj´ı tento centr´aln´ı prvek a vˇse je plnˇe distribuovan´e, pˇr´ıkladem tˇechto s´ıt´ı jsou s´ıtˇe vyuˇz´ıvaj´ıc´ı distribuovanou hashovac´ı tabulku (DHT), jejichˇz implementac´ı existuje cel´a ˇrada, CAN (Content Addressable Network), Chord, Kademlia, Pastry, Riak, Tapestry. Nˇekter´ ym bude vˇenov´an prostor v n´asleduj´ıc´ıch kapitol´ach. Z´akladn´ı princip fungov´an´ı DHT je pops´an na obr´azku 1. Bloku dat je na z´akladˇe hashovac´ı funkce pˇriˇrazen kl´ıˇc, kter´ y z´aroveˇ n urˇcuje, na kter´ ych uzlech budou data uloˇzena. Uzly maj´ı na z´akladˇe sv´eho unik´atn´ıho identifik´atoru pˇriˇrazeno um´ıstˇen´ı v prostoru kl´ıˇc˚ u stejnˇe jako data. Kl´ıˇce jak uzl˚ u, tak dat jsou ze stejn´eho prostoru a ud´avaj´ı jejich polohu. Prostor je podle konkr´etn´ı s´ıtˇe reprezentov´an v 2D prostoru nebo v n-dimenzion´aln´ıch u ´tvarech (kostk´ach). Prostor kl´ıˇc˚ u lze reprezentovat i stromem. Ukl´adan´a data jsou pˇrenesena na nˇekter´ y ze zn´am´ ych uzl˚ u (soused˚ u), kter´ y je nejbl´ıˇze ke kl´ıˇci dat (dle metriky dan´eho prostoru). Ten pˇrenese data na dalˇs´ıho souseda bl´ıˇze ke kl´ıˇci. V koneˇcn´em ˇcase jsou data uloˇzena 6
na uzlu, kter´ y je glob´alnˇe nejbl´ıˇze kl´ıˇci dat. Pˇr´ıstup k dat˚ um se pak dˇeje stejn´ ym zp˚ usobem. Pokud chce uzel z´ıskat dan´a data, kontaktuje sv´eho souseda nejbl´ıˇze kl´ıˇci, ten vyhled´a dalˇs´ıho sv´eho souseda bl´ıˇze kl´ıˇci nebo poskytne data ze sv´eho u ´loˇziˇstˇe. Tento zp˚ usob smˇerov´an´ı b´ yv´a oznaˇcov´an jako smˇerov´an´ı kl´ıˇcem (keybased routing). Seznam soused˚ u je obyˇcejnˇe jednoduch´ y slovn´ık obsahuj´ıc´ı pozici zn´am´ ych uzl˚ u a jejich IP adresy, nesouvis´ı nijak s bl´ızkost´ı uzl˚ u na s´ıt’ov´e u ´rovni. Pˇrenosov´e cesty trasovan´e k dat˚ um t´ımto zp˚ usobem ovˇsem nemus´ı b´ yt optim´aln´ı z pohledu pˇrenosov´e rychlosti. Seznam soused˚ u je moˇzn´e udrˇzovat systematicky tak, aby soused´e byly vyb´ır´ani podle vz´ajemn´e pˇrenosov´e rychlosti (pˇrenos dat) nebo za u ´ˇcelem rovnomˇern´eho pokryt´ı prostoru kl´ıˇc˚ u (rychlost vyhled´av´an´ı). Po nalezen´ı uzlu, kter´ y m´a data pr´avˇe k dispozici, lze pouˇz´ıt smˇerov´an´ı pro pˇrenos dat z pˇredchoz´ı kapitoly, kdy sledujeme dosaˇzen´ı maxim´aln´ı pˇrenosov´e rychlosti. Distribuce um´ıstˇen´ı a seznamu soused˚ u m˚ uˇze b´ yt objektem vˇedeck´eho zkoum´an´ı.
Obr´azek 1: DHT Oproti P2P s´ıt´ım slouˇz´ı CDN s´ıtˇe k pˇrenosu a replikaci dat co nejbl´ıˇze koncov´ ym uˇzivatel˚ um, na periferii internetov´e s´ıtˇe. Jedn´a se pˇredevˇs´ım o geografickou distribuci a replikaci dat, kdy c´ılem je um´ıstit repliky co nejbl´ıˇze koncov´ ym uˇzivatel˚ um na z´akladˇe lokace. Nejˇcastˇeji jsou pouˇz´ıvan´e v pˇr´ıpadˇe glob´aln´ıch sluˇzeb, distribuce aktualizac´ı operaˇcn´ıho syst´emu nebo pˇr´ıloh soci´aln´ıch s´ıt´ı a dalˇs´ıch sluˇzeb. Z jednoho zdrojov´eho serveru jsou data pˇren´aˇsena do CDN tak, aby k nim mˇeli uˇzivatel´e co nejbl´ıˇze, jak z pohledu geografick´eho (kontinent, st´at), tak z pohledu s´ıt’ov´eho (minimalizace zpoˇzdˇen´ı, maximalizace rychlosti pˇrenosu). CDN pˇrekryvn´a s´ıt’ tak b´ yv´a obyˇcejnˇe organizov´ana jako strom, jak zn´azorˇ nuje obr´azek 2. Kdy jsou bud’ metodou pull (stahov´an´ım z centr´aln´ıho serveru na CDN) nebo push (uploadem z centr´aln´ıho serveru do CDN) distribuov´ana data. Metoda pull pˇredstavuje, ˇze pokud pˇrijde poˇzadavek na obsah s dan´ ym kl´ıˇcem, tak server vyhled´a nadˇrazen´ y server u kter´eho poˇza´d´a o data. Postup se opakuje aˇz k serveru, kter´ y m´a data v lok´aln´ım u ´loˇziˇsti nebo k centr´aln´ımu serveru. Poprv´e 7
staˇzen´a data se pak uchovaj´ı na hraniˇcn´ım serveru a to bud’ doˇcasnˇe (cache) nebo trvale (replika). Push metoda spoˇc´ıv´a v tom, ˇze zdrojov´ y centr´aln´ı server provede z´apis na vˇsechny pˇr´ımo podˇr´ızen´e servery a ty poskytuj´ı data d´ale stejn´ ym zp˚ usobem. Zdrojov´ y server pak spravuje i trvalost cache nebo replik. Doruˇcovac´ı strom pro CDN je opˇet tvoˇren logicky, nikoli apriori podle pˇrenosov´ ych kapacit nebo rychlosti. Uˇzivatel´e takt´eˇz nepracuj´ı pˇr´ımo s pˇrekryvnou s´ıt´ı CDN, ale pˇristupuj´ı pouze k jej´ım koncov´ ym uzl˚ um, kter´e data z´ısk´avaj´ı skrze priv´atn´ı pˇrekryvnou s´ıt’. Optim´aln´ı struktura a tvorba stromu m˚ uˇze b´ yt objektem vˇedeck´eho z´ajmu.
Obr´azek 2: CDN
2.4.3
Bezpeˇ cnost a anonymizace
Dalˇs´ı kategori´ı pˇrekryvn´ ych s´ıt´ı podle pouˇzit´ı mohou b´ yt s´ıtˇe urˇcen´e k zajiˇstˇen´ı bezpeˇcnosti pˇren´aˇsen´ ych dat nebo anonymizace u ´ˇcastn´ık˚ u spojen´ı. V tomto ohledu lze oznaˇcit i klasick´e VPN a tunely (IPSec, PPTP, L2TP) za reprezentanty pˇrekryvn´ ych s´ıt´ı, i kdyˇz se vlastnˇe nejedn´a o nov´ y typ s´ıt´ı z pohledu k pˇr´ıstupu k adresov´an´ı, smˇerov´an´ı, ukl´ad´an´ı nebo distribuci dat. Tyto s´ıtˇe vytv´aˇr´ı IP nebo linkov´e s´ıtˇe nad existuj´ıc´ı infrastrukturou IP s´ıt´ı. V takto vytvoˇren´ ych s´ıt´ıch se pak pouˇz´ıvaj´ı klasick´e postupy a protokoly jako v bˇeˇzn´ ych s´ıt´ı, pˇrekryvn´a s´ıt’ slouˇz´ı jen k pˇremostˇen´ı a zabezpeˇcen´ı linek nebo s´ıt´ı s nedostateˇcn´ ymi parametry. Bezpeˇcnost implementuj´ı pomoc´ı pouˇzit´eho ˇsifrov´an´ı pˇren´aˇsen´ ych dat a
8
smˇerov´an´ı vˇcetnˇe pouˇzit´ ych protokol˚ u se nijak neliˇs´ı od protokol˚ u pouˇzit´ ych pro IP s´ıtˇe, lze je i volnˇe propojovat se zbylou IP infrastrukturou. Data = sif raA (hlavicka + sif raB (hlavicka + sif raC (payload)))
(1)
Vhodnˇejˇs´ım reprezentantem pro popis fungov´an´ı bezpeˇcnostn´ıch pˇrekryvn´ ych s´ıt´ı je The Onion Routing protokol (TOR)[7]. Hlavn´ı u ´lohou TOR je skr´ yt uˇzivatele pˇred okoln´ım svˇetem a zajistit anonymn´ı pˇrenos informac´ı. K tomu se pouˇz´ıv´a The Onion Routing protokol, stejnˇe jako pl´atky cibule jsou datov´e pakety obalovan´e a ˇsifrovan´e pˇres sebe (rovnice. 1). Kaˇzd´ y server, kter´ y cestou data zpracov´av´a, odebere jednu vrstvu ˇsifrov´an´ı, pˇreˇcte si hlaviˇcku a podle n´ı poˇsle data d´ale aˇz na v´ ystupn´ı server, kde jsou rozˇsifrovan´a data odesl´ana na c´ılov´ y server (obr. 3). Cel´ y proces anonymizace prob´ıh´a tak, ˇze klient si z adres´aˇre server˚ u vyˇza´d´a seznam uzl˚ u. Klient n´aslednˇe vybere n´ahodnou posloupnost uzl˚ uk zam´ yˇslen´emu c´ıli. Pˇres tuto posloupnost vytvoˇr´ı okruh, kde si s kaˇzd´ ym uzlem vymˇen´ı kl´ıˇce pro ˇsifrov´an´ı dat. N´aslednˇe podle postupu, popsan´eho vzorcem 1, zaˇsifruje sv˚ uj obsah a poˇsle do s´ıtˇe. Kaˇzd´ y z uzl˚ u (Onion router, OR) rozˇsifruje pˇr´ısluˇsnou slupku a podle pˇreˇcten´e hlaviˇcky pos´ıl´a zpr´avy d´ale. T´ımto postupem ˇ adn´ je zajiˇstˇeno, ˇze ˇz´adn´ y z uzl˚ u, kromˇe v´ ystupn´ıho, nezn´a obsah dat klienta. Z´ y z uzl˚ u tak´e nezn´a celou cestu v pˇrekryvn´e s´ıti. Kromˇe posledn´ıho uzlu nen´ı nikomu zn´am ani c´ıl komunikace. Vytvoˇren´ y okruh je v cibulov´em smˇerov´an´ı bud’ po nˇejak´em ˇcase nebo objemu dat pˇreruˇsen a n´aslednˇe se zakl´ad´a jin´ y.
Obr´azek 3: Smˇerov´an´ı v s´ıti TOR Tuto z´akladn´ı techniku lze pro zt´ıˇzen´ı vystopov´an´ı komunikuj´ıc´ıch stran rozˇs´ıˇrit, napˇr´ıklad v r´amci jednoho streamu se m˚ uˇze vyuˇz´ıvat v´ıce disjunktn´ıch cest, 9
v´ ystupn´ı server pakety seskl´ad´a a poˇsle. Tak´e je moˇzn´e poˇrad´ı pˇred´avan´ ych paket˚ u pˇri pˇrenosu pozmˇenit - zam´ıchat jejich poˇrad´ım, pˇrid´avat k pˇrepos´ıl´an´ı n´ahodn´e zpoˇzdˇen´ı atp. Dalˇs´ı, dnes aktu´aln´ı techniku, pouˇz´ıv´a s´ıt’ Vuvuzela [39], kter´a zvyˇsuje zabezpeˇcen´ı proti anal´ yze provozu, odes´ılan´a data maskuje n´ahodn´ ym ˇsumem. Aktu´alnˇe je s´ıt’ pouˇziteln´a pouze pro jednoduchou textovou komunikace, protoˇze zpoˇzdˇen´ı dosahuje aˇz des´ıtek vteˇrin. Vzhledem k tomu, ˇze prim´arn´ım c´ılem anonymizaˇcn´ı pˇrekryvn´e s´ıtˇe je anonymizace, smˇerov´an´ı prob´ıh´a zcela z´amˇernˇe n´ahodnˇe, pak veˇsker´e operace pro optimalizaci zpoˇzdˇen´ı nebo pˇrenosov´e rychlosti jsou na ˇskodu, protoˇze by vnˇejˇs´ımu u ´toˇcn´ıkovi umoˇzn ˇovaly modifikovat smˇerov´an´ı takov´ ym zp˚ usobem, aby cel´ y okruh byl sestaven pˇres jeho uzly. Modifikace by spoˇc´ıvala v jednoduch´em ovlivˇ nov´an´ı stavu jednotliv´ ych linek, tak aby bylo v´ yhodnˇejˇs´ı poslat data jednou konkr´etn´ı cestou. Zpoˇzdˇen´ı a propustnost takov´ ych s´ıt´ı je tedy horˇs´ı neˇz bˇeˇzn´a pˇr´ım´a komunikace. Dalˇs´ım druhem s´ıt´ı v t´eto skupinˇe jsou s´ıtˇe, kter´e podle jejich autor˚ u bojuj´ı proti cenzuˇre, ˇcasto se st´avaj´ı u ´toˇciˇstˇem kybernetick´ ych krimin´aln´ık˚ u“. C´ılem tˇechto ” s´ıt´ı je opˇet anonymizovat obˇe strany komunikace a zajistit necenzurovan´ y pˇr´ıstup k dat˚ um. Tyto s´ıtˇe funguj´ı ˇca´steˇcnˇe jako P2P s´ıtˇe pro sd´ılen´ı soubor˚ u a ˇc´asteˇcnˇe tak´e jako cache obsahu. Jedn´ım z rozˇs´ıˇren´ ych z´astupc˚ u je Freenet[4].
2.5
Experiment´ aln´ı prostˇ red´ı
Vˇetˇsina vlastnost´ı pˇrekryvn´ ych s´ıt´ıch je patrn´a a mˇeˇriteln´a pouze ve vˇetˇs´ım mˇeˇr´ıtku glob´aln´ıho internetu. Vytvoˇrit si soukrom´e testovac´ı prostˇred´ı nebo simulaci tak rozs´ahl´ ych syst´em˚ u by nebylo v˚ ubec jednoduch´e. Proto v roce 2003 vznikl PlanetLab [36][25][24], jehoˇz ˇclenem je i CESNET [2]. PlanetLab je experiment´aln´ı s´ıt’ dostupn´ ych uzl˚ u napˇr´ıˇc vˇsemi svˇetad´ıly, tak aby pokr´ yvala vˇetˇsinu Internetu. Je prim´arnˇe urˇcen´a pro v´ yzkum, v´ yvoj a testov´an´ı nov´ ych internetov´ ych protokol˚ u, distribuovan´ ych syst´em˚ u a s´ıt’ov´ ych sluˇzeb. V r´amci PlanetLabu aktu´alnˇe prob´ıh´a v´ yvoj a testov´an´ı n´asleduj´ıc´ıch aplikac´ı OceanStore[18], CoralCDN[10], projekt RON[1] (Resilient Overlay Network), projekt DHARMA[22] (Distributed Home Agent for Remote Mobile Access) a dalˇs´ıch.
10
3
Pˇ rekryvn´ e s´ıtˇ e a smˇ erov´ an´ı dat
V t´eto kapitole budou pops´any re´aln´e pˇr´ıpady uˇzit´ı pˇrekryvn´ ych s´ıt´ı a podrobnˇe rozebr´any zp˚ usoby smˇerov´an´ı dat v nich. Jak´ ym zp˚ usobem se pˇrekryvn´a s´ıt’ sestavuje, jakou pouˇz´ıv´a topologii, na z´akladˇe jak´ ych metrik a jak funguje smˇerov´an´ı. Jak´e jsou pˇredpoklady a n´aroky pro smˇerov´an´ı.
3.1
Skupinov´ e vys´ıl´ an´ı
Z historick´eho hlediska lze ˇr´ıci, ˇze jedny z prvn´ıch pˇrekryvn´ ych s´ıt´ı v internetu byly s´ıtˇe implementuj´ıc´ı multicasting[21][8] nad IP protokolem. Pˇrestoˇze t´emˇeˇr vˇsechny produkˇcn´ı smˇerovaˇce v internetu podporovaly a podporuj´ı multicasting, tak na vˇetˇsinˇe je jeho podpora vypnuta, proto skupinov´e vys´ıl´an´ı v praxi funguje pouze v r´amci jednoho autonomn´ıho syst´emu (AS), kde organizace ˇcasto multicasting podporuj´ı a vyuˇz´ıvaj´ı (telekonference, vys´ıl´an´ı obsahu, IPTV atp.). Pˇr´ınosy pouˇzit´ı skupinov´eho vys´ıl´an´ı pro optimalizaci pˇren´aˇsen´ ych dat jsou zˇrejm´e jak ukazuje obr´azek 4, data se v s´ıti dan´ ym smˇerem ˇs´ıˇr´ı pouze jednou, ˇ r´ı se t´ım jak pˇrenos dat, tak ne jako v pˇr´ıpadˇe pouˇzit´ı unicastu v´ıcen´asobnˇe. Setˇ pˇrenosov´e p´asmo, ale i zat´ıˇzen´ı vys´ılac´ıch server˚ u, tak smˇerovaˇc˚ u po cestˇe. Pˇri pouˇzit´ı skupinov´eho vys´ıl´an´ı je tˇreba ˇreˇsit dva probl´emy. Jedn´ım je udrˇzov´an´ı skupiny - seznam pˇr´ıjemc˚ u, kter´ ym je vys´ıl´an´ı adresov´ano, druh´ ym je obsluha doruˇcen´ı dat do dan´ ych koncov´ ych uzl˚ u. Stejnˇe jako v pˇr´ıpadˇe doruˇcov´an´ı multicastu v IP s´ıt´ı je tˇreba i v pˇrekryvn´e s´ıti vytvoˇrit doruˇcovac´ı strom. Strom m´a koˇren v uzlu, kter´ y poskytuje dan´ y proud/generuje data a postupnˇe je vytv´aˇrena minim´aln´ı kostra grafu vˇsech uzl˚ u skupiny. Implementace multicastu pomoc´ı pˇrekryvn´e s´ıtˇe d´av´a moˇznost zav´est multicast i do s´ıt´ı, kde nen´ı podporov´an. M´ısto pouˇzit´ı IP smˇerovaˇc˚ u smˇeruje pˇrekryvn´a ’ s´ıt data pˇres vlastn´ı uzly. Doruˇcovac´ı strom je pak tvoˇr´ı napˇr´ıklad pomoc´ı hladov´eho algoritmu pro hled´an´ı minim´aln´ı kostry grafu. Pˇrekryvn´a s´ıt’ je reprezentov´ana u ´pln´ ym grafem (kaˇzd´ y uzel je spojen´ y s kaˇzd´ ym, mimo speci´aln´ı pˇr´ıpady a v´ ypadky). Tvorba prob´ıh´a tak, ˇze smˇerem od koˇrene pˇrid´av´ame ty hrany, kter´e maj´ı nejmenˇs´ı ohodnocen´ı. Minim´aln´ı kostru lze tak´e naj´ıt obr´acen´ ym zp˚ usobem a to tak, ˇze z grafu postupnˇe odeb´ır´ame hrany s nejvˇetˇs´ım ohodnocen´ım a kontrolujeme souvislost grafu. Doruˇcovac´ı strom je tˇreba pr˚ ubˇeˇznˇe pˇrepoˇc´ıt´avat a pˇrestavovat podle aktu´aln´ıho stavu s´ıtˇe a podle pˇr´ıchoz´ıch a odchoz´ıch uzl˚ u. Obyˇcejnˇe pouˇz´ıvanou metrikou pˇri vys´ıl´an´ı proudu dat je propustnost dostupn´ ych linek, v pˇr´ıpadˇe ˇziv´ ych pˇrenos˚ u nebo obousmˇern´e komunikace (telekonference, videokonference) je kl´ıˇcov´ ym parametrem zpoˇzdˇen´ı a rozptyl. Strom je tedy tvoˇren jedn´ım nebo kombinac´ı tˇechto parametr˚ u. Kromˇe pˇrizp˚ usobov´an´ı doruˇcovac´ıho stromu podle aktu´aln´ıch parametr˚ u s´ıtˇe je moˇzn´e prov´adˇet i rezervaci zdroj˚ u.
11
Obr´azek 4: Multicasting komunikace - IPTV Rezervace je ovˇsem v pˇrekryvn´ ych s´ıt´ıch dosti problematick´a, protoˇze po podkladov´e s´ıti jsou pˇren´aˇsena data, kter´a pˇrekryvn´e s´ıti nen´aleˇz´ı, pˇrekryvn´a s´ıt’ nen´ı schopna je ani nijak regulovat a tak nelze rezervace nijak zaruˇcit. Na u ´rovni pˇrekryvn´e s´ıtˇe lze pracovat vˇzdy pouze s aktu´aln´ı pˇrenosovou kapacitou, kterou m˚ uˇze pˇrekryvn´a s´ıt’ regulovat a ˇr´ıdit. V tomto ohledu lze tak´e vyuˇz´ıt predikci stavu linky na z´akladˇe zn´am´eho chov´an´ı pˇrenosu z kr´atkodob´e a dlouhodob´e historie.
3.2
CDN s´ıtˇ e
´ celem, za jak´ Uˇ ym jsou CDN s´ıtˇe vytv´aˇreny, je minimalizovat round-triptime (RTT), time-to-live (TTL) a propustnost linek pˇren´aˇsej´ıc´ıch data mezi uˇzivatelem/klientem a zdrojem obsahu. Tento poˇzadavek je kladen na sluˇzby nab´ızen´e klient˚ um. Poˇzadavky na s´ıt’ jej´ıho provozovatele jsou minimalizovat pˇrenosy a vyuˇzit´ı linek na z´akladˇe vztah˚ u (ˇcasto smluvn´ıch) mezi jednotliv´ ymi autonomn´ımi syst´emy, rozkl´adat z´atˇeˇz rovnomˇernˇe mezi dostupn´e uzly a efektivnˇe replikovat poskytovan´ y obsah. Za pˇrenos mezi AS se ˇcasto u ´ˇctuj´ı poplatky, hlavnˇe na u ´rovni mezin´arodn´ıch a tranzitn´ıch s´ıt´ı. C´ılem provozovatele CDN je tedy minimalizovat tyto n´aklady pomoc´ı vhodn´eho smˇerov´an´ı v s´ıti. Z pohledu doruˇcov´an´ı obsahu jsou CDN s´ıtˇe podobn´e skupinov´emu vys´ıl´an´ı. Opˇet je vytvoˇren doruˇcovac´ı strom, kde koˇrenem stromu je p˚ uvodn´ı server (zdroj obsahu) obsahuj´ıc´ı origin´al dat. Uzly a listy grafu jsou pak jednotliv´e uzly CDN. Uzly CDN mohou b´ yt podle funkce dvoj´ıho druhu, jedny (uzly stromu) jsou pouze pro optimalizaci pˇrenosu a druh´e (listy stromu) pouze pro komunikaci s koncov´ ymi uˇzivateli. Obˇe tyto funkce lze kombinovat. Jak bylo pops´ano v pˇredchoz´ı 12
kapitole s u ´vodem do CDN, existuj´ı dva moˇzn´e pˇr´ıstupy k distribuci dat uvnitˇr CDN. Jedn´ım je push a druh´ ym pull. Vybran´ y zp˚ usob je vˇetˇsinou d´an z´akladn´ı architekturou CDN nebo doruˇcovan´ ym obsahem. Obsah m˚ uˇze b´ yt statick´ y, v ˇcase nemˇenn´ y (obr´azky, ˇcl´anky, videa) nebo dynamick´ y, v ˇcase se ˇcasto mˇen´ıc´ı nebo na ˇcase pˇr´ımo z´avisl´ y, napˇr. video vys´ıl´an´ı. O tom co a jak bude do uzl˚ u distribuov´ano, rozhoduje komponenta CDN oznaˇcovan´a jako director. Tato komponenta slouˇz´ı k ˇr´ızen´ı CDN a ˇr´ık´a, jak bude obsah distribuov´an do s´ıtˇe, napˇr´ıklad podle zvolen´ ych sluˇzeb z´akazn´ıka. Souˇc´ast´ı komponenty director je kromˇe ˇr´ızen´ı tak´e sluˇzba evidence z´akazn´ık˚ u, u ´ˇctov´an´ı, katalog obsahu a adres´aˇr dostupn´ ych server˚ u a algoritmus pro ˇr´ızen´ı distribuce. V pˇr´ıpadˇe distribuce ˇziv´eho video vys´ıl´an´ı se s´ıt’ chov´a podobnˇe jako multicast, vys´ıl´an´ı je distribuov´ano jen do tˇech uzl˚ u, kde na jeho sledov´an´ı ˇcekaj´ı uˇzivatel´e a je tam distribuov´an pouze v jedn´e kopii, n´aslednˇe listy doruˇcovac´ıho stromu jiˇz v nˇekolika identick´ ych proudech doruˇcuj´ı obsah pˇr´ımo uˇzivatel˚ um. Vˇetˇsinou je pro to vyuˇzita metoda pull, protoˇze vys´ıl´an´ı je nutn´e doruˇcit do dan´eho uzlu jen v pˇr´ıpadˇe, ˇze m´a konzumenty. Zde se dynamick´e smˇerov´an´ı uplatn´ı ˇsirokou mˇerou, protoˇze je tˇreba doruˇcit data bez zbyteˇcn´eho zpoˇzdˇen´ı k uˇzivatel˚ um s co nejvˇetˇs´ı pˇrenosovou rychlost´ı (kvalitou vys´ıl´an´ı). Strom nebo jeho vˇetev je tˇreba sestavit s ohledem na poˇzadovan´e parametry provozu, aktu´aln´ı poˇzadavky a z´atˇeˇz syst´emu. V pˇr´ıpadˇe distribuce statick´eho obsahu lze vyuˇz´ıt oba pˇr´ıstupy, jak pull tak push. V pˇr´ıpadˇe pull je vytvoˇrena lok´aln´ı replika pˇri prvn´ım pˇr´ıstupu uˇzivatele k obsahu. V tuto chv´ıli je tˇreba vhodnˇe zvolit server, kter´ y bude zdrojem aktu´aln´ıch dat. Nejjednoduˇsˇs´ı je zvolit p˚ uvodn´ı server, protoˇze zde je zaruˇceno, ˇze pr´avˇe tam bude aktu´aln´ı obsah dostupn´ y. Tento pˇr´ıstup nen´ı vhodn´ y s ohledem na efektivitu a jeden z c´ıl˚ u CDN, kter´ ym je minimalizace z´atˇeˇze zdrojov´ ych server˚ u a v pˇr´ıpadˇe nouze i obsluha poˇzadavk˚ u z cache v pˇr´ıpadˇe jeho nedostupnosti. Je tedy vhodnˇejˇs´ı jako zdroj pro lok´aln´ı repliku pouˇz´ıt jin´ y server, kter´ y m´a aktu´aln´ı data, server lze naj´ıt pomoc´ı katalogu obsahu. N´aslednˇe je uplatnˇeno opˇet dynamick´e smˇerov´an´ı tak, ˇze je hled´ana takov´a cesta pˇres uzly CDN, aby byl obsah dostupn´ y co nejdˇr´ıve. S pouˇzit´ım dynamick´eho smˇerov´an´ı je moˇzn´e pouˇz´ıt ty servery, kter´e sice nemaj´ı nejnovˇejˇs´ı repliku dat, ale cesta pˇres nˇe ke zdrojov´emu serveru je rychlejˇs´ı. Bonusem pak m˚ uˇze b´ yt i to, ˇze pˇri pˇrenosu si mohou sv´e lok´aln´ı repliky aktualizovat i pr˚ uchoz´ı uzly. Velkou v´ yzvou pˇri tvorbˇe CDN je tak´e volba um´ıstˇen´ı a mnoˇzstv´ı uzl˚ u v jednotliv´ ych lokalit´ach (geografick´a oblast, AS). Tomu vˇetˇsinou pˇredch´az´ı mˇeˇren´ı a anal´ yza n´avˇstˇevn´ık˚ u poskytovatele obsahu. Zde je ˇcasto vyuˇz´ıv´ana i predikce, protoˇze mnoˇzstv´ı obsahu a uˇzivatel˚ u pr˚ ubˇeˇznˇe roste. D´ale pak jednotliv´ı poskytovatel´e ˇcasto rozˇsiˇruj´ı svoji p˚ usobnost do nov´ ych region˚ u nebo doch´az´ı k vyˇsˇs´ımu rozˇs´ıˇren´ı internetu v dˇr´ıve zaostal´ ych regionech.
13
3.3
P2P s´ıtˇ e
Dynamick´e smˇerov´an´ı nen´ı prakticky v P2P pˇrekryvn´e s´ıti pˇr´ıliˇs ˇcast´e a ani obsahem aktu´aln´ıho v´ yzkumu [47], [11], [13]. Pokud P2P s´ıtˇe vyuˇz´ıvaj´ı pˇri sv´e funkci smˇerov´an´ı, pak se jedn´a vˇetˇsinou o hierarchick´e smˇerov´an´ı. Prim´arnˇe se smˇerov´an´ı vyuˇz´ıv´a ve f´azi hled´an´ı dat. Jak bylo uk´az´ano na pˇr´ıkladu DHT, obr. 1 data jsou v s´ıti reprezentov´ana v´ ysledkem hashovac´ı funkce. Podle v´ ysledn´eho hashe jsou pak um´ıstˇena na uzly s´ıtˇe nebo je na uzly s´ıtˇe um´ıstˇena reference na tyto data (s´ıt’ slouˇz´ı pro vyhled´av´an´ı dat). Smˇerov´an´ı poˇzadavk˚ u je pak vyuˇz´ıvan´e pˇredevˇs´ım ve f´azi vyhled´av´an´ı dat. V pˇr´ıpadˇe centralizovan´e P2P s´ıtˇe je pˇred´an seznam uzl˚ u, kter´e maj´ı dan´a data k dispozici a n´asledn´a v´ ymˇena dat jiˇz prob´ıh´a pˇr´ım´ ym spojen´ım s tˇemito uzly. Hierarchick´e P2P s´ıtˇe pak pouˇz´ıvaj´ı smˇerov´an´ı k nalezen´ı dan´eho uzlu v s´ıti. Bˇehem ˇzivota s´ıtˇe, jak uzly do s´ıtˇe vstupuj´ı a opouˇstˇej´ı ji, jsou zaˇrazov´any do struktury s´ıtˇe a na nˇe je mapov´an obsah podle v´ ysledk˚ u hashovac´ı funkce. Pˇri z´ısk´av´an´ı dat je pak pouˇzit nejbliˇzˇs´ı zn´am´ y uzel a dot´az´an na existenci dat dan´eho kl´ıˇce. Uzel odeˇsle zpˇet vyhled´avan´a data nebo seznam nejbliˇzˇs´ıch pro nˇej zn´am´ ych uzl˚ u k dan´emu hashi. Tento proces se pak opakuje, dokud nejsou data nalezena. Smˇerov´an´ı je realizov´ano tak, ˇze uzel m´ısto aby vr´atil seznam uzl˚ u, kter´e jsou k hledan´e hodnotˇe bl´ıˇze, provede dalˇs´ı dotaz s´am. Tento postup opakuje dalˇs´ı uzel dokud nen´ı konkr´etn´ı kl´ıˇc nalezen a data jsou postupnˇe vracena zpˇet, aˇz doputuj´ı k uzlu, kter´ y se dotazoval.
Obr´azek 5: Vyhled´av´an´ı v DHT a) pˇr´ım´e dotazov´an´ı b) smˇerovan´e dotazov´an´ı Obr´azek 5 zobrazuje situace, kdy uzel 000 vyhled´av´a data s kl´ıˇcem 100, nejprve je zde vidˇet dotaz na uzel (nebo skupinu uzl˚ u), kter´ ym n´aleˇz´ı kl´ıˇc 010. Vyhled´av´an´ı pokraˇcuje pˇres uzel 011 a v dalˇs´ım kroku konˇc´ı v c´ıli. V pˇr´ıpadˇe a) je dotazov´an´ı pˇr´ım´e, nedoch´az´ı k ˇz´adn´emu smˇerov´an´ı, v pˇr´ıpadˇe b) je poˇzadavek smˇerov´an d´ale na zn´am´e uzly. Z obr´azku je patrn´e, ˇze smˇerov´an´ı nesleduje ˇza´dn´e metriky, ale 14
ˇr´ıd´ı se pouze kl´ıˇci DHT. Obr´azek 6 zn´azorˇ nuje dalˇs´ı moˇzn´e uspoˇr´ad´an´ı uzl˚ u P2P s´ıtˇe do stromu. Smˇerov´an´ı dat by pak pˇredstavovalo proch´azen´ı tohoto stromu.
Obr´azek 6: Stromov´a struktura DHT Smˇerov´an´ı v tˇechto s´ıt´ıch je moˇzn´e optimalizovat systematickou organizac´ı dan´e topologie s´ıtˇe. Tato systematizace m˚ uˇze prob´ıhat pˇri zaˇrazen´ı nov´eho uzlu nebo se m˚ uˇze mˇenit v ˇcase podle aktu´aln´ıho stavu linek a uzl˚ u. Jednou z ot´azek pot´e bude podle jak´ ych metrik volit ohodnocen´ı uzl˚ u nebo skupin uzl˚ u a jejich linek a d´ale jak´e parametry s´ıtˇe optimalizovat. V pˇr´ıpadˇe decentralizovan´e P2P je tˇreba uvaˇzovat, ˇze dan´e uspoˇr´ad´an´ı bude optim´aln´ı z glob´aln´ıho pohledu, ale nemus´ı b´ yt optim´aln´ı z pohledu jednotliv´ ych uzl˚ u a konkr´etn´ıch dat, ke kter´ ym pˇristupuj´ı. Dalˇs´ım ˇreˇsen´ ym probl´emem m˚ uˇze b´ yt znalost aktu´aln´ı topologie s´ıtˇe, evidence vˇsech uzl˚ u s´ıtˇe a jejich vz´ajemn´ ych vztah˚ u pro v´ ypoˇcet optima. Dynamick´e smˇerov´an´ı je moˇzn´e do P2P zav´est v pˇr´ıpadˇe, ˇze jednotliv´e kl´ıˇce DHT spravuje fyzicky v´ıce uzl˚ u, pak budeme v kaˇzd´em kroku vyb´ırat ten uzel, kter´ y splˇ nuje nejl´epe definovan´e parametry pro zvolen´ y provoz. Rozhodov´an´ı o vhodn´e trase muˇze b´ yt prov´adˇeno vˇzdy v kaˇzd´em uzlu samostatnˇe nebo m˚ uˇze b´ yt ˇr´ızeno hlubˇs´ı znalost´ı topologie a jednotliv´ ych metrik pouˇzit´ ych spoj˚ u. Napˇr´ıklad v kaˇzd´em kroku vyhled´av´an´ı m˚ uˇze b´ yt dotazuj´ıc´ımu uzlu odesl´an seznam s nejbliˇzˇs´ımi uzly a parametry dostupn´ ych linek. Dotazuj´ıc´ı pak spoˇc´ıt´a optim´aln´ı trasu pro pr˚ uchod celou cestou k c´ıli. Inicializace v´ ypoˇctu bude zat´ıˇzena nutnou reˇzi´ı pro z´ısk´an´ı tˇechto informac´ı, ale n´asledn´ y pˇrenos dat bude optim´aln´ı z hlediska stanoven´ ych metrik.
3.4
Zajiˇ stˇ en´ı kvality sluˇ zeb
Pˇrekryvn´e s´ıtˇe pro zajiˇstˇen´ı kvality sluˇzeb jsou aktu´alnˇe reprezentov´any s´ıtˇemi Service Overlay Network (SON)[12] a Resilient Overlay Netwok (RON)[1]. 15
Resilient Overlay Network je navrˇzena s c´ılem minimalizovat dopady n´ahl´ ych zmˇen na s´ıt´ıch, pˇredevˇs´ım v´ ypadky spoj˚ u (rychlejˇs´ı zmˇena trasy, neˇz ji provede BGP nebo jin´ y internetov´ y smˇerovac´ı protokol), pˇret´ıˇzen´ı nebo zahlcen´ı linek (´ utoky nebo anom´alie zp˚ usoben´a provozem na s´ıti kv˚ uli nˇejak´e v´ yznamn´e ud´alosti). Uzly RON neust´ale sleduj´ı stavy jednotliv´ ych linek mezi uzly s´ıtˇe a bez prodlen´ı na nˇe reaguj´ı a provoz pˇresmˇerov´avaj´ı. Platforma pro s´ıt’ je vytvoˇren´a jako extern´ı knihovna, kterou je moˇzn´e zakomponovat do existuj´ıc´ıch program˚ u a kter´a n´aslednˇe zajist´ı pˇrenos s´ıt´ı, tak aby byl optim´aln´ı podle definovan´ ych potˇreb. Logika v knihovnˇe rozhodne, jestli je vhodnˇejˇs´ı pouˇz´ıt pˇr´ım´e spojen´ı pomoc´ı klasick´ ych linek nebo pˇremostit pˇrenos pomoc´ı pˇrekryvn´e s´ıtˇe. Sch´ema fungov´an´ı zn´azorˇ nuje obr´azek 7. RON vyuˇz´ıv´a pro rozhodov´an´ı z´akladn´ı metriky, rychlost, spolehlivost a zpoˇzdˇen´ı. Knihovna je navrˇzena pro spolupr´aci s aplikacemi, ke kter´ ym je pˇripojena. Je moˇzn´e specifikovat i vlastn´ı aplikaˇcn´ı metriky. V´ ysledn´a metrika a politika pouˇzit´a pˇri smˇerov´an´ı je pak zaloˇzena na explicitn´ıch pravidlech, podle zdroje, c´ıle a tˇr´ıdy pˇrenosu. Pˇren´aˇsen´a data jsou pak oznaˇcena nejen zdrojem a c´ılem, ale tak´e tˇr´ıdou provozu a oznaˇcen´ım pouˇzit´e politiky. Definice jednotliv´ ych politik m˚ uˇze smˇerov´an´ı d´ale ovlivˇ novat, napˇr´ıklad zak´azat pˇrenos po vybran´em spoji. Kaˇzd´ y uzel s´ıtˇe se skl´ad´a z nˇekolika ˇc´ast´ı, prvn´ı je pˇredavaˇc, kter´ y na z´akladˇe vyhodnocen´ı smˇerov´an´ı pˇred´av´a data d´ale, v´ ykonnostn´ı datab´aze, kter´a obsahuje z´ıskan´e hodnoty jednotliv´ ych metrik a jsou z n´ı n´aslednˇe odvozeny moˇzn´e cesty a datab´aze politik, kter´a d´ale rozhoduje, kter´a cesta m˚ uˇze b´ yt pro pˇrenos pouˇzita.
Obr´azek 7: Koncept fungov´an´ı RON Hlavn´ım c´ılem RON je minimalizovat probl´emy v internetu zp˚ usoben´e pˇredevˇs´ım ’ v´ ypadky linek a n´ızkou pˇrenosovou rychlost´ı zp˚ usobnou, at jiˇz n´ızkou kapacitou linek nebo jej´ım aktu´aln´ım zahlcen´ım. Oproti tomu Service Overlay Netwok se snaˇz´ı zcela koncepˇcnˇe zajistit konkr´etn´ı parametry komunikace s d˚ urazem pˇredevˇs´ım na kvalitu sluˇzeb (QoS) pro aplikace jako napˇr´ıklad VoIP, video na poˇza´d´an´ı a dalˇs´ı online aplikace, kde je tˇreba garantovat definovanou minim´aln´ı kvalitu pˇrenosu. 16
QoS jak v pˇrekryvn´ ych tak bˇeˇzn´ ych s´ıt´ı pˇredpokl´ad´a prioritizaci nˇekter´eho pˇrenosu nad ostatn´ımi. Mohou b´ yt definov´any tˇr´ıdy pˇrenosu podle jejich poˇzadavk˚ u. Poˇzadavky na pˇrenos pak mohou b´ yt pomoc´ı prioritn´ıch front nebo ˇ pomoc´ı token bucket algoritmu. Casto se tak´e pouˇz´ıv´a rezervace pˇrenosov´eho p´asma podle n´arok˚ u aplikace definovan´ ych pˇri zah´ajen´ı pˇrenosu. Pouˇzit´ı rezervac´ı je ale v pˇr´ıpadˇe pˇrekryvn´ ych s´ıt´ı nanejv´ yˇse problematick´e, protoˇze pˇrekryvn´a s´ıt’ nem´a dostatek informac´ı o celkov´e ˇs´ıˇrce dostupn´e pro pouˇzit´e spoje, ale m˚ uˇze je pouze odhadovat na z´akladˇe kr´atkodob´ ych nebo dlouhodob´ ych mˇeˇren´ı. Pˇrekryvn´a ’ s´ıt ani nedok´aˇze spolehlivˇe poˇzadovanou kapacitu rezervovat, protoˇze linky mohou b´ yt kdykoli zat´ıˇzen´e pˇrenosem mimo pˇrekryvnou s´ıt’, kter´ y na link´ach tak´e prob´ıh´a paralelnˇe. Lze tedy pracovat pouze s pravdˇepodobnost´ı schopnosti garantovat dan´e parametry pˇrenosu. Ke zv´ yˇsen´ı pravdˇepodobnosti mohou pˇrispˇet metody predikce zat´ıˇzen´ı a dostupn´e kapacity linky, kter´a pˇrenos realizuje. Tomuto t´ematu, jak predikovat parametry linky v bl´ızk´e budoucnosti se budou vˇenovat dalˇs´ı kapitoly pr´ace.
3.5
Anonymizaˇ cn´ı s´ıtˇ e
Anonymizaˇcn´ı s´ıtˇe jako jsou TOR[7], ORTA[37] nebo Vuvuzela[39] vyuˇz´ıvaj´ı dynamick´e smˇerov´an´ı k anonymizaci u ´ˇcastn´ık˚ u a ochranˇe proti odposlechu neust´alou zmˇenou tras. Sledovanou metrikou je pravdˇepodobnostn´ı rozdˇelen´ı gener´atoru n´ahodn´ ych cest, aby byla zvolen´a cesta dostateˇcnˇe n´ahodn´a a t´ım i bezpeˇcn´a proti odposlechu nebo sledov´an´ı. Cesty mus´ı b´ yt volen´e tak, aby splˇ novaly poˇzadavek na minim´aln´ı poˇcet skok˚ u a aby byly uzly a jejich poˇrad´ı volen´e s rovnomˇern´ ym rozdˇelen´ım pravdˇepodobnosti. Pokud by doch´azelo k jak´emukoli deterministick´emu smˇerov´an´ı na z´akladˇe libovoln´ ych metrik, pak by bylo moˇzn´e vkl´adat do s´ıtˇe uzly tak, aby s pravdˇepodobnost´ı p vedla cesta, pr´avˇe pˇres tyto vloˇzen´e uzly. S moˇznost´ı vloˇzit vˇetˇs´ı poˇcet uzl˚ u by pravdˇepodobnost, ˇze provoz p˚ ujde pˇres vloˇzen´e uzly, rostla. Vˇsechny s´ıtˇe funguj´ıc´ı na tomto principu mus´ı v n´avrhu usilovat o to aby pomˇer vlastn´ıch a vloˇzen´ ych uzl˚ u musel b´ yt co nejvˇetˇs´ı, ’ aby nebylo moˇzn´e kompromitovat s´ıt tak snadno nebo to bylo finanˇcnˇe velice n´aroˇcn´e.
3.6
Shrnut´ı smˇ erov´ an´ı v pˇ rekryvn´ ych s´ıt´ıch
V kaˇzd´em druhu pˇrekryvn´ ych s´ıt´ı popsan´ ych pˇredchoz´ıch sekc´ıch prob´ıh´a smˇerov´an´ı r˚ uzn´ ymi zp˚ usoby. Nˇekter´e s´ıtˇe jsou strukturovan´e, tvoˇr´ı napˇr´ıklad prostor dat ( 2D plocha, n-rozmˇern´a kostka atp.) rozdˇelen´ y na menˇs´ı oblasti a smˇerov´an´ı prob´ıh´a mezi tˇemito oblastmi. Jin´e strukturovan´e s´ıtˇe tvoˇr´ı napˇr´ıklad doruˇcovac´ı stromy, hvˇezdu, kruh a nebo kombinace. Pokud nen´ı struktura s´ıtˇe pevnˇe d´ana, pak se tvoˇr´ı zvolen´e/definovan´e struktury s ohledem na splnˇen´ı de17
finovan´ ych c´ıl˚ u, rychlost, spolehlivost doruˇcen´ı, maxim´aln´ı logickou vzd´alenost a dostupn´e zdroje. Aby bylo moˇzn´e strukturu t´ımto zp˚ usobem sestavit, tak je tˇreba zn´at vlastnosti s´ıtˇe. Vlastnosti dan´e s´ıtˇe vych´az´ı z prostˇredk˚ u, kter´e jsou j´ı ’ dostupn´e skrze podkladovou s´ıt . Tvorba topologie a jej´ı uspoˇra´d´an´ı je tedy d´ano vˇsemi poˇzadavky, kter´e jsou na danou s´ıt’ kladeny a aktu´aln´ımi a dostupn´ ymi informacemi o stavu s´ıtˇe a parametry linek.
4
Smˇ erovac´ı metriky
Pro smˇerov´an´ı v pˇrekryvn´ ych s´ıt´ıch se pouˇz´ıvaj´ı dvˇe z´akladn´ı metriky, jednou je dostupn´a pˇrenosov´a rychlost, druhou je zpoˇzdˇen´ı. Dalˇs´ı sledovan´e metriky pak mohou b´ yt spolehlivost linky (ztr´atovost paket˚ u, chybovost pˇri odes´ıl´an´ı/pˇr´ıjmu), stabilita (kol´ıs´an´ı) pˇrenosov´ ych parametr˚ u linky nebo jej´ı opakovan´e pˇreruˇsen´ı spojen´ı. Kaˇzd´ y z tˇechto parametr˚ u je moˇzn´e mˇeˇrit a n´aslednˇe ho vyuˇz´ıt pˇri smˇerov´an´ı poˇzadavk˚ u s´ıt´ı. Z´asadn´ı komplikac´ı pˇrekryvn´ ych s´ıt´ı je v z´ısk´av´an´ı tˇechto dat, ˇza´dn´a nebo pouze mal´a znalost niˇzˇs´ı vrstvy, kterou pro sv˚ uj provoz vyuˇz´ıv´a a tak´e v mnoha pˇr´ıpadech i fakt, ˇze uzly pˇrekryvn´e s´ıtˇe tvoˇr´ı pˇrev´aˇznˇe koncov´e uzly, uˇzivatelsk´e stanice, servery atp. V souˇcasn´e dobˇe se tak´e rozv´ıj´ı ˇr´ızen´ı pˇrenosu (traffic engineering, TE) nebo dynamick´e ˇr´ızen´ı pˇrenosu, kter´e m˚ uˇze pˇrekryvn´ ym s´ıt´ım komplikovat situaci, t´ım, ˇze se dynamicky mˇen´ı smˇerov´an´ı v podkladov´e s´ıti a t´ım i parametry, kter´e m˚ uˇze pˇrekryvn´a s´ıt’ sledovat. Na druhou stranu postup˚ um ˇr´ızen´ı provozu na niˇzˇs´ıch vrstv´ach mohou pˇrekryvn´e s´ıtˇe tak´e naruˇsovat nebo ovlivˇ novat funkˇcnost. Aktu´aln´ı vˇedeck´e zkoum´an´ı se tak zamˇeˇruje jak na aplikaci princip˚ u zn´am´ ych z pˇrekryvn´ ych s´ıt´ı do ˇr´ızen´ı provozu napˇr. IP s´ıt´ı, tak v r´amci softwarovˇe definoˇ van´ ych s´ıt´ı [17][16]. Rada publikac´ı se zab´ yv´a interferenc´ı ˇr´ızen´ı s´ıt’ov´eho provozu a pˇrekryvn´ ych s´ıt´ı, jejich moˇznou spoluprac´ı, pˇr´ıpadnˇe ˇr´ızen´ım jedn´e s´ıtˇe druhou. Publikovan´e pr´ace popisuj´ı, ˇze ˇcist´e ˇr´ızen´ı podkladov´e s´ıtˇe podle poˇzadavk˚ u a pravidel pˇrekryvn´e s´ıtˇe vede k nestabilitˇe spojen´ı a linek.
4.1
Sledov´ an´ı a mˇ eˇ ren´ı parametr˚ u v pˇ rekryvn´ ych s´ıt´ıch
Problematika sledov´an´ı a mˇeˇren´ı parametr˚ u pˇrekryvn´ ych s´ıt´ı je oproti podkladov´ ym, z´akladn´ım, s´ıt´ım specifick´a t´ım, ˇze nejsou dostupn´e konkr´etn´ı informace o dostupn´ ych prostˇredc´ıch, ani konkr´etn´ı konfiguraci podkladov´e s´ıtˇe. Pˇrekryvn´a s´ıt’ nem´a informaci o tom, jak´e jsou priority a metriky podkladov´e s´ıtˇe a jak´ y je pouˇzit´ y smˇerovac´ı protokol. Nen´ı zn´amo jestli podkladov´a s´ıt’ vyuˇz´ıv´a distance 18
vector nebo link state smˇerov´an´ı. Nem´ame ani dostupn´e informace o tom, jak je s´ıt’ rozlehl´a a z jak´ ych technologi´ı se skl´ad´a. Mˇeˇren´e hodnoty jsou tak´e zat´ıˇzen´e, resp. ovlivnˇen´e ostatn´ım okoln´ım provozem, kter´ y s vytvoˇrenou pˇrekryvnou s´ıt´ı interferuje. Mˇeˇren´ı z´akladn´ıch metrik pouˇziteln´ ych pro smˇerov´an´ı tak m˚ uˇze prob´ıhat dvoj´ım zp˚ usobem, jedn´ım je aktivn´ı mˇeˇren´ı, kdy jsou mezi uzly pˇrekryvn´e s´ıtˇe pos´ıl´any zpr´avy, pomoc´ı kter´ ych je moˇzn´e dan´e metriky z´ıskat. V pˇr´ıpadˇe detekce zpoˇzdˇen´ı na lince je moˇzn´e pos´ılat kr´atk´e zpr´avy a mˇeˇrit ˇcas mezi odesl´an´ım a pˇr´ıjmem. Z´ıskan´ y ˇcas je ˇcasem cesty zpr´avy k c´ıli a odpovˇedi zpˇet, RTT, round trip time. S vyuˇzit´ım znalosti Christianova algoritmu pro synchronizaci ˇcasu m˚ uˇzeme odvodit dobu cesty paketu k c´ıli. Pro z´ısk´an´ı dostupn´e pˇrenosov´e rychlosti jsou vys´ıl´any delˇs´ı zpr´avy, kde se projev´ı dostupn´a pˇrenosov´a rychlost v´ıc, neˇz u kr´atk´ ych, kterou jsou zat´ıˇzen´e sp´ıˇse zpoˇzdˇen´ım. Pokud bude zpr´ava dostateˇcnˇe dlouh´a, pak bude moˇzn´e zpoˇzdˇen´ı linky zanedbat. Aktivn´ı mˇeˇren´ı parametr˚ u linky ovˇsem generuje zbyteˇcnou z´atˇeˇz s´ıtˇe a m˚ uˇze tak negativnˇe ovlivˇ novat i vlastnosti pˇrekryvn´e s´ıtˇe. V pˇr´ıpadˇe, kdy je pˇrekryvn´a s´ıt’ reprezentov´ana jako u ´pln´ y graf na vˇsech uzlech s´ıtˇe, je tˇreba kaˇzd´e sledov´an´ı 2 prov´est alespoˇ n N . Zas´ıl´an´ı zpr´av je vhodn´e prov´adˇet v obou smˇerech dvou komunikuj´ıc´ıch uzl˚ u, protoˇze je tam moˇzn´e odhalit i asynchronn´ı linky. Existuj´ı algoritmy a postupy, kdy se poˇcet mˇeˇren´ı redukuje na nutn´a mˇeˇren´ı a dalˇs´ı hodnoty jsou odvozeny pomoc´ı aproximace [44]. Vhodnˇejˇs´ım postupem neˇz aktivn´ım mˇeˇren´ım je pasivn´ı zjiˇst’ov´an´ı tˇechto vlastnost´ı z proch´azej´ıc´ıch dat. Z´akladn´ı znalost o latenci m˚ uˇzeme z´ıskat inspekc´ı ´ TCP hlaviˇcek, kter´e obsahuj´ı RTT. Udaj o rychlosti pˇrenosu je moˇzn´e zjistit z proch´azej´ıc´ıch dat a doplnˇen´ım provozn´ıch informac´ı do hlaviˇcek pˇrekryvn´e s´ıtˇe.
4.2
Dalˇ s´ı sledovateln´ e parametry
Dalˇs´ımi sledovateln´ ymi parametry ovlivˇ nuj´ıc´ımi efektivitu pˇrenosu a smˇerov´an´ı pˇres pˇrekryvn´e linky mohou b´ yt kromˇe mˇeˇren´ ych hodnot dan´ ych linek i dalˇs´ı vlastnosti komponent pˇrekryvn´e s´ıtˇe, napˇr´ıklad zat´ıˇzen´ı v´ ypoˇcetn´ıch prostˇredk˚ u jednotliv´ ych uzl˚ u, interference jednotliv´ ych linek mezi sebou, pˇr´ısluˇsnost uzl˚ uk jednotliv´ ym AS. Obr´azek 8 zn´azorˇ nuje pˇrekryvnou s´ıt’, uzly A, B, C, D, E jsou uzly pˇrekryvn´e s´ıtˇe, uzly 1, 2, 3, 4, 5 jsou uzly, pˇres kter´e komunikace proch´az´ı, ale nejsou souˇca´st´ı pˇrekryvn´e s´ıtˇe, napˇr´ıklad smˇerovaˇce. Spojen´ı mezi uzly A a E lze realizovat tˇremi r˚ uzn´ ymi cestami, jedna je oznaˇcena pln´ ymi spoji (A1B2E), druh´a pˇreruˇsovanou (A1C2E) a tˇret´ı teˇckovanou ˇca´rou (A3D45E). Z pohledu pˇrekryvn´e s´ıtˇe jsou ˇc´ısly uzly neviditeln´e. Pokud zvol´ıme prvn´ı cestu jako prim´arn´ı a dalˇs´ı dvˇe jako z´aloˇzn´ı, pak pokud dojde k v´ ypadku nebo zahlcen´ı na spoji A1 nebo 2E, pak to ovlivn´ı 19
jak prvn´ı tak druhou cestu a bude muset b´ yt pouˇzita cesta tˇret´ı. Pˇrekryvn´a s´ıt’ obecnˇe nem´a znalost podkladov´e topologie, v r´amci smˇerov´an´ı rozliˇsuje pouze vlastn´ı uzly (oznaˇcen´e p´ısmeny). Pˇrekryvn´a s´ıt’ ch´ape cesty A1B a A1C jako dvˇe r˚ uzn´e cesty AB a AC. V praxi m˚ uˇze pak doj´ıt k tomu, ˇze cesta A1B2E bude nahrazena cestou A1C2E, na kter´e se zjiˇstˇen´e parametry nebo ud´alost objev´ı tak´e a bude tˇreba pouˇz´ıt aˇz cestu A3D45E. Dalˇs´ı situace, kter´a m˚ uˇze nastat v pˇr´ıpadˇe, kdyby pˇrekryvn´a s´ıt’ poskytovala agregaci vybran´ ych linek, tak v pˇr´ıpadˇe agregace na link´ach A1B2E a A1C2E nemus´ı doj´ıt k ˇza´dn´emu zisku, protoˇze obˇe cesty vyuˇz´ıvaj´ı spoleˇcn´ ych uzl˚ u a jejich spoj˚ u, konkr´etnˇe A1 a 2E kde by rozdˇelen´a z´atˇeˇz znovu sˇc´ıtala.
Obr´azek 8: Pˇrekryvn´a s´ıt’ se spoleˇcn´ ymi linkami ˇ Casto je pˇrekryvn´a s´ıt’ tvoˇrena jak specializovan´ ymi uzly (smˇerovaˇce, servery urˇcen´e pro poskytov´an´ı sluˇzeb pˇrekryvn´e s´ıtˇe), tak bˇeˇzn´ ymi uˇzivatelsk´ ymi stanicemi (dle nastaven´ı, jak poskytuj´ı sluˇzby, tak je od jin´ ych vyuˇz´ıvaj´ı). Bˇeˇzn´ y uˇzivatelsk´ y pˇr´ıstup je v˚ uˇci sluˇzb´am pˇrev´aˇznˇe konzumn´ı, lze tedy pˇredpokl´adat, ˇze nastaven´ı tˇechto uzl˚ u bude asymetrick´e, budou v´ıce ˇcerpat a m´enˇe nab´ızet. Kvalitu sluˇzeb nab´ızen´ ych tˇemi uzly d´ale ovlivn´ı mnohem v´ıce aktu´aln´ı zat´ıˇzen´ı jejich syst´emu, dostupn´e v´ ypoˇcetn´ı prostˇredky (rychlost v´ ypoˇct˚ u, rychlost pˇred´av´an´ı zpr´av, rychlost ˇsifrov´an´ı atp.), tak dostupn´e pˇrenosov´e p´asmo, bude tˇreba uspokojit jak poˇzadavky pˇrekryvn´e s´ıtˇe, tak poˇzadavky lok´aln´ıch aplikac´ı. Specializovan´e uzly jsou tak´e ovlivˇ nov´any dan´ ymi vlastnostmi, ale v mnohem menˇs´ı m´ıˇre. Pˇri efektivn´ım smˇerov´an´ı dat v pˇrekryvn´e s´ıti je vhodn´e br´at v u ´vahu i tyto vlastnosti jednotliv´ ych uzl˚ u a zahrnout je napˇr´ıklad jako aditivn´ı sloˇzku pˇri v´ ypoˇctu cest v s´ıti.
20
5
Predikce stavu linek a s´ıtˇ e
Pokud jsme schopni mˇeˇrit a vyhodnocovat vlastnosti, stav a chov´an´ı linek v pˇrekryvn´e s´ıti, pak se nab´ız´ı ot´azka moˇznosti pˇredpov´ıdat zat´ıˇzen´ı s´ıtˇe a t´ım optimalizovat smˇerov´an´ı. Obyˇcejnˇe je zmˇena smˇerovac´ıch tabulek vyvol´ana z´asadn´ı zmˇenou na s´ıt´ı, v´ ypadkem linky, v´ ypadkem routeru, z´asadn´ı zmˇenou parametr˚ u dan´e linky nebo z´asahem administr´atora. Tento reaktivn´ı postup m˚ uˇze b´ yt ˇcasovˇe relativnˇe n´aroˇcn´ y, zvl´aˇstˇe pak ˇcas konvergence, neˇz se s´ıt’ po t´eto zmˇenˇe opˇet stabilizuje. Pokud bychom k reaktivn´ımu pˇr´ıstupu ˇr´ızen´ı s´ıt´ı pˇripojili i proaktivn´ı zmˇeny smˇerov´an´ı, pak by bylo moˇzn´e i pˇres zmˇeny v podkladov´e s´ıti, kdy napˇr´ıklad dojde k saturaci nebo zahlcen´ı nˇekter´e podkladov´e linky, kterou jsme schopni predikovat, tak pro zachov´an´ı kvality sluˇzby vˇcas pˇresmˇerovat provoz po jin´ ych link´ach, kde je dostateˇcnˇe voln´a kapacita.
5.1
ˇ Casov´ eˇ rady a predikce
S´ıt’ov´ y provoz pˇredstavuje ˇcasovou ˇradu, kter´a m´a klasick´e statistick´e vlastnosti ˇ jako stˇredn´ı hodnotu, smˇerodatnou odchylku a dalˇs´ı. Casov´ a ˇrada se skl´ad´a z jednotliv´ ych hodnot mˇeˇren´ı s konstantn´ım ˇcasov´ ym odstupem jednotliv´ ych mˇeˇren´ı. Pokud nen´ı ˇrada kompletn´ı nebo ˇcasov´e u ´daje chyb´ı, pak je tˇreba hodnoty interˇ polovat tak, aby byl odstup jednotliv´ ych mˇeˇren´ı konstantn´ı. Casov´ a ˇrada s´ıt’ov´eho provozu m˚ uˇze b´ yt tvoˇrena z r˚ uzn´ ych hodnot, kter´e n´am definuj´ı pouˇzitou metriku pˇri smˇerov´an´ı, napˇr´ıklad aktu´aln´ı pˇrenos na lince, zpoˇzdˇen´ı doruˇcen´ı zpr´av, obousmˇern´e zpoˇzdˇen´ı, spolehlivost, ztr´atovost a dalˇs´ı. Z pˇredchoz´ıch namˇeˇren´ ych hodnot je pak moˇzn´e predikovat pouze jednu n´asleduj´ıc´ı hodnotu nebo skupinu nov´ ych hodnot. ˇ Casov´ e ˇrady je moˇzn´e zkoumat s ohledem na jejich vlastnosti. Jedn´ım z dˇelen´ı ˇcasov´ ych ˇrad m˚ uˇze b´ yt, jestli je ˇcasov´a ˇrada stabiln´ı nebo nestabiln´ı. Pokud je ˇcasov´a ˇrada stabiln´ı, pak jej´ı vlastnosti nez´aleˇz´ı na ˇcase, kdy ji sledujeme (m´a konstantn´ı statistick´e vlastnosti). Oproti tomu nestabiln´ı ˇcasov´e ˇrady obsahuj´ı sloˇzky, ˇ kter´e jsou promˇenn´e v ˇcase, napˇr´ıklad trend nebo periodu. Casov´ a ˇrada je kombinac´ı trendov´e sloˇzky, sez´onn´ı sloˇzky a zbytkov´e (chybov´e sloˇzky), vztah vyjadˇruje rovnice 2. V publikac´ıch se uv´ad´ı jeˇstˇe cyklick´a sloˇzka. N´asleduj´ıc´ı obr´azky predikce jsou v´ ystupem z jazyka R [30] a dostupn´ ych knihoven pro pr´aci s ˇcasov´ ymi ˇradami. Jazyk R je urˇcen pro zpracov´an´ı statistick´ ych dat a jejich zobrazen´ı. Yt = Tt + St + et
(2)
ˇ Casov´ a ˇrada s´ıt’ov´eho provozu je klasick´ ym pˇr´ıpadem promˇenliv´e ˇcasov´e ˇrady, protoˇze zcela jistˇe vykazuje periodick´e chov´an´ı, kter´e je d´ano uˇzivateli, bˇehem 21
ˇ noci je provoz niˇzˇs´ı neˇz bˇehem dne, kdy jsou uˇzivatel´e aktivn´ı. Casov´ e ˇrady s´ıt’ov´eho provozu v dlouhodob´em mˇeˇr´ıtku vykazuj´ı jasn´ y vzr˚ ustaj´ıc´ı trend, aplikace pˇren´aˇsej´ı vˇetˇs´ı mnoˇzstv´ı dat a poˇcet uˇzivatel˚ u a aplikac´ı postupnˇe roste. Pˇr´ıkladem stabiln´ı ˇcasov´e ˇrady pak m˚ uˇze b´ yt napˇr´ıklad b´ıl´ y ˇsum, kter´ y neobsahuje ˇza´dnou periodickou ani trendovou sloˇzku a m´a statisticky konstantn´ı vlastnosti. Nestabilita ˇcasov´e ˇrady s´ıt’ov´eho provozu je pro predikci pozitivn´ı vlastnost, protoˇze z´akladn´ı predikci lze dˇelat na z´akladˇe periodick´e a trendov´e sloˇzky. Z obr´azku 9 je patrn´e rozloˇzen´ı ˇcasov´e ˇrady na sloˇzky, m˚ uˇzeme vidˇet sloˇzku trendu, sez´onn´ı (periodickou) a n´ahodnou. V praxi se pˇred predikc´ı pouˇz´ıv´a jeˇstˇe pˇredzpracov´an´ı, kdy se ˇcasov´a ˇrada uprav´ı, napˇr´ıklad se oˇreˇzou extr´emy, ˇrada se linearizuje, interpoluj´ı se chybˇej´ıc´ı hodnoty, z´ıskan´e hodnoty se vyhlad´ı (filtruj´ı), normuj´ı se na rozsah < 0; 1 > nebo < −1; 1 > a dalˇs´ı. N´aslednˇe jsou data pouˇzita pro samotnou predikci.
Obr´azek 9: Dekompozice ˇcasov´e ˇrady
22
Pro predikci ˇcasov´ ych ˇrad se dnes pouˇz´ıv´a nˇekolik z´akladn´ıch technik, metoda jednoduch´e line´arn´ı regrese, auto-regrese (AR), klouzav´eho pr˚ umˇeru (MA), kombinace pˇredchoz´ıch (ARMA, ARIMA, FARIMA), metody postaven´e na dekompozici (STL), frakt´alov´a geometrie a neuronov´e s´ıtˇe. V n´asleduj´ıc´ıch kapitol´ach budou vybran´e metody pops´any a shrnuty jejich vlastnosti. Z vlastnost´ı internetov´eho s´ıt’ov´eho provozu popsan´eho v ˇcl´anc´ıch [38][6][19][43] je s´ıt’ov´ y provoz sobˇepodobn´ y (term´ın z oblasti frakt´alov´e geometrie, kdy se jednotliv´e ˇca´sti v r˚ uzn´ ych mˇeˇr´ıc´ıch navz´ajem podobaj´ı) a neline´arn´ı. T´eto vlastnosti r˚ uzn´ ych jev˚ u je vyuˇz´ıv´ano i v ˇradˇe dalˇs´ıch vˇedn´ıch obor˚ u, elektronice, ekonomii, fyzice, chemii a dalˇs´ıch, kde je tˇreba predikovat stav jevu tˇechto vlastnost´ı. R˚ uzn´e vˇedn´ı obory k t´eto problematice pˇristupuj´ı r˚ uznˇe, resp. specializuj´ı se na r˚ uzn´e metody predikce[15]. V informaˇcn´ıch technologi´ıch pˇrevl´ad´a pouˇzit´ı neuronov´ ych s´ıt´ı, v pˇr´ırodn´ıch vˇed´ach se vyuˇz´ıv´a teorie chaosu a frakt´alov´a geometrie nebo jednoduˇsˇs´ı metody z oblasti filtrace a predikce, kde je ovˇsem znaˇcnou nev´ yhodou potˇreba hlubˇs´ı znalosti predikovan´e ˇcasov´e ˇrady, obecnˇe z´aleˇz´ı na poˇzadovan´e pˇresnosti a zvolen´em apar´atu nebo hloubce znalosti predikovan´ ych dat.
5.2
Predikce pomoc´ı model˚ u ARMA
ARMA model je kombinac´ı autoregresn´ıho (AR) modelu a klouzav´eho pr˚ umˇeru (MA). Auto-regresivn´ı model AR(p) odvozuje predikovan´e hodnoty z hodnot pˇredchoz´ıch jako jejich line´arn´ı kombinaci. V rovnici 3 je yt predikovan´a hodnota y v ˇcase t z pˇredchoz´ıch p hodnot pomoc´ı vektoru φ. Hodnota c pˇredstavuje konstantu a et symbolizuje n´ahodnou sloˇzku, kter´a m´a nulovou stˇredn´ı hodnotu a norm´aln´ı distribuci. Tyto modely se hod´ı pˇrev´aˇznˇe pro stacion´arn´ı ˇcasov´e ˇrady. Nestacion´arn´ı ˇcasov´e ˇrady lze na stacion´arn´ı pˇrev´est pomoc´ı diference ˇcasov´e ˇrady (rovnice 7). yt = c + φ1 yt−1 + φ2 yt−2 + ... + φp yt−p + et
(3)
Model klouzav´eho pr˚ umˇeru M A(q) je pak definov´an jako line´arn´ı kombinace chyb jednotliv´ ych pˇredpovˇed´ı 4. yt = c + et + Θ1 et−1 + Θ1 et−1 + ... + Θq et−q
(4)
Kombinac´ı auto-regrese a klouzav´eho pr˚ umˇeru pak z´ısk´av´ame ARM A(p, q) 5 model, kter´ y lze d´ale rozˇsiˇrovat na ARIM A(p, d, q) 6 nebo F ARIM A(p, d, q) 6 nebo jejich dalˇs´ı varianty, napˇr´ıklad s uvaˇzov´an´ım sez´onn´ı sloˇzky SARIM A(p, d, q)(P, D, Q).
23
yt = c + et +
p X
φi yt−i +
q X
Θj et−j
(5)
j=0
i=1
Pokud syst´em v dalˇs´ıch stupn´ıch diference ˇcasov´e ˇrady (rovnice 7 a 8) vykazuje stacion´arn´ı chov´an´ı, pak na tento stupeˇ n m˚ uˇzeme aplikovat ARM A(p, q) model a vznik´a t´ım ARIM A(p, d, q). To je proces, kde je d u ´roveˇ n diference, p je autoregresivn´ı stupeˇ n a q stupeˇ n pohybliv´eho pr˚ umˇeru, p a q nab´ yvaj´ı nez´aporn´ ych celoˇc´ıseln´ ych hodnot. D´ale lze odvodit proces F ARIM A(p, d, q), coˇz je proces, kter´ y je zaloˇzen na ARIMA procesu a oba lze vyj´adˇrit s pomoc´ı oper´atoru zpˇetn´eho posunut´ı B n´asleduj´ıc´ım vztahem 6. V pˇr´ıpadˇe ARIM A(p, d, q) jsou vˇsechny parametry celoˇc´ıseln´e a nez´aporn´e, pro F ARIM A(p, d, q) je parametr d re´aln´ y. φp (B)(1 − B)d Yt = Θq Bet
(6)
(1 − B)1 Yt = ∆Yt = Yt − Yt−1
(7)
∆2 Yt = ∆(Yt − Yt−1 ) = ∆Yt − ∆Yt−1 = Yt − Yt−1 − (Yt−1 − Yt−2 ) = Yt − 2Yt−1 + Yt−2
(8)
V rovnic´ıch {Yt : ..., −1, 0, 1, ...} pˇredstavuje ˇcasovou ˇradu, d pˇredstavuje diferenci ˇcasov´e ˇrady (rovnice 7 a 8), {et : ..., −1, 0, 1, ...} pˇredstavuje b´ıl´ y ˇsum s nulovou stˇredn´ı hodnotou a parametry p a q odpov´ıdaj´ı parametr˚ um AR(p) a M A(q). Pˇr´ıklad jednoduch´e predikce pomoc´ı modelu ARIM A(p, d, q) s parametry p = 10, d = 0, q = 8 je zn´azornˇen na obr´azku 10.
5.3
Predikce pomoc´ı neuronov´ ych s´ıt´ı
V informatice jsou pro predikci ˇcasov´ ych ˇrad ˇcasto pouˇz´ıv´any neuronov´e s´ıtˇe, neuronov´ ych s´ıt´ı existuje cel´a ˇrada. Neuronov´e s´ıtˇe se skl´adaj´ı z ˇrady v´ ypoˇcetn´ıch jednotek (neuron˚ u), kter´e jsou vz´ajemnˇe propojeny ohodnocen´ ymi hranami. Neurony jsou organizovan´e do vrstev, z´akladn´ı je vstupn´ı vrstva, kter´a obsahuje vstupn´ı neurony odpov´ıdaj´ıc´ı velikosti vstupu, n´asleduje nˇekolik skryt´ ych vrstev a pot´e v´ ystupn´ı vrstva opˇet odpov´ıdaj´ıc´ı velikosti v´ ystupu. Jednotliv´e druhy
24
Obr´azek 10: Predikce pomoc´ı ARIMA(10,0,8)
neuronov´ ych s´ıt´ı se pak liˇs´ı poˇctem organizac´ı tˇechto vrstev (se zpˇetnou propagac´ı obsahuj´ı zpˇetn´e vazby). Z´akladn´ı organizace neuronov´ ych s´ıt´ı je zn´azornˇena na obr´azku 11. Neuronov´a s´ıt’ je schopna postupn´ ym uˇcen´ım na tr´enovac´ım vzorku pˇrizp˚ usobit ohodnocen´ı jednotliv´ ych hran, ˇc´ımˇz se adaptuje na funkci, kter´a je ukryta v datech a kter´a tyto data charakterizuje. V´ yhodou vyuˇzit´ı neuronov´ ych s´ıt´ı je pr´avˇe jej´ı schopnost samo uˇcen´ı z namˇeˇren´ ych dat, kdy nepotˇrebujeme zn´at pˇresn´e parametry a charakteristiky provozu. Neuronov´e s´ıtˇe dok´aˇz´ı d´ıky natr´enovan´ ym dat˚ um z minulosti predikovat budoucnost na z´akladˇe odhalen´ı“ vnitˇrn´ı funkce ” charakterizuj´ıc´ı vztah mezi aktu´aln´ımi hodnotami a jejich projevem v budoucnosti. Spr´avnˇe natr´enovan´a neuronov´a s´ıt’ je schopna reagovat i na data mimo cviˇcnou mnoˇzinu, proti tomu ˇspatnˇe natr´enovan´a s´ıt’ m˚ uˇze b´ yt schopna spr´avnˇe zpracov´avat pouze tr´enovac´ı vzorky. Z´aleˇz´ı tedy i na kvalitˇe dat pro tr´enov´an´ı neuronov´e s´ıtˇe a n´asledn´e ovˇeˇren´ı jej´ıch kvalit. Neuronov´ ych s´ıt´ı existuje cel´a ˇrada, jednotliv´e s´ıtˇe se od sebe liˇs´ı svoj´ı topologi´ı, zp˚ usobem uˇcen´ı, zprostˇredkov´an´ım zpˇetn´e vazby, doˇcasnou pamˇet´ı a podobnˇe. Ne vˇsechny modely neuronov´ ych s´ıt´ı maj´ı stejnou schopnost ˇreˇsit r˚ uzn´e probl´emy. Neuronov´e s´ıtˇe vyuˇziteln´e k rozpozn´av´an´ı vzor˚ u v obrazech nemaj´ı stejnou schopnost predikce ˇcasov´ ych ˇrad. Kromˇe schopnosti pˇresn´e predikce jsou neuronov´e s´ıtˇe hodnoceny dalˇs´ımi parametry jako napˇr´ıklad rychlost uˇcen´ı, schopnost zlepˇsit pre25
Obr´azek 11: V´ıcevrstv´a neuronov´a s´ıt’
dikci vhodnou u ´pravou a podobnˇe. Pro predikci sobˇepodobn´eho s´ıt’ov´eho provozu lze pouˇz´ıt nˇekterou z n´asleduj´ıc´ıch neuronov´ ych s´ıt´ı, v´ıcevrstv´a perceptronnov´a ’ ’ ’ s´ıt , Elmanova s´ıt [14][41], NARX s´ıt , LTSM s´ıt’, obecn´a rekurentn´ı s´ıt’ a dalˇs´ı. Pro pˇr´ıklad pouˇzit´ı neuronov´ ych s´ıt´ı je vybr´ana Elmanova rekurentn´ı neuronov´a s´ıt’. Elmanova s´ıt’ obsahuje dvˇe vrstvy s algoritmem uˇcen´ı pomoc´ı zpˇetn´e propagace. Skryt´a vrstva m´a zpˇetnou vazbu skrz stavovou vrstvu na vstupn´ı vrstvu. V kaˇzd´em ˇcasov´em okamˇziku je moˇzn´e v´ ystup ze skryt´e vrstvy pouˇz´ıt jako vstup do stavov´e vrstvy a ta je v dalˇs´ım kroku pouˇzita jako souˇc´ast vstupu do cel´e s´ıtˇe. Struktura Elmanovi s´ıtˇe je zobrazena na obr´azku 12. Mnoˇzstv´ı neuron˚ u ve vnitˇrn´ı i stavov´e vrstvˇe je shodn´e, v´ahy spoj˚ u mezi nimi maj´ı hodnotu 1. V´ yhodou neuronov´ ych s´ıt´ı je jejich schopnost generalizace, odhad sloˇzit´ ych jev˚ u a samo korekce. Urˇcitou nev´ yhodou, zvl´aˇstˇe s orientac´ı na koncov´a zaˇr´ızen´ı, jsou relativnˇe vysok´e poˇzadavky na v´ ypoˇcetn´ı v´ ykon a pamˇet’ov´ y prostor pˇri tr´enov´an´ı s´ıtˇe. Po nastaven´ı vah neuron˚ u v s´ıti je n´asledn´e vyuˇzit´ı relativnˇe nen´aroˇcn´e. S´ıt’ je moˇzn´e tr´enovat i pr˚ ubˇeˇznˇe pomoc´ı korekce s nov´ ymi daty. Na obr´azku 13 je zn´azornˇena predikce ˇcasov´e ˇrady, kter´a je stejn´a jako na obr´azku 10, ovˇsem predikovan´a pomoc´ı jednoduch´e dopˇredn´e neuronov´e s´ıtˇe s vyuˇzit´ım funkce nnetar z bal´ıku f orecast jazyka R. Funkce nnetar implementuje jednoduchou dopˇrednou neuronovou s´ıt’ s jednou skrytou vrstvou. Pouˇzit´a neuronov´a s´ıt’ m´a 4 vstupn´ı neurony, 2 skryt´e a 1 v´ ystupn´ı, predikuje tedy pouze jednu hodnotu. Predikce dalˇs´ıch hodnot je zaˇr´ızena rekurzivn´ım vol´an´ım s pouˇzit´ım predikovan´ ych hodnot.
26
Obr´azek 12: Elmanova neuronov´a s´ıt’
Obr´azek 13: Predikce pomoc´ı NNAR(3,1,2)
27
5.4
Predikce s vyuˇ zit´ım teorie chaosu
S v´ yvojem teorie chaosu se zkoumaj´ı i moˇznosti predikce pomoc´ı t´eto teorie. Metody teorie chaosu na predikci s´ıt’ov´eho provozu jsou aktu´alnˇe zkouman´e t´ema podle publikac´ı [20], [15], [26], [40], [9]. S´ıt’ov´ y provoz lze predikovat pomoc´ı teorie chaosu s vyuˇzit´ım Ljapunovova exponentu. Pomoc´ı teorie chaosu lze obecnˇe predikovat chov´an´ı neline´arn´ıch syst´em˚ u, kter´e maj´ı nˇejak´ y skryt´ y ˇr´ad, avˇsak tento ˇra´d nen´ı na prvn´ı pohled viditeln´ y a jev´ı se jako n´ahodn´ y syst´em. Chaotick´e ˇcasov´e ˇrady je moˇzn´e zn´azornit pomoc´ı D dimenzion´aln´ıho abstraktn´ıho prostoru stav˚ u zvan´eho f´azov´ y prostor 9. V nˇem kaˇzd´a osa pˇredstavuje jednu dimenzi stav˚ u a ˇcas je zde implicitn´ı, vol´ıme ovˇsem zpoˇzdˇen´ı T jako v pˇredchoz´ıch pˇr´ıpadech, kter´e ud´av´a z kolika pˇredchoz´ıch hodnot poˇc´ıt´ame pˇredpovˇed’. Po urˇcit´em ˇcase vyv´ıjen´ı syst´emu vznikne ve f´azov´em prostoru kˇrivka, tato kˇrivka po dostateˇcnˇe dlouh´e dobˇe zaˇcne zv´ yrazˇ novat strukturu, kter´e se ˇr´ık´a atraktor[5]. Atraktor pˇredstavuje koneˇcn´ y stav sledovan´eho syst´emu, obyˇcejnˇe b´ yv´a frakt´alem.
Y (I), I ∈ [1[N − (D − 1)T ]] : Y (1) = [x(1), x(1 + T ), ..., x(1 + (D − 1)T )] Y (2) = [x(2), x(2 + T ), ..., x(2 + (D − 1)T )] Y (3) = [x(3), x(3 + T ), ..., x(3 + (D − 1)T )] ... Y (I) = [x(I), x(I + T ), ..., x(I + (D − 1)T )]
(9)
Chaotick´e atraktory maj´ı velkou citlivost na vstupn´ı podm´ınky. Chaotick´e syst´emy charakterizuje Ljapun˚ uv exponent, kter´ y urˇcuje stupeˇ n chaotiˇcnosti dan´eho syst´emu. Ljapun˚ uv exponent vyjadˇruje, zda bl´ızk´e dr´ahy konverguj´ı nebo diverguj´ı. Pro kaˇzdou dimenzi syst´emu existuje pr´avˇe jeden Ljapun˚ uv exponent. Pro charakteristiku syst´emu je nejd˚ uleˇzitˇejˇs´ı ten nejvˇetˇs´ı, ovlivˇ nuje dlouhodob´e chov´an´ı syst´emu. Jestliˇze je Ljapun˚ uv exponent z´aporn´ y, dr´ahy v ˇcase konverguj´ı, takov´ y dynamick´ y syst´em nen´ı citliv´ y v˚ uˇci poˇca´teˇcn´ım podm´ınk´am. V pˇr´ıpadˇe, ˇze je dan´ y exponent kladn´ y, pak dr´ahy atraktoru mezi sebou diverguj´ı a dan´ y syst´em je citliv´ y na poˇca´teˇcn´ı podm´ınky. U chaotick´eho syst´emu se mus´ı alespoˇ n v jednom pˇr´ıpadˇe trajektorie drah atraktoru exponenci´alnˇe vzdalovat (mus´ı divergovat), tedy mus´ı m´ıt alespoˇ n jeden Ljapun˚ uv exponent kladn´ y. Jeden zp˚ usob jak hodnotu exponentu z´ıskat, je zvolit si nˇekolik bl´ızk´ ych bod˚ u, kter´e nech´ame v ˇcase rozv´ıjet a pˇritom sledujeme rychlost r˚ ustu jejich vz´ajemn´e vzd´alenosti. Tento postup se naz´ yv´a Wolf˚ uv algoritmus. 28
Pomoc´ı Ljapunovova exponentu lze urˇcit horizont predikce, tedy maximum budouc´ıch bod˚ u, kter´e je moˇzn´e predikovat. Tento horizont lze vypoˇc´ıtat pomoc´ı rovnice 10. Tmax =
1 λmax
ln
∆ δ0
(10)
Kde λmax je nejvˇetˇs´ı Ljapun˚ uv exponent, ∆ je poˇzadovan´a maxim´aln´ı chyba a δ0 je neurˇcitost v mˇeˇren´ı poˇca´teˇcn´ıch podm´ınek. Ze vztahu je patrn´e, ˇze ide´aln´ı hodnota λmax je bl´ızk´a nule, z´ısk´ame delˇs´ı horizont predikce. Z prac´ı zkoumaj´ıc´ıch vlastnosti s´ıt’ov´eho provozu ovˇsem plyne, ˇze Ljapun˚ uv exponent je v praxi relativnˇe vysok´ y a tak je moˇzn´e predikovat pouze bl´ızkou budoucnost. Nev´ yhodou predikce pomoc´ı teorie chaosu s vyuˇzit´ım Ljapunova exponentu m˚ uˇze b´ yt n´aroˇcn´ y v´ ypoˇcet Ljapunova exponentu a jiˇz zm´ınˇen´a citlivost na poˇc´ateˇcn´ı podm´ınky. Jako pˇr´ıklad lze uv´est algoritmus prezentuj´ıc pouˇzit´ı tohoto postupu a Ljapunova exponentu [49]. Nejprve zvol´ıme ˇcasovou ˇradu jako pˇredpis 11 a dvoudimenzion´aln´ı stavov´ y prostor.
x(0) = 0.36 x(t + 1) = 4 ∗ x(t) ∗ (1 − x(t))
(11)
Pouˇzit´a ˇcasov´a ˇrada je zn´azornˇena na obr´azku 14 a ve stavov´em prostoru pak 15.
ˇ Obr´azek 14: Casov´ a ˇrada dle definice 11
29
ˇ Obr´azek 15: Casov´ a ˇrada 11 ve 2D prostoru podle 9
Novou predikovanou hodnotu pak hled´ame pomoc´ı existuj´ıc´ıch kˇrivek a nejkratˇs´ıch vzd´alenost´ı. Zn´ame pozici posledn´ıho bodu f´azov´eho prostoru a hled´ame nejbliˇzˇs´ı bod na dalˇs´ıch kˇrivk´ach v okol´ı, z´ısk´ame vzd´alenost D0 . N´aslednˇe, na z´akladˇe spoˇc´ıtan´eho Ljapunova exponentu, odhadneme vzd´alenost D1 tˇechto dvou kˇrivek v dalˇs´ım kroku. A v dan´e vzd´alenosti od dalˇs´ıho bodu na nalezen´e bl´ızk´e kˇrivce najdeme nov´ y bod ˇcasov´e ˇrady ve f´azov´em prostoru. Zpˇetn´ ym pˇrevodem souˇradnice z f´azov´eho prostoru z´ısk´ame novou hodnotu x(t+1). Postup lze zpˇresˇ novat porovn´an´ım v´ ysledk˚ u s vyuˇzit´ım jin´eho, vyˇsˇs´ıho poˇctu, dimenz´ı.
5.5
Dalˇ s´ı metody predikce
V souˇcasn´em vˇedeck´em zkoum´an´ı a publikac´ıch se nejˇcastˇeji objevuj´ı metody predikce zaloˇzen´e na optimalizaci souˇcasn´ ych a popsan´ ych metod nebo na kombinaci nˇekolika dostupn´ ych metod vedouc´ı k zpˇresnˇen´ı predikce. V publikac´ıch je ˇreˇsena predikce napˇr´ıklad pomoc´ı skryt´ ych Markovsk´ ych model˚ u, kter´e pouˇz´ıv´a k predikci napˇr´ıklad pr´ace [32]. Pˇr´ıkladem hybridn´ıch metod m˚ uˇze b´ yt napˇr´ıklad spojen´ı line´arn´ı ortogon´aln´ı kovariance a neuronov´e s´ıtˇe [45]. Pouˇziteln´ y pro potˇreby predikce pro smˇerov´an´ı v pˇrekryvn´ ych s´ıt´ıch by mohl b´ yt i nˇekter´ y z rozˇs´ıˇren´ ych Kalmanov´ ych filtr˚ u [31], kter´e jsou aplikovateln´e i na neline´arn´ı syst´emy. 30
6
Teze disertaˇ cn´ı pr´ ace
Pˇredmˇetem aktu´aln´ıho zkoum´an´ı je dynamick´e smˇerov´an´ı v pˇrekryvn´ ych s´ıt´ıch s vyuˇzit´ım predikce. V dosavadn´ıch prac´ıch jsem se zamˇeˇroval na dynamick´e smˇerov´an´ı v distribuovan´em souborov´em syst´emu (DFS). Po p˚ uvodn´ım zaveden´ı smˇerov´an´ı v r´amci distribuovan´eho souborov´eho syst´emu[33] jsem navrhl rozˇs´ıˇren´ y algoritmus smˇerov´an´ı na z´akladˇe typu zpr´av a jejich klasifikaci do skupin podle poˇzadavk˚ u na pˇrenos. Tento algoritmus byl publikov´an jako teze [34] a n´aslednˇe prakticky ovˇeˇren. Realizovan´ y algoritmus m´a pozitivn´ı dopad na ˇcas doruˇcen´ı jednotliv´ ych zpr´av a tak´e na celkovou odezvou DFS. V´ ysledky byly publikov´any na konferenci[35]. Nejen v distribuovan´em souborov´em syst´emu lze rozliˇsovat nˇekolik skupin zpr´av, jejich poˇzadavk˚ u na pˇrenos a dostupn´ ych komunikaˇcn´ıch kan´al˚ u. Rozhodl jsem se proto ˇreˇsenou oblast zobecnit a aplikovat na ˇsirˇs´ı skupinu probl´em˚ u. Pro aplikaci dalˇs´ıho zkoum´an´ı jsem zvolil pˇrekryvn´e s´ıtˇe, kde hled´am vhodnou aplikaci zn´am´ ych princip˚ u v kombinaci s vyuˇzit´ım predikce. Predikce v tomto n´avrhu umoˇzn ˇuje proaktivnˇe dynamicky mˇenit smˇerov´an´ı, at’ uˇz na z´akladˇe vlastnost´ı aktu´aln´ıch nebo predikovan´ ych parametr˚ u (vlastnosti linek, zat´ıˇzen´ı distribuovan´e aplikace). Oblast´ı, na kterou se aktu´alnˇe zamˇeˇruji, je vyuˇzit´ı r˚ uzn´ ych algoritm˚ u a postup˚ u predikce stavu linek a predikce poˇzadavk˚ u na distribuovanou aplikaci pˇri v´ ypoˇctu smˇerovac´ıch tabulek. Algoritmy smˇerov´an´ı pl´anuji implementovat a porovnat podle jejich efektivity, vyuˇzit´ı zdroj˚ u a pouˇzitelnosti pˇri efektivn´ım smˇerov´an´ı v pˇrekryvn´ ych s´ıt´ıch. D´ale bude zkoum´an vliv pˇresnosti predikce na v´ ysledn´e smˇerov´an´ı (faleˇsn´e zmˇeny ve smˇerov´an´ı vlivem lok´aln´ıch extr´em˚ u). Zmˇena smˇeru datov´eho toku nen´ı zcela trivi´aln´ı a pˇrin´aˇs´ı nutnou reˇzii pro vytvoˇren´ı a pˇrepnut´ı pˇrenosov´ ych tras, c´ılem tedy bude i nalezen´ı takov´e kombinace algoritm˚ u a postup˚ u, kter´e budou tuto reˇzii minimalizovat. Aktu´aln´ı publikace se pˇrev´aˇznˇe vˇenuj´ı pˇresnosti predikce, nebo efektivn´ımu smˇerov´an´ı na z´akladˇe predikce v mobiln´ıch nebo optick´ ych s´ıt´ıch a internetu[29][23][27][42][3][48][28]. Mobiln´ı s´ıtˇe jsou pˇrekryvn´ ym s´ıt´ım podobn´e, ˇcasto zde vznikaj´ı a zanikaj´ı spojen´ı, uzly se v s´ıti volnˇe stˇehuj´ı, doch´az´ı k ˇcast´ ym zmˇen´am topologie odchodem nebo pˇr´ıchodem uzl˚ u atp. Optick´e s´ıtˇe jsou oproti tomu relativnˇe stabiln´ı a predikce je vyuˇzita pˇredevˇs´ım pˇri pˇrep´ın´an´ı a alokaci pˇrenosov´ ych kan´al˚ u (Automatically Switched Optical Networks a Generalized Multiprotocol Label Switching). V disertaˇcn´ı pr´aci budou navrˇzeny takov´e algoritmy, kter´e budou efektivnˇe vyuˇz´ıvat dostupn´e v´ ypoˇcetn´ı prostˇredky s ohledem na pˇresnost predikce a n´asledn´e smˇerov´an´ı na jej´ım z´akladˇe. Navrˇzen´e algoritmy budou ovˇeˇreny na vybran´e distribuovan´e aplikaci. Pˇredpokl´adanou aplikac´ı je distribuovan´ y souborov´ y syst´em, kter´ y byl vyv´ıjen v pˇredchoz´ıch prac´ıch. 31
7
Z´ avˇ er
V odborn´e pr´aci ke st´atn´ı doktorsk´e zkouˇsce byly pops´any oblasti, kde se aktu´alnˇe pˇrekryvn´e s´ıtˇe nejv´ıce uplatˇ nuj´ı. Tˇemito oblastmi jsou pˇredevˇs´ım P2P s´ıtˇe, s´ıtˇe poskytuj´ıc´ı komunikaˇcn´ı infrastrukturu s´ıtˇe pro zajiˇstˇen´ı anonymn´ı komunikace (TOR), s´ıtˇe poskytuj´ıc´ı efektivn´ı doruˇcov´an´ı dat (CDN, CAN), s´ıtˇe poskytuj´ıc´ı ˇr´ızen´ı kvality pˇrenosu (VoIP, IPTV), s´ıtˇe pro podporu skupinov´eho vys´ıl´an´ı (MBone) nebo prostˇredky pro implementaci nov´ ych protokol˚ u a technologi´ı (6BONE). N´aslednˇe byly pops´any motivace a metody smˇerov´an´ı pouˇzit´e v r˚ uzn´ ych druz´ıch pˇrekryvn´ ych s´ıt´ı. Kaˇzd´a s´ıt’ m´a pro smˇerov´an´ı r˚ uznou motivaci. Peer to peer s´ıtˇe vyuˇz´ıvaj´ı smˇerov´an´ı pˇredevˇs´ım k efektivn´ımu nalezen´ı zdroje v distribuovan´em prostˇred´ı s co nejniˇzˇs´ı sloˇzitost´ı vyhled´av´an´ı, poˇctu skok˚ u v prostoru. Anonymizaˇcn´ı s´ıtˇe sleduj´ı smˇerovac´ımi strategiemi pˇredevˇs´ım zaruˇcen´ı anonymity a zabezpeˇcen´ı pˇren´aˇsen´eho obsahu. S´ıtˇe pro doruˇcov´an´ı obsahu nebo nab´ızej´ıc´ı sluˇzby garance kvality sluˇzeb, kde se pˇredevˇs´ım jedn´a o splnˇen´ı nˇekter´eho z v´ ykonnostn´ıch parametr˚ u, sleduj´ı smˇerovac´ımi strategiemi pˇredevˇs´ım splnˇen´ı tˇechto poˇzadavk˚ u. Vyhled´avaj´ı a buduj´ı spojen´ı, kter´a zajist´ı co nejrychlejˇs´ı doruˇcen´ı dat do c´ıle nebo naopak i pˇres niˇzˇs´ı pˇrenosovou kapacitu vyhled´avaj´ı spoje podle co nejniˇzˇs´ı zpoˇzdˇen´ı. Dalˇs´ım sledovan´ ym parametrem, kter´ y je pro smˇerov´an´ı kl´ıˇcov´ y, je napˇr´ıklad stabilita linky a jej´ı spolehlivost nebo pˇredpokl´adan´a z´atˇeˇz pˇrekryvn´e s´ıtˇe. Efektivn´ı a pruˇzn´a reakce je v dalˇs´ıch kapitol´ach pr´ace podpoˇrena predikc´ı vlastnost´ı jednotliv´ ych linek a moˇznost´ı proaktivnˇe mˇenit smˇerovac´ı tabulky a nastaven´ı linek, aby byly splnˇeny poˇzadavky na danou pˇrekryvnou s´ıt’. V kapitole, kter´a popisovala aktu´aln´ı metody predikce s´ıt’ov´eho provozu, byly pops´any nejˇcastˇeji pouˇz´ıvan´e algoritmy, kter´e se v r˚ uzn´ ych vˇedn´ıch oborech pouˇz´ıvaj´ı pro predikci sobˇepodobn´ ych syst´em˚ u. Na tuto kapitolu bylo nav´az´ano smˇerem dalˇs´ıho v´ yzkumu a c´ıli disertaˇcn´ı pr´ace, kde popisuji dalˇs´ı moˇznosti v´ yvoje a optimalizace existuj´ıc´ıch postup˚ u. Zv´ yˇsen´ı efektivity v pˇr´ıpadˇe vyuˇzit´ı predikce pro smˇerov´an´ı v pˇrekryvn´ ych s´ıt´ıch a zajiˇstˇen´ı odpov´ıdaj´ıc´ı kvality sluˇzeb hodl´am zkoumat pˇredevˇs´ım s ohledem na vyuˇzit´ı v´ ypoˇcetn´ıch zdroj˚ u a vliv n´aroˇcnosti u ´lohy a vlivu jej´ı pˇresnosti na v´ ysledn´e smˇerov´an´ı.
32
Reference [1] David Andersen, Hari Balakrishnan, Frans Kaashoek, and Robert Morris. Resilient overlay networks. SIGOPS Oper. Syst. Rev., 35(5):131–145, October 2001. [2] Cesnet.cz. Cesnet — prostˇred´ı pro v´ yvoj a testov´an´ı (planetlab), 2015. [3] J. K. Chiang and Y. H. Lin. A simulation and prediction model for internet traffic and qos based on 1-step markov-chain. In Computer Modelling and Simulation (UKSim), 2014 UKSim-AMSS 16th International Conference on, pages 468–473, March 2014. [4] Ian Clarke, Oskar Sandberg, Brandon Wiley, and Theodore W Hong. Freenet: A distributed anonymous information storage and retrieval system. In Designing Privacy Enhancing Technologies, pages 46–66. Springer, 2001. ˇ [5] Vlastimil Clupek. Neline´arn´ı anal´yza a predikce s´ıt’ov´eho provozu. PhD thesis, Vysok´e uˇcen´ı technick´e v Brnˇe. Fakulta elektrotechniky a komunikaˇcn´ıch technologi´ı, 2012. [6] M.E. Crovella and A. Bestavros. Self-similarity in world wide web traffic: evidence and possible causes. Networking, IEEE/ACM Transactions on, 5(6):835–846, Dec 1997. [7] Roger Dingledine, Nick Mathewson, and Paul Syverson. Tor: The secondgeneration onion router. Technical report, DTIC Document, 2004. [8] Hans Eriksson. Mbone: The multicast backbone. Commun. ACM, 37(8):54– 60, August 1994. [9] Ashok Erramilli, Matthew Roughan, Darryl Veitch, and Walter Willinger. Self-similar traffic and network dynamics. Proceedings of the IEEE, 90(5):800–819, 2002. [10] Michael J Freedman. Experiences with coralcdn: A five-year operational view. In NSDI, pages 95–110, 2010. [11] Yang Han, K. Koyanagi, T. Tsuchiya, T. Miyosawa, and H. Hirose. A trustbased routing strategy in structured p2p overlay networks. In Information Networking (ICOIN), 2013 International Conference on, pages 77–82, Jan 2013. [12] YT Hou, Z Duan, and Z Zhang. Service overlay networks: Sla, qos and bandwidth provisioning. In Proc. IEEE ICNP, volume 2, 2002.
33
[13] Ma Hui and Yange Chen. Research on p2p routing model based on clustering and position of nodes. In Computer Science and Automation Engineering (CSAE), 2011 IEEE International Conference on, volume 2, pages 307–311, June 2011. [14] Wang Junsong, Wang Jiukun, Zeng Maohua, and Wang Junjie. Prediction of internet traffic based on elman neural network. In Control and Decision Conference, 2009. CCDC ’09. Chinese, pages 1248–1252, June 2009. ´ ˇ [15] Jan KACALEK and Ivan M´ICA. Neline´arn´ı anal´ yza a predikce s´ıt’ov´eho provozu. VUT v Brnˇe, Elektrorevue, 2009. [16] Ryoichi Kawahara, Shigeaki Harada, Noriaki Kamiyama, Tatsuya Mori, Haruhisa Hasegawa, and Akihiro Nakao. Traffic engineering using overlay network. In Communications (ICC), 2011 IEEE International Conference on, pages 1–6. IEEE, 2011. [17] Keith Kirkpatrick. Software-defined networking. Commun. ACM, 56(9):16– 19, September 2013. [18] John Kubiatowicz, David Bindel, Yan Chen, Steven Czerwinski, Patrick Eaton, Dennis Geels, Ramakrishan Gummadi, Sean Rhea, Hakim Weatherspoon, Westley Weimer, et al. Oceanstore: An architecture for global-scale persistent storage. ACM Sigplan Notices, 35(11):190–201, 2000. [19] Will E. Leland, Murad S. Taqqu, Walter Willinger, and Daniel V. Wilson. On the self-similar nature of ethernet traffic (extended version). IEEE/ACM Trans. Netw., 2(1):1–15, February 1994. [20] Dou Li, Binghui Ji, and Haige Xiang. The on-line prediction of self-similar traffic based on chaos theory. In 2006 International Conference on Wireless Communications, Networking and Mobile Computing, pages 1–4, 2006. [21] Michael R Macedonia and Donald P Brutzman. Mbone provides audio and video across the internet. Computer, 27(4):30–36, 1994. [22] Yun Mao, Bj¨orn Knutsson, Honghui Lu, and Jonathan M Smith. Dharma: Distributed home agent for robust mobile access. In INFOCOM 2005. 24th Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings IEEE, volume 2, pages 1196–1206. IEEE, 2005. [23] P. Millan, C. Molina, E. Medina, D. Vega, R. Meseguer, B. Braem, and C. Blondia. Tracking and predicting link quality in wireless community networks. In 2014 IEEE 10th International Conference on Wireless and Mobile Computing, Networking and Communications (WiMob), pages 239– 244, Oct 2014. 34
[24] Larry Peterson, Andy Bavier, Marc E. Fiuczynski, and Steve Muir. Experiences building planetlab. In Proceedings of the 7th Symposium on Operating Systems Design and Implementation, OSDI ’06, pages 351–366, Berkeley, CA, USA, 2006. USENIX Association. [25] Larry Peterson and Timothy Roscoe. The design principles of planetlab. ACM SIGOPS operating systems review, 40(1):11–16, 2006. [26] Vitaly Petroff. Self-similar network traffic: From chaos and fractals to forecasting and. [27] L. Pradittasnee. Predicting path quality with cross-layer information in multi-hop wireless networks. In 2015 7th International Conference on Information Technology and Electrical Engineering (ICITEE), pages 464–469, Oct 2015. [28] B. Puype, E. Mar´ın-Tordera, D. Colle, S. S´anchez-L´opez, M. Pickavet, X. Masip-Bruin, and P. Demeester. Prediction-based routing as rwa in multilayer traffic engineering. Photonic Network Communications, 23(2):172–182, 2012. cited By 0. [29] W. Ramirez, X. Masip-Bruin, E. Mar´ın-Tordera, M. Yannuzzi, A. Martinez, S. S´anchez-L´opez, and V. L´opez. An hybrid prediction-based routing approach for reducing routing inaccuracy in optical transport networks. In Networks and Optical Communications - (NOC), 2014 19th European Conference on, pages 147–152, June 2014. [30] Robert Gentleman Ross Ihaka. R: A language for data analysis and graphics. Journal of Computational and Graphical Statistics, 5(3):299–314, 1996. [31] Dominik Sierociuk and Andrzej Dzielinski. Fractional kalman filter algorithm for the states, parameters and order of fractional system estimation. International Journal of Applied Mathematics and Computer Science, 16(1):129, 2006. [32] R Sivakumar, E Ashok Kumar, and G Sivaradje. Prediction of traffic load in wireless network using time series model. In Process Automation, Control and Computing (PACC), 2011 International Conference on, pages 1–6. IEEE, 2011. [33] Jindˇrich Skupa. Kivfs - synchronizace a trasov´an´ı poˇzadavk˚ u. Master’s thesis, Z´apadoˇcesk´a univerzita v Plzni, Z´apadoˇcesk´a univerzita v Plzni. Fakulta aplikovan´ ych vˇed. Katedra informatiky a v´ ypoˇcetn´ı techniky, 2012. [34] Jindˇrich Skupa. Optimalizace synchronizaˇcn´ı komunikace v dfs. In PAD Sborn´ık pˇr´ıspˇevk˚ u PAD 2014, pages 117–122. TU Liberec, 2014. 35
ˇ r´ık. Dynamic internal message [35] Jindˇrich Skupa, Luboˇs Matˇejka, and Jiˇr´ı Safaˇ routing in distributed file system. In Scientific Conference on Informatics, 2015 IEEE 13th International, pages 236–240, Nov 2015. [36] Neil Spring, Larry Peterson, Andy Bavier, and Vivek Pai. Using planetlab for network research: myths, realities, and best practices. ACM SIGOPS Operating Systems Review, 40(1):17–24, 2006. [37] P. Syverson. Onion routing for resistance to traffic analysis. In DARPA Information Survivability Conference and Exposition, 2003. Proceedings, volume 2, pages 108–110 vol.2, April 2003. [38] G. Terdik and T. Gyires. Does the internet still demonstrate fractal nature? In Networks, 2009. ICN ’09. Eighth International Conference on, pages 30– 34, March 2009. [39] Jelle van den Hooff, David Lazar, Matei Zaharia, and Nickolai Zeldovich. Vuvuzela: Scalable private messaging resistant to traffic analysis. In Proceedings of the 25th Symposium on Operating Systems Principles, SOSP ’15, pages 137–152, New York, NY, USA, 2015. ACM. [40] Andras Veres and Miklos Boda. The chaotic nature of tcp congestion control. In INFOCOM 2000. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings. IEEE, volume 3, pages 1715–1723. IEEE, 2000. [41] Xuqi Wang, Chuanlei Zhang, and Shanwen Zhang. Modified elman neural network and its application to network traffic prediction. In Cloud Computing and Intelligent Systems (CCIS), 2012 IEEE 2nd International Conference on, volume 02, pages 629–633, Oct 2012. [42] Y. Wei and J. Wang. A delay/disruption tolerant routing algorithm based on traffic prediction. In The 27th Chinese Control and Decision Conference (2015 CCDC), pages 3253–3258, May 2015. [43] W. Willinger. Self-similarity in wide-area network traffic. In Lasers and Electro-Optics Society Annual Meeting, 1997. LEOS ’97 10th Annual Meeting. Conference Proceedings., IEEE, volume 2, pages 462–463 vol.2, Nov 1997. [44] Shun-an Wu, Qiao Yan, Xue-song Qiu, and Yanjie Ren. A probe prediction approach to overlay network monitoring. In Proceedings of the 7th International Conference on Network and Services Management, pages 465–469. International Federation for Information Processing, 2011.
36
[45] Lin Xiang, Xiao-Hu Ge, Chuang Liu, Lei Shu, and Cheng-Xiang Wang. A new hybrid network traffic prediction method. In Global Telecommunications Conference (GLOBECOM 2010), 2010 IEEE, pages 1–5. IEEE, 2010. [46] Xipeng Xiao, A. Hannan, B. Bailey, and L.M. Ni. Traffic engineering with mpls in the internet. Network, IEEE, 14(2):28–33, Mar 2000. [47] Zhiyong Xu, Rui Min, and Yiming Hu. Hieras: a dht based hierarchical p2p routing algorithm. In Parallel Processing, 2003. Proceedings. 2003 International Conference on, pages 187–194, Oct 2003. [48] Zhi yuan LI, Ru chuan WANG, Zhi jie HAN, Jun lei BI, and Chong HAN. Traffic prediction-based routing algorithm over structured p2p networks. The Journal of China Universities of Posts and Telecommunications, 18, Supplement 1:23 – 27, 2011. [49] Jun Zhang, KC Lam, WJ Yan, Hang Gao, and Yuan Li. Time series prediction using lyapunov exponents in embedding phase space. Computers & Electrical Engineering, 30(1):1–15, 2004.
37