Important Site Links


Information Trust Institute: University of Illinois at Urbana-Champaign

Short Course: Möbius: Modeling, Analyzing, and Simulating High-Availability Systems

GOAL: Give students an intense introduction to modeling systems using Möbius and stochastic activity networks. Provide enough background that they can begin to evaluate the availability, reliability, performance, and performability of their system designs by the end of the course.

PREREQUISITE: "Validating High-Availability Systems short course" is recommended, but not required for those with similar background. Basic C programming recommended.

FORMAT: The course will be a mixture of lecture/discussions and directed/open-ended exercises. Much of the course will be hands-on, with the instructor providing individual help on modeling with SANs and Möbius. The exercises will relate to a variety of different types of design. Students should bring their own evaluation/validation problem to solve, and e-mail a short description of the problem to the instructor at whs AT iti.uiuc.edu at least 10 days before the class. There will not be time to complete a large project, but there should be time to complete a small model, or begin work on a larger model, if this option is taken.

HIGH-LEVEL COURSE OUTLINE AND TIMETABLE:

(3 days - 24 hours class time)

DAY 1:

  1. Issues in Model-Based Validation of High-Availability Computer Systems/Networks (1 hour)
    1. Session goals
    2. Course format/schedule
    3. Basic definitions and terms, and differences between dependability, proper service, availability, and performability
    4. Approaches to validation
    5. Probability theory review
    6. The "art" of performance and dependability validation
    7. Overview of remainder of course
  2. Stochastic Activity Network Concepts (2.0 hours)
    1. Stochastic Petri nets: Basic definitions and examples
    2. Stochastic activity networks (SANs)
    3. Execution of SANs
    4. Specification of reliability, availability, and performability variables
    5. Simple example: Computer failure model
    6. Building larger models from SAN components: Composed models
  3. First Modeling Exercise: Mechanics of Modeling with Möbius (1.25 hours)
    1. Goal: Learn the mechanics of operating the Möbius modeling tool
    2. Procedure: Build and obtain results from a simple, pre-developed model. Obtain results that show how system availability can vary with input parameter values.
    3. During this exercise, the student will:
      1. Build a subnet
      2. Compose a model
      3. Create performance/dependability/performability variables
      4. Solve a model
  4. Solution by Simulation in Möbius (1 hour)
    1. Advantages and disadvantages of simulation, relative to other model solution methods
    2. Review of simulation fundamentals
    3. Confidence intervals about estimators: Statistical issues and pitfalls
    4. Rare events in simulation
    5. Simulation in Möbius
  5. Initial Case Studies and Examples - A Practical Introduction to Modeling with SANs and Möbius (1.25 hours)
    1. Basic approaches for building models
    2. Database system example
    3. "Faulty multiprocessor" example
    4. Representing non-exponential distributions as exponentials
  6. Second Modeling Exercise: Constructing a Möbius Model (2 hours) (During the modeling exercise, students will discuss their proposed projects with the instructor.)
    1. Goal: To learn how to translate a simple system description into a stochastic activity network and solve the model using Möbius and simulation
    2. Discussion/Solution: Second Modeling Exercise
      1. Demonstration of one solution to the second modeling exercise
      2. Discussion of questions raised while doing the second modeling exercise

DAY 2:

  1. Analytic/Numerical State-Based Modeling Using Möbius (3 hours)
    1. The need for analytic models: Rare events revisited
    2. Review of Markov process theory and fundamentals
    3. Methods for constructing state-level models from SANs
    4. Transient and steady-state solution methods
    5. Möbius options for analytical/numerical simulation
    6. Hints for effective analytical/numerical solution in Möbius
  2. Third Modeling Exercise: Issues in Analytical/Numerical Solution
    • Goal: Introduce students to issues that must be addressed when building SANs that are to be solved using analytical/numerical solution
  3. Case Study: Fault-Tolerant Multiprocessor System (1 hour)
    1. Problem description
    2. Problem solution
    3. Discussion of constructed model
    4. Model solution
  4. Fourth Modeling Exercise: Begin Work on Project of Student's Choosing (4 hours)
    • Issues to be addressed:
      1. Conversion of a textual description of a system into a model
      2. Use of composed model facility
      3. Interpretation of results

DAY 3:

  1. Möbius Tool Revisited: Advanced Features (1 hour)
    1. Advanced SAN features
      1. Reactivation
    2. Advanced Möbius features
      1. Parallelism
      2. Viewing results
      3. Report generation
      4. Model documentation
      5. Miscellaneous features
      6. Deterministic/exponential steady-state solvers
    3. Möbius organization and internals
  2. Continue work on Project of Student's Choosing (6 hours)
  3. Reprise: The Art of System Validation/Conclusions (0.5 hour)
    1. Review / choice of techniques
    2. The art of dependability evaluation
    3. Model validation
    4. Where to learn more

Instructor Biography

William H. Sanders is a Donald Biggar Willett Professor of Engineering and the Director of the Information Trust Institute at the University of Illinois. He is a professor in the Department of Electrical and Computer Engineering and the Coordinated Science Laboratory. He is a Fellow of the IEEE and the ACM. He serves as the Vice-Chair of IFIP Working Group 10.4 on Dependable Computing . In addition, he serves on the editorial board of Performance Evaluation , and is the Area Editor for Simulation and Modeling of Computer Systems for the ACM Transactions on Modeling and Computer Simulation . He is a past Chair of the IEEE Technical Committee on Fault-Tolerant Computing. Dr. Sanders's research interests include performance/dependability evaluation, dependable computing, and reliable distributed systems. He has published more than 160 technical papers in these areas. He is a co-developer of three tools for assessing the performability of systems represented as stochastic activity networks: METASAN, UltraSAN, and Möbius. Möbius and UltraSAN have been distributed widely to industry and academia; more than 300 licenses for the tools have been issued to universities, companies, and NASA for evaluating the performance, dependability, security, and performability of a variety of systems. He is also a co-developer of the Loki distributed system fault injector and the AQuA/ITUA middlewares for providing dependability/security to distributed and networked applications.