Progetto di una architettura per lesecuzione distribuita e coordinata di azioni Progetto per lesame di Reti di Calcolatori L-S Prof. Antonio Corradi Finistauri.

Slides:



Advertisements
Presentazioni simili
Il livello di trasporto
Advertisements

Scomposizione funzionale
Linguaggi algoritmici
Procedure e funzioni A. Ferrari.
ITIS LATTANZIO Unità Didattica Materia Informatica Funzioni in C++
Progetto Mini di Sistemi Distribuiti – AA 2007/08 Secure Group Communication with GDH.1 Alessandro Licata Caruso Matr:
Algoritmi Paralleli e Distribuiti a.a. 2008/09
Algoritmi Paralleli e Distribuiti a.a. 2008/09 Lezione del 10/03/2009 Prof. ssa ROSSELLA PETRESCHI a cura del Dott. SAVERIO CAMINITI.
Progetto realizzato da: Francesco Seccia Matr Marco Spinelli Matr
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.
Presentazione del progetto di: Reti di calcolatori L-S Matteo Corbelli.
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.
SARAH Shop Assistant in Reti Ad-Hoc Marco Montali.
Supporto allassistenza da remoto Sacchetti MauroMatr Prof. Antonio Corradi Progetto di Reti di Calcolatori LS.
Global Virtual Tuple Space
Replicazione delle risorse: UN CASO DI STUDIO
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.
PERMESSO PERsistent MESSaging in ad hOc networks Corso di Reti di Calcolatori L-S AA Presentazione di Roberto Gamboni Progetto di Giuseppe Vitalone,
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.
ITIS LATTANZIO Unità Didattica Materia Informatica Funzioni in C++
Corso di Informatica per Giurisprudenza Lezione 7
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
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.
Reti di Calcolatori LS Professor Antonio Corradi Ingegner Dario Bottazzi Presentazione di Francesco Fiori.
Il modello di riferimento OSI
Introduzione al controllo derrore. Introduzione Quando dei dati vengono scambiati tra due host, può accadere che il segnale venga alterato. Il controllo.
Modulo 2 – U.D. 4 – Lez. 5 (parte I)
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
Informatica Lezione 9 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
L’architettura a strati
Reti di calcolatori LS Enrico Pirazzini SSB un middleware basato su JMS per l'invocazione di servizi remoti.
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.
Mobile Agent and Enterprise Architecture Integration Il gestore della mobilità degli agenti Raffaelli Massimo matricola
Studio di una soluzione distribuita per la gestione di un centro sondaggi.
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.
P2P Reliable Multicast Messenger Progetto e realizzazione di un software peer to peer per comunicazioni di gruppo.
Progetto di un sistema di comunicazione di gruppo con multicast causale Reti di Calcolatori L-S Marco Canaparo Matricola
PERMESSO PERsistent MESSaging in ad hOc networks Corso di Reti di Calcolatori LS – AA Presentazione di Davide Sansovini Professore: Antonio Corradi.
Sistema distribuito per il controllo remoto di Software SCADA HMI Presentazione di Paolo di Francia Reti di Calcolatori LS a.a
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.
Progetto e Realizzazione di un servizio di Chat Progetto di: Nicoli Leonardo Corso di: Reti di Calcolatori L-S.
Muse2: MUSic Everywhere with WI-FI Progetto realizzato da: Bambini Stefano Bergamini Andrea Pierangeli Diego Bologna C.d.L.S. Ingegneria Informatica.
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.
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.
JDICS Java Dynamic Infrastructure for C/S systems Laura Galli matr Reti di calcolatori LS, Prof. A.Corradi A.A
CORSO INTERNET la Posta elettronica
Pari Gioia Reti Di Calcolatori LS A.A. 2003/04.
Algoritmi Avanzati a.a.2011/2012 Prof.ssa Rossella Petreschi Algoritmi distribuiti Lezione n°9.
Transcript della presentazione:

