Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2018/2019
Scuola Scuola di Ingegneria Industriale e dell'Informazione
Insegnamento 091038 - SWITCHING AND ROUTING
Docente Maier Guido Alberto
Cfu 5.00 Tipo insegnamento Monodisciplinare

Corso di Studi Codice Piano di Studio preventivamente approvato Da (compreso) A (escluso) Insegnamento

Obiettivi dell'insegnamento

The course addresses the study of switching and routing systems through a methodological approach.

Fundamental concepts about the internal architectures of routers and switches are first given. The focus of the course is on the approaches and methodologies used to carry out the functions of switching and routing of traffic flows within that equipment. Switching theory is explained to understand the most common interconnection structures. Efficient algorithms for address look-up, packet-flow classification and buffering management are presented. The new switching architectures based on the Software Defined Networking paradigm are then introduced and compared with the traditional implementations.

The course also comprises hands-on experimental activity: the basic knowledge and tools required for this activity are presented and explained during the laboratory hours.

Risultati di apprendimento attesi

1. Knowledge and understanding

Students will learn how to:

- Familiarize with theorems and properties of the switching network theory

- Exploit advanced logical structures to effectively perform searches in a table

- Describe the main functions needed in a router with relation to the IP network layer

- Identify the main subsystems of packet-switching equipment, focusing in particular on the router architecture

- Familiarize with the basic features of the Software Defined Networking (SDN) paradigm and of the OpenFlow protocol

2. Applying knowledge and understanding

Students will be able to:

- Apply effective algorithms to perform the functions of address lookup and packet classification

- Design and compare various switching-fabric architectures

- Place the buffers in a switch or a router in an optimal way and perform scheduling by smart algorithms

- Develop an SDN switch (focusing in particular on the OpenFlow architectures) and a controller and related net apps needed to implement given functions

- Build and run a virtual testbed to test SDN OpenFlow switches

3. Making judgement

Students will be able to:

- Understand the trade-off between different complexity metrics (namely, execution and reconfiguration time, memory occupation) in algorithms for address lookup and packet classification

- Understand the trade-off between blocking properties and cost in switching fabrics

- Appreciate the main differences between the classical and the SDN paradigm when applied to switching and routing

4. Communication

Students will learn to:

- Orally report and critically discuss all the topics covered by the course

- Give evidence of what has been learned by demonstrating algorithms in simple examples during the oral exam

- Work in a team and present the work done to other colleagues

Argomenti trattati


1 – Introduction

Architecture of the Internet. Router structure: design principles and expected performance

2 – Interconnection networks

Taxonomy of network interconnection: mono-stage and multi-stage networks, network equivalence and isomorphism. Multistage networks with partial and full interconnection. (mentioning Banyan networks and network equivalences)

3 – Multi-stage networks

Three-stage networks. Paull and Slepian-Duguid theorem. Multi-stage networks with full interconnection: Clos theorem and recursive construction

4 – Rouitng of IP datagrams

Structure of IP addressing. Algorithms with tries. Algorithms based on trees and prefixes. Hardware algorithms

5 – Packet classification and traffic handling

Classifiers. Classification based on tries. Geometric algorithms. Heuristic algorithms. Network services and quality-of-service parameters

7 – Fundamentls of packet switching

Classification of switching systems. Buffering strategies. Input queueing, output queueing, shared queueing

8 – Scheduling in input-queueing switches

Scheduling in VOQ switches. Algorithms for maximum matching and maximal matching

9 – Switching and routing in the Software Defined Networking era

Fundamentals of SDN (mentioning NFV). The OpenFlow switches. SDN controllers and net apps.


In the exercise sessions, guidelines will be provided to students on how to showcase the learned algorithms on simple examples, so to prove the achievement of the learning outcomes related to logic.


1 - Lab tools: Virtual Box, MiniNet

2 - The Ryu framework

3 - Skeleton controller to develop the projects

4 - Project assignment and development (teamwork, under the assistance of a project tutor)

5 - Software checks and project testing (teamwork, under the assistance of a project tutor)

The experimental hands-on and team-work oriented commitment represents a strong innovative-teaching feature of this course. Some elements of active classroom will be also introduced in the course (e.g. on-line assessment of knowledge and student discussion during lectures).

Video recordings of leectures will be available to all students.




It is stringly suggested that students know the principles of networking, Internet and IP protocol. However, during the course a brief synopsis on Internet basics will be provided.

Modalità di valutazione

The verification of knowledge for the course content consists of a test at the end of the course and the completion of a project activity. The test is an oral examination on the subjects covered by the course.

For the experimental activity, students are required to team-work on projects in which they implement switching and routing functionalities by Software Defined Networking (SDN) techniques. Each team is assigned a specific task and has to develop a customized Ryu-controller version and a set of net applications to test the system. The developed software is first tested in an emulated network that students can implement at home by MiniNet; at the end, the software is also tested in a hardware OpenFlow network testbed at the Department's lab. Each team has to defend the project in a final presentation in front of the other colleagues and of the professor.

The final score will be the mean of the two scores obtianed by each student in the oral exam and in the project.

In case of negative evaluation the student is admitted to the following tests of the academic year.


Risorsa bibliografica obbligatoriaChao, Liu, High Performance Switches and Routers, Editore: John Wiley & Sons, Anno edizione: 2007
Risorsa bibliografica obbligatoriaPattavina, Switching Theory, Architectures and Performance in Broadband ATM Networks, Editore: John Wiley & Sons, Anno edizione: 1998
Risorsa bibliografica obbligatoriaMaterial distributed by the lecturer

Forme didattiche
Tipo Forma Didattica Ore di attività svolte in aula
Ore di studio autonome
Laboratorio Informatico
Laboratorio Sperimentale
Laboratorio Di Progetto
Totale 50:00 75:00

Informazioni in lingua inglese a supporto dell'internazionalizzazione
Insegnamento erogato in lingua Inglese
Disponibilità di materiale didattico/slides in lingua inglese
Disponibilità di libri di testo/bibliografia in lingua inglese
Possibilità di sostenere l'esame in lingua inglese
Disponibilità di supporto didattico in lingua inglese
schedaincarico v. 1.6.5 / 1.6.5
Area Servizi ICT