160 likes | 240 Views
Monitor komponensek fejlesztése okostelefon platformra. Szatmári Zoltán, Micskei Zoltán és Majzik István. Motiváció. Okostelefonok elterjedtsége Új alkalmazási lehetőségek megjelenése Felmerülő adatbiztonsági problémák kezelése Online védelem és futásidejű ellenőrzés
E N D
Monitor komponensek fejlesztése okostelefon platformra Szatmári Zoltán, Micskei Zoltán és Majzik István
Motiváció • Okostelefonok elterjedtsége • Új alkalmazási lehetőségek megjelenése • Felmerülő adatbiztonsági problémák kezelése • Online védelem és futásidejű ellenőrzés • Adatforrások megbízhatóságának minősítése
Célkitűzések • Kritikus alkalmazások támogatása • Szolgáltatásbiztonság és biztonságosság • Hibadetektálás, hatáselemzés, átkonfigurálás támogatása • Monitorozási szolgáltatások • Hibadetektálás: Futásidőbeli jellemzők ellenőrzése • Skálázható, elosztott megvalósítás (jellemzők lokalitása szerint) • Hierarchikus (jellemzők hierarchiaszintje szerint) • Hibahatás elemzés • Függőségek elosztott kezelése • Szabály alapú ok-hatás analízis • Kontextus és erőforrás monitorozás • Alternatívák nyilvántartása adaptív átkonfigurálás támogatásához
Monitorozási koncepció • Alapszolgáltatás: • Platform szintű kontextus és erőforrás monitorozás • Magasabb szintű szolgáltatások: • Követelmény alapú monitorozás • Elosztott alkalmazások monitorozása: • Interakciós scenario leírása alapján származtatott lokális követelmények
Monitorozási koncepció Monitor szintézis a követelmények alapján • Viselkedés követelményei: • Kontextus feltételek • Kommunikáció szabályok • Adatfeldolgozás szabályok Monitorozandó alkalmazás/réteg • Monitor: • Ellenőrző modulok • Futtató modul Monitor Ellenőrző modulok Futtató modul Monitorozandó alkalmazás Monitor Ellenőrző modulok Futtató modul Monitorozandó alkalmazás
Elemi adathozzáférési lehetőségek • OS adatok • CPU terheltség • Memóriafoglaltság • Futó folyamatok száma • Szenzor adatok • Helyzet (Pl. GPS, cellainformáció) • Fényerő • Gyorsulás • Platform adatok • Hálózati forgalom • Alkalmazások állapota
Események típusai • Elemi események • Származtatott események • Boole algebrai kifejésekkel definiált más események alapján • Monitorok által generált események
Eseményhierarchia alkalmazása Általános esemény Üzenet érkezett Pozíció változása GPS pozíció változása Cellainfo változása Új tartalmi üzenet Nyugta üzenet Esemény taxonómia kialakítása Általánosabb követelmény megfogalmazási lehetőség
Szabály alapú monitorok szintézise HA ((akku_töltöttség < 20%) ÉS (alkalmazás_cpu_használat > 80%)) AKKOR (alkalmazás_leállítás) • Egyszerűbb szituációk és forgatókönyvek leírására • HA (feltétel) AKKOR (beavatkozások) típusú szabályok • Feltétel: logikai kifejezés: • Elemi jellemzők • Konstansok • Relációs összehasonlítások • Beavatkozás • Végrehajtható akciók sorozata • Automatikus monitor szintézis
Temporális logika alapú monitorok szintézise • Időbeli, viselkedési követelmények leírására • LTL variáns használata: • Boole logikai operátorok • X (következő állapotban), F (valamikor a jövőben), G (folyamatosan) és U (addig, amíg) időbeli operátorok • Kontextus információ figyelembevétele • Automatikus monitor szintézis a logikai kifejezés alapján • LTL kifejezés átalakítása ekvivalens lépésekkel • Logikai blokkok egymásba ágyazása • Háromértékű logika alkalmazása • Automatikus kódgenerálás
Temporális logika alapú monitorok szintézise / P1 P2 Eredmény Lekötések C1 A k t u á l is Ellenőrző modul P2.req(…) Kontextus P1.resp(…) P1.t<= 5 Ellenőrző modulok (P1.t = t0 ∧ C1 ∧ P2.req(…)) F (P1.resp(…)∧ P1.t <=t0 + 5)) P1 C1 Elosztott scenario lokális nézete: P1: App C1 connected requested P2.req(…) Következő Lekötések P1.resp(…) P2: MApp P3: App Temporális kifejezés monitor szintézishez P1.t<= 5 Elosztott scenario: Kezdeti kontextus, feltételek, elvárások
Kontextus információ figyelembevétele Kontextus metamodell (kontextus ontológia alapján) • Előre definiálható kontextus konstansok (minták) • Leköthető statikus kontextus változók • Futásidőben: aktuális kontextus illesztése (ekvivalencia reláció) C1 C2 connected App P1: App P1: App connected G (c≈ C1 ∧ X disconnect() F( c ≈ C2)) connected P2: MApp P2: MApp MApp P3: App P3: App
Temporális logika alapú monitorok szintézise Temporális operátorokhoz rendelt ellenőrző blokk típusok • Monitorszintézis során generálva • Futásidőben példányosíthatók:egy-egy új példány állapota többértékű logikában (néhány biten) rögzíthető • Releváns változásokhoz köthető számú blokkra van szükség Futásidőben: Kiértékelés terjesztése a blokkok között • Kontextus és idő változók lekötése • A trace végén minden eredmény Boole-logikára képződik
Monitorozási architektúra Eseménytaxonómia LTL alapú követelmény Szabály alapú követelmény Származtatott Esemény spec. Konfigurációs szabályok LTL monitor generátor Monitor futtató generátor Szabály alapú monitor generátor Esemény képző generátor Szabály alapú monitor LTL monitor Esemény képző Monitor futtató környezet és esemény busz
Monitor futtató környezet és esemény busz • Konfigurációs szabályok • Monitor komponensek elindítási és leállítási feltételei • Esemény busz • Feliratkozás alapú esemény továbbítás • Eseményhierarchiának megfelelő csatornák
Összefoglalás Okostelefon platformok elemi információinak megfigyelése Formalizált követelmények alapján automatikus monitor szintézis Monitor architektúra kidolgozása A kutatást a BME VIKING Nonprofit Zrt részvételével az „Infokommunikációs technológiák és a jövő társadalma FuturICT.hu” című, TÁMOP-4.2.2.C-11/1/KONV-2012-0013 azonosító számú kutatás-fejlesztési projekt támogatta.