《分布式算法导论 原书第2版》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:(荷)Gerard Tel著;霍红卫译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2004
  • ISBN:7111146743
  • 页数:385 页
图书介绍:本书对分布式算法以及算法所涉及的理论进行介绍。

目录 1

第1章导论:分布式系统 1

1.1分布式系统的定义 1

1.1.1动机 1

1.1.2计算机网络 3

1.1.3广域网络 3

1.1.4局域网 5

1.1.5多处理器计算机 6

1.1.6协同操作进程 8

1.2体系结构和语言 10

1.2.1结构 10

1.2.2 OSI参考模型 11

1.2.3局域网络OSI模型:IEEE标准 13

1.2.4语言支持 14

1.3分布式算法 15

1.3.1分布式算法与集中式算法 15

1.3.2一个例子:单消息通信 16

1.3.3研究领域 20

1.4本书概要 21

第一部分 协 议 25

第2章模型 25

2.1转移系统和算法 25

2.1.1转移系统 26

2.1.2异步消息传递系统 26

2.1.3同步消息传递系统 27

2.1.4公平性 28

2.2.1安全性 29

2.2转移系统性质的证明 29

2.2.2活动性 30

2.3事件的因果序和逻辑时钟 31

2.3.1事件的独立性和相关性 32

2.3.2执行的等价性:计算 33

2.3.3逻辑时钟 35

2.4附加假设,复杂度 37

2.4.1网络拓扑结构 37

2.4.2信道性质 38

2.4.3实时性假设 39

2.4.4进程知识 40

2.4.5分布式算法的复杂度 40

习题 41

第3章通信协议 43

3.1平衡滑动窗口协议 44

3.1.1协议表示 44

3.1.2协议的正确性证明 46

3.1.3协议讨论 47

3.2基于计时器的协议 49

3.2.1协议表示 51

3.2.2协议的正确性证明 54

3.2.3协议讨论 57

习题 60

第4章路由算法 61

4.1基于目的节点的路由 62

4.2.1 Floyd-Warshall算法 65

4.2所有点对之间的最短路径问题 65

4.2.2Toueg最短路径算法 67

4.2.3讨论以及更多算法 70

4.3变更算法 73

4.3.1算法描述 74

4.3.2变更算法的正确性 78

4.3.3算法讨论 79

4.4带有压缩路由表的路由 80

4.4.1树标号模式 80

4.4.2区间路由 82

4.4.3前缀路由 88

4.5 分级路由 90

习题 92

第5章无死锁的包交换 93

5.1引言 93

5.2有结构的方法 94

5.2.1缓冲图 95

5.2.2图G的定向 97

控制器 100

5.3无结构的方法 100

5.3.1前向计数控制器和后向计数 100

5.3.2前向状态控制器和后向状态 101

控制器 101

5.4需进一步研究的问题 102

5.4.1拓扑变化 102

5.4.2其他类型的死锁 103

5.4.3活锁 104

习题 105

第二部分基本算法 107

第6章波动算法与遍历算法 107

6.1波动算法的定义和使用 107

6.1.1波动算法定义 107

6.1.2波动算法的一些基本结果 109

6.1.3具有反馈的信息传播 110

6.1.5计算下确界函数 111

6.1.4同步 111

6.2波动算法集 112

6.2.1环网算法 112

6.2.2树算法 113

6.2.3 回波算法 115

6.2.4轮询算法 116

6.2.5相位算法 117

6.2.6 Finn算法 118

6.3遍历算法 120

6.3.1遍历团 121

6.3.2遍历圆环 121

6.3.3遍历超立方体 122

6.3.4遍历连通网络 123

6.4深度优先搜索的时间复杂度 124

6.4.1分布式深度优先搜索 125

6.4.2线性时间的深度优先搜索算法 126

6.5.1波动算法综述 130

6.5.2计算和 130

6.5 遗留问题 130

6.4.3具有近邻知识的深度优先搜索 130

6.5.3 时间复杂度的另一种定义 132

习题 134

第7章选举算法 137

7.1引言 137

7.1.1本章所做假设 138

7.1.2选举和波动 138

7.2.1LeLann和Chang-Roberts算法 140

7.2环网 140

7.2.2 Peterson/Dolev-Klawe-Rodeh算法 144

7.2.3一个下界 146

7.3任意网 148

7.3.1废止和快速算法 149

7.3.2 Gallager-Humblet-Spira算法 151

7.3.3 GHS算法的全局描述 152

7.3.4 GHS算法的详细描述 153

7.3.5 GHS算法的讨论和变化 157

7.4.1模块构造 158

7.4 Korach-Kutten-Moran算法 158

7.4.2 KKM算法的应用 161

习题 162

第8章终止检测 165

8.1预备知识 165

8.1.1定义 165

8.1.2两个下界 167

8.2计算树和森林 169

8.2.1 Dijkstra-Scholten算法 169

8.1.3终止进程 169

8.2.2 Shavit-Francez算法 172

8.3基于波动的方法 175

8.3.1 Dijkstra-Feijen-Van Gasteren算法 175

8.3.2基本消息的计数:Safra算法 178

8.3.3利用确认 181

8.34带波动的终止检测 183

