Progettazione e Realizzazione di Tecniche per la Gestione Adattiva del Workflow su Reti Ad Hoc



Documenti analoghi
A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

Reti di Calcolatori. Il software

Reti di Telecomunicazione Lezione 8

Reti LAN. IZ3MEZ Francesco Canova

3. Introduzione all'internetworking

Wi-Fi, la libertà di navigare in rete senza fili. Introduzione.

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi

ARCHITETTURA DI RETE FOLEGNANI ANDREA

Reti e Internet: introduzione

Dispensa di Informatica I.1

Organizzazione degli archivi

MODELLAZIONE DEI PROCESSI AZIENDALI. workflow 1

FONDAMENTI di INFORMATICA L. Mezzalira

Creare una Rete Locale Lezione n. 1

Parte II: Reti di calcolatori Lezione 24

Base di dati e sistemi informativi

MODELLAZIONE DEI PROCESSI AZIENDALI. workflow 1

Automazione Industriale (scheduling+mms) scheduling+mms.

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Database. Si ringrazia Marco Bertini per le slides

1. BASI DI DATI: GENERALITÀ

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

Appunti sulla Macchina di Turing. Macchina di Turing

Introduzione al data base

Presentazione della Tesi di Laurea

Progettaz. e sviluppo Data Base

TECNICHE DI SIMULAZIONE

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

Project Cycle Management

Lo scenario: la definizione di Internet

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Light CRM. Documento Tecnico. Descrizione delle funzionalità del servizio

Reti di calcolatori ed indirizzi IP

Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda

UNIVERSITA DEGLI STUDI DI BRESCIA Facoltà di Ingegneria

Cos'è una vlan. Da Wikipedia: Una LAN virtuale, comunemente

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Business Process Management

Sistemi informativi secondo prospettive combinate

Hardware delle reti LAN

Progettaz. e sviluppo Data Base

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

CAPITOLO 1. Introduzione alle reti LAN

Lezione 1. Introduzione e Modellazione Concettuale

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Capire i benefici di una rete informatica nella propria attività. I componenti di una rete. I dispositivi utilizzati.

Corso di Informatica

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo

La piattaforma di lettura targhe intelligente ed innovativa in grado di offrire servizi completi e personalizzati

Trasmissione di dati al di fuori di un area locale avviene tramite la commutazione

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Parte II Lezione 5

B.P.S. Business Process Server ALLEGATO C10

ARTICOLO TECNICO Smart-MED-Parks: il Software

WiFi: Connessione senza fili. di Andreas Zoeschg

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

RETI DI COMPUTER Reti Geografiche. (Sez. 9.8)

Dispositivi di rete. Ripetitori. Hub

Concetti di base di ingegneria del software

2 Gli elementi del sistema di Gestione dei Flussi di Utenza

Il database management system Access

Reti di Calcolatori

Il Sistema Operativo

Software per Helpdesk

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

SIMULAZIONE PROVA SCRITTA ESAME DI STATO. PER LA DISCIPLINA di SISTEMI

GLI APPARATI PER L INTERCONNESSIONE DI RETI LOCALI 1. Il Repeater 2. L Hub 2. Il Bridge 4. Lo Switch 4. Router 6

BMSO1001. Virtual Configurator. Istruzioni d uso 02/10-01 PC

Strumenti di modellazione. Gabriella Trucco

Soluzione dell esercizio del 2 Febbraio 2004

EXPLOit Content Management Data Base per documenti SGML/XML

Firewall applicativo per la protezione di portali intranet/extranet

Inizializzazione degli Host. BOOTP e DHCP

WorkFLow (Gestione del flusso pratiche)

Finalità delle Reti di calcolatori. Le Reti Informatiche. Una definizione di Rete di calcolatori. Hardware e Software nelle Reti

Capitolo 2. Operazione di limite

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

Sequence Diagram e Collaboration Diagram

Mon Ami 3000 Conto Lavoro Gestione del C/Lavoro attivo e passivo

TECNICO SUPERIORE PER L AUTOMAZIONE INDUSTRIALE

Reti diverse: la soluzione nativa

Approccio stratificato

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Martedì 15 Novembre 2005

Protocolli di Comunicazione

FPf per Windows 3.1. Guida all uso

frequenze in uso alle reti Wi-Fi a 2.4Ghz.

CORSO BUSINESS CONTINUITY AND DISASTER RECOVERY MANAGEMENT LE 10 PROFESSIONAL PRACTICES

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione

Overview SAP Workflow. ECORA Srl - Massimo Rastaldi m.rastaldi@eco-ra.it Cell

