Questo insegnamento presenta le architetture, gli algoritmi e i protocolli più diffusi per la realizzazione di reti di calcolatori e di comunicazione, a partire da sistemi di trasmissione a livello fisico, fino ad arrivare alle più diffuse applicazioni e relativi protocolli di comunicazione. L'obiettivo dell'insegnamento è fornire agli studenti gli elementi necessari alla comprensione del funzionamento delle reti di calcolatori e di comunicazione, con particolare attenzione alla rete Internet.
The course describes the most common architectures, algorithms and protocols used to implement computer networks, starting from the physical layer up to the most popular application layer protocols. The course goal is to give the students the elements needed to understand how computer and communication networks work, with particular emphasis to the Internet.
• Concetti generali alla base delle reti di calcolatori: classificazione basata sull'area geografica coperta, topologie di rete, tecniche di commutazione a pacchetto e a circuito, tecniche di multiplazione e di accesso multiplo, modelli di servizio di tipo client-server e peer-to-peer, architetture stratificate di protocolli, caratterizzazione del traffico di rete e requisiti di qualità di servizio.
• Principali tipi di canali trasmissivi, tecniche di codifica dei dati, reti di accesso e di trasporto.
• Principali tecniche di recupero degli errori e di controllo di flusso: protocolli a finestra ARQ.
• Principali protocolli di livello collegamento e architetture e protocolli per reti locali e interconnessione di reti locali.
• Protocollo IP: protocollo di livello rete in Internet, algoritmi e protocolli di instradamento, indirizzamento e traduzione di indirizzi in Internet, Multicast IP.
• Protocollo TCP e UDP: Protocolli di livello trasporto in Internet, algoritmi e problematiche.
• Protocolli per applicazioni in Internet: SMTP, POP e IMAP, HTTP, DNS, Applicazioni P2P, Comunicazioni multimediali, VoIP, SIP.
La capacità di applicare le conoscenze sarà verificata mediante esercitazioni in aula e in laboratorio.
The student will gain knowledge on:
• General concepts of computer networks: network classification based on the covered area, network topologies, switching techniques (circuit and packet), multiplexing and multiple access techniques, service models (client-server, peer-to-peer), layered protocol architectures, traffic characterization and QoS requirements.
• Transmission channels, bit encoding techniques, access and transport networks.
• Error recovery and flow control techniques: ARQ window protocols.
• Data-link layer protocols.
• Local Area Networks: architecture, protocols, interconnection.
• Routing algorithms and protocols. Network protocols in the Internet, IP addressing and translation, Multicast IP.
• Internet transport layer protocols.
• Internet application layer protocols.
The ability to apply the gained knowledge will be verified through lab experience and class exercise on course subjects.
Lo studente deve avere una conoscenza elementare sul funzionamento di un sistema di elaborazione, conoscere gli elementi base della rappresentazione dei numeri sui calcolatori, ed essere in grado di effettuare le conversioni decimale-binario e binario-decimale. Inoltre, è anche richiesta la conoscenza del concetto di spettro di frequenza, e delle tecniche di campionamento dei segnali. Infine, sono richieste conoscenze elementari di fisica, con particolare riferimento all'ottica ed all'elettromagnetismo.
Basic skills in computer engineering (fist year course level). In particular, the student should be able to perform decima-to-binary and binary-to-decimal conversions, and he/she should have a basic understanding of how a computer works. Understanding of concepts such as frequency spectrum, its energetic interpretation and signal sampling is also requested. The student should also be familiar with basic physics concepts related to optics and electromagnetic fields.
Gli argomenti trattati a lezione sono i seguenti, divisi in due parti:
Parte I: Fondamenti e reti di accesso
• Concetti generali alla base delle reti di calcolatori: classificazione basata sull'area geografica coperta e topologie, tecniche di commutazione (pacchetto e circuito), tecniche di multiplazione, modelli di servizio (client-server, peer-to-peer), architetture a strati di protocolli, caratterizzazione del traffico e requisiti di qualità di servizio. (1,6 CFU)
• Livello fisico: Principali tipi di canali trasmissivi e relative tecniche di codifica, reti di accesso con e senza fili, reti di trasporto. (0,8 CFU)
• Livello data-link: principi di recupero di errore e controllo di flusso, protocolli per canali punto-punto, architetture e protocolli per reti locali e interconnessione di reti locali. (1,6 CFU)
Parte II: Comunicazione end-to-end e applicazioni
• Protocolli di livello rete in Internet: IPv4 e ICMP, indirizzamento IP, DHCP, ARP, NAT, Multicast IP. (1,2 CFU)
• Strumenti per l’analisi di rete (0,2 CFU)
• Protocolli di livello trasporto (TCP e UDP). (0,7 CFU)
• Protocolli di livello applicativo (SMTP, POP e IMAP, HTTP, DNS, Applicazioni P2P, Comunicazioni multimediali, VoIP, SIP) (1 CFU)
• Esercitazioni di laboratorio (0,9 CFU)
Classroom lessons will cover the following topics:
- General concepts related to computer networks: classification based on the extension of the physical area covered, circuit and packet switching, connectionless and connection-oriented protocols, layered protocol architecture, requirements for the transmission of audio/video and non real-time data (1,6 CFU)
- Major physical media for data transmission, and related data encoding techniques (0,8 CFU)
- Data-link layer: principles of error recovery and flow control, point-to-point protocols, local area networks. (1,6 CFU)
- Network layer: IPv4, ICMP, ARP, and DHCP protocols, addressing schemes, NAT, Multicast IP. (1,2 CFU)
- Network Analysis tools (0,2 CFU)
- Transport layer: UDP and TCP protocols. (0,7 CFU)
- Application layer: HTTP, SMTP, POP and IMAP protocols, P2P applications, Multimedia communication, VoIP, SIP. (1 CFU)
- Laboratory (0,9 CFU)
Sono previste esercitazioni in aula (comprese nel dettaglio di suddivisione oraria indicato nella sezione precedente) che vertono prevalentemente sui seguenti argomenti:
• Tecniche di commutazione
• Funzionamento dei protocolli a finestra
• Previsione di sequenze di messaggi che vengono generati per realizzare operazioni avviate dall'utente, data una particolare configurazione della rete.
In laboratorio è prevista l'analisi di tracce di pacchetti catturati su rete locale, sia in modo passivo, sia a seguito di operazioni iniziate dall'utente.
Exercises in the classroom will cover the following topics:
- Switching techniques
- Sliding window protocols
- Sequence of messages expected to implement a given operation initiated by the user, given a particular network configuration.
Sessions in laboratory will cover packet analysis on real traffic, captured either in passive way or after specific commands entered by students.
Il materiale verrà fornito dal docente e sarà disponibile sul sito web del portale della didattica.
Testi consigliati per gli approfondimenti/esercitazioni:
• A. Pattavina: Reti di telecomunicazioni, Mc.Graw-Hill (in italiano)
• J.F. Kurose, K.W. Ross: Computer Networking: A Top-Down Approach Featuring the Internet, Pearson (disponibile in italiano e inglese)
• (per la prima parte del corso) A. Bianco, C. Casetti, P. Giaccone, Esercitazioni di reti telematiche, Capitoli 1-2-3, CLUT (in italiano)
• (per la seconda parte del corso) F. Risso, dispense di esercizi (in inglese, disponibili sul portale della didattica)
The teacher will distribute the course material, and it will be available on the web pages of the course.
Additional reading:
- A. Pattavina: Reti di telecomunicazioni, Mc.Graw-Hill (in italian)
- J.F. Kurose, K.W. Ross: Computer Networking: A Top-Down Approach Featuring the Internet
- A. Bianco, C. Casetti, P. Giaccone, Esercitazioni di reti telematiche, Capitoli 1-2-3, CLUT (in italian)
- F. Risso, Exercise collections (in english, available on the portal)
Slides; Video lezioni dell’anno corrente;
Lecture slides; Video lectures (current year);
E' possibile sostenere l’esame in anticipo rispetto all’acquisizione della frequenza
You can take this exam before attending the course
Modalità di esame: Prova scritta in aula tramite PC con l'utilizzo della piattaforma di ateneo;
Exam: Computer-based written test in class using POLITO platform;
...
Prova scritta di 60 minuti contenente 33 quiz a risposta multipla (1 punto in caso di risposta giusta, -1/3 di punto in caso di risposta sbagliata, 0 punti per ogni risposta non data). Il punteggio finale sarà arrotondato all'intero più vicino. Per ottenere la lode si dovrà conseguire un punteggio di almeno 31 punti.
Durante la prova verrà valutato il livello di comprensione dei concetti e degli argomenti esposti a lezione, attraverso sia domande teoriche che esercizi numerici, posti sotto forma di quiz a risposta multipla.
In caso il numero di iscritti ad un particolare appello sia limitato, i docenti potranno valutare lo svolgimento di un esame interamente in forma orale.
Il voto finale dovrà essere convalidato da una valutazione positiva della prova finale.
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Computer-based written test in class using POLITO platform;
1-hour written exam, including 28 multiple-choice questions. Correct answer: 1 point, wrong answer: -0.5 points, empty answer: 0 points.
Oral exam if the total mark of the written test is larger or equal than 16 points. This oral exam is mandatory for marks included in the range 16-20 points, while it is optional for larger marks. The oral exam can increase/decrease the mark of the written test for a maximum of 6 points.
In both exams, it will be evaluated the knowledge level of the explained concepts and topics, by means of both theoretical questions and numerical exercises, that can be given, during the written test, also in multiple-choice question form.
The final grade must be validated by a positive outcome of the final project.
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.