Sicurezza Informatica e Sistemi - DEI

Transcript

Sicurezza Informatica e Sistemi - DEI
Classe delle lauree in:
LM – 32 Ingegneria Informatica
Tipo di attività formativa:
Ambito
Caratterizzante
disciplinare:
Ingegneria
Informatica
Titolo dell’Insegnamento:
Sistemi Distribuiti
Codice
(Secondo Modulo del Corso
dell’insegnamento:
di Sicurezza Informatica e
Sistemi Distribuiti da 12CFU)
DOCENTE: Marcello Castellano
Corso di laurea in:
Ingegneria Informatica
Settore scientifico
disciplinare: Sistemi di
Elaborazione dell’
Informazione (ING-INF/05)
Anno accademico:
2013 - 2014
CFU:
6
Tipo di insegnamento:
Obbligatorio
Anno:
primo
Semestre:
secondo
ARTICOLAZIONE IN TIPOLOGIE DIDATTICHE:
Il corso comprende 40 ore di lezioni teoriche, 12 ore laboratorio, 8 ore di esercitazioni,seminari e tirocini.
CONOSCENZE PRELIMINARI:
Si richiede la conoscenza dei principali concetti di sistemi operativi e di reti di calcolatori.
OBIETTIVI FORMATIVI:
Il corso si prefigge di fornire gli elementi concettuali che pongano lo studente in condizioni di conoscere le
basi dei sistemi complessi di modelli di sistemi computazionali distribuiti, le principali applicazioni ed elementi
di progettazione degli stessi.
PROGRAMMA:
1.
Principi Generali e Architetture (0.75 CFU: T): Introduzione ai Sistemi Distribuiti, Obiettivi, Tipi di Sistemi Distribuiti, Stili
architetturali, Architetture di sistema, Architetture midlleware a confronto, Autogestione nei sistemi distribuiti.
2.
Processi Distribuiti (0.75 CFU: T): Introduzione ai Thread, Thread e sistemi distribuiti, Virtualizzazione, Ruolo della Virtualizzazione
nei sistemi distribuiti, Architetture delle macchine virtuali, Client, Interfacce utente di rete, Server, Migrazione del Codice.
3.
Comunicazione (0.25 CFU: T): Chiamate a procedure remote, Comunicazione orientata ai messaggi, Comunicazione orientata
agli stream, Comunicazione multi cast.
4.
5.
Naming (0.25 CFU: T): Nomi Identificatori e Indirizzi, Naming Semplice, Naming Strutturato, Naming Basato sugli Attributi.
6.
Sistemi Distribuiti basati sul Coordinamento (0.5 CFU: T): Introduzione, Architettura, Processi, Comunicazione, Naming,
Sincronizzazione, Consistenza e replica, Tolleranza ai guasti.
7.
8.
9.
Sicurezza nei Sistemi Distribuiti (0.25 CFU: T): Canali sicuri, Controllo degli accessi e gestione della sicurezza.
Sincronizzazione (0.25 CFU: T): Sincronizzazione dei clock, Orologi Logici, Mutua Esclusione, Posizionamento Globale dei Nodi,
Algoritmo di Elezione.
Tecnologie per Sistemi Distribuiti (0.25 CFU: T): Sistemi Distribuiti a oggetti
Sistemi WEB Distribuiti (0. 5 CFU: T): Architettura, Processi, Comunicazione, Naming, Sincronizzazione, Consistenza e replica,
Tolleranza ai guasti.
10. Griglie Computazionali (1.25 CFU: T): Introduzione: Standardizzazione dei servizi internet, Le applicazioni nel Web, Servizi Internet
aperti, La elaborazione pervasiva, Elaborazione pervasiva ed e-business, Ambienti di calcolo per il GC, Una panoramica sulle
applicazioni, Il distributed supercomputing, high-throughput computing, on-demand computing, data intensive computing,
collaborative computing come GC, Componenti funzionali di sistema, Il ruolo delle organizzazioni nel GC, La nuova generazione di
GC, il punto di vista tecnologico.
11. Casi di Studio (1 CFU: 12L 8E ): Modelli di Sistemi Distribuiti (Grid Computing,Web Computing, Collaborative Computing,Cloud
Computing, Pervasive Computing), Software Defined Networking
METODI DI INSEGNAMENTO:
Lezioni ed esercitazioni teoriche e pratiche in presenza supportate da PC portatile e proiettore; Inoltre si farà uso anche di metodologie
di apprendimento collaborativo anche basate sull’ e-learning.
CONOSCENZE E ABILITÀ ATTESE:
Al termine del corso gli allievi conosceranno il funzionamento delle principali architetture dei sistemi distribuiti ed i meccanismi per la loro
implementazione e gestione e saranno in grado di sviluppare le funzioni principali di middleware.
SUPPORTI ALLA DIDATTICA:
PC portatile e proiettore; uso del sistema di Learning Management System di Ateneo http://elearning.poliba.it/; libro di testo e dispense
in formato elettronico (.pdf) scritte dal docente.
CONTROLLO DELL’APPRENDIMENTO E MODALITÀ D’ESAME:
Prova Scritta: nella quale si verifica la preparazione relativa ai contenuti del programma ufficiale del corso; Prova Orale: nella quale si
verifica l’effettiva preparazione riscontrata nella precedente prova scritta.
TESTI DI RIFERIMENTO PRINCIPALI:
1.
2.
A. Tanenbaum, M. Van Steen “Sistemi Distribuiti: Principi e Paradigmi”, Pearson Prentice Hall
Introduction to Grid Computing with Globus, IBM Redbooks
Foster, Kesselman, “The GRID Blueprint for a New Computing Infrastructure” Morgan Kaufmann Publishers
3.
4. Dispense didattiche a cura di Marcello Castellano, disponibili in formato elettronico (.pdf) sulla piattaforma
e-learning: http://elearning.poliba.it/.
ULTERIORI TESTI SUGGERITI: Su richiesta.
Degree class:
LM – 32 Computer
Engineering
Type of course
Characterizing
Disciplinary area:
Computer Engineering
Title of the course:
Code:
Distributed Systems
Second level (two year)
degree:
Computer Engineering
Scientific Discipline Sector:
Computer Systems (INGINF/05)
Type of course:
Mandatory
Academic year:
2013- 2014
ECTS Credits:
6
Year:
st
1
Semester:
nd
2
LECTURER:
Prof: Marcello Castellano
HOURS OF INSTRUCTION
The course includes 40 hours of in-class lectures, 12 hours of laboratory, 8 hours of tutorials, seminars and
internships.
PREREQUISITES:
Knowledge of the main concepts of operating systems and computer networks.
AIMS:
The course aims to provide the conceptual elements that place the student in terms of understanding the
complex systems of models of distributed computing systems, applications and design elements of the same.
PROGRAMME:
1.
General Principles and Architectures: Introduction to Distributed Systems, Goals, Types of Distributed Systems, Architectural
Styles, system architecture, Architecture midlleware comparison, self-management in distributed systems.
2.
Distributed Processes: Threads in distributed systems, virtualization, virtual machine architecture, Client, User Interfaces Network,
Server, Migration of the Code.
3.
Communication: Remote procedure calls, message-oriented communication, communication-oriented stream, multicast
communication.
4.
5.
6.
Naming: Identifiers Names and Addresses, Naming Simple, Structured Naming, Naming attribute-based.
7.
8.
9.
Sicurity:Secure Channels, Access Control, Security Management.
Synchronization: Clock synchronization, Logical clocks, Mutual exclusion, Global State, Distributed Transactions.
Distributed systems based on Coordination: Overview, Architecture, Process, Communication, Naming, Synchronization,
Consistency and Replication, Fault Tolerance.
Distributed Systems Technology: Distributed Object Systems
WEB Distributed Systems: Architecture, Process, Communication, Naming, Synchronization, Consistency and Replication, Fault
Tolerance.
10. Computational
Grids: Standardization of Internet services, applications on the Web, open Internet Services, the pervasive
computing, pervasive computing and e-business computing environments for the GC, An overview of applications, distributed
supercomputing, high-throughput computing, on-demand computing, data intensive computing, collaborative computing as GC,
functional components of the system, the role of organizations in the GC, the new generation of GC, the technological point of view.
11. Case Studies: Grid Computing, Web Computing, Collaborative Computing, Pervasive Computing, Software Defined Networking
TEACHING METHODS:
Lectures and theoretical exercises and practices supported by laptop and projector; use of methodologies including collaborative
learning also based on e-learning.
EXPECTED OUTCOME AND SKILL:
At the end of the course students will learn the operation of the main architecture of distributed systems and mechanisms for their
implementation and management and will be able to develop the main functions of middleware.
TEACHING AIDS:
Laptop and projector using the system of the University Learning Management System http://elearning.poliba.it/, textbook and handouts
in electronic format (. pdf) written by the teacher.
EXAMINATION METHOD:
Written Exam: in which there is preparation for the contents of the official program of the course, Oral: in
which verifies the preparation found in the previous written test.
BIBLIOGRAPHY:
1. A. Tanenbaum, M. Van Steen “Sistemi Distribuiti: Principi e Paradigmi”, Pearson Prentice Hall
2. “Introduction to Grid Computing with Globus”, IBM Redbooks
3. Foster, Kesselman, “The GRID Blueprint for a New Computing Infrastructure” Morgan Kaufmann
Publishers
4. Notes by Castellano M., available in electronic format (.pdf) on the e-learning platform:
http://elearning.poliba.it/.
FURTHER BIBLIOGRAPHY:
Upon request.