• Nem Talált Eredményt

Doktoriértekezés Biztonságicélúátfed ő hálózat

N/A
N/A
Protected

Academic year: 2023

Ossza meg "Doktoriértekezés Biztonságicélúátfed ő hálózat"

Copied!
101
0
0

Teljes szövegt

(1)

Budapesti M ű szaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar

Biztonsági célú átfed ő hálózat

Doktori értekezés

Szerz ő : Czirkos Zoltán

okleveles villamosmérnök Témavezet ő : Dr. Hosszú Gábor

egyetemi docens

m ű szaki tudomány kandidátusa

Elektronikus Eszközök Tanszéke

Budapest, 2011.

(2)

Nyilatkozat önálló munkáról, hivatkozások átvételér ő l

Alulírott Czirkos Zoltán kijelentem, hogy ezt a doktori értekezést magam készítettem és abban csak a megadott forrásokat használtam fel. Minden olyan részt, amelyet szó szerint, vagy azonos tartalomban, de átfogalmazva más forrásból átvettem, egyértelműen, a forrás megadásával megjelöltem.

Budapest, 2011. október 20.

(3)

Nyilatkozat nyilvánosságra hozatalról

Alulírott Czirkos Zoltán hozzájárulok a doktori értekezésem Interneten történőnyilvánosságra hozatalához az alábbi formában:

– korlátozás nélkül

– elérhetőség csak magyarországi címről

– elérhetőség a fokozat odaítélését követően 2 év múlva, korlátozás nélkül

– elérhetőség a fokozat odaítélését követően 2 év múlva, csak magyarországi címről

Budapest, 2011. október 20.

(4)

Tartalomjegyzék

1. Bevezetés 3

2. Irodalmi összefoglaló 5

2.1. A P2P hálózatok . . . 5

2.1.1. A P2P hálózatok felépítése . . . 6

2.1.2. Elosztott hash táblázatok . . . 6

2.2. A Kademlia átfedőfelépítése . . . 9

2.2.1. A Kademlia átfedőüzenetei . . . 11

2.2.2. A Kademlia átfedőmegbízhatatlansága . . . 11

2.2.3. Replikáció a Kademlia átfedőben . . . 14

2.3. Üzenetszórás P2P átfedőkben . . . 14

2.4. P2P átfedők szimulációja . . . 15

2.5. Betörésérzékelőrendszerek . . . 18

2.5.1. A betörésérzékelés célja . . . 18

2.5.2. A betörések jellemzői . . . 19

2.5.3. A betörésérzékelés lehetőségei . . . 20

2.5.4. A betörésérzékelés helye . . . 21

2.5.5. Az érzékelt események közötti kapcsolat felismerése . . . 21

2.5.6. A betörésérzékelők közötti kommunikáció . . . 22

3. Betörésérzékelés strukturált P2P átfedőn 25 3.1. Az elosztott érzékelés jellegzetes problémái . . . 26

3.2. A Komondor elosztott betörésérzékelőeljárás . . . 28

3.2.1. Strukturált átfedőhasználata az események eltárolásához . . . 29

3.2.2. A Kademlia átfedőhasználata a Komondor eljárásban . . . 31

3.2.3. Az eljárás hatékonyságának igazolása . . . 33

3.3. A Komondor eljárás alkalmazási lehetőségei . . . 34

3.3.1. Kulcsok választása a Komondor eljárásban . . . 35

3.3.2. A Komondor rendszer mérési összeállítása . . . 36

3.3.3. A Komondor rendszerrel érzékelt támadások . . . 37

4. A Kademlia átfedőmegbízhatóságának növelése 45 4.1. A megbízhatóság növelése a replikáció alkalmazásával . . . 46

4.2. Modellezési eljárások a Kademlia átfedőben . . . 47

4.3. Az adattárolás szimulációja . . . 47 1

(5)

TARTALOMJEGYZÉK 2

4.3.1. A hálózati hibák eloszlása . . . 49

4.3.2. A replikáció szükséges szintjének meghatározása . . . 51

4.4. Az adattárolás helyességének modellezése . . . 52

4.4.1. A modell és a szimuláció összevetése . . . 55

4.5. A modell alkalmazási lehetőségei . . . 58

4.5.1. A szükséges replikáció jellemzőértékei . . . 58

4.5.2. Az egyedek hibái és a kapcsolati mátrix összefüggése . . . 59

4.5.3. A populációváltozás okozta hibák hatásának kiküszöbölése a replikáció növelésével . . . 60

4.5.4. A modell használata az Azureus és a Mainline BitTorrent hálózatok megbízhatóságának javítására . . . 61

4.5.5. A szimulációs eljárás használata az elosztott betörésérzékelés megbízha- tóságának javítására . . . 62

5. Üzenetszórás a Kademliában 64 5.1. A Kademlia átfedőtranszformációja . . . 65

5.2. Üzenetszórás megvalósítása a Kademlia átfedőben . . . 67

5.2.1. Üzenetszórás elárasztással . . . 67

5.2.2. Üzenetszórás a topológia felhasználásával . . . 67

5.2.3. Üzenetszórás a topológia felhasználásával és replikációval . . . 74

5.3. Az üzenetszórások szimulációban mért eredményei . . . 77

5.3.1. Az üzenetek száma egyedenként . . . 77

5.3.2. Az üzenetszórás helyessége . . . 79

5.3.3. Az üzenetszóráshoz szükséges idő. . . 81

6. Összefoglalás 84

(6)

1. fejezet Bevezetés

A számítástechnika kezdeti időszakában, de még a kilencvenes évek elején is, a hálózatba kötött számítógépek forgalma általában épületen belül maradt. Legtöbbször fel sem merült, hogy valaha gazdagépeket, vagy egy egész hálózatot az Internetre kötnek, amely egykor csak katonai, de egészen a közelmúltig is csak akadémiai célokat szolgált. Az Internet növekedésével és elterjedésével azonban a számítógépes biztonsági kérdések egyre inkább előtérbe kerül- tek. A megjelenőhálózati vírusok, férgek és szakképzett támadók ellen különbözővédekező eljárásokat, például tűzfalakat fejlesztettek ki.

A nagy földrajzi területeket érintő, akár világméretűszámítógépes járványok észlelésének, előrejelzésének igénye elosztott érzékelőrendszerek létrehozását eredményezte. Ezen érzékelő rendszerek képességei és szolgáltatásai eltérőek. Egyes rendszerek a forgalom dinamikáját vizs- gálva próbálják meg a világméretűjárványok megindulását időben jelezni. Mások intézményi hálózatokat hivatottak védeni a külvilágból érkező, hálózati méretűtámadások ellen.

Az értekezésemben bemutatott eredmények aKomondornevűelosztott, hálózati betörés- érzékelőés -védelmi rendszerrel kapcsolatos kutatásaim köré csoportosulnak. Ez a rendszer éppen a főveszélyt jelentőhálózatot próbálja meg arra használni, hogy a gazdagépek véde- kezőképességét növelje. A működés során a védendőgazdagépek az Interneten létrehoznak egy alkalmazási szintűhálózatot. Az ebbe kapcsolt egyedek az észlelt betörési kísérletekről naplókat vezetnek, amelyekből elosztott adatbázist építenek. Az így szerzett tapasztalatokat megosztják egymás között. Ezzel növelik az összes résztvevőbiztonságát, amelyek ezután egye- dileg megtehetik a szükséges védelmi lépéseket, például a támadó IP címről érkezőforgalmat letilthatják a tűzfalaikon keresztül.

Az elosztott érzékelőrendszerrel kapcsolatos céljaim a következők voltak. A betörések ér- zékelésének általános problémája, hogy a nagy mennyiségűfeldolgozandó adat nagy terhelést jelent az érzékelőrendszernek is. A feldolgozott adatok nagy része az érzékelés szempont- jából nem tartalmaz hasznos információt. Ezen felül, egyes hálózati szintűtámadások csak több ponton érzékelt események adatai alapján ismerhetők fel. Az érzékelők által generált adatok összegyűjtése, összevetése tovább növeli a szükséges számítási és hálózati kapacitást.

Kutatásaim célja volt létrehozni egy olyan rendszert, amely az érzékelők által gyűjtött adatot hatékonyan és biztonságosan tudja feldolgozni.

Értekezésemben megmutatom, hogy a feldolgozás egy Kademlia alapú, alkalmazási szintű hálózaton hatékonyan elvégezhető. A Kademlia hálózatra, főként az abban tárolt adatok visszanyerhetőségére azonban jelentős hatással vannak a hálózati szintűhibák. Ilyenek például

3

(7)

1. FEJEZET. BEVEZETÉS 4 a tűzfalak hatása és a hálózati csomagvesztés. Mégis, a Kademlia megbízhatósága növelhető az adatok több helyen történőtárolása, vagyis a replikáció segítségével. A replikáció viszont nem választható tetszőlegesen nagyra, különösen ilyen mennyiségűeltárolandó adat esetén nem, amelyet az elosztott érzékelőrendszer érzékelői hoznak létre. Kutatásai céljaim között szerepelt a Kademlia átfedőmegbízhatóságának hatékony, lehetőleg minél alacsonyabb többlet hálózati forgalmat keltőnövelése.

A felismert támadás ténye és a védekezés lehetséges módja minden védendő gazdagép számára hasznos információk. A Komondor rendszerben a felismert támadásról minden résztvevőt értesítenek. Ennek eléréséhez kidolgoztam egy algoritmust, amellyel az üzenetszórás az alkalmazási szintűhálózaton elvégezhető. A Kademlia hálózat strukturált felépítése lehetővé teszi, hogy ezt gyorsan és megbízhatóan lehessen elvégezni. A kidolgozott módszerrel elértem azt, hogy az esetleges hálózati hibák esetén az üzenetszórásnál is biztosítani lehessen egy előírt megbízhatóságot.

