Delay Tolerant Networking Service per SAMOA
Il framework SAMOA SAMOA è un framework che consente di gestire e popolare la rete sociale e propagare a livello applicativo la visibilità dei membri al fine di promuovere e supportare applicazioni collaborative avanzate, ma limita la comunicazione tra le entità direttamente connesse. La rete sociale è centrata sull'utente e utilizza due tipologie di visibilità di contesto: place visibility profile visibility
SAMOA: il modello La rete sociale di SAMOA viene modellata tenendo conto di tre possibili ruoli assegnabili ad un' entità. Il ruolo di manager viene assunto dagli utenti che sono interessati a creare una propria rete sociale. Essi hanno la responsabilità di definire i confini della località e i criteri che guideranno l'estrazione dei collaboratori. Tutti gli utenti che sono presenti all'interno dei confini stabiliti dal manager sono detti client e sono i candidati a diventare i membri della rete sociale. Quando essi entrano a far parte di una rete sociale assumono il ruolo di member.
Larchitettura di SAMOA Il Basic Services Layer fornisce un servizio di nomi, un meccanismo per la rilevazione di entità presenti nella medesima località e dei metodi per supportare la comunicazione sia essa di tipo uno a molti o uno a uno. Il Social Network Management Layer fornisce meccanismi per l'estrazione della rete sociale e per la sua gestione. Il Delay Tolerant Network Layer fornisce il servizio per la gestione di messaggi Delay Tolerant, inviati a entità SAMOA non necessariamente connesse in modo diretto.
Scenari di Emergency Rescue In scenari di emergenza (Emergency Rescue), in cui è possibile che nodi della rete sociale rimangano isolati per un tempo prolungato, è necessario sviluppare un servizio che permetta ad ogni utente di inoltrare messaggi alla prima entità, con sufficienti risorse computazionali e di memoria, con cui entra in prossimità fisica.
Delay Tolerant Networking Architecture La DTN Architecture opera sopra i livelli di rete e trasporto delle reti che interconnette e fornisce servizi chiave come la memorizzazione, la ritrasmissione e il forwarding di messaggi asincroni al fine di garantire laffidabilità alla comunicazione del sistema distribuito in cui viene integrata. Una regione è una parte della rete globale che comprende uno o più nodi. Un DTN gateway è un nodo della rete che è responsabile della memorizzazione dei messaggi DTe del forwarding dei messaggi memorizzati ai nodi con cui entra in prossimità fisica.
Delay Tolerant Networking Service Il servizio di DTN per SAMOA si occupa dellinvio/ricezione di messaggi DT, della loro memorizzazione, del forwarding e inoltre della ritrasmissione di messaggi che vengono persi a causa di disconnessioni temporanee. I messaggi DT vengono propagati in base a interessi e attività specificate, affinché siano inoltrati e consegnati solo ad utenti che possano collaborare con lentità che ha inizialmente inviato il messaggio. Il modello del servizio integra il modello di SAMOA con il modello della DTN Architecture
DTN Service: il modello Sia i client che i manager possono essere sender e/o receiver di messaggi DT. I manager sono entità dotate di buone risorse e svolgono anche la funzione di forwarder. I client, invece, sono entità con scarse risorse e possono inviare/ricevere messaggi DT solamente tramite entità manager. E sempre possibile inviare messaggi DT ad entità manager che sono in prossimità fisica.
DTN Service: scambio di messaggi Quando un client entra in prossimità fisica con un manager gli invia tutti i messaggi DT che ha memorizzati in cache. Quando due manager entrano in prossimità fisica si inviano reciprocamente i messaggi DT che hanno memorizzati in cache. Quando due client entrano in prossimità fisica non avviene nessuno scambio di messaggi DT. Due client necessitano sempre dellintermediazione di un manager. Quando un manager riceve un messaggio DT verifica il match dei profili ed eventualmente inoltra il messaggio al livello applicativo. Poi invia il messaggio agli altri manager che sono in prossimità fisica. Infine verifica il match con i profili dei client presenti nella sua rete sociale (PSN) ed eventualmente provvede alla consegna ai client del messaggio appena ricevuto.
Il protocollo DTN Il protocollo per linvio di messaggi DT è composto dai seguenti sette tipi di messaggi: DTDiscoveryMessage DTRequest DTRequestAcknowledge DTMessage DTMessageAcknowledge DTPartOfFile DTPartsOfFileRequest
Il protocollo DTN: sequenza di messaggi La sequenza dei messaggi, se il DTRequestAcknowledge ha il flag di send=true, è La ricezione di un file allegato ad un messaggio DT è affidata ad un apposito handler: periodicamente lhandler verifica le parti del file mancanti nella finestra corrente e le richiede al sender.
La comunicazione La comunicazione tra i servizi DTN di due entità SAMOA avviene sempre mediante la modalità punto-a-punto. Le primitive di comunicazione del DTN Service sono di tipo asincrono, asimmetrico, non bloccante, non reliable. Linvio e la ricezione di messaggi secondo il protocollo DTN sono delegati a due pool di threads, uno per linvio e laltro per la ricezione, i cui threads sono allocati staticamente.
Le primitive di comunicazione Le primitive di invio del servizio DTN per SAMOA sono le seguenti: public void sendDTMessage (DTMessage message,UUID toID,boolean deleteAfterSend) public void sendDTMessage(DTMessage message,UUID toID) Linvio e la ricezione di messaggi secondo il protocollo DTN avviene mediante una OutputPort e una InputPort messe a disposizione dal MTM.
Test effettuati e conclusioni I test effettuati hanno individuato alcuni limiti: bassa velocità di trasmissione dei file allegati problemi di gestione di un carico elevato di messaggi con molte entità presenti contemporaneamente Hanno anche individuato i pregi: consistenza del sistema garantita anche in caso di disconnessioni temporanee SAMOA ha acquisito maggiore flessibilità e dinamicità