COMUNE DI RAVENNA GUIDA ALLA VALUTAZIONE DELLE POSIZIONI (FAMIGLIE, FATTORI, LIVELLI)

ALGEBRA DELLE PROPOSIZIONI

TECNICO SUPERIORE PER L INFORMATICA INDUSTRIALE

Volume GESTFLORA. Gestione aziende agricole e floricole. Guidaall uso del software

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Una architettura peer-topeer per la visualizzazione 3D distribuita

Sistemi Informativi e Sistemi ERP

Transcript:

Università degli Studi di Roma "La Sapienza" Facoltà di Ingegneria Tesi di Laurea Specialistica in Ingegneria Informatica Progettazione e Realizzazione di Tecniche per la Gestione Adattiva del Workflow su Reti Ad Hoc Relatore Ing. Massimo Mecella Correlatore Dott. Fabio De Rosa Laureando Massimiliano de Leoni Num. Matr. 993641 Anno Accademico 2004/2005

Indice INDICE... 2 INTRODUZIONE... 4 1 PROBLEMATICHE DEI CSCW SU RETI AD HOC... 8 1.1 CENNI SULLE RETI WIRELESS... 9 1.1.1 Cenni allo strato di Collegamento Wi-Fi... 10 1.1.2 Infrastructured vs Ad-Hoc Network... 15 1.1.3 Algoritmi di routing per MANET... 19 1.2 ARCHITETTURA PER SUPPORTARE I COOPERATIVE WORK... 22 1.2.1 Descrizione dell architettura... 27 1.2.2 L algoritmo di predizione... 29 2 LO STATO DELL ARTE DEI WFMS... 34 2.1 BACKGROUND... 34 2.2 INTRODUZIONE AL WORKFLOW MANAGEMENT SYSTEM... 36 2.2.1 Modelli per la descrizione dei processi... 40 2.3 IL MODELLO DI RIFERIMENTO... 46 2.3.1 Workflow Enactment Service... 48 2.3.2 Process Definition Tools... 50 2.3.3 Workflow client application... 50 2.3.4 Administration and monitoring tools... 51 2.4 L ADATTIVITÀ NEI WFMS: STATO DELL ARTE... 52 2.4.1 AgentWork... 53 2.4.2 Altri lavori per gestire l adattività... 57 3 MODELLI ED ALGORITMI PER WFMS ADATTIVI SU RETI AD HOC... 60 3.1 MODELLAZIONE DELLO STATIC ENGINE... 63 3.1.1 Il modello di processo di workflow e le entità coinvolte... 65 3.1.2 La gestione delle risorse e della work-list... 72 3.1.3 Inizio di un nuovo caso di un processo... 74 3.1.4 Esecuzione di un caso nel processo... 78 3.1.5 Assegnamento push delle attività alle risorse... 80 3.1.6 Criteri di scelta della miglior risorsa... 83 3.1.7 Implementazione del Failure Detector... 83 3.2 ALGORITMO PER L ASSEGNAMENTO DELLA PRIORITÀ NEI WORKFLOW... 86 3.2.1 Definizione di priorità di un (sotto)processo... 88 2

3.2.2 Decomposizione del processo di workflow e disegno dell albero corrispondente... 90 3.2.3 Calcolo delle priorità dei nodi-processi dell albero... 92 3.2.4 Calcolo delle priorità delle attività... 93 3.2.5 Esempio... 96 3.2.6 Osservazioni finali... 98 3.3 MODELLAZIONE DELL ADAPTIVE LAYER... 100 3.3.1 Gestione dell evento di bridging... 101 3.3.2 Gestione dell evento di no-bridge... 104 3.3.3 Gestione del roll-back... 105 4 PROGETTAZIONE E SVILUPPO DI UN WFMS ADATTIVO SU RETI AD HOC... 106 4.1 SPECIFICA DELLE INTERFACCE... 107 4.1.1 Interfaccia per la definizione dello schema di processo... 107 4.1.2 Interfaccia verso le risorse (Workflow Client Application)... 112 4.1.3 Interfaccia verso le applicazioni... 115 4.2 ALCUNI DETTAGLI SULL IMPLEMENTAZIONE DEL WORKFLOW ENGINE116 4.2.1 Il package repository... 117 4.2.2 Il package workengine... 120 5 SPERIMENTAZIONE ED ANALISI DEI RISULTATI... 123 5.1 OBIETTIVI DELLE SPERIMENTAZIONI... 123 5.2 DESCRIZIONE DELLO SCENARIO DI SIMULAZIONE... 127 5.2.1 Descrizione degli schemi di processo usati per il test... 128 5.3 ANALISI DEI RISULTATI DELLE SIMULAZIONE... 134 6 CONCLUSIONI... 140 7 BIBLIOGRAFIA... 142 3

