Progetto di un sistema di comunicazione di gruppo con multicast causale Reti di Calcolatori L-S Marco Canaparo Matricola 171568.

Slides:



Advertisements
Presentazioni simili
La progettazione secondo la norma internazionale ISO 9001
Advertisements

Corso di laurea in INFORMATICA RETI di CALCOLATORI A.A. 2003/2004 Messaggi di errore e di controllo Alberto Polzonetti
Struttura dei sistemi operativi (panoramica)
Sistema Geomonitor Schema di funzionamento generale
Modello di replicazione attivo e di supporto alla tolleranza ai guasti in ambito MOM Autore: Claudio Fusconi Matricola: Esame: Reti di calcolatori.
SARAH Shop Assistant in Reti Ad-Hoc Presence Awareness, modalità disconnessa e dinamiche di update Antonio Gaetani.
Supporto per servizi di File Hosting Presentazione di progetto per lesame di Reti di Calcolatori LS Valerio Guagliumi
Delay Tolerant Networking Service per SAMOA. Il framework SAMOA SAMOA è un framework che consente di gestire e popolare la rete sociale e propagare a.
Un sistema software per la vendita di prodotti on-line Università degli studi di Bologna Facoltà di ingegneria Reti di calcolatori L-S Studente: Rinaldi.
Qualità di servizio in ambiente wireless Progetto per il corso di Reti di Calcolatori L-S Prof. Antonio CorradiValentina Maraldi.
P ROGETTO PERMESSO PER SISTENT MESS AGING IN AD H O C NETWORKS Presentazione di Manuela Bassetti Corso di Reti di Calcolatori L-S AA Progetto.
Progetto Di Uninfrastruttura Che Permetta La Modifica Di Dati Condivisi Distribuiti Su Più Nodi Reti di calcolatori L-S Gozzi Daniele
Proxy-based infrastructure for LBS availability Reti di Calcolatori L-S Andrea Licastro
Progetto PERMESSO PERsistent MESSaging in ad hOc networks Presentazione di Vitalone Giuseppe.
Stefano Lama Stefano Maggiore Giacomo Tartari. Scenario applicativo Crescente diffusione di dispositivi dotati di connettivita wireless porta a… … possibilità
PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr Corso di Reti di Calcolatori LS A.A. 2005/2006.
1 Packet Manager Sistema di gestione di pacchetti software per il progetto dell'esame di Reti di Calcolatori LS Progetto realizzato da Fabio Parisini.
Supporto in RMI per la collaborazione in rete Autore:Vincenzo Coco Matricola: Corso di Reti di Calcolatori LS 2006/2007 Docente: Antonio Corradi.
Progetto di una architettura per lesecuzione distribuita e coordinata di azioni Progetto per lesame di Reti di Calcolatori L-S Prof. Antonio Corradi Finistauri.
DEIS Università di Bologna
Progetto di Reti di Calcolatori LS a cura di Gesualdi Marco Miniello Giuseppe Vukovic Veljko.
Reti di Calcolatori L-S Un Sistema Decentrato di Allocazione del Carico per Applicazioni di Calcolo Distribuito Mauro Bampo.
Distributed File System Service Dario Agostinone.
Architettura e protocolli di distribuzione dello stato in videogiochi Multiplayer distribuiti Michele Pace Esame di Reti di Calcolatori LS Aa
U N INFRASTRUTTURA DI SUPPORTO PER SERVIZI DI FILE HOSTING Matteo Corvaro Matricola Corso di Reti di Calcolatori LS – Prof. A. Corradi A.A.
BROKER SERVER Progetto di Ingegneria del Web 2008 Alessio Bianchi Andrea Gambitta Giuseppe Siracusano.
Reti di Calcolatori LS Professor Antonio Corradi Ingegner Dario Bottazzi Presentazione di Francesco Fiori.
Il modello di riferimento OSI
File system distribuito transazionale con replicazione
Introduzione al controllo derrore. Introduzione Quando dei dati vengono scambiati tra due host, può accadere che il segnale venga alterato. Il controllo.
Modulo n – U.D. n – Lez. n Nome Cognome – titolo corso.
Reti di calcolatori 14 novembre 2003 INFORMATICA GENERALE Scienze per Operatori dei Servizi Giuridici Anno Accademico
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
Progetto Message Queues Service Olivelli Enrico Corso di Reti di Calcolatori LS A.A
Nemesi Creazione e pubblicazione di una rivista online tramite l’utilizzo di Java Message Service.
Un sistema per la replicazione ottimistica in una rete di pari Progetto di Reti di calcolatori LS Federico Grassi a.a. 2004/2005.
Progetto di un Agente per l’Apprendimento mediante Alberi Decisionali in ambito distribuito Studente: Luca Monaco Anno Accademico
Il DHCP (Dinamic Host Configuration Protocol) fornisce un meccanismo per assegnare dinamicamente gli indirizzi IP ed i parametri di configurazione ad un.
Producer – Consumer System Di Carlo Matteo CdLS Ingegneria Informatica (0234) Reti di Calcolatori LS A.A. 2004/2005.
MCSA Mobile Code System Architecture Infrastruttura a supporto della code mobility Pierfrancesco Felicioni Reti di Calcolatori L.S. 2005/2006.
Studio di una soluzione distribuita per la gestione di un centro sondaggi.
Sistemi di elaborazione dell’informazione Modulo 3 - Protocolli applicativi Unità didattica 1 - Domain Name System Ernesto Damiani Lezione 2 – Caratteristiche.
Supporto per la replicazione attiva di servizi Progetto per il corso di Reti di Calcolatori LS Montanari Mirko Matr:
Sistema di replicazione master-multislave con server di backup per un servizio di chat di Marco Andolfo matr
Infrastruttura per la gestione distribuita di un sistema di prenotazione Progetto di: Fabio Fabbri Matricola
Progetto di un Group Communication System Reti di Calcolatori LS A.A Giampaolo Capelli.
Multi agent System per la gestione di feed RSS. Obiettivi  Progettazione di un sistema ad agenti basato su tucson per la gestione di feed RSS  Sviluppo.
P2P Reliable Multicast Messenger Progetto e realizzazione di un software peer to peer per comunicazioni di gruppo.
Java Distributed Event Service Bringing events to J2EE platform Università degli studi di Bologna Corso di Laurea Specialistica in Ingegneria Informatica.
PERMESSO PERsistent MESSaging in ad hOc networks Corso di Reti di Calcolatori LS – AA Presentazione di Davide Sansovini Professore: Antonio Corradi.
Servizio di newsgroup con replicazione dei server Studente: Letizia Cheng Cheng Sun Matricola: Reti di Calcolatori LS – Prof. A. Corradi A.A. 2003/2004.
Progetto di un Gestore di Nomi Corso di Reti di Calcolatori L-S prof. Antonio Corradi A.A 2003/2004 Autore: Molesini Ambra.
PERMESSO PERsistent MESSaging in ad hOc networks Presentazione di Valentina Bonsi Corso di Reti di Calcolatori L-S AA Progetto di Giuseppe Vitalone,
Reti di calcolatori LS1 Service Middleware Reti di calcolatori LS progetto di Andrea Belardi Infrastruttura dedicata alla gestione di servizi disponibili.
B3Discovery: Infrastruttura di Discovery distribuita utilizzando l’architettura JXTA Corso di Reti di Calcolatori L-S prof. Antonio Corradi A.A 2005/2006.
Progetto e Realizzazione di un servizio di Chat Progetto di: Nicoli Leonardo Corso di: Reti di Calcolatori L-S.
Middleware per la sincronizzazione di ambienti eterogenei Progetto di Reti di Calcolatori LS Emanuele Crescentini matr Ingegneria Informatica LS.
Corso di Reti di Calcolatori LS Progetto di un server FTP in grado di coordinarsi con altri mirror per garantire QoS di Marco Buccione.
Progetto RE.VE.N.GE. MQ REliable and VErsatile News delivery support for aGEncies Sistema di Distribuzione Reti di Calcolatori LS – Prof. Antonio Corradi.
Reti di Calcolatori LS - Fabio Poli 15 Giugno 2006 Sviluppo di un player di Campo Minato multigiocatore con supporto di Chat MultiCast.
Proxy Based Infrastructure for LBS tailoring Paolo Lutterotti matr Reti di Calcolatori LS, A.A. 2005/06.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 7 -Instradamento dinamico Ernesto Damiani Lezione 4 – OSPF.
Progetto PERMESSO Progetto PERMESSO PERsistent MESSagging in ad hOc networks Presentazione di Elisabetta Visciotti Progetto di Gruppo di: Manuela Bassetti,
Alex Marchetti Infrastruttura di supporto per l’accesso a un disco remoto Presentazione del progetto di: Reti di calcolatori L-S.
SnippetSearch Database di snippet bilanciato e replicato di Gianluigi Salvi Reti di calcolatori LS – Prof. A.Corradi.
Mobile Agent and Enterprise Architecture Integration Il Gestore di Librerie e Servizi Lambertini Riccardo.
JDICS Java Dynamic Infrastructure for C/S systems Laura Galli matr Reti di calcolatori LS, Prof. A.Corradi A.A
Pari Gioia Reti Di Calcolatori LS A.A. 2003/04.
PPT- Postecert PEC – 05/2009 Postecert Posta Elettronica Certificata.
Risultati Leapfrog IP per una comunicazione sicura e affidabile Cristiano Novelli ENEA, XML-Lab.
Transcript della presentazione:

Progetto di un sistema di comunicazione di gruppo con multicast causale Reti di Calcolatori L-S Marco Canaparo Matricola

Struttura della presentazione Requisiti Analisi dei requisiti Analisi dei protocolli utilizzati Implementazione Conclusioni e sviluppi futuri

Requisiti del progetto Realizzazione di un group communication system view- oriented dinamico; Membri del gruppo peer-to-peer: coordinamento senza un’entità privilegiata; Comunicazione tramite invio di messaggi al gruppo protocollo IGMP; Per quanto riguarda lo scambio di messaggi si deve rispettare ordine FIFO e causale; Aggiunta di reliability tramite ritrasmissione di messaggi persi Meccanismo per la crash detection (fault tolerance) Implementazione di servizi acceduti come oggetti remoti(RMI)

Analisi dei requisiti – sistema di view Sistema view-oriented Ogni componente possiede una view che rappresenta lo stato attuale del gruppo Ogni view dovrà essere aggiornata e consistente con le view degli altri componenti Utilizzo di un meccanismo per le informazioni di membership Tre eventi che danno origine alla modifica delle view Join : adesione al gruppo Leave : uscita dal gruppo Crash : blocco di un membro

Analisi dei requisiti – meccanismi per la reliability Multicast IGMP al quale si aggiunge affidabilità Gestione dell’omissione dei messaggi Il mittente ha la responsabilità di verificare l’avvenuta ricezione dei messaggi inviati attraverso la ricezione degli ack Monitoring e crash detection Sistema per l’individuazione di componenti bloccati  Crash verrà rilevato in modo ipotetico da ogni membro basandosi su timeout

