autore: Simone Artesino ( )

Slides:



Advertisements
Presentazioni simili
Socket Java Alberto Ferrari.
Advertisements

Elaborazione del Book Informatico
ISA Server 2004 Enterprise Edition Preview. ISA Server 2004.
Nel ventesimo secolo ci fu la nascita dellinformatica il termine telematica nasce dalla fusione di due termini telecomunicazione e informatica una rete.
1 Gestori tecnologici reti Reti Client-Server e Peer to Peer.
Programmazione con socket
Peer to Peer DBMS: il sistema FOAF Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Università degli.
IL NOSTRO LABORATORIO. Di INFORMATICA.. Presentazione: Nel nostro laboratorio abbiamo 24 postazioni con dei computer di tipo Desktop con queste caratteristiche:
Programmazione socket
2-1 Trasferimento di file: ftp Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights.
INTERNET e i suoi Servizi Docente Esperto: Simona Riolo Docente Tutor: Alfio Messina Lezione #1/ I.C.S. G. Verga - Viagrande (CT)
I protocolli TCP/UDP prof.: Alfio Lombardo.
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
RETI E INTERNET.
AICA Corso IT Administrator: modulo 5 AICA © EUCIP IT Administrator Modulo 5 - Sicurezza Informatica Esercitazione Alberto Bosio.
Corso di Laurea in Ingegneria Gestionale
Modello di replicazione attivo e di supporto alla tolleranza ai guasti in ambito MOM Autore: Claudio Fusconi Matricola: Esame: Reti di calcolatori.
Reti di Calcolatori LS Universitá degli Studi di Bologna Remotizzazione del Framework Unibo-env Autrice: Leticia Riestra Ainsua.
BlueMar k Sistema di Proximity Marketing con QoS ed availability Progetto per il Corso di Reti di Calcolatori LS Nicola Bonoli - 27 Giugno 2007.
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.
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.
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
1 Internet e nuove tecnologie Anno Accademico Prof. Flavio De Paoli Dott. Marco Loregian.
Corso di Informatica per Giurisprudenza Lezione 7
Gestione Informatica dei Dati Aziendali
1 Reti di Calcolatori LS Prof. Antonio Corradi Progetto: Giombi Giorgio e Soffritti Luca Presentazione: Giombi Giorgio FotoContest Il primo servizio interamente.
Middleware di Discovery Avanzato Di Giuseppe Tomaiuoli Mat Reti di Calcolatori LS Prof. Ing. Antonio Corradi.
Reti di Calcolatori LS Professor Antonio Corradi Ingegner Dario Bottazzi Presentazione di Francesco Fiori.
1 Ripassino Reti di Computer Carasco 19/02/ Che cosa è una rete informatica? Una rete informatica è un insieme di computer connessi tra di loro.
File system distribuito transazionale con replicazione
Modulo 2 - U.D. 3 - L.4 Ernesto Damiani - Sistemi di eleborazione dell'informazione.
Modulo n – U.D. n – Lez. n Nome Cognome – titolo corso.
1 Applet ed HTML Fondamenti di Informatica Corso D.
Reti di calcolatori 14 novembre 2003 INFORMATICA GENERALE Scienze per Operatori dei Servizi Giuridici Anno Accademico
Le reti di calcolatori ©Apogeo 2004.
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
Reti di Calcolatori ed Internet Fabio Massimo Zanzotto.
L’architettura a strati
Indirizzi IP e Subnet mask
Distributed System ( )7 TCP/IP four-layer model.
Producer – Consumer System Di Carlo Matteo CdLS Ingegneria Informatica (0234) Reti di Calcolatori LS A.A. 2004/2005.
Support for Emulation of Services and Applications in Mobile Environments with Bluetooth Gruppo: Davide Bonomo Salvatore Baglieri Referente: Ing. Dario.
Progetto di: Daniele De Angelis Corso di: Reti di Calcolatori LS Un sistema fault tolerance per protocollo Diffie-Hellman.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 4 -Gestione degli indirizzi Ernesto Damiani Lezione 1 – Assegnazione.
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 4 -Gestione degli indirizzi Ernesto Damiani Lezione 2 – DHCP.
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
PROTOTIPO DI UN GIOCO DI STRATEGIA IN RETE Alberto Buccella Università degli studi di Bologna Facoltà di Ingegneria Corso di Ingegneria Informatica.
Progetto di un Gestore di Nomi Corso di Reti di Calcolatori L-S prof. Antonio Corradi A.A 2003/2004 Autore: Molesini Ambra.
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.
Middleware per la sincronizzazione di ambienti eterogenei Progetto di Reti di Calcolatori LS Emanuele Crescentini matr Ingegneria Informatica LS.
Progetto RE.VE.N.GE. MQ REliable and VErsatile News delivery support for aGEncies Sistema di Distribuzione Reti di Calcolatori LS – Prof. Antonio Corradi.
B IBLIO S ERVICE consultazione di articoli online Anna Riccioni Progetto per il corso di Reti di Calcolatori L-S Anno Accademico
TXJA --- Reti logiche fuzzy distribuite --- Reti di Calcolatori LS Davide Sottara.
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.
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.
Socket programming in Java La realizzazione di un server in Java consente di scrivere una sola versione eseguibile su diverse piattaforme. Il linguaggio.
EmuPro Università degli Studi del Sannio Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica Misure su Reti di Calcolatori Professore:
Socket programming in Java La realizzazione di un server in Java consente di scrivere una sola versione eseguibile su diverse piattaforme. Il linguaggio.
Transcript della presentazione:

autore: Simone Artesino (0000 248678) simone.artesino@studio.unibo.it Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per il framework uniboEnv-p2p autore: Simone Artesino (0000 248678) simone.artesino@studio.unibo.it Service Peer Simone Artesino Reti di Calcolatori LS

l'idea uniboEnv-p2p uniboEnv l'applicazione ServicePeer unboEnv -> Il framework uniboEnv è un MOM (Messagge Oriented Middleware) per l’ambiente JAVA. Nasce con l’intento di superare la semantica della chiamata a procedura e realizzata i concetti di chiamata asincrona, di comunicazione a scambio di messaggi,di scatenamento e ricezione di eventi, al fine di fornire un sistema di supporto all'eterogeneità e all'interoperabilità di più sistemi che comunicano tra loro attraverso uno scambio di messaggi. uniboEnv-p2p -> Il middleware UniboEnv-p2p realizza un mondo ibrido Server delle Tuple / peer to peer ServicePeer -> Service Peer, nasce come entità “peer to peer” in un mondo dove si offrono servizi di conversione l'applicazione l'estensione al mondo tuple-p2p il framework di partenza <<Service Peer >> Simone Artesino Reti di Calcolatori LS

Servizio di Discovery : Il framework p2p Tuple (Tucson) / P2P (PGrid) semantica Messaggi UniboEnv SuperPeer & "località" Servizio di Discovery : Messaggi Un mittente deposita nel sistema un messaggio, etichettandolo e poi si disinteressa dello stesso. Il messaggio può permanere latente nel sistema per un tempo indefinito. CheckForMsg: cerciamo nello spazio delle tuple la template specifica per vedere se ci sta o meno. Usiamo rdp perchè nel caso non ci sia la tupla,l’operazione fallisce. sendMsg: creamo un messaggio con i parametri adeguati e lo inseriamo nello spazio delle tuple specifico attraverso “out”. ReceiveMsg: si cerca con “in” la tupla nello spazio delle tuple e si construisce il messaggio (IMessage) per restituirlo con i parametri che si sono cercati. public void offerForService(String serviceName,String remoteIP,String port) public InetSocketAddress askForService(String serviceName) UniboEnv-p2p <<Service Peer >> Simone Artesino Reti di Calcolatori LS

l'applicazione I idea Obiettivo : tolleranza ai guasti fase di discovery idea mondo dove si offrono servizi di conversione servizio come richiesta di elaborazione differita Obiettivo : tolleranza ai guasti fase di servizio <<Service Peer >> Simone Artesino Reti di Calcolatori LS

l'applicazione II Peer "Client" Peer "Server" <<launch>> ServiceName audioService -> mp3 to wav <<launch>> Peer "Server" local execution thread (ie lame.exe) <<capture>> Peer "Client" interaction configuration file <<Service Peer >> Simone Artesino Reti di Calcolatori LS

Discovery Peer "Server" indirizzo del client Peer "Client" Nome del servizio, indirizzo del server <<Service Peer >> Simone Artesino Reti di Calcolatori LS

