1. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Progettazione e sviluppo di un Middleware OSGI
orientato ai servizi per reti di sensori
Francesco Pantano
Università degli studi di Catania
Facoltà di Ingegneria
25 Giugno 2013
Francesco Pantano Middleware OSGI per reti di sensori
2. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Outline
1 Middleware per reti di sensori
Il problema affrontato
Soluzione
2 Tecnologie
Il framework OSGI
Vantaggi
3 SNPS: Middleware OSGI per reti di sensori
Architettura
Componenti di base
Event Admin Service
Casi d’uso
4 Conclusioni
Francesco Pantano Middleware OSGI per reti di sensori
3. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Il problema affrontato
Soluzione
Outline
1 Middleware per reti di sensori
Il problema affrontato
Soluzione
2 Tecnologie
Il framework OSGI
Vantaggi
3 SNPS: Middleware OSGI per reti di sensori
Architettura
Componenti di base
Event Admin Service
Casi d’uso
4 Conclusioni
Francesco Pantano Middleware OSGI per reti di sensori
4. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Il problema affrontato
Soluzione
Problematiche affrontate
Francesco Pantano Middleware OSGI per reti di sensori
5. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Il problema affrontato
Soluzione
Outline
1 Middleware per reti di sensori
Il problema affrontato
Soluzione
2 Tecnologie
Il framework OSGI
Vantaggi
3 SNPS: Middleware OSGI per reti di sensori
Architettura
Componenti di base
Event Admin Service
Casi d’uso
4 Conclusioni
Francesco Pantano Middleware OSGI per reti di sensori
6. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Il problema affrontato
Soluzione
Soluzione
Una piattaforma per:
Presentare un sensore sotto
forma di servizio
Monitorare e processare dati
provenienti dalla WSN
Esporre servizi di discovery /
inquiry alla SNS Platform
Requisito
Installazione e rimozione di moduli a Runtime
Francesco Pantano Middleware OSGI per reti di sensori
7. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Il framework OSGI
Vantaggi
Outline
1 Middleware per reti di sensori
Il problema affrontato
Soluzione
2 Tecnologie
Il framework OSGI
Vantaggi
3 SNPS: Middleware OSGI per reti di sensori
Architettura
Componenti di base
Event Admin Service
Casi d’uso
4 Conclusioni
Francesco Pantano Middleware OSGI per reti di sensori
8. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Il framework OSGI
Vantaggi
Il framework OSGI
Un sistema dinamico, che consente l’installazione, l’avvio, lo stop
e la rimozione dei moduli a runtime, senza, quindi, necessitare di
riavvii;
Orientato ai servizi, i quali possono essere dinamicamente
registrati ed utilizzati.
Un software modulare e dinamico porta a molti vantaggi in ogni fase
del suo sviluppo, dalla progettazione alla realizzazione, fino alla sua
manutenzione.
Francesco Pantano Middleware OSGI per reti di sensori
9. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Il framework OSGI
Vantaggi
Outline
1 Middleware per reti di sensori
Il problema affrontato
Soluzione
2 Tecnologie
Il framework OSGI
Vantaggi
3 SNPS: Middleware OSGI per reti di sensori
Architettura
Componenti di base
Event Admin Service
Casi d’uso
4 Conclusioni
Francesco Pantano Middleware OSGI per reti di sensori
10. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Il framework OSGI
Vantaggi
Il framework OSGI
Vantaggi
Interoperabilità
Cooperazione tra i
componenti
Condivisione dei
servizi
Basso consumo di
risorse
Fornisce le specifiche per sviluppare applicazioni che implementano
servizi, permettendo di registrarne di nuovi, di aggiornare o rimuovere
gli esistenti "on the fly", sfruttando piccoli componenti, detti Bundle.
Francesco Pantano Middleware OSGI per reti di sensori
11. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Outline
1 Middleware per reti di sensori
Il problema affrontato
Soluzione
2 Tecnologie
Il framework OSGI
Vantaggi
3 SNPS: Middleware OSGI per reti di sensori
Architettura
Componenti di base
Event Admin Service
Casi d’uso
4 Conclusioni
Francesco Pantano Middleware OSGI per reti di sensori
12. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
SNPS: Architettura
Il Middleware è visto come un insieme di componenti che poggiano
sul framework OSGI. Ogni componente, configurato in un bundle
OSGI, svolge un ruolo ben preciso e interagisce, sia localmente che
da remoto, con altri bundle.
Strati del Middleware:
Sensor Integration Interface
Core e componenti associati
Web Integration Interface
Francesco Pantano Middleware OSGI per reti di sensori
13. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Outline
1 Middleware per reti di sensori
Il problema affrontato
Soluzione
2 Tecnologie
Il framework OSGI
Vantaggi
3 SNPS: Middleware OSGI per reti di sensori
Architettura
Componenti di base
Event Admin Service
Casi d’uso
4 Conclusioni
Francesco Pantano Middleware OSGI per reti di sensori
14. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Sensor Integration Interface
L’integrazione con la WSN è realizzata attraverso due bundle OSGI
che implementano un Gateway, su cui avviene lo scambio dei
comandi.
Basato su R-OSGI, prevede la creazione di un endpoint unico, che
rende trasparente il message passing tra il middleware e le BS della
WSN.
Non serve conoscere la
topologia/architettura della
WSN
Francesco Pantano Middleware OSGI per reti di sensori
15. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Sensor Integration Interface
Componenti:
iMdwBundle : Interfaccia
verso la WSN al fine di
garantire un canale per lo
stream di comandi da e
verso il Middleware
iWsnBundle: Interfaccia
verso il Middleware al fine di
garantire un canale per lo
stream di dati (modalità push)
La conoscenza dei servizi è resa possibile attraverso la condivisione
delle interfacce, che definiscono i metodi implementati.
Francesco Pantano Middleware OSGI per reti di sensori
16. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Core e componenti associati
Lo strato di logica
Si occupa di "svegliare" i componenti che possono soddisfare una
certa richiesta verso il Middleware, invocando gli appropriati servizi.
Funzionalità:
Orchestrazione dei
componenti del middleware
Gestione delle immagini
software relative ai sensori,
condivise tra i bundles del
middleware
Francesco Pantano Middleware OSGI per reti di sensori
17. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Core e componenti associati
Registry Bundle e lo strato di persistenza
Funzionalità:
Registrazione e rimozione di
un sensore
Recupero (parametrico) di un
sensore
Aggiornamento della
descrizione dei sensori
relativi ad una Base Station
Aggiornamento della
descrizione un sensore
Francesco Pantano Middleware OSGI per reti di sensori
18. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Core e componenti associati
Registry Bundle e lo strato di persistenza
Le immagini dei sensori recuperate
dal registry permettono di:
Ignorare la topologia dello strato
sottostante
Evitare problematiche di
indirizzamento delle query
Trattare facilmente i componenti
della WSN, attraverso le immagini
software
Francesco Pantano Middleware OSGI per reti di sensori
19. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
SensorML: Descrizione di un Sensore
In evidenza le parti principali di una descrizione in formato SensorML
per un sensore di temperatura
Francesco Pantano Middleware OSGI per reti di sensori
20. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
SensorML: Descrizione di un Sensore
Identification parameters
In questo frammento di SML si
evince:
informazione relativa al
posizionamento logico del
sensore
informazione relativa alla base
station a cui il sensore fa
riferimento
Francesco Pantano Middleware OSGI per reti di sensori
21. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
SensorML: Descrizione di un Sensore
Capabilities parameters
Francesco Pantano Middleware OSGI per reti di sensori
22. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
SensorML: Descrizione di un Sensore
Input parameters
Questo frammeto di SensorML descrive la parte riguardante la
catena di Input di un sensore di temperatura
Phenomenon: descrizione del fenomeno misurato dal sensore
UOM: unità di misura prevista dalle rilevazioni
Francesco Pantano Middleware OSGI per reti di sensori
23. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
SensorML: Descrizione di un Sensore
Output parameters
Questo frammeto di SensorML descrive la parte riguardante la
catena di Output di un sensore di temperatura
Phenomenon: natura del fenomeno misurato dal sensore
UOM: unità di misura prevista in output dalle rilevazioni
Francesco Pantano Middleware OSGI per reti di sensori
24. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Core e componenti associati
Gestione dei flussi di dati
Nasce dall’esigenza di avere una separazione logica tra:
Comandi da e verso il middleware
Flusso di dati all’atto di una misurazione
Modalità:
Servizio push, per accumulare dati
provenienti dai sensori
Processor, per applicare particolari
strutture ai dati ricevuti
Francesco Pantano Middleware OSGI per reti di sensori
25. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Core e componenti associati
Composizione di sensori
Un sensore virtuale rappresenta un’entità software che va a mapparsi
su un insieme di sensori fisici, residenti anche su BS differenti
Si ha visibilità di un unico sensore
Una richiesta di rilevazione
sensoriale si traduce nell’invocazione
di tante richieste di lettura quanti
sono i sensori che lo compongono
È necessario processare
opportunamente le singole
rilevazioni
Francesco Pantano Middleware OSGI per reti di sensori
26. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Core e componenti associati
Composizione di sensori
L’obiettivo è permettere di ottenere misure complesse a partire dai
rilevamenti dei singoli sensori
Disporre di un operatore che
permetta di combinare fra loro
le misure, secondo appositi
criteri di compatibilità
Operatore: Struttura dati
parametrica per il
processamento di un insieme
di dati
Francesco Pantano Middleware OSGI per reti di sensori
27. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Web Integration Interface
Application Layer
L’obiettivo è offrire, ai livelli superiori, interfacce per accedere ai
servizi offerti dal Middleware.
Sensors as a Service:
Query dirette alla WSN
sottostante, per accedere alle
descrizioni dei componenti e
alle misure effettuate
Comandi che possano agire
sul comportamento dei
sensori della WSN
Servizio di composizione
Francesco Pantano Middleware OSGI per reti di sensori
28. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Web Integration Interface
Tecnologie di riferimento
Web Services:
permettono l’interoperabilità tra
diverse applicazioni software su
diverse piattaforme hardware
disaccoppiamento tra il Middleware e
lo strato immediatamente superiore
Wrapper Bundle:
astrae ed esporta i servizi messi a
disposizione dal middleware
Qualsiasi Web Client potrà invocare i servizi offerti dallo strato
sottostante, evitando problematiche legate alle tecnologie
Francesco Pantano Middleware OSGI per reti di sensori
29. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Web Integration Interface
Servizi esposti
Interrogazione di un sensore: permette di effettuare
un’interrogazione sul sensore, restituendo la misura
Interrogazione Registry: permette di effettuare una ricerca di
un sensore o delle rilevazioni sensoriali secondo appositi filtri
specificati come argomento
Composizione: generazione di un sensore virtuale; invocato
tale servizio, verrà restituito l’identificativo del sensore creato
Creazione di un piano di campionamento: permette di inviare
un piano di campionamento ad uno o più sensori
Invio di un comando ai sensori: abilitazione / disabilitazione
del sensore (modalità risparmio energetico)
Francesco Pantano Middleware OSGI per reti di sensori
30. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Outline
1 Middleware per reti di sensori
Il problema affrontato
Soluzione
2 Tecnologie
Il framework OSGI
Vantaggi
3 SNPS: Middleware OSGI per reti di sensori
Architettura
Componenti di base
Event Admin Service
Casi d’uso
4 Conclusioni
Francesco Pantano Middleware OSGI per reti di sensori
31. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Snps: una piattaforma guidata dagli eventi
Duplice Modalità di funzionamento:
Sincrona: richieste che si
propagano fino alla wsn, per poi
tornare in cascata una Response
Asincrona: Response inerenti ad
una certa Request notificate tramite
un meccanismo Publish/Subscribe
I bundle iscritti su un certo topic d’interesse, ricevono le notifiche
legate a quella categoria
I topic (o Event Stream), rappresentano una categoria di
informazioni, legata o meno a specifici bundles
Francesco Pantano Middleware OSGI per reti di sensori
32. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Snps: una piattaforma guidata dagli eventi
Entità coinvolte
Event Producer: componente in
grado di generare eventi
Event Consumer: componente in
grado di ricevere notifiche e
processare eventi
Event Stream: Topic a cui l’evento
fa riferimento in funzione della sua
natura intrinseca
OSGi Event Admin Service Specification che ben si adatta anche a
sistemi nei quali devono essere notificati degli eventi a grana fine ad
un numero elevato di handler diversi.
Francesco Pantano Middleware OSGI per reti di sensori
33. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Snps: una piattaforma guidata dagli eventi
OSGi Event Admin Service Specification
Interfacce di base:
Event Class: Modella l’evento, un
container per informazioni specifiche
Event Admin: interfaccia che
permette di implementare un
publisher
Event Handler: interfaccia che
modella un meccanismo di
intercettazione degli eventi su un
topic d’interesse
Francesco Pantano Middleware OSGI per reti di sensori
34. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Esempio pratico: lettura di un dato da un sensore
Sottoscrizione dei componenti
Subscription Phase: attivazione dell’Event handler per intercettare i
dati che transitano all’interno della piattaforma
Francesco Pantano Middleware OSGI per reti di sensori
35. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Esempio pratico: lettura di un dato da un sensore
Interrogazione del sensore fisico
Francesco Pantano Middleware OSGI per reti di sensori
36. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Outline
1 Middleware per reti di sensori
Il problema affrontato
Soluzione
2 Tecnologie
Il framework OSGI
Vantaggi
3 SNPS: Middleware OSGI per reti di sensori
Architettura
Componenti di base
Event Admin Service
Casi d’uso
4 Conclusioni
Francesco Pantano Middleware OSGI per reti di sensori
37. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Scenari principali sviluppati
Per avere un riscontro pratico, in accordo ai requisiti previsti
(funzionali e non), è stata realizzata un’opportuna batteria di test.
Sensor_cu_1: Registrazione di un sensore all’interno della
piattaforma
Sensor_cu_2: Settaggio di un piano di campionamento
Sensor_cu_3_4: Invio di un comando (enable / disable) ad un
sensore
Sensor_cu_5: Creazione di un sensore virtuale
Sensor_cu_6: Interrogazione di un sensore virtuale
(precedentemente creato)
Francesco Pantano Middleware OSGI per reti di sensori
38. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Scenari principali sviluppati
Sensor_cu_1: Registrazione di un Sensore
Francesco Pantano Middleware OSGI per reti di sensori
39. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Scenari principali sviluppati
Sensor_cu_2: Settaggio di un piano di campionamento
Francesco Pantano Middleware OSGI per reti di sensori
40. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Scenari principali sviluppati
Sensor_cu_3_4: Invio di un comando ad un sensore
Francesco Pantano Middleware OSGI per reti di sensori
41. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Scenari principali sviluppati
Sensor_cu_5: Generazione di un sensore virtuale
Francesco Pantano Middleware OSGI per reti di sensori
42. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Architettura
Componenti di base
Event Admin Service
Casi d’uso
Scenari principali sviluppati
Sensor_cu_6: Interrogazione di un sensore virtuale
Francesco Pantano Middleware OSGI per reti di sensori
43. Middleware per reti di sensori
Tecnologie
SNPS: Middleware OSGI per reti di sensori
Conclusioni
Conclusioni
Modularità: Rappresenta una scatola chiusa, eventualmente
espandibile tramite ulteriori moduli (bundles)
Flessibilità: Grazie ad una modellazione delle strutture dati in
formato JSON, si ha piena compatibilità per dialogare con
applicazioni esterne
Cooperazione: nell’ottica di una tecnologia a servizi, i
componenti cooperano e condividono in accordo alla logica di
architetture SOA
Basso consumo di risorse: Esportazione di un environment
OSGi stand alone in grado di operare anche su macchine con
capacità limitata
Francesco Pantano Middleware OSGI per reti di sensori