Progetto di una architettura per lesecuzione distribuita e coordinata di azioni Progetto per lesame di Reti di Calcolatori L-S Prof. Antonio Corradi Finistauri Matteo

Lidea del progetto: coordinazione Pronto per Stato A Stato A Pronto per Stato B Stato B Il gruppo di computer si coordina per passare allo stato concordato contemporaneamente Lesecuzione procede passo-passo sincronizzata

Lidea del progetto: controllo remoto Computer AComputer B Computer DComputer C Configuratore Computer A, devi fare operazione A Ok! Eseguo loperazione richiesta Operazione A Ok! Eseguo loperazione richiesta Operazione D Computer D, devi fare operazione D

Caratteristiche del sistema Funzionalità del sistema: Controllo remoto dei componenti da una posizione definita (configuratore) Esecuzione di operazioni sui componenti Coordinazione delle operazioni in determinati momenti dellesecuzione Problemi da risolvere: Dinamicità del gruppo (caduta, etc.) Comunicazioni reliable Algoritmo per la sincronizzazione dei componenti

Applicazioni: mostra virtuale Ciao Tipico paesaggio di Perugia Foto realizzata da... Split di un contenuto della mostra su più monitorContenuto con un commento Il contenuto dei due schermi cambia in maniera sincrona

Descrizione del sistema

Architettura del sistema Componente del gruppo Controllo della disponibilità Gestione dei gruppi Gestione dei componenti Configuratore Servizi

Il configuratore Rappresenta linterfaccia verso il sistema per lamministratore. Fornisce le seguenti funzionalità: –Visualizzazione dello stato del sistema (componenti, esecutori, gruppi) –Gestione dei gruppi (compreso inizio esecuzione e fine esecuzione) –Gestione degli esecutori

Il componente di gruppo E il componente che esegue fisicamente le operazioni. Non è controllabile in maniera diretta ma solo attraverso il configuratore. Fornisce le seguenti funzionalità: –Ricezione delle istruzioni da parte del configuratore (gruppo, esecutore, start e stop del gruppo) –Sincronizzazione con gli altri componenti in corrispondenza di un checkpoint –Esecuzione delle operazioni locali stabilite dallesecutore

Servizi di sistema La gestione dei componenti tiene conto dei componenti presenti allinterno del sistema. La gestione dei gruppi tiene conto della composizione dei gruppi Il controllo della disponibilità si occupa della disponibilità dei vari componenti del sistema –I componenti di gruppo e il configuratore non sono replicati –Viene utilizzato un meccanismo di lease per riconoscere i componenti caduti. Pro: meccanismo semplice ed efficace. Contro: overhead per il rinnovo del lease.

Disponibilità dei componenti Sia i componenti di gruppo che il configuratore vengono gestiti attraverso il lease: –I componenti di gruppo non sono replicati per questioni applicative. –Il configuratore non è replicato perché costituisce linterfaccia per lutente-amministratore. I servizi di sistema devono essere necessariamente attivi durante tutta la vita dellapplicazione: –I servizi di sistema possono essere replicati senza alcun problema.

Linfrastruttura di comunicazione

Infrastruttura di comunicazione Basata su meccanismi simili a chiamate a procedura remota. Permette di: –effettuare il controllo remoto dei componenti –comunicare con i servizi di sistema Si basa su: –TCP: nel caso di comandi con passaggio di parametri o risposta – semantica sincrona. –UDP (versione at-most-once): nel caso di comandi senza passaggio di parametri o risposte – semantica asincrona di tipo catch & return.

Infrastruttura di comunicazione Server Request manager Request acceptor Request Service Attende un messaggio in ingresso Gestisce la singola richiesta Provvede a inviare la risposta al cliente Crea loggetto request associato alla richiesta Incapsula la richiesta, conoscendone i dettagli Può eseguire la richiesta localmente Rappresenta il servizio fornito dal sistema Fornisce linterfaccia per le operazioni che possono essere fatte su un componente del sistema Cliente Execute() Method()

