容錯計算
Fault Tolerant Computing
學期
110-2
學分
3
學分
當期課號
5250
永久課號
IOC5129
開課單位
資訊科學與工程研究所
授課教師
吳育松
校區
光復
類別
選修
上課時間表
| 節 | 週三 |
|---|---|
3 10:10–11:00 | 容錯計算 ED302 2 節連堂 |
4 11:10–12:00 |
* 根據陽明交大上課時間表所列
概述
Fault-tolerant design enables a system to continue its operation in the presence of accidental faults (e.g., hardware breakdown, communication problems, design errors, unexpected operating conditions) and malicious faults (e.g., cyber-attacks). In this course, we will introduce the nature of these faults and cover the techniques for managing them. Understanding of the knowledge is essential to the construction of resilient systems for harsh and hostile environments.
先修科目
operating systems, network programming
評分方式
50% Exams 50% Project(s)
週次計畫
| 週次 | 主題 |
|---|---|
| 第 1 週 | Motivation & Introduction to Fault Tolerant Computing - Faults, failures, and errors - Definitions of reliability and availability - Failure rate, hazard function, MTTF, MTBF, MTTR, etc. |
| 第 2 週 | Examples of fault tolerance in hardware and software systems |
| 第 3 週 | Basic Hardware Fault Tolerance Techniques - Hardware fault model - Error masking - Dynamic redundancy - Hybrid redundancy |
| 第 4 週 | Basic Software Fault Tolerance Techniques - Rejuvenation - Process pairs - Robust data structures - Recovery block - N-Version programming - Exception handling |
| 第 5 週 | Reliability Modeling - Reliability Graph - Markov Chains - Stochastic Activity Networks |
| 第 6 週 | Replication - Replication for high availability, performance, and persistence - Replica placement - Update propagation |
| 第 7 週 | Consistency Models - Strict consistency - Sequential consistency - Eventual consistency |
| 第 8 週 | Atomicity - Concurrency control - ACID - Serializability |
| 第 9 週 | Consensus in faulty environment - Two-phase commit - Paxos |
| 第 10 週 | Checkpointing and Recovery - Synchronous checkpointing - Asynchronous checkpointing - Message Logging |
| 第 11 週 | Byzantine fault tolerance - Byzantine General’s Problem - Practical Byzantine fault tolerance |
| 第 12 週 | Blockchain-based decentralized consensus |
教科書
Kenneth Paul Birman, "Guide to Reliable Distributed Systems: Building High-Assurance Applications and Cloud-Hosted Services"
Office Hours
- 地點
- EC429