A kutatás Kademlia hálózattal kapcsolatos célkitűzései elsősorban a Komondor céljait szolgálták, azonban a kidolgozott eljárások a Kademlia eljárást használó alkalmazásokban általánosan is alkalmazhatóak. Az általam kifejlesztett, a Kademlián történő üzenetszórás kiterjeszti annak adatlekérdezésekkel kapcsolatos lehetőségeit, segítségével tetszőleges keresé- sek megvalósíthatóak a hálózaton. A tűzfalak és a csomagvesztés okozta megbízhatatlanság megszüntetése is minden Kademlia hálózatra épülőalkalmazásban használhatóak.

(8)

2. fejezet

Irodalmi összefoglaló

A hétköznapok részévé vált Interneten egyre nőa számítógépes bűnözés. Automatikusan mű- ködőés terjedőférgek, szakképzett támadók és betörők nehezítik meg, teszik hatékonytalanná a hálózat működését. Az adatok védelme érdekében, valamint a támadások nagy száma miatt önműködőbetörésérzékelőés -védelmi rendszerek használatára van szükség.

Az Interneten az utóbbi másfél évtizedben elterjedté váltak a peer-to-peer (P2P) átfedő hálózatokat használó alkalmazások. Közülük legismertebbek a fájlcserélőprogramok, de a P2P átfedők más célokra is alkalmasak, többek között elosztott adatbázisok megvalósításá- ra. A következőkben bemutatásra kerülnek a fenti két témakörrel kapcsolatos legfontosabb eredmények.

2.1. A P2P hálózatok

Az utóbbi időben az Internet forgalmának egyre növekvő részét az egyenrangú egyedekből felépülő, P2P alapon működőfájlcserélők adják [1]. Ezek abban térnek el a kliens-szerver architektúrától, hogy míg a központosított esetben egy központi kiszolgáló (server) végzi az adattárolást és válaszol a kliensek keresési és adatlekérési kéréseire, a P2P hálózatoknál az adattárolási és keresési funkcióért minden résztvevőfelelős. Ideális esetben nincsen központi szerepet betöltő tagjuk. A P2P hálózatokbban minden egyed egyszerre kliens és szerver.

Mindegyik megoszt adatokat, erőforrásokat, illetve használja is a többiek által nyújtottakat.

Ezért nevezik ezeket egyenrangú egyedeknek (peer).

A P2P alkalmazási szintűhálózatokátfedőhálózatok(application level network, ALN, over- lay network), mivel a résztvevők a hálózati szintű topológia felett létrehoznak egy logikai topológiát [2], amely az előbbinél az adott alkalmazásban előnyösebb számukra. A közpon- tosítatlan átfedő hálózatok több szempontból is előnyösek, amelyek közül legfontosabb a megnöveltmegbízhatóság. Ideális esetben ezek nem rendelkeznek olyan egyetlen hibaponttal (single point of failure, SPOF), mint a központosított megfelelőik. A P2P hálózatok fájlcserélé- sen kívül egyéb célokra is alkalmasak, különösen elosztott adatbázisok létrehozására, továbbá nagy mennyiségűadat megbízható tárolására, biztonsági mentések létrehozására, internetes televízióadások közvetítésére, telefonhálózatok kialakítására [3] stb.

A P2P kommunikációs modellt számítógépes férgek és vírusok hatékonyságának növelésére is felhasználják. Ezekben afertőzött számítógépekből P2P alkalmazási szintűhálózatotépítenek,

5

(9)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 6 amelyet arra használnak, hogy a hálózat irányítójának utasításait hajtsák végre, aki általában egy természetes személy [4].

2.1.1. A P2P hálózatok felépítése

Az egyenrangú felépítés két fontos, egymással szorosan összefüggőkérdést vet fel. Elsőaz átfedőtopológiája, vagyis az, hogy az egyedek hogyan kapcsolódjanak egymáshoz. Második az erőforrásokmegkereshetőségénekproblémája (resource discovery), vagyis az, ahogyan megtalál egy egyed a hálózatban egy másik által megosztott erőforrást vagy adatot. Ezek alapján soroljuk a P2P hálózatokat két nagy csoporthoz, a strukturált és a nem strukturált átfedőkhöz.

Anem strukturált átfedőkesetén az egyedek közötti kapcsolatokban nincs előre meghatáro- zott rendszer. Az átfedőbe belépőúj egyedek találomra bármely meglévőkhöz csatlakozhatnak.

Ilyen például a Gnutella [5]. Egy adott fájl vagy erőforrás megtalálása a nem strukturált átfedő- kön nehéz feladat ; az ilyen céllal indított keresési kéréseket általában az egyedek korlátozott elárasztással továbbítják egymásnak. Ez a megoldás nem optimális, hiszen nem skálázható és nem megbízható [6]. A nem strukturált átfedőkkel foglalkozó kutatások célja az ilyen átfedőkön működőkeresési és replikációs algoritmusok kidolgozása.

Astrukturált átfedőknélezzel szemben az átfedőhálózat topológiája topológiája meghatá- rozott ; az abban alkalmazott útválasztási eljárástól függ. A fizikai hálózatokhoz hasonlóan ezekben minden egyed rendelkezik egy hálózati címmel (NodeID), amely meghatározza a helyét és a szomszédait az átfedőben. A létrejött virtuális topológiában előre rögzített útvá- lasztási algoritmus szerint továbbítják az egyedek az üzeneteket. Mivel az egyes NodeID-k alapján egy egyed pontos helye kötött az átfedőben, az útválasztás a hálózat egészének ismerete nélkül is működőképes. Az átfedőegyedei olyan topológiát alakítanak ki, amelyben az átfedő hálózatnak az egyedek közötti ugrások számában értett átmérője nagyságrendben korlátozott, vagyis az egyedeknszámával az egyenes aránynál kisebb mértékben nő. Két tetszőleges egyed közötti üzenetküldés legfeljebbO(logn), vagy esetlegO

n

lépésben végrehajtható.

A strukturált átfedők egymástól a topológiájukban, és a topológiából következőútválasztási algoritmusaikban térnek el. A nem strukturált átfedőkhöz képest megvalósításuk bonyolul- tabb ; az egyes egyedek feladatai is összetettebbek, főleg az átfedőkarbantartási műveletei terén.

2.1.2. Elosztott hash táblázatok

A strukturált átfedők általában elosztott hasító táblákat(distributed hash tables, DHT) való- sítanak meg. A hasító táblák1 kulcs-értékpárokat,adattételekettárolnak. Minden eltárolandó adatcsomaghoz,értékhezegy azonosítót,kulcsotrendelnek, amellyel arra hivatkozni lehet.

Fájlcserélőalkalmazásokban azértéka fájl tartalma, akulcspedig a fájl neve. Az elosztott hasító táblázatban történőtárolást úgy oldják meg, hogy a kulcsot egy hasító függvény (hash function), például az SHA-1 [7] segítségével leképezik egy általában 128 vagy 160 bites értékkészletre. Az átfedőben az alkalmazási szintűcímeket (NodeID) is ekkora tartományból választják. Minden egyed azokat a kulcs-érték párokat tárolja, amelyek kulcsának hasított (hash-elt) értéke legközelebb esik a saját azonosítójához. Így minden adatról tudni lehet, hogy

1Az angolhash tablekifejezést elterjedten fordítják hasító táblának és tördelőtáblának is.

(10)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 7

0 2 -1n

2.1. ábra. A Chord átfedő

hol kell keresni az átfedőben. Egy fájl kereséséhez szükséges műveletek megegyeznek egy egyszerűüzenetküldéshez szükséges lépésekkel, ugyanis mind a kettőugyanazt a címteret használja.

A hasító függvény kimenete a címteret egyenletes eloszlással használja. Ez lehetővé teszi azt, hogy az eltárolt adatokat az átfedőben egyenletesen osszák el az egyedek között [8]. Így az egyedek terhelése egyenletessé válik, amennyiben azok is egyenletesen használják ki a címteret.

Természetesen a gyakorlatban a tárolt adatok eloszlása csak határértékben egyenletes [9]. A címteret a címek nagy száma miatt matematikai modellekben gyakran folytonos változóval közelítik [10]. Ilyenkor a hasító függvény kimenete is folytonos, egyenletes valószínűségi változónak vehető. Akikereséseknél(lookup), vagyis az adattételek lekérdezésénél gyakoribb az egyenetlen terhelés. Lehetséges, hogy egy adott kulcsot sokkal gyakrabban keresnek a hálózat résztvevői, mint a többit, és ezzel a kulcsot tároló egyednél, illetve annak szomszédsá- gában megnövekszik az átfedőhálózati forgalma. Ezek az ún. forró pontok (hot spot). Ezek elkerülésére a hálózat topológiájának függvényében eltérőmegoldásokat alkalmaznak [11].

Strukturált P2P átfedők topológiája

A strukturált átfedők működését meghatározza a topológiájuk, és az azzal összefüggő út- választási algoritmusuk. A tervezésük legfontosabb szempontja a skálázhatóság biztosítása ; ennek mérőszáma pedig a hálózat átmérője az egyedszám függvényében (lásd a 2.1. táblázatot).

Minél kisebb az átmérő, annál kevesebb protokollüzenettel lehetséges adatot továbbítani egyik egyedtől a másikig.

