RETI DI CALCOLATORI

Anno accademico
2023/2024 Programmi anni precedenti
Titolo corso in inglese
COMPUTER NETWORKS
Codice insegnamento
CT0373 (AF:360602 AR:189061)
Modalità
In presenza
Crediti formativi universitari
6
Livello laurea
Laurea
Settore scientifico disciplinare
INF/01
Periodo
I Semestre
Anno corso
3
Sede
VENEZIA
Spazio Moodle
Link allo spazio del corso
Le reti di calcolatori sono parte integrante dei sistemi ICT, e sono massivamente pervasive. È fondamentale che gli studenti abbiano una conoscenza approfondita del loro funzionamento e di come queste influenzano le prestazioni dei software che vengono utilizzati ai livelli applicativi.
La conoscenza del funzionamento delle reti è essenziale sia per chi vuole intraprendere una carriera da sistemista, ma anche per gli sviluppatori che dovranno sapere come la rete introduce ritardi, congestioni, ed espone le informazioni private a terze parti.
Lo studente otterrà le seguenti conoscenze:
- Introduzione ai problemi generali alla base delle comunicazioni digitali: comunicazioni affidabili, condivisione del mezzo di comunicazione, comunicazioni sicure.
- I modelli architetturali delle reti di calcolatori, la pila ISO/OSI e TCP/IP
- Dettaglio protocollare di ciascuno strato della pila:
- Rappresentazione e reperimento delle informazioni, HTTP, e-mail, DNS
- Multiplexing ed affidabilità: TCP/UDP
- Indirizzamento e routing: IPv4, IPv6
- Accesso al canale: Ethernet, Wi-Fi.
- Trasversalmente, si introdurranno i concetti di servizi di sicurezza e protocolli sicuri

Lo studente otterrà le seguenti abilità:
- interpretare i flussi di traffico in una rete
- progettare un'architettura di rete di base con assegnazione di indirizzi e tabelle di routing
- utilizzare strumenti e primitive note per realizzare semplici servizi

Lo studente otterrà le seguenti capacità di giudizio ed abilità comunicative:
- interpretare una proposta di architettura di rete, valutandone la completezza, la presenza dei servizi essenziali, la sicurezza del sistema
- comunicare le necessità di componenti specifici e supporto ai servizi necessari quando si relazionerà con esperti del settore e fornitori.
È richiesta familiarità con la programmazione in linguaggio C ottenibile dall'esame di programmazione.
Principi generali delle reti:
- comunicazione a livello fisico: velocità, errori
- correzione e rilevamento di errori
- protocolli affidabili: ritrasmissioni e macchine a stati
- condividere le risorse: il livello MAC
- il controllo di congestione
- estendere la rete: algoritmi di routing
- multiplexing e affidabilità: il trasporto
- rappresentazione delle informazioni
- servizi di sicurezza, introduzione alle primitive crittografiche

Protocolli di rete:
- HTTP
- DNS
- TCP/UDP
- IP (v4 e v6)
- BGP
- Ethernet
- Wi-Fi
- Secure protocols: TLS/DNSSEC
Testo di riferimento e di consultazione:
O. Bonaventure, "Computer Networking : Principles, Protocols and Practice" third edition. Liberamente scaricabile on-line.
A.Tanenbaum, D. Wetherall, ‘Reti di Calcolatori’, 6a ed., Pearson.
L'esame è un esame scritto che utliizzerà la piattaforma Moodle e si svolgerà in laboratorio, ed un orale opzionale.
La prova scritta consiste in esercizi che accertino le conoscenze acquisite:

- padroneggiare i principi alla base delle comunicazioni di rete
- comprendere i componenti essenziali di protocolli di rete esistenti
- verificare le caratteristiche di sicurezza di una rete

Gli esercizi dovranno anche verificare le abilità:
- produrre il design di un protocollo di rete
- verificare la correttezza di un sistema di rete

In fine, attraverso la verifica della padronanza del linguaggio, del corretto uso della terminologia e della familiarità nell'utilizzo di alcuni comandi di base si verificheranno la capacità di giudizio e le abilità comunicative

La valutazione dell'esame è formulata secondo quanto segue:
- prova scritta con domande a scelta multipla (33% del voto): serviranno a verificare la familiarità con concetti essenziali e con le caratteristiche di base di un protocollo
- prova scritta con domande aperte (66% del voto): serviranno a verificare la capacità di risolvere problemi legati al design di una rete ed alla sua sicurezza.

L'esame può essere superato ottenendo un voto sufficiente all'esame scritto, gli studenti che abbiano ottenuto un voto superiore a 25 possono effettuare un esame orale per incrementare il punteggio ottenuto.
L'esame orale si basa su domande aperte ed esercizi e verificherà la capacità dello studente di risolvere problemi avanzati che richiedono un maggiore dettaglio rispetto a quelli proposti nel compito scritto.
Corso frontale che si avvale anche di moduli didattici disponibili sulla piattaforma di e-learning di ateneo moodle.unive.it ed altre piattaforme per la realizzazione di esercizi on-line.
Le lezioni si svilupperanno con una componente teorica ed alcune esercitazioni. Se possibile verranno proposte attività extra come esercizi di gruppo in aula, o presentazioni di temi a scelta degli studenti.
Italiano
scritto e orale
Programma definitivo.
Data ultima modifica programma: 08/08/2023