Servizio di newsgroup con replicazione dei server Studente: Letizia Cheng Cheng Sun Matricola: 170735 Reti di Calcolatori LS – Prof. A. Corradi A.A. 2003/2004.

Slides:



Advertisements
Presentazioni simili
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Advertisements

Come programmare servizi di rete?
Modello di replicazione attivo e di supporto alla tolleranza ai guasti in ambito MOM Autore: Claudio Fusconi Matricola: Esame: Reti di calcolatori.
Aprile 2004Reti di Calcolatori LS – Servizio di Annunci Distribuito1 Reti di Calcolatori LS REALIZZAZIONE DI UN SERVIZIO DI ANNUNCI DISTRIBUITO Studente:
Reti di Calcolatori LS Universitá degli Studi di Bologna Remotizzazione del Framework Unibo-env Autrice: Leticia Riestra Ainsua.
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.
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
BlueMar k Sistema di Proximity Marketing con QoS ed availability Progetto per il Corso di Reti di Calcolatori LS Nicola Bonoli - 27 Giugno 2007.
Supporto allassistenza da remoto Sacchetti MauroMatr Prof. Antonio Corradi Progetto di Reti di Calcolatori LS.
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.
Realizzazione di un supporto per la progettazione di applicazioni in ambiente distribuito Fiorani Enrico Matr Università degli studi di Bologna.
M.A.E.A.I. Mobile Agent and Enterprise Architecture Integration Il gestore delle politiche Valerio Siri Reti di Calcolatori LS Docente: Antonio Corradi.
PERMESSO PERsistent MESSaging in ad hOc networks Corso di Reti di Calcolatori L-S AA Presentazione di Roberto Gamboni Progetto di Giuseppe Vitalone,
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
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
Progetto di Reti di Calcolatori L-S Orchestrazione di servizi WEB
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.
Server Web in una rete Windows Sommario Meccanismi di accesso remoto Meccanismi di accesso remoto Introduzione ai Server Web Introduzione ai Server.
D. Lgs 196/2003 Codice in materia di protezione dei dati personali.
File system distribuito transazionale con replicazione
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
PROGRAMMA IL FUTURO Anno Scolastico 2014 / 2015
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.
Tipi e topologie di LAN Lezione 2.
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.
Progetto di: Daniele De Angelis Corso di: Reti di Calcolatori LS Un sistema fault tolerance per protocollo Diffie-Hellman.
Studio di una soluzione distribuita per la gestione di un centro sondaggi.
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
Proxy-Based Infrastructure for LBS Tailoring Reti di Calcolatori LS – Prof. A. Corradi Presentazione di: Roberto Amici Gruppo: Roberto Amici Alessandro.
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.
STUDIO SULLA REPLICAZIONE DEGLI AGENTI NEL SISTEMA SOMA Andrea Sambi.
Search Engine Distribuito e Replicato Corso di Reti di Calcolatori LS Andrea Boari –
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.
Sistema di Replicazione di Risorse Distribuite Ring-Based Reti di Calcolatori LS Alessio Bonfietti.
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 e Realizzazione di un servizio di Chat Progetto di: Nicoli Leonardo Corso di: Reti di Calcolatori L-S.
Proxy-based infrastructure for LBS availability Bucco Nicola matr
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.
B IBLIO S ERVICE consultazione di articoli online Anna Riccioni Progetto per il corso di Reti di Calcolatori L-S Anno Accademico
Proxy based infrastructure for LBS availability Reti di Calcolatori LS Serena Agresti.
Servizio di visualizzazione da remoto e condivisione di album fotografici Autore: Chiarini Mattia matricola
Bacheca: Supporto alla creazione e diffusione di annunci basato su CORBA Corso di Reti di Calcolatori LS Prof. Antonio Corradi Progetto di Elisa Addimanda.
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
Mots, programmazione collaborativa di Ettore Ferranti.
Pari Gioia Reti Di Calcolatori LS A.A. 2003/04.
Transcript della presentazione:

Servizio di newsgroup con replicazione dei server Studente: Letizia Cheng Cheng Sun Matricola: Reti di Calcolatori LS – Prof. A. Corradi A.A. 2003/2004

Introduzione Newsgroup: gruppo di discussione che si forma attorno a un tema ben definito e pubblica i messaggi inviati dai partecipanti in bacheche elettroniche, visibili a tutti Newsgroup: gruppo di discussione che si forma attorno a un tema ben definito e pubblica i messaggi inviati dai partecipanti in bacheche elettroniche, visibili a tutti Un servizio di newsgroup deve permettere di Un servizio di newsgroup deve permettere di –Inserire un nuovo messaggio in bacheca –Rispondere ad un messaggio –Leggere messaggi

Obiettivo: Utilizzo semplicità dello schema C/S ma con studio delle problematiche relative a Utilizzo semplicità dello schema C/S ma con studio delle problematiche relative a –Tolleranza ai guasti –Concorrenza e performance del sistema –Accesso trasparente lato client Soluzione: Utilizzo di replicazione attiva dei server Utilizzo di replicazione attiva dei server Accesso al servizio tramite un servizio di naming Accesso al servizio tramite un servizio di naming

Il sistema realizzato Lato client si accede al servizio tramite un servizio di naming Lato client si accede al servizio tramite un servizio di naming Lato server è costituito da un numero dinamico di servitori Lato server è costituito da un numero dinamico di servitori Permette di eseguire le operazioni di Permette di eseguire le operazioni di –Inserimento di un nuovo messaggio in bacheca –Risposta ad un messaggio –Lettura messaggi

Struttura del sistema

Progetto del lato server deve tenere conto Comunicazione con gli altri server attivi per mantenere la consistenza dei dati Comunicazione con gli altri server attivi per mantenere la consistenza dei dati –Conoscenza reciproca Struttura a ring Rilevazione della caduta di un nodo e ricomposizione degli elementi del ring Rilevazione della caduta di un nodo e ricomposizione degli elementi del ring Variazione dinamica del numero di server attivi Variazione dinamica del numero di server attivi Operazioni di bind e unbind

Struttura lato server Registro di 1°livello Registro di 2°livello ServizioBinding ServerN+1 ServRef0 ServRefN Server0 ServerN ServizioID Servizio ID univoci ServerN+1

Progetto: operazioni newsgroup Uso di callback per le operazioni Uso di callback per le operazioni –client Non deve aspettare elaborazione del server Non deve aspettare elaborazione del server Implementa un’interfaccia di operazioni invocabili dal server Implementa un’interfaccia di operazioni invocabili dal server

Inserimento/risposta a un messaggio Bacheca locale 1) writeMsg() 2) Callback 3) transmitMsg() n) transmitMsg() Cliente newsgroupServer i Server i+1 Server i-1

Lettura di messaggi Bacheca locale 1) readMsg() 2) Callback Cliente newsgroupServer i Server i+1 Server i-1

Criteri di ricerca di messaggi di interesse Oggetto dei messaggi Autore e oggetto dei messaggi Autore, oggetto e ora d’invio dei messaggi Messaggi di risposta di un dato messaggio Tutti i messaggi Messaggio particolare identificato tramite un ID

Aggiornamento dello stato dei server Eseguito by – need Eseguito by – need –In seguito all’inserimento di un nuovo messaggio in bacheca Utilizzo di una politica ottimista Utilizzo di una politica ottimista –Aggiornamento dei server attivi dopo aver comunicato la riuscita dell’inserimento al client Uso modalità best effort Uso modalità best effort Controllo dello stato dei server: ci sono stati failure? Controllo dello stato dei server: ci sono stati failure?

Modifica del ring o dello stato dei suoi componenti Per fare una qualunque modifica al ring Per fare una qualunque modifica al ring –Inserimento di messaggio messaggio nuovo nodo nuovo nodo –Eliminazione di un nodo Ho bisogno di una autorizzazione ottenuta tramite il possesso di un token

Algoritmo per ottenere il token 1. Si richiede il token a tutti i componenti del ring 2. Se tutti danno il consenso, il server i ottiene il token (che poi deve essere liberato) 2. Se tutti danno il consenso, il server i ottiene il token (che poi deve essere liberato) 3. Se non tutti danno il consenso (in caso di richiesta simultanea) si aspetta un tempo casuale prima di rinoltrare la richiesta Ok token

Implementazione Utilizzo di Java RMI, perché offre Utilizzo di Java RMI, perché offre –Un servizio di naming già funzionante –La possibilità di gerarchizzare i registri in due livelli –Un meccanismo per poter comunicare in remoto con una certa sicurezza

Struttura delle classi

Demo applicazione

Sviluppi futuri Decentramento del servizio di nomi univoci Decentramento del servizio di nomi univoci Supporto per la persistenza dei dati Supporto per la persistenza dei dati Altre logiche di assegnamento di un server a un cliente Altre logiche di assegnamento di un server a un cliente …

Conclusioni Col sistema realizzato si è cercato di ottenere Col sistema realizzato si è cercato di ottenere –Tolleranza ai guasti –Concorrenza e performance –Accesso trasparente lato client migliori rispetto al classico C/S, senza rinunciare ad un’architettura molto semplice Poteva essere inserita una gestione della qualità di servizio, ma si reputa, dato il servizio, il principio di minima intrusione, che il sistema abbia comunque un buon rapporto costo, prestazione, almeno per questa prima versione Poteva essere inserita una gestione della qualità di servizio, ma si reputa, dato il servizio, il principio di minima intrusione, che il sistema abbia comunque un buon rapporto costo, prestazione, almeno per questa prima versione