Roger Wattenhofer: Catalogue data in Autumn Semester 2017 |
Name | Prof. Dr. Roger Wattenhofer |
Field | Distributed Computing |
Address | Inst. f. Techn. Informatik u. K. ETH Zürich, ETZ G 96 Gloriastrasse 35 8092 Zürich SWITZERLAND |
Telephone | +41 44 632 63 12 |
wattenhofer@ethz.ch | |
URL | http://www.disco.ethz.ch |
Department | Information Technology and Electrical Engineering |
Relationship | Full Professor |
Number | Title | ECTS | Hours | Lecturers | |
---|---|---|---|---|---|
227-0102-00L | Discrete Event Systems | 6 credits | 4G | L. Thiele, L. Vanbever, R. Wattenhofer | |
Abstract | Introduction to discrete event systems. We start out by studying popular models of discrete event systems. In the second part of the course we analyze discrete event systems from an average-case and from a worst-case perspective. Topics include: Automata and Languages, Specification Models, Stochastic Discrete Event Systems, Worst-Case Event Systems, Verification, Network Calculus. | ||||
Learning objective | Over the past few decades the rapid evolution of computing, communication, and information technologies has brought about the proliferation of new dynamic systems. A significant part of activity in these systems is governed by operational rules designed by humans. The dynamics of these systems are characterized by asynchronous occurrences of discrete events, some controlled (e.g. hitting a keyboard key, sending a message), some not (e.g. spontaneous failure, packet loss). The mathematical arsenal centered around differential equations that has been employed in systems engineering to model and study processes governed by the laws of nature is often inadequate or inappropriate for discrete event systems. The challenge is to develop new modeling frameworks, analysis techniques, design tools, testing methods, and optimization processes for this new generation of systems. In this lecture we give an introduction to discrete event systems. We start out the course by studying popular models of discrete event systems, such as automata and Petri nets. In the second part of the course we analyze discrete event systems. We first examine discrete event systems from an average-case perspective: we model discrete events as stochastic processes, and then apply Markov chains and queuing theory for an understanding of the typical behavior of a system. In the last part of the course we analyze discrete event systems from a worst-case perspective using the theory of online algorithms and adversarial queuing. | ||||
Content | 1. Introduction 2. Automata and Languages 3. Smarter Automata 4. Specification Models 5. Stochastic Discrete Event Systems 6. Worst-Case Event Systems 7. Network Calculus | ||||
Lecture notes | Available | ||||
Literature | [bertsekas] Data Networks Dimitri Bersekas, Robert Gallager Prentice Hall, 1991, ISBN: 0132009161 [borodin] Online Computation and Competitive Analysis Allan Borodin, Ran El-Yaniv. Cambridge University Press, 1998 [boudec] Network Calculus J.-Y. Le Boudec, P. Thiran Springer, 2001 [cassandras] Introduction to Discrete Event Systems Christos Cassandras, Stéphane Lafortune. Kluwer Academic Publishers, 1999, ISBN 0-7923-8609-4 [fiat] Online Algorithms: The State of the Art A. Fiat and G. Woeginger [hochbaum] Approximation Algorithms for NP-hard Problems (Chapter 13 by S. Irani, A. Karlin) D. Hochbaum [schickinger] Diskrete Strukturen (Band 2: Wahrscheinlichkeitstheorie und Statistik) T. Schickinger, A. Steger Springer, Berlin, 2001 [sipser] Introduction to the Theory of Computation Michael Sipser. PWS Publishing Company, 1996, ISBN 053494728X | ||||
227-0555-00L | Fault Tolerance in Distributed Systems | 4 credits | 3G | R. Wattenhofer | |
Abstract | Fault-tolerance (failure models, consensus, agreement), replication (primary copy, 2PC, 3PC, Paxos, quorum systems), shared memory (spin locks, concurrency) | ||||
Learning objective | Become acquainted with pertinent technologies and architectures of fault-tolerant distributed systems. | ||||
Content | We discuss fault-tolerance issues (models, consensus, agreement) as well as replication issues (primary copy, 2PC, 3PC, Paxos, quorum systems, distributed storage) and problems with asynchronous multiprocessing (shared memory, spin locks, concurrency). | ||||
Prerequisites / Notice | This lecture takes place in the second half of the semester; the lecture is the second part of the lecture "Verteilte Systeme" (Distributed Systems, 252-0213-00L). Students may attend at most one of the two lectures. | ||||
252-0213-00L | Distributed Systems Diese Lehrveranstaltung wird im HS17 zum letzten Mal in dieser Form angeboten. | 8 credits | 6G + 1A | F. Mattern, R. Wattenhofer | |
Abstract | Distributed control algorithms (mutual exclusion, logical clocks), communication models (RPC, synchronous/asynchronous communication, broadcast, events, tupel spaces), middleware, service- and resource-oriented architectures (SOAP, REST), security, fault-tolerance (failure models, consensus), replication (primary copy, 2PC, 3PC, Paxos, quorum systems), shared memory (spin locks, concurrency). | ||||
Learning objective | Become acquainted with pertinent technologies and architectures of distributed systems. | ||||
Content | We present the characteristics and concepts of distributed systems, and discuss distributed control algorithms (flooding, mutual exclusion, logical clocks), communications models (remote procedure call, client-server models, synchronous and asynchronous communication), abstract communication principles (broadcast, events, tupel spaces), name services, communication middleware for open systems (e.g., REST, SOAP), infrastructure for ad hoc networking (JINI), cloud computing, and mechanisms for security and safety. Having a distributed system may permit getting away with failures and malfunctions of parts of the system. We discuss fault-tolerance issues (models, consensus, agreement) as well as replication issues (primary copy, 2PC, 3PC, Paxos, quorum systems, distributed storage) and problems with asynchronous multiprocessing (shared memory, spin locks, concurrency). To get familiar with message passing communication, some of the exercises will be devoted to a practical lab where participants will develop software for a mobile platform (smartphones). | ||||
252-0817-00L | Distributed Systems Laboratory In the Master Programme max.10 credits can be accounted by Labs on top of the Interfocus Courses. These Labs will only count towards the Master Programme. Additional Labs will be listed on the Addendum. | 10 credits | 9P | G. Alonso, T. Hoefler, F. Mattern, T. Roscoe, A. Singla, R. Wattenhofer, C. Zhang | |
Abstract | This course involves the participation in a substantial development and/or evaluation project involving distributed systems technology. There are projects available in a wide range of areas: from web services to ubiquitous computing including wireless networks, ad-hoc networks, RFID, and distributed applications on smartphones. | ||||
Learning objective | Gain hands-on-experience with real products and the latest technology in distributed systems. | ||||
Content | This course involves the participation in a substantial development and/or evaluation project involving distributed systems technology. There are projects available in a wide range of areas: from web services to ubiquitous computing including as well wireless networks, ad-hoc networks, and distributed application on smartphones. The goal of the project is for the students to gain hands-on-experience with real products and the latest technology in distributed systems. There is no lecture associated to the course. For information of the course or projects available, see https://www.dsl.inf.ethz.ch/ or contact Prof. Mattern, Prof. Wattenhofer, Prof. Roscoe or Prof. G. Alonso. |