Scelte tecnologiche TCP vs UDP vs Middleware Peer "Server" Peer "Client" Connessione diretta Client-Server Tipi di dato scambiati (dati-configurazione-stringhe) Obiettivo : tolleranza ai guasti scambio di file di grandi dimensioni TCP vs UDP vs Middleware - Per questa motivazione si è scartato l’utilizzo di un MOM, in quanto avrei dovuto leggere, codificare ed impacchettare file di grosse dimensioni per poi ricostruirli dall’altro lato dell’end-point. - Non è stata considerata la tecnologia RMI poiché non vi è la necessità di grosse interazioni, e neanche l’utilizzo di middleware più complessi, quali CORBA, per l’inutili costi di overhead che comportano. Non è stata utilizzata la tecnologia UDP poiché : Non da garanzie rispetto alla perdita di pacchetti Per la tipologia di applicazione, non siamo interessati allo scambio in di piccoli pacchetti e non siamo orientati all’utilizzo di stream , al contrario vi è la necessità di aver ricevuto interamente il dato e la configurazione prima di eseguire. L’overhead della costruzione del canale rispetto all’ invio “immediato” di semplici messaggi UDP viene a giustificarsi per la qualità di servizio offerta . Inoltre la relativa lentezza del protocollo TCP viene ad annullarsi nel caso di invio di file di grandi dimensioni, poiché nel caso di mittente e destinatario distanti (come che è possibile trovare nelle rete peer) mi assicura lo stesso instradamento per tutto il flusso di dati. <<Service Peer >> Simone Artesino Reti di Calcolatori LS

Scelte per la Tolleranza SEND & RECEIVE OMISSION - GENERAL OMISSION - NETWORK FAILURE - NETWORK PARTITION Identificazione reciproci controllo TCP tcp è best effort ma può essere la base per costruire sistema tollerante Tolleranza nella fase di apertura della socket Tolleranza nella fase di invio-ricezione Replicazione a copie passive-Fredde da parte del peer”Client” <<Service Peer >> Simone Artesino Reti di Calcolatori LS

Tolleranza nella fase di apertura della socket peer Process peer Process Peer "Client" Peer "Server" TCP connection tentative repeat times clientSocket.connect(serverAddress); ServerStub soket soket StubThread connection refuse Skeleton Thread Peer Control Peer Control ClientStub <<Service Peer >> Simone Artesino Reti di Calcolatori LS

Tolleranza nell'invio-ricezione esito dell'invio data data* 3 Peer "Server" Peer "Client" config config* H H =? Si/No <message> <serviceName></serviceName> <opParams></opParams> <inputFilename></inputFilename> <outputFilename></outputFilename> <inputFileLenght></inputFileLenght> <payload>Client_Hash</payload> </message> 2 1 <<Service Peer >> Simone Artesino Reti di Calcolatori LS

Copie Passive Fredde 2 1 3 4 Peer "Client" PeerControl creating new Stub & new ask for service 2 new Peer "Server" ClientStub ClientStub StubThread 1 Network-Server Faliure 3 getting configuration copy Peer "Server" StubThread 1 2 3 4 new connection <<Service Peer >> Simone Artesino Reti di Calcolatori LS

Testing I & II Scenario uno : Discovery statico (indirizzi specificati nel file di configurazione /config/ad.txt) Scenario due : Discovery dinamico supporto del framwork UniboEnv-p2p Testing dell'applicazione all'interno della stessa macchia (connessioni socket nella stessa località) Testing dell'applicazione fra macchine diverse (connessioni socket fra host differenti) Fallimento manuale l'utente termina il server durante le varie fasi di vita dell'applicazione : Fase di connessione delle socket Fase di invio-ricezione dei dati e della configurazione Fase di elaborazione del server Fallimento automatico Peer Server con stub (ServerErrorStub) che crea faliure con TCP <<Service Peer >> Simone Artesino Reti di Calcolatori LS

(focus) Testing Copie Passive Fredde socket address : 192.168.0.4 7500 Peer "Server" ServiceName audioService -> mp3 to wav configuration bd_small.mp3 configuration socket connect : socket address : 192.168.0.4 7500 bd_small.mp3 192.168.0.3 5688 Peer "Server" Peer "Client" socket connect : bd_small.wav 192.168.0.3 5688 <<Service Peer >> Simone Artesino Reti di Calcolatori LS