Sincronizzazione view - osservazioni Ambiente asincrono Messaggi di “join” e “leave” vengono ricevuti in modo asincrono Possibili inconsistenze temporanee tra le view dei membri anche a fronte di eventuali crash I messaggi verranno consegnati a tutti i membri in ordine e senza duplicati se: View complete e consistenti Membri non bloccati Tempi di ricezione sono compatibili con timeout di crash detection

Multicast – reliability M1 outputBufferinputBufferM Reliability: ogni messaggio in uscita viene mantenuto nel supporto finché tutti i destinatari non inviano un messaggio di ack a testimoniare l’avvenuta ricezione. Periodicamente in assenza di ack si effettuano dei rinvii per un certo numero di volte M M M2 M3 Ordinamento FIFO dei messaggi: attraverso la numerazione dei pacchetti lato mittente e la bufferizzazione lato ricevente

Protocolli utilizzati - join M1M2 M3 M1 M2 M1 M3 M2 M1 M3 M4 M1 M2 M3 join has-joined M4 ack Join: fase critica M4 non conosce i processi che fanno parte del gruppo

Protocolli – leave M1M2 M3M4 M1 M2 M1 M3 M2 M1 M3 M4 M1 M2 M3 leave ack

Protocolli – crash detection M1M2 M3M4 M1 M2 M1 M3 M2 M1 M3 M4 M1 M2 M3 ack msg