Introduzione Negli ultimi tempi la società sta evolvendo verso scenari dominati dalla mobilità. C è stato un intenso sviluppo e diffusione di dispositivi mobili (PDA, SmartPhone, computer portatili, cellulari) con caratteristiche di connettività estremamente sofisticate e con prezzi sempre più accessibili. Si pensi ai cellulari UMTS che permettono in ogni momento, praticamente ovunque, di accedere ad una moltitudine di fonti di informazione, non per ultima la stessa Internet oppure ai PDA e ai nuovi modelli di computer portatili che integrano funzionalità per l accesso a reti Wireless, Wi-Fi (IEEE 802.11x) e/o Bluetooth. Il grande sviluppo di dispositivi mobili nasce dall esigenza di ottenere continuamente e in modo ubiquo l accesso ad uno o più sorgenti di informazione. Inoltre gli utenti si stanno dimostrando sempre più interessati a un ampia varietà di servizi, sia per motivi di svago che per ragioni più serie: e-commerce, e- Learning e e-government. Tali basi tecnologiche permettono di costruire Reti Ad-Hoc (MANET 1 ). Questo nuovo tipo di reti risulta particolarmente interessante perché permette, a dispositivi dotati di adattatori wireless, di comunicare senza che sia prevista la presenza di una infrastruttura di rete. Le particolari caratteristiche delle MANET rendono questo tipo di reti adatta ad innumerevoli campi di applicazione (settore militare, spedizioni archeologiche, missioni di soccorso, ecc ) in cui occorre eseguire un lavoro di gruppo ma non è prevista una infrastruttura di rete 1 MANET è l abbreviazione di Mobile Ad-hoc Network 4

pre-esistente. Il lavoro cooperativo è, tipicamente, supportato da un sistema software installato sul dispositivo mobile di un leader che, da un lato, aiuta i membri del gruppo a coordinarsi e d altro evita, mediante azioni correttive, che questi si disconnettano dalla MANET. Infatti, le Reti Ad Hoc non tutelano in alcun modo i dispositivi che la costituiscono da eventuali disconnessioni. L obiettivo di questa tesi è quello di costruire un sistema software di supporto per Reti Ad-Hoc che risolva i problemi esposti. Lo stesso fa parte di una architettura pervasiva più estesa costituita da altri componenti software, realizzati in altre tesi in Ingegneria Informatica ed utilizzati in questa, per implementare le funzionalità richieste. L architettura è costruita sopra lo stack protocollare TCP/IP a sua volta costruito su uno strato di rete Wireless (come BlueTooth o Wi-Fi). Il componente più basso nell architettura è NSI che si occupa del routing su reti Ad-Hoc; al di sopra è presente il Predictive Layer che, analizzando la topologia, si pone l obiettivo di predire le segnalazioni, le quali vengono inviate al Coordination Layer che elabora le opportune azione correttive (Corrective Layer) da inviare al Workflow Layer che le traduce in opportune attività di supporto. Il campo delle reti MANET è tutt altro dall essere maturo e stabile; anzi al giorno d oggi rappresenta uno dei più importanti settori di ricerca e di sviluppo tecnologico. In relazione a questo, si intende sottolineare che la strada aperta in questa tesi per risolvere il problema non è l unica possibile: esistono in letteratura molti altri studi che hanno e stanno tentando di risolvere il problema con strade totalmente differenti. 5

In particolare questa tesi si colloca all interno del progetto MAIS (Multi-channel Adaptative Information System), un progetto di ricerca italiano sviluppato congiuntamente da oltre 10 università e diverse industrie per fornire un ambiente flessibile per adattare l interazione, le informazioni fornite e i servizi coerentemente come conseguenza delle mutazione nell ambiente, nel contesto e nelle esigenze dell utente. Lo schema della tesi è il seguente: Nel capitolo 1 vengono inizialmente fatti dei cenni sul funzionamento delle reti wireless e sugli standard introdotti e successivamente viene introdotto il problema del lavoro cooperativo in una rete Ad-Hoc, illustrando in dettaglio le problematiche con cui occorre scontrarsi. Nel capitolo 2 viene riassunto lo stato dell arte nel Workflow Management System (WfMS), la più importante classe di sistema per supporto al lavoro cooperativo, e dei sistemi adattivi, cioè quei sistemi capaci autonomamente senza l intervento umano di adattarsi alle mutazioni nel contesto d opera. Nel capitolo 3 vengono introdotti modelli ed algoritmi ideati e implementati per realizzare un efficiente WfMS su reti MANET. Nel capitolo 4 viene descritta, con il supporto di diagrammi progettuali, e commentata la specifica e l implementazione del WfMS su reti MANET e le scelte realizzate. 6

