145418 — Reti Avanzate

Laurea Triennale in Informatica
Anno Accademico 2016-2017, secondo semestre

Mutua
145023 — Reti di Calcolatori: Applicazioni
140278 — Sicurezza dei Dati

Avvisi

  • [2017-04-11] Apportate alcune correzioni agli esercizi visti a lezione.
  • [2017-04-10] Aggiunti alcuni esercizi d'esame da scritti degli anni preecdenti.
  • [2017-04-08] Sono disponibili le tracce delle lezioni della settima settimana, comprensive di alcuni esercizi d'esame.
  • [2017-02-20] Prego gli studenti di inviare una email, anche vuota, con subject [RetiAvanzate] a <mauro.brunato@unitn.it> per segnalare il proprio interesse a ricevere eventuali avvisi urgenti relativi al corso.
    L'indirizzo sarà utilizzato solamente per comunicazioni urgenti.

Docenti

Orario

Da lunedì 20 febbraio a martedì 30 maggio 2017.
  • Teoria: martedì dalle 9 alle 11 in aula A207;
  • Laboratorio: lunedì dalle 14 alle 16 in aula B106.
Sospensioni previste:
  • Lunedì 17 aprile e martedì 18 aprile (vacanze di Pasqua);
  • Lunedì 24 aprile e martedì 25 aprile (festa della Liberazione e ponte);
  • Lunedì 1 maggio (Festa del Lavoro).

Mailing list

Prego gli studenti di inviare una email, anche vuota, con subject [RetiAvanzate] a <mauro.brunato@unitn.it> per segnalare il proprio interesse a ricevere eventuali avvisi urgenti relativi al corso.
L'indirizzo sarà utilizzato solamente per comunicazioni urgenti.

Prerequisiti

Il corso si pone in continuità con Reti di Calcolatori. Si assume dunque che gli studenti conoscano i principali protocolli, sappiano collocarli all'interno della pila protocollare ISO/OSI e dell'equivalente pila TCP/IP.
Occasionalmente, saranno richieste nozioni di Geometria e Algebra Lineare.

Programma

Il programma sarà precisato durante lo svolgimento. Gli argomenti previsti sono:
  • Livello data link: LAN virtuali;
  • Livello rete: inter-VLAN routing;
  • Dimensionamento e realizzazione di una rete locale;
  • Configurazione di apparati di rete;
  • Livello trasporto: programmazione a livello socket;
  • Livello applicativo: protezione delle reti
    • Network Address Translation
    • Principali metodi di attacco di una rete
    • Firewall, Proxy
  • Sicurezza dei dati
    • Crittografia
    • Firma digitale
    • Principali protocolli crittografici
Le lezioni di laboratorio prevedono la verifica e la sperimentazione degli argomenti trattati a teoria tramite l'utilizzo di simulatori e la scrittura di brevi programmi di prova sotto la guida del docente.
La simulazione di reti si baserà su apparati Cisco, ma riguarderà argomenti di carattere generale.

Esami

Gli esami consistono in una prova scritta, seguita da un orale opzionale.

La prova scritta, con carta e penna, non richiederà la scrittura di codice. Conterrà uno o due esercizi affini agli esempi contenuti nella traccia degli argomenti del corso, e una domanda di teoria in cui si chiede di sviluppare per iscritto un argomento specifico. La prova dura tre ore e vale 30 punti, equiripartiti fra gli esercizi.

L'orale è facoltativo, e serve per piccoli aggiustamenti di punteggio (+/-3 punti) oppure per la lode; può essere accompagnato da un piccolo progetto attinente a qualche argomento trattato a lezione. Il progetto serve sostanzialmente a guidare l'orale su un argomento specifico, e non è richiesto.

Gli appelli d'esame della sessione estiva sono i seguenti:

ScrittoOrale(*)
Primo appello:Lunedì 12 giugno, ore 9:00Venerdì 16 giugno
Secondo appello:Lunedì 24 luglio, ore 9:00Venerdì 28 luglio
Terzo appello:Lunedì 4 settembre, ore 9:00Venerdì 8 settembre

