Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2019/2020
Scuola Scuola di Ingegneria Industriale e dell'Informazione
Insegnamento 054319 - SWITCHING AND ROUTING
Docente Pattavina Achille
Cfu 5.00 Tipo insegnamento Monodisciplinare
Didattica innovativa L'insegnamento prevede  1.0  CFU erogati con Didattica Innovativa come segue:
  • Blended Learning & Flipped Classroom

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

-        The general architecture of modern networks based on Software Defined Networking (SDN): data plane, control plane, network-application plane

2 – Data plane

-        Review of Internet and the IP layer

-        Router structure: design principles and expected performance

-        Elements of interconnection networks: Taxonomy (mono-stage and multi-stage networks). Multistage networks with partial and full interconnection. (mentioning Banyan networks).

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

-        Routing of IP datagrams: Structure of IP addressing. Algorithms with tries. Algorithms based on trees and prefixes. Hardware algorithms

-        Packet classification and traffic handling: Classifiers. Classification based on tries. Geometric algorithms. Heuristic algorithms. Network services and quality-of-service parameters

-        The OpenFlow switches

3 – Control plane

-        Fundamentals of SDN: north and south-bound interfaces, SDN controllers.

-        OpenFlow protocol. Alternative South-bound protocols (Netconf), Restful APIs

4 – Network application plane

-        Network applications: Network Services Abstraction Layer, Measurement and Monitoring

-        Introduction to Network Function Virtualization (NFV): NFV Reference Architecture, VNF Interfaces, VNF Scaling

-        Virtual Infrastructure managers (introduction to OpenStack). Service orchestrators

-        Usecases: Private Cloud Perspective, Service Provider Perspective, entrerprise networking, MPLS VPN, VXLAN, tunneling, SD-WAN



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.


Software laboratory

1 – Virtualization Lab tools: Virtual Box, MiniNet

2 – SDN controllers: The Ryu framework; ONOS and ODL (introduction)

3 - Skeleton controller to develop the projects

4 – OpenStack: simple


Project laboratory

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)


Innovative learning

The innovative learning action in the course will be provided by the following active-classroom forms:

-        Specific topics covered in a flipped-classroom form (e.g. Buffering in packet switching, including: buffering strategies (input, output, shared queueing), scheduling in VOQ switches (algorithms for maximum matching and maximal matching)

-        Blended-classroom exercise sessions (after an example explained by the teacher, students solves exercises and present and discuss results)

-        Active student participation to the software-laboratory sessions, bringing and working on their own device

-        On-line assessment of knowledge (via Kahoot) at the end of each section


Video recordings of most lectures 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 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 obtained by each student in the oral exam and in the project.

The participation of each student to innovative-learning classroom activities will be scored and will contribute to the final evaluation as an elective bonus.

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


Risorsa bibliografica obbligatoriaMaterial distributed by the lecturer
Risorsa bibliografica facoltativaChao, Liu, High Performance Switches and Routers, Editore: John Wiley & Sons, Anno edizione: 2007
Risorsa bibliografica facoltativaAchille Pattavina, Switching Theory, Architectures and Performance in Broadband ATM Networks, Editore: John Wiley & Sons, Anno edizione: 1998
Risorsa bibliografica facoltativaWilliam Stallings, Foundations of Modern Networking: SDN, NFV, QoE, IoT, and Cloud, Editore: Addison Wesley, Anno edizione: 2015

Available also in Kindle format

Software utilizzato
Nessun software richiesto

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.8.3 / 1.8.3
Area Servizi ICT