Nel capitolo 5 sono riepilogate le strategie di test dell intero sistema (in particolare la bontà degli algoritmi di risoluzione delle disconnessioni) Il capitolo 6 è dedicato alle osservazione e conclusioni finali. 7

1 Problematiche dei CSCW su Reti Ad Hoc Una MANET è una rete di dispositivi mobili i quali comunicano tra loro attraverso collegamenti wireless senza la presenza di una infrastruttura sottostante (come un Access Point). In una MANET ogni dispositivo agisce sia come terminale che come router, inoltrando i messaggi ai dispositivi nell intervallo radio. Le MANET rappresentano un alternativa attraente alle reti wireless infrastructurebased quando questa non è disponibile o non può essere usata oppure sembra più naturale la comunicazione diretta tra i dispositivi. Un possibile caso in cui una rete Ad-Hoc risulta l ideale è in scenari di disaster recovery: dopo un terremoto o comunque un qualsiasi evento disastroso, successivamente al primo aiuto alle popolazioni colpite, un team, capeggiato da un leader ed equipaggiato con dispositivi mobili, è inviato sul posto per verificare lo stato degli edifici; l obiettivo è quello di disegnare una mappa per organizzare i lavori di ristrutturazione. Questi operatori che formano una MANET beneficiano di uno strato software di coordinamento che gestisca la collaborazione e permetta agli attori di eseguire un insieme di attività attraverso software specifici. Questo strato è noto come CSCW, Computer Supported Cooperative Work). I CSCW generalmente richiedono una continua interconnessione, ad esempio per lo scambio di dati e informazioni, per lo scheduling di informazioni, interconnessione che tipicamente una MANET non garantisce. Quindi il CSCW, oltre a gestire il team e coordinare l assegnamento delle attività, deve prevedere 8

azioni correttive atte, per quanto più possibile, a limitare le disconnessioni anomale per mantenere la rete connessa. Nel proseguo del capitolo, nel primo paragrafo si entrerà più in dettaglio sulle caratteristiche delle reti wireless, in particolare le MANET, e nel successivo sull architettura per supportare i cooperative work su MANET, proposta in [1] e perfezionata in [2]. 1.1 Cenni sulle reti Wireless I primi risultati significativi nello sviluppo di reti wireless si ottennero nel 1997 quando il gruppo di lavoro illustrò allo IEEE lo standard 802.11 per richiederne l approvazione. Scelta importante fu quella di utilizzare come banda quella dei 2,4 GHz. Si decise di adottare tale banda di frequenze anche perché questa risultava essere esente da licenza nella maggior parte delle nazioni. Infatti la banda dei 2,4 GHz fa parte delle cosiddette bande ISM (Industrial Scientific Medical) definite dallo ITU-T (International Telecomunication Unit) per essere utilizzate a scopi industriali, scientifici e medici. La tecnologia wireless si presentava dunque come una tecnologia, che a differenza di altre (come ad esempio l UMTS), era libera ed accessibile a tutti; infatti le bande ISM possono essere utilizzate liberamente da chiunque, senza dover richiedere alcun tipo di licenza purché vengano rispettati determinati limiti sulla potenza di trasmissione e vengano utilizzate tecniche di spread spectrum per limitare le interferenze tra i dispositivi. Sono molteplici le categorie di dispositivi commerciali che utilizzano queste particolari bande di frequenza per il loro funzionamento: 9

