Network Application Diagnostics

B232 - Summer 23/24

Network Application Diagnostics - B2M32DSA

Credits 5
Semesters Winter
Completion Assessment + Examination
Language of teaching Czech
Extent of teaching 2P + 2C
Annotation
The first part of the course deals with complex network structures, their characteristics identification, with recognition of both structural static and dynamic patterns, and anomaly detection.
The second part of the course is focused on specification methods of static and dynamic behavior and their verification. The use of the methods is demonstrated on examples dealing with network application issues. The special treatment is dedicated not only to network and cloud applications, but also to posibilities of diagnostic process automation. The students gain sufficient skills in seminars where they solve practical problems in digital network domain.
Study targets
The course introduces mathematical, theoretical, and practical foundations required for solving of diagnostic system problems that can be modelled using complex network structures.
Course outlines
1. Introduction to diagnostics, testing, and verification of network applications.
2. Fundamental charakteristics of networks and models of random graphs.
3. Power distribution and preferential linking.
4. Network structure identification
5. Community detection
6. Ties prediction and network inference
7. Network dynamics and dynamic network processes
8. Specification system Alloy and its usage for network applications.
9. Dynamic behaviro specification using timed automata (system UPPAAL)
10. Specification and verification of protocols using system UPPAAL
11. Checking sequence of finite state machines
12. Finite state machine behavior identification
13. Tools for network testing and diagnostics, automation of processes
14. Diagnostics of network and cloud applications.
Exercises outlines
1. Student teams creation, development framework setting, basic libraries tutorial.
2. Variety type graph generation and path searching.
3. Rich club network nodes identification.
4. Computer communication network reconstruction.
5. Network partitioning and community detection
6. Communication patterns detection
7. Sensor network dynamic assessment.
8. Protocol specification and verification using Alloy.
9. Dynamic system specification using UPPAAL.
10. Protocol verification using UPPAAL.
11. State determination using special sequence of finite machines.
12. Finite machine reconstruction using active learning.
13. Test case design for multilayer network.
14. Seminar evaluation.
Literature
- WWW http://alloy.mit.edu/alloy/
- WWW http://www.uppaal.org/
- Software Abstractions - Logic, Language, and Analysis. Jackson, D. MIT Press, 2006
- Networks: An Introduction, M. E. J. Newman, Oxford University Press (2010)
- Networks, Crowds, and Markets: Reasoning about a Highly Connected World, Easley, D., Kleinberg, J.; Cambridge University Press, 2010
Requirements
- Knowledge of linear algebra and graph theory.
- Knowledge of network application and protocol fundamentals.