Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi...

13
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) [email protected] 1 Service Peer Simone Artesino Reti di Calcolatori LS

Transcript of Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi...

Page 1: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

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

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)[email protected]

1 Service Peer Simone Artesino Reti di Calcolatori LS

Page 2: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

l'idea

2<<Service Peer >> Simone Artesino Reti di Calcolatori LS

il framework di partenza

l'estensione al mondo tuple-p2p

l'applicazione

Page 3: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

Il framework p2p

3<<Service Peer >> Simone Artesino Reti di Calcolatori LS

public InetSocketAddress askForService(String serviceName)

UniboEnv-p2p

public void offerForService(String serviceName,String remoteIP,String port)

Tuple (Tucson) / P2P (PGrid)

SuperPeer & "località"

semantica Messaggi UniboEnv

Page 4: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

l'applicazione I

4<<Service Peer >> Simone Artesino Reti di Calcolatori LS

idea

•mondo dove si offrono servizi di conversione

•servizio come richiesta di elaborazione differita •Obiettivo : tolleranza ai guasti

fase di serviziofase di servizio

fase di discoveryfase di discovery

Page 5: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

l'applicazione II

5<<Service Peer >> Simone Artesino Reti di Calcolatori LS

<<launch>><<launch>>

local execution thread(ie lam

e.exe)

<<capture>><<capture>>

configurationconfiguration

filefile

interactioninteraction

Peer "Client" Peer "Server"

ServiceName

audioService -> mp3 to wav

Page 6: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

Discovery

6<<Service Peer >> Simone Artesino Reti di Calcolatori LS

Page 7: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

Scelte tecnologiche

• 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

7<<Service Peer >> Simone Artesino Reti di Calcolatori LS

Page 8: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

Scelte per la Tolleranza

8<<Service Peer >> Simone Artesino Reti di Calcolatori LS

• Tolleranza nella fase di apertura della socket• Tolleranza nella fase di invio-ricezione • Replicazione a copie passive-Fredde da parte del peer”Client”

Page 9: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

Tolleranza nella fase di apertura della socket

9<<Service Peer >> Simone Artesino Reti di Calcolatori LS

TCP connection tentative

connection refuse

Peer Control

ClientStubClientStub

peer Process

StubThread

repeat times

ServerStubServerStub

Skeleton Threadpeer Process

Peer Control

soketsoket

soketsoket

clientSocket.connect(serverAddress);

Page 10: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

<message><serviceName></serviceName> <opParams></opParams><inputFilename></inputFilename><outputFilename></outputFilename><inputFileLenght></inputFileLenght>

<payload>Client_Hash</payload></message>

Tolleranza nell'invio-ricezione

10<<Service Peer >> Simone Artesino Reti di Calcolatori LS

=?

config*

Si/No

config

data

esito dell'invio

1

2

3data*

Page 11: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

Copie Passive Fredde

11<<Service Peer >> Simone Artesino Reti di Calcolatori LS

1122

33

StubThread

PeerControlPeerControl

new

1 Network-Server Faliure

2

3

creating new Stub & new ask for service

ClientStubClientStub

getting configuration copy

StubThread

4 new connection

Page 12: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

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

12<<Service Peer >> Simone Artesino Reti di Calcolatori LS

Testing dell'applicazione all'interno della stessa macchia(connessioni socket nella stessa località)

Testing dell'applicazione all'interno della stessa macchia(connessioni socket nella stessa località)

Testing dell'applicazione fra macchine diverse

(connessioni socket fra host differenti)

Testing dell'applicazione fra macchine diverse

(connessioni socket fra host differenti)

• Fallimento manualel'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

Page 13: Corso di Laurea Specialistica in Ingegneria Informatica Reti di Calcolatori LS prof. Antonio Corradi Service Peer : un applicazione tollerante p2p per.

192.168.0.47500

(focus) Testing Copie Passive Fredde

13<<Service Peer >> Simone Artesino Reti di Calcolatori LS

192.168.0.4 7500

192.168.0.35688

192.168.0.35688

bd_small.mp3bd_small.mp3

configurationconfiguration

bd_small.mp3bd_small.mp3

configurationconfiguration

bd_small.wavbd_small.wav

ServiceName

audioService -> mp3 to wav

socket address :

socket connect :

socket connect :

socket address :