Master of science-level of the Bologna process in Communications And Computer Networks Engineering (Ingegneria Telematica E Delle Comunicazioni) - Torino
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.
This course provides students with skills and capabilities for quantitative performance analysis of computer networks, telecommunications networks and distributed IT systems. These skills are prerequisites for design and dimensioning of such systems. This course enables students to understand the methodologies for analysis and design of distributed networks and systems and to address their dimensioning.
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.
This course provides the necessary skills for an engineer to address 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 theory.
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.
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.
Prerequisites include having taken and passed basic probability and stochastic process exams, with particular focus on 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.
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)
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)
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.
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.
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
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 references:
• 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 orale facoltativa; Prova scritta su carta con videosorveglianza dei docenti; Elaborato progettuale in gruppo;
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 one hour.
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.
Exam: Optional oral exam; Paper-based written test with video surveillance of the teaching staff; Group project;
The final exam consists of a written test and programming test.
The written test is divided in two parts, one for each of the two parts of the course, to be taken jointly.
• The first part of the written test concerns analytical models: it requires the solution of problems similar to those discussed during classes; the maximum mark is 14. This first part is aimed at testing skills 1 and 2 and skills / capacities 7, 8 and 9.
• The second part of the written test concerns the simulation of computer networks: it requires the solution of a numerical or conceptual problem on theoretical and practical aspects of the simulation; The maximum mark is 6. This second part is aimed at testing skills 3, 4, 5 and 6 and abilities / capabilities 10, 11, 12 and 13.
The programming test consists of two mutually exclusive tests. The student must choose either:
- 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. Points are awarded based on the quality of the report, correctness of the code and knowledge of the code verified in the oral discussion. No points are awarded to projects handed in after the deadline. The maximum mark is 12.
or:
- an oral exam aimed at verifying knowledge of OMNET++ programming. The maximum mark is 3 (obviously seen as alternate mark to the written report)
The duration of the joint written test about analytical models and simulation is one hour.
During the test students can use books, slides of the lectures, class notes, as well as their own notes.
Modalità di esame: Prova scritta (in aula); Prova orale facoltativa; Prova scritta su carta con videosorveglianza dei docenti; Elaborato progettuale in gruppo;
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 one hour.
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.
Exam: Written test; Optional oral exam; Paper-based written test with video surveillance of the teaching staff; Group project;
The final exam consists of a written test and programming test.
The written test is divided in two parts, one for each of the two parts of the course, to be taken jointly.
• The first part of the written test concerns analytical models: it requires the solution of problems similar to those discussed during classes; the maximum mark is 14. This first part is aimed at testing skills 1 and 2 and skills / capacities 7, 8 and 9.
• The second part of the written test concerns the simulation of computer networks: it requires the solution of a numerical or conceptual problem on theoretical and practical aspects of the simulation; The maximum mark is 6. This second part is aimed at testing skills 3, 4, 5 and 6 and abilities / capabilities 10, 11, 12 and 13.
The programming test consists of two mutually exclusive tests. The student must choose either:
- 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. Points are awarded based on the quality of the report, correctness of the code and knowledge of the code verified in the oral discussion. No points are awarded to projects handed in after the deadline. The maximum mark is 12.
or:
- an oral exam aimed at verifying knowledge of OMNET++ programming. The maximum mark is 3 (obviously seen as alternate mark to the written report)
The duration of the joint written test about analytical models and simulation is one hour.
During the test students can use books, slides of the lectures, class notes, as well as their own notes.