A Chord átfedőegyedei a 2.1. ábrán látható módon egy kör alakú topológiát alakítanak ki [12]. A hálózati címek a kör mentén helyezkednek el ; az utolsó, 2n−1 címűegyed után megint a 0 címűkövetkezik. Minden egyed azokat az adattételeket tárolja, amelyek aző, és a rákövetkezőegyed címe között helyezkednek el. Az egyedek kapcsolatban vannak a szom- szédjaikkal, vagyis a közvetlenül előttük és utánuk lévőegyedekkel. Ezen felül, mindegyikük kapcsolatban van a körben vele szemben, vagyis egy fél körrel arrébb lévő, és egyed negyed,

(11)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 8

2.2. ábra. A CAN átfedő

Átfedő Topológia Távolság Útválasztás Átmérő

Chord kör kivonás rekurzív O(log2n)

CAN d-tórusz ortogonális rekurzív O(d·n1/d) Kademlia bináris fa XOR iteratív O(log2n)

2.1. táblázat. DHT hálózatok összehasonlító táblázata

nyolcad körrel arrébb lévőegyeddel is, és így tovább. Ezen egyedek adatait tartalmazó ún.

mutató táblák biztosítják a skálázhatóságot. Az üzenetküldés során az egyedek az üzenetet egymásnak továbbítják ; az üzenet távolsága a céltól a mutató táblák segítségével minden lépésben megfelezhető. Az üzenet így az átfedőn belül legfeljebbO(log2n) továbbítás után célba ér.

A CAN (Content Addressable Network) átfedő egyedei egy n-dimenziós tórusz alakú topológiát hoznak létre [13]. A kulcsok címterét erre a tóruszra képezik le ; az üzeneteket pedig úgy továbbítják egymásnak, hogy az a tórusz felületén a legrövidebb úton jusson célba. A dimenziók számának növelésével az átfedőátmérője csökken. Így az üzenetküldés gyorsul, viszont a karbantartási műveletek egyre több erőforrást igényelnek. A 2.2. ábra egy kétdimenziós CAN átfedőt mutat síkba kiterítve. A távolság két pont között Pitagorasz tételével számítható ki. A nyilak egy üzenetküldésre mutatnak példát. A hálózat átmérője, vagyis egy üzenet célba juttatásához szükséges lépések száma O(d·√d

n), ahol n az egyedek, d pedig a dimenziók száma.

Komplex keresések strukturált P2P átfedőkben

A strukturált átfedők hátránya, hogy a gyors kikeresést csak a kulcsok pontos ismeretében képesek elvégezni. Ha egy adattétel pontos kulcsa ismeretlen, akkor lehetetlen meghatározni az ahhoz tartozó hasított értéket, és így az egyedet, amelyik azt az adatot tárolja. Részben

(12)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 9

0 1

0 0

0

0

0 0

0 0

0 0

0 0

0

0 0

0

0 1

1 1 1

1 1

1

1 1 1 1

1 1

1 1 1

1 0

1

2.3. ábra. A Kademlia átfedő

vagy pontatlanul ismert kulcs, és más keresési szempontok esetén a kikeresési eljárás nem használható [14].

Ebben az esetben két lehetséges eljárás alkalmazható a keresések megvalósítására. Az egyik az, hogy az átfedőfelett egy üzenetszórás (broadcast) segítségével minden egyedhez eljuttatjuk a keresési kérést [15], amelyet aztán saját maguk dolgoznak fel. Az átfedőstrukturája haté- konyabb üzenetszórást tesz lehetővé, mint ami a nem strukturált átfedők esetében elérhető.

A másik lehetőség keresési indexek építése az átfedőben [16]. Az előbbieknél jelentős lehet az egyes keresések által keltett hálózati forgalom, míg az utóbbi hátránya az, hogy a keresési indexek karbantartási költsége magas lehet.

2.2. A Kademlia átfed ő felépítése

AKademliaegy fájlcserélőalkalmazásokhoz kifejlesztett, bináris fa topológiájú DHT, vagyis elosztott hasító táblázat alapú átfedő[11].

A Kademlia DHT-ben az egyedek átfedőbeli címeik szerint egy bináris fába rendeződnek. Az útválasztás ezen részfák alapján történik (2.3 ábra). Az egyes egyedek minden távoli részfából kapcsolati lehetőségeket (IP hálózati címet és port számot) tartanak nyilván az útválasztási táblázataikban. Ezeket a részfákhoz rendelt listákatk-vödrökneknevezzük (k-bucket). Méretük akszám, amely egy rendszerszintűkonfigurációs paraméter. Ezt az átfedőstabilitási fokának is nevezzük, hiszen ha akeleműlistából (k-vödörből) csak egyetlen egyed is elérhető, akkor az adott részfának lehet üzenetet küldeni. Nagy átfedőkben többszintűrészfák is előfordulnak.

A magasabb részfákban jóval több egyed van, mint k, vagyis a fának a távoli részeiről egy adott egyednek arányaiban kevesebb tudása van, míg a hozzá legközelebbi egyedek közül mindegyiket ismeri. A Kademlia ezen tulajdonsága biztosítja a skálázhatóságot.

A Kademlia átfedő egyedei között az üzenetek továbbításához szükséges útválasztás a 2.4. ábrán látható módon történik. Ha egy egyed üzenni szeretne egy másiknak (pl. az ábrán a 00110 címűegyed az 11000 címűnek), nem kell mást tennie, mint küldeni egy lekérde- zést bármelyiknek az 1-essel kezdődőrészfában, mivel az jobban ismeri az 11-gyel kezdődőek részfáját. Ez az egyed visszaküld egy k-vödröt azon egyedek IP címével, amelyek NodeID azonosítói a címzett egyed saját helyzetéhez képest egy helyiértékkel közelebb vannak a célhoz.

(13)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 10

0 1

0 0

0 0

0 0

0 0

0 0

0 0

0

0 0 0

0 1

1 1 1

1 1

1 1 1 1 1

1 1

1 1 1

1 0

1

1

2

3

4 0 1

2.4. ábra. Útválasztás a Kademlia átfedőben

A 2.4. ábrán látható példa esetében a kezdeményező, 00110 című, feketével jelölt egyed először az 10000 címűegyednek üzen, amely az 1-gyel kezdődőcíműegyedek részfájánakk-vödrét küldi vissza a kezdeményezőnek. Ezután ebből választja ki az 11000 címűt, amelyiknek máso- dikként küld üzenetet stb. Az üzenetküldések sorozataO log2N

lépésben eléri a célt, aholN az egyedek száma.

Az egyedek két azonosító távolságát a kizáró vagy (eXclusive OR, XOR,⊗) függvénnyel számítják ki.d(A, B)-t, vagyis azA-val ésB-vel jelölt egyed közötti távolságot ad(A, B) =A

Bképlettel tudjuk kiszámítani. Minél nagyobb helyiértéken találunk a távolságban 1-est, annál távolabbi részfában van a keresett egyed. Például a 2.4. ábrán a 01011 és a 01100 egyed távolsága 01011⊗01100 = 00111, amelyben felülről számítva a harmadik bit az első1-es. Ebből az is látszik, hogy az egyedek közös negyed (1/231) részfában vannak. A bináris fával az átfedő hálózat XOR metrikávalértelmezett topológiáját ábrázoljuk, nem pedig az egyedek közötti konkrét kapcsolatokat. Ezt az alakzatot XOR topológiánakis nevezik. Megjegyzendő, hogy az egyedek az átfedőtopológiáján mért távolságának semmi köze az egyedek által képviselt számítógépek földrajzi elhelyezkedéséhez.

A XOR topológián értelmezett lekérdezések a fenti definíció alapján szimmetrikus művele- tek. Minden egyed, amelytől üzenetet kap egy adott egyed, bekerül az útválasztási táblázatának megfelelők-vödrébe. Ha az megtelik, akkor arról a távoli egyedről szóló információ törlődik, amelyről a legrégebben hallott a vizsgált egyed. Egy csomópont útválasztási táblázata, vagyis a részfákhoz tartozó egyesk-vödrök kétféleképpen frissülhetnek :

1. az egyed által kezdeményezett lekérdezésekre kapott válaszokban található új elérhető- ségek rögzítésével,

2. az egyedet elérő, más csomópontok által küldött üzenetek IP címeinek rögzítésével.

Mivel a XOR függvény szimmetrikus, a bejövőés a kimenőüzenetek eloszlása azonos : egy adott egyedet hívó másik résztvevők eloszlása éppen megegyezik az útválasztási táblázat

(14)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 11 eloszlásával. (Formálisan, annak valószínűsége, hogy egy [2i,2i+1] tartománybeli egyedtől kapunk üzenetet,i-től független konstans [11].) Ez a szimmetria hasznos, mert így egy egyed útválasztási táblázata ugyanúgy frissül, akár lekérdezéseket hajt végre az egyed, akár azt kérdezik le más csomópontok. A frissülés egy egyednél mindig létrejön, függetlenül attól, hogy indítanak-e tőle lekérdezést vagy nem. A táblázatok működés közbeni frissülése egy olyan mellékhatás, amelynek következtében a hálózatönmegerősítő.

2.2.1. A Kademlia átfed ő üzenetei

A Kademlia átfedőben a következőtípusú üzeneteket küldik egymásnak az egyedek :

FIND_NODE. Egy adott címmel rendelkezőegyed keresése. A válasz erre egyk-vödör, átfe- dőbeli cím (NodeID), IP cím, port szám összerendelésekkel.

FIND. Adott kulccsal rendelkezőadat keresése. A válasz lehet az adattétel, ha fogadó egyed tárolja azt ; vagy lehet egyk-vödör a címhez közelebbi egyedek listájával, ha nem.

STORE. Adattétel eltárolása. Ezt az üzenetet közvetlenül annak az egyednek kell küldeni, amelyiknek a tárolást el kell végeznie.

PING. Egyed meglétének ellenőrzése.

A Kademliától eltérően a többi DHT átfedőben az egyedek az üzeneteket útjukra indítják az átfedőn, valamelyik szomszédjuknak elküldve. A többi egyed pedig lépésről lépésre küldi tovább a cél felé. Ezt a 2.5. ábrán látható megoldástrekurzív útválasztásnaknevezzük [17]. A Kademliában viszont ez másképpen működik. Adott kulcs tárolásához például a tárolást kérő egyed az üzenetet nem útjára indítja, hogy az átfedőtöbbi egyede lépésről lépésre továbbítsa azt a cél felé, hanem maga keresi fel a kulcshoz legközelebbi egyedet. Ezt az eljárástiteratív útválasztásnak2 nevezzük, ahogyan azt a 2.5. ábra is szemlélteti. Az útválasztás során az egyed maga kérdez a célhoz egyre közelebbi és közelebbi egyedeket a cél egyed IP címéről, amíg ténylegesen el nem jut ahhoz. A célhoz pedig aztán maga a kérdezőegyed juttatja el az üzenetet.

Ez érvényes a kulcs eltárolásokra (STORE üzenet) és a kikeresésekre, lekérdezésekre (FIND és FIND_NODE üzenetek) is.

2.2.2. A Kademlia átfed ő megbízhatatlansága

Az iteratív útválasztással az egyedeknek az üzenetküldés szempontjából rengeteg válasz- tási lehetőségük van. Egy Kademlia egyed akár több száz ismert másik társának a címét tarthatja nyilván ak-vödrökben. Ebből az következik, hogy nem tarthatnak fenn egymással vonalkapcsolt közlési viszonyt, mivel ennyi nyitott, felépült közlési viszonyuk nem lehet (lásd a 2.2. táblázatot). A több ezer nyitott TCP kapcsolat helyett a Kademlia UDP-t, vagyis csomagkapcsolt üzenetküldést használ [11], ahogyan a legtöbb másik DHT átfedőis.

2A Kademliát bemutató elsőközlemény éppen fordítva használja ezt a két fogalmat [11]. Egy adott egyed szempontjából nézve a folyamatot, pontosabban leírja azt az iteratív jelző, mivelőmaga felelős az egymás utáni lekérdezésekért, amíg a cél címét meg nem kapja.

(15)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 12

(a) rekurzív (b) iteratív

2.5. ábra. Útválasztási metódusok DHT hálózatokban üzenetküldés típusa definíció

vonalkapcsolt Az összeköttetés a kommunikáció időtartama alatt folyama- tos. Ilyen az Interneten használt TCP adatátvitel.

csomagkapcsolt Az üzenetküldés során a küldőés a címzett között folyamatos kapcsolat nincsen ; az üzenetek egymástól független csoma- gokként kerülnek továbbításra.

2.2. táblázat. Csomagkapcsolt és vonalkapcsolt üzenetküldés

A tűzfalak és a címfordítás hatása

Az alkalmazott iteratív útválasztás azt is feltételezi, hogy bármelyik egyednek képesnek kell lennie csatlakoznia bármelyik egyedhez. Emiatt a hálózati szintűhibák így közvetlenebb hatást gyakorolnak a Kademliára, mint más, rekurzív útválasztást használó átfedők esetében [17], a hálózati hiba ugyanis nem csak egy megszakadó kapcsolatot vagy csomagvesztést, hanem a kapcsolatteremtés képességének teljes hiányát is jelentheti. Ez UDP használata esetén gyakrab- ban előfordul, mint TCP kapcsolatoknál [18], a címfordítás (network address translation) és csomagszűrés (packet filtering) miatt [19]. Ezekben az esetekben a kapcsolódások lehetősége gyakran aszimmetrikus : egy címfordítás mögött lévőegyed tud csatlakozni egy nyilvános (publikus) IP címmel rendelkezőhöz, míg fordítva ez nem igaz [20].

A fenti hatások miatt az internetes alkalmazások tervezésekor általában használt, a 2.3. táb- lázatban bemutatott három alapvetőfeltételezés, melyek szerint a kapcsolatok reciprok, tran- zitív és perzisztens tulajdonságokkal rendelkeznek, nem teljesül. A reciprocitás azt a feltevést jelenti, mely szerint ha A egyed képes üzenetet küldeni B egyednek, akkor ez fordítva is igaz, vagyis B is képes üzenni A-nak. Tűzfalak, és egyes címfordítási eljárások esetén ez nem mindig van így. Az utóbbiak esetén általában ez az időfüggvénye is. Ha B néhány percen belül válaszol A-nak, az üzenetküldés sikeres, később pedig sikertelen, vagyis a kapcsolat nem perzisztens.

Az ilyen jellegűműködés miatt lehetséges az is, hogy bár A és B kölcsönösen képes egymással kommunikálni, de egy harmadik egyed, C már nem képes kapcsolatot teremteni A-val, hiába kapja meg B-től A IP címét ; vagyis a kapcsolat nem tranzitív. A tapasztalatok alapján egyedek

(16)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 13 feltételezés magyarázat

reciprocitás Ha A csomópont képes üzenni B-nek, akkor B is A-nak.

tranzitivitás Ha A csomópont képes üzenni B-nek, és B képes C-nek, akkor A csomópont C-nek is tud üzenetet küldeni.

perzisztencia Ha A üzenetet küld B-nek, és B képes válaszolni, akkor ez később is így lesz.

2.3. táblázat. Feltételezések két csomópont közötti üzenetküldésre az Interneten

akár 60-70%-a tűzfal mögött lehet [21]. A MainLine BitTorrent hálózaton végzett mérések alapján a csomópontok csak 80%-a rendelkezik a reciprok kapcsolatteremtés lehetőségével, míg 40%-uk tranzitívval [19].

A rendszer elméleti tervezésekor a Kademlia hálózati hibákra való különös érzékenységére nem adtak megoldást, áthárítva a feladatot a konkrét implementációra. A kikeresések helyes- ségét a nagyra választott k-vödrök biztosítják. A tűzfalakon, illetve címfordításon keresztül történőkapcsolat felépítésére viszont nincsen egyszerűés jó megoldás az azokat megvaló- sító eszközök és szoftverek lényegesen eltérőműködése miatt [20]. Két tűzfal vagy hálózati címfordítás mögötti gép kapcsolódásához általában szükség van egy harmadik, nyilvános IP címmel rendelkezőfélre, amely a kapcsolatban közvetítőszereppel rendelkezik. Az ilyen jellegűmegoldás hátránya, hogy leginkább csak központosított vagy részben központosított átfedőkben alkalmazható. Nincsen olyan megoldása sem ennek a problémának, amely az esetek 100%-ában biztosan működne, ugyanis gyakori az olyan helyzet is, amikor egy egyed többszörös címfordítás mögött van [22].

A leírtak alapján a Kademlia hálózatban az összekötöttség csak látszólagos. Az egyedek ugyan minden részfához tárolnak legfeljebbkIP címet, de ez nem jelenti azt, hogy az egyes részfákhoz ténylegesen ennyi kapcsolattal rendelkeznek. Igen gyakori az az eset, amikor egy egyed rendelkezik egy másik IP címével, de a tűzfal vagy a címfordítás miatt nem tud üzenetet küldeni annak. Egyes források szerint valós átfedőkben ez akár a kapcsolatok 15%-át is érintheti [17]. A kapcsolatok hiánya miatt két szempontból is kisebb az átfedőmegbízhatósága.

Egyrészt előfordulhat az is, hogy egy adat (tétel) eltárolás esetén nem a címéhez legközelebbi egyedhez kerül, ahol a többi egyed keresni fogja. Másrészt gyakori az is, hogy egy tétel ugyan a megfelelőhelyen van, de a lekérdezőegyed nem tudja elérni azt.

Az útválasztási táblázatok hibái

A hálózati hibák miatt az útválasztási táblázatok pontossága is romolhat a Kademlia átfedőben.

Statikus esetben ez azért van így, mert előfordulhat, hogy egy lekérdezésnél olyan egyedet nem ér el a lekérdezés indítója, amelyikhez csatlakoznia kellene az adottk-vödör letöltésé- hez. Ilyenkor egy távolabbi egyedtől kényszerül lekérdezni az adatokat, amelyik azonban a célponttól távolabb lévén, kevésbé pontos információkkal rendelkezik a cél környezetéről.

Dinamikus esetben, amikor az átfedőváltozik, leggyakrabban az egyedek folyamatos, gyors ki- és belépése miatt keletkezhet a táblázatokban pontatlanság. Ezen fluktuáció angol neve az

(17)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 14 irodalomban „high churn” [23], amit felpörgésnek fordíthatunk. Ha egy adott egyed távozik a hálózatból, vagy egy új egyed jelenik meg valamelyik célponthoz közelebb minden addiginál, akkor időbe telik, mire a környezete erről tudomást szerez.

2.2.3. Replikáció a Kademlia átfed ő ben

A Kademliában a hálózatból kilépőegyedek nem adják át tárolt tételeiket a szomszédos egye- deknek, hanem azok egyszerűen elvesznek a hálózatból [11]. Ennek a problémának a kezelésére a Kademlia protokoll a tételek több helyen történőtárolását írja elő. Ezt replikációnakvagy másodlatolásnak nevezzük (replication). Erre egyszerűmegoldást adnak maguk az egyedek által szervezett kulcs-eltárolások és -lekérdezések.

