PERMESSO
PERsistent MESSaging in ad hOc networks
Corso di Reti di Calcolatori L-S AA 2005-2006
Presentazione di Roberto Gamboni
Progetto di Giuseppe Vitalone, Melli Michele, Roberto Gamboni e
Valentina Bonsi
Prof. Antonio Corradi
Tutor Eugenio Magistretti
Sommario
• Introduzione Manet
• PERMESSO: struttura e progetto
• Discovery
• Replicazione
• Presence awareness
• Sviluppi futuri
Cosa è una MANET
• Mobile ad hoc networks (MANETs) come
reti ad-hoc di dispositivi mobili
• Assenza di infrastruttura di comunicazione
• Elevata dinamicità: la topologia della
MANET cambia in continuazione in base
agli spostamenti dei nodi.
PERMESSO: progetto
• Instant Messaging su MANET





Solo distanze 1-Hop
J2ME
802.11
Serializzazione fatta ad-hoc
Utilizzo di broadcast
PERMESSO: struttura
Instant messaging fra
utenti presenti nella
MANET con scambio
reliable di messaggi
Messaggistica persistente
per utenti non presenti
contemporaneamente
nella MANET
Chat Sincrona
Chat Asincrona
Discovery & Presence Awareness
Gestione dell’entrata, dell’uscita e della caduta dei nodi
nella rete organizzata in modo distribuito, con il ruolo
del coordinatore che ruota fra i presenti.
Discovery
• Fornire ad un nodo entrante le
informazioni per operare nella MANET
Soluzione decentralizzata: ogni nodo risponde per sè
 elevato numero di risposte: Overhead
Soluzione centralizzata: un nodo coordinatore
 Chi fa da coordinatore?
 Se cade il coordinatore?
Discovery
• Il nodo coordinatore risponde per tutti!
Indica l’elenco dei nodi presenti
X
X : Eccomi!
D
Nodi:
A,B,C,D,X
La risposta è inviata in Broadcast,
in modo che anche tutti gli altri
dispositivi possono aggiornare le
loro liste.
Coordinatore notifica a tutti i nodi
ogni cambiamento nella MANET
A
C
B
Chi fa il coordinatore?
• Nessun nodo ha il compito specifico di
mantenere l’elenco dei nodi online.
• Rotazione del compito di coordinatore
– Struttura ad anello logico
– Token rappresenta l’attività di coordinatore
Chi fa il coordinatore?
Ultimo nodo entrato
Coordinatore
Coordinatore
Node X
X:M ...
T
Q
Refuse
X
W
Y:M ...
Accept
Z
Y
Node Y
Se cade il coordinatore?
• In un modello centralizzato se cade il
•
coordinatore non si ha più servizio.
La dinamicità dell’anello logico non consente di
applicare politiche di rigenerazione del Token
basata su time out.
Modello di Replicazione
un nodo si preoccupa di mantenere la lista dei
nodi in modo da essere in grado di sostituire il
coordinatore in caso di guasto.
Modello di Replicazione
• Modello a copie calde
Ogni modifica viene comunicata alla copia
• Modello Passivo?
Fase di checkpoint con cui la copia viene
aggiornata
• Modello Attivo?
La copia provvede ad aggiornarsi appena entra
un nuovo nodo
Modello di Replicazione
Coordinatore
Node X
Replicatore
EXIT
EXIT
Elaborazione attiva
della copia.
Ridondante!
Ma con poco aumento di
computazione otteniamo
una lista sempre corretta
in caso di caduta di un
nodo in un qualsiasi
momento.
ONLINE
ONLINE rappresenta la fase di Checkpoint
tra copia principale e copia passiva.
Politica Eager?
Politica Lazy?
Presence Awareness
• Obiettivo: fornire a tutti gli utenti una visione
aggiornata dei nodi presenti con cui possono
chattare
 Ogni nodo deve confermare periodicamente la
sua presenza al coordinatore
 Dopo la mancata ricezione di due messaggi si
suppone che il nodo sia caduto (si ritarda la
rilevazione ma un solo messaggio potrebbe
essere perso)
Presence Awareness
Coordinatore
Node X
Aumento notevole del
numero di messaggi inviati!
CONFIRM
CONFIRM
Aumento del carico
computazionale del nodo
coordinatore!
 Servizio costoso
Dopo l'assenza di due Confirm
si assume la caduta del Nodo X
L’alto numero di messaggi non
deve influire sulla qualità del
servizio di messaging.
Conclusioni
• Discovery e Presence Awareness
forniscono il supporto base per lo sviluppo
dei servizi di chat sincrono e asincrono.
• Replicazione per maggiore affidabilità.
Possibili sviluppi
• Load balacing
• Scalabilità
• Protocolli Reattivi per Multi-hop
Scarica

Presentazione