dispositivi Bluetooth; telefoni cordless; forni a microonde; radiocomandi per cancelli; apparati radar. Un secondo motivo della scelta della banda dei 2,4 GHz è che essa risultò essere un buon compromesso tra la frequenza di trasmissione ed i suoi conseguenti effetti di riflessione, grandezze direttamente proporzionali (a 2.4 GHz è possibile coprire una distanza quattro volte superiore che a 5 GHz). 1.1.1 Cenni allo strato di Collegamento Wi-Fi Lo strato MAC ( Media Access Control ), che assieme al LLC ( Logical Link A B C A B C D Figura 1 Problema della stazione nascosta A sta trasmettendo a B; C ascolta il mezzo e lo trova libero: incomincia a trasmettere verso B. Così facendo disturba la trasmissione di A impedendo a B di riceverla. Sia A che C saranno costrette a ritrasmettere. Figura 2 Problema della stazione esposta B sta trasmettendo ad A; C vuole trasmettere a D e, ascoltando il mezzo, sente la trasmissione di B e stabilisce erroneamente di non poter trasmettere a D. Infatti essendo D fuori dal raggio di azione di B ed A fuori da quello di C le due trasmissioni potrebbero avvenire contemporaneamente. 10

Control ) costituisce lo strato di Collegamento, ha lo scopo di controllare l accesso al mezzo per evitare collisioni. Le normali tecniche di collision detection utilizzate nelle reti tradizionali non né sono adatte né efficaci per le reti wireless. Infatti, queste tecniche non sono capaci di affrontare problemi come quello di una stazione esposta (Figura 2) o di una stazione nascosta (Figura 1). Per questo motivo nelle reti wireless vengono utilizzate tecniche di collision avoidance la cui idea principale è quella di far trasmettere al destinatario un piccolo frame per avvisare le stazioni circostanti che si sta per incominciare una trasmissione. Il protocollo è il seguente: Quando A vuole trasmettere un frame a B, prima di iniziare la trasmissione invia un frame RTS (Request To Send) al quale B replica con un CTS (Clear To Send). Alla ricezione del CTS la stazione A può incominciare la sua trasmissione. All interno dei frame RTS e CTS è contenuto un valore indicante il tempo stimato per la conclusione della trasmissione, le stazioni nel raggio di azione di A e B riceveranno il RTS e/o il CTS e saranno quindi al corrente che si sta per iniziare una trasmissione nelle proprie vicinanze. Le stazioni limitrofe saranno ovviamente anche a conoscenza della durata stimata di queste trasmissioni e quindi imposteranno un apposito contatore di Carrier Sensing Virtuale, detto NAV (Network Allocation Vector), con il valore letto all interno dei frame RTS e CTS. Il NAV viene nel tempo decrementato fino a 0. Finché il valore del proprio NAV è diverso da 0 le stazioni sanno che è in atto una comunicazione nelle proprie vicinanze e quindi non cercheranno di iniziare anche loro una trasmissione. 11

Questo protocollo funziona bene solo nel caso ideale in cui le stazioni abbiano tutte lo stesso raggio di azione e che i frame RTS e CTS possano essere scambiati in tempo infinitesimo. Nella realtà però possono ancora avvenire delle collisioni e quindi al protocollo precedentemente illustrato vengono solitamente affiancate tradizionali tecniche di Carrier Sensing e acknowledgment a livello MAC. Il Carrier Sensing permette di ridurre la probabilità di collisioni dovute a tentativi contemporanei di acquisizione del mezzo mentre l acknowledgment a livello MAC ha lo scopo di ridurre i tempi di ritrasmissioni nei casi di frame danneggiati, anticipando un compito solitamente affidato allo strato di trasporto. Il protocollo utilizzato nello standard 802.11 per gestire l accesso al mezzo è il CSMA/CA (Carrier Sense Medium Access / Collision Avoidance). I passi necessari per una trasmissione tra la stazione A e quella B sono i seguenti: 1. La stazione A cerca di determinare lo stato del mezzo verificando se il valore del NAV è zero ed ascoltando il mezzo. Il canale viene considerato libero quando sia il Carrier Sensing Virtuale che quello Reale non rilevano attività. Nel caso in cui il canale risulta libero e rimane libero per un breve periodo di tempo (denominato DIFS, Distributed Inter Frame Space) si passa al punto 3, altrimenti se il canale risulta occupato (o viene occupato nel tempo di DIFS) si passa al punto 2. 2. A attende per un periodo di tempo scelto prima di tentare di ritrasmettere. Il valore del tempo di attesa viene scelto all interno di un range di valori detto Contention Window, CW. Dopo ogni tentativo di ritrasmissione fallito la dimensione della CW viene raddoppiata (fino ad un valore 12

massimo CW max ); in seguito ad una trasmissione con esito positivo, invece, la dimensione della CW viene ricondotta alla sua configurazione iniziale. La procedura che regola i tempi di attesa dalla stazione A prima delle ritrasmissioni è nota con il nome di procedura di backoff. 3. A emette un RTS. 4. Se entro un determinato intervallo di tempo A non riceve il CTS da B vuol dire che probabilmente il frame RTS ha colliso con un altro frame: questa situazione può accadere quando due stazioni hanno scelto lo stesso slot nella finestra di backoff. Per questo motivo prima di ritentare la trasmissione A raddoppia la dimensione della finestra CW (Contention Window) e poi ritorna al passo 2. 5. Quando B riceve l RTS di A risponde con un CTS. 6. Una volta ricevuto il CTS di B, A inizia la trasmissione vera e propria inviando i frame contenenti i dati. 7. Qualora A non riceva un ACK da B entro un ben preciso periodo di tempo, A ne deduce che il frame contenente i dati non è stato ricevuto correttamente e quindi A deve ritrasmetterlo ripetendo l intera procedura. 8. Una volta che la stazione B ha ricevuto correttamente l intero frame dati, essa risponde ad A inviando un ACK e concludendo così la trasmissione. La procedura di backoff, inserita nelle fasi del protocollo CSMA/CA in cui il rischio di collisione è alto, consiste nell attendere per un tempo limitato casuale (secondo l algoritmo di binary exponential backoff ) prima di ritentare la trasmissione. In tale modo si cerca di evitare che più stazioni, in attesa che il 13

