Una rassegna di algoritmi per Data Fusion in reti
Transcript
Una rassegna di algoritmi per Data Fusion in reti
Alma Mater Studiorum · Università di Bologna FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI Corso di Laurea in Informatica Una rassegna di algoritmi per Data Fusion in reti di sensori e reti veicolari Tesi di Laurea in Sistemi e reti Wireless Relatore: Chiar.mo Prof. Luciano Bononi Presentata da: Giorgio Giovanni Romerio II Sessione Anno Accademico 2008/09 Indice 1 Introduzione 4 2 MANET - Mobile Ad-hoc NETworks 2.1 Storia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Le MANET oggi . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Tipi di MANET . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 Protocolli di routing . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Proactive . . . . . . . . . . . . . . . . . . . . . . . . 2.4.2 Hierarchical proactive . . . . . . . . . . . . . . . . . . 2.4.3 Reactive . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.4 B.A.T.M.A.N. - Better Approach To Mobile Ad-hoc Networking . . . . . . . . . . . . . . . . . . . . . . . 2.5 Prolema del terminale esposto e nascosto nelle reti MANET 2.5.1 Problema del terminale esposto . . . . . . . . . . . . 2.5.2 Problema del terminale nascosto . . . . . . . . . . . . 3 VANET - Vehicular Ad-hoc NETwork 3.1 Protocolli di routing . . . . . . . . . . . . . . . 3.2 Problemi nelle comunicazioni . . . . . . . . . . 3.2.1 Flooding semplice . . . . . . . . . . . . . 3.2.2 Metodi probabilistici basati su contatore 3.2.3 Metodo basato sulla posizione . . . . . . 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 8 9 9 10 11 11 11 . . . . 12 12 12 13 . . . . . 15 18 21 22 22 23 INDICE 3.3 3.4 3.5 3.6 2 3.2.4 Risultati e comparazioni . . . . . . . . . . . . . . Il broadcast storm problem . . . . . . . . . . . . . . . . . Riduzione della ridondanza del broadcast . . . . . . . . . 3.4.1 RBM . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.2 TRADE . . . . . . . . . . . . . . . . . . . . . . . 3.4.3 DDT . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.4 ODAM . . . . . . . . . . . . . . . . . . . . . . . . Modelli di mobilità per le VANET . . . . . . . . . . . . . Sicurezza nelle VANET . . . . . . . . . . . . . . . . . . . 3.6.1 Privacy . . . . . . . . . . . . . . . . . . . . . . . 3.6.2 Tipi di attacco nelle reti VANET . . . . . . . . . 3.6.3 Tecniche per garantire la sicurezza nelle VANET . 3.6.4 Tecniche di difesa delle VANET . . . . . . . . . . 3.6.5 Autenticazione asimmetrica . . . . . . . . . . . . 3.6.6 Autenticazione simmetrica . . . . . . . . . . . . . 3.6.7 Soluzioni basate su autenticazione e verifica con sensori . . . . . . . . . . . . . . . . . . . . . . . . 4 WSN - Wireless Sensor Networks 4.1 Origini . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Caratteristiche . . . . . . . . . . . . . . . . . . . 4.3 architettura di una WSN . . . . . . . . . . . . . . 4.4 TinyOS . . . . . . . . . . . . . . . . . . . . . . . 4.5 Come viene progettata una WSN . . . . . . . . . 4.6 Elementi da considerare durante la progettazione 4.6.1 Costo . . . . . . . . . . . . . . . . . . . . 4.6.2 Connettività . . . . . . . . . . . . . . . . . 4.6.3 Hardware . . . . . . . . . . . . . . . . . . 4.6.4 Posizionamento dei nodi . . . . . . . . . . 4.6.5 Mobilità . . . . . . . . . . . . . . . . . . . 4.6.6 Scalabilità . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . dei . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 24 25 26 26 26 27 28 30 31 32 34 34 35 36 . 37 . . . . . . . . . . . . 41 45 46 47 50 50 51 51 52 52 53 54 54 INDICE 3 4.6.7 4.6.8 4.6.9 Elaborazione in tempo reale . . . . . . . . . . . . . . . 55 Sicurezza . . . . . . . . . . . . . . . . . . . . . . . . . 55 Consumo energetico . . . . . . . . . . . . . . . . . . . 55 5 Algoritmi Data fusion 5.1 Tecniche matematiche maggiormente utilizzate per la fusione di dati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1.1 “Bayesian Decision Theory” . . . . . . . . . . . . . . 5.1.2 “Dempester-Shafer Theory” (DST) . . . . . . . . . . 5.1.2.1 Differenze tra le due tecniche . . . . . . . . 5.2 Algoritmi Data Fusion per VANETs . . . . . . . . . . . . . . 5.2.1 Region-based Location Service Management Protocol (RLSMP) . . . . . . . . . . . . . . . . . . . . . . . . 5.2.2 Location Based Aggregation (LBAG) algorithm . . . 5.2.3 Algoritmo basato sull’aggregazione di dati gerarchica 5.3 Algoritmi Data Fusion per WSN . . . . . . . . . . . . . . . . 5.3.1 Minimum Fusion Steiner Tree (MFST) . . . . . . . . 5.3.2 Adaptive Fusion Steiner Tree (AFST) . . . . . . . . . 5.3.3 Algoritmi Data Fusion per l’individuazione di anomalie nelle reti di sensori . . . . . . . . . . . . . . . . . . . 5.3.3.1 M3L . . . . . . . . . . . . . . . . . . . . . . 5.3.3.2 D-S . . . . . . . . . . . . . . . . . . . . . . 57 . . . . . 57 58 59 60 61 . . . . . . 62 62 63 63 66 67 . 67 . 68 . 70 6 Conclusioni 71 7 Ringraziamenti 73 Capitolo 1 Introduzione L’obiettivo di questo studio è la ricerca di algoritmi per la fusione di dati nelle reti di sensori e nelle reti veicolari. Inizierò mostrando una panoramica generale di quelle che sono le MANET (Mobile Ad-hoc NETworks), definendo i vari tipi di questa rete, i diversi protocolli di routing che possono essere utilizzati ed il problema del terminale esposto e del terminale nascosto. Successivamente descriverò un particolare tipo di MANET: le VANET, ovvero le reti veicolari, delle quali presenterò diversi aspetti, come ad esempio la sicurezza all’interno di questo tipo di reti, la riduzione della ridondanza delle trasmissioni broadcast ed anche i diversi problemi di comunicazione. Dopo aver descritto le reti veicolari passerò alla definizione delle reti di sensori osservando in particolare quelle che sono le origini, le caratteristiche, l’architettura di una rete di sensori e come può essere progettata. Fatta questa introduzione sulle reti che sono argomento del mio studio, definirò delle tecniche di fusione di dati e degli algoritmi che si servono di quest’ultime per aggregare dati nelle reti di sensori e nelle reti veicolari. Infine cercherò di capire se è possibile definire algoritmi che possono essere utilizzati per entrambe le tecniche indistintamente. 4 Capitolo 2 MANET - Mobile Ad-hoc NETworks Una MANET (Mobile Ad-hoc NETwork) è definita come un sistema autonomo di router (detti anche nodi) mobili connessi mediante collegamenti wireless. Tutti i nodi del sistema collaborano con lo scopo di instradare i pacchetti nel modo corretto. A causa della mobilità impredicibile dei nodi, la topologia di rete può cambiare costantemente. Le reti Ad-Hoc vengono costruite all’occorrenza ed utilizzate in ambienti estremamente dinamici, non necessariamente con l’aiuto di una infrastuttura già esistente, come ad esempio dopo catastrofi naturali, durante conflitti militari o altre situazioni d’emergenza [Ciu06]. Un’istanza delle MANETs sono considerate le Vehicular Ad Hoc Network (VANETs), create da veicoli dotati di dispositivi con tecnologie di comunicazione wireless a medio raggio (es. schede wireless IEEE 802.11 a/b/g). La comunicazione è limitata a veicoli posti nello stesso raggio di trasmissione, oppure può coinvolgere veicoli posti a più hop di distanza mediante la presenza di infrastrutture fisse oppure di router mobili. Il traffico di rete nelle MANET e nelle reti non-infrastrutturate denota numerose differenze rispetto al traffico delle reti infrastrutturate: 5 CAPITOLO 2. MANET - MOBILE AD-HOC NETWORKS 6 • Alta mobilità dei nodi: Nelle MANET la topologia di rete è altamente mutabile nel tempo quindi, deve essere in grado di poter gestire tale mobilità utilizzando tecniche di adattamento delle condizioni di propagazione dei messaggi, in modo da ottenere la migliore copertura geografica del segnale ed evitando la formazione di zone d’ombra (zone non coperte dal raggio d’azione dei nodi) o zone di ipercopertura (zone più volte coperte dal raggio d’azione delle antenne dei nodi); • Assenza del controllo e della gestione della rete: Data l’assenza di infrastrutture fisse, nelle MANET la gestione ed il controllo della rete è distribuita tra i vari nodi, i quali, devono farsi carico sia del routing che della sicurezza della comunicazione; • Problema del terminale Esposto/Nascosto: Il problema del terminale esposto si ha quando cui due nodi con visibilità diretta intendono comunicare con altri nodi esterni che non interferiscono tra loro. Uno dei due nodi non riesce ad iniziare la comunicazione (anche se potrebbe), in quanto in base ai test sul canale da esso effettuati, il canale risulta occupato dalla comunicazione dell’altro nodo avviando quindi una procedura di back-off. Il problema del terminale nascosto invece si ha quando due nodi che non sono in visibilità diretta tra loro provano ad usare il canale di comunicazione contemporaneamente. Ciò determina collisioni di pacchetti sul nodo ricevente con la conseguente perdita delle informazioni contenute all’interno dei messaggi inviati; • Utilizzo del protocollo CSMA-CA: Nelle reti cablate la tecnica usata per la comunicazione è la CSMA-CD (Carrier Sense Multiple AccessCollision Detected) dove nessun host può iniziare una trasmissione se il canale è occupato da un’altra trasmissione. Nelle reti cablate, se un host è in fase di trasmissione, tutti gli altri host sono in grado di ascoltare la trasmissione quindi è possibile regolare l’azione della trasmissione con la tecnica delle attese o back-off. Il CSMA-CD sta alla CAPITOLO 2. MANET - MOBILE AD-HOC NETWORKS 7 base di diversi protocolli di accesso al mezzo nelle reti a commutazione di pacchetto. Tale protocollo si potrebbe applicare alle reti wireless se tutti gli host riuscissero a sentirsi tra loro, ossia nel caso in cui il raggio di trasmissione di ogni host fosse grande a sufficienza da coprire l’intera area di dislocazione degli altri host. In realtà questa è un’ipotesi ideale, non riscontrabile nella realtà a causa dei raggi limitati delle antenne e della scarsa affidabilità del segnale propagato da esse. Tali limitazioni rendono inapplicabile il protocollo CSMA-CD in questo tipo di reti quindi, si opta per l’uso del protocollo CSMA-CA. In questo protocollo, il terminale che vuole trasmettere dati ad un altro, prima manda un messaggio al destinatario per informarlo, quindi attende la sua risposta che dà il via libera alla trasmissione. Per risolvere il problema delle collisioni dei messaggi inviati da due o più stazioni contemporaneamente, ogni stazione può ritrasmettere il messaggio solo dopo esser passato un certo tempo casuale. Le reti MANET oltre a far comunicare i nodi fra di loro, devono essere in grado di comunicare con altri tipi di rete, specie quelle basate su indirizzi IP fissi. Questa necessità nasce dall’esigenza di avere l’interoperabilità con altre tipologie di rete. Ad esempio, può essere necessario far interagire le MANET con delle reti GSM, UMTS, WLAN o altro scenario ancora, la realizzazione di nuovi servizi. Un importante problema legato alle reti Ad-hoc è quella del risparmio energetico, tuttavia ci sono particolari MANET in cui questo requisito non riveste un ruolo di primaria importanza. Infine, le reti MANET devono tener conto del QoS (Quality of Service). Il QoS ha come scopo la realizzazione di una comunicazione deterministica tra due o più nodi facendo in modo che alcuni parametri quali riduzione di pacchetti ridondanti, migliore sfruttamento della banda e minimizzazione della perdita di pacchetti trasmessi, vengano rispettati ed ottimizzati nel miglior modo possibile. Nelle reti infrastrutturate, gli algoritmi di QoS operano in diversi strati CAPITOLO 2. MANET - MOBILE AD-HOC NETWORKS 8 dello stack protocol. Tali algoritmi vengono ampiamente aiutati da un buon livello fisico che assicura una bassa percentuale di errori nella trasmissione/ricezione dei pacchetti. Nelle MANET garantire la QoS è un compito più arduo da raggiungere a causa dei seguenti motivi: • Il livello fisico è soggetto ad un alto tasso di errori di trasmissione e di ricezione causato dall’ambiente fisico. • La presenza sul mercato di un alto numero di tecnologie wireless eterogenee crea scenari in cui i nodi possono essere dotati di dispositivi (antenne, ricevitori gps, etc.) diversi tra loro che causano difficoltà nelle comunicazioni. I continui studi effettuati sulle MANET rendono l’ ambiente molto dinamico e molto eterogeneo, ogni tecnologia quindi dovrà essere dotata di un layer a livello MAC che supporti un servizio di QoS che necessariamente dovrà essere flessibile. 2.1 Storia Le prime MANET si chiamavano reti a "pacchetti radio" e venivano sviluppate con l’appoggio della DARPA (Defense Advanced Research Projects Agency) nei primi anni settanta. Tra gli sviluppatori si trovano Jerry Burchfiel, Robert Kahn, e Ray Tomlinson, che più tardi avrebbero contribuito alla nascita di TENEX (un sistema operativo), Internet e dell’email. Tra gli esperimenti successivi della DARPA è possibile trovare il progetto SURAN (Survivable Radio Network) che si svolse negli anni ottanta. Una terza ondata di attività accademiche focalizzata sul argomento si verificò a metà degli anni novanta, con la diffusione di moduli radio 802.11 a basso costo. CAPITOLO 2. MANET - MOBILE AD-HOC NETWORKS 2.2 9 Le MANET oggi Le attuali MANET sono sviluppate anche per l’uso militare, per esempio le reti JTRS (Joint Tactical Radio System) e NTDR (Near Term Data Radio). Il popolare protocollo IEEE 802.11 (meglio conosciuto come "Wi-Fi") supporta una modalità ad-hoc in assenza di un access point. Tale protocollo permette l’invio di traffico attraverso una "nuvola" di apparecchi wireless, ognuno dei quali può trasmettere e ricevere dati, ma non concorre all’instradamento dei pacchetti. Sebbene il routing in reti ad-hoc non sia lo scopo primario del Wi-Fi, è in ogni modo possibile sfruttare protocolli di livello superiore per aggregare più reti 802.11 e formare dunque delle MANET più estese. 2.3 Tipi di MANET Esistono tre tipi di MANET [Ciu06]: • Le Vehicular Ad Hoc Networks (VANETs), che vengono utilizzate per la comunicazione tra veicoli ed altri veicoli e tra veicoli ed infrastrutture stradali; • Le Intelligent vehicular ad hoc networks (InVANETs), che sono una sorta di intelligenza artificiale che aiuta i veicoli a comportarsi in modi intelligenti durante le collisioni tra veicoli, in casi di infortuni e di possibili persone in stato di ubriachezza che quindi potrebbero causare incidenti; • Internet Based Mobile Ad-hoc Networks (iMANET), che sono reti adhoc che collegano nodi mobili a dei nodi fissi che accedono ad internet. Purtroppo in questo tipo di reti ad-hoc normali gli algoritmi di routing non si applicano direttamente. CAPITOLO 2. MANET - MOBILE AD-HOC NETWORKS 2.4 10 Protocolli di routing In una rete ad hoc, i nodi non hanno alcuna conoscenza a priori della topologia della rete nella quale si trovano, per cui devono scoprirla comunicando con gli altri nodi. Generalmente ogni nodo annuncia la sua presenza nella rete ed ascolta la comunicazione tra gli altri nodi, che dunque diventano conosciuti. Col passare del tempo ogni nodo acquisisce la conoscenza di tutti i nodi della rete e di uno o più modi per comunicare con loro. Gli algoritmi di routing devono: • Assicurarsi che le tabelle di routing siano ragionevolmente piccole, anche alla luce delle risorse ridotte delle quali spesso dispongono i nodi in una rete ad hoc; • Riuscire a scegliere il miglior percorso per raggiungere gli altri nodi (in base a vari parametri, come la velocità, l’affidabilità e l’assenza di congestione); • Tenere le proprie tabelle di routing aggiornate nel caso la topologia di rete cambi; • Raggiungere il funzionamento ottimale in poco tempo e inviando un numero esiguo di pacchetti. I protocolli possono essere generalmente classificati nelle seguenti tre categorie [Ciu06]: • Proactive • Hierarchical Proactive • Reactive Di seguito verranno spiegati più nel dettaglio. CAPITOLO 2. MANET - MOBILE AD-HOC NETWORKS 2.4.1 11 Proactive Questi protocolli cercano di mantenere lo stato delle proprie tabelle il più aggiornato possibile, anche in mancanza di un effettivo utilizzo della rete. In questa tipologia di protocolli troviamo: • DSDV (Highly Dynamic Destination-Sequenced Distance Vector routing protocol); • HSLS (Hazy Sighted Link State routing protocol); • OLSR (Optimized Link State Routing Protocol); • STAR (Source Tree Adaptive routing protocol). 2.4.2 Hierarchical proactive Questi protocolli riducono l’overhead di segnalazione proprio dei protocolli proactive (O(n)), suddividendo i nodi in classi e mantenendo nelle tabelle una entry per ogni classe. In tal modo è possibile ridurre significatimente l’overhead di segnalazione. In questa tipologia di protocolli troviamo: • DART (Dynamic Addressing RouTing); • ATR (Augmented Tree-based routing). 2.4.3 Reactive I seguenti protocolli rimangono inerti finché non è richiesto un percorso per l’inoltro di un pacchetti, per cui cercano di trovarne uno dalla sorgente alla destinazione. In questa tipologia di protocolli troviamo: • AODV (Ad hoc On Demand Distance Vector routing protocol); • Dynamic Source Routing (DSR). CAPITOLO 2. MANET - MOBILE AD-HOC NETWORKS 2.4.4 12 B.A.T.M.A.N. - Better Approach To Mobile Adhoc Networking The Better Approach To Mobile Adhoc Networking, ovvero B.A.T.M.A.N., è un protocollo di routing che è attualmente in fase di sviluppo da parte della “Freifunk”-Community [Bat09]. Punto cruciale del B.A.T.M.A.N. è il decentramento delle conoscenze circa la strada migliore attraverso la rete: nessun singolo nodo ha tutti i dati. Utilizzando questa tecnica, la necessità per la diffusione di informazioni riguardanti le modifiche di rete per ogni nodo della rete diventa superflua. Il singolo nodo salva solo le informazioni riguardo la "direzione" dalla quale ha ricevuto i dati ed invia i suoi dati di conseguenza; fornisce poi i dati che sono stati passati da nodo a nodo, creando dinamicamente il percorso. In questo modo viene creata una rete di “intelligenza collettiva”. 2.5 Prolema del terminale esposto e nascosto nelle reti MANET Le reti MANET così come le reti wireless sono soggette al problema del terminale esposto e quello del terminale nascosto [Ciu06]. 2.5.1 Problema del terminale esposto Illustreremo il problema con riferimento alla figura 2.1. CAPITOLO 2. MANET - MOBILE AD-HOC NETWORKS 13 Figura 2.1: Esempio di problematiche relative al terminale esposto. In figura 2.1 sono presenti 4 terminali denominati A B C e D, dove i terminali B e C hanno una zona di copertura comune mentre i terminali A e D non percepiscono la loro presenza o perché situati al di fuori della portata dei rispettivi raggi trasmissione o per altri motivi. Supponiamo che il terminale B inizi una trasmissione con il terminale A dopo essersi accertato della disponibilità del canale e supponiamo che allo stesso istante il terminale C voglia iniziare una trasmissione con il terminale D. C effettua un controllo sulla disponibilità del canale. Il canale non risulta disponibile dato che C riceve anche i pacchetti che A sta inviando a B. C quindi avvia la procedura di Back-off. In questo caso è facile notare che la comunicazione tra terminali C e D potrebbe invece essere possibile dato che C non interferirebbe con la trasmissione tra i terminali B ed A, quindi si viene a creare un blocco inutile della trasmissione tra 2 terminali con conseguente deterioramento delle prestazioni. 2.5.2 Problema del terminale nascosto Illustreremo il problema con riferimento alla (Fig. 2.2). CAPITOLO 2. MANET - MOBILE AD-HOC NETWORKS 14 Figura 2.2: Esempio di problematiche relative al terminale nascosto. Il terminale B Il problema è illustrato in figura 2.2 dove sono presenti 4 terminali denominati come A B C e D. Supponiamo che il terminale A dopo aver appurato la disponibilità del canale inizia una trasmissione verso il terminale B. Subito dopo, supponiamo che il terminale C voglia iniziare una trasmissione verso il terminale D. C effettua un test sul canale, pur accorgendosi della non disponibilità del canale inizia lo stesso la sua trasmissione. In questo caso siamo in presenza di continue collisioni tra pacchetti nel terminale B, terminale che in condizioni normali non è in grado di gestire le collisioni e dunque di ricevere correttamente il pacchetto inviatogli da A. Capitolo 3 VANET - Vehicular Ad-hoc NETwork Le reti VANET (Vehicular ad-Hoc network) dette anche “Mobile Ad Hoc Network for InterVehicle Communications” (IVC) sono una sottocategoria delle reti MANET. In questo genere di reti i nodi si muovono a velocità ragguardevoli in senso relativo (tra loro) e assoluto (rispetto a punti di riferimento fissi come distributori di benzina, semafori, eccetera). Le differenze principali tra le reti MANET e le reti VANET sono la velocità di spostamento dei nodi e di conseguenza il rapido mutamento della topologia delle reti o sottoreti. La comunicazione tra veicoli è considerata una delle priorità nell’ambito delle reti ad-hoc. La ragione dell’interesse in questo genere di tecnologia è il seguente: • Può essere di aiuto in situazioni di pericolo in strade o autostrade in caso di incidenti attraverso la diffusione di messaggi di “warning” che possono esser di ausilio ai conducenti dei veicoli; • Può fornire servizi di sicurezza attiva intelligente oltre a quella passiva fornita da sistemi tipo ABS o ESP. Esempi di sicurezza attiva possono essere segnalazioni acustiche in caso di situazioni pericolose che stanno 15 CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 16 per verificarsi oppure diffusione di informazioni metereologiche avverse come banchi di nebbia su strade; • Può fornire benefici tramite servizi innovativi all’intero sistema dei trasporti come ad esempio comunicare a tutti i veicoli all’interno di un’area geografica un incidente, riducendo così i tempi di soccorso, oppure, l’organizzazione di messaggi di emergenza in caso di eventi disastrosi in aree urbane sfruttando anche i sistemi di localizzazione dei veicoli. Quindi la tecnologia VANET se efficientemente implementata, può diventare uno degli strumenti più utili alla sicurezza stradale. È importante sottolineare che le VANET hanno caratteristiche peculiari rispetto alle MANET generiche, infatti, alcuni problemi importanti per reti ad-hoc generiche non creano problemi nelle VANET [Ciu06]: • I veicoli non hanno problemi di reperimento dell’energia necessaria per effettuare le comunicazioni dei messaggi. Infatti, possono usare l’energia delle batterie dei veicoli stessi. Tecnologie come Dedicated Short-Range Comminications (DSRC), oppure tecnologie 3G dei cellulari possono essere impiegate per la trasmissione dei messaggi tra i veicoli; • I veicoli, grazie all’uso di sistemi di posizionamento come il GPS e grazie all’uso di mappe dettagliate dei territori, hanno una buona conoscenza del territorio circostante; • L’assenza di problematiche energetiche dei nodi e la possibilità di immagazzinare dati in dispositivi di massa installati sui veicoli fanno sì che si possono creare algoritmi focalizzati alle performance e non al consumo energetico. Molte aziende produttrici di veicoli stanno facendo ricerca attiva su questo tipo di tecnologie ed i campi di ricerca tuttora aperti sono numerosi e CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 17 spaziano dalla realizzazione dello scheduling del broadcast, compito alquanto complesso data l’assenza di informazioni sulla topologia totale della rete, sino ad arrivare a studiare le problematiche che comporta l’impiego del flooding in un protocollo senza rilevamento di collisioni (CSMA-CA). Bisogna inoltre studiare i vari protocolli di rete applicabili a tale tecnologia e come questi possono essere ottimizzati se associati e coaudiuvati da sistemi di posizionamento (come GPS o mappe digitali) che permettono una conoscenza dell’ambiente circostante di ogni nodo. Infine, la natura dinamica che caratterizza le VANET e la necessità di avere comunicazioni estremamente veloci per poter far fronte ad eventi imprevisti (incidenti, ingorghi stradali, inversione di marcia repentina, etc.) implica anche studi dettagliati sulle performance reali delle soluzioni offerte. In figura 3.1 mostro una mappa dettagliata dei settori di ricerca più attivi nell’ambito delle reti VANET. Nel resto di questo capitolo fornirò una panoramica di alcune di queste diverse aree. CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 18 Figura 3.1: Aree di studio aperte nelle reti VANET 3.1 Protocolli di routing L’invio di un pacchetto tra nodi in una VANET è un’impresa ardua se paragonata alla comunicazione tra due host nelle reti infrastrutturate. Le reti infrastrutturate, come ad esempio le reti Telecom, sono dotate di dispositivi (router o switch) che inoltrano i dati verso link fisici. I terminali come PC o telefoni, si connettono ad internet allacciandosi direttamente alle infrastrutture di rete fissa in determinati punti geografici. A questi terminali, successivamente vengono assegnati degli indirizzi in base ad una gerarchia di rete prestabilita. L’attribuzione degli indirizzi dipende dalla posizione geografica in cui il terminale si collega. CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 19 Molto spesso, la collocazione geografica assume un identità equivalente agli indirizzi che vengono assegnati nella gerarchia, tale identità prende il nome di "identity-location". L’identity-location facilita notevolmente la costruzione delle rotte nella rete visto che i terminali sono geograficamente fissi o quasi (vedi ad esempio i PC connessi tramite access-point). Un sistema di comunicazione dotato da un’alta mobilità di terminali è quello della telefonia mobile. In questo sistema esiste però un’infrastruttura gerarchica preesistente, infatti il territorio viene suddiviso in zone, dette celle, ed ogni cella è coperta da un’antenna chiamata “Base Station” (BS). Ogni BS svolge il medesimo compito che svolgono router in Internet gestendo ed instradando gli utenti mobili (i cellulari) che si trovano sotto il suo raggio d’azione. Ogni utente mobile, sotto opportune condizioni (debolezza e disturbo del segnale, avvicinamento ad un’altra BS con segnale più nitido, elevato numero di errori riscontrati nei pacchetti ricevuti, effetti fisici di fading o multipath, eec) è in grado di ‘saltare’ da una BS ad un’altra con un processo di Hand-off. Tale processo consiste nell’attivazione di procedure che permettono l’interazione tra il cellulare e le BS, facendo sì che avvenga lo scollegamento da una BS in ed il collegamento ad un’altra senza interrompere (se possibile) il collegamento già stabilito. Questo sistema anche se dotato di molta mobilità, ha comunque infrastrutture fisiche fisse di riferimento. Le reti MANET ed in particolare le reti VANET cercano di estendere completamente la mobilità dei nodi senza far uso di reti infrastrutturate. Esse infatti hanno lo scopo di costruire reti o sottoreti autonome completamente mobili, costituite da insiemi di nodi che oltre a fare da terminali semplici, svolgano anche compiti prettamente di rete come ad esempio l’inoltro dei messaggi da un nodo all’altro (packet forwarding routing) oppure compiti di routing. Tali reti devono avere inoltre la capacità di potersi aggregare o disaggrega- CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 20 re in sottoreti. Il paradigma delle reti MANET e di conseguenza il paradigma delle VANET si differenzia da quello della telefonia mobile dal fatto che l’infrastruttura che svolge il compito di routing è anch’essa in movimento e non geograficamente fissa come in nei cellulari. Nelle VANET la topologia dell’infrastruttura di routing (essendo costituita dai nodi delle stessa rete) subisce cambiamenti nei suoi componenti o può mutare il sistema di indirizzamento utilizzato. Per trovare la posizione geografica di un veicolo e dunque la sua posizione nella VANET, è necessario trovare il veicolo router che lo instrada. Sono stati proposti i numerosi protocolli di routing che possono essere classificati in tre classi [Ciu06]: • Topology Based : questi protocolli utilizzano informazioni sui link esistenti tra i nodi della rete per effettuare il routing; • Position Based: questi protocolli utilizzano informazioni sulle posizioni geografiche dei nodi per effettuare il routing dei messaggi. Tali informazioni permettono ai protocolli di superare le limitazioni che hanno quelli di tipo topology-Based. Un servizio di localizzazione viene usato dal mittente per determinare la posizione del destinatario. Questa posizione viene inclusa nell’header di ogni pacchetto e funge da ausilio per l’operazione di routing. Con questi protocolli le decisioni di routing dipendono solamente dalla posizione geografica del destinatario e dalla posizione geografica dei suoi vicini più prossimi. Pertanto, i protocolli location-Based non creano o gestiscono rotte. I nodi non necessitano di salvare tabelle di routing o scambiare messaggi di controllo, inoltre, tali protocolli permettono il broadcast di messaggi verso una data area geografica (geo-cast). In questa categoria di protocolli distinguiamo il protocollo DREAM (protocollo di tipo proactive) e il protocollo GPSR il quale usa informazioni di localizzazione dei vicini, ottenuti dal forwarding periodico dei pacchetti; CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 21 • Geografici: I protocolli geografici sono dei protocolli che cercano di sfruttare le informazioni di localizzazione dei vari nodi (ottenute da GPS) per ridurre l’overhead nella fase di ricerca delle rotte. Un protocollo geografico che utilizza informazioni geografiche per la fase di route discovery è il protocollo LAR. Esso utilizza queste informazioni per ridurre lo spazio di ricerca di una rotta verso un nodo. La riduzione dello spazio di ricerca implica una riduzione nel numero dei messaggi necessari nella fase di discovery. 3.2 Problemi nelle comunicazioni L’obiettivo principale delle reti VANET è quello di creare le comunicazioni tra i vari nodi (i veicoli) della rete. Stabilire le comunicazioni non è un compito banale in quanto il percorso tra due nodi che vogliono comunicare non è conosciuto a priori e questo è dovuto all’alta mobilità di cui i nodi sono dotati. In queste reti, un messaggio viene trasmesso da un veicolo all’altro sino a raggiungere il nodo destinatario. Il sistema adottato per la creazione delle rotte è il broadcast. Il più semplice algoritmo di broadcast che si utilizza è il Flooding nel quale ogni nodo, al ricevimento di un messaggio, lo ritrasmette ai propri vicini una volta soltanto. Come si può notare, quest’algoritmo è molto semplice da implementare, di contro però, un suo utilizzo nella rete crea un numero esponenziale di messaggi ridondanti causati dalle continue ritrasmissioni da parte di ogni nodo. Il numero elevato di messaggi ridondanti che viene immesso nella rete, riduce drasticamente le prestazioni della rete stessa. In letteratura sono state studiate diverse possibili ottimizzazioni dell’algoritmo del Flooding. In generale, tutte le ottimizzazioni cercano di ridurre il numero delle ritrasmissioni e di conseguenza, il numero dei messaggi ridondanti. Esiste uno studio che compara gli algoritmi di broadcast e che ne CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 22 fa una classificazione nel quale vi è la seguente divisione degli algoritmi di broadcast: • Flooding semplice; • Metodi probabilistici (metodi che fanno uso di contatori); • Metodi basati sulle distanze o sulle posizioni. 3.2.1 Flooding semplice Il Flooding semplice consiste nella trasmissione omnidirezionale del pacchetto a tutti i nodi nella area di copertura del mittente, nodi che a loro volta invieranno il pacchetto a tutti i loro vicini compresi quelli dai quali hanno appena ricevuto il pacchetto. Con questo metodo se un nodo riceve più volte un messaggio dai propri vicini, più volte lo ritrasmetterà contribuendo così all’incremento del traffico nella rete [Ciu06]. 3.2.2 Metodi probabilistici basati su contatore I metodi probabilistici basati su contatore sono delle ottimizzazioni dell’algoritmo di broadcast del Flooding semplice. Esse cercano di ridurre il numero delle ritrasmissioni dei messaggi ridondanti durante la comunicazione tra i nodi. Questi metodi si basano sul concetto di contare i messaggi che i nodi ricevono durante una comunicazione. Ogni volta che un nodo riceve un nuovo messaggio, inizializza un contatore con valore "1" ed un ritardo di trasmissione chiamato RAD(Random Assessment Delay). Se durante questo ritardo RAD, il nodo riceve nuovamente lo stesso messaggio allora incrementa il contatore di 1. Allo scadere del RAD di tempo, se il contatore è al di sotto di una certa soglia prefissata il pacchetto viene spedito o altrimenti scartato [Ciu06]. CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 3.2.3 23 Metodo basato sulla posizione Il Metodo basato sulla posizione propone un’ulteriore ottimizzazione al Flooding Semplice limitando così il numero di ritrasmissioni ridondanti. Con questo metodo, un nodo prima di inviare un messaggio o ritrasmettere un messaggio ricevuto, appone all’interno dell’header la sua posizione geografica (ottenuta ad esempio da dispositivi come il GPS). Quando un nodo riceve per la prima volta un pacchetto, controlla la posizione geografica del mittente contenuta nell’header del pacchetto, calcola la distanza massima a cui può ritrasmettere il pacchetto in base alla sua posizione corrente e alla copertura della propria antenna. Tale distanza prende il nome di “area di copertura addizionale”. Se la distanza massima calcolata è inferiore ad un certo valore di soglia fissato, il nodo scarterà il pacchetto e tutte le sue repliche ricevute successivamente. Se invece la distanza supera la soglia limite, il nodo assegna un RAD al pacchetto e ritrasmette il pacchetto. Durante il tempo di attesa RAD, il nodo può ricevere nuovamente lo stesso pacchetto da qualche altro nodo, in questo caso il nodo ricalcola la distanza massima alla quale può essere trasmesso il pacchetto (nello stesso modo in cui è stata calcolata quando ha ricevuto un pacchetto per la prima volta) e ritesta le condizioni di soglia. Tutte queste operazioni vengono effettuate continuamente sino allo scadere del RAD [Ciu06]. 3.2.4 Risultati e comparazioni Partendo dalla base che il numero massimo di pacchetti ridondanti in una comunicazione sono quelli creati dal Flooding semplice, i risultati delle ottimizzazioni di tale algoritmo sono i seguenti: Il metodo basato su contatori elimina molti ritrasmissioni di pacchetti di broadcast quando si è in presenza di una densa distribuzione di host in un’area. CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 24 Se si hanno delle informazioni spaziali (ad esempio ottenute da GPS), il metodo basato su posizione è quello che ottiene le migliori performance perché è in grado di eliminare ulteriori re-broadcast in tutte le possibili distribuzioni dei nodi in un’area geografica senza tuttavia compromettere la raggiungibilità del nodo destinatario [Ciu06]. 3.3 Il broadcast storm problem Come studiato, se nelle comunicazioni di broadcast viene impiegato il flooding e come protocollo MAC e viene utilizzato il CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance) l’intera infrastruttura di comunicazione è soggetta ai seguenti problemi [Ciu06]: • Problema della ridondanza; • Numero elevato di operazioni di contesa del mezzo; • Numero elevatissimo di collisioni. Nel flooding semplice un host che riceve un pacchetto per la prima volta lo ritrasmette in broadcast. Se un host dopo aver inviato un pacchetto riceve una copia da qualche altro host, la copia ricevuta viene scartata. In una rete di “n” nodi il flooding genera n ritrasmissioni. Dato che la trasmissione tra i vari nodi è omnidirezionale e dato che una certa zona geografica può essere coperta da più nodi (i veicoli), è molto frequente che se un nodo invia un pacchetto ai suoi vicini, i vicini possono aver già ricevuto il pacchetto precedentemente da qualche altro nodo, causando così ridondanze nelle trasmissioni. Dopo che un nodo ha effettuato una trasmissione in broadcast di un pacchetto, i vicini del nodo, che ricevono tale pacchetto, effettuano alcuni test di ritrasmissione. Se i test vengono superati allora i nodi vicini ritrasmettono a loro volta, il pacchetto in broadcast. CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 25 La ritrasmissione dei nodi vicini comporta una forte contesa del mezzo che è direttamente proporzionale alla densità dei nodi del vicinato. La frequenza di collisione dei pacchetti è molto alta e provoca un degrado nelle prestazioni globali. I motivi di degradazione delle prestazioni del sistema sono determinati da: • Insufficienza del meccanismo di back-off; • Assenza del dialogo RTS/CTS; • Assenza della rilevazione delle collisioni. L’insieme di questi tre fenomeni è noto come "Broadcast Storm Problem". 3.4 Riduzione della ridondanza del broadcast Per la riduzione della ridondanza del broadcast nelle reti VANET sono state proposte diverse soluzioni, alcune delle quali fanno uso di euristiche come ad esempio la generazione random dei broadcast ossia l’invio dei messaggi a periodi di tempo casuali, altre invece usano approcci basati su contatori o sulle localizzazioni. Tutte queste soluzioni hanno in comune lo scopo di tentare di ridurre il traffico dei pacchetti ridondanti all’interno della rete. In genere, una riduzione del traffico può essere effettuata limitando la trasmissione dei pacchetti ad alcuni nodi ed inibendo le ritrasmissioni di altri nodi, adottando contemporaneamente dei criteri e degli schemi di ritrasmissione. Esempi di soluzioni che cercano di ridurre il numero di ridondanza dei pacchetti di broadcast sono i seguenti: • RBM; • TRADE; • DDT; • ODAM. CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 3.4.1 26 RBM RBM adotta una soluzione che prevede la realizzazione del broadcast di un messaggio solo nel caso dell’esistenza certa di nodi vicini. Con tale condizione un veicolo isolato non effettua rebroadcast. Questo metodo comporta una notevole riduzione del numero di broadcast, però un suo utilizzo richiede il mantenimento e la gestione di una lista di vicini per ogni veicolo, realizzata tramite lo scambio periodico di messaggi tra i vari veicoli. Il mantenimento della lista, l’individuazione dei vicini per ogni nodo e la natura inattesa dei messaggi di allarme determinano un aumento del carico della rete ed un incremento del ritardo del broadcast in caso di emergenza. 3.4.2 TRADE Il TRADE (Track Detection) permette ad ogni veicolo di determinare la posizione e la direzione seguita dai propri vicini. Nel TRADE, ogni veicolo che effettua un broadcast, deve eleggere un veicolo di rebroadcast tra i suoi vicini e poi indicarlo nel pacchetto. Con questa tecnica soltanto un nodo potrà effettuare un rebroadcast mentre gli altri scarteranno il pacchetto riducendo notevolmente il numero di ridondanze. Il TRADE richiede il mantenimento e la gestione dell’insieme dei vicini per ogni veicolo, cosa che rende tale schema inutilizzabile su larga scala. 3.4.3 DDT Il DDT (Distance Defer Time) è una soluzione che non richiede la pesante gestione di RBM e TRADE ma introduce i cosiddetti “distance-based defer time slots” per ogni rebroadcast. Quando un veicolo riceve un messaggio di allarme attiva un timer per determinare se effettuare un rebroadcast o meno. Se allo scadere del timer, il nodo non ha ricevuto altre copie del messaggio allora lo invia, altrimenti lo scarta. Il problema del DDT è che un veicolo CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 27 effettua il rebroadcast solo una volta, questo significa che è inaffidabile in una strada con poco traffico o con veicoli molto distanti tra loro. Si può comunque aumentare l’affidabilità di DDT tramite l’incremento del raggio di trasmissione dei veicoli. Studi come mostrano che anche se le raggio di trasmissione dei veicoli e portato a 2000 metri, una perfetta affidabilità non è ottenibile. Alcuni veicoli nelle simulazioni con raggio di comunicazione di 2000 metri non vengono informati, cosa che può fare scaturire situazioni di pericolo in caso di emergenza. 3.4.4 ODAM ODAM (Optimazed Dissemination of Alarm Messages) generalizza RBM TRADE e DDT risolvendo i problemi di frammentazione affidabilità e determinazione dei vicini. In presenza di incidenti, il veicolo danneggiato o il veicolo che rileva la situazione di pericolo, deve obbligatoriamente trasmettere messaggio di allarme in broadcast in modo da diffonderlo agli altri veicoli. Tra i nodi vicini, solo quelli nella zona a rischio terranno in considerazione del messaggio. I veicoli situati nella zona interessata costituiscono un gruppo multicast dinamico. Un veicolo danneggiato oltre ad effettuare il broadcast del potenziale pericolo, se il danno non è grave, seleziona uno veicolo tra i suoi vicini al quale delegare il compito del rebroadcast del messaggio. Tale veicolo prende il nome di “Relay”. La selezione del Relay è effettuata in modo da avere la massima copertura della zona a rischio non ancora coperta dal veicolo mittente. Generalmente il Relay è il veicolo più lontano tra i vicini del mittente del messaggio. Ogni veicolo, in base al messaggio che riceve, può sapere se diventerà o meno Relay ed in quel caso potrà effettuare il rebroadcast. La capacità di rebroadcast limitata solo ai veicoli Relay assicura una riduzione delle ridondanze nell’intera rete. Per ogni messaggio ricevuto, un veicolo deve potersi localizzare in rapporto al veicolo danneggiato e deve inoltre poter determi- CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 28 nare la direzione della circolazione del traffico, pertanto ODAM permette il restringimento del broadcast solo nel zone geografiche rilevanti. 3.5 Modelli di mobilità per le VANET La maggior parte dei protocolli di comunicazione per le reti VANET sono in fase sperimentale. Per studiare le funzionalità e le performance di tali protocolli vengono usati dei tool di simulazione. Questi tool utilizzano dei modelli di mobilità con i quali è possibile studiare vari aspetti delle VANET, come il loro comportamento nei diversi ambienti in cui operano, lo stack protocollare, le proprietà del canale (es. attenuazione del segnale), la mobilità della rete, etc. I modelli di mobilità per le reti ad-hoc sono stati largamente studiati in passato. La recente concentrazione delle ricerche sulle VANET è dovuta sia perché l’alta velocità dei suoi nodi, la scalabilità e la dinamicità della rete rendono le VANET uniche rispetto alle reti mobili ad-Hoc e sia perché la capacità di traffico e le mappe digitali del territorio attualmente offerte, danno un’opportunità di studio su movimenti realistici dei veicoli. I modelli di mobilità possono essere catalogati in base al livello di dettaglio al grado di “casualità” che offrono. Per lo studio di tali modelli si ricorre molto spesso all’uso di modelli usati nella fisica. In base ai dettagli offerti abbiamo 3 livelli: • Microscopico: Il modello microscopico descrive il comportamento dei singoli nodi e offre informazioni dettagliate su ogni veicolo (modelli fisici applicati: veicoli intesi come interazione separate di particelle); • Mesoscopico: Il modello mesoscopico descrive i movimenti omogenei di gruppi di veicoli come ad esempio i cluster (modelli applicati: veicoli intesi come particelle ibride e studiati nei movimenti come fluidocinematica dei gas); CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 29 • Macroscopico: Il modello macroscopico descrive il comportamento dell’intero sistema viario inteso come un modello di flusso di un generico fluido (modelli applicati: aggregazione di veicoli come modelli di viscosità dei fluidi). In base alla casualità offerta abbiamo 3 modelli: • Constrained Topology based: Il modello Constrained Topology based è un modello di mobilità in cui i movimenti sono visti come visite di nodi in grafi. Questi grafi vengono definiti da mappe prefissate (es. mappe autostradali, mappe cittadine ecc); • Trace Based: Il modello Trace Based è un modello in cui i veicoli possono muoversi in percorsi prestabiliti e fissati (es. lungo una strada, in un centro urbano, etc); • Statistico: Il modello statistico è un modello di mobilità in cui si ipotizza l’assenza di ostacoli tra i nodi, nodi che hanno ampia autonomia di movimento. Un esempio di simulatore che usa tale modello è l’RWP (Random Way Point). La generazione di pattern che simulano un movimento realistico del traffico è l’attuale direzione della ricerca. A questa ricerca sono molto interessate le case produttrici di veicoli. Il movimento del traffico e nello specifico dei veicoli è determinato dal comportamento dei conducenti. Oltre ai modelli elencati esiste un altro modello, il “Driver Behavior Model” che simula il comportamento umano e le sue reazioni in caso di situazioni eccezionali e impreviste. Tale Modello non tiene conto solo dei parametri fisici come il tipo di veicolo, la velocità, la direzione, la strada o altro, ma tiene conto anche del comportamento del conducente nel tempo, studiando le sue reazioni, le sue abitudini usuali su eventi, ad esempio come reagisce quando effettua un cambio di corsia o quando effettua rallentamenti in prossimità di curve. CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 30 Il Driver Behavior Model è noto per la sua accuratezza. Un simulatore che adotta tale pattern è il FARSI, impiegato dalla Chrysler per i suoi studi. In particolar modo, le simulazioni del FARSI mostrano dati come le velocità realistiche dei veicoli, le distanze, ma offre anche alcune proprietà macroscopiche come il flusso del traffico e l’utilizzo delle corsie nel tempo. Un altro simulatore impiegato nello studio della viabilità, del traffico e del comportamento dei vari protocolli di routing per le reti VANET è il Mars. 3.6 Sicurezza nelle VANET La mole di informazioni che transitano nelle reti VANET è enorme. Tali informazioni sono molto variegate, vanno dalla posizione di un veicolo, velocità relativa, direzione, messaggi di emergenza sino ad arrivare ai messaggi di applicazioni ludiche come la navigazione in Internet. La gran quantità di dati impone che i servizi offerti da questa nuova tecnologia vengano concepiti tenendo conto del rispetto della privacy degli utenti, sia nei confronti degli altri utenti che nei confronti delle autorità di controllo. Per rendere le VANET sicure sia dal punto di vista della privacy sia dal punto di vista delle applicazioni (verifica della localizzazione, validità dei messaggi ecc.) si stanno studiando varie soluzioni come l’utilizzo di cifrature, l’uso di pseudonimi temporanei associati ai veicoli e l’utilizzo di chiavi pubbliche sono alcuni esempi. Tutte le soluzioni proposte devono essere in grado di fornire strumenti per il mantenimento della privacy degli individui, evitare i tracciamenti dei percorsi e degli spostamenti dei veicoli, controllare la veridicità dei dati e devono essere capaci di raggiungere tali obiettivi con un basso costo computazionale a causa dell’enorme mole di messaggi che ogni veicolo riceve [RHP06]. Problemi legati alla privacy nelle reti infrastrutturate sono stati studiati in letteratura. CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 31 Le soluzioni proposte però sono di difficile realizzazione o hanno costi eccessivi se applicate alle reti ad-hoc ed in particolar modo alle reti VANET. 3.6.1 Privacy La privacy (termine inglese traducibile con riservatezza) è il diritto alla riservatezza delle informazioni personali e della propria vita privata: “the right to be let alone”. La privacy si traduce spesso nella capacità di una persona (o di un gruppo di persone), di impedire che le informazioni che la riguardano diventino note ad altri, inclusi organizzazioni ed enti, qualora il soggetto non abbia volontariamente scelto di fornirle. I fondamenti costituzionali sono ravvisabili negli articoli 14, 15 e 21 della costituzione, rispettivamente riguardanti il domicilio, la libertà e segretezza della corrispondenza, e la libertà di manifestazione del pensiero. Soprattutto, però, si fa riferimento all’articolo 2 della costituzione, incorporando la riservatezza nei diritti inviolabili dell’uomo. Il termine privacy è di origine anglosassone, inizialmente riferito alla sfera della vita privata. Ma è solo negli ultimi decenni che la nozione si è evoluta, arrivando a indicare il diritto al controllo sui propri dati personali. Da 15 anni a questa parte, la privacy è sempre più oggetto di invasione. Nonostante la promulgazione di leggi ad hoc per tentare di proteggerla, quotidianamente la nostra privacy è sempre più violata, proporzionalmente alla disponibilità di sempre nuovi strumenti tecnologici. La definizione di privacy ovviamente, deve essere estesa anche nel campo della tecnologia VANET. Tale tecnologia deve essere in grado di evitare fughe di informazioni riguardanti i tracciamenti dei percorsi svolti da un veicolo (e quindi del suo conducente) e le abitudini sugli spostamenti di un soggetto. La privacy di ogni veicolo e dei suoi passeggeri deve essere garantita in ogni suo aspetto, sia nei confronti dei “peer” (altri veicoli), sia nei confronti delle autorità [RHP06]. CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 3.6.2 32 Tipi di attacco nelle reti VANET In una rete VANET gli attacchi possono essere effettuati da diversi soggetti con scopi diversi. Definiamo “nodo attacker” o semplicemente “attacker” un nodo (un veicolo) il quale malignamente cerca di appropriarsi di dati privati di un altro veicolo e/o cerca di sabotare in maniera fraudolenta il corretto funzionamento della rete VANET. In generale, negli attacchi, un attacker, cerca di convincere un nodo di un dato inesistente o falsato. Egli raggiunge il suo scopo quando riesce a convincere la vittima della bontà di un dato. Il nodo attaccato, in questo caso per come sono organizzate le VANET, invierà il dato falso ad altri nodi vittima contribuendo a diffonderlo a macchia d’olio. Possiamo classificare tipi di attacchi secondo lo schema seguente [Ciu06]: CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 33 CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 34 Figura 3.2: Schema rappresentante la classificazione degli attacchi in una rete VANET. In genere gli attacchi consistono nell’immissione nella rete di messaggi falsati (nella geografia, nella topologia di rete o nel contenuto delle informazioni al loro interno) oppure nell’acquisizione impropria da parte di nodi non autorizzati di messaggi contenenti informazioni critiche per la privacy, destinate ad altri nodi. 3.6.3 Tecniche per garantire la sicurezza nelle VANET Gli attacchi su una rete VANET o su una sua sottorete possono essere variegati e con diversi scopi. Tali attacchi potrebbero mettere in crisi il sistema creando potenzialmente situazioni di pericolo ai veicoli e quindi ai passeggeri. Per evitare pericoli di questo tipo, è necessario un sistema di sicurezza che permetta di salvaguardare la veridicità dei messaggi trasmessi e di conseguenza l’incolumità dei passeggeri [SFKRH08]. 3.6.4 Tecniche di difesa delle VANET In base ai requisiti di sicurezza, i dati ricevuti devono essere autenticati e verificati nel contenuto in modo da avere una forma di protezione sia dai nodi interni (che possono volontariamente o involontariamente effettuare attacchi) sia da quelli esterni alla rete. I pacchetti scambiati tra i veicoli non contengono dati sensibili. La mancanza di tali dati fa si che non occorre nessuna forma di cifratura ma solamente una qualche forma di autenticazione. Esistono due tipi di meccanismi di autenticazione, uno simmetrico e uno asimmetrico. Per l’utilizzo di questi meccanismi, possono essere impiegate delle infrastrutture fisse (Base station) con il compito di mettere in contatto i veicoli con strutture di autenticazione pubbliche (PKI). CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 35 Queste strutture hanno il compito di verificare l’identità di un veicolo. Le PKI vengono gestite e controllate da organi di competenza specifici. Nello studio della sicurezza viene impiegato anche l’uso di modelli per la simulazione dei comportamenti dei veicoli e dei nodi maligni. Vengono inoltre studiate euristiche per la determinazione della natura degli attacchi e degli obiettivi, in modo da poter prevedere le possibili reazioni della rete e dei nodi, durante un attacco. Le soluzioni proposte sono soluzioni basate su autenticazione asimmetrica, soluzioni basate su autenticazione simmetrica e soluzioni basate su autenticazione e ausilio di sensori. Nei prossimi paragrafi verranno descritte in dettaglio queste tre soluzioni di autenticazione. In particolare verranno mostrati dei modelli per ognuno di esse e ne verranno studiate le varie caratteristiche, fornendo degli esempi di applicazione. 3.6.5 Autenticazione asimmetrica In letteratura esistono diversi studi sulla sicurezza delle VANET e sulla possibilità di utilizzo di autenticazione asimmetrica associata firme digitali, a certificati e chiavi pubbliche. La firma digitale potrebbe essere la migliore da adottare nelle reti VANET dato che i messaggi di sicurezza inviati in questo tipo di rete tipicamente sono di tipo stand-alone e hanno la necessità di essere inviati il più rapidamente possibile. Infatti, in una rete di questo tipo, un hand-shake preliminare ad una comunicazione tra nodi, potrebbe creare un overhead non accettabile all’intero sistema. Inoltre, l’enorme numero di nodi della rete e la connessione sporadica di questi a server di autenticazione, rende l’uso di una struttura di autenticazione pubblica dei nodi (PKI), il modo più adatto per implementare un sistema di autenticazione [RayHub05]. Nonostante l’importanza del problema della sicurezza nelle VANET, sono stati proposti pochi protocolli per i messaggi di sicurezza. CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 3.6.6 36 Autenticazione simmetrica Mentre in letteratura sono presenti molte proposte basate su autenticazione asimmetrica, l’applicazione della cifratura simmetrica alle VANET è abbastanza rara. Una spiegazione allo scarso utilizzo della cifratura simmetrica è dovuto alla scarsa flessibilità del suo impiego.In alcuni studi si fa uso di infrastrutture fisse che svolgono funzioni di autenticazione e di archivio di messaggi. Come detto precedentemente, anche se il sistema di cifratura a chiave simmetrica è meno flessibile rispetto a quello asimmetrico, in molti aspetti, per messaggi di piccola dimensione, questo sistema richiede meno potenza di calcolo e offre maggiore resistenza agli attacchi di cripto analisi [RayHub05]. Queste due peculiarità sono molto allettanti per le VANET. In queste reti, lo scambio di messaggi tra veicoli deve essere effettuato nel minor tempo possibile, inoltre si deve cercare di ridurre il più possibile le perdite o le ridondanze dei pacchetti. La crittografia simmetrica in questo caso apporta un beneficio al sistema dato che le operazioni di calcolo per la cifratura di ogni pacchetto sono minime. Altri vantaggi della soluzione con crittografia simmetrica rispetto a quella asimmetrica sono: • Non occorre tenere aggiornate le infrastrutture di certificazione (PKI) con chiavi pubbliche e private, raggiunte talvolta con l’ausilio BS, cosa che invece è necessaria nell’autenticazione asimmetrica; • Non occorre stabilire link di connessione tra veicolo e CA (Certificate Authority); • Non occorre stabilire link di connessione tra veicolo e CRL (Certificate revocation list). CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 3.6.7 37 Soluzioni basate su autenticazione e verifica con dei sensori Un miglioramento del sistema di validazione delle informazioni è l’utilizzo di sensori applicati ai veicoli associati ai sistemi si autenticazione (simmetrica o asimmetrica). I veicoli in questa soluzione, possono validare ulteriormente un messaggio in arrivo, grazie anche ai dati rilevati dai propri sensori. Inoltre, i sensori possono essere applicati anche per lo scambio di chiavi pubbliche. I veicoli hanno la capacità di controllare la veridicità dei dati in arrivo paragonandoli con il risultato dei loro test. In questo sistema inoltre, vengono impiegate euristiche che ordinano in qualche modo le relazioni tra le varie spiegazioni possibili di un evento e i dati corrotti ad esso associati, cercando di ottenere la più plausibile spiegazione agli eventi che succedono attorno ad ogni veicolo [RayHub05]. Un esempio potrebbe essere quello di individuare un nodo maligno dal non riscontro dei dati topologici che esso invia ed i risultati sulla topologia di rete che i nodi destinatari riescono ad ottenere dai propri sensori. Anche in questo caso si fa uso di modelli per la valutazione dei dati. Il modello utilizzato è il “Modello delle VANET” in cui si assume che ogni veicolo ha una certa capacità deduttiva spaziale ed una capacità deduttiva logica. La deduzione spaziale è la consapevolezza del modello che due veicoli non possono stare entrambi nello stesso luogo geografico, quindi se arrivano pacchetti contenenti informazioni sulla stessa area geografica da parte di due nodi distinti, tali pacchetti vengono scartati. La deduzione logica è l’uso di regole logiche applicate a contesti ambientali, regole che permettono al modello di dedurre se un dato è veritiero o meno. Un esempio di deduzione logica è ad esempio che un veicolo che viaggia ad una velocità elevata (150km/h) in una strada cittadina (contesto di traffico lento) è meno probabile rispetto ad un veicolo che viaggia a 30Km/h, oppure, CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 38 se i veicoli su una zona viaggiano a velocità sostenute, questi saranno ben distanziati e distribuiti tra loro. Se i dati ricevuti da un veicolo vicino sono compatibili al rilevamento dei sensori e al modello sopra citato, allora vengono validati e gestiti. Per la gestione dei dati che il modello VANET giudica contraddittori viene sviluppata una euristica chiamata “Adversarial Parsimony”. In breve, questa euristica suppone che un attacco che coinvolge un numero limitato di nodi è molto più probabile rispetto ad un attacco che coinvolge un gran quantità di nodi. In base a questo “Modello avversario” ogni nodo cerca sempre una strada alternativa (la più semplice possibile) per ripristinare la consistenza dei dati. In genere questo tipo di problema si risolve facendo delle ipotesi preliminari, ossia che il numero dei veicoli corrotti è basso e che i veicoli hanno la capacità di acquisire dati su un evento da più fonti, essendo in grado da poter valutare sia il dato in questione sia la bontà del nodo che lo invia. Se un veicolo non avesse quest’ultima capacità, un nodo maligno potrebbe non solo inviare dati fasulli sul suo conto, ma potrebbe anche inviare dati relativi ad altri nodi non esistenti. Questi attacchi sono noti in letteratura come “sybil attack”. Lo studio del “sybil attack” osserva che la ridondanza di dati che esiste in un sistema distribuito comporta un vantaggio, dato dal fatto che più dati da più nodi possono descrivere meglio un evento e possono agevolare l’individuazione di un nodo maligno. Inoltre, altro vantaggio che apporta la ridondanza è il multipath (la possibilità di percorrenza di più strade da parte di un messaggio), il quale agevola anche un controllo sui pacchetti. L’impiego massiccio dei sensori su una rete VANET, una densa comunicazione tra veicoli vicini e una forte ridondanza di dati provenienti da diverse fonti, evita un possibile attacco di tipo Sybil. Completata l’individuazione della presenza di veicoli vicini, si passa al controllo dei dati. In questo controllo si cercano eventuali inconsistenze sulle CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 39 informazioni e si cerca di dedurre quali messaggi e quali nodi risultano fasulli. Passato questo test e appurata la veridicità dei dati, il messaggio viene validato. Tipicamente una soluzione di questo tipo, in una rete distribuita, ha ottimi rendimenti se la densità dei veicoli è alta. Infatti, se il veicoli sono tanti e tra loro vicini, i dati che i nodi inviano vengono validati dai destinatari dato che possono verificare la bontà dell’informazione confrontando i dati contenuti nei messaggi in arrivo con i risultati dei propri sensori. Come è mostrato in figura 3.3 se un nodo è sotto attacco da più fonti allora può essere illuso, ma questa illusione può durare solo brevi periodi di tempo dato che l’alta mobilità della rete cambia rapidamente la topologia, quindi il nodo sotto attacco può incontrare altri nodi onesti mettersi di conseguenza in allarme. Figura 3.3: Il nodo grigio viene illuso nella topologia dagli attacche da parte dei nodi maligni in nero In figura 3.4 invece l’attacco da parte dei nodi maligni neri non ha effetto perché sono presenti molti nodi onesti e quindi è facile riscontrare anomalie di rete. CAPITOLO 3. VANET - VEHICULAR AD-HOC NETWORK 40 Figura 3.4: un nodo onesto è circondato da altri nodi onesti. Gli attacchi da parte dei 3 nodi maligni in nero non hanno effetto sul nodo vittima Capitolo 4 WSN - Wireless Sensor Networks Una wireless sensor network è un insieme di piccoli dispositivi elettronici autonomi in grado di prelevare dati dall’ambiente circostante e di comunicare tra loro. I recenti progressi tecnologici nei sistemi micro elettro meccanici (MEMS, micro electro mechanical system), nelle comunicazioni wireless e nell’elettronica digitale hanno permesso lo sviluppo di sensori (detti anche “sensor node”), consistenti in piccoli apparecchi a bassa potenza dai costi contenuti, multifunzionali e capaci di comunicare tra loro tramite tecnologia wireless a raggio limitato. Questi piccoli sensori sono formati da componenti in grado di rileva41 CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 42 re grandezze fisiche (sensori di posizione, temperatura, umidità ecc.), di elaborare dati e di comunicare tra loro. Una rete di sensori (detta anche “sensor network”) è un insieme di sensori disposti in prossimità oppure all’interno del fenomeno da osservare. Questi piccoli dispositivi sono prodotti e distribuiti in massa, ed hanno un costo di produzione trascurabile. Ognuno dei sensori ha una riserva d’energia limitata e non rinnovabile e, una volta messo in opera, deve lavorare autonomamente. Per ottenere la maggior quantità possibile di dati occorre effettuare una massiccia distribuzione di sensori (a volte anche migliaia o decine di migliaia). Una delle più comuni applicazioni in cui è possibile far uso di una rete di sensori consiste nel monitoraggio di ambienti fisici come il traffico in una grande città oppure dati rilevati da un’area disastrata da un terremoto. I nodi sensore all’interno di una rete hanno la possibilità di collaborare tra loro, infatti sono provvisti di un processore on-board; quindi, ciascun nodo, invece di inviare dati grezzi ai nodi responsabili della raccolta dei dati, può effettuare delle semplici elaborazioni e trasmettere solo i dati richiesti e già elaborati. Le reti di sensori possono essere utilizzate in molte applicazioni; la realizzazione di queste applicazioni richiede l’uso di tecniche utilizzate nelle reti wireless ad hoc. Comunque, molti degli algoritmi usati nelle reti ad hoc non sono compatibili con i requisiti di questo tipo di reti. I principali motivi sono [Hae06]: • Il numero di nodi che compongono una rete di sensori può essere di alcuni ordini di grandezza più grande del numero di nodi in una rete ad hoc; • I nodi sensore sono disposti con un’alta densità; • I nodi sensore sono soggetti a guasti; • La topologia di una rete di sensori cambia frequentemente; CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 43 • I nodi sensore usano un paradigma di comunicazione broadcast mentre la maggior parte delle reti ad hoc sono basate su una comunicazione di tipo punto-punto; • I nodi sensore sono limitati per quanto riguarda l’alimentazione, le capacità di calcolo e la memoria; • I nodi sensore possono non avere un identificatore globale (ID). Le reti di sensori possono migliorare in modo significativo la qualità delle informazioni: ad esempio possono garantire una elevata fedeltà, possono fornire informazioni in tempo reale anche da ambienti ostili e possono ridurre i costi di trasmissione delle stesse informazioni. Quindi, assumiamo che le reti di sensori possono essere utilizzate su un’ampia schiera di applicazioni che vanno da quella militare a quella scientifica, industriale, medica e domestica. Lo scopo fondamentale di una rete di sensori è di produrre su un periodo esteso di tempo, una informazione globale significativa ottenuta da una serie di dati locali provenienti dai singoli sensori. È importante notare che la rete deve essere realizzata in modo da garantirne l’integrità per un periodo di tempo che sia il più lungo possibile, allo scopo di ottenere informazioni accurate anche in caso di attacco alla rete da parte di organi esterni o di cedimenti hardware. Il fatto che un singolo sensore sia dotato di una piccola quantità di energia non deve impedirgli di inviare le informazioni elaborate, che verranno raccolte e unite alle informazioni provenienti dagli altri sensori. Un’importante via da seguire consiste nel rilevare il maggior quantitativo possibile di dati locali, evitando la trasmissione dei dati inefficienti attraverso la rete. Ci sono diverse possibili tecniche che possono essere usate per connettere la rete con l’esterno, in particolare per trasmettere le informazioni che essa raccoglie. CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 44 Nelle nostre reti sensoriali assumiamo che ci siano entità speciali chiamate “nodi sink”, che agisce come nodi gateway, a lungo raggio d’azione e distribuiti accanto ai sensori. Un utente specifica al nodo sink di quali informazioni ha bisogno. Il sink genera una interrogazione che viene poi immessa nella rete. Una o più risposte sono rinviate indietro al sink il quale riunisce ed elabora queste risposte prima di fornire il risultato finale all’utente. Le reti di sensori sono modellate come dei database distribuiti. Il recupero di informazioni è effettuato tramite un linguaggio simile all’SQL. Il flusso delle informazioni dipende dal meccanismo di elaborazione interno al database. La cosa più semplice sarebbe quella di lasciare al nodo sink il compito di collezionare tutte le informazioni da ciascun nodo sensore e quello dell’elaborazione dei dati. Questo cosa è però impraticabile per diversi motivi [Hae06]: • Gli ack che il sink è costretto a mandare ai vari nodi sensore rappresenterebbero un collo di bottiglia nel caso in cui il numero di nodi sensore fosse destinato ad aumentare; • I nodi sensore usano, per interagire tra loro, una comunicazione wireless. Alcuni nodi posizionati lontano dal sink potrebbero non essere in grado di comunicare direttamente con questo a causa della limitata potenza di trasmissione a disposizione. Quindi, non dobbiamo modellare una rete di sensori come un database distribuito dove tutti i nodi sono passivi, ma come un insieme distribuito di nodi che collaborano tra loro e dove ciascuno ha capacità attive programmabili. Questo permette a tutti i nodi di coordinarsi l’uno con l’altro per eseguire un task assegnato. In questo modo i nodi sensore diventano attivi e autonomi. I nodi sensore sono sparpagliati in un’area chiamata area di sensing. Ciascun nodo, all’interno di questa area, ha la capacità di accumulare e di instra- CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 45 dare i dati fino al nodo sink ed infine all’utente finale. Il nodo sink consiste in un’antenna capace di illuminare tutto il dominio occupato dai nodi sensori ovvero l’area di sensing. La posizione dei nodi all’interno della rete non deve essere predeterminata in quanto questo consente di utilizzare questa tecnologia in posti difficilmente accessibili o in operazioni di soccorso in luoghi disastrati per i quali è necessaria una disposizione random dei nodi. Ciò significa che gli algoritmi e i protocolli utilizzati nelle reti di sensori devono possedere capacità auto organizzative. I sensori, conoscendo le caratteristiche di trasmissione del sink, e sfruttando il suo segnale di illuminazione (che possono, o meno, sentire), possono effettuare un autoapprendimento di posizione, permettendo quindi la distribuzione random di questi nella rete. L’autoapprendimento di posizione dei sensori è quindi una delle caratteristiche più importanti di questi e, vista la scarsa quantità di energia di cui è dotato un sensore, si deve cercare di ottimizzare al meglio gli algoritmi che permettono ad un sensore di conoscere la propria posizione, abbassando il suo tempo di apprendimento, ovvero cercare di minimizzare il tempo in cui un sensore deve stare sveglio ed il numero di volte in cui esso si deve svegliare. 4.1 Origini L’idea di avere un “qualcosa” che possa monitorare dei parametri ambientali e che sia capace di integrarsi nell’ambiente in cui si trova, nasce nei laboratori della NASA, verso la fine del XX secolo: l’ambiziosa intuizione iniziale prevedeva addirittura di realizzare della “smart dust”, polvere intelligente per l’appunto, ossia un insieme di piccolissimi elementi (nell’ordine del pollice), che fossero in grado, un volta posizionati casualmente in un ambiente qualunque, di riuscire a configurarsi tra loro, costruendo una rete di comunicazione, che permettesse di inviare i dati puntualmente raccolti ad un nodo centrale; CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 46 caratteristica fondamentale della smart dust era anche il bassissimo costo dei singoli elementi, nell’ordine di qualche dollaro. Nella realtà, non si è poi dato seguito a questo progetto, ma l’idea di “sentire” il mondo, tramite elementi non tanto piccoli e nemmeno molto economici, ha comunque dato origine ad un nuovo filone di ricerca, quale quello delle reti di sensori wireless; da allora, infatti, numerosi laboratori universitari e privati si sono lanciati in uno sforzo cognitivo per realizzare dei sistemi hardware e software, tali da realizzare questo scopo. Come risultato, oggi abbiamo sul mercato numerosi tipi di hardware, su cui è alloggiata una parte di controllo, una di comunicazione e una di sensori, che permettono di costruire una rete di sensori, capaci di essere dislocati su aree abbastanza vaste e in grado di comunicare tra loro, tramite dei protocolli di comunicazione, sviluppati ad hoc per tali sistemi [Hae06]. Lo stesso campo delle telecomunicazioni ha aperto un filone nuovo di indagine, quale quello dello studio di protocolli di livello MAC e livello Routing adatti per le WSN. Ad essi si è affiancata anche un’altra ricerca, tesa a semplificare la procedura di programmazione dei singoli nodi ed è stato creato un software dedicato, open source, che funziona da vero e proprio sistema operativo, con una propria sintassi, ma che permette un buon livello di astrazione dal linguaggio macchina; tal software è stato denominato TinyOS, ovvero “piccolo Sistema Operativo”. 4.2 Caratteristiche Caratteristiche uniche di una WSN includono [RomMat04]: • potenza limitata che può raccogliere o immagazzinare; • Capacità di resistere a condizioni ambientali difficili; • Capacità di far fronte alle carenze del nodo; CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 47 • Mobilità dei nodi; • topologia dinamica di rete; • Comunicazione dei fallimenti; • Eterogeneità dei nodi; • Larga scala di distribuzione; • La capacità del nodo è scalabile e limitata solo dalla larghezza di banda della porta nodo gateway. I nodi dei sensori possono essere immaginati come piccoli computer, estremamente basilari in termini di interfacce e dei loro componenti. Generalmente questi nodi sono formati da un’unità di elaborazione con potenza di calcolo limitata, sensori (compresi i circuiti di condizionamento specifico), un dispositivo di comunicazione (di solito ricetrasmettitori ottici o in alternativa) e da una fonte di alimentazione in genere sotto forma di una batteria. Le stazioni base sono uno o più componenti distinti della WSN con molta più energia di calcolo e risorse di comunicazione. Esse agiscono come porte tra i nodi del sensore e l’utente finale. 4.3 architettura di una WSN Una wireless sensor network è solo una parte di un sistema più complesso, definito Sistema WSN; esso, infatti, inizia dalla WSN vera e propria ma prosegue con il canale di comunicazione tra la WSN e una database di raccolta dati, che può essere un server internet, e l’interfaccia tra il database e l’utente finale. Quindi, ha senso parlare di WSN e soprattutto, ha senso il suo utilizzo, se non rimane confinato alla semplice dimostrazione di funzionalità della stessa, CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 48 ma è in grado tramite delle interfacce opportune di interagire con l’utente finale: solo in questo modo si può ritenere che il “sensing”dell’ambiente in questione sia ragionevolmente utile. Analizzando in dettaglio gli elementi che costituiscono una WSN, appare subito chiara la differenza tra i nodi della rete, preposti alla gestione dei sensori e al mantenimento della infrastruttura wireless della rete e uno o anche più nodi, che hanno il compito di fare da collettori e trasmettere i dati ricevuti dagli altri nodi verso il server centrale [RomMat04]. Consideriamo in primo luogo, la struttura a blocchi di un singolo nodo sul quale è presente un elemento di “power supply”, generalmente una batteria, che fornisce l’alimentazione necessaria per tutte le funzionalità del nodo: in generale, la conservazione della carica della batteria è un elemento chiave, visto che la durata di vita dei singoli nodi e, quindi, della rete è uno dei parametri cruciali per valutare l’efficienza e la bontà di una WSN. Il cuore del sistema del nodo è sicuramente il microcontrollore, che deve rispondere alle caratteristiche di basso costo, buone capacità computazionali, memoria a bordo sufficiente per garantire le prestazioni minime richieste ad una WSN e possa consumare poca potenza, o almeno preveda degli stati di “power saving”, quando non viene utilizzato. Il microcontrollore è colui che gestisce ad alto livello tutti gli elementi presenti sul nodo: decide quando interrogare i sensori, quando trasmettere i dati e a quale nodo trasmetterli, può effettuare delle operazioni di data fusion, implementare e gestire il protocollo di comunicazione [ZanZor06]. Il “transceiver” (TRANSmitter/reCEIVER) è l’elemento di interazione del nodo con il resto dei nodi della rete, ovviamente nel range della sua portata di trasmissione: al transceiver sono affidati i compiti di ricezione e trasmissione dati e di “Sensing del canale”, ovvero deve analizzare il livello di potenza radio presente sul canale di comunicazione, per stabilire se trasmettere o meno un pacchetto dati; ad esso sono anche affidati tutti i compiti, richiesti dalla teoria delle telecomunicazioni, ovvero l’analisi della correttezza del pacchetto CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 49 ricevuto, l’invio della stringa di preambolo, etc. Il modulo di georeferenziazione può non essere presente a bordo, ma in generale, serve per fornire al nodo una informazione relativa alla propria posizione geografica. Molto importante per una WSN è lo stack dei sensori, ovvero l’insieme dei sensori che possono essere alloggiati su ogni singolo nodo, tramite una elettronica opportuna: garantire la presenza di una elettronica espandibile, ovvero che permetta di posizionare su ogni nodo un numero sufficientemente elevato di sensori, comporta sicuramente un innalzamento del livello di qualità della WSN, associato ad un notevole risparmio in termini di costi economici, visto che a parità di sensori posso avere meno nodi da posizionare, e in termini di “costi” di protocollo, perché una rete meno densa di nodi, può essere gestita anche da algoritmi meno complessi. La struttura di un nodo master non differisce sostanzialmente da un qualunque altro nodo, se non nel fatto che insieme ad esso deve essere prevista una elettronica apposita, per trasmettere i dati dalla WSN verso un provider internet o un qualsiasi altro sistema di raccolta dati, che possa essere accessibile all’utente finale. Questa elettronica aggiuntiva costituisce quello, che viene definito Gateway. Quindi, allo schema precedente del nodo, deve essere aggiunta una parte, preposta alla comunicazione con il server: essa è fortemente condizionata dal tipo di connessione che si sceglie di utilizzare: può infatti essere di tipo wired, come una LAN, Ethrnet, USB o altro, oppure può essere anch’essa wireless, ad esempio GPRS. Sarà quindi presente un’elettronica di interfaccia, che permetta la comunicazione tra Gateway e nodo master, e tra gateway e server, in questo caso può essere un comunissimo modem. CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 4.4 50 TinyOS Il TinyOS è un sistema operativo, creato per sistemi “embedded”, quindi deve essere in grado di “girare” in condizioni di risorse limitate: poca memoria, minime capacità di calcolo. La filosofia che ha portato alla realizzazione del TinyOS è nata dalla necessità di fornire i sistemi “embedded” di un sistema operativo, che pur occupando poca memoria riuscisse a svincolare il programmatore dalla contingenza dell’hardware utilizzato; in altre parole, l’uso del TinyOS permette di programmare un sistema “embedded”, con un linguaggio simile al C++, il NesC, pur senza conoscere approfonditamente il funzionamento dell’hardware di basso livello (Microcontrollore, transceiver, memoria flash, etc.). Questo significa che esistono delle “classi”, ovvero delle parti di programma già scritte, che gestiscono l’hardware di basso livello: conseguentemente se c’è la necessità di passare da un hardware ad un altro (per esempio da una Mica2 ad una Micadot), in linea di principio, è sufficiente specificare al momento della programmazione del mote (nodo sensore di un network che fa parte di una rete wireless) il tipo di mote presente, senza cambiare il codice di alto livello scritto dal programmatore. Chiaramente, ci sono delle note negative da considerare: in primo luogo, la presenza di un sistema operativo, per quanto piccolo, comporta certa occupazione di memoria, che viene sottratta così da quella nominalmente disponibile, inoltre introduce un maggiore onere computazionale per il micro e rende complessivamente più instabile il sistema. 4.5 Come viene progettata una WSN L’eterogeneità e la limitatezza delle risorse dei nodi sensori in termini di energia, potenza di calcolo e memoria, richiedono una progettazione accurata della struttura e dei protocolli di gestione della WSN in relazione all’applocazione specifica da realizzare. CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 51 Il risultato è lo sviluppo di soluzioni specificatamente disegnate per l’applicazione per cui il sistema è concepito e difficilmente adattabili a scenari operativi diversi. Queste caratteristiche ostacolano l’abbattimento dei tempi e dei costi di sviluppo di nuove applicazioni per WSN, rallentando di conseguenza la crescita del settore. La flessibilità di sviluppo di una soluzione e, quindi, la possibilità di ottimizzare il sistema per una specifica applicazione, si paga in termini di complessità della progettazione e tempi di sviluppo. Gli aspetti da considerare sono molteplici e riguardano sia le caratteristiche hardware dei nodi, sia la dotazione del software. 4.6 Elementi da considerare durante la progettazione Di seguito vengono descritti i principali elementi da considerare nel progetto di soluzioni per WSN [ZanZor06]. 4.6.1 Costo Poiché una rete di sensori è formata da un grande numero di nodi, il costo di un singolo nodo è molto importante. Se il costo della rete è maggiore rispetto all’utilizzo dei sensori tradizionali allora l’uso di una rete di sensori non è giustificabile. Il costo di un nodo sensore dovrebbe perciò essere abbastanza basso (minore di 1 euro). Questo è un obbiettivo non molto facile da raggiungere in quanto attualmente solo il prezzo di una radio bluetooth (che è considerato un apparecchio economico), è almeno 10 volte superiore al prezzo indicato. Un nodo ha anche altre unità come un processore o un campionatore; inoltre in alcune applicazioni può essere necessario equipaggiare un nodo con CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 52 un sistema di posizionamento globale (GPS). Tutte queste cose portano ad un incremento del costo di un sensore. 4.6.2 Connettività In una rete di sensori multihop i nodi possono interagire tra loro tramite un mezzo di comunicazione wireless. È quindi possibile utilizzare onde radio. Una possibilità è quella di usare bande ISM (Industrial Scientific and Medical), cioè un gruppo predefinito di bande che in molti paesi sono utilizzabili liberamente. La maggior parte dei sensori attualmente in commercio fanno uso di un circuito RF. Un altro possibile modo per far comunicare i nodi è tramite gli infrarossi. La comunicazione con gli infrarossi non richiede permessi o licenze e protetta da interferenze. I transceiver basati sugli infrarossi sono economici e facili da costruire. Il problema maggiore che si ha nell’uso degli infrarossi è la necessità di avere un interfacciamento diretto tra il trasmettitore ed il ricevitore. Questo rende gli infrarossi di difficile utilizzo nelle reti di sensori dove solitamente i nodi sono disposti in modo random. La scelta del mezzo trasmissivo è imposta dall’applicazione. Ad esempio, le applicazioni marine impongono di usare l’acqua come mezzo trasmissivo. È quindi necessario usare onde che possano penetrare nell’acqua. 4.6.3 Hardware Un nodo sensore è composto da quattro unità base [ZanZor06]: • Unità di sensing: di solito è composta da due sotto unità: sensore e convertitore analogico-digitale; • Unità computazionale: di solito è associata ad una piccola unità di immagazzinamento dati e gestisce le procedure che permettono la col- CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 53 laborazione del nodo con gli altri nodi della rete per portare a termine il task assegnato; • Unità transceiver : è l’unità che connette il nodo alla rete. Può essere un apparecchio ottico oppure un apparecchio a radio frequenza (RF). È possibile usare anche delle radio con basso “duty-cycle” anche se attualmente ci sono problemi nell’usare questi apparecchi in quanto viene consumata molta energia per le operazioni di spegnimento; • Unità energetica: è forse la componente più importante di un nodo sensore; a volte può essere supportata da una unità per il recupero di energia (ad esempio da un pannello solare). Queste quattro componenti sono quelle basilari per un nodo sensore. 4.6.4 Posizionamento dei nodi Un gran numero di nodi sono disposti l’uno accanto all’altro a volte anche con un’alta densità. Questo richiede un’attenta attività per il mantenimento della topologia. Il mantenimento e il cambiamento della topologia può essere diviso in tre fasi: • Pre-deployment e deployment phase: i sensori possono essere sia gettati sia disposti uno ad uno nell’ambiente; infatti possono essere gettati da un aereo, da una catapulta, collocati uno ad uno da un robot o da una persona umana; • Post-deployment phase: i cambiamenti topologici della rete sono dovuti al cambiamento della posizione dei nodi, oppure alla variazione della raggiungibilità di un nodo, all’energia disponibile, alla presenza di malfunzionamenti etc; • Re-deployment of additional nodes phase: i nodi sensore addizionali possono essere ridisposti in qualsiasi momento per rimpiazzare i nodi CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 54 malfunzionanti o a causa della dinamica dei task. L’aggiunta di nuovi nodi comporta la necessità di riorganizzare la rete. L’alta frequenza di cambiamenti topologici e il vincolo stringente del risparmio energetico richiedono protocolli di routing molto particolari. 4.6.5 Mobilità In generale le WSN sono caratterizzate da un basso grado di mobilità. Tuttavia, alcune applicazioni prevedono che una parte dei nodi della rete possano spostarsi autonomamente, con mezzi propri o perchè collocati su oggetti mobili, oppure a causa di eventi esterni [ZanZor06]. In tal caso si parla più propriamente di MANET. La velocità di spostamento ed il grado di mobilità influiscono sulla progettazione di tutti i protocolli di gestione e, in particolare, sui protocolli di accesso al mezzo (MAC) e di instradamento. 4.6.6 Scalabilità Il sistema deve essere in grado di funzionare anche all’aumentare del numero di nodi (che possono andare da un basso numero di unità, fino ad arrivare a qualche milione di sensori). La scalabilità può essere ottenuta anche sfruttando la natura densa delle reti di sensori. La densità di nodi in una rete di sensori risulta “application dependent” e può variare da pochi a centinaia di nodi in una regione di diametro minore di 10m. La densità, cioè il numero di nodi presenti all’interno del raggio di trasmissione di un nodo, può essere calcolata nel seguente modo: dove N è il numero di nodi sparpagliati in una regione di area A ed r è il raggio di trasmissione di un nodo. CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 4.6.7 55 Elaborazione in tempo reale Alcune applicazioni, come il tracking o il puntamento di oggetti, richiedono di elaborare in tempo reale (ovvero in un intervallo di tempo sufficientemente piccolo) eventi rilevati dai diversi nodi. La rapidità nel processing dei dati e la capacità di sincronizzare i nodi con una precisione adeguata possono diventare fattori critici nella progettazione dei protocolli e dei servizi offerti dalla WSN [ZanZor06]. 4.6.8 Sicurezza Una WSN può essere soggetta a molteplici tipi di attacco alla sicurezza. Oltre ai classici problemi di intercettazione e interferenza (jamming) che affliggono le comuni reti radio, la natura distribuita delle SWN le rende fragili rispetto ad altre forme di intrusione, come il tampering, che consiste nell’introduzione nella rete di nodi manomessi o estranei che la rete potrebbe accettare come propri, consentendo a questi di alterare o intercettare le comunicazioni [ZanZor06]. 4.6.9 Consumo energetico Un sensore è dotato di una limitata sorgente di energia. Il tempo di vita di un nodo sensore dipende molto dal tempo di vita della batteria. In una rete di sensori ogni nodo ha il ruolo sia di generare che di ricevere dati, perciò la scomparsa di alcuni nodi può portare a significativi cambiamenti topologici che possono richiedere una riorganizzazione della rete e del routing. È per queste ragioni che molte ricerche si stanno concentrando sulla creazione di protocolli e algoritmi “power-aware”, cioè protocolli che ottimizzano il consumo energetico. Mentre nelle reti mobili e nelle reti ad hoc il consumo di energia è un importante fattore ma non è il principale (che comporta invece il soddisfacimento della QoS nelle WSN), nelle reti sensoriali il consumo di energia è CAPITOLO 4. WSN - WIRELESS SENSOR NETWORKS 56 la principale metrica per valutare le performance: questo perché nelle altre reti è possibile ricaricare o cambiare le batterie dei nodi mentre nelle reti sensoriali una volta che la batteria è scarica il nodo è da considerarsi morto. Il consumo di energia in un nodo sensore è essenzialmente dovuto alle tre principali attività svolte dal nodo [ZanZor06]: • Sensing: la potenza necessaria per effettuare il campionamento dipende dalla natura dell’applicazione; • Data processing: l’energia spesa nel processare i dati è molto piccola se comparata a quella spesa per la comunicazione; • Communication: dei tre fattori è quello che necessita della maggior quantità di energia. La comunicazione comprende sia la ricezione che la trasmissione di dati i cui costi energetici possono essere ritenuti uguali. Capitolo 5 Algoritmi Data fusion La fusione dei dati, è generalmente definita come l’uso di tecniche che combinano i dati provenienti da fonti multiple e raccogono tali informazioni al fine di ottenere deduzioni in maniera più efficace e precisa. I processi di fusione sono spesso classificati come bassi, medi o alti, a seconda della fase del trattamento in cui la fusione avviene. La fusione a basso livello (Data Fusion), combina diverse fonti di dati grezzi per la produzione di nuovi dati grezzi. L’aspettativa è che i dati fusi siano più significativi e sintetici che i dati in input originali. 5.1 Tecniche matematiche maggiormente utilizzate per la fusione di dati Tra le varie tecniche di fusione dati, il “Bayesian Decision Theory” e la “Dempster-Shafer Theory of evidence” (DST) sono due tecniche utilizzate frequentemente. 57 CAPITOLO 5. ALGORITMI DATA FUSION 5.1.1 58 “Bayesian Decision Theory” La teoria della decisione Bayesiana è una delle tecniche più comunemente utilizzate nella fusione di dati. E’ utilizzata per generare un modello probabilistico di un sistema di stati incerti attraverso il consolidamento e l’interpretazione dei dati sovrapposti forniti dai diversi sensori. La teoria Bayesiana determina anche le probabilità condizionate da eventi a priori, questa probabilità rivista viene chiamata “probabilità a posteriori”. L’uso di più sensori nel progetto di fusione di dati, può causare problemi decisionali, ma l’applicazione del teorema di Bayes, in questi casi, si è dimostrata efficace per superare questa sfida. Questo teorema modella i sistemi di stati scosciuti attraverso l’uso delle funzioni probabilistiche per determinare un insieme adeguato di azioni. Senza un mezzo probabilistico di fusione dei dati, i sensori sono in grado di trasmettere solo un binario “si” oppure “no”, risposta calcolata in base ai propri processi di classificazione isolati ed interni. Questa risposta “si” oppure “no” può essere definita come una decisione “rigida”, perchè non segnala nessun livello di incertezza al centro di fusione di dati globale, ma solo una risposta definitiva. Il problema con questo metodo, è che una gran quantità di informazioni utili viene persa quando il sensore genera solo risposte come “si” oppure “no” sui dati raccolti. Per affrontare tale problema , la fusione di dati probabilistica genera quella che potrebbe essere definita come una decisione “soft”. Questo processo fornisce una misura di fiducia maggiore attraverso la quantificazione, anche se limitata, dell’incertezza che sta dietro ad ogni decisione del sensore. Diversi studi confermano l’efficacia di utilizzare il teorema di Bayes per l’identificazione di obiettivi sconosciuti, ma anche il fatto che un sistema di sensori che prendono decisioni “soft” in architetture decentralizzate, sono meno soggetti a degenerare completamente. CAPITOLO 5. ALGORITMI DATA FUSION 5.1.2 59 “Dempester-Shafer Theory” (DST) Come indicato in precedenza, la teoria della decisione bayesiana è limitata nella sua capacità di gestire l’incertezza dei dati del sensore. Ciò può ostacolare l’applicazione della tecnica di data fusion perchè i dati del sensore sono per natura molto incerti. L’incertezza può comparire sotto molte forme, tra cui: • incompletezza: i sensori rischiano di perdere o trascurare qualche dato; • imprecisione: i sensori possono fornire solo approssimazioni; • incoerenza: i dati del sensore potrebbero non essere coerenti; • ambiguità: i flussi di dati provenienti dai vari sensori possono essere indistinguibili gli uni dagli altri. La DST viene quindi considerata come una valida alternativa alla teoria bayesiana (Payne, 1993), grazie alla sua maggiore capacità di lavorare con i dati di rilevante incertezza. La DST utilizza quindi un “intervallo di certezza” per rimpiazzare il singolo punto di probabilità del metodo bayesiano. Questo “intervallo di incertezza” viene delimitato da credenza e plausibilità. La credenza è il limite inferiore di questo intervallo e rappresenta i casi che possono essere dimostrati, mentre la plausibilità è il limite superiore dell’intervallo e rappresenta le prove non confutabili [DHL96]. Questa teoria viene definita come "una generalizzazione del ragionamento di Bayes, che offre un modo per combinare le informazioni incerte di alcuni sensori con quelle provenienti da differenti sensori". Uno dei principali vantaggi della DST è che i dati del sensore possono contenere vari livelli di astrazione, questo significa che ad ogni sensore è permesso di fornire informazioni solo al proprio livello di dettaglio. CAPITOLO 5. ALGORITMI DATA FUSION 5.1.2.1 60 Differenze tra le due tecniche Il DST ha diversi vantaggi rispetto alla teoria della decisione bayesiana (Hughes, 1989). I più importanti sono che le ipotesi non devono escludersi a vicenda (questo grazie all’inserimento di un intervallo di incertezza), e le probabilità coinvolte possono essere empiriche o soggettive, quindi se secondo un nodo, un determinato evento deve appartenere ad un certo intervallo di probabilità, viene preso in considerazione e sucessivamente utilizzato [DHL96]. E’ stato inoltre affermato che la teoria di Dempster-Shafer consente il passaggio da tecniche probabilistiche a tecniche logiche quando le ipotesi diventano quasi del tutto vere o false (Hughes, 1989). Ci sono altre due differenze importanti tra la DST e il teorema bayesiano. In primo luogo, nella DST, a differenza dalla definizione del teorema bayesiano, la mancanza di conoscenza dell’esistenza di un evento (che può essere ad esempio un incidente) non viene considerata come se quell’evento non fosse mai accaduto. In secondo luogo, se ci sono due eventi nella DST che sono inconsistenti tra loro, l’incertezza su uno di essi può essere vista come prova positiva dell’altro evento. In altre parole, nella DST, un nodo può contenere sia pareri favorevoli sia incerti rispetto ad un evento, grazie all’inserimento “dell’intervallo di certezza”, mentre nella teoria delle decisioni Bayesiana un nodo deve scegliere un atteggiamento approssimato dalla teoria stessa. Ad esempio, supponiamo che un nodo A nota che al suo vicino B è diminuito del 10% l’ingeresso dei pacchetti. Quindi, il “Packet drop rate” (PDR = numero di pacchetti persi / numero totale di pacchetti in arrivo) per il nodo B è 0,1. Se si applica l’approccio bayesiano in questo esempio, è possibile trarre la conclusione che il nodo B ha una probabilità del 90% di inoltrare correttamente i pacchetti in entrata, con la quale si può facilmente concludere che il nodo B è un buon nodo. Tuttavia, se il nodo A rileva il 10% di pacchetti CAPITOLO 5. ALGORITMI DATA FUSION 61 persi a causa del movimento del nodo e del cambiamento di modello di attacco (ad esempio il passaggio dalla perdita del pacchetto alla modifica del pacchetto, ovvero se un pacchetto non viene perso, ma modificato e quindi non riconosciuto più come quello precedente), allora non dovremmo trarre la conclusione che il nodo B è buono. Contrariamente al teorema bayesiano, nella DST dobbiamo quindi calcolare il PDR come il 10% , ma segneremo il restante 90% come probabilità incerta di inoltrare pacchetti e non come sicuramente corretta , in modo tale da rendere il processo decisionale più realistico [LiJos09]. Quindi, la DST è più adatta quando vi è incertezza o addirittura nessuna conoscenza a priori per l’evento. 5.2 Algoritmi Data Fusion per VANETs La fusione di dati è stata proposta come modo per ottimizzare l’utilizzo della banda e dell’immagazinamento dei dati o come modo per gestire informazioni ad alto livello. Molte strategie di fusione di dati sono state sviluppate nel contesto delle reti di sensori (WSN), dove lo scopo principale è quello di ridurre il consumo energetico. Tuttavia, l’elevata mobilità dei veicoli ed il loro elevato numero che può essere presente in un’area geografica, rendono queste strategie complicate da applicare alle reti veicolari. Inoltre, il consumo di energia non è un problema nelle reti veicolari. Di seguito, indicherò alcuni algoritmi riguardanti la fusione di dati nello specifico contesto delle reti veicolari. Di seguito presenterò tre algoritmi utilizzati per la fusione di dati nelle reti veicolari [DDIZC08]: • Region-based Location Service Management Protocol (RLSMP); • Location Based Aggregation (LBAG) algorithm; CAPITOLO 5. ALGORITMI DATA FUSION 62 • Algoritmo basato sull’aggregazione di dati gerarchica. 5.2.1 Region-based Location Service Management Protocol (RLSMP) Questo algoritmo utilizza l’uso della fusione del messaggio (ad esempio, all’interno del nodo, ovvero del veicolo, diverse informazioni riguardanti lo stesso evento, vengono fuse tra loro in pacchetti più grandi, detti “aggregati”) e della creazione di un clustering geografico che localizza i veicoli in una determinata zona, utile a ridurre al minimo il numero di aggiornamenti di posizione e l’esecuzione di query per la gestione dei messaggi di localizzazione dei veicoli [DDIZC08]. Bisogna anche tenere conto che, sebbene la fusione del messaggio migliora la scalabilità del sistema, in quanto è possibile gestire meglio e più velocemente i pacchetti inviati dai nodi e di conseguenza possono essere gestiti ancora più nodi, può anche portare a: • più collisioni di pacchetti ed a ritrasmissioni dovute alla trasmissione di aggregati più grandi, dove diventa più probabile la perdita di qualche pacchetto per ogni aggregato; • ritardi più lunghi nella ricezione dei pacchetti, in quanto le informazioni devono essere bufferizzate per la fusione prima di essere spedite, quindi, essendo contenute in aggregati, cioè pacchetti di dimensioni più grandi di quelle normali, la bufferizzazione richiederà più tempo rispetto a prima. 5.2.2 Location Based Aggregation (LBAG) algorithm In questo protocollo, la fusione dei dati si basa sulla classificazione di posizioni statiche invece di considerare una struttura ad albero di nodi che sarebbe molto difficile da mantenere a causa della elevata mobilità dei veicoli, in altri CAPITOLO 5. ALGORITMI DATA FUSION 63 termini i nodi fanno parte di una determinata zona, fino a quando rimangono al suo interno, risultando come nodi statici. Punto di forza dell’algoritmo LBAG è l’utilizzo di un protocollo “geocast” per lo scambio dei messaggi, che consiste nel definire una certa area geografica formata da nodi, i quali scambieranno pacchetti e messaggi esclusivamente tra di loro, ovvero all’interno della rete geografica alla quale appartengono. Un’altra importante caratteristica di questo algoritmo è che vengono utilizzate tecniche di “soppressione dei messaggi”, utili a ridurre al minimo la probabilità di messaggi ridondanti (molti veicoli, in linea di principio, potrebbero generare più messaggi uguali per la stessa area) [DDIZC08]. 5.2.3 Algoritmo basato sull’aggregazione di dati gerarchica Viene studiata questa tecnica di aggregazione di dati gerarchica in quanto un veicolo ha bisogno di dati dettagliati riguardo i suoi dintorni, mentre invece su altre zone gli bastano dati anche più grossolani. L’aggregazione gerarchica viene definita in una “mappa dei dati”, mentre le aree di raggruppamento vengono create in base alla loro relazione naturale (ad esempio, raggruppamenti per distretti o strade). L’algoritmo proposto è basato sulla modifica della metodo “Flajolet-Sketch Martin” (FSM) che studia la memorizzazione di informazioni approssimative. Questo approccio offre prestazioni interessanti, per esempio, è possibile unire due aggregati (anche se hanno una certa sovrapposizione), evitando la comparsa di duplicati [DDIZC08]. 5.3 Algoritmi Data Fusion per WSN Le WSN pongono nuove sfide di ricerca relative alla progettazione di algoritmi, protocolli di rete e software che consentirà lo sviluppo di applicazioni CAPITOLO 5. ALGORITMI DATA FUSION 64 basate su dispositivi sensore. Le reti di sensori sono composte da nodi sensore cooperanti in grado di percepire l’ambiente per monitorare fenomeni fisici ed evendi di particolare interesse. Le WSN possono essere applicate in contesti diversi, come l’ambiente, il campo militare o il controllo industriale, avendo una grande potenzialità benefica per la società. Il design della WSN utilizza spesso alcuni approcci come l’energia, le tecniche di conoscenza, la comunicazione multihop, e anche tecniche di controllo di densità per estendere il “lifetime” della rete. Inoltre queste reti devono essere resistenti ai guasti per diverse ragioni, come la distruzione fisica di nodi o la perdita di energia. I meccanismi di tolleranza dell’errore dovrebbero approfittare della ridondanza dei nodi e dei compiti di processing distribuiti ma hanno ancora molte sfide da superare prima di avere una perfetta distribuzione delle reti di sensori. Queste sfide includono la topologia dinamica, l’eterogeneità del dispositivo, la capacità di potenza limitata, la mancanza di qualità del servizio, supporto per le applicazioni, la qualità di fabbricazione e le questioni ecologiche. La capacità di trasmettere e ricevere pacchetti di dati consente all’informazione e al controllo di essere condivisi tra nodi sensore, ma anche di eseguire compiti di cooperazione, tutti basati su algoritmi differrenti, che sono stati iniziamente progettati per tali reti. Di seguito descriverò brevemente alcune classi di algoritmi per le WSN [NakLou09]: • Algoritmi centralizzati : vengono eseguiti su un nodo centrale e solitamente beneficiano di una conoscenza globale della rete. Questo tipo di algoritmi non è molto comune nelle WSN perché il costo di acquisizione di una conoscenza globale della rete è in genere impraticabile nella maggior parte delle WSN. CAPITOLO 5. ALGORITMI DATA FUSION 65 • Algoritmi distribuiti: sono legati a diversi modelli computazionali. In una WSN, il tipico modello di calcolo è rappresentato da una serie di dispositivi di calcolo (i nodi sensori) in grado di comunicare tra loro utilizzando un meccanismo di message-passing. Quindi, un algoritmo distribuito è un algoritmo che esegue una computazione di una certa complessità su nodi sensori diversi e utilizzando il message-passing per comunicare. • Algoritmi localizzati : comprendono una classe di algoritmi in cui un nodo prende le sue decisioni sulla base di conoscenze limitate a livello locale, invece di una conoscenza globale della rete. Quindi "località" si riferisce alla prossimità del nodo. Gli algoritmi per WSNs possono anche avere alcune caratteristiche specifiche come l’auto-configurazione e auto-organizzazione, a seconda del tipo di applicazione di destinazione. L’auto-configurazione, è la capacità di un algoritmo di regolare i parametri operativi in base ai requisiti di progettazione. Ad esempio, ogni volta che un determinato valore energetico è raggiunto, un nodo sensore può ridurre la sua velocità di trasmissione. L’auto-organizzazione, è la capacità di un algoritmo di adattarsi ai cambiamenti risultanti da interventi esterni in modo autonomo, come i cambiamenti topologici (a causa di guasti, di mobilità, do inclusione di nodi) o la reazione ad un evento rilevato, senza l’influenza di una entità centralizzata. Gli algoritmi di fusione dei dati possono essere applicati a qualsiasi soluzione che ha bisogno di fare inferenze o migliorare le stime. Tecniche matematiche classiche sono state utilizzate per permettere alla fusione di dati di risolvere di molti problemi [NakLou09]. Ad esempio il metodo “Least-Squares” è stato utilizzato per predire i dati del sensore e trovare la posizione dei nodi. CAPITOLO 5. ALGORITMI DATA FUSION 66 Il “filtro a media mobile” è stato utilizzato per stimare le medie statistiche di connettività dei nodi, stimare il traffico di dati, il numero di eventi e tracciare gli obiettivi. Il filtro di Kalaman è stato applicato per raffinare la localizzazione e le stime di distanza, tracciare i differenti obiettivi e prevedere i dati trasmessi da un sensore per ridurre la comunicazione [DHL96]. Quindi la fusione di dati può avere un ruolo importante quando si progetta una soluzione integrata per una rete di sensori wireless. Di seguito mostrerò due algoritmi utilizzati per la fusione di dati nelle WSN: • L’algoritmo “Minimum Fusion Steiner Tree” (MFST); • L’algoritmo “Adaptive Fusion Steiner Tree” (AFST). 5.3.1 Minimum Fusion Steiner Tree (MFST) Questo algoritmo inizialmente esegue un processo di matching di dati, in modo tale da ottimizzare successivamente la fusione e la trasmissione di essi, poi seleziona a caso una coppia di nodi della struttura. Basandosi su metriche predefinite, l’MFST definisce uno dei due nodi come nodo “centrale” e l’altro come nodo “non centrale”. La mole di dati del nodo “non centrale” verrà trasferita al nodo “centrale”, pagando appropriati costi di trasmissione e fusione causati dal trasferimento dei dati. Potrebbe accadere di sprecare energia a causa di un’inefficienza nella fusione di dati; ad esempio, se due nodi iniziano la fusione e riescono a ridurre solo poche informazioni a causa di una scarsa correlazione dei dati, succede che il costo di fusione diventa elevato. Successivamente, il nodo “non centrale” sarà eliminato dalla lista dei nodi con dati da fondere ed il nodo “centrale”, con la mole di dati complessiva, sarà aggregato ad un altro nodo fornendo una nuova serie di fonti. Questi due CAPITOLO 5. ALGORITMI DATA FUSION 67 nodi formeranno la nuova coppia ed il processo sarà poi ripetuto su questa coppia fino a quando non rimane un solo nodo [LLLD05]. Per far fronte al problema di spreco di energia nel caso in cui venga fatta una fusione di dati nella quale vengono ridotte poche informazioni, è stato introdotto l’algoritmo AFST (Adaptive Fusion Steiner Tree) che descriverò di seguito. 5.3.2 Adaptive Fusion Steiner Tree (AFST) L’AFST inizialmente esegue lo stesso processo di matching come nel MFST al fine di ottimizzare sia i costi di trasmissione che di fusione. Durante il processo di matching, viene però anche valutato dinamicamente se conviene o meno fare la fusione. Se si determina che la fusione dei alcune coppie di nodi non è vantaggiosa da effettuare, cioè non fornisce benefici alla rete, viene deciso che tra quelle coppie di nodi non deve essere fatta la fusione e successivamente verrà utilizzato l’algoritmo “Shortest Path Tree” (SPT) per navigare la struttura, che risulta ottimale per le informazioni di routing senza fusione di dati [LLLD05]. 5.3.3 Algoritmi Data Fusion per l’individuazione di anomalie nelle reti di sensori In questa sezione verrà spiegato il problema di scoprire anomalie in una rete di grandi dimensioni basato sulla fusione dei dati eterogenei. Mostrerò una classificazione degli algoritmi di rilevamento di anomalie basato sulla fusione dati, i principi operativi e le caratteristiche di due approcci rappresentativi diversi, uno basato sul “Dempster-Shafer Theory of Evidence” e uno basato sulla “Principal Component Analysis”. La “Principal component analysis” comporta una procedura matematica che trasforma una serie di dati, parzialmente correlati, in un minor numero di dati non più correlati tra loro. CAPITOLO 5. ALGORITMI DATA FUSION 68 L’efficacia di rilevazione di tali strategie è valutata e confrontata con diversi scenari di attacco, basati sia su dati reali sia su simulazioni. E’ stato rivelato che in linea di principio le condizioni in cui esse operano in modo efficiente sono complementari e quindi potrebbero essere utilizzate efficacemente per rilevare una vasta gamma di attacchi. Tra gli algoritmi di fusione di dati fanno parte anche gli algoritmi “Multisensor data fusion” che forniscono un campo di studio relativamente nuovo, usati per combinare dati provenienti da diversi e multipli sensori e fonti, al fine di farli interagire su eventi, attività, e situazioni. Questi sistemi sono spesso paragonati al processo cognitivo umano, in cui il cervello fonde le informazioni sensoriali da vari organi sensoriali, valuta le situazioni, prendere decisioni ed orienta l’azione. Tra gli esempi più comuni in cui tali sistemi sono stati sviluppati e largamente utilizzati, troviamo i sistemi militari per la valutazione delle minacce ed i sistemi delle previsioni meteo. In generale, la fusione di dati è un processo eseguito su più fonti, verso l’individuazione, l’associazione, la correlazione, la stima e la combinazione dei diversi flussi di dati in uno con un più alto livello di astrazione e di una maggiore significatività. Di seguito verranno illustrati i due algoritmi: • M3L (Multi Metric Multi Link): è l’algoritmo basato sulla “Principal Component Analysis” (PCA); • D-S: è l’algoritmo basato sul “Demster-Shafer Theory of Evidence”. 5.3.3.1 M3L L’obiettivo di questo algoritmo basato sul PCA è fornire una metodologia di fusione e combinazione di dati eterogenei diffusi su tutta la rete. Questo si ottiene appicando un approccio basato su PCA simultaneamente su diversi parametri di uno o più collegamenti tra i diversi nodi . CAPITOLO 5. ALGORITMI DATA FUSION 69 L’Analisi delle Componenti Principali mira alla riduzione delle dimensioni del set di dati in cui ci sono un elevato numero di variabili correlate, mantenendo il numero più alto possibile di variazioni nel set di dati. Le componenti estratte non correlate, sono chiamate Componenti Principali (PCs). La procedura complessiva di questo metodo può essere divisa in due parti distinte [CAPPM07]: • l’analisi offline, che crea un modello di traffico normale; • l’analisi in tempo reale che consente di rilevare anomalie, confrontando l’attuale (reale) con i modelli di traffico modellato. L’input dell’analisi non in linea è un insieme di dati che contiene solo il traffico normale. Durante l’analisi non in linea, il PCA è applicato a questa serie di dati e poi i primi risultati più importanti (cioè i PCs) vengono selezionati. Il loro numero dipende dalla rete e dal numero di parametri per ogni collegamento e rappresenta il numero di PCs necessario per rilevare la percentuale di varianza che il sistema ha bisogno per modellare il traffico normale. L’output dell’analisi offline è il PCs che viene usato nel “Subspace Method”. L’obiettivo del “Subspace Method” è quello di dividere i dati di traffico attuale in due spazi diversi: uno contenente il traffico considerato normale (ynorm), cioè quello che assomiglia ai patterns di traffico modellati, mentre l’altro contiene il residuo (yres). In generale, le anomalie tendono a portare a grandi variazioni nello spazio residuo, dal momento che presentano caratteristiche diverse dal traffico modellato. Quando si verifica un’anomalia, il vettore residuo presenta grandi variazioni in alcune delle sue variabili e il sistema rileva il percorso di rete contenente l’anomalia selezionando queste variabili. CAPITOLO 5. ALGORITMI DATA FUSION 5.3.3.2 70 D-S L’obiettivo del DS è quello di scoprire il vero stato del sistema senza un esplicito modello del sistema, basandosi solo su alcune osservazioni che possono essere considerate come un accenno (con qualche incertezza) nei confronti di alcuni stati di sistema. Sulla base di queste osservazioni DS calcola due funzioni: la credenza Bel (H) e la plausibilità PL(H), dove H è l’ipotesi per la situazione attuale. In generale siamo in grado di caratterizzare Bel (H) come una misura quantitativa di tutti i nostri elementi di sostegno e PL(H) come una misura di quanto la nostra prova è compatibile con H in termini di dubbio. La credenza vera nell’ipotesi per lo stato corrente del sistema risiede nell’intervallo di mezzo. Il nostro livello di ignoranza è rappresentato dalla differenza Bel (H) PL(H). La “Theory of Evidence” da la distinzione tra incertezza ed ignoranza, così è un modo molto utile per ragionare con l’incertezza sulla base di informazioni incomplete e possibili informazioni contraddittorie estratte da un ambiente stocastico. Il sistema non ha bisogno a priori di conoscenza o di distribuzioni di probabilità sul possibile stato del sistema, come l’approccio di tipo bayesiano che è particolarmente utile quando non abbiamo un modello del nostro sistema [CAPPM07]. La “Theory of Evidence” ha senza dubbio un notevole vantaggio in un ambiente vago e sconosciuto, soprattutto se confrontato con altri processi di inferenza, come la logica del primo ordine, la quale richiede la conoscenza di distribuzioni di probabilità e la dimostrazione di non-monotonia. Lo svantaggio principale della teoria di Dempster-Shafer è l’assunzione che la dimostrazione è statisticamente indipendente rispetto a tutte le altre, in quanto fonti di informazione sono spesso legate con qualche tipo di dipendenza. Capitolo 6 Conclusioni Dopo aver studiato i diversi algoritmi di fusione di dati per le reti di sensori e per le reti veicolari ho notato che la rete di sensori viene considerata come una specifica rete veicolare in cui i nodi sono statici ed autoalimentati. Nonostante però questa osservazione, sono proprio queste due caratteristiche delle reti di sensori che impediscono un corretto utilizzo degli stessi algoritmi di fusione di dati per entrambe le reti. Gli algoritmi di fusione di dati per le reti di sensori, mirano soprattutto all’aspetto energetico, cercando quindi di ottimizzare l’aspetto del consumo di energia, in quanto più dura la batteria di ogni sensore, più il sensore rimane acceso e quindi funzionante. Questo è un aspetto che non interessa minimamente le reti veicolari, in quanto il nodo (nella fattispecie il veicolo) viene alimentato da una batteria esterna, rappresentata dalla batteria dell’auto, che non cessa mai di funzionare. L’altro aspetto che impedisce di utilizzare facilmente lo stesso algoritmo per entrambe le reti è la staticità dei nodi nelle reti di sensori, contrapposta alla forte mobilità dei veicoli all’interno delle reti veicolari. Gli algoritmi nelle reti veicolari si concentrano molto sulla rilevazione di nuovi nodi o di nodi non più all’interno della rete locale, aspetto quasi 71 CAPITOLO 6. CONCLUSIONI 72 totalmente non considerato nelle reti di sensori a causa della forte staticità dei nodi sensore. Nonostante ciò, esistono diverse tecniche matematiche che possono essere utilizzate per sviluppare algoritmi diversi per le due differenti reti come ad esempio la “Dempster-Shafer Theory”. Capitolo 7 Ringraziamenti • Ringrazio i miei genitori, Fiorenza e Luca, per avere sempre creduto in me, dandomi la forza di andare avanti anche nei momenti più difficili di questo percorso universitario; • Ringrazio il resto della famiglia, il nonno Giorgio, la zia Roberta, gli zii Augusto e Giorgio, mio cugino Vittorio per avermi sempre sostenuto moralmente; • Ringrazio gli amici della casa di bologna, Giorgio Di Lena, Luca Di Lena e Marco Eusepi, che sono parte del “gruppo bagar di Pesaro”, per avermi fatto divertire e passare delle stupende serate bolognesi e per avermi aiutato nei momenti in cui avevo problemi di qualunque tipo; • Ringrazio i miei mogliori amici, Filippo Monteforte, Paolo Balestra, Stefano Azzi, per essermi stati sempre vicino durante tutto il mio percorso universitaro e nei momenti di delusione e tristezza, sapendomi consigliare ogni volta la cosa migliore da fare; • Ringrazio il resto del “gruppo bagar di Pesaro”, Andrea Bellazzecca, Andrea Augelletta, Davide Cecchini, Alessandro Polizzi, Maurizio Pizzagalli “il più bello d’Italia”, Nicola Berardini, Enrico Severa, Ryan 73 CAPITOLO 7. RINGRAZIAMENTI 74 Caleghi, Giovanni Crescentini, Valentina Colarizi, Valentina Pozzi, Michela Sarti, Eleonora Lazzarini, Maria Sacchi, Martina Marzi, Martina Vichi, Gabriela Della Chiara, Federica Del Prete, Vittoria Tonelli, Valeria Giannoni, per avermi fatto passare serate meravigliose all’insegna del divertimento e pesantissimi pomeriggi al bar Margarita; • Ringrazio gli amici della compagnia di Bagni due Palme, Tommaso Del Grande, Mattia Marchionni, Lorenzo Filippetti, Tommaso Giunta, Erika luchetti, Giulia Leonardi, Mattia Canti, Fabio Mariotti, Federico Filippini, per avermi fatto passare serenamente e felicemente buona parte della mia vita; • Ringrazio gli amici, Francesco Italiani, Marco Azzolini, Marco De Luca, con in quali ho fatto una splendida vacanza di un mese negli USA, passando momenti indimenticabili e con i quali ho capito che forse è meglio andare a lavorare a San Diego; • Ringrazio i vecchi amici, Secchiaroli Francesco, Emanuele Montagna, Niccolò Di Bella, Francesco Cormio che è anche il mio maestro di Full Contact, Giacomo Di Cecco, Gianluca Simeone, Davide Tonucci, con cui continuo a sentirmi da tanti anni; • Ringrazio le mie care amiche, Vittoria Tausani, Benedetta Gabucci, Clara Tausani, Anna Ragazzoni, Elisabetta Ragni, per le belle chiaccherate e le belle giornate passate assieme; • Ringrazio il mio amico Giovanni Gurini, con cui condivido la passione per la stessa musica e con cui ho fatto delle stupende serate anche in Olanda; • Ringrazio Il mio professore di matematica delle superiori, il vice preside Riccardo Aguzzi, perchè dopo aver fatto altri due anni di Università, lo continuo a considerare il migliore professore che abbia mai avuto e che si possa mai desiderare; CAPITOLO 7. RINGRAZIAMENTI 75 • Ringrazio gli amici della 5P di Ragioneria, Michel Bezziccheri, Marco Antonioli, Matteo Battisti, Cristian Pentucci, Enrico Costantini, Roberto Silvestrini, Jheison Huerta, con i quali faccio ancora rimpatriate e spero di farle sempre; • Ringrazio il mio maestro Dimitri Nardelli, non solo maestro di Karate e Kyokushin Kan, ma anche di vita; • Infine, ringrazio quella che è stata una delle persone più importanti della mia vita e che mi è stata sempre vicino, sostenendomi e “sperando per me” fino all’ultimo esame, Valentina Tinchini, che rimarrà per sempre nel mio cuore, nonostante alcune sue scelte da me non condivise. Bibliografia [SFKRH08] Elmar Schoch, Julien Freudiger, Antonio Kung, Maxim Raya, Jean-Pierre Hubaux, Zhendong Ma, Frank Kargl, Levente Buttyan, Tamás Holczer, Panagiotis Papadimitratos, “Secure Vehicular Communication Systems: Design and Architecture”, IEEE Communications Magazine, Novembre 2008, 100-109. [RHP06] Maxim Raya, Jean-Pierre Hubaux, Panagiotis Papadimitratos, “Securing vehicular communications”, IEEE Wireless Communications, Ottobre 2006, 8-15. [RayHub05] Maxim Raya, Jean-Pierre Hubaux, “The Security of Vehicular Ad Hoc Networks”, Laboratory for computer Communications and Applications (LCA), Novembre 2005, 1-11. [Ciu06] Giuseppe Ciuni, “Routing e Sicurezza nelle reti veicolari”, Università di Pisa, 2006, 5-173. [ZanZor06] Andrea Zanella, Michele Zorzi, “Reti di sensori: dalla teoria alla pratica”, Notiziario tecnico Telecom Italia, Giugno 2006, 47-59. [RomMat04] Kay Romer, Friedemann Mattern, “The Design Space of Wireless Sensor Networks”, IEEE Wireless Communications, Dicembre 2004, 54-61. 76 BIBLIOGRAFIA 77 [Hae06] Thomas Haenselmann, “An FDL’ed Textbook on Sensor Networks”, http://pi4.informatik.unimannheim.de/~haensel/sn_book/, 2006. [Bat09] “B.A.T.M.A.N.”, http://www.open-mesh.net/, 2009. [NakLou09] Eduardo F. Nakamura, Antonio A. F. Loureiro, “Algorithms for Wireless Sensor Networks: Present and Future”, Algorithms and Protocols for Wireless Sensor Networks, 2009, 2-20. [DHL96] Daniel .J. Dailey, Patricia Harn, and Po-Jung Lin, “ITS Data Fusion”, University of Washington, 1996, 11-20. [DDIZC08] Bruno Defude, Thierry Delot, Sergio Ilarri, Jose-Luis Zechinelli, Nicolas Cenerario, “Data aggregation in VANETs: the VESPA approach”, ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering), 2008, 1-6. [LiJos09] Wenjia Li, Anupam Joshi, “Outlier Detection in Ad Hoc Networks Using Dempster-Shafer Theory”, Tenth International Conference on Mobile Data Management: Systems, Services and Middleware, Maggio 2009, 2-3. [CAPPM07] V. Chatzigiannakis, G. Androulidakis, K. Pelechrinis, S. Papavassiliou, V. Maglaris, “Data fusion algorithms for network anomaly detection: classification and evaluation”, Third International Conference on Networking and Services(ICNS’07), 2007, 2-3. [LLLD05] Hong Luo, Jun Luo, Yonghe Liu, Sajal K. Das, “Adaptive Data Fusion for Energy Efficient Routing in Wireless Sensor Networks”, The University of Texas at Arlington, 2005, 1-34.
Documenti analoghi
Elaborato Esposito Lorenzo N46-000163
Con questo metodo, un nodo prima di inviare o ritrasmettere un pacchetto, appone la sua
posizione geografica nell’header. Quando un nodo riceve per la prima volta un pacchetto,
controlla la posizio...