Protocolli – crash detection M1M2 M3M4 M1 M2 M1 M3 M2 M1 M3 M4 M1 M2 M3 suspect-crashed applicativo F

Protocolli – crash detection M1M2 M3M4 M1 M2 M1 M3 M2 M1 M3 M4 M1 M2 M3 F hello crashed

Protocolli – crash detection Unreliable failure detector È un meccanismo che funziona tramite ipotesi di crash A carico dei membri non crashed Legato alla presenza o meno di omissione di messaggi e al dimensionamento del timeout Critica la scelta del dimensionamento del timeout Piccolo  sistema con continui sospetti Grande  eccessivo numero di inconsistenze

CBCAST Ordinamento causale garantisce che i messaggi in relazione causa-effetto di mittenti diversi siano ricevuti dai gruppi in ordine. Si basa su: Vector time: protocollo di consegna basato su un orologio logico Legge per il delivery causale

CBCAST – Vector time pipi pjpj pkpk pkpk pjpj pipi … VT(p i ) pkpk pipi pjpj … pjpj pipi pkpk … M pipi VT(p i ) =VT(p i )+ 1 p j confronta VT di M con il proprio VT e lo modifica così  k є 1 … n : VT(p j )[k] = max(VT(p j )[k], VT(m)[k]) VT(p k ) VT(p j )

CBCAST – Vector time Ogni membro p i è dotato di un vettore di clock logici nel quale sono memorizzati sia il valore del clock del processo stesso sia quello degli altri Prima di inviare un messaggio incrementa il clock logico relativo a se stesso e inserisce il vettore nel messaggio Lato ricevente alla consegna del messaggio si modifica il proprio vector clock scegliendo il massimo tra il valore contenuto nel messaggio e il valore corrente

CBCAST – causal delivery rule Lato ricevente prima di effettuare la consegna del messaggio sarà necessario che siano state verificate le condizioni per il delivery causale. 1. VT(msg)[sender_id] = VT(receiver)[sender_id] + 1; 2. VT(msg)[k] <= VT(receiver)[k],  k, k≠sender_id; Il messaggio msg è il successivo inviato dal sender Dall’ultimo messaggio inviato dal mittente, gli altri membri non ne hanno inviati altri

CBCAST A{4,6,5} B{4,6,5} C{4,6,5} M1{4,6,6} B{4,6,6} A{4,6,6} M2{4,7,6} C{4,7,6} A{4,7,6} M1{4,7,6}

Pubblicazione dei servizi Ogni membro del gruppo deve offrire agli altri dei servizi accessibili tramite oggetti remoti What-services: richiedo tutti i servizi offerti da tutti i componenti del gruppo Request-service service_name: cliente è interessato ad un preciso servizio con un certo nome Make-service: utilizzo del servizio scelto I servizi disponibili non sono noti a priori ma possono cambiare nel tempo per questo si è deciso di utilizzare meccanismi di riflessione del codice

Implementazione

Conclusione e sviluppi futuri I test sono stati svolti prevalentemente in locale Applicazione con lo scopo di sperimentare protocolli per la comunicazione in un group communication system Si sono scelti i gruppi view-oriented con modifica nel tempo dei componenti del gruppo qualità del servizio nella consegna dei messaggi e loro ordinamento Inoltre c’è la possibilità di inserire servizi per i vari componenti del gruppo accessibili come oggetti remoti Limiti Utilizzo di più thread per l’implementazione dei componenti del gruppo. Tecnica poco efficiente Eccessivo utilizzo dei messaggi multicast anche per l’invio di messaggi di hello Failure detector che riesce a correggere il tempo di timeout in caso di errore nell’individuazione di crash Possibilità di avere una politica di negative ack Estensione a più gruppi