A replikáció a következőképpen működik. Egy adott tételt eltárolni szándékozó egyed nem a kulcshoz legközelebbi egyednek, hanem annak környezetében, ahhoz legközelebbi k darab egyednek küldi el a STORE üzenetet. Így ha a k egyed közül valamelyik kilép a hálózatból, az adott tétel továbbra is elérhető marad k−1 helyen. A Kademlia protokoll előírásai szerint egy adott tételt óránként újra publikálni kell, vagyis a tárolást óránként újra el kell végezni [11]. (Az ezzel járó hálózati forgalom korlátozására az eljárás tartalmaz itt nem részletezett megoldásokat.) Akértékét a fentieknek megfelelően úgy kell megválasztani, hogy kellően valószínűtlen legyen az, hogy egy órán belül mind ak egyed elhagyja a hálózatot.

Maymounkov, a Kademlia tervezőjek= 20-szoros replikációt javasol, némileg önkényesen a Gnutella átfedőben mért felhasználói viselkedések, szokások alapján. Fontos kiemelni, hogy az idézett cikk nem különbözteti meg ak-vödrök méretét a replikációtól ; a replikáció szintjének ak-vödrök méretét választja, és ezért mindkettőtk-val jelöli.

A belépőegyedeknél elvileg nincsen ilyen probléma. Amikor egy új egyed belép a hálózatba, akkor a saját azonosítója felé indít el kikeresést. Ezáltal megismeri a szomszédait ; utána pedig frissíti minden távolabbi részfához tartozó k-vödrét. A szomszédai, tudomást szerezve az új egyedről, eltárolják nála azokat a kulcsokat, amelyek hozzá közelebb vannak, mint saját magukhoz. Erre azért van szükség, mivel a későbbi kikeresések is az új egyednél próbálják majd meg először kikeresni a kulcsot, amelyhez az új egyed címe van legközelebb a címtérben.

2.3. Üzenetszórás P2P átfed ő kben

Az üzenetszórást (egytől mindenkinek, broadcast) a P2P átfedőkön legtöbbször nem igénylik az azokra épülőalkalmazások. Az egyedek nagy száma miatt az üzenetszórás egyébként is sok erőforrást igényel. A strukturált átfedőket pedig éppen azzal a céllal hozták létre, hogy a Gnutellához hasonló nem strukturált átfedőkben használatos elárasztást hatékonyabb keresési eljárásokkal váltsák ki (lásd a 2.1.1. szakaszt).

Egyes alkalmazásokban szükséges az üzenetszórás. Segítségével ugyanis megvalósítha- tó a kulcsrészlet töredékekre, vagy csak pontatlanul ismert kulcsra történőkeresés [15]. A strukturált átfedőkben alkalmazott hasító függvények tulajdonságai ezt eredendően nem teszik lehetővé ; a strukturált átfedőútválasztásával a hatékony keresés csak a kulcs pontos ismeretében lehetséges.

Az irodalomban bemutatott üzenetszórási algoritmusok jelentős hányada a Chord átfedőn működik [12].

(18)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 15 Egy részük felelősök kijelölésére épül. Ezek az átfedőn továbbított kikeresési kéréseket tekintik mintának az üzenetszórás továbbításához [24]. Erre tekintsünk példának egy [0,8) tartományú címekkel rendelkezőChord átfedőt. A 0 címűegyed által indított kikeresés gon- dolatmenete az, hogy a keresett adat a [0,4) vagy a [4,8) tartományokban található. Ha az előbbiben, akkor a tartományt a keresőnek tovább kell finomítania, [0,2) és [2,4) részekre osztva azt. Ha az utóbbiban, akkor pedig annak a tartománynak az elején elhelyezkedőegyedre hagyatkoznia, mert az rendelkezik több információval az átfedőazon tartományáról. Az üze- netszórás ehhez hasonlóan végezhető: a tartományt két részre osztva, és ezekből egy-egyfelelős egyedetkijelölve arra a célra, hogy azok elvégezzék az üzenetek küldését [15]. Az üzenetszórás hatékony, elvileg pontosanN−1 hálózati üzenetet igényel csak, aholN az átfedőegyedeinek a száma. Ez az üzenetszórási algoritmus azonban nem áll ellen a csomagvesztéseknek, illetve a ki-belépések miatt időlegesen hibás útválasztási táblázatoknak.

Az algoritmus megbízhatósága javítható azáltal, ha az üzenetszórásról az egyes felelős egyedek visszajelzést adnak azőket kijelölőknek. Ez egy rekurzív eljárás ; egy egyed akkor ad visszajelzést, ha az összes általa megbízottaktól megkapta azt. Időtúllépés esetén a kijelölő egyed más felelőst választ az adott tartományból [25]. Ez a megoldás hibás útválasztási tábláza- tok esetén ugyan helyesen működik, de rosszindulatú egyedek esetében nem. Egy rosszakaratú egyed ugyanis félrevezetheti a megbízóját azzal, hogy nem továbbítja az üzenetet, de mégis nyugtázza, mintha továbbküldte volna.

Más algoritmusok nem csak felelősök kijelölésével, hanem az üzenetek „járványszerű” to- vábbításával fedik le az átfedők. Ilyen az Efficient Broadcast in P2P Grids nevűalgoritmus [26].

Ez az előbb említettet azzal egészíti ki, hogy a felelősök időnként véletlenszerűen továbbít- ják az üzenetet szomszédaiknak is. Így előbb-utóbb azok eljutnak azokhoz az egyedekhez is, amelyekhez tartozó felelős meghibásodott vagy kilépett az átfedőből. A felelősök kijelölése gyorsabb üzenetszórást tesz lehetővé, mint a véletlenszerűtovábbítás ; az utóbbi viszont kilépő egyedek esetén is megbízhatóbb. A két megoldás ötvözése esetén az elpazarolt, vagyis azN−1 darab feletti üzenetszám nem növekszik meg túlzottan.

Ezek az algoritmusok bármilyen tartalmú üzenet továbbítására használhatóak. Speciálisab- bak azok az eljárások, amelyeket kifejezetten a globális keresés megvalósítására hoztak létre.

Ezekben az üzenetszórás megszakad, ha egy adott egyed a keresési kérésre tud válaszolni [27], vagy esetleg az üzenetszórás átmérőjét korlátozzák a csomagokhoz rendelt TTL (time to live) mezőkkel, amelyeket minden továbbításkor csökkentenek [28].

Látható, hogy az üzenetszórás az átfedők címterének megfelelőpartícionálásával és fele- lősök kijelölésévelN−1 üzenettel elvégezhető. A partícionálás módja az üzenettovábbítás idejét módosítja. A gyors üzenetszórás szempontjából előnyös az a partícionálás, amelyben minden egyed legfeljebb O(logN) továbbítás után megkapja az üzenetet. Egyéb esetekben az üzenetszórás az egész átfedőre nézve lassabb lesz. Az egyes algoritmusok leginkább különböz- nek, hogy a kilépő, kieső, esetleg az üzenetszórás közben újonnan belépőegyedeket milyen megbízhatósággal képesek kezelni, illetve ezek kezelése mekkora többlet költséggel jár.

2.4. P2P átfed ő k szimulációja

A P2P átfedők útválasztását, algoritmusait háromféle eszközzel lehet igazolni és jellemezni : matematikai bizonyítással, szimulációval és kísérletekkel [29].

(19)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 16

Szimulátor Architektúra, P2P átfedők,

fizikai hálózat modellje megjegyzések

NS-2 csomag alapú Gnutella

TCP/IP hálózat, hálózati és fizi- kai réteg

a célhoz képest alacsony szintű OverSim átfedőalapú (strukturált és nem

strukturált is)

Chord, Pastry, Kademlia stb.

két modell, egy lassú, pontosan konfigurálható, és egy egyszerű- sített

gyakran használt, részletes doku- mentációval

P2PSim átfedőalapú, diszkrét idejű, ese- ményvezérelt

Chord, Accordion, Kademlia stb.

adatbázis, GT-ITM, véletlensze-

rű, Euklideszi alapú késleltetés kevés dokumentáció, általában a forráskódot kell módosítani GnutellaSim csomag alapú, protokollcentri-

kus

Gnutella

GT-ITM Kimenet NS-2 által használt for-

mátumban Overlay Wea-

ver

csak strukturált átfedők programozható valós TCP/IP kapcsolatokkal,

vagy szimulált

főcélja algoritmusok tesztelése

2.4. táblázat. P2P szimulátor alkalmazások

Az algoritmusok bonyolultsága miatt, és az átfedők működés közbeni peremfeltételeinek nehéz modellezése miatt a matematikai megközelítés ritkán, általában csak túlzott egysze- rűsítések mellett alkalmazható [30]. A valós rendszerek komplexitását ezekben az esetekben gyakran el kell hanyagolni. Ha a matematikai megközelítés túl bonyolult, kísérletek is végez- hetők a valós rendszereken. Azonban a valós P2P hálózatok gyakran 105–106 egyedszámmal rendelkeznek, ilyenkor a kísérlet legtöbbször kivitelezhetetlen. A kísérlet paramétereinek módosítása, pl. a protokoll változtatása pedig bonyolult és időigényes. A megvalósult, valós átfedőn folyó kísérletek nagy része a Planetlab hálózaton történt [31].

A szimulátorok ezeket a hátrányokat próbálják meg kiküszöbölni. Az átfedők szimulációja ugyanakkor nem független a matematikai és a kísérleti megközelítéstől. Amennyiben lehetsé- ges, a matematikai modelleket szimulációval kell igazolni, a szimulációs eredményeket pedig valós hálózatokon ellenőrizni [29].

