Avviso
Esiti dello scritto di Gennaio 2014. L'orale e la discussione del progetto si terranno Giovedì 23 Gennaio dalle ore 9:00 (aula da definirsi).
Il progetto di Gennaio è online (data di consegna 09 Gennaio 2014). Qui trovate il file per la costruzione della rete sociale.
Una serie di test che riproducono possibili errori o interazioni da parte degli utenti.
Modalità d'esame
Appelli di febbraio: Il progetto e lo scritto, qualora superati, valgono per entrambi gli appelli. Se l'orale non viene superato al primo appello si può ripetere al secondo. Lo stesso dicasi per lo scritto.
Appelli diversi da febbraio: L'esito positivo dell'esame è costituito dal superamento del progetto, dello scritto e dell'orale validi SOLO per quell'appello. Non viene considerato valido nulla per i successivi appelli.
Date Appelli d'esame
- 1 e 26 Febbraio 2013
- 12 Giugno 2013
- 11 Luglio 2013
- 19 Settembre 2013
- 14 Gennaio 2014
Programma Teoria
E' un corso di base che fornisce le basi concettuali e architetturali delle reti di calcolatori con particolare riferimento alla rete Internet, ai suoi protocolli, alle sue applicazioni e gli strumenti per l'analisi di reti complesse. Si acquisiscono inoltre competenze sulla programmazione di rete per la fruizione di servizi su Internet utilizzando il linguaggio di programmazione Java.
Nozioni di base sulle reti di calcolatori e Internet
Architetture a livelli: ISO/OSI e TCP/IP
Livello applicativo: web, HTTP, posta elettronica, DNS, P2P, programmazione
con le socket e web service
Tecniche di base per l'analisi di reti complesse
Livello di trasporto: protocolli TCP e UDP
Livello di rete: reti a circuito virtuale e a datagrammi, IP, protocolli di
instradamento
Livelli data link: protocolli di livello MAC per reti LAN
Programma Laboratorio
- Modello client-server, protocolli livello rete,trasporto,applicazione
Testi di riferimento
- J. F. Kurose, K.W. Ross, Computer Networking, a topdown approach, 4° edizione, Addison Wesley o l'edizione italiana
- J. F. Kurose, K.W. Ross, Reti di calcolatori e Internet, 4° edizione, Pearson
- Dario Maggiorini, Introduzione alla Programmazione Client-Server, Pearson, 2009.
- A. S. Tanenbaum and D.J. Wetherall, “Computer Networks”, Pearson.(o nell’edizione italiana)
- M.E.J. Newman, “Networks: an introduction”, Oxford University Press, 2011
- M.E.J. Newman, “The structure and function of complex networks”, SIAM Review, 45(2), 167-256, (2003)
- S. Boccaletti et al., “Complex networks: structure and dynamics”, Physics Reports 424 (2006), 175-308
- D. Easley ans J. Kleinberg, “Networks, Crowds and Markets”, Cambridge University Press, 2010
Syllabus Teoria
Capitolo 1:- Che cos'è Internet? (1.1)
- Ai confini della rete (1.2)
- Il nucleo della rete: commutazione di circuito e commutazione di pacchetto (1.3.1, 1.3.2), gerarchia degli ISP (1.3.3)
- Ritardi nelle reti a commutazione di pacchetto (1.4.1) con relativi esercizi
- Esercizi sui ritardi nelle reti a commutazione di pacchetto. Esercizi fine cap. 1 del libro di testo. Materiale aggiuntivo: Andrea Bianco, Claudio Casetti, Paolo Giaccone, "Esercitazioni di reti telematiche", CLUT, Torino, ISBN: 978-88-7992-250-0, esercizi cap. 1
- Perdite di pacchetti e throughput nelle reti (1.4.2, 1.4.3, 1.4.4)
- Internet protocol stack (1.5)
Capitolo 2:
- I principi delle applicazioni di rete (2.1)
- Web e HTTP (2.2, 2.3)
- Posta elettronica in Internet (2.4)
- DNS (2.5)
- Distribuzione di file P2P (2.6.1)
Capitolo 3:
- Livello di trasporto (3.1)
- Multiplexing e demultiplexing (3.2)
- UDP (3.3)
- Trasferimento dati affidabili (3.4)
- TCP (3.5)
- Controllo di congestione (3.6 - 3.7)
- Problemi sul capitolo 3: 1, 2, 3, 4, 24, 25, 33, 36
Capitolo 4:
- Introduzione al livello di rete (4.1)
- Reti a circuito virtuale e a datagrammi (introduzione, 4.2.2, 4.2.3, non il 4.2.1)
- Struttura di un router (4.3)
- Protocollo Internet (IP)
- Formato dei datagrammi (4.4.1)
- Indirizzamento IPv4 (4.4.2, UPnP solo accennato)
- ICMP (4.4.3)
- IPv6 (4.4.4)
- Algoritmi di instradamento link state e algoritmo di Dijkstra (4.5.1)
- Algoritmo distance vector (4.5.2)
- Instradamento gerarchico (4.5.3)
- Instradamento in Internet (4.6)
- La parte di algoritmi di routing è ben trattata anche sul Tanenbaum (sulla quinta edizione corrisponde alle sezioni da 5.2 a 5.2.6)
- Problemi sul capitolo 4: 8, 9, 11, 12, 14, 16, 18, 22, 23, 24, 26, 27
Capitolo 5:
- Introduzione al livello di collegamento (5.1)
- Protocolli ad accesso multiplo (5.3)
- Protocolli a suddivisione del canale (5.3.1)
- Protocolli ad accesso casuale (5.3.2) escluso il calcolo dell’efficienza in Slotted ALOHA ed ALOHA e i diagrammi spazio-temporali in CSMA (pag. 406-407, ed.it)
- Protocolli a rotazione (5.3.4)
- Indirizzi a livello di collegamento (5.4)
- Switch a livello di collegamento (5.6)
- Esercitazione riassuntiva sui protocolli: Paragrafo 5.7 della IV ed. inglese. Slide
Complex networks:
- Introduzione alla analisi di reti complesse
- Metriche e misure (definizioni): Degree, paths, shortest paths, diameter, components, degree centrality, betweeness centrality, closeness centrality, clustering coefficient
- Small world effect, degree distribution (cenni)
Syllabus Laboratorio
- Martedì 9 Ottobre: Aspetti organizzativi, introduzione ad Eclipse mediante esercizi guidati
- Soluzione degli esercizi proposti
- Martedì 16 e Mercoledì 17 Ottobre: Collections Framework
- Martedì 23 e Mercoledì 24 Ottobre: I/O Streams
- Martedì: Turno A
- Mercoledì: Turno B
- Codice degli esempi
- Soluzione degli esercizi proposti
- Testo in cirillico
- Lunedì 29 Ottobre: Concetti base di rete e web
- Martedì 30 e Mercoledì 31 Ottobre: Threads
- Lunedì 5 novembre: Classi InetAddress, NetworkInterface, URL, URLEncoder/Decoder
- Codice degli esempi
- Martedì 6 novembre e Mercoledì 7 novembre: Socket, ServerSocket, Client e Server iterativo e multithread
- Mercoledì 14 novembre: HTTP e classi URLConnection e HttpURLConnection
- Soluzione degli esercizi proposti
- Mercoledì 21 novembre: XML e JSON
- Martedì 4 dicembre: Facebook Graph API
- Martedì 11 dicembre: Networks e libreria GraphStream
- Mercoledì 19 dicembre: OAuth 1.0, Autenticazione in Facebook, Scribe e Twitter API
- Codice degli esempi
- Martedì 08 gennaio: Discussione progetto di Febbraio
Progetto
Scritti Appelli Passati
Orario
Lunedì | 13:30 - 15:30 Aula V9 (via Venezian) |
Martedì | 10:30 - 12:30 Aula V1 (via Venezian) |
Martedì | 13:30 - 17:30 Aula 309 (via Celoria) |
Giovedì | 13.30 - 15:30 Aula V1 (via Venezian) |
Anni precedenti
- Anno accademico 2011/12
Contatti
Sabrina Gaito | ricevimento su appuntamento |
Matteo Zignani | ricevimento su appuntamento |