canale si liberi, tentino di occupare contemporaneamente il canale non appena questo risulti essere libero. Nello standard 802.11 esistono due diverse modalità di funzionamento per il protocollo dello strato MAC: DCF (Distributed Coordination Function), le stazioni devono gestire in modo distribuito l accesso al mezzo secondo il protocollo CSMA/CA. Tutte le stazione devo supportare questa tecnica. PCF (Point Coordination Function), la gestione di accesso al mezzo è totalmente centralizzata, infatti l ordine delle trasmissioni è controllato dalla stazione base (l access point) che ciclicamente interroga (polling) tutte le stazioni della sua cella. Nella pratica è raramente implementata. La velocità di trasmissione dello standard 802.11 era al massimo di 2 Mbps e ben presto si capì che tale banda era insufficiente per la maggiore parte delle applicazioni interessate al settore wireless. Fin da subito (1997) quindi il gruppo IEEE 802.11 iniziò a lavorare su delle varianti dello standard per migliorare le prestazioni dello strato fisico lasciando inalterato lo strato MAC. In un primo momento si iniziò a lavorare sugli standard 802.11b e 802.11a che garantiscono una velocità massima (alquanto teorica), rispettivamente, di 11 e 54 Mbps e successivamente si procedette anche alla definizione dello standard 802.11g. Mentre gli standard 802.11b e 802.11g lavorano entrambi intorno alla banda 2.4 Mhz, lo standard 802.11a si colloca attorno ai 5 Mhz. L innalzamento delle frequenze utilizzate dal 802.11a ha il difetto di una minore capacità di penetrare attraverso ostacoli quali muri di mattoni e quindi di minore raggio di azione dei 14

dispositivi wireless. Ad esempio un Access Point conforme alle specifiche 802.11a copre circa un quarto dell area copribile da un Access Point di tipo b. Di contro, lavorare in una banda centrata in queste frequenze garantisce l assenza di interferenze con altri dispositivi che lavorano a 2,4 Mhz; questo aspetto può essere importante in alcuni ambienti di lavoro in cui occorre garantire un collegamento senza fili ma dove sono presenti altri apparecchi che trasmettono alla stessa frequenza dello 802.11b. Inoltre 802.11a garantisce maggiore sicurezza grazie alla maggiore predisposizione dei dispositivi ad essere aggiornati per permettere codifiche a 256 bit con AES (Advanced Encryption System). Tuttavia, a causa dello scarso raggio di azione e per l incompatibilità con il tipo b (usano diverse frequenze di lavoro) questo standard non ha avuto molta diffusione se non nelle aziende di grandi dimensioni e nei casi di necessità di elevata sicurezza. 1.1.2 Infrastructured vs Ad-Hoc Network L elemento principale nelle WLAN 802.11 è il cosiddetto BSS (Basic Service Set). Il BSS è un gruppo di stazioni, fisse o mobili, collocate geograficamente all interno di un area limitata (cella), denominata Basic Service Area, stazioni che possono stabilire tra loro connessioni dirette (Ad Hoc Network) o indirette, con l ausilio di una infrastruttura intermedia (Infrastructure Network). Nel primo caso si parla di BSS indipendente (IBBS), una rete paritetica dove i dispositivi comunicano tra loro punto-punto. Nel secondo caso invece oltre ai dispositivi che compongono il BBS è necessaria anche la presenza di un Access Point (AP) che permetta di connettere le stazioni all interno della medesima cella. 15

1.1.2.1 Infrastructured Network Una Infrastructure Network (Figura 3) è normalmente costituita da uno o più BSS backbone BSS ESS BSS Figura 3 Infrastructure Network connessi attraverso un Distribution System (DS). Il DS è indipendente dall architettura della rete wireless e pertanto può essere indifferentemente una rete wired o wireless. L intera rete comprensiva delle varie celle, deii vari Access Point ed del Distribution System è vista come una unica rete 802 denominata ESS (Extended Service Set). Se una stazione all interno di un Infrastructure BSS deve comunicare con un altra, la comunicazione è costituita da due passi. Prima l informazione passa dalla stazione trasmittente all Access Point; successivamente l Access Point provvede a trasmettere l informazione alla stazione di destinazione. Si può facilmente dedurre quindi che le due stazioni non devono 16