A P2P átfedők szimulációja többféle absztrakciós szinten történhet. Ennek megfelelően az átfedőalapjául szolgáló fizikai hálózat egyes részeit, esetleg magának az átfedőnek vagy az algoritmusnak egyes részeit a szimuláció teljesítménye érdekében el kell hanyagolni. Az irodalomban ismertetett szimulátorok különféle absztrakciós szinteken dolgoznak, illetve

(20)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 17

0 10 20 30 40 50 60 70 80 90 100

0,01 0,1 1 10

egyedek aránya [%]

késleltetés [s]

King data set Mainline BT

2.6. ábra. Egyedek közötti késleltetési idők P2P átfedőkben

különféle átfedőhálózatokat tudnak szimulálni. Ezeket a 2.4. táblázat áttekinti. Nem ritka, hogy a létező szimulátorok egyike sem felel meg egy adott feladathoz ; a kutatók ilyenkor saját szimulátor motorok írásával igyekeznek igazolni az általuk kidolgozott eljárásokat. Egy kimutatás szerint a P2P hálózatokkal foglalkozó közlemények szerzőinek kétharmada saját fejlesztésűszimulátorral dolgozik [32].

A P2P átfedők saját szimulációs motorral történővizsgálatához az irodalomban rendel- kezésre állnak valós hálózatokon mért adatok, például késleltetési időadatbázisok. Ezek az Interneten elérhetőek. A legismertebb ilyen adatbázis aKing data set [33], amely 1740 cso- mópont között páronként mért késleltetési időket tartalmazza. További adatok érhetőek el a Crosby-Wallach szerzőpáros cikkében [17, 34], amelyet a Mainline BitTorrent átfedőkön végzek kísérletekből nyertek. A két eloszlás jelentősen eltérőadatokat tartalmaz, ahogyan az a 2.6. ábrán is látható. A King nevűmérési eljárásnál az 1 s-nál hosszabb időket nem vették figyelembe, vagyis a eloszlás összes késleltetési ideje 1 s-nál rövidebb. A Mainline BitTorrent átfedőből származó adatok esetén pedig még 18 s-os késleltetést is tartalmaz az eloszlás ; a szerzők szerint azért mérhetőilyen hosszú válaszidő, mivel a BitTorrent egyedek az elsődleges céljukat, a fájlok továbbítását, és az ahhoz kapcsolódó hálózati üzeneteket előnyben részesítik az átfedőkarbantartási üzeneteihez képest [17].

(21)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 18

2.5. Betörésérzékel ő rendszerek

Az eredetileg a tudományos munkát segítőInternet ma már a kereskedelem, a szórakoztató ipar, a sajtó, a kormányzatok, és nem utolsó sorban magánemberek mindennaposan használt eszközévé vált. Az információ értéke, az elektronikus kereskedelemben történő hatalmas pénzmozgások és a hálózatra kötött számítógépek hatalmas együttes erőforrása miatt minden- napossá vált az Interneten a bűnözés is. A hálózatba kötött adattárolókat nem csak fizikailag kell védeni az adatlopások és egyéb károkozások ellen, hanem a hálózatról érkezőtámadások- tól is védenünk kell azokat. Az értekezés ezen része az irodalomban ismertetett betörésérzékelő eljárásokat ismerteti röviden.

2.5.1. A betörésérzékelés célja

A hálózatra kötött számítógépeket többféle céllal támadhatják meg : anyagi vagy egyéb előnyök megszerzése vagy elismerés kivívása céljából [35]. A támadók eltérő céljai és a védendő célpontok jellegzetességei miatt miatt a hálózatra kötött gazdagépeket (host) több oldalról kell védenünk. Ennek megfelelően a betörésérzékelésnek is többféle célja lehet.

Adatszivárgás elleni védelem. Adatszivárgásnak nevezzük, amikor a számítógépen tárolt információ illetéktelen kézbe, egy külsőtámadóhoz kerül. Az adatkiszivárgásnak három főmódja lehet :

1. a támadó hozzáférést szerez a számítógéphez,

2. a hálózati forgalom megfigyelésével, lehallgatásával, illetve

3. a számítógép saját, feljogosított felhasználója általi visszaélés [36].

Erőforrások védelme. Az adatok védelmén kívül az erőforrások védelméről is gondoskodni kell. Az erőforrások alatt nem csak a hardvert értjük : jellegzetes támadási forma például, amikor a támadó a nyomozás megnehezítése végett egy adott gazdagép felett megszerzi az irányítást, hogy arról indítson további támadásokat más célpontok felé. Így a láncban következőmegtámadott gazdagép a támadás forrásaként már tulajdonképpen egy áldozat gazdagépét látja.

Adatintegritás, rendszerintegritás védelme. A tárolt adatot nem csak ellopni, hanem meg- változtatni is lehet. Egy gazdagép az információ módosítása igen alkalmas gazdasági károkozásra. A rendszerintegritás fogalma ezzel szemben a gazdagép viselkedésére vonatkozik : a kiszolgáló a rendszergazda szándékai szerint működik-e. A támadó meg- változtathatja, akadályozhatja annak működését, szintén károkozás céljából.

Újabban már nem csak kiszolgálókat és asztali, személyi számítógépeket kötnek az Internet- re, hanem modernebb mobiltelefonok is rendelkeznek csatlakozási lehetőséggel. Ezekre is megjelentek már a kártevőprogramok [37].

(22)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 19

típus definíció

vírus Olyan program, amely saját másolatát valamely másik program- ban vagy dokumentumban helyezi el. Ezek önálló programként nem működnek.

féreg Önmagát sokszorosító program, amely legtöbbször hálózaton ke- resztül terjed. A megtámadott gazdagép biztonsági réseit használja ki, és automatikusan terjed.

kémprogram Másik programmal együtt telepített rosszindulatú program. En- nek telepítéséhez tulajdonképpen a felhasználó beavatkozására van szükség, még ha tudta nélkül történik is ez. A program a felhasználói tevékenységét monitorozza, pl. jelszavakat gyűjt.

trójai program Egy program kinézetét, esetleg szolgáltatásait imitáló program, amely rosszindulatú tevékenységet is végez.

2.5. táblázat. Rosszindulatú programok (malware) típusai

típus definíció

backdoor Hátsó kapu. A fertőzött gépen futó rosszindulatú program kiszol- gálóként üzemel, amelyhez csatlakozva egy irányító program vagy személy parancsokat küldhet annak.

botnet Rosszindulatú programok a megfertőzött számítógépekből akár több millió egyedből álló hálózatot építenek. A fertőzött gépek együttes ereje (pl. sávszélessége) általában egy irányító személy kezében van.

2.6. táblázat. Rosszindulatú programok kapcsolattartása készítőikkel

2.5.2. A betörések jellemzői

A támadók céljai alapján a támadások módja eltérő lehet. Az elérendő cél a módszereket meghatározhatja. A módszertől pedig függenek a támadás észlelhetőjelei, amelyeket atámadás manifesztációjánakis szoktunk nevezni [38].

Azadatkiszivárgásesetében maga az adat általában a támadó számára ismert helyen, ismert alhálózaton található. Ilyen esetben a támadó általában biztonsági rést keres az alhálózaton. Ha oda be tud törni, onnan már könnyebben eljut arra a gazdagépre, amelyen az adat ténylegesen található. Alhálózatokon belül ugyanis általában a munka megkönnyítése érdekében gyengébb védelmi megoldásokat alkalmaznak, mint az alhálózat és a világ többi része között [39]. Ebben az esetben a kívülről kivitelezett támadás jellegzetessége, hogy gyakran a támadó egy élő személy (nem automatizált program), és a támadás közvetlen célja az alhálózat biztonsági résének, réseinek módszeres felderítése [40].

Léteznek automatikusan működőtámadó szoftverek is. A hálózaton terjedőrosszindulató

(23)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 20 programokat viselkedésük, a fertőzés és a működés módja alapján több csoportba sorolják.

Ezek közül az értekezés témájához kapcsolódóakat mutatja a 2.5. és a 2.6. táblázat.

Gyakoriak az Interneten a különféle módon terjedőférgek (computer worm). Ezek kisebb része céltalan : a készítőik csak azért írták őket, hogy programozási tudásukat bemutassák.

Nagyobb részük viszont kifejezetten olyan szándékkal fertőzi meg az általában otthoni felhasz- nálók számítógépeit, hogy azokrahátsó kapukat(backdoor) helyezzen el. Ez lehetővé teszi azt, hogy később a fertőzött számítógépre be lehessen távolról jelentkezni, irányítani lehessen azt (compromised host), még akkor is, ha az eredeti biztonsági rést, amelyen keresztül a kártevő fertőzött, már kijavították [41].

A terjedés irányát a férgek többféleképpen választják ki. Vannak, amelyek egyszerűen hálózati címek véletlenszerűgenerálásával oldják ezt meg, de egyesek előnyben részesítik az alhálózaton belüli terjedést [39, 42].

A férgek egy csoportja hálózatot hoz létre, amelyet botnetnek neveznek [43]. Egy bot- net akár több millió eltérített számítógépből is állhat. Ezek összesített erőforrásával, főként a hálózati kapacitásukkal egy központi irányító személy rendelkezik (botmaster), aki bér- beadja azt másoknak. Leggyakrabban levélszemét (spam) küldésére kap megrendelést. A milliós egyedszámú hálózat levélszemétküldőkapacitása akár naponta 60-70 milliárd levél is lehet [44].

Az eltérített gépek irányítását ritkán végzik központi szerveren keresztül. Ennél gyakoribb, amikor azok internetes csevegőhálózatra kapcsolódva (IRC, Internet Relay Chat) kapják a parancsokat [45, 46]. Ez számukra előnyös, mivel a protokoll egyszerű, könnyen implementál- ható, az IRC hálózatok pedig általában regisztráció nélkül igénybe vehetőek. Újabban azonban ehelyett a botnetet létrehozó szoftverbe egy alkalmazási szintű hálózatot létrehozó modul is kerül, amely P2P hálózatot épít [4, 47]. Ezek a szoftverek is általában Windows operációs rendszeren futnak, mert az a legelterjedtebb az otthoni felhasználók körében.

