Docente
|
SILVESTRI STEFANO
(programma)
- OBIETTIVI FORMATIVI Lo studente dovrà conoscere i principi di funzionamento delle architetture di rete, i principali protocolli di ogni livello della pila TCP/IP (inclusi i dettagli degli leader). Inoltre, saprà utilizzare tool per il monitoring del traffico di rete (sniffer). Infine, sarà in grado in implementare una applicazione rest http in Python.
- DIDATTICA EROGATIVA N. 18 ORE videoLEZIONI ON-LINE (n. 2 videolezioni - unita’ didattiche - della durata di un’ora per ogni cfu)
- DIDATTICA INTERATTIVA n. 18 ore lezioni in streaming (n. 2 lezioni in streaming per ogni cfu) di cui n. // da registrare e pubblicare in piattaforma ed eventuali n. // per esercitazioni in aula n. 18 forum – 2 per CFU N. 2 CHAT N. 2 e-TIVITY N. 9 TEST (ALMENO 1 PER CFU) CON 10 DOMANDE ASSISTENZA MEDIANTE E-MAIL
- PROGRAMMA DEL CORSO Introduzione alle reti di calcolatori Reti di telecomunicazione Calcolo distribuito Modelli Client-Server e Peer-to-peer Elementi logici di una rete Reti a commutazione di circuito Reti a commutazione di pacchetto Qualità del servizio LAN, MAN e WAN Topologie di reti Architetture di rete Esempio dei due filosofi Livelli, protocolli e interfacce Pila di protocolli ISO/OSI Pila di protocolli TCP/IP
Livello fisico e livello data-link Principali media di livello fisico e rispettive caratteristiche Tecniche di condivisione del mezzo fisico Protocollo ALOHA Protocollo CSMA/CD Rilevamento collisioni in CSMA/CD Dimensione minima frame in CSMA/CD Gestione della contesa in CSMA/CD Efficienza in CSMA/CD Protocollo Ethernet Header e frame Ethernet Indirizzi MAC Funzionamento protocollo Ethernet Protocollo Token Ring Protocollo WiFi IEEE 802.11 CSMA/CA Problemi del nodo nascosto e del nodo esposto Prenotazione del canale
Livello Rete Storia di Internet Hub, bridge e switch Cablaggio strutturato Protocollo IP (IPv4) Header IP Indirizzi IP Indirizzi IP pubblici e privati Subnetting e reti logiche Protocolli ARP e RARP Protocollo ICMP Protocollo IPv6 Differenze IPv4 e IPv6 Header IPv6 Indirizzi IPv6 NAT Port mapping, port forwarding e UPnP Transizione da IPv4 a IPv6 Protocollo ICMPv6 Protocolli NDP, MLD e IGMP Tecniche di routing Routing statico e dinamico Algoritmi Distance Vector Tabelle di routing Algoritmi Link State Pacchetti LSP Algoritmo di Dijkstra Protocollo di routing RIP Protocollo di routing OSPF
Protocolli di livello trasporto Protocollo UDP Header UDP Porto di livello trasporto Protocollo TCP Caratteristiche TCP Header TCP Apertura connessione TCP: 3 way handshake Sequence number e ack number Riscontro cumulativo in TCP Timeout in TCP Chiusura della connessione TCP Controllo del flusso in TCP Silly window e algoritmo di Nagle Controllo di congestione in TCP Slow start e congestion avoidance
Livello Applicazione Esempi di protocolli di livello applicazione standard Imbustamento protocolli Protocollo FTP Protocolli email: SMTP e POP3 Protocolli P2P Protocollo DHCP Protocollo NTP Protocollo Telnet Protocollo SSH Protocollo SMB Il protocollo http URL Pagine HTML Tipi di messaggi http Request http Metodi http Form http Response http Coockies Connessioni http Flussi multimediali Protocolli per flussi multimediali in streaming Content Delivery Network
Sicurezza in Rete Introduzione al problema della sicurezza Tipi di violazioni della sicurezza Scopi della Cyber Security Introduzione ai metodi crittografici Criptazione a chiave simmetrica Criptazione a chiave pubblica e privata Algoritmo RSA Protocolli IPSec, SSL e TSL Esempi di attacchi alla sicurezza in rete Packet sniffer e analisi del traffico di rete Cattura e analisi traffico con Wireshark
Programmazione in rete Socket Server iterativo e concorrente Binding Streaming e datagram Programmazione di Socket in C Programmazione in rete con Python Connessioni http in Python Realizzazione di un web server con Python e le librerie Flask Realizzazione di funzioni http REST e GET in Python Trasferimento di un file in Python
- MODALITÀ DI VERIFICA DEL PROFITTO IN INTINERE Colloqui durante le lezioni interattive e il ricevimento
- MODALITÀ DI VALUTAZIONE E OBIETTIVI DELLA PROVA FINALE La prova d’esame si articola in una prova scritta selettiva ed un colloquio orale. La prova scritta mira a valutare sia le conoscenze acquisite sugli argomenti e la capacità di applicarle in semplici contesti reali che la capacità di scrivere un rapporto tecnico. La prova scritta richiede di rispondere ad un test a risposta multipla (40% del punteggio) e risolvere problemi tipici presentati durante il corso e rispondere domande a risposta aperta (60% del punteggio). Con il colloquio orale saranno valutate sia le conoscenze acquisite in merito agli aspetti architetturali delle reti, ai principali protocolli di rete e ai servizi di base forniti agli utenti che le capacità di presentazione. Nella valutazione finale, espressa in trentesimi, la valutazione della prova scritta peserà per il 45% mentre il colloquio orale per il restante 55%. La lode potrà essere attribuita agli studenti che dimostrino una piena conoscenza e padronanza di tutte le principali tematiche affrontate al corso e di come queste sono implementate nelle reti più diffuse. Infine, anche saranno tenute in conto le etivity svolte per la determinazione del voto finale.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE IN TERMINI DI RISULTATI ATTESI (DESCRITTORE DI DUBLINO N. 1) Conoscere i principi di funzionamento delle architetture di rete, i principali protocolli di ogni livello della pila TCP/IP.
COMPETENZE AL FINE DI APPLICARE CONOSCENZA E COMPRENSIONE IN TERMINI DI RISULTATI ATTESI (DESCRITTORE DI DUBLINO N. 2) Utilizzare tool per il monitoring del traffico di rete (sniffer); installare e configurare una rete LAN; configurare una connessione a Internet; implementare una applicazione rest http in Python.
(testi)
TANENBAUM ANDREW S.- WETHERALL DAVID J. RETI DI CALCOLATORI. Ed. Pearson
|