PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di...

9
PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di Calcolatori LS A.A. 2005/2006

Transcript of PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di...

Page 1: PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di Calcolatori LS A.A. 2005/2006.

PERMESSO

PERsistent MESSaging in ad hOc networks

Alessio FrancoMatr. 0000233544

Corso di Reti di Calcolatori LSA.A. 2005/2006

Page 2: PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di Calcolatori LS A.A. 2005/2006.

Overview

• Realizzazione di servizi di messaggistica istantanea in MANET

• Garanzia di servizi di invio messaggi sincrono/asincrono

• Presenza/assenza di un nodo centrale (persistent server)

• Necessità di utilizzare dispositivi dalle ridotte capacità compuazionali (J2ME)

• Tutti i nodi in diretta visibilità (distanza 1-hop)

Page 3: PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di Calcolatori LS A.A. 2005/2006.

Struttura e scelte progettuali

• Identificazione degli host tramite UUID• Scelta del protocollo per lo scambio dei

messaggi: UDP• Gestione dei pacchetti: PacketFactory,

Router, Dispatcher e ForwardPacket• Definizione della relazione di amicizia• Protocolli di comunicazione realizzati ad

hoc (si vedano i lucidi seguenti)• Trasparenza nei confronti del server

Page 4: PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di Calcolatori LS A.A. 2005/2006.

Protocolli: Join (1/4)

A: offlineC: online

Z: offlineA: offlineB: online

B: offlineC: offline

A B

C D

A: onlineC: online

A: onlineB: online

B: onlineC: online

Join_Network

Host_Online

Page 5: PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di Calcolatori LS A.A. 2005/2006.

A: onlineB: online

Protocolli: Left (2/4)

Z: offline

A

A: offlineB: online

B

C D

A: onlineC: online

B: onlineC: online

A: offlineC: online

Leave_NetworkFree_Memory_Ask

Free_Memory_Response

Page 6: PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di Calcolatori LS A.A. 2005/2006.

Protocolli: Amicizia (3/4)

A: onlineB: online

Z: offline

A

B: online

B

C D

A: onlineC: onlineC: online

Z: offlineA: offline

D: offline

Z: offlineA: online

D: onlineQuery_Alias

Query_ResponseFriendship_Ask

Friendship_YesHost_Online

Page 7: PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di Calcolatori LS A.A. 2005/2006.

Protocolli: Chatting sincrono (4/4)

A B

1000

1000

2000

2000 A: 1000B: 2000

Come gestire il ciclo di vita del thread?

E la porta remota di B?

D’ora in avanti lo scambio di messaggiavviene a regime passando per i thread

Dummy

Page 8: PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di Calcolatori LS A.A. 2005/2006.

Affidabilità sui messaggi di testo

• E nel caso (non così remoto…) che un messaggio di testo venga perso?

• UDP non ci dà garanzie a riguardo: aggiungiamo quindi un controllo sui messaggi di testo

• Ricevuto il messaggio il destinatario risponde inviando un ACK (portiamo su UDP alcuni dei controlli che TCP esegue in automatico)

• Invio di ACK singolo o cumulativo?• E se ad andare perso è l’ACK?• Chi gestisce invio e ricezione dell’ACK?

Page 9: PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr. 0000233544 Corso di Reti di Calcolatori LS A.A. 2005/2006.

Sviluppi futuri

• Meccanismi di replicazione

• Load balancing

• Routing multi-hop

• Realizzazione di chat multiutente

• Possibilità di scambio file

• Introduzione di tematiche di sicurezza

• …