essere visibili tra di loro ma devono semplicemente essere all interno del raggio di azione dell Access Point. Si deduce anche che questo tipo di comunicazione in certi casi, quando ad esempio due stazioni sono vicine tra loro e lontane dall Access Point, implica un maggior consumo elettrico da parte delle stazioni rispetto ad una comunicazione diretta tra i due terminali. Per permettere di contenere al meglio i consumi elettrici dei dispositivi (attualmente uno dei principali limiti dei dispositivi portatili, vedi Capitolo 4) l Access Point è in grado di assistere i terminali in vari modi. Ad esempio, l Access Point può capire quando i dispositivi entrano in stati a basso consumo di energia e può memorizzare in appositi buffer i frame destinati a dispositivi non attivi, così da recapitarli successivamente quando tali dispositivi saranno disponibili per la ricezione. 17

1.1.2.2 Ad Hoc Network Una rete Ad Hoc (Figura 4) o MANET è costituita esclusivamente da dispositivi dotati di interfacce wireless, non vi è infatti la presenza né di un Distribution System né di un Access Point. Ciascun WT (Wireless Terminal) comunica peerto-peer con gli altri terminali appartenenti all IBSS. Data la natura della rete Ad Hoc i dispositivi che desiderano interagire tra di loro devono essere visibili l un l altro. Tipicamente le reti Ad Hoc sono reti temporanee, createsi per uno specifico scopo da un piccolo numero di dispositivi. IBSS Le caratteristiche delle MANET sono: Figura 4 Ad Hoc Network Limitata autonomia dei dispositivi che ne limita il raggio di azione; Mobilità dei dispositivi e quindi la topologia può variare nel tempo; I dispositivi svolgono le funzioni sia di host che di router (relay); Assenza di amministrazione centralizzata, assenza di costi di gestione; 18

Facilità di instaurazione. Caratteristiche come la facilità di instaurazione e la non dipendenza da una infrastruttura rendono questo tipo di reti adatte a moltissimi campi di applicazione (conferenze, campi militari, missioni di soccorso e spedizioni archeologiche, etc). Purtroppo però al giorno d oggi lo sviluppo di applicazioni distribuite per questo tipo di reti è assai limitato; il problema principale è costituito dall assenza di un servizio di instradamento. La tecnologia wireless 802.11 si riferisce infatti esclusivamente allo strato fisico (PHY) ed al livello MAC e quindi non fornisce il servizio di routing. Oltre al routing gli altri settori di ricerca nell ambito delle MANET sono: Livello di Trasporto; Livello MAC; Sicurezza; Risparmio energetico. 1.1.3 Algoritmi di routing per MANET La specifica di un algoritmo di routing efficiente per le reti Ad Hoc è tutt oggi uno dei principali obiettivi della ricerca nel campo delle MANET. Infatti le tradizionali tecniche di routing non sono adatte ad una tipologia altamente dinamica come quella delle MANET. Le caratteristiche che dovrebbe avere un buon algoritmo di routing sono: la scalabilità; la rapida convergenza; 19

un limitato overhead alla trasmissione dei dati; assorbimento limitato di energia e risorse per il mantenimento e reperimento delle informazioni necessarie per effettuare l instradamento dei pacchetti. Nelle reti MANET ogni terminale funge da relay per gli altri, ovvero deve: scoprire quali sono i terminali a lui adiacenti; comunicare a tutti quali siano i terminali da lui raggiungibili; deve determinare, con le informazioni scambiate, la topologia della rete. A causa della mobilità dei terminali, l instradamento varia nel tempo. È quindi necessario un algoritmo di routing distribuito e dinamico. Una effettiva implementazione di un algoritmo di routing su PDA (Sistema operativo Windows Mobile) è stata realizzata in C# come componente del.net COMPACT FRAMEWORK (vedi [1]) e si basa sull algoritmo Dynamic Source Routing descritto in [3]. Il DSR (Dynamic Source Routing) è un algoritmo basato sul concetto di source routing. Ovvero il mittente, per poter inviare un pacchetto, deve essere a conoscenza di un intero percorso che permetta di raggiungere il nodo a cui è destinato il pacchetto. Una volta conosciuta la route per raggiungere la destinazione il nodo sorgente inoltra il pacchetto da inviare al primo nodo sul percorso da seguire. Quando un nodo riceve un pacchetto se ne è la destinazione il pacchetto viene mandato a livello applicativo altrimenti viene inoltrato al nodo successivo. Ogni nodo che partecipa alla rete mantiene un route cache (una tabella di routing) in cui memorizza le source route di cui è venuto a conoscenza col tempo. Quando 20