8.4其他方法 184

8.4.1信用-恢复算法 184

8.4.2基于时戳的终止检测方法 186

习题 188

第9章匿名网络 191

9.1预备知识 192

9.1.1定义 192

9.1.2概率算法的分类 194

9.1.3本章考虑的问题 195

9.1.4同步消息传递与异步消息传递 195

9.2确定算法 196

9.2.1确定性的选举:否定性的结果 196

9.2.2环上函数计算 197

9.3概率选举算法 200

9.4网络规模计算 202

9.4.1否定性结果 203

9.4.2计算环规模的算法 204

习题 206

10.1预备知识 209

第10章快照 209

10.2两个快照算法 212

10.2.1 Chandy-Lamport算法 212

10.2.2 Lai-Yang算法 213

10.3使用快照算法 214

10.3.1计算信道状态 214

10.3.2快照的适时性 215

10.3.3稳定性检测 216

10.4.1基本计算模型和问题阐述 217

10.4应用:死锁检测 217

10.4.2全局-标记算法 219

10.4.3受限模型的死锁检测 220

习题 221

第11章方向侦听与定向 223

11.1引言和定义 223

11.1.1方向侦听的定义和特性 223

11.1.2利用方向侦听 225

11.1.3具有方向侦听的广播 226

11.2.1 Franklin算法 228

11.2环和弦环的选举算法 228

11.2.2 Attiya改进 229

11.2.3最小化弦数 230

11.2.4 1-弦线性算法 232

11.3超立方体上的计算 234

11.3.1基线:没有拓扑知识 235

11.3.2进行比赛的算法 235

11.3.3多路径流量算法 237

1 1.3.4使用掩码的有效超立方体算法 240

1 1.3.5无标号超立方体上的选举算法 241

11.4与复杂度有关的问题 242

11.4.1团或任意图的定向 242

11.4.2位复杂度和多路径流量算法 243

11.4.3 Verweij随机漫步算法 244

11.5结论和未解决的问题 246

11.5.1利用方向侦听 246

11.5.2复杂度归约 246

习题 247

11.5.3当前研究 247

12.1预备知识 249

12.1.1同步网络 249

第12章网络中的同步 249

12.1.2 通过同步提高效率 250

12.1.3异步有限延迟网络 251

12.2同步网络中的选举 254

12.2.1网络规模已知 254

12.2.2网络规模未知 255

12.3.1简单同步器 256

12.2.3补充结果 256

12.3同步器算法 256

12.3.2 α、β和y同步器 258

12.4应用:广度优先搜索 260

12.4.1同步BFS算法 261

12.4.2与同步器组合 261

12.4.3异步BFS算法 261

12.5 Archimedean假设 264

习题 265

第三部分容 错 267

第13章分布式系统中的容错 267

13.1利用容错算法的原因 267

13.2健壮算法 268

13.2.1故障模型 268

13.2.2判定问题 269

13.2.3第14章到第16章综述 270

13.3稳定算法 271

13.2.4本书中没有涉及的主题 271

第14章异步系统中的容错 273

14.1一致性的不可能性 273

14.1.1表示、定义及基本结果 273

14.1.2不可能性证明 274

14.1.3讨论 275

14.2初始死进程 276

14.3确定可实现实例 277

14.3.1可解问题:重命名 278

14.3.2扩展的不可能性结果 280

14.4概率一致性算法 282

14.4.1损毁-健壮一致协议 282

14.4.2 Byzantine-健壮一致性协议 285

14.5弱终止性 288

习题 290

第15章同步系统中的容错 293

15.1同步判定协议 293

15.1.1弹性界限 294

15.1.2 Byzantine广播算法 295

15.1.3多项式级的广播算法 297

15.2鉴别协议 300

15.2.1 高度弹性的协议 301

15.2.2数字签名的实现 303

15.2.3 E1Gamal签名模式 303

15.2.4 RSA签名模式 304

15.2.5 Fiat-Shamir签名模式 305

15.2.6概述和讨论 306

15.3.1读取远程时钟 308

15.3时钟同步 308

15.3.2分布式时钟同步 310

15.3.3轮模型的实现 313

习题 314

第16章故障检测 315

16.1模型和定义 315

16.1.1四种基本检测器类型 316

16.1.2故障检测器的用途和缺陷 317

16.2用弱精确检测器解一致性问题 318

16.3.1弹性上界 319

16.3最终弱精确检测器 319

16.3.2一致算法 320

16.4故障检测器的实现 321

16.4.1同步系统:完美检测 321

16.4.2部分同步系统:最终完美检测 321

164.3 小结 322

习题 323

17.1.1定义 325

17.1引言 325

第17章稳定性 325

17.1.2稳定系统中的通信 326

17.1.3例子:Dijkstra令牌环 327

17.2图论算法 329

17.2.1环定向 329

17.2.2最大匹配 331

17.2.3选举和生成树构造 332

17.3.1协议组合 334

17.3稳定方法学 334

17.3.2计算最小路径 338

17.3.3结论和讨论 342

习题 342

第四部分附 录 345

附录A伪代码使用约定 345

附录B图和网络 349

参考文献 359

主题词索引 375