Reti di calcolatori (classe 2 - matr. congrue a 1 mod. 3)
A.A. 2011/12
9 crediti (48 ore frontali e 36 ore di laboratorio)

Docente: Vincenzo Auletta



Orario delle lezioni:
Orario di ricevimento:
Informazioni, materiale di supporto ed un forum associato al corso possono essere trovati sulla piattaforma e-learning di Ateneo (per poter accedere al materiale è necessaria la registrazione al corso).


Presentazione del Corso
Il corso di Reti di Calcolatori si prefigge l'insegnamento dei principi fondamentali delle reti di calcolatori, lo studio delle tipologie di reti e delle tecniche di programmazione più diffuse.
Il corso prevede una parte teorica ed una pratica. Nella parte teorica vengono studiati i principi fondamentali per la costruzione di una rete di calcolatori: architettura delle reti, codifiche e trasmissione affidabile, commutazione di pacchetto, interconnessione di reti, protocolli di trasporto, controllo della rete, applicazioni. La seconda parte, invece, è di carattere pratico ed ha come obiettivo lo sviluppo di semplici applicazioni client-server utilizzando il linguaggio di programmazione C ed i socket.
Il corso ha come obiettivo di mettere in condizione lo studente di sviluppare semplici applicazioni client-server, configurare ed amministrare piccoli reti locali, utilizzare in maniera consapevole i servizi di rete.

Prerequisiti
Conoscenze di base di sistemi operativi e programmazione in C. Sarebbe opportuno avere anche conoscenze di architettura degli elaboratori.

Programma di massima
  1. Introduzione alle reti
    • Struttura ed architettura di una rete
    • Stratificazione e protocolli
    • Internetworking
    • Modelli OSI e TCP/IP
    • Valutazione delle prestazioni
  2. Fondamenti della Trasmissione
    • Dati e Segnali
    • Tecniche di tramissione dati
    • Multiplexing
    • Mezzi trasmissivi (wired e wireless)
    • Controllo di linea
    • Codifica dei dati
    • Framing
    • Rilevazione degli errori (parità, somme di controllo, CRC)
    • Protocolli ARQ per trasmissione affidabile: Stop-and-Wait, Go Back-N, ritrasmissione selettiva
    • Protocolli di accesso al mezzo (Ethernet, token ring, FDDI, 802.11)
    • Dispositivi di connessione
    • Commutazione di datagram e di circuiti virtuali
  3. Internetworking
    • modello di servizio di IP
    • formato datagram IP
    • indirizzi IP con classi e senza classi
    • inoltro di datagrammi IP
    • protocolli ARP, DHCP, ICMP
    • protocolli di routing IGP ed EGP
    • Mobile IP
  4. Protocolli di Trasporto
    • UDP
    • TCP: servzio di trasporto affidabile di flussi di bit
    • Formato segmenti TCP
    • Apertura e chiusura connessione TCP
    • Controllo del flusso
    • Ritrasmissione adattiva
    • Controllo della congestione e allocazione delle risorse
    • Quality of Service (cenni su DiffServ e IntServ)
  5. Applicazioni
    • DNS
    • Posta elettronica: SMTP, MIME, POP
    • Web: HTTP
    • Cenni su overlay networks (reti P2P e reti per la distribuzione dei contenuti)
  6. Laboratorio - programmazione client/server con le socket
    • Introduzione ai Socket
    • Socket TCP u DUP
    • Server iterativi e ricorsivi
    • I/O Multiplexing
    • Opzioni dei socket e funzioni di I/O
    • Risoluzione dei nomi.


Testi di riferimento
Parte Teorica:
[Fr]
B.A. Forouzan
Reti di Calcolatori e Internet
McGraw Hill, 2007
ISBN 978-88-386-6411
Parte di Laboratorio:
[SFR]
W.R. Stevens, Fenner, Rudoff
UNIX Network programming, III ed.
Prenctice Hall, 2003
ISBN 0-13-141155-1

Il codice degli esempi discussi in laboratorio, slide di anni precedenti, esercizi svolti, tracce di esame ed altro materiale sono disponibili sul sito del corso all'interno della piattaforma e-learning di Ateneo (per poter accedere al materiale è necessaria la registrazione al corso).

Diario delle lezioni
Qui saranno pubblicati di volta in volta gli argomenti trattati in ogni lezione.



Esame
L'esame consiste di una prova scritta, una prova di programmazione in laboratorio ed un colloquio orale. Inoltre, durante il corso sulla piattaforma di e-learning verranno proposte varie attività da svolgere a casa e discussioni su argomenti attinenti al corso. La partecipazione attiva alle lezioni ed alle attività proposte sarà parte integrante della valutazione complessiva dell'esame.

Il voto verrà calcolato come media ponderata delle attività svolte secondo la seguente distribuzione:

Per poter sostenere l'esame è necessario prenotarsi online sul sito di Ateneo (esse3) almeno 5 giorni lavorativi prima della data di esame.

Contatti
Vincenzo Auletta



Ultimo aggiornamento: Mercoledì 8 Febbraio 2012