Suchergebnis: Katalogdaten im Herbstsemester 2022
Elektrotechnik und Informationstechnologie Master | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Master-Studium (Studienreglement 2018) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Computers and Networks The core courses and specialisation courses below are a selection for students who wish to specialise in the area of "Computers and Networks", see https://www.ee.ethz.ch/studies/main-master/areas-of-specialisation.html. The individual study plan is subject to the tutor's approval. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kernfächer These core courses are particularly recommended for the field of "Computers and Networks". You may choose core courses form other fields in agreement with your tutor. A minimum of 24 credits must be obtained from core courses during the MSc EEIT. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foundation Core Courses Fundamentals at bachelor level, for master students who need to strengthen or refresh their background in the area. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Nummer | Titel | Typ | ECTS | Umfang | Dozierende | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
227-0102-00L | Diskrete Ereignissysteme | W | 6 KP | 4G | L. Josipovic, L. Vanbever, R. Wattenhofer | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kurzbeschreibung | Einführung in Diskrete Ereignissysteme (DES). Zuerst studieren wir populäre Modelle für DES. Im zweiten Teil analysieren wir DES, aus einer Average-Case und einer Worst-Case Sicht. Stichworte: Automaten und Sprachen, Spezifikationsmodelle, Stochastische DES, Worst-Case Ereignissysteme, Verifikation, Netzwerkalgebra. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lernziel | 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. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Inhalt | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Skript | Available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literatur | [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-0121-00L | Kommunikationssysteme Findet dieses Semester nicht statt. | W | 6 KP | 4G | Noch nicht bekannt | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kurzbeschreibung | Informationstheorie, Signalraumanalyse, Basisbandübertragung, Passbandübertragung, Systembeispiel und Kanal, Sicherungsschicht, MAC, Beispiele Layer 2, Layer 3, Internet | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lernziel | Ziel der Vorlesung ist die Einführung der wichtigsten Konzepte und Verfahren, die in modernen digitalen Kommunikationssystemen Anwendung finden, sowie eine Übersicht über bestehende und zukünftige Systeme. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Inhalt | Es werden die untersten drei Schichten des OSI-Referenzmodells behandelt: die Bitübertragungsschicht, die Sicherungsschicht mit dem Zugriff auf das Übertragungsmedium und die Vermittlung. Die wichtigsten Begriffe der Informationstheorie werden eingeführt. Anschliessend konzentrieren sich die Betrachtungen auf die Verfahren der Punkt-zu-Punkt-Übertragung, welche sich mittels der Signalraumdarstellung elegant und kohärent behandeln lassen. Den Methoden der Fehlererkennung und –korrektur, sowie Protokollen für die erneute Übermittlung gestörter Daten wird Rechnung getragen. Auch der Vielfachzugriff bei geteiltem Übertragungsmedium wird diskutiert. Den Abschluss bilden Algorithmen für das Routing in Kommunikationsnetzen und der Flusssteuerung. Die Anwendung der grundlegenden Verfahren wird ausführlich anhand von bestehenden und zukünftigen drahtlosen und drahtgebundenen Systemen erläutert. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Skript | Vorlesungsfolien | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literatur | [1] Simon Haykin, Communication Systems, 4. Auflage, John Wiley & Sons, 2001 [2] Andrew S. Tanenbaum, Computernetzwerke, 3. Auflage, Pearson Studium, 2003 [3] M. Bossert und M. Breitbach, Digitale Netze, 1. Auflage, Teubner, 1999 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0124-00L | Embedded Systems | W | 6 KP | 4G | M. Magno, L. Thiele | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kurzbeschreibung | An embedded system is some combination of computer hardware and software, either fixed in capability or programmable, that is designed for a specific function or for specific functions within a larger system. The course covers theoretical and practical aspects of embedded system design and includes a series of lab sessions. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lernziel | Understanding specific requirements and problems arising in embedded system applications. Understanding architectures and components, their hardware-software interfaces, the memory architecture, communication between components, embedded operating systems, real-time scheduling theory, shared resources, low-power and low-energy design as well as hardware architecture synthesis. Using the formal models and methods in embedded system design in practical applications using the programming language C, the operating system ThreadX, a commercial embedded system platform and the associated design environment. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Inhalt | An embedded system is some combination of computer hardware and software, either fixed in capability or programmable, that is designed for a specific function or for specific functions within a larger system. For example, they are part of industrial machines, agricultural and process industry devices, automobiles, medical equipment, cameras, household appliances, airplanes, sensor networks, internet-of-things, as well as mobile devices. The focus of this lecture is on the design of embedded systems using formal models and methods as well as computer-based synthesis methods. Besides, the lecture is complemented by laboratory sessions where students learn to program in C, to base their design on the embedded operating systems ThreadX, to use a commercial embedded system platform including sensors, and to edit/debug via an integrated development environment. Specifically the following topics will be covered in the course: Embedded system architectures and components, hardware-software interfaces and memory architecture, software design methodology, communication, embedded operating systems, real-time scheduling, shared resources, low-power and low-energy design, hardware architecture synthesis. More information is available at https://pbl.ee.ethz.ch/education/embedded-systems.html . | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Skript | The following information will be available: Lecture material, publications, exercise sheets and laboratory documentation at https://pbl.ee.ethz.ch/education/embedded-systems.html . | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literatur | P. Marwedel: Embedded System Design, Springer, ISBN 978-3-319-56045-8, 2018. G.C. Buttazzo: Hard Real-Time Computing Systems. Springer Verlag, ISBN 978-1-4614-0676-1, 2011. Edward A. Lee and Sanjit A. Seshia: Introduction to Embedded Systems, A Cyber-Physical Systems Approach, Second Edition, MIT Press, ISBN 978-0-262-53381-2, 2017. M. Wolf: Computers as Components – Principles of Embedded System Design. Morgan Kaufman Publishers, ISBN 978-0-128-05387-4, 2016. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Voraussetzungen / Besonderes | Prerequisites: Basic knowledge in computer architectures and programming. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Advanced Core Courses Advanced core courses bring students to gain in-depth knowledge of the chosen specialization. They are MSc level only. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Nummer | Titel | Typ | ECTS | Umfang | Dozierende | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-2210-00L | Computer Architecture | W | 8 KP | 6G + 1A | O. Mutlu | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kurzbeschreibung | Computer architecture is the science & art of designing and optimizing hardware components and the hardware/software interface to create a computer that meets design goals. This course covers basic components of a modern computing system (memory, processors, interconnects, accelerators). The course takes a hardware/software cooperative approach to understanding and designing computing systems. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lernziel | We will learn the fundamental concepts of the different parts of modern computing systems, as well as the latest major research topics in Industry and Academia. We will extensively cover memory systems (including DRAM and new Non-Volatile Memory technologies, memory controllers, flash memory), new paradigms like processing-in-memory, parallel computing systems (including multicore processors, coherence and consistency, GPUs), heterogeneous computing, interconnection networks, specialized systems for major data-intensive workloads (e.g. graph analytics, bioinformatics, machine learning), etc. We will focus on fundamentals as well as cutting-edge research. Significant attention will be given to real-life examples and tradeoffs, as well as critical analysis of modern computing systems. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Inhalt | The principles presented in the lecture are reinforced in the laboratory through 1) the design and implementation of a cycle-accurate simulator, where we will explore different components of a modern computing system (e.g., pipeline, memory hierarchy, branch prediction, prefetching, caches, multithreading), and 2) the extension of state-of-the-art research simulators (e.g., Ramulator) for more in-depth understanding of specific system components (e.g., memory scheduling, prefetching). See the course website for detailed and complete content of past incarnations of the course: https://safari.ethz.ch/architecture | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Skript | All the materials (including lecture slides) will be provided on the course website: https://safari.ethz.ch/architecture/ The video recordings of the lectures are expected to be made available after lectures. See https://safari.ethz.ch/architecture for past examples. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literatur | We will provide required and recommended readings in every lecture. They will mainly consist of research papers presented in major Computer Architecture and related conferences and journals. See https://safari.ethz.ch/architecture for past examples. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Voraussetzungen / Besonderes | Digital Design and Computer Architecture (https://safari.ethz.ch/digitaltechnik) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0575-00L | Advanced Topics in Communication Networks | W | 6 KP | 2V + 2U | L. Vanbever, R. Jacob | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kurzbeschreibung | This course covers advanced topics and technologies in computer networks, both theoretically and practically. It is offered each Fall semester, with rotating topics. Repetition for credit is possible with consent of the instructor. In the next edition, the course will cover advanced topics in Internet routing and forwarding. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lernziel | The goals of this course is to provide students with a deeper understanding of the existing and upcoming Internet routing and forwarding technologies used in large-scale computer networks such as Internet Service Providers (e.g., Swisscom or Deutsche Telekom), Content Delivery Networks (e.g., Netflix) and Data Centers (e.g., Google). Besides covering the fundamentals, the course will be “hands-on” and will enable students to play with the technologies in realistic network environments, and even implement some of them on their own during labs and a final group project. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Inhalt | The course will cover advanced topics in Internet routing and forwarding such as: - Tunneling - Hierarchical routing - Traffic Engineering and Load Balancing - Virtual Private Networks - Quality of Service/Queuing/Scheduling - Fast Convergence - Network virtualization - Network programmability (OpenFlow, P4) - Network measurements The course will be divided in two main blocks. The first block (~8 weeks) will interleave classical lectures with practical exercises and labs. The second block (~6 weeks) will consist of a practical project which will be performed in small groups (~3 students). During the second block, lecture slots will be replaced by feedback sessions where students will be able to ask questions and get feedback about their project. The last week of the semester will be dedicated to student presentations and demonstrations. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Skript | Lecture notes and material will be made available before each course on the course website. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literatur | Relevant references will be made available through the course website. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Voraussetzungen / Besonderes | Prerequisites: Communication Networks (227-0120-00L) or equivalents / good programming skills (in any language) are expected as both the exercices and the final project will involve coding. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kompetenzen |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0579-00L | Hardware Security | W | 7 KP | 2V + 2U + 2A | K. Razavi | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kurzbeschreibung | This course covers the security of commodity computer hardware (e.g., CPU, DRAM, etc.) with a special focus on cutting-edge hands-on research. The aim of the course is familiarizing the students with hardware security and more specifically microarchitectural and circuit-level attacks and defenses through lectures, reviewing and discussing papers, and executing some of these advanced attacks. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lernziel | By the end of the course, the students will be familiar with the state of the art in commodity computer hardware attacks and defenses. More specifically, the students will learn about: - security problems of commodity hardware that we use everyday and how you can defend against them. - relevant computer architecture and operating system aspects of these issues. - hands-on techniques for performing hardware attacks. - writing critical reviews and constructive discussions with peers on this topic. This is the course where you get credit points by building some of the most advanced exploits on the planet! The luckiest team will collect a Best Demo Award at the end of the course. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literatur | Slides, relevant literature and manuals will be made available during the course. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Voraussetzungen / Besonderes | Experience with Linux, systems programming and computer architecture. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
252-1414-00L | System Security | W | 7 KP | 2V + 2U + 2A | S. Capkun, S. Shinde | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kurzbeschreibung | The first part of the course covers general security concepts and hardware-based support for security. In the second part, the focus is on system design and methodologies for building secure systems. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lernziel | In this lecture, students learn about the security requirements and capabilities that are expected from modern hardware, operating systems, and other software environments. An overview of available technologies, algorithms and standards is given, with which these requirements can be met. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Inhalt | The first part of the lecture covers hardware-based security concepts. Topics include the concept of physical and software-based side channel attacks on hardware resources, architectural support for security (e.g., memory management and permissions, disk encryption), and trusted execution environments (Intel SGX, ARM TrustZone, AMD SEV, and RISC-V Keystone). In the second part, the focus is on system design and methodologies for building secure systems. Topics include: common software faults (e.g., buffer overflows, etc.), bug-detection, writing secure software (design, architecture, QA, testing), compiler-supported security (e.g., control-flow integrity), and language-supported security (e.g., memory safety). Along the lectures, model cases will be elaborated and evaluated in the exercises. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
263-4640-00L | Network Security | W | 8 KP | 2V + 2U + 3A | A. Perrig, S. Frei, M. Legner, K. Paterson | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kurzbeschreibung | Some of today's most damaging attacks on computer systems involve exploitation of network infrastructure, either as the target of attack or as a vehicle to attack end systems. This course provides an in-depth study of network attack techniques and methods to defend against them. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lernziel | - Students are familiar with fundamental network-security concepts. - Students can assess current threats that Internet services and networked devices face, and can evaluate appropriate countermeasures. - Students can identify and assess vulnerabilities in software systems and network protocols. - Students have an in-depth understanding of a range of important state-of-the-art security technologies. - Students can implement network-security protocols based on cryptographic libraries. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Inhalt | The course will cover topics spanning four broad themes with a focus on the first two themes: (1) network defense mechanisms such as public-key infrastructures, TLS, VPNs, anonymous-communication systems, secure routing protocols, secure DNS systems, and network intrusion-detection systems; (2) network attacks such as hijacking, spoofing, denial-of-service (DoS), and distributed denial-of-service (DDoS) attacks; (3) analysis and inference topics such as traffic monitoring and network forensics; and (4) new technologies related to next-generation networks. In addition, several guest lectures will provide in-depth insights into specific current real-world network-security topics. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Voraussetzungen / Besonderes | This lecture is intended for students with an interest in securing Internet communication services and network devices. Students are assumed to have knowledge in networking as taught in a communication networks lecture like 252-0064-00L or 227-0120-00L. Basic knowledge of information security or applied cryptography as taught in 252-0211-00L or 263-4660-00L is beneficial, but an overview of the most important cryptographic primitives will be provided at the beginning of the course. The course will involve several graded course projects. Students are expected to be familiar with a general-purpose or network programming language such as C/C++, Go, Python, or Rust. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kompetenzen |
|
- Seite 1 von 1