using erlang for distributed simulation for the
play

Using Erlang for Distributed Simulation for the Derivation of Fault - PowerPoint PPT Presentation

Motivation Theory Erlang Simulation Results Conclusion Using Erlang for Distributed Simulation for the Derivation of Fault Tolerance Measures Nils M ullner August 19, 2008 1 / 28 Motivation Theory Erlang Simulation Results


  1. Motivation Theory Erlang Simulation Results Conclusion Using Erlang for Distributed Simulation for the Derivation of Fault Tolerance Measures Nils M¨ ullner August 19, 2008 1 / 28

  2. Motivation Theory Erlang Simulation Results Conclusion Outline ◮ Motivation ◮ Theory ◮ Erlang ◮ Simulation ◮ Conclusion 2 / 28

  3. Motivation Theory Erlang Simulation Results Conclusion Motivation ◮ Why Fault Tolerance? 3 / 28

  4. Motivation Theory Erlang Simulation Results Conclusion Motivation ◮ Why Fault Tolerance? ◮ Why Simulation? 3 / 28

  5. Motivation Theory Erlang Simulation Results Conclusion Motivation ◮ Why Fault Tolerance? ◮ Why Simulation? ◮ Why Erlang? 3 / 28

  6. Motivation Theory Erlang Simulation Results Conclusion Fault Tolerance Measures ◮ Reliability, Availability, Safety, Trustworthiness MTBF MTTF MTTR operational repairing Fault multiple errors are possible in this period 4 / 28

  7. Motivation Theory Erlang Simulation Results Conclusion Fault Tolerance Measures ◮ Reliability, Availability, Safety, Trustworthiness MTBF MTTF MTTR operational repairing Fault multiple errors are possible in this period ◮ Essential for Critical Systems 4 / 28

  8. Motivation Theory Erlang Simulation Results Conclusion Fault Tolerance Measures ◮ Reliability, Availability, Safety, Trustworthiness MTBF MTTF MTTR operational repairing Fault multiple errors are possible in this period ◮ Essential for Critical Systems ◮ Masking, Nonmasking and Failsafe 4 / 28

  9. Motivation Theory Erlang Simulation Results Conclusion Fault Tolerance Measures ◮ Reliability, Availability, Safety, Trustworthiness MTBF MTTF MTTR operational repairing Fault multiple errors are possible in this period ◮ Essential for Critical Systems ◮ Masking, Nonmasking and Failsafe ◮ Masking: Safety and Liveness ◮ Nonmasking: Liveness ◮ Failsafe: Safety 4 / 28

  10. Motivation Theory Erlang Simulation Results Conclusion Simulation ◮ Easy and fast to implement 5 / 28

  11. Motivation Theory Erlang Simulation Results Conclusion Simulation ◮ Easy and fast to implement ◮ More accurate than analysis 5 / 28

  12. Motivation Theory Erlang Simulation Results Conclusion Simulation ◮ Easy and fast to implement ◮ More accurate than analysis ◮ Extremely scalable 5 / 28

  13. Motivation Theory Erlang Simulation Results Conclusion Simulation ◮ Easy and fast to implement ◮ More accurate than analysis ◮ Extremely scalable ◮ Suitable for a large class of problems 5 / 28

  14. Motivation Theory Erlang Simulation Results Conclusion Simulation ◮ Easy and fast to implement ◮ More accurate than analysis ◮ Extremely scalable ◮ Suitable for a large class of problems ◮ BUT: Requires (many) resources 5 / 28

  15. Motivation Theory Erlang Simulation Results Conclusion Erlang ◮ Distributed 6 / 28

  16. Motivation Theory Erlang Simulation Results Conclusion Erlang ◮ Distributed ◮ Concurrent 6 / 28

  17. Motivation Theory Erlang Simulation Results Conclusion Erlang ◮ Distributed ◮ Concurrent ◮ Functional 6 / 28

  18. Motivation Theory Erlang Simulation Results Conclusion Erlang ◮ Distributed ◮ Concurrent ◮ Functional ◮ λ -calculus [Barendregt and Barendsen, 2000] 6 / 28

  19. Motivation Theory Erlang Simulation Results Conclusion Erlang ◮ Distributed ◮ Concurrent ◮ Functional ◮ λ -calculus [Barendregt and Barendsen, 2000] ◮ pure (no side-effects, lazy evaluation) and eager 6 / 28

  20. Motivation Theory Erlang Simulation Results Conclusion Functional Languages ◮ Lisp, Haskell, Scheme, Erlang 7 / 28

  21. Motivation Theory Erlang Simulation Results Conclusion Functional Languages ◮ Lisp, Haskell, Scheme, Erlang ◮ Often combined with other paradigms (logical, imperative, object-oriented, constraint, distributed, and concurrent programming) 7 / 28

  22. Motivation Theory Erlang Simulation Results Conclusion Functional Languages ◮ Lisp, Haskell, Scheme, Erlang ◮ Often combined with other paradigms (logical, imperative, object-oriented, constraint, distributed, and concurrent programming) ◮ Functions are algorihms 7 / 28

  23. Motivation Theory Erlang Simulation Results Conclusion Functional Languages ◮ Lisp, Haskell, Scheme, Erlang ◮ Often combined with other paradigms (logical, imperative, object-oriented, constraint, distributed, and concurrent programming) ◮ Functions are algorihms ◮ Algorithms can be splitted into subalgorithms 7 / 28

  24. Motivation Theory Erlang Simulation Results Conclusion Functional Languages ◮ Lisp, Haskell, Scheme, Erlang ◮ Often combined with other paradigms (logical, imperative, object-oriented, constraint, distributed, and concurrent programming) ◮ Functions are algorihms ◮ Algorithms can be splitted into subalgorithms ◮ Parallelization by modularizing programs 7 / 28

  25. Motivation Theory Erlang Simulation Results Conclusion Functional Languages ◮ Lisp, Haskell, Scheme, Erlang ◮ Often combined with other paradigms (logical, imperative, object-oriented, constraint, distributed, and concurrent programming) ◮ Functions are algorihms ◮ Algorithms can be splitted into subalgorithms ◮ Parallelization by modularizing programs ◮ Easy to verify 7 / 28

  26. Motivation Theory Erlang Simulation Results Conclusion So, what do we want? ◮ Simulation with 8 / 28

  27. Motivation Theory Erlang Simulation Results Conclusion So, what do we want? ◮ Simulation with ◮ a Functional Language to 8 / 28

  28. Motivation Theory Erlang Simulation Results Conclusion So, what do we want? ◮ Simulation with ◮ a Functional Language to ◮ derive Fault Tolerance Measures 8 / 28

  29. Motivation Theory Erlang Simulation Results Conclusion Getting Results with Analytic Methods: Theory ◮ Model Distributed System as Markov Chain P_1 = > P_2 P_3 9 / 28

  30. Motivation Theory Erlang Simulation Results Conclusion Getting Results with Analytic Methods: Theory ◮ Model Distributed System as Markov Chain P_1 = > P_2 P_3 ◮ Suffers from state space explosion 9 / 28

  31. Motivation Theory Erlang Simulation Results Conclusion Getting Results with Analytic Methods: Theory ◮ Model Distributed System as Markov Chain P_1 = > P_2 P_3 ◮ Suffers from state space explosion ◮ Solution: Partition state space 9 / 28

  32. Motivation Theory Erlang Simulation Results Conclusion Getting Results with Analytic Methods: Theory ◮ Model Distributed System as Markov Chain P_1 = > P_2 P_3 ◮ Suffers from state space explosion ◮ Solution: Partition state space ◮ Problem: Abstraction hinders accuracy of results derived tremendously 9 / 28

  33. Motivation Theory Erlang Simulation Results Conclusion Theory ◮ Only conservative estimations 10 / 28

  34. Motivation Theory Erlang Simulation Results Conclusion Theory ◮ Only conservative estimations ◮ Not even close to reality... (cf. [Dhama et al., 2006]) 10 / 28

  35. Motivation Theory Erlang Simulation Results Conclusion Theory ◮ Only conservative estimations ◮ Not even close to reality... (cf. [Dhama et al., 2006]) ◮ Size of applicable topologies very limited 10 / 28

  36. Motivation Theory Erlang Simulation Results Conclusion Theory ◮ Only conservative estimations ◮ Not even close to reality... (cf. [Dhama et al., 2006]) ◮ Size of applicable topologies very limited ◮ Advantage: results are proven... 10 / 28

  37. Motivation Theory Erlang Simulation Results Conclusion Erlang 1/5 ◮ Development started in 1986 as Prolog Interpreter at Ericsson CSLab 11 / 28

  38. Motivation Theory Erlang Simulation Results Conclusion Erlang 1/5 ◮ Development started in 1986 as Prolog Interpreter at Ericsson CSLab ◮ A language for programming distributed fault-tolerant soft real-time non-stop applications. 11 / 28

  39. Motivation Theory Erlang Simulation Results Conclusion Erlang 1/5 ◮ Development started in 1986 as Prolog Interpreter at Ericsson CSLab ◮ A language for programming distributed fault-tolerant soft real-time non-stop applications. ◮ Purely Functional Language 11 / 28

  40. Motivation Theory Erlang Simulation Results Conclusion Erlang 1/5 ◮ Development started in 1986 as Prolog Interpreter at Ericsson CSLab ◮ A language for programming distributed fault-tolerant soft real-time non-stop applications. ◮ Purely Functional Language ◮ Interpreted or compiled 11 / 28

  41. Motivation Theory Erlang Simulation Results Conclusion Erlang 1/5 ◮ Development started in 1986 as Prolog Interpreter at Ericsson CSLab ◮ A language for programming distributed fault-tolerant soft real-time non-stop applications. ◮ Purely Functional Language ◮ Interpreted or compiled ◮ Hot Code Plugging 11 / 28

  42. Motivation Theory Erlang Simulation Results Conclusion Erlang 2/5 ◮ Focuses on parallelism and fault tolerance 12 / 28

  43. Motivation Theory Erlang Simulation Results Conclusion Erlang 2/5 ◮ Focuses on parallelism and fault tolerance ◮ Highly reliable (Switch AXD301 is 99 . 9999999% reliable, 31 ms/yr downtime) 12 / 28

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend