IRSDP 读书笔记 - 2. Basic Abstractio

2018-12-23  本文已影响11人  袁世超

《Introduction to Reliable and Secure Distributed Programming》

2.7 Distributed-System Models

组合 (1) a process abstraction, (2)a link abstraction 和 (3) a failure-detector abstraction 三者定义了 a distributed-system model

2.7.1 Combining Abstractions

本书只会讨论几种不同的组合,通过这些组合可以发现不同的假设对算法设计的影响。

2.7.2 Setup

所有 process 的 identity 是全局已知的,可以启动前静态配置,也可以通过 membership service 自动配置。

cryptographic abstractions 的相关配置也是预先定义好的。

2.7.3 Quorums

A quorum in a system with N crash-fault process abstractions (according to the fail-stop, fail-noisy, fail-silent, or fail-recovery system model) is any majority of processes, i.e., any set of more than N/2 processes.

即使系统中 f < N/2 个 process 发生故障,也会至少存在一个没有故障的 quorum。

在 arbitrary-fault process abstractions 中并不是这样,A Byzantine quorum tolerating f faults is a set of more than (N +f)/2 processes. algorithms tolerating Byzantine faults usually require that only f < N/3 processes may fail.

2.7.4 Measuring Performance

通常使用两个 metric 分析算法的成本:

  1. the number of messages required to terminate an operation of the abstraction
  2. the number of communication steps required to terminate such an operation

对于某些算法也需要评估 total communication size,对于 crash-recovery model 还需要考虑 the number of accesses to stable storage。

通常来说需要统计 message 数量、communication steps 次数和 disk accesses 次数。

Performance measurements are often stated in Big-O Notation。

精确的性能研究并不属于本书的内容。

上一篇下一篇

猜你喜欢

热点阅读