Universit`
a di Pisa
Facolt`a di Ingegneria
Corso di Laurea Specialistica in Ingegneria Informatica
Implementazione e valutazione
di un sistema di trasferimento
file basato su SOAP in ambiente GRID
di
Carlo Sciolla
prof. Andrea Domenici, Primo Relatore
prof.ssa Cinzia Bernardeschi , Secondo Relatore
dott. Gianni Pucciani, Terzo Relatore
c
Copyright by Carlo Sciolla
Ai miei genitori, per l’amore e il calore che pur distanti un mare
Indice Generale
1 Ambiente GRID . . . 3
1.1 Origini e sviluppi . . . 3
1.2 Campi d’applicazione . . . 5
1.2.1 Promotori ed applicazioni reali . . . 6
1.3 GRID e tecnologie di calcolo distrubuito . . . 9
1.3.1 Cluster . . . 10
1.3.2 Utility Computing . . . 11
1.3.3 CPU scavenging . . . 12
2 Simple Object Access Protocol . . . 14
2.1 Service Oriented Architecture . . . 14
2.2 Web Services . . . 16
2.3 eXtensible Markup Language . . . 17
2.3.1 Le origini . . . 17 2.3.2 Documenti XML . . . 18 2.3.3 Namespace . . . 21 2.3.4 Pregi e difetti di XML . . . 22 2.4 SOAP . . . 23 2.4.1 Messaggi SOAP . . . 24
2.5 SwA: scambio di file . . . 41
2.5.1 MIME . . . 42
2.5.2 DIME . . . 49
2.5.3 MTOM . . . 50
2.6 Conclusioni . . . 53
3 Replica Consistency Service: CONStanza . . . 54
3.1 Introduzione . . . 54
3.1.1 Single e Multi master . . . 55
3.1.2 Eager e Lazy replication . . . 56
3.2 CONStanza . . . 60
3.3 Obiettivi . . . 60
3.4 Architettura . . . 62
3.4.1 Consistenza e replicazione di Database . . . 64
4 Integrazione di Sw/Attachments in CONStanza . . . 67
4.1 Modifiche apportate a CONStanza . . . 67
4.2 Struttura interna di CONStanza . . . 68
4.2.1 Comunicazione via SOAP . . . 68
4.2.2 Struttura delle classi . . . 69
4.2.3 Server side . . . 70
4.2.4 Client side . . . 71
5 Prestazioni . . . 75
5.1 Considerazioni iniziali . . . 75
5.1.1 GridFTP . . . 75
5.1.2 SOAPw/Attachment (Sw/A) . . . 76
5.1.3 Testbed utilizzato . . . 77
5.1.4 Struttura dei test . . . 77
5.2 Risultati dei test . . . 77
5.3 Risultati dei test . . . 78
6 Conclusioni . . . 81
6.1 Considerazioni su Sw/A per lo scambio di dati . . . 81
Indice delle Figure
2.1 Modello di applicazione di tipo SOA . . . 14
2.2 Ruoli dei nodi in un’applicazione SOA . . . 15
2.3 Esempio di XML . . . 19
2.4 Namespace in XML . . . 21
2.5 Struttura logica di un messaggio SOAP . . . 24
2.6 Layer stack di WS-I . . . 35
2.7 Architettura di XOP . . . 52
3.1 Tassonomia dei metodi lazy replication . . . 58
3.2 Modello architetturale di CONStanza . . . 62
3.3 Consistenza di DB replicati . . . 65
4.1 Catena di chiamate lato server . . . 71
4.2 Interazioni tra i moduli nel trasferimento dell’updatre . . . 73
5.1 Risultati dei test . . . 78
Introduzione
Il presente lavoro illustra l’utilizzo di SOAP w/Attachments come tecnologia di scambio dati in una rete di calcolatori. In particolare, tale meccanismo verr`a in-tegrato in un servizio di replicazione dati per Data Grid, Constanza, sviluppato all’Istituto Nazionale di Fisica Nucleare.
Non esiste una definizione globalmente riconosciuta del termine Grid: alcuni ten-tativi di definizione verranno introdotti nel Capitolo 1. In generale con Grid si designa un’infrastruttura di rete che mira a interconnettere una molteplicit`a di soggetti distribuiti, tendenzialmente su scala geografica, per condividere un’enor-me mole di dati uniti alla potenza di calcolo dell’ambiente distribuito cos`ı creato.
`
E possibile, in questo modo, supportare le attivit`a di ricerca scientifica che spesso si ritrovano a dover manipolare tali ingenti quantit`a di dati.
Per poter fornire efficacemente il servizio offerto ai diversi utilizzatori, i dati conservati all’interno del Grid vengono replicati su diversi nodi, in modo da po-ter applicare politiche di bilanciamento del carico, limitare la latenza d’accesso, migliorare la fault tolerance. Questo porta inevitabilmente alla necessit`a di pro-pagare ad ogni replica eventuali modifiche apportate.
L’applicazione che verr`a presentata si trova ad operare in questo scenario, dove diversi nodi di Griglia, anche appartenenti a soggetti distinti facenti parte di una stessa Organizzazione Virtuale, condividono delle informazioni conservate in da-tabase generalmente eterogenei. Il suo scopo sar`a quello di fornire il meccanismo di trasferimento di Update Unit, necessario per propagare ad ogni database le modifiche apportate ai dati, secondo l’approccio dei Web Services.
Struttura dei capitoli
• Il Capitolo 1 introduce l’ambiente Grid, senza scendere troppo nel det-taglio, mostrando la tipologia di servizio offerto e alcune considerazioni architetturali;
• Il Capitolo 2, dopo una breve introduzione alle architetture Service Oriented e a XML, si occupa del protocollo di comunicazione SOAP;
• Il Capitolo 3 descrive il servizio per la consistenza di dati replicati su griglia CONStanza;
• Il Capitolo 4 descrive il lavoro di integrazione di SOAP with Attachments (Sw/A) come meccanismo di trasferimento di file in CONStanza;
• Il Capitolo 5 cercher`a di dare una valutazione riguardo la performance dello scambio di file attraverso SOAPw/Attachment paragonandola con quella raggiunta utilizzando GridFTP;
• Nel Capitolo 6 infine, si daranno delle valutazioni conclusive riguardo il lavoro svolto e sui possibili lavori futuri.