Lehrinhalte
Please attend one out of the two lectures plus the seminar to complete the module.
Lectures with tutorial
Lecture "Algorithms for Distributed Systems"
The lecture "Algorithms for Distributed Systems" is problem-oriented and structured into different fundamental principles, such as Distributed Coordination, Decentralization, Randomization, etc. Each lecture will cover a different basic problem (such as Load Balancing, Leader Election, Symmetry Breaking, etc., arising in various different applications, from the Internet over distributed data analytics to sensor networks) and will be self-contained.
The lecture revolves around fundamental problems and design principles. A tentative outline of the main topics to be covered in the course are
* Models for Distributed Systems: from shared-memory over datacenter applications to Internet-scale systems
* Algorithmic techniques for small ("shared memory") and large distributed systems ("distributed graph algorithms")
* Decentralization: why and how? Complexity Measures
* Randomization: why and how? Basic Tools
* Algorithms: Local Algorithms, Random Algorithms, Online Algorithms, Dynamic Programming
* Distributed Algorithms for Leader Election, Coloring, Maximal Independent Sets, Medium Access
* Resource Allocation and Embedding (e.g., energy, bandwidth, CPU)
* Social and Biological Networks: An Algorithmic Perspective
Lecture "Algorithms for Networked Systems"
The lecture "Algorithms for Networked Systems" is problem-oriented and structured around fundamental networking aspects (such as routing, forwarding medium access, etc.) of different networks (e.g., Internet, wireless, cryptocurrency networks, overlay networks, etc.). Each lecture will cover a different fundamental principle (such as use of randomization or indirection) and will be self-contained.
The lecture revolves around fundamental problems and design principles. A tentative outline of the main topics to be covered in the course are
* Network Models for Datacenter Networks, Sensor Networks, Wireless Networks, Mobile Networks etc.
* Robust Network Topology Design: Self-Stabilizing and Self-Optimizing Networks
* Randomization: why and how? Basic Tools
* Algorithms: Local Algorithms, Random Algorithms, Online Algorithms, Dynamic Programming
* Algorithms for Wireless Medium Access
* Resource Allocation and Embedding (e.g., energy, bandwidth, CPU)
* Flow & Congestion Control, Routing
* Theory of Border Gateway Protocols
* Algorithms for Cryptocurrency Networks
* TOR
* Social Networks: An Algorithmic Perspective
Seminar "Advanced Topics in Networked and Distributed Systems"
Given the popularity of data-driven applications (e.g., related to business, health and entertainment) and artificialintelligence, computing systems are becoming increasingly distributed and networked. This results in increasingly stringent performance and dependability requirements on such systems. In this seminar, we discuss emerging and innovative new approaches to improve the efficiency and security of distributed and networked systems. We will revisit the theoretical foundations of networked and distributed systems, the underlying fundamental algorithms and optimizations they rely on, and discuss their applicability in modern networks. We will also discuss recent proposals in the literature which aim to render distributed and networked systems more flexible and secure, and explore further optimization opportunities.
Contents:
The seminar revolves around fundamental problems and design principles. A tentative outline of the main topics to becovered in the course are
* Network algorithms and theory of networking
* Distributed algorithms and optimization
* Decentralization and scalability
* Emerging networking technology and applications, and their impact on models and optimizations