UDP versione at-most-once Obiettivo: ottenere la sicurezza che un comando con UDP arrivi a destinazione Passo 1: aggiunta di un messaggio di acknowledgement P1P1 P2P2 P1P1 P2P2 P1P1 P2P2 1 a possibilità2 a possibilità3 a possibilità Se il messaggio di acknowledgement arriva a destinazione abbiamo la certezza che il messaggio è stato ricevuto dal destinatario OK

UDP versione at-most-once Obiettivo: ottenere la sicurezza che un comando con UDP arrivi a destinazione Passo 2: ritrasmissione del messaggio in caso di scadenza di un timeout P1P1 P2P2 P1P1 P2P2 2 a possibilità3 a possibilità La ritrasmissione può essere fatta un numero N di volte definito a priori per evitare tentativi allinfinito. Dopodiché si considera il nodo destinazione caduto.

UDP versione at-most-once Obiettivo: ottenere la sicurezza che un comando con UDP arrivi a destinazione P1P1 P2P2 2 a possibilità Passo 3: aggiungere una numerazione per evitare la ricezione di uno stesso messaggio due volte. Il messaggio non viene passato alla parte applicativa se è ripetuto. K K K K Solo ack

UDP versione at-most-once Obiettivo: ottenere la sicurezza che un comando con UDP arrivi a destinazione P1P1 P2P2 2 a possibilità Passo 4: aggiunta di un livello per gestire gli acknowledgement Il processo P 3 (di livello applicativo) può andarsene dopo aver ricevuto il messaggio. Altrimenti il processo P 3 dovrebbe restare per vedere se il mittente ha ricevuto lacknowledgement K K K K Solo ack P3P3 Receive() return

Un altro protocollo… Il TCP transazionale può essere utilizzato per realizzare una chiamata a procedura remota. Prevede tre pacchetti per implementare tutta la logica di TCP e di ottenere i relativi vantaggi. Risulta quindi essere di poco più pesante rispetto al protocollo utilizzato. Lutilizzo di questo protocollo permetterebbe di superare i problemi riconosciuti dellalgoritmo sviluppato: –Non riconoscimento dei messaggi precedenti allultimo ricevuto.

Algoritmi di sincronizzazione

Basato sulla relazione di Lamport Componente 1: T a T o :P o Componente 2: T b Componente 3: T c T a :P 1 T b :P 2 T c :P 3 T a :P 1 T b :P 2 T c :P 3 T o :P o Il componente 1 arriva al checkpoint Il componente 2 arriva al checkpoint Il componente 3 arriva al checkpoint I componenti sono tutti arrivati al checkpoint: si può proseguire Costo algoritmo: N(N – 1) = O(N 2 )

Algoritmi di sincronizzazione Servizio dei gruppi pronto prossimo Servizi troppo carichi di lavoro Costo algoritmo: N + N = 2 N = O(N)

Algoritmi di sincronizzazione Servizio dei gruppi pronto prossimo coordinator prossimo Scarica la responsabilità del secondo messaggio su uno dei componenti Costo algoritmo: N (N – 1) = 2 N = O(N)

Altri possibili algoritmi… Estensioni a gruppi di oggetti per risorse fault-tolerant (modello a copie attive) –Le copie rappresentano i componenti di gruppo –Pro: modello studiato, sperimentato e approfondito –Contro: mancanza del concetto di minimizzazione dei tempi di contatto fra le copie attive Lutilizzo del protocollo multicast di basso livello (IGMP) permetterebbe di semplificare alcune delle fasi degli algoritmi (messaggi di prossimo attraverso un multicast) –semantica: ricezione di un acknowledgement da tutti i componenti del gruppo. Conferma positiva e sollecito selettivo (utilizzando la parte di infrastruttura già realizzata)

Progetto di una architettura per lesecuzione distribuita e coordinata di azioni Progetto per lesame di Reti di Calcolatori L-S Prof. Antonio Corradi Finistauri Matteo