Léteznek Unix alapú férgek is. Elterjedtek azok az SSH férgek [45], amelyek szokásos, esetekben adott Unix rendszerekben alapértelmezés szerint meglévőfelhasználói neveken próbálnak belépni (root, mysql, info, admin, guest, paul, testing stb.) Ezek az adminisztrátori és felhasználói figyelmetlenséget használják ki, a túl egyszerűnek megválasztott vagy esetleg teljesen hiányzó jelszavakat. A terjedésük jellemzővonása, hogy egy kiválasztott gazdagépen több száz, ezer felhasználói név–jelszó párt próbálnak ki. Ezek a próbálkozások nem csak egy konkrét gazdagépet érintenek, hanem egy alhálózat szomszédos kiszolgálóit is. Ebbe a csoportba tartozik az elsőiPhone féreg is, az iKee [37].

2.5.3. A betörésérzékelés lehet ő ségei

A betörésérzékelés (intrusion detection, ID) legkorábbi módja a felhasználói tevékenység megfigyelése volt [48]. Ekkor a szokatlan viselkedésekre tudtak felfigyelni. Ilyen pl. ha egy felhasználó szabadságon van, mégis be van jelentkezve. Az ilyen betörésérzékelés hátránya, hogy alkalmi jellegűés nem skálázható. A betörési kísérletek gyakorisága és változatos for- mája miatt szükségessé vált azok automatikus érzékelése. Ennek legfőbb akadálya az, hogy nem minden betörés jár együtt önműködően észlelhető, arra utaló jelekkel. Egy rendszer feljogosított felhasználója általi visszaélés például nagyon nehezen észlelhető. Manapság a betörésérzékelésnek három főformáját használják :

(24)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 21 Forgalmi adatminták vizsgálata. Ennek lényege, hogy a gazdagépek hálózati forgalmában bizonyos mintákat, adatcsomagokat keres az érzékelő rendszer. Ismert betörési mó- dok esetén ez hatékony és pontos lehet. Hátránya viszont, hogy csak előzetesen ismert támadási formákra alkalmazható.

Alkalmazási szintűhálózati protokollok vizsgálata. Ennél a módszernél az IP forgalomban nem csak mintaillesztést végeznek, hanem az alkalmazások által használt protokollokat megértve elemzik azokat. Az érzékelőaz alkalmazáshoz hasonlóan megérti a protokollt, de a feladata csak annyi, hogy a nem megengedhetőbejövőés kimenőadatokat vizsgálja.

Rendellenességek felismerése (anomáliák érzékelése). Lényege, hogy a normális, üzemi körülményektől eltérő működést érzékelik. Előnye az előzőekkel szemben az, hogy nem kell előre ismerni a támadás kivitelezésének módját. Így akár egy újfajta, az érzéke- lőrendszer konfigurálásakor még ismeretlen támadás is detektálható. Azonban ennél gyakoribbak a hamis riasztások, mint az előbbieknél.

2.5.4. A betörésérzékelés helye

A betörésérzékelőrendszereket működésük helye szerint két alapvetőcsoportra osztjuk : – önállóan működőrendszerek (HIDS, Host-based Intrusion Detection System) és

– a hálózati betörésérzékelőrendszerek (NIDS, Network-based Intrusion Detection Sys- tem) [49].

A legkorábbi automatikusérzékelők(sensor) egyedileg működtek, nem hálózatba kötve [50].

A betörésekre utaló gyanús jeleket önmaguk érzékelték és dolgozták fel ; ha esetleg egy automa- tikus védelmi rendszer is kapcsolódott hozzájuk, az is csak az adott gazdagépet védte. Ennek a kialakításnak a hátránya, hogy a tapasztalatok, amelyeket az egyes érzékelők gyűjtenek, mindig helyben maradnak. A tapasztalatokat a különálló, nem osztják meg egymással, és így csak olyan betörések érzékelésére van mód, amelyeknél a támadás manifesztációja már helyben észlelhető.

A hálózatba kötött érzékelés ezzel szemben lehetőséget ad arra, hogy a kiterjedt, hálózati szintűtámadásokat is érzékelni lehessen. Ennek nehézsége abban áll, hogy az érzékelőhálózat növekedtével a feldolgozandó adatmennyiség is rohamosan növekszik [51].

2.5.5. Az érzékelt események közötti kapcsolat felismerése

Az önállóan működőbetörésérzékelőrendszerek az egyes gyanús eseményekről szóló figyel- meztetéseket, bár logikai kapcsolat van közöttük, egymástól függetlenül küldik. Ha egyszerre sok esemény történik, nem csak a valós és a hamis jelentések keverednek, de a feldolgozan- dó adat is kezelhetetlen mennyiségű lehet [51]. Az ember számára már nem feldolgozható mennyiség az elosztott esetben az adatok gépi, automatikus kezelését teszi szükségessé.

A tapasztalatok hálózaton történő megosztása két fő kérdést vet fel. Az első, hogy az eltérő helyen keletkező tapasztalatok közötti összefüggéseket (attack correlation) hogyan ismerjük fel. A második pedig az, hogy hogyan szervezzük meg ezeknek a hálózaton történő

(25)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 22 megosztását : milyen felépítésűlegyen az a hálózat, amelyen megbízhatóan elvégezhetőennek a nagy mennyiségűadatnak a továbbítása akkor is, ha az azt alkotó egyedek esetleg éppen támadás alatt állnak.

Az elemi események közötti kapcsolat felismerésére három módszert tárgyalnak az iroda- lomban [52].

– Az elsőcsoportba tartozó módszerek az elemi eseményeket megegyező tulajdonságaik alapján csoportosítják ; például azonos forrás cím vagy cél port. Ezek sokféle támadás esetén hatékonyak lehetnek, de az egyes események közötti ok-okozat összefüggést nem tudják felismerni. Ezen alapszik a SPICE rendszer [53] és így működik a CIDS is [54].

– A második lehetőség az egyes események előre definiáltforgatókönyvbetörténőillesztése.

Ennek megvalósítására fejlesztették ki a LAMBDA nyelvet [55], illetve használnak az adatbányászatból átvett módszereket [56]. Ezek a módszerek csak ismert betörésfajták esetén működnek, vagyis akkor, ha a forgatókönyveket előzőleg szakértők megalkották.

– A harmadik lehetőség a támadásokelőkészületeinek és következményeinekfeltérképezése.

Az előkészület egy olyan feltétel, ami a támadás sikerességéhez szükséges ; a következ- mény a támadás eredménye, ha az sikeres volt. Ha egy adott esemény előfeltétele létrejött egy előzőleg érzékelt esemény következményeként, akkor összefüggőnek tekinti az ilyen módon működőrendszer az eseményeket. A legkorábbi ilyen elven működőrendszer a JIGSAW volt [57]. Hátránya, hogy egy adott esemény érzékelésének elmulasztása esetén nem veszi észre az azt megelőző és az azutáni esemény közötti kapcsolatot. További hátránya lehet, hogy nem veszi figyelembe azokat a támadásokat, amelyek nem további, lehetséges eseményeket készítenek elő, és a sikertelen támadásokat sem.

Az egyes érzékelt események egyszerűösszekapcsolását az a gyakorlati probléma is aka- dályozza, hogy heterogén kimenetekkel rendelkeznek. Eltérővédendőrendszereknek eltérő sebezhetősége lehet ; amelyik támadás az egyik helyen a rendszert teljesen megbéníthatja, az egy másik rendszerre nézve esetleg ártalmatlan [58]. Az eltérőérzékelőszoftverek kime- nei között adatformátumbeli eltérések lehetnek, ami az összesített feldolgozást nehezíti. Az érzékelt események módszeres leírására fejlesztették ki az objektumorientált, XML alapú IDMEF üzenetformátumot [59], amelyet a széles körben elterjedt Snort [60] és Prelude [61]

rendszerekben is használnak.

2.5.6. A betörésérzékel ő k közötti kommunikáció

Az eltérőérzékelési pontokon keletkezőadatok feldolgozásához kézenfekvőmódszer lehet az adatok összegyűjtése és központi feldolgozása. A központi feldolgozó helyen így elméletben minden összegyűjthetőinformáció rendelkezésre áll ahhoz, hogy ha a betörés elvben érzékel- hető, akkor az érzékelést gyakorlatilag is elvégezzük – vagyis hogy a rendelkezésre álló adatok alapján a támadás tényét felismerhessük. Ennek a megoldásnak azonban két akadálya van :

1. A feldolgozandó adatmennyiség egy nagy forgalmú hálózat esetén már az önálló betö- résérzékelőrendszernél is jelentős. Egy kiterjedt érzékelőhálózat által generált adatok mennyisége a hálózati forgalom, és a feldolgozáshoz szükséges számítási kapacitást tekintve hatalmas.

(26)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 23 2. A központosított adatgyűjtés és feldolgozás továbbá egyetlen hibapontot (SPOF, single point of failure) jelent az elosztott érzékelőrendszernél. Előfordulhat, hogy egy támadó ki- fejezetten az érzékelőrendszert próbálja megbénítani [62]. A tapasztalatok megosztására ezért érdemes nem központosított, hanem elosztott hálózati architektúrát használni [40].

Az érzékelt eseményeket ezért érdemes elosztott rendszerben feldolgozni. Erre a feladatra az irodalomból a következőszakaszokban bemutatott eljárások ismertek.

