MAIPAN – middleware személyi hálózatokban mûködô alkalmazások összekapcsolására RÓNAI MIKLÓS AURÉL, FODOR KRISTÓF, BICZÓK GERGELY, TURÁNYI ZOLTÁN, VALKÓ ANDRÁS Ericsson Magyarország Kft, Traffic Lab {Miklos.Ronai, Kristof.Fodor, Gergely.Biczok, Zoltan.Turanyi, Andras.Valko}@ericsson.com
Kulcsszavak: PAN, mindenütt jelenlévô számítástechnika, hozzáférés-vezérlés, dinamikus kapcsolatrendszer-kezelés Dinamikusan változó személyi hálózatok (Personal Area Network – PAN) létrehozására cikkünkben a MAIPAN elnevezésû middleware megoldást javasoljuk. A middleware eltakarja a PAN szétdaraboltságát, valamint az eszközök konfigurációját, és a hálózatot egységesen, egyetlen számítógépnek mutatja az alkalmazások felé. A megoldás lehetôvé teszi a PAN-ban több eszközön mûködô elosztott alkalmazások egyszerû összekapcsolását, valamint a PAN konfiguráció változásakor az adatfolyamok transzparens átirányítását. A javasolt middleware a különbözô eszközökön futó alkalmazások által nyújtott szolgáltatások ki és bemeneti csatlakozási pontjait virtuális csatornák létrehozásával köti össze. A csatornák szükség esetén újrakonfigurálhatók, ha a hálózat felépítése vagy a felhasználói igények megváltoznak. Az irodalomban található megközelítésekk e l szemben egy olyan megoldást ajánlunk, ahol a szolgáltatások között kiépített kapcsolatrendszer dinamikusan menedzselhetô, valamint szorosan egybe van építve egy újfajta jogosultság kezeléssel.
1. Bevezetés A vezetéknélküli terminálok, mint például okostelefonok, digitális személyi asszisztensek (Personal Digital Assistant – PDA) és laptopok növekvô száma miatt egyre inkább szükség van arra, hogy személyi hálózatokat egyszerû módon lehessen felállítani, valamint be- és újrakonfigurálni. Cikkünkben azzal foglalkozunk, hogy hogyan lehet személyi hálózatokban egy dinamikusan változtatható, de egységes számítástechnikai környezetet létrehozni, mely kiterjed az egymással összekötött vezetékes és vezetéknélküli, valamint fix és mobil eszközökre. A MAIPAN middleware-t javasoljuk – ami az alkalmazások alatt és a hálózati réteg fölött helyezkedik el –, mely megoldás eltakarja a személyi hálózatban mûködô különálló eszközöket, és az ezeken futó alkalmazások képességeit úgy mutatja, mintha azok mind ugyanazon a számítógépen lennének elérhetôek. Ezzel egy olyan egységes programozási platformot nyújt, amely lehetôvé teszi a személyi hálózatok egyszerû felépítését és a PAN-ban futó alkalmazások dinamikus összekapcsolását, valamint szétválasztását. Alkalmazás programozók, akik a middleware által nyújtott egységes alkalmazás programozói interfészt (API) használják, úgy fejleszthetnek szoftvert, hogy nem kell foglalkozniuk a különbözô PAN konfigurációkkal és dinamikákkal. Bizonyos képességek meglétét tételezhetik fel, de figyelmen kívül hagyhatják azt, hogy ezen képességeket egy bizonyos eszközök futó egyetlen alkalmazás vagy több eszközön futó több alkalmazás halmaz nyújtja. A programozóknak csak a middleware-be kell regisztrálniuk alkalmazásaik ki- és bemeneteit, és nem kell törôdniük azzal, hogy milyen eszközök vagy alkalmazások fognak ezekhez a csatlakozási pontokhoz kapcsolódni, valamint a programjaikat használni. LX. ÉVFOLYAM 2005/11
A bemutatásra kerülô middleware jogosultság, valamint rugalmas és átruházható kapcsolatrendszer kezelést is tartalmaz. A middleware-ben van néhány intelligens funkció, mely hatékonyabbá teszi az ember számítógép kapcsolatot (Human Computer Interaction – HCI). Elméletben bármely szolgáltatás-felderítési, hálózati vagy adatkapcsolati megoldás használható a MAIPAN-nel. Az 1. ábrán PAN alkalmazásra látható egy példa. Tegyük fel, hogy egy digitális személyi asszisztens felhasználó, akinek a készülékén a MAIPAN fut, belép egy szobába ahol hangszórók vannak a sarokban, melyek szintén MAIPAN-t futtatnak. Ha a felhasználó úgy dönt, hogy zenét szeretne hallgatni, de se mp3 fájljai, se mp3 lejátszója nincsen, akkor bekapcsolva a PDAját lekérdezheti, hogy milyen eszközök és szolgáltatások érhetôk el a szobában. Ekkor elôször is – függetlenül MAIPAN-tól – a PDA hálózati rétege kapcsolatokat hoz létre a szobában lévô eszközökkel és a szolgáltatás-felderítô protokollja pedig körbekérdez, hogy milyen szolgáltatások mûködnek a környéken. Ezt követôen a felhasználó a MAIPAN vezérlôvel bekonfigurálhat egy olyan személyi hálózatot, amely a PDA-t, a sarokban lévô hangszórókat, az mp3 lejátszót és a hálózaton elérhetô fájlszervert tartalmazza. 1. ábra Zenehallgatás
33
HÍRADÁSTECHNIKA MAIPAN létrehozza a szükséges virtuális kapcsolatokat, azaz a fájlszervert az mp3 lejátszó bemenetére, az mp3 lejátszó kimenetét a hangszórókra és az mp3 lejátszó vezérlô bemenetét a PDA-ra köti. Ettôl kezdve a felhasználó a fájlszerveren ki tudja választani azokat a zenéket, amiket hallgatni szeretne és a PDA-jával utasítani tudja az mp3 lejátszót, hogy a zenét a hangszórókon szólaltassa meg. Az ábrán a nyilak az adatáramlás irányát mutatják. A cikk hátralévô részében elôször áttekintjük az irodalmat, majd a következô szakaszban bemutatjuk a MAIPAN middleware-t, végezetül pedig összefoglaljuk munkánkat.
2. Irodalom-áttekintés Mark Weiser a mindenütt jelenlévô számítástechnika (ubiquitous computing) koncepcióját a 90-es évek elején alkotta meg [1,2]. Tíz évvel késôbb, Satyanarayanan Weiser víziójának kihívásaival foglalkozott [3], és bevezette a mindent átható számítástechnika (pervasive computing) fogalmát, mely többek között az elosztott rendszerek, a mobil számítástechnika és az okos területek (smart spaces) keveréke. A middleware-ek lényeges részei mind a mindenütt jelenlévô, mind a mobil számítástechnikának. Mascolo és társai [4] többek között azt feszegetik, hogy a hagyományos middleware rendszerek (mint például a CORBA [5]), miért nem annyira megfelelôek a mobil környezetben, valamint arról írnak hogyan is kell egy mobil számítástechnikai middleware-t tervezni. Másik kulcskérdése az ilyen mindenütt jelenlévô rendszereknek: a biztonság. Chandrasiri és társai [6] a személyi biztonsági területek használatát javasolják, mely terület a felhasználó személyes eszközeibôl áll, valamint különféle biztonsági aspektusokat elemez a PAN-okkal kapcsolatban. Manapság számos projekt foglalkozik ezekkel a kutatási területekkel, ezek közül az alábbiakban kiemelünk néhányat. A területrôl és az alábbi projektek közül néhányról korábban már bôvebben is írtunk [26,27]. Az AURA projekt [7] célja, hogy minden felhasználónak kialakítson egy láthatatlan számítástechnikai aurát. A GAIA [8] project egy middleware infrastruktúrát ajánl, hogy az okos területeket lehessen létrehozni. Az Oxygen project [9] nagyon intelligens, felhasználóbarát, könnyen használható mobil eszközök tervezésével
foglalkozik. A Portolano-projekt [10] adaptív felhasználói interfészek létrehozására fókuszál. A projekt keretében a one.world [11] architektúrát tervezték meg, mely mindenütt jelenlévô számítástechnikai alkalmazások készítését támogatja. Ugyanilyen alkalmazások készítésének elôsegítésére az extrovert-Gadgets projekt [12] különféle architektúrákat vizsgált meg és a GAS-OS middleware használatát javasolja szenzorok és mûködtetô szerkezetek (actuator) vezérlésére. A 2WEAR projekt [13] viselhetô (wearable) személyi rendszereket analizált, amelyek dinamikusan rakhatók össze különbözô eszközök összekapcsolásával. A Cortex projekt [14] olyan új típusú alkalmazásokkal foglalkozik, melyek emberi beavatkozás nélkül, önállóan is tudnak mûködni. Az EasyLiving project [15] célja intelligens otthoni és irodai környezet kialakítása. A Speakeasy megközelítés [16] az alkalmazások közötti minimális interfészek definiálására koncentrál mobil kód és mobil ügynökök használatával. A MobiDesk [17] megoldás egy virtuális számítástechnikai asztalt definiál, mely megoldással többek között a hálózati sebességre is lehet optimalizálni. A Virtual Device koncepció [18,19] a felhasználó környezetében minden autonóm eszközt egy nagy virtuális egységgé alakít. Hasonlóképpen néhány fent említett megoldáshoz MAIPAN a teljes személyi hálózatot az alkalmazások felé egyetlen eszköznek mutatja. A MAIPAN-nal a felhasználók egyszerûen hozhatnak létre és konfigurálhatnak újra személyi hálózatokat. A MAIPAN rendszer alapötleteit angolul a [20]-as cikkben publikáltuk.
3 A MAIPAN platform 3.1. Alapötletek és definíciók A MAIPAN eszközöket, alkalmazásokat és szolgáltatásokat különböztet meg. Az „eszköz” szó a fizikai eszközt jelenti amin az „alkalmazás” fut, ami pedig nem más mint az a szoftver amelyik az adott „szolgáltatást” felajánlja. Ezeket az absztrakciókat például az mp3 lejátszó esetében alkalmazva azt mondhatjuk, hogy a „fizikai eszközön” fut az „mp3 lejátszó alkalmazás” ami az „mp3 lejátszó szolgáltatást” nyújtja. A különbségtétel az alkalmazás és a szolgáltatás között azért szükséges, mert szolgáltatást nem csak szoftver nyújthat, hanem hardver is (például egér). 2. ábra MAIPAN kapcsolatrendszer
34
LX. ÉVFOLYAM 2005/11
MAIPAN – middleware... A MAIPAN három koncepción alapszik (2. ábra): láb, csatorna és kapcsolatrendszer. Az alkalmazásoknak, melyek a szolgáltatásokat nyújtják, vannak bemeneteik és kimeneteik, amiket – kölcsönvéve az elnevezést az integrált áramköri világból – lábaknak nevezünk. A lábak az alkalmazások kapcsolódási pontjai a middleware felé, így a middleware az alkalmazásokat a PANban be és kimeneti lábak csoportjainak látja. A lábaknak egy elôre definiált típusuk lehet, amely a láb által generált, illetve elnyelt adat, azaz az adott alkalmazás által kezelt információ fajtáját mutatja meg (például egér mozgása, billentyû leütése). A szükségleteknek megfelelôen bármikor új típusok definiálhatók. A PAN vezérlô alkalmazás a felelôs azért, hogy csak a megfelelô lábakat lehessen összekötni. A lábak közötti kommunikációhoz a middleware pontpont kapcsolatokat, azaz csatornákat épít ki. Azt a csatorna halmazt, amely egy adott PAN szolgáltatás használatához szükséges, kapcsolatrendszernek nevezzük. Például, az 1. ábrán látható csatornák alkotják az mp3 lejátszó kapcsolatrendszert: van egy csatorna a fájlszerver és az mp3 lejátszó, egy másik az mp3 lejátszó és a hangszórók, és egy vezérlô csatorna az mp3 lejátszó és a PDA között. A PDA ebben az esetben csak a vezérlô entitás szerepét játssza, ugyan ô a tulajdonosa, de nem tagja a kapcsolatrendszernek. Az alkalmazások nem tudnak a csatornákról, sem a kapcsolatrendszerekrôl, csak saját lábaikról van tudomásuk. 3.2. Biztonság és hozzáférési jogosultság kezelés A biztonsági és jogosultság kezelési funkciókat eszköz szinten definiáltuk. Ez azt jelenti, hogy a szolgáltatásokhoz (az adott alkalmazás lábaihoz) való hozzáférés az eszközöknek van engedélyezve. Így ha egy eszköz jogot kap egy szolgáltatás használatára, akkor minden alkalmazás, amely az adott eszközön fut jogosult lesz hozzáférni az adott szolgáltatáshoz. Ez az egyszerûsítés akkor engedhetô meg, ha feltételezzük, hogy a PAN-ban kis eszközök vannak, melyek csak egy-két egyszerû szolgáltatást nyújtanak (például egér, mp3 lejátszó). Ebben az esetben fölösleges egy bonyolultabb eljárás alkalmazása, ahol a hozzáférést az eszközökön futó alkalmazásoknak egyesével kellene megadni. A vezérlô alkalmazás, mely a vezérlô entitás szerepét játszó eszközön fut, tudja felépíteni és újrakonfigurálni a kapcsolatrendszereket. A vezérlô entitásnak kell ellenôriznie a hozzáférési jogosultságok meglétét. Ha ezek hiányoznak, akkor a szolgáltatást nyújtó eszköztôl meg kell kérdeznie, hogy a felhasználó használhatja-e az adott szolgáltatást. Központi vezérlô entitás lehet például egy PDA, amelynek elegendô számítástechnikai kapacitása van ahhoz, hogy menedzselni tudjon egy teljes személyi hálózatot. Minden más eszköz, amely a PAN-ban van, résztvevôknek nevezzük. Speciális esetekben a résztvevôk delegálhatják a hozzáférés engedélyezés döntési jogkörét más eszközöknek, amelyeket menedzsereknek hívunk. Itt most nem megyünk részletekbe a hitelesítés és engedélyezéssel kapcsolatban, viszont a [6]-ban találLX. ÉVFOLYAM 2005/11
ható megoldások a MAIPAN-nal is alkalmazhatóak a biztonságos kommunikáció megvalósítására. 3.3. Kapcsolatrendszerek áthelyezése A PAN-ban legalább egy eszköznek kell lennie, mely a vezérlô alkalmazás szerepét játssza. Abban az esetben, ha ez az eszköz eltûnik (mert kikapcsolják, vagy a felhasználó távozik), akkor az általa vezérelt összes kapcsolatrendszer automatikusan lebontódik. Ahhoz, hogy a kapcsolatrendszereket a vezérlô eszköz eltûnése után is fenntarthassuk, a MAIPAN lehetôséget ad a mûködô kapcsolatrendszerek egyik vezérlô alkalmazásról a másikra való átvitelére. Például, hogy zenét tudjanak hallgatni egy tárgyalóteremben, az egyik felhasználó egy mp3 lejátszó kapcsolatrendszert konfigurál be. Így az adott felhasználó eszköze lesz a vezérlô entitása a kapcsolatrendszernek. Ha a felhasználó el akarja hagyni a szobát, akkor a MAIPAN-nel közli, hogy a kapcsolatrendszert vigye át egy másik vezérlô entitásra, ami például egy másik felhasználó PDA-ja lehet. 3.4. A kapcsolatrendszerek újrakonfigurálása Abban az esetben, ha egy a PAN-ban résztvevô eszköz eltûnik (például a felhasználó elhagyja a termet, vagy az eszköz akkumulátora lemerül), akkor azok a csatornák, melyekben az eszköz részt vett automatikusan lebontódnak és a kapcsolatrendszert újra kell konfigurálni, ha a továbbiakban is használni akarják. Az elsô lépésben a MAIPAN értesíti az érintett vezérlô alkalmazás(oka)t az eltûnés tényérôl. A második lépésben a vezérlô alkalmazás eldöntheti, hogy mely más szolgáltatás(oka)t kívánja használni a kiesô(k) helyett. Több választási lehetôség esetén a vezérlô alkalmazás kérheti a felhasználót, hogy döntse el ô, mely más szolgáltatásokat szeretné használni, vagy az alkalmazás önmagában is dönthet, ha egyetlen lehetôség van, illetve ha – ismerve a felhasználó preferenciáit – ki tudja választani a legmegfelelôbb szolgáltatás(oka)t az eltûnt(ek) pótlására. A harmadik lépésben a vezérlô vagy felépíti az új csatornákat vagy lebontja az érintett kapcsolatrendszert. 3.5. Architektúra A fenti ötleteken alapulva alkottuk meg a MAIPAN middleware-t, melynek architektúrája a 3. ábrán (a következô oldalon) látható. Az alkalmazások a middleware fölött futnak, míg a middleware alatt lévô rétegek végponttól végpontig történô adatkommunikációt biztosítanak. Ahogy az ábrán látható, a protokoll verem függôlegesen két részre van osztva. Az egyik rész az adat sík, melynek feladata az alkalmazások közötti hatékony és biztonságos adatátvitel. A vezérlési sík a lábak, csatornák és kapcsolatrendszerek menedzseléséért, valamint a kulcs- és jogosultság kezelésért felel. Adat sík
Az alkalmazások a lábaikon keresztül küldik a middleware felé az adatot, amit a csatorna összekötô réteg a megfelelô csatornába irányít. A szállítási réteg létre35
HÍRADÁSTECHNIKA
4. Összefoglalás
3. ábra A MAIPAN architektúrája
hozza a csomagokat és olyan szolgáltatásokat nyújt, mint folyam szabályozás, sorrendezés, automatikus újraküldés, QoS stb. Csak azok a funkciók kerülnek bekapcsolásra az adott csatornákon, amelyek az adott szolgáltatáshoz szükségesek és hiányoznak a middleware alatti rétegekbôl. A kapcsolati réteg olyan információkat ad a csomagokhoz, melyek a célba éréshez szükségesek: a forrás és cél eszköz címét, valamint a csatorna azonosítóját. Végezetül a titkosítási réteg a csomag integritásának ellenôrzéséhez paritás biteket számol és szükség esetén titkosítja a csomagot. Vezérlési sík
A vezérlési sík tartalmazza azokat a vezérlési funkciókat, melyek a PAN menedzseléséhez szükségesek. A szolgáltatás-vezérlô rész a helyi szolgáltatások regisztrálását és hozzáférési jogosultságokat kezeli, valamint kommunikál a szolgáltatás-felderítô protokollal. Elméletben bármilyen szolgáltatás-felderítési protokoll hozzákapcsolható a MAIPAN-hez, úgy mint az SLP, az UPnP vagy a Salutation [21,22]. A vezérlô alkalmazás utasításainak megfelelôen a csatorna-vezérlô hozza létre és szükség esetén konfigurálja újra a kapcsolatrendszereket. A vezérlô alkalmazás igényeinek megfelelôen, a csatorna-vezérlô kéri meg a PAN-ban résztvevô eszközök láb-vezérlôit, hogy kívánt lábak között építsék ki a csatornákat. A láb-vezérlô utasítja a csatorna összekötô réteget, hogy hozza létre a szükséges csatornát, a szállítási rétegben aktiválja az adott csatornához szükséges szállítási funkciókat és beállítja a csatorna végpontját a kapcsolati rétegben. A biztonsági vezérlô kezdeményezi és koordinálja az eszközök közötti azonosítási eljárást, kezeli a szolgáltatás hozzáférési jogosultságokat és tárolja a biztonságos kommunikációhoz szükséges információkat (például biztonsági kulcsokat). 3.6. Implementáció A MAIPAN egy korábbi verzióját Linux operációs rendszerre C-ben implementáltuk [23]. Készítettünk néhány MAIPAN alkalmazást (pl. mp3 lejátszó, fájlszerver) és egy vezérlôt is, hogy vizsgálhassuk a middleware viselkedését [24,25]. Az implementációból tanultakat is beépítettük a middleware most bemutatott verziójába. 36
Cikkünkben a MAIPAN platformot mutattuk be, ami egy olyan middleware, mely személyi hálózatokban mûködô alkalmazások öszszekapcsolását teszi lehetôvé. E middleware lényege, hogy egy olyan PAN programozási platformot nyújtson, ahol a hardveres és szoftveres erôforrások összeköthetôk egymással és a személyi hálózat elosztottsága el van takarva a szolgáltatások elôl. A javasolt architektúrát használva, az elosztott PAN alkalmazásokat készítô programfejlesztôknek nem kell foglalkozniuk a PAN konfigurálással és dinamikákkal (például eszközök eltûnése, illetve megjelenése), és a rendszer által nyújtott egységes alkalmazás programozási interfészt használva egyszerûen készíthetnek PAN szoftvereket. A MAIPAN a biztonságos jogosultság kezelési mechanizmusával és a központi vezérlô entitásával a területen egy új megközelítést reprezentál. A MAIPAN jogosultság kezelése 1) biztosítja a felhasználó eszközei közötti együttmûködést, 2) biztonságot nyújt a felhasználó eszközeinek más felhasználó eszközeivel szemben és 3) emellett megengedi a különbözô felhasználók eszközei közötti kontrollált kommunikációt. A megoldás ezen kívül kényelmes jogosultság kezelést és PAN konfigurációt biztosít a központi vezérlô alkalmazás segítségével, valamint abban is egyedülálló, hogy megengedi a központi entitás cseréjét, azaz a kapcsolatrendszer vezérlési jogai eszközök között szabadon átvihetôk. A MAIPAN jogosultság kezelési sémája szerint az adott szolgáltatás használati jogát eszközök kaphatják meg, így ha egy eszköz jogosultságot szerez egy adott szolgáltatás használatára, akkor az adott eszközön futó összes alkalmazás használhatja az alkalmazást. A dinamikus kapcsolatrendszer menedzsment azt a szituációt kezeli, amikor egy PAN szolgáltatásban résztvevô eszköz eltûnik. Ebben az esetben MAIPAN értesíti a vezérlô alkalmazást, ami ezek után megpróbálja új résztvevôk bevonásával újrakonfigurálni a kapcsolatrendszert, vagy ha több lehetôség adódik és a felhasználó preferenciái nem ismertek, akkor a felhasználó beavatkozását kérheti. A MAIPAN kapcsolatrendszer áthelyezést is támogat, ami abban az esetben hasznos, amikor a kapcsolatrendszer birtokló eszköz el akarja hagyni a PAN-t. Ebben az esetben, ha a felhasználó a távozása után továbbra is fenn akarja tartani a kapcsolatrendszert, akkor a MAIPAN-t a vezérlô alkalmazás segítségével utasíthatja, hogy helyezze át a kapcsolatrendszer vezérlését egy másik eszközre. LX. ÉVFOLYAM 2005/11
MAIPAN – middleware... Irodalom [1] Mark Weiser: „The Computer for the 21st Century”, Scientific American, September 1991. [2] Mark Weiser: „Some Computer Science Issues in Ubiquitous Computing”, Communications of the ACM, July 1993. [3] M. Satyanarayanan: „Pervasive Computing: Vision and Challenges”, IEEE Personal Communications, August 2001. [4] C. Mascolo, L. Capra, W. Emmerich: „Middleware for Mobile Computing (A Survey)”, In Advanced Lectures in Networking. Editors: E. Gregori, G. Anastasi, S. Basagni. Springer, LNCS 2497, 2002. [5] A. Pope: „The Corba Reference Guide: Understanding the Common Object Request Broker Architecture”, Addison-Wesley, Januar 1998. [6] P. Chandrasiri, O. Gurleyen, Y. Shahabi, C. Gehrmann, A. Jonsson, M. Naslund: „Personal Security Domains”, Contribution to the 10th WWRF Meeting, New York, October 27-28, 2003. [7] D. Garlan, D. Siewiorek, A. Smailagic, P. Steenkiste: „Aura: Toward Distraction-Free Pervasive Computing”, IEEE Pervasive Computing, 2002. http://www-2.cs.cmu.edu/aura/ [8] Gaia Project: „Active Spaces for Ubiquitous Computing”; http://gaia.cs.uiuc.edu/index.html [9] „MIT Project Oxygen”, Online Documentation, http://oxygen.lcs.mit.edu/publications/Oxygen.pdf [10] M. Esler, J. Hightower, T. Anderson, G. Borriello: Next Century Challenges: „Data-Centric Networking for Invisible Computing: The Portolano Project at the Univ. of Washington”, (MobiCom‘99), http://portolano.cs.washington.edu/proposal/ [11] R. Grimm, J. Davis, E. Lemar, A. MacBeth, S. Swanson, T. Anderson, B. Bershad, G. Borriello, S. Gribble, D. Wetherall: „System support for pervasive applications”, ACM Transactions on Computer Systems, 22(4):421–486, November 2004. [12] A. Kameas, S. Bellis, I. Mavrommati, K. Delaney, M. Colley, A. Pounds-Cornish: „An Architecture that Treats Everyday Objects as Communicating Tangible Components”, in Proc. of the 1st IEEE Intern. Conf. on Pervasive Computing and Communications (PerCom‘03), Fort Worth, Texas, USA, March 23-26, 2003., p.115. [13] 2WEAR project: „A Runtime for Adaptive and Extensible Wireless Wearables”; http://2wear.ics.forth.gr [14] CORTEX Project: „CO-operating Real-time sentient objects: LX. ÉVFOLYAM 2005/11
architecture and EXperimental evaluation”; http://cortex.di.fc.ul.pt/index.htm [15] B. Brumitt, B. Meyers, J. Krumm, A. Kern, S. Shafer: „EasyLiving: Technologies for Intelligent Environments” in Proc. of Handheld and Ubiquitous Computing Symposium, (Bristol, England), 2000. [16] W. K. Edwards, M.W. Newman, J. Sedivy, T. Smith: „Challenge: Recombinant Computing and the Speakeasy Approach” (MobiCom’02), September 23-28, 2002., Atlanta, Georgia, USA. [17] R. Baratto, S. Potter, Gong Su, J. Nieh: „MobiDesk: Mobile Virtual Desktop Computing”, Proc. of the 10th Annual ACM Intern. Conf. on Mobile Computing and Networking (MobiCom’04), Philadelphia, PA, September 26-October 1, 2004. [18] Jonvik, T.E., Engelstad, P.E., Thanh, D.V.: „Building a Virtual Device on Personal Area Network”, Proc. of 2003 Intern. Conf. on Software, Telecom. and Computer Networks (SoftCom’03), Dubrovnik (Croatia) / Ancona, Venice (Italy), October 7-10, 2003. [19] Jonvik, T.E., Engelstad, P.E., Thanh, D.V.: „Dynamic PANBased Virtual Device”, Proc. of 2nd IASTED Int. Conf. on Communications, Internet and Information Technology (CIIT’2003), November 17-19, 2003. [20] M. A. Rónai, K. Fodor, G. Biczók, Z. Turányi, A. Valkó: „MAIPAN: Middleware for Application Interconnection in Personal Area Networks”, Poster at Mobiquitous 2005 Conference, San Diego, CA, USA, July 17-21, 2005. [21] Rekesh John: „UPnP, Jini and Salutation – A look at some popular coordination frameworks for future networked devices”, California Software Laboratories Inc., Technical Report, June 17, 1999. [22] F. Zhu, M. Mutka, L. Ni: „Classification of Service Discovery in Pervasive Computing Environments” MSU-CSE-02-24, Michigan State University, EastLansing, 2002. [23] Kristóf Fodor: „Implementation of a Protocol Stack for Personal Area Networks”, diplomamunka, 2003. június [24] Fodor K., Kovács B.: „A Blown-up rendszer megvalósítása”, HTE-BME diákkonferencia, Budapest, 2003. május [25] Balázs Kovács: „Design and Implementation of Distributed Applications in Ad Hoc Network Environment”, diplomamunka, 2003. május [26] Biczók G., Fodor K., Kovács B., Szabó Á.: Pervasive computing – rejtett számítástechnika, Híradástechnika, 2003. március [27] Biczók G., Fodor K., Kovács B., Szabó Á.: „Blown-up rendszer tervezése és megvalósítása”, elsô helyezett TDK/OTDK dolgozat, Gyôr, 2002. november/2003. április
37