Supporto alla comunicazione di gruppo
context aware per membri
disconnessi.
Reti di Calcolatori LS
aa 2005/2006
Bruno Docimo 0000222738
Scenario
Mobile Ad-hoc NETwork
• Nodi mobili che collaborano per fornirsi servizi
• Topologia dinamica
• Problemi: mobilità dei nodi, perdita di pacchetti,
disconnessioni improvvise.
AGAPE

E’ un middleware:
–
–
–
–
Gestisce comunicazione di gruppo in MANET
Gestisce la rete (comunicazione, routing, …)
Unico per l’idea di vista.
Permetta di capire chi è presente attualmente in
rete, qualificandolo attraverso un profilo
(presence awareness)
Obiettivo
Estendere AGAPE
supporto alla comunicazione verso utenti disconnessi.
Reliability (affidabilità)
Rispettando il principio di minima intrusione
Modalità di consegna

Modalità context-aware:consegna messaggi con delega
ME2
ME2
ME3
LME1
LME2
ME1
LOC1
ME1
LOC2
Modalità di consegna

Modalità re-connect:
messaggi mantenuti all’interno della
località
To: ME1
ME2
LME1
ME1
LOC1
Architettura

Context Manager:
Determina la politica di consegna dei messaggi
o Raccoglie informazioni sugli spostamenti e li deposita in un HR
o Calcola le probabilità che i vari utenti presenti si possano muovere
verso la destinazione target
 Interlocation Routing Service:
o Memorizza i messaggi nel MR (chashing)
o Consegna dei messaggi agli utenti corrieri (forwarding).
 Message Repository:
o offre servizi di memorizzazione dei messaggi
o
APPLICATION
C.M.
I.R.S.
AGAPE
M.R.
I.R.S. Lato ME



Rimane in attesa di nuovi messaggi “extralocality” che devono
essere veicolati.
Memorizza tali messaggi nel MR locale
Invio di tali messaggi al LME della nuova località corrente
M.R.
ME1
M.R.
M.R.
M.R.
LME2
LME1
ME2
LOC1
ME3
I.R.S. Controllore Località (LME)

Si interfaccia col VMS di Agape per ricevere le viste aggiornate:
–
–


Se sono presenti nuovi elementi, ripete la procedura di
instradamento dei messaggi presenti nel MR locale
Se ci sono elementi disconnessi, invoca il CM per rimuovere gli
HR.
se il messaggio da spedire è diretto alla località usa il metodo
searchUserMatchingProfile controlla se il destinatario o i
destinatari sono presenti in tale località, e spedito.
Se il messaggio deve essere consegnato fuori dalla località
corrente viene invocato il CM che restituisce o l’elenco dei
possibili corrieri, o la decisione di memorizzare localmente il
messaggio.
Esempio: Messaggio in località

Invoca il metodo serchUserMatchingProfile e
controlla se il destinatario è presente
–
–
Se il destinatario è presente allora invio.
Altrimenti caching
To: ME2
LOC 1
ME1
M.R.
LME1
ME2
LOC 1
Esempio: Messaggio in extralocality(1)

Si invoca il C.M. che :
–
Restituisce lista di possibili corrieri (forwarding)
ME2
Place (LID)
Locality 0 (0)
To ME1
LOCLocality
2 1 (1)
Global Register Table
1
1
1
3
1
1
3
1
1
1
2
2
2
3
3
3
2
2
2
2
ME3
Next Locality History (LID)
Locality 0 (0)
1
1ME2
1 3
1
1
3
1
1
1
Locality 1 (1)
0
3
0
3
0
0
0
3
3
0
LME1
Loc 1
ME2 corriere alta
probabilità che
andrà in Loc2
Next Locality History (LID)
ME2
LME2
ME1
ME1
Loc 2
Esempio: Messaggio in extralocality(2)

Decisione di memorizzare in messaggio
ME2
Global Register Table
Place (LID)
Locality 0 (0)
To ME1
LOCLocality
3 1 (1)
Next Locality History (LID)
1
1
1
3
1
1
3
1
1
1
2
2
2
1
1
1
2
2
2
2
ME3
Next Locality History (LID)
Locality 0 (0)
1
1ME2
1 3
1
1
3
1
1
1
Locality 1 (1)
0
3
0
3
0
0
0
3
LME1
Loc 0
Messaggio non
recapitato a
nessun corriere
(caching)
3
0
M.R.
ME1
Conclusioni


Trasparenza
Reliability
Sviluppi Futuri



Decentralizzare
Supporto alla replicazione
Migliorare algoritmi di predizione
Scarica

presentazione