Un sistema per la replicazione ottimistica in una rete di pari Progetto di Reti di calcolatori LS Federico Grassi a.a. 2004/2005.

Slides:



Advertisements
Presentazioni simili
Prototipo del Portale Fiscale per le Aziende. Portale Fiscale x le Aziende Area informativa news Area abbonati, accesso alla home page personalizzata,
Advertisements

© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D1 Architetture di rete.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità B1 Introduzione alle basi di dati.
Mantenimento dello stato Laboratorio Progettazione Web AA 2009/2010 Chiara Renso ISTI- CNR -
1 Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento.
Tutorial per luso di Pon-SitoVeloce 1. In Pon-SitoVeloce è possibile realizzare un sito con pochi click. Questa è la schermata dopo laccesso. Per iniziare.
Struttura dei sistemi operativi (panoramica)
Aprile 2004Reti di Calcolatori LS – Servizio di Annunci Distribuito1 Reti di Calcolatori LS REALIZZAZIONE DI UN SERVIZIO DI ANNUNCI DISTRIBUITO Studente:
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
Reti di Calcolatori LS Universitá degli Studi di Bologna Remotizzazione del Framework Unibo-env Autrice: Leticia Riestra Ainsua.
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
1 Packet Manager Sistema di gestione di pacchetti software per il progetto dell'esame di Reti di Calcolatori LS Progetto realizzato da Fabio Parisini.
Corso di Reti di Calcolatori LS A.A.: 2006 / 2007 Prof. Antonio Corradi SESAME Supporting Emulation of Services and Applications in Mobile Environments.
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
Meteo Service Corso di Reti di Calcolatori LS Casarini Stefano matr
Database per dati Storico-Geografici Salvatore Mazzurco
Gruppo Directory Services Rapporto dell'attivita' svolta - Marzo 2000.
Middleware di Discovery Avanzato Di Giuseppe Tomaiuoli Mat Reti di Calcolatori LS Prof. Ing. Antonio Corradi.
U N INFRASTRUTTURA DI SUPPORTO PER SERVIZI DI FILE HOSTING Matteo Corvaro Matricola Corso di Reti di Calcolatori LS – Prof. A. Corradi A.A.
Il modello di riferimento OSI
Servizi Grid ed agenti mobili : un ambiente di sviluppo e delivering
BLOG Massimo Sgambato. I Blog weB = WEB = Ragnatela. Il complesso della RETE dei computer in INTERNET. LOG = File su cui vengono registrate informazioni.
Everywhere Takeaway Progetto di SSCSWeb A.A. 2011/2012.
Everywhere Takeaway Progetto di SSCSWeb A.A. 2011/2012 V. Costamagna, F. Dotta, F. Barbano, L. Violanti, Oltikuka.
FASTVID RENTALS: CONCLUSIONI I PUNTI DI FORZA DEL PROGETTO, GLI SVILUPPI FUTURI 1.
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
L’architettura a strati
Nemesi Creazione e pubblicazione di una rivista online tramite l’utilizzo di Java Message Service.
Tipi e topologie di LAN Lezione 2.
Requisiti Funzionali del Sistema Obiettivo: realizzare un ambiente distribuito nel quale tutti gli Enti Regionali possano interagire prescindendo dalle.
MCSA Mobile Code System Architecture Infrastruttura a supporto della code mobility Pierfrancesco Felicioni Reti di Calcolatori L.S. 2005/2006.
Università degli Studi di Roma “Tor Vergata”
Studio di una soluzione distribuita per la gestione di un centro sondaggi.
Progetto di Ingegneria del Web Anno Accademico 2007/2008 Stefano Pigiani Bruno Ricci Marco Ruzzon.
Supporto alla comunicazione di gruppo context aware per membri disconnessi. Reti di Calcolatori LS aa 2005/2006 Bruno Docimo
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
Lucia Melotti 1/14 Bologna, 7 luglio 2004 Aspetti di sicurezza nello scambio di messaggi XML tra un partner ebXML ed un Web Service di Lucia Melotti Relatore:
Bonjour Post-It servizio di post-it distribuito di Elisa Rondini.
Progetto di un sistema di comunicazione di gruppo con multicast causale Reti di Calcolatori L-S Marco Canaparo Matricola
Chat-quiz Reti di Calcolatori L-S AA. 2003/2004 Rossella Rubino.
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.
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.
R.E.V.E.N.G.E. RELIABLE AND VERSATILE NEWS DELIVERY SUPPORT FOR AGENCIES Corso di Reti di Calcolatori LS – AA Professore: Antonio Corradi Referente.
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.
B IBLIO S ERVICE consultazione di articoli online Anna Riccioni Progetto per il corso di Reti di Calcolatori L-S Anno Accademico
Università degli Studi di Bologna Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea in Scienze dell’Informazione Università degli Studi.
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.
Hattrick Stadium Corso di Reti di Calcolatori LS Anno Accademico 2005/2006 Dolif Emilano matr
Reti di Calcolatori L-S Professor Antonio Corradi A.A Sistema Publish-Subscribe per la Gestione degli Eventi della Provincia di Rimini Provincia.
Everywhere Takeaway Progetto di SSCSWeb A.A. 2011/2012 V. Costamagna, F. Dotta, F. Barbano, L. Violanti, Oltikuka.
Pari Gioia Reti Di Calcolatori LS A.A. 2003/04.
Le basi di dati.
Transcript della presentazione:

Un sistema per la replicazione ottimistica in una rete di pari Progetto di Reti di calcolatori LS Federico Grassi a.a. 2004/2005

Requisiti di progetto Il progetto ha come obiettivo quello di realizzare un sistema che supporti la replicazione debole fra le repliche che lo compongono. L’applicazione vuole che gli utenti comunichino fra di loro per creare una base di conoscenza comune disponibile su ogni nodo. Si vuole massimizzare la disponibilità dei dati anche in un ambiente con mobilità e scarsa connettività.

Descrizione del sistema Spesso valutare la qualità di un link Internet non è facile. Gli utenti dell’applicazione si scambiano commenti (Annotation) sui link del sistema peer-to-peer Emule, differenziandole per aree tematiche (Channel).

Replicazione ottimistica Nel sistema gli utenti contribuiscono alla creazione di una base di conoscenza comune, scrivendo, modificando e cancellando annotazioni. Ogni nodo ha diritto di effettuare modifiche in maniera non bloccante rispetto agli altri; i nodi perciò possono contenere, in alcuni momenti, dati divergenti. Il sistema si occupa di mantenere la consistenza finale, ovvero fa convergere le varie repliche una volta che gli utenti hanno terminato di effettuare modifiche.

Gestione della comunicazione Per comunicare alle altre repliche le operazioni effettuate i nodi utilizzano meccanismi epidemici. La comunicazione avviene attraverso un meccanismo primario ed un secondo di backup:  Rumor mongering  Anti-entropy Per le operazioni di cancellazione si utilizzano i death-certificate.

Meccanismi epidemici: Rumor mongering Quando un nodo riceve una nuova operazione, questa viene marcata come calda e comunicata ai pari. Dopo aver contattato un numero n di nodi che già conoscevano l’operazione, la replica perde interesse e non la distribuisce più.

Meccanismi epidemici: Anti-entropy Con rumor mongering non si ha la certezza che tutti i nodi ricevano una informazione, per questo si utilizza come sistema di backup il meccanismo anti-entropy. Un nodo sceglie ogni T secondi un pari e i due si scambiano tutto il loro contenuto informativo secondo una politica push-pull. Annotation2 Annotation1 Annotation2 Log Node x Node y Anti-entropy session

Meccanismi epidemici: Death certificate Nel sistema non è sufficiente cancellare un oggetto da una replica per eliminarlo definitivamente, bisogna tenere traccia dell’operazione attraverso i death-certificate. Questi certificati di cancellazione vengono memorizzati in un repository su ogni nodo e comunicati agli altri con gli stessi meccanismi descritti in precedenza. DeathCertificateRepository DeathCertificate Node x

Architettura logica L’architettura logica di ogni nodo presenta quattro elementi fondamentali:  EntityManager  TimeManager  LogManager  NetworkManager Il fulcro dell’applicazione è il LogManager che opera tra la rete e gli oggetti replicati.

Rete di pari e JXTA™ I nodi fra loro formano una rete di pari. A livello implementativo è stato utilizzato il pacchetto JXTA. Questo offre le primitive per creare un gruppo di pari e farli comunicare fra loro. JXTA permette di offrire supporto anche a piattaforme come telefoni cellulari e palmari. JXTASocket

Gestione del tempo di sistema Ad ogni operazione viene associato un timestamp contente il valore dell’orologio logico e l’identificatore della replica generatrice. Il tempo di sistema viene gestito attraverso la relazione di Lamport happens-before sui clock logici. L’ordine parziale introdotto diventa totale utilizzando come ulteriore discriminante l’identificatore dei nodi.

Gestione dei conflitti Essendo possibile che le repliche divergano come contenuto occorre prevedere un meccanismo di riconciliazione. Il sistema prevede un protocollo per gestire queste situazioni basato sulla sintassi delle operazioni e la valutazione dei timestamp. In questo modo si ottiene che le repliche raggiungano la eventual consistency.

Stabilizzazione delle repliche Fra le repliche ne esiste una considerata primaria. Il compito di questo nodo è quello di stabilizzare le annotazioni. Rendendo definitive le annotazioni si evita che nodi rimasti a lungo scollegati e con valori di clock molto più bassi costringano l’intero sistema ad un gravoso roll-back. Questa azione avrebbe molta importanza se il sistema di replicazione invece di occuparsi di annotazioni dovesse gestire, per esempio, un sistema di prenotazioni decentralizzate.

Conclusioni e sviluppi futuri Il sistema implementato gestisce la replicazione ottimistica con alcune limitazioni rispetto a quanto progettato. E’ stato sviluppato un protocollo per dirimere i conflitti fra le annotazioni utilizzando i timestamp generati dalle repliche. L’applicazione è stata testata con grado di replicazione due. In futuro si dovrebbero sviluppare le parti non implementate e gestire la persistenza interfacciandosi con un database. Inoltre l’applicazione potrebbe essere integrata al client Emule o direttamente o attraverso l’uso di un plug-in.