(*) Gli orali (facoltativi) possono essere concordati con il docente.

Prove parziali

Le date confermate delle prove parziali sono le seguenti:

ProvaAula
Prima prova:Mercoledì 12 aprile, ore 14:30A101
Seconda prova:Mercoledì 7 giugno, ore 14:30A101

La partecipazione alla seconda prova parziale è subordinata al superamento della prima prova con almeno 18/30. Il superamento delle due prove parziali varrà come prova scritta, il voto finale sarà la media dei due voti parziali; resta valida la facoltà di sostenere l'orale.

Bibliografia

Il corso non prevede l'adozione di un libro di testo.
Per approfondimenti si consigliano le seguenti risorse:

Pagine e siti web

Software

  • NetSimK: software per la simulazione di un'architettura di rete con apparati Cisco. La versione scaricabile dal sito è scaduta nel gennaio 2017, è disponibile una copia locale sbloccata (patch fornita da Antonio Frighetto, con bypass del controllo di data).

Libri per approfondimenti

Un'edizione ragionevolmente recente di un libro di reti può essere di notevole aiuto. Ad esempio:

Materiale del corso

Dispense del corso

Esercitazioni di laboratorio


Programma svolto

Teoria

  • Introduzione (lunedì 20 febbraio)
    • Richiami: pila protocollare ISO/OSI, apparati di livello 1 e 2.
  • Reti locali (martedì 21 febbraio)
    • Domini di collisione, domini di broadcast.
    • Lo standard Ethernet. Indirizzi MAC. Struttura di un frame Ethernet.
    • Funzionamento di uno switch. Struttura ad albero di una rete locale.
    • Reti locali virtuali (VLAN):
      • separazione dei domini di broadcast;
      • collegamenti access e trunk;
      • lo standard IEEE802.1Q per il tagging dei frame.
  • Livello rete (martedì 28 febbraio)
    • Reti e sottoreti IP.
    • Routing fra reti locali virtuali: router con porte virtuali, switch layer-3.
  • Network Address Translation (NAT) (martedì 7 marzo, martedì 14 marzo)
    • Modifica dell'indirizzo IP del mittente per pacchetti emessi da client privati.
    • Utilizzo della porta effimera del mittente per indicizzare la traduzione.
    • Port forwarding: raggiungibilità di server privati dall'esterno.
    • UDP hole punching: realizzazione di un tunnel attraverso due router NAT.
  • Sicurezza delle reti (martedì 14 marzo, martedì 21 marzo, martedì 28 marzo, martedì 4 aprile)
    • Metodi ed esempi di attacco: ricerca di server tramite DNS e port mapping; Idle scan; buffer overflow, code injection, Denial of Service
    • Firewall: packet filtering, con e senza mantenimento dello stato. Access Control List (ACL).
    • Proxy applicativi: vantaggi e svantaggi
    • Architetture di rete: Soho, three-legged con DMZ e intranet, schermatura a più livelli.
 

Laboratorio

  • Simulatore orientato agli oggetti (lunedì 20 febbraio, lunedì 27 febbraio)
    • Codice Python per la simulazione di un terminale di livello 2 e un hub.
    • Modifiche al codice per la simulazione di uno switch.
  • Switching e VLAN con NetSimK (lunedì 6 marzo)
    • Realizzazione di una semplice rete locale con uno switch e vari PC.
    • Realizzazione di una rete con vari switch e più VLAN.
  • Cablaggio strutturato con NetSimK (lunedì 13 marzo)
    • Realizzazione di una rete locale composta di vari switch e VLAN.
  • Inter-VLAN routing con NetSimK (lunedì 20 marzo)
    • Collegamento di reti locali virtuali tramite router.
  • Routing e NAT statico con NetSimK (lunedì 27 marzo)
    • Collegamento di reti tramite router, NAT statico uno-a-uno.
  • NAT dinamico e ACL con NetSimK (lunedì 3 aprile)
    • NAT dinamico fra reti con mappatura basata sulle porte.
    • Firewalling basato su access control lists.

Pagina mantenuta da Mauro Brunato