Nuova ricerca

LUCA FERRETTI

Professore Associato
Dipartimento di Scienze Fisiche, Informatiche e Matematiche sede ex-Matematica

Insegnamento: Protocolli e architetture di rete

Informatica (Offerta formativa 2024)

Obiettivi formativi

Il corso mira a fornire i concetti di base su protocolli e architetture di rete informatici. La maggior parte del corso è focalizzata sullo studio dello stack dei protocolli TCP/IP e su alcuni dei principali protocolli applicativi.

Il corso comprende esercitazioni di laboratorio volte a consolidare gli argomenti di teoria tramite analisi sperimentale dei protocolli e a fornire competenze necessarie per l'installazione, configurazione e debugging di reti tramite l'uso di comandi e tool in sistemi operativi basati su Linux.

Al termine dell'insegnamento lo studente dovrebbe conoscere i più popolari protocolli di rete utilizzati dalle moderne reti di calcolatori ed essere in grado di comprendere i principali criteri progettuali per la realizzazione di protocolli e architetture di reti di calcolatori. Lo studente dovrebbe inoltre essere in grado di creare e debuggare lo stato di funzionamento di reti di calcolatori in sistemi operativi basati su Linux.

Prerequisiti

Sistemi operativi: conoscenza teorica (in particolare, struttura e componenti, gestione di processi, comunicazione fra processi), competenza nell'uso della linea di comando e dei principali programmi dei sistemi operativi Linux.

Programma del corso

Il corso tratta le principali problematiche legate alle modalità di comunicazione dei sistemi su reti locali e geografiche. Gli obiettivi specifici sono lo studio e l'approfondimento dei protocolli della suite TCP/IP, dell'architettura e routing in Internet, dei sistemi client/server, dei meccanismi di naming con particolare riferimento al sistema DNS, dei fondamenti architetturali e funzionali dei principali applicativi di rete con particulare riferimento al World Wide Web.

Di seguito vengono riportati i principali argomenti trattati.
- Concetti di stack di protocolli [1 CFU]
- Livello host-to-network, Ethernet [1 CFU]
- Livello IP: Autonomous systems, Algoritmi di routing in Internet, Architettura dei router [2 CFU]
- Livello di trasporto: protocolli UDP e TCP, socket di rete [2 CFU]
- Domain Name System: categorie di name server, resource record, zone, modalità di risoluzione [1 CFU]
- Protocolli applicativi [1 CFU]
+ World Wide Web e HTTP
+ Posta Elettronica
- Concetti di protocolli e architetture di rete sicure [1 CFU]
+ Certificati digitali
+ TLS, HTTPs
+ Sicurezza Posta Elettronica
+ Firewall

Nel laboratorio si utilizzano sistemi di virtualizzazione di sistemi operativi basati su Linux per permettere l'installazione, la configurazione e l'analisi di reti di calcolatori tramite alcuni dei principali programmi e strumenti di questi ambienti.

Metodi didattici

Insegnamento teorico in aula con supporto di proiettore e slide.

Insegnamenti pratici dove gli studenti possono utilizzare un proprio computer per riprodurre le esercitazioni o per svolgere esercizi proposte dal docente.

Durante lo svolgimento del corso vengono lasciati degli argomenti di approfondimento e degli esercizi di laboratorio facoltativi aggiuntivi che gli studenti possono svolgere al di fuori dell'orario di lezione per esercitarsi.

L'insegnamento è erogato in lingua italiana. La frequenza non è obbligatoria, ma fortemente consigliata. Gli studenti non frequentanti sono invitati a prendere contatto con li docente.

Testi di riferimento

Il libro di testo consigliato per lo studio è:

- Versione italiana: "Reti di Calcolatori e Internet. Un approccio top-down", J. Kurose, K.W. Ross

- Versione inglese (originale): "Computer Networking: A Top-Down Approach" J. Kurose, K.W. Ross

Il libro non è obbligatorio per il conseguimento della materia, ma è consigliato per una più completa trattazione di alcuni argomenti. È inoltre maggiormente consigliato agli studenti che non riescono a frequentare il corso con continuità.

Verifica dell'apprendimento

L'esame è costituito da due parti e mira a verificare la conoscenza e abilità pratica di tutti gli obiettivi formativi descritti in precedenza.
- Nella prima parte lo studente dovrà dimostrare di saper risolvere un problema fornito dal docente sulla falsariga di problemi analizzati e risolti nell'ambito delle esercitazioni, in un esame di laboratorio della durata massima di due ore più il tempo necessario per la correzione e discussione con docente, che viene svolta subito dopo lo svolgimento dell'esame.
- Nella seconda parte lo studente deve dimostrare di conoscere le tematiche teorico-pratiche trattate in aula tramite una discussione orale, della durata di circa 20-40 minuti.
Il voto finale è dato dalla media aritmetica approssimata all'intero più vicino dei voti delle due parti.

Risultati attesi

Conoscenza e comprensione:
- principi e criteri di progettazione degli stack di protocolli di rete e dettagli dello stack TCP/IP
- dettagli del funzionamento del protocollo e delle reti locali Ethernet
- dettagli del funzionamento del protocollo IPv4 e alcuni concetti del protocollo IPv6
- principi e criteri di progettazione e di funzionamento degli algoritmi di routing e le principali informazioni di alcuni protocolli di routing standard
- dettagli del funzionamento dei protocolli UDP e TCP
- dettagli del funzionamento dei meccanismi di Network Address Traslation
- protocolli e architetture associate ai DNS, alla posta elettronica e al World Wide Web

Capacità di applicare conoscenza e comprensione:
- saper analizzare protocolli di rete date delle tracce di traffico catturate sperimentalmente
- saper progettare semplici reti locali in termini di indirizzi IP e topologie di rete
- saper utilizzare comandi e tool relativamente alla configurazione e al debugging di reti in sistemi operativi basati su Linux