Sei sulla pagina 1di 22

Protocolli per reti di sensori wireless :

Zigbee Livello applicazione


IEEE 802.15.4 e Zigbee
Protocolli per reti wireless a bassa potenza e basso costo
● Standard based
IEEE 802.15.4 sviluppa lo strato fisico e MAC della rete
Zigbee sviluppa lo strato di rete e applicativo
caratteristiche primarie rete wireless:
● Limitato consumo di energia
● Bassi costi
● Grandezze end point minime
● Sviluppo rete di sensori a maglie che supporti un ampio numero di
sensori
Zigbee: perche' utilizzarlo?
Generale
● E' un protocollo specifico per reti radio piccole
● Gli standard: Zigbee Alliance <gruppo di grandi marche>

Caratteristiche
● Bassi costi di produzione
● Bassi consumi energetici
● Flessibilita' ~ gestisce molti nodi
● Sicurezza ~ AES 128bit
● Range ~ 75m in LOS (line-of-sight) condition
molti campi di utilizzo
Architettura Zigbee
Architettura stratificata del protocollo:
– Application framework:datatype
– Device object (ZDO)
– Application Support sublayer (APS)
– Componenti di sicurezza
in piu' utilizza gli strati implementati dal protocollo 802.15.4
Architettura della rete:
– Coordinatore
– Router zigbee
– End-device
I nodi hanno un indirizzo unico a 64 bit
~Ogni dispositivo e' costituito da una radio e da piu' tipi di
sensori che condividono l'uso della radio per la
comunicazione sulla rete.
La comunicazione:
APS, Cluster, endpoint
L'APS fornisce il supporto per le applicazioni nella
comunicazione.
Definisce in particolare le strutture di comunicazione usate
dallo strato applicazione
Utilizza :
– Profili applicativi : descrizione struttura
– Cluster : mezzi di comunicazione
– Endpoint : porte
I profili applicativi possono essere privati o standard
Binding
Connessione tra dispositivi
tramite endpoint
● Ogni messaggio e' identificato
da : destinatario e tipo di
risorsa
● L'APS contine indirizzo
mittente indirizzo destinatario
clusterID e profileID

problema:
● Per la presenza di molti bind
per dispositivo e' necessaria
la memorizzazione della
tabella bind
Tipologie di Binding
● Direct binding
il dispositivo conosce I bind
delle applicazioni che deve
gestire. In caso di fail si ha
perdita di memoria
● Binding con cache
utilizzo una cache per
memorizzare la tabella bind
– Aumento l'overhead
– Annullo la possibilita'
perdita dati
zigbee ha aggiunto negli
standard la gestione di una
seconda cache
Cluster library
Collezione di cluster e attributi
con significato specifico
● Definiscono molti domini
funzionali
● Riutilizzo cluster
All'interno delle librerie sono
descritti sia i cluster sia gli
attributi e gli identificativi dei
cluster.
Beestack: fornisce una
implementazione della libreria
cluster di zigbee.
● Viene utilizzato per la
definizione del dominio
funzionale che viene utilizzato
in home automation
Zigbee device profile
Definizione cluster del binding.
Classi di comandi forniti:
– Discovery dispositivi e servizi
● Comandi che offrono il mezzo per avere informazioni sui

membri della rete e sui servizi offerti. Da la possibilita' di


conoscere I profili attivi
– Gestione dei Binding
● Per la gestione binding sono presenti molti comandi

– Gestione della rete


● Comandi per ottenere informazioni dalla rete al fine di

controllarla
Comandi di gestione Binding
Gli standard Zigbee forniscono molti comandi per la gestione
binding:
● End-device-bind
binding tramite stimoli esterni. Inviato dal dispositivo alla cache per
segnalare bind
● Bind-register
il dispositivo scarica dalla cache la tabella dei bind
● Repleace device
sostituzione dispositivo
● backup/recover bind table
comandi di backup e recover da cache secondaria
Commissioning

Task di configurazione per dispositivi di rete wireless :


● Vi sono memorizzati i parametri necessari per
l'applicazione.
● Non sono tutti impostati dal programmatore

Vi sono parametri dell'applicazione che e' necessario siano


impostati dall'utente o dall'installatore.
E' naturalmente necessario tenere di conto della necessita' di
elasticita' e di coesistenza con gli altri dispositivi.
Scenari e concetti

L'utente e' solito idealizzare un sistema wireless.


● Rete auto configurante
● Immediata operativita' della rete
● Alcuno sforzo per l'installazione della rete