Nem strukturált P2P átfedőalapú érzékelők

ADOMINO rendszercélja, hogy különbözőtípusú támadásokat, főleg vírusok és férgek aktivi- tásának érzékelését lehetővé tegye [63]. A hatalmas feldolgozandó adatmennyiséget három szintű hierarchikus, de nem strukturált P2P hálózattal kezelik. Ez részleges megoldást ad az érzékelőegyedek megbízhatatlanságára is. A legalsó szintű, kevésbé megbízható egyedek- től csak óránkénti, vagy napi támadási statisztikákat fogadnak, például eseményszámokról, gyakoriságokról és típusokról szóló jelentéseket ; ennél pontosabban specifikáltakat nem.

A DOMINO rendszerben a méréseket, vagyis a támadások érzékelését nem csak valós hálózati címeken végzik, amely címekhez működő, kifelé szolgáltatásokat nyújtó kiszolgálók tartoznak ; hanem olyan címeken is, amelyekhez nem. A szerzők tapasztalata szerint a nem létezőcímekre érkezőbejövőtámadások sokkal nagyobb valószínűséggel jelentenek támadást.

Ennek oka a vírusok és férgek fertőzési mechanizmusában van ; azok ugyanis véletlenszerűen választják meg a támadás célpontját, gyakran olyan hálózati címet generálva, amelyhez nem is tartozik gép. A nem létezőcímekre irányított csomagok érzékelésével a hamis pozitív riasztások száma csökkenthető.

APROMIS védelmi rendszer (és elődje, a Netbiotic) a részben centralizált átfedőhálózatot építőJXTA keretrendszert használja az érzékelt támadások adatainak megosztására [64]. A PROMIS rendszerbe beépülőegyedek a többitől információt kapnak az érzékelt gyanús esemé- nyek számáról és az alapján automatikusan állítják át az operációs rendszer és a rendszerben telepített webböngésző biztonsági szintjét. Ez az eljárás általános védelmet ad a károkozó programok ellen, de egyben csökkentheti is a használhatóságot. A megközelítés hasonló a hétköznapi életből ismert járványok megelőzéséhez.

AzIndrarendszer arra a feltevésre épül, hogy a támadók egy adott biztonsági rést kihasz- nálva több számítógépet is megtámadhatnak [40]. Ha a kísérletet érzékelve az Indra rendszer résztvevői értesítik egymást, azzal a saját védelmüket erősíteni tudják. Az Indra rendszerben így a résztvevők konkrét, ismert támadók ellen tudnak védekezni.

Struktúrált P2P hálózatra épülőbetörésérzékelőrendszerek

ACIDSrendszer a Chord DHT-t használja a betörések elosztott érzékelésére [54]. Az adatok kezelése az ún. „publish-subscribe” elven működik. Ez azt jelenti, hogy az egyes egyedek egy listában tárolják az általuk gyanúsnak vélt IP címeket, és az ezekről szóló jelentésekre feliratkoznak (subscribe) a hálózaton. Ha elegendőszámú egyed iratkozott fel egy adott IP címmel kapcsolatos eseményekre, akkor támadónak tekintik azt, és értesítik a feliratkozott egyedeket. A DHT felhasználásával elvben a betörésérzékeléshez kapcsolódó feldolgozási mű- veletek okozta terhelés egyenletesen oszlik el a résztvevők között, de adott, konkrét támadótól

(27)

2. FEJEZET. IRODALMI ÖSSZEFOGLALÓ 24 származó többszörös betörések esetén a feldolgozó egyed könnyedén leterhelhető. Mivel a Chord rekurzív útválasztást használ, ez a hálózat többi részét is ugyanannyira terheli.

ABotSpotnevűrendszer az eddigiektől egészen eltérő, nem konkrét támadó ellen próbál meg védekezni, hanem botnetek érzékelését tűzte ki célul [65]. A szerzői egy új sémát dolgoztak ki, amelynek segítségével a rendszer a NetFlow formátumban gyűjtött adatoknak egy kis részéből is képes felismerni egy botnet működését a hálózaton [66]. Az adatokat egy DHT-ben tárolja el, így az érzékelés nem kelt nagy hálózati forgalmat. A BotSpot további előnye, hogy a használói számára névtelenséget nyújt ; az átfedőbe küldendőadatoknak nem kell tartalmaznia információt a felhasználók (pl. egy intézmény) alhálózatáról vagy annak felépítéséről.

ASpamwatchnevűrendszer nem betörések, hanem levélszemét (spam) szűrésére alkalmas, és a Tapestry hálózatra épül [67]. A program egy levelezőalkalmazásba épülő bővítmény.

Az egyes, felhasználók által levélszemétként megjelölt levelek adatait a rendszer egy DHT- ben tárolja ; más felhasználóknál így ugyanaz az üzenet automatikusan törölhető. A DHT alkalmazása miatt a lekérdezés gyors és csak kis hálózati forgalmat generál. Sajnos a levélsze- metet küldőprogramok gyakran alkalmazzák azt a módszert, hogy minden küldött levélben egy-két karaktert megváltoztatnak ; ez a DHT-kban alkalmazott hasító függvények miatt a levelek összehasonlítását lehetetlenné teheti, és nagyban lecsökkenti a Spamwatch rendszer a hatékonyságát.

(28)

3. fejezet

Betörésérzékelés strukturált P2P átfed ő n

1. tézis. Kidolgoztam egy hálózati biztonsági eljárást (Komondor), amellyel a hálózat eltérő pontjain történőbetörésérzékelések összesített tapasztalatait felhasználva javítható a gazdagépek védelme. [S1, S4, S7, S6, S8, S13, S14, S15]

1.1. altézis. Kifejlesztettem egy módszert, amellyel a különbözőhelyeken érzékelt betörési kísér- letekből nyert tapasztalatok összegezhetők, és azokból egy értékelési eljárással elosztott adatbázis építhető. Bebizonyítottam, hogy a kidolgozott eljárás hatékony működésének feltétele, hogy az egyes csomópontokban működő példányok közötti kommunikáció egy DHT típusú átfedő hálózatra épüljön. [S1, S2, S4, S10, S11, S18, S19, S20, S21, S23]

1.2. altézis. Igazoltam, hogy a DHT átfedőre épülőbetörésérzékelés során létrejövő hálózati forgalmat a Kademlia hálózat hatékonyabban kezeli, mint az egyéb ismert DHT átfedők. [S8, S10, S15, S21, S22]

A 2.5.4 és 2.5.5. szakaszban bemutatott hálózati betörésérzékelőrendszerek működése azon alapul, hogy a hálózat több pontján érzékelt események között összefüggések lehetnek, és ezek felderítése a hálózatot érőtámadások felismerésére ad lehetőséget. Az érzékelők hálózatba kötése azonban terheléselosztási és megbízhatósági problémákat vet fel. Gyakran még az egy érzékelőtől érkezőadatok feldolgozásához szükséges számítási kapacitás is jelentős. Az elosztott betörésérzékelés hatékonyan ezért nem működhet központosított feldolgozással.

Ez a fejezet egy olyan eljárást mutat be, amellyel a betörésérzékelés során keletkezőnagy mennyiségű adat hatékonyan feldolgozható. Az eljárás lényege, hogy az érzékelő egyedek egy strukturált P2P alapú átfedő hálózatot hoznak létre, amely a betörések adatait tárolja.

Ezzel az érzékelés és feldolgozás okozta terhelés hatékony elosztása valósítható meg. A P2P hálózatok nagyfokú stabilitása biztosítja, hogy a rendszer működőképes maradjon akkor is, ha az egyes résztvevői távoznak vagy kiesnek az átfedőből. A nagyfokú összekötöttség és az elosztott feldolgozás miatt a rendszer az egyetlen hibapont problémáját is megkerüli.

Az érzékelés és az adatok megosztása okozta hálózati terhelés tovább csökkenthető a bemutatott eljárás szerint azzal, hogy az érzékelő rendszert egy Kademlia alapú átfedőre

25

Hivatkozások

KAPCSOLÓDÓ DOKUMENTUMOK

Ám mivel azt állította, hogy a delfin ugyanaz volt, mely Ariónt a hátán hordozta (δ̣ελφὶς … Ἀριόνιο[ς: 2), úgy a költői fikció kedvéért azt is

fél, negyed, nyolcad, tercmenet, triola, tizenhatod, minden hanglapon dupla ütés. – 8 ütem) glissando-s gyakorlat következik, az elsőben néhány ütés van csak, a többiben

Az eredmények azt mutatják, hogy a becsült létszám lényegesen kisebb mint a számított, így például a gímszarvas létszáma számításaink szerint 2004- ben 15 752 egyed

élet tevékeny és értékes munkása, a belga Nicolai statisztikai Ödön rövid idővel a Nemzetközi Statisztikai Inté-' zet kairói kongresszusa előtt, -— amelyen

séggel remélhetjük, hogy az anyagi érdekek további kifej lésével s a mostani társadalmi pezsgésnél fogva ilyes valami fog keletkezni, mert a haladásnak a

hold (nyolcad telek), más abaúji és borsodi községekben egy kvárta (negyed) telek után járt egy legelőjog. Őrh a- lomban és Nádújfaluban az emlékezet szerint egy házhely

Az egyéni birtoklási skála szóródása ugyan jóval kisebb, mint a szőlőföldeké - fél, illetve két szekérre való, vagyis fél és két hold között mozgott -, ám

A felsőoktatás más célkitűzések mentén szerveződik mint a vállalati képzés, és.. adást említettem, de az e-learning-es anyagok pl. jelenléti képzésbe történő beépíté-