Servizi per la didattica
PORTALE DELLA DIDATTICA

Network modelling and simulation

01QWNBG

A.A. 2019/20

Course Language

English

Course degree

Master of science-level of the Bologna process in Communications And Computer Networks Engineering - Torino

Course structure
Teaching Hours
Lezioni 80
Esercitazioni in laboratorio 40
Teachers
Teacher Status SSD h.Les h.Ex h.Lab h.Tut Years teaching
Ajmone Marsan Marco Giuseppe Professore Ordinario ING-INF/03 60 0 0 0 4
Teaching assistant
Espandi

Context
SSD CFU Activities Area context
ING-INF/03 12 B - Caratterizzanti Ingegneria delle telecomunicazioni
2018/19
Il corso ha l’obiettivo di fornire allo studente le competenze e le capacita` operative per l’analisi quantitativa delle prestazioni di reti di calcolatori, reti di telecomunicazioni e sistemi informatici distribuiti. Tali competenze costituiscono il prerequisito per il progetto ed il dimensionamento di tali sistemi. Il corso quindi mette lo studente nelle condizioni di comprendere le metodologie di analisi e progetto di reti e sistemi distribuiti e di affrontare il loro dimensionamento.
The course aims to provide the student with the skills and capabilities for quantitative analysis of the performance of computer networks, telecommunications networks and distributed IT systems. These skills are the prerequisite for the design and dimensioning of such systems. The course enables the student to understand the methodologies of analysis and design of distributed networks and systems and to address their dimensioning.
Il corso fornisce le competenze necessarie ad un ingegnere che deve affrontare problemi di analisi e progetto di reti di calcolatori, reti di telecomunicazioni e sistemi informatici distribuiti. In particolare il corso ha come obiettivi: i) lo studio della teoria delle code elementare e la sua applicazione per lo sviluppo di modelli analitici di semplici reti; ii) lo studio di principi e di tecniche di base della simulazione al calcolatore. Durante il corso, sono affrontate le problematiche della simulazione in generale; in seguito, lo studente impara a usare uno dei principali software OpenSource di simulazione per reti di comunicazioni, OMNET++, attraverso il quale affronta la simulazione di alcuni casi di studio di rilievo nell’ambito di protocolli e servizi offerti dalla rete Internet. Piu` in dettaglio, le competenze che lo studente acquisisce sono le seguenti: 1. Conoscenza dei concetti e degli strumenti di base indispensabili per descrivere e risolvere problemi caratterizzati da evoluzioni temporali non-deterministiche di fenomeni di diverse tipologie, quali tempi di attesa o di svolgimento di un servizio (con particolare attenzione ai casi di Internet a della telefonia mobile), il numero di fallimenti o successi nel tempo o il conteggio del numero di guasti di componenti e sistemi di rete. 2. Conoscenza di strumenti elementari di modellistica stocastica, basati su modelli a coda. 3. Conoscenza delle nozioni di base sulla struttura di un simulatore. 4. Conoscenza delle caratteristiche delle varie tipologie di simulatori. 5. Conoscenza di potenzialità e limitazioni dell’uso di simulatori per lo studio delle reti di comunicazione. 6. Conoscenza del simulatore OMNET++ attraverso dimostrazioni in aula e l’uso individuale mirato alla realizzazione di progetti di simulazione. 7. Abilità nel definire ed analizzare semplici modelli stocastici per la descrizione di tempi di attesa in teoria delle code o in teoria dell'affidabilità (delle reti o di sistemi distribuiti). 8. Capacità di capire il significato dei valori assunti dai parametri e degli oggetti matematici ottenibili al termine delle analisi. 9. Capacità di formulare e risolvere modelli a coda per reti e sistemi distribuiti. 10. Capacità di sviluppare autonomia di giudizio, sia nella scelta della tecnica modellistica da utilizzare, sia nella scelta dell'adeguato livello di astrazione nella creazione del modello del sistema, al fine di garantire la possibilità di esaminare il sistema in tempi realistici mantenendo al contempo il modello simile al sistema reale. 11. Abilità nell’impostare in modo autonomo simulazioni di reti, anche complesse, usando i moduli a disposizione nel simulatore OMNET++. 12. Abilità di sviluppare moduli ex-novo per il simulatore OMNET++. 13. Abilità di analizzare i risultati di simulazione e valutarne l’attendibilità.
The course provides the necessary skills for an engineer to address the analysis and design of computer networks, telecommunications networks and distributed IT systems. In particular, the course aims at: i) studying elementary queueing theory and its application for the development of analytic models of simple networks; Ii) studying the principles and basic techniques of computer simulation. During the course, a general overview of computer network simulation is provided. Later, the student learns to use one of the leading OpenSource simulation software for communications networks, OMNET ++, through which the student learns how to simulate some simple case studies of the protocols and services offered by the Internet. More in detail, the skills that the student acquires are as follows: 1. Knowledge of essential concepts and tools to describe and solve problems characterized by non-deterministic time evolution of different types of phenomena, such as waiting times or service times (with particular focus on Internet and Mobile Networks use cases), the number of failures or successes over time, or the number of failures of network components and systems. 2. Knowledge of basic stochastic modeling tools based on queueing models. 3. Basic Knowledge of the structure of a simulator. 4. Knowledge of the characteristics of the various types of simulators. 5. Knowledge of the potentialities and limitations of the use of simulators for the study of communication networks. 6. Knowledge of the OMNET ++ simulator through classroom demonstrations and individual use aimed at the completion of simulation projects. 7. Ability to define and analyze simple stochastic models for the description of waiting times according to queueing theory or reliability theory (of networks or distributed systems). 8. Ability to understand the meaning of the values taken by the mathematical parameters and objects output at the end of the analysis. 9. Ability to formulate and solve queueing models for distributed networks and systems. 10. Ability to autonomously choose modeling techniques to be used, as well as appropriate abstraction levels in the design of the system model, with the goal of ensuring the possibility to evaluate the system in a manageable time while keeping the model adherent to the real system. 11. Ability to independently configure network simulations, even complex ones, using the available modules in the OMNET ++ simulator. 12. Ability to develop new modules for the OMNET ++ simulator. 13. Ability to analyze simulation results and evaluate their reliability.
Prerequisiti indispensabili per poter seguire con profitto il corso sono l'aver frequentato e sostenuto un esame di calcolo di probabilità di base e di processi stocastici, con particolare attenzione alle catene di Markov tempo continue. E’ necessaria la conoscenza dei linguaggi di programmazione C e C++. È indispensabile la conoscenza delle architetture di reti e di sistemi distribuiti, ed in particolare delle reti basate sui protocolli TCP/IP.
Prerequisites include having taken and passed basic probability and stochastic process exams, with particular focus to continuous time Markov chains. Knowledge of the C and C ++ programming languages is a strong prerequisite. Likewise, knowledge of network architectures and distributed systems, and in particular of TCP / IP based networks, is required.
Gli argomenti trattati nelle lezioni e relativo peso in ore sono i seguenti. Il corso è diviso in due parti, di 60 ore ciascuna. La prima parte affronta le seguenti tematiche: • Introduzione alla teoria delle code e concetti di base (4 ore lezione) • Code Markoviane (M/M/1, M/M/c, M/M/c/0, etc) (12 ore lezione, 6 ore esempi ed esercizi) • Formula di Little, formule di Erlang e di Engset (6 ore lezione, 2 ore esempi ed esercizi) • Code M/G/1, G/M/c (4 ore lezione, 2 ore esempi ed esercizi) • Reti di code Markoviane (10 ore lezione, 6 ore esempi ed esercizi) • Modelli di reti TCP/IP e di reti cellulari (8 ore) La seconda parte affronta le seguenti tematiche: • Introduzione alle tecniche di simulazione (4 ore) • Classificazione dei simulatori (8 ore) o Simulatori ad eventi discreti o Simulatori a passaggio di messaggi • Generatori di numeri pseudo-casuali (6 ore) o Tecniche di generazione di numeri pseudo-casuali o Test statistici di casualità • Analisi del transitorio e intervalli di confidenza (6 ore) • Il simulatore OMNET++: architettura e sintassi di descrizione delle simulazioni (16 ore) • Laboratorio sui modelli di simulazione di reti di comunicazione (20 ore)
The course is divided into two halves, each 60-hour long. The first half addresses the following topics: • Introduction to queues and general concepts (4 hours) • Markovian queues (M/M/1, M/M/c, M/M/c/0, etc) (12 hours of classes plus 6 hours of examples and problems) • Little’s formula, Erlang and Engset formulas (6 plus 2) • M/G/1, G/M/c queues (4 plus 2) • Markovian queuing networks (10 plus 6) • Markovian models of wired and wireless networks (8 hours) The second half addresses the following topics: • Introduction to simulation techniques (4h) • Classification of simulators (8h) - Discrete-event simulators - Message-passing simulators • Pseudo-random number generators (6h) - Techniques to generate pseudo-random variables - Statistical tests on pseudo-number generators • Transient analysis and confidence intervals (6h) • The OMNET++ simulator: architectures and simulation description syntax (16h) • Coding lab on modelling and simulating communication networks (20h)
La prima parte del corso comprende lezioni ed esercitazioni in aula. Le lezioni affrontano gli aspetti teorici, mentre le esercitazioni consistono nella soluzione di problemi. La seconda parte del corso prevede circa 40 ore sulla teoria della simulazione, e 20 ore di laboratorio di programmazione, articolato in piccoli gruppi, durante le quali agli studenti è richiesto lo sviluppo di un progetto di simulazione.
The first half of the course includes lectures and exercise sessions in classroom. Lectures will be devoted to theory, while exercise sessions will be devoted to problem solutions. The second half of the course includes approximately 40 hours on simulation theory, and 20 hours of coding lab, organized into small groups, during which students are required to develop a simulation project.
Durante lo svolgimento del corso saranno forniti agli studenti i lucidi e le dispense utilizzati a lezione. Alcuni testi utili per approfondimenti sono i seguenti: •Sheldon N. Ross, Stochastic processes, John Wiley, qualsiasi edizione •William, J. Stewart, Probability, Markov Chains, Queues, and Simulation: The Mathematical Basis of Performance Modeling •J. Banks, J.S. Carson, B. Nelson, D. Nicol, Discrete-Event System Simulation, Prentice Hall •OMNET++ User Manual – disponibile online su www.omnetpp.org
The teaching material (slides of the lectures, exercises and examples of written exams, both with solutions) will be made available by the class teachers on the didattica web portal. The following books are useful as a reference: • Sheldon N. Ross, Stochastic processes, Ed. John Wiley, any edition. • William J. Stewart, Probability, Markov Chains, Queues, and Simulation: The Mathematical Basis of Performance Modeling • J. Banks, J.S. Carson, B. Nelson, D. Nicol, Discrete-Event System Simulation, Prentice Hall • OMNET++ User Manual – available online at www.omnetpp.org
Modalità di esame: prova scritta; progetto di gruppo;
L’esame è diviso in due parti separate, una per ciascuna delle due parti del corso. • La prima parte riguarda i modelli analitici: è esclusivamente scritta e richiede la soluzione di alcuni problemi analoghi a quelli affrontati in aula (è permessa la consultazione di libri e appunti durante la prova scritta; il voto massimo è 30/30 e concorre alla determinazione del voto finale del corso per il 50%). Questa prima prova consente di verificare le competenze 1 e 2 e le abilita`/capacita` 7, 8 e 9. • La seconda parte riguarda la simulazione: consiste in una prova scritta, da svolgersi contestualmente alla prova scritta della prima parte, con domande aperte sugli aspetti teorici e pratici della simulazione (è permessa la consultazione di libri e appunti durante la prova scritta; il voto massimo è 30/30 e corrisponde al 25% del voto finale) e in una relazione scritta sui progetti di simulazione di gruppo, da consegnare prima della sessione di esame entro le date indicate dal docente, seguita dalla relativa discussione orale (25% del voto finale). I punti vengono assegnati in base alla qualità della relazione scritta, alla correttezza del codice e alla conoscenza del codice. Nessun punto viene assegnato ai progetti consegnati dopo la scadenza. La durata della prova scritta su modelli analitici e simulazione è di DUE ore. Per superare l’esame è necessario ottenere la sufficienza in ciascuna delle due Parti.
Exam: written test; group project;
The final exam consists of two parts, one for each of the two parts of the course. • The first part concerns analytical models: it is a written test and it requires the solution of problems similar to those discussed during classes (students are allowed the use of books and notes during the written test; the maximum mark is 30/30 and it constitutes 50% of the final mark of the course). This first part is aimed at testing skills 1 and 2 and skills / capacities 7, 8 and 9. • The second part concerns the simulation of computer networks: it consists of a written test, to be taken jointly with the first part test, with open questions on theoretical and practical aspects of the simulation (students are allowed the use of books and notes during the written test; the maximum mark is 30/30 and it amounts to 25% of the final mark) and a written report on group simulation projects, to be delivered before the exam session by the dates indicated by the teacher, followed by its oral discussion (25% of the final mark). Points are awarded based on the quality of the report, correctness of the code and knowledge of the code. No points are awarded to projects handed in after the deadline. This second part is aimed at testing skills 3, 4, 5 and 6 and abilities / capabilities 10, 11, 12 and 13. The duration of the joint written test about analytical models and simulation is TWO hours. During the test students can use books, slides of the lectures, class notes, as well as their own notes. To pass the exam students need to get a “pass” mark in each of the two parts.


© Politecnico di Torino
Corso Duca degli Abruzzi, 24 - 10129 Torino, ITALY
m@il