Problemi:
● Determinazione di appartenenza
determinazione rete di appartenenza
● User-definable bindings
binding personalizzati da utente
Soluzioni per l'automazione della
rete
● Shrink-wrap <A-mode Automatico>
Preconfigurazione dispositivi
● Commissioning tramite bottoni con feedback <E-mode Easy>
Utilizzo bottoni per effettuare il binding manuale dei dispositivi.
Come feedback vengono utilizzati led.

Queste soluzioni sono utili su piccole reti e riducono la


flessibilita' della rete.
Vi sono problemi nell'utilizzo di queste due modalita' nelle
reti molto distribuite.
Soluzioni per reti ampie
● Commissioning tool <S-mode System>
utilizzo laptop per interfacciarsi sulla rete; I laptop non entrano a far
parte della rete che interfacciano.
● Remote Commissioning <S-mode System>
versione del commissioning tool mediante gestore remoto. Viene
utilizzata una connessione gprs e wan per la connessione con il
gateway della rete Zigbee.

~ Il commissioning durante la fase di sviluppo software viene utilizzato


per testare il prodotto affinche' soddisfi tutte le richieste
dell'applicazione. Esistono infatti task di commissioning per il test delle
varie funzionalita' (velocita' commission rete, gestione rete ecc.).
Standard per il commissioning
Standard forniti da Zigbee per l'utilizzo di parametri.
Definisce 3 classi di parametri:
● Membership
parametri di informazione sulla rete e sui membri della rete
● Group & Bindings
metodo di connessione tra dispositivi e appartenenza alla rete a
connessioni logiche uno a molti molti a uno
● Application
parametri utilizzati per il commissioning di particolari applicazioni

presenti sul zigbee device profile con utilizzo del cluster commissioning.
Commissioning cluster
Fornisce I comandi standard over-the-air per la gestione
del commissioning tra membri della rete.
Attributi per il controllo del commissioning:
– Controllo routing
– Connessione dei dispositivi
ottimizzazione della rete.
Comando principale per il commissioning fornito dagli
standard
● Restart Device Request :
comando di restart per attuazione di configurazioni. Vengono resi
attivi attributi di configurazione.
SAS – Startup Attributes Set
Set di attributi per l'avvio:
– Startup control
– Extended PAN ID <EPID>
– Channel Mask
– Security information
● Key

● Address

~ Usato per determinare come I dispositivi devono collegarsi


alla rete. Vengono eseguite le seguenti fasi :
– Coordinator
– Join
– Rejoin
– Connessione
si puo' notare che esistono vari stati del SAS di un
dispositivo
Problema: sicurezza della rete
Monitoraggio della rete da sistema esterno non autorizzato:
● Pacchetti criptati con AES 128bit
– Criptazione pacchetti
– Richiede poca memoria
● Chiavi di sicurezza
– Non scambiate over-the-air

Soluzioni alternative per costituire un sistema di sicurezza


sono implementate tramite comandi standard Zigbee
Soluzioni alternative 1
Vengono impiegati metodi del binding e del membership:
● Memebership
– Enable/disable permit join method
● abilita/disabilita il permesso di join sul router

– Leave command
● Forza a lasciare la rete

– Preferred EPID e channel mask


● Preconfigurazione valori riconoscimento rete

– Preconfigured key
● Chiave di sicurezza pre configurata

– Allowed device
● Lista di dispositivi verificati

– Connessione
● Gestione join tramite commissioning tool
Soluzioni alternative 2
● Binding
effettuato tramite il gestiore binding di Zigbee
metodi di binding:
– Pre configurated
● I dispositivi conoscono gia' I bind (A-mode)

– Service discovery
● Uso comando Match-desc sui cluster

– End device binding method


● Intervento utente con comando end-device-bind (E-mode)

– Tool based binding


● Binding impostati tramite tool
Commissioning Group
Attraverso il cluster group, Zigbee da la possibilita' di effettuare
comunicazioni del tipo multicast interne alla rete.
Particolarita':
● indirizzo a 16 bit
● Nessun overhead (non viene usato broadcast)
● Comunicazione uno a molti
vengono forniti metodi per la gestioni di gruppi multicast interni
alla rete Zigbee:
● Preconfigured: preconfigurato per il gruppo
● Discovered: membri identificati tramite proprieta del dispositivo
● Buttons : annessione al gruppo tramite bottoni
● Tool based o cache: migliora le prestazioni della rete.
Verifica e gestione errori
Per effettuare una verifica dell'impianto e' necessario impostare
sul dispositivo, una configurazione apposita.
– Correzione codice
– Verifica funzionamento dispositivo

Troubleshooting
strumento per risolvere errori presenti sul codice del
programma.
– Costituito da task per la ricerca di errori