un nodo deve inviare un pacchetto verifica se ha a disposizione nella route cache una route per tale destinazione. Se viene trovato un percorso, questo viene utilizzato per inoltrare il pacchetto; altrimenti il nodo inizia un procedura per la richiesta di una route: route discovery. In breve, il mittente S invia a tutti i suoi vicini una Routing Request in cui specifica la destinazione D e una lista contenente S; ogni vicino V i (S), se non conosce già una rotta per D, a sua volta invia una Routing Request a tutti i suo vicini, specificando come destinazione D e concatenando se stesso alla lista ottenuta dal vicino con la Routing Request ricevuta. Tale lista rappresenterà alla fine la rotta trovata da S a D. Se V i (S) conosce, invece, una rotta verso D, la concatena alla lista ed invia una Routing Reply verso S usando la rotta nota fino ad S. Il mittente in questo modo alla ricezione del reply viene a conoscenza di una source route verso la destinazione. Se nessuno nel cammino conosce una rotta verso la destinazione, le Routing Request si propagano fino a raggiungere la destinazione. La destinazione invia un Routing Reply usando la rotta specificata nella Routing Request ricevuta. Durante l utilizzo di una source route, il nodo controlla che l invio del messaggio avvenga correttamente sul percorso utilizzato. Potrebbe infatti accadere che un nodo, facente parte della source route, si sia spento o sia finito al di fuori del raggio di trasmissione degli altri nodi e quindi la route non permetterebbe più l invio di pacchetti. Il monitoraggio sul funzionamento delle source route individuate viene detto route maintenance. La route maintenance in DSR è limitata alla segnalazione (attraverso appositi messaggi di errore denominati 21

RERR) e individuazione di errori di trasmissione che possono essere causati da vari motivi: la route (o parte della route) utilizzata è stata reperita dalla route cache ma non è più valida; il pacchetto è stato perso o è arrivato corrotto a destinazione a causa di un errore di trasmissione; 1.2 Architettura per supportare i Cooperative Work Come già detto, un team di operatori che, supportati da dispositivi mobili, agiscono sul campo, possono formare una rete ad hoc, senza avere necessità di appoggiarsi ad una infrastruttura preesistente, forse non disponibile o utilizzabile. È questo, come accennato, il caso di scenari di emergenza in cui i membri del gruppo devono collaborare per raggiungere un obiettivo condiviso, traendo beneficio da un software che supporti la loro collaborazione che, genericamente, prende il nome di Computer Supported Cooperative Work. I CSCW richiedono che i dispositivi da coordinare siano continuamente interconnessi, per lo scambio di informazioni, lo scheduling delle attività, e il coordinamento. Se i dispositivi che cooperano formassero una LAN cablata standard (come Ethernet) o anche una rete Wireless in cui gli stessi sono pressoché fermi, problemi non ci sarebbero perché le disconnessioni sarebbero cosa alquanto rara. Purtroppo, però, in scenari in cui i dispositivi wireless formano una MANET e tendono a muoversi per eseguire le attività cui sono addetti, le disconnessioni sono frequenti e l interconnessioni non sono comunque garantite. Lo strato software di 22

coordinamemento (coordination layer), oltre a gestire il lavoro cooperativo, deve prendere in considerazione le possibili disconnessioni e prevedere azioni atte a mantenere tutti i dispositivi connessi.come esempio, riprendiamo in esame lo scenario di disaster/recovery (ad esempio quello in Figura 5): dopo un terremoto, un team, capeggiato da un leader, è equipaggiato con dispositivi mobili (PC portatili e palmari) e inviato nell area colpita per valutare lo stato degli edifici con l obiettivo di costruire una mappa della zona per conoscere quale edifici necessitano di ristrutturazione. Ogni dispositivo di ogni membro fornisce una serie di servizi ed è connesso con gli altri a formare una MANET 2 la cui topologia può cambiare con il movimento degli operatori per eseguire le attività. Magazzino immagini Area di intervento Confronto Museo Campanile pericolante Fotocamera Caposquadra Membro libero Chiesa di S.Francesco Figura 5 Un possibile scenario di disaster/recovery 2 Nella figura i link diretti sono tratteggiati in rosso. Si osservi come non sia necessario che ogni dispositivo sia connesso direttamente con tutti gli altri 23