Sistemi di elaborazione A - (5 cfu)

Prof. Gianni Conte Tel. 0521 905727 - Fax. 0521 905707
  E-mail. gianni.conte@unipr.it
  Home page. http://www.ce.unipr.it/people/conte/
Prof. Michele Amoretti Tel. 0521 906147 - Fax. 0521 905723
  E-mail. michele.amoretti@unipr.it
  Home page. http://www.ce.unipr.it/amoretti/


Finalità

Modulo 1
L’obiettivo del corso è fornire allo studente la capacità di operare su sistemi di elaborazione complessi in ambito distribuito. Vengono quindi illustrate le evoluzioni tecnologiche e architetturali principali e presentati alcuni strumenti sia di programmazione parallela e distribuita (MPI) sia di soluzioni middleware (sistemi GRID) atti a operare e a costruire soluzioni in tali ambienti.

Modulo 2
La finalità del II modulo del corso di Sistemi di elaborazione A è quella di illustrare il paradigma peer-to-peer e le principali tipologie di architetture distribuite basate su di esso. Il continuo riferimento a sistemi peer-to-peer di uso quotidiano e le esercitazioni pratiche contribuiranno a fornire agli studenti un quadro completo della materia.

Programma

Modulo 1

Sistemi a scambio di Messaggi
Introduzione alla programmazione parallela
Modello di programmazione a scambio di messaggiù
Message Passing Interface (MPI): comunicazione punto-a-punto, operazioni non bloccanti, tipi di dati derivati, topologie virtuali, comunicazioni collettive

Sistemi Grid
Introduzione al Grid Computing
Stato dell'arte nella tecnologia Grid: OGSA e OGSI, Globus Toolkit
Grid Service: concetto di Web Service, strumenti per lo sviluppo di Web Service (XML, WSDL, SOAP), definizione di Grid Service
Globus Toolkit: installazione,realizzazione di un Grid Service (definizione dell'interfaccia, implementazione e deploy del servizio)
GSI: meccanismi di sicurezza

Modulo 2

Introduzione ai sistemi peer-to-peer (P2P): confronto tra i paradigmi P2P e Client/Server; applicazioni del paradigma P2P.

Modelli architetturali P2P: topologia + algoritmo per il routing dei messaggi; classificazione dei modelli architetturali; sistemi di prima e seconda generazione: Napster, BitTorrent, eMule, Gnutella, Freenet; introduzione ai sistemi di terza generazione.

Chord: topologia; routing dei messaggi; generalizzazione: DKS.

Skype: caratteristiche distintive; registrazione; login successivi al primo; chiamata e comunicazione.

JXTA: introduzione; elementi fondamentali: ID, advertisement, service e PIPE, peergroup; topologia; routing dei messaggi.

Sicurezza nei sistemi P2P.

Studio analitico dei sistemi P2P: modelli di sistemi complessi; variabili di stato dei sistemi P2P; modello QN; modello GSPN; studio delle topologie: grafi, grafi casuali, modello ER, modello BA; distribuzione delle risorse.

Reti P2P con risorse limitate: richiami di teoria dei giochi, equilibrio di Nash, forwarding game in reti P2P mobili.

Attività d'esercitazione

Modulo 1
E' prevista un’attività di laboratorio sulla programmazione dei sistemi paralleli con le librerie MPI e l’installazione di un ambiente distribuito basato su tecnologie GRID che verrà utilizzato per lo sviluppo di semplici applicazioni.

Modulo 2
- Realizzazione di un sistema JXTA; meccanismi di discovery degli advertisement; creazione di peergroup.
- JXTA-SOAP e SP2A.
- Simulazione di reti P2P con ns-2.

Modalità d'esame

Prova scritta

Propedeuticità

Sistemi informativi A

Testi consigliati

I lucidi delle lezioni e altro materiale per il corso è disponibile sul portale my.unipr.it


Ultimo aggiornamento: 21-11-2006


Chiudi la finestra