图书介绍

分布式系统 原理与范例PDF|Epub|txt|kindle电子书版本网盘下载

分布式系统 原理与范例
  • Andrew S.Tanenbaum著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:730205827X
  • 出版时间:2002
  • 标注页数:816页
  • 文件大小:44MB
  • 文件页数:838页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

分布式系统 原理与范例PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

1 INTRODUCTION1

1.1 DEFINITION OF A DISTRIBUTED SYSTEM2

1.2 GOALS4

1.2.1 Connecting Users and Resources4

1.2.2 Transparency5

1.2.3 Openness8

1.2.4 Scalability10

1.3 HARDWARE CONCEPTS16

1.3.1 Multiprocessors17

CONTENTS17

PREFACE17

1.3.2 Homogeneous Multicomputer Systems19

1.3.3 Heterogeneous Multicomputer Systems21

1.4 SOFTWARE CONCEPTS22

1.4.1 Distributed Operating Systems22

1.4.2 Network Operating Systems33

1.4.3 Middleware36

1.5 THE CLIENT-SERVER MODEL42

1.5.1 Clients and Servers42

1.5.2 Application Layering46

1.5.3 Client-Server Architectures50

1.6 SUMMARY53

2 COMMUNICATION57

2.1 LAYERED PROTOCOLS58

2.1.1 Lower-Level Protocols61

2.1.2 Transport Protocols63

2.1.3 Higher-Level Protocols66

2.2 REMOTE PROCEDURE CALL68

2.2.1 Basic RPC Operation69

2.2.2 Parameter Passing73

2.2.3 Extended RPC Models77

2.2.4 Example:DCE RPC80

2.3 REMOTE OBJECT INVOCATION85

2.3.1 Distributed Objects86

2.3.2 Binding a Client to an Object88

2.3.3 Static versus Dynamic Remote Method Invocations90

2.3.4 Parameter Passing91

2.3.5 Example 1:DCE Remote Objects93

2.3.6 Example 2:Java RMI95

2.4.1 Persistence and Synchronicity in Communication99

2.4 MESSAGE-ORIENTED COMMUNICATION99

2.4.2 Message-Oriented Transient Communication104

2.4.3 Message-Oriented Persistent Communication108

2.4.4 Example:IBM MQSeries115

2.5 STREAM-ORIENTED COMMUNICATION119

2.5.1 Support for Continuous Media120

2.5.2 Streams and Quality of Service123

2.5.3 Stream Synchronization127

2.6 SUMMARY130

3 PROCESSES135

3.1.1 Introduction to Threads136

3.1 THREADS136

3.1.2 Threads in Distributed Systems141

3.2 CLIENTS145

3.2.1 User Interfaces145

3.2.2 Client-Side Software for Distribution Transparency147

3.3 SERVERS149

3.3.1 General Design Issues149

3.3.2 Object Servers152

3.4.1 Approaches to Code Migration158

3.4 CODE MIGRATION158

3.4.2 Migration and Local Resources163

3.4.3 Migration in Heterogeneous Systems165

3.4.4 Example:D'Agents168

3.5 SOFTWARE AGENTS173

3.5.1 Software Agents in Distributed Systems173

3.5.2 Agent Technology175

3.6 SUMMARY178

4 NAMING183

4.1.1 Names,Identifiers,and Addresses184

4.1 NAMING ENTITIES184

4.1.2 Name Resolution189

4.1.3 The Implementation of a Name Space194

4.1.4 Example:The Domain Name System201

4.1.5 Example:X.500206

4.2 LOCATING MOBILE ENTITIES210

4.2.1 Naming versus Locating Entities210

4.2.2 Simple Solutions212

4.2.3 Home-Based Approaches216

4.2.4 Hierarchical Approaches217

4.3 REMOVING UNREFERENCED ENTITIES225

4.3.1 The Problem of Unreferenced Objects225

4.3.2 Reference Counting227

4.3.3 Reference Listing231

4.3.4 Identifying Unreachable Entities232

4.4 SUMMARY238

5 SYNCHRONIZATION241

5.1 CLOCK SYNCHRONIZATION242

5.1.1 Physical Clocks243

5.1.2 Clock Synchronization Algorithms246

5.1.3 Use of Synchronized Clocks251

5.2 LOGICAL CLOCKS252

5.2.1 Lamport timestamps252

5.2.2 Vector timestamps256

5.3 GLOBAL STATE258

5.4 ELECTION ALGORITHMS262

5.4.1 The Bully Algorithm262

5.4.2 A Ring Algorithm263

5.5.1 A Centralized Algorithm265

5.5 MUTUAL EXCLUSION265

5.5.2 A Distributed Algorithm266

5.5.3 A Token Ring Algorithm269

5.5.4 A Comparison of the Three Algorithms270

5.6 DISTRIBUTED TRANSACTIONS271

5.6.1 The Transaction Model272

5.6.2 Classification of Transactions275

5.6.3 Implementation278

5.6.4 Concurrency Control280

5.7 SUMMARY288

6 CONSISTENCY AND REPLICATION291

6.1 INTRODUCTION292

6.1.1 Reasons for Replication292

6.1.2 Object Replication293

6.1.3 Replication as Scaling Technique296

6.2 DATA-CENTRIC CONSISTENCY MODELS297

6.2.1 Strict Consistency298

6.2.2 Linearizability and Sequential Consistency300

6.2.3 Causal Consistency305

6.2.4 FIFO Consistency306

6.2.5 Weak Consistency308

6.2.6 Release Consistency310

6.2.7 Entry Consistency313

6.2.8 Summary of Consistency Models315

6.3 CLIENT-CENTRIC CONSISTENCY MODELS316

6.3.1 Eventual Consistency317

6.3.2 Monotonic Reads319

6.3.3 Monotonic Writes320

6.3.4 Read Your Writes322

6.3.5 Writes Follow Reads323

6.3.6 Implementation324

6.4 DISTRIBUTION PROTOCOLS326

6.4.1 Replica Placement326

6.4.2 Update Propagation330

6.4.3 Epidemic Protocols334

6.5 CONSISTENCY PROTOCOLS337

6.5.1 Primary-Based Protocols337

6.5.2 Replicated-Write Protocols341

6.5.3 Cache-Coherence Protocols345

6.6 EXAMPLES346

6.6.1 Orca347

6.6.2 Causally-Consistent Lazy Replication352

6.7 SUMMARY357

7 FAULT TOLERANCE361

7.1 INTRODUCTION TO FAULT TOLERANCE362

7.1.1 Basic Concepts362

7.1.2 Failure Models364

7.1.3 Failure Masking by Redundancy366

7.2 PROCESS RESILIENCE368

7.2.1 Design Issues368

7.2.2 Failure Masking and Replication370

7.2.3 Agreement in Faulty Systems371

7.3 RELIABLE CLIENT-SERVER COMMUNICATION375

7.3.1 Point-to-Point Communication375

7.3.2 RPC Semantics in the Presence of Failures375

7.4 RELIABLE GROUP COMMUNICATION381

7.4.1 Basic Reliable-Multicasting Schemes381

7.4.2 Scalability in Reliable Multicasting383

7.4.3 Atomic Multicast386

7.5 DISTRIBUTED COMMIT393

7.5.1 Two-Phase Commit393

7.5.2 Three-Phase Commit399

7.6 RECOVERY401

7.6.1 Introduction401

7.6.2 Checkpointing404

7.6.3 Message Logging407

7.7 SUMMARY410

8 SECURITY413

8.1 INTRODUCTION TO SECURITY414

8.1.1 Security Threats,Policies,and Mechanisms414

8.1.2 Design Issues420

8.1.3 Cryptography425

8.2 SECURE CHANNELS432

8.2.1 Authentication433

8.2.2 Message Integrity and Confidentiality441

8.2.3 Secure Group Communication444

8.3 ACCESS CONTROL447

8.3.1 General Issues in Access Control447

8.3.2 Firewalls451

8.3.3 Secure Mobile Code453

8.4 SECURITY MANAGEMENT460

8.4.1 Key Management461

8.4.2 Secure Group Management465

8.4.3 Authorization Management466

8.5 EXAMPLE:KERBEROS472

8.6 EXAMPLE:SESAME473

8.6.1 SESAME Components474

8.6.2 Privilege Attribute Certificates(PACs)477

8.7 EXAMPLE:ELECTRONIC PAYMENT SYSTEMS478

8.7.1 Electronic Payment Systems478

8.7.2 Security in Electronic Payment Systems480

8.7.3 Example Protocols484

8.8 SUMMARY488

9 DISTRIBUTED OBJECT-BASED SYSTEMS493

9.1 CORBA494

9.1.1 Overview of CORBA495

9.1.2 Communication501

9.1.3 Processes508

9.1.4 Naming514

9.1.5 Synchronization518

9.1.6 Caching and Replication518

9.1.7 Fault Tolerance520

9.1.8 Security522

9.2 DISTRIBUTED COM525

9.2.1 Overview of DCOM526

9.2.2 Communication531

9.2.3 Processes534

9.2.4 Naming537

9.2.5 Synchronization541

9.2.6 Replication541

9.2.7 Fault Tolerance541

9.2.8 Security542

9.3 GLOBE545

9.3.1 Overview of Globe545

9.3.2 Communication553

9.3.3 Processes554

9.3.4 Naming557

9.3.5 Synchronization559

9.3.6 Replication560

9.3.7 Fault Tolerance563

9.3.8 Security563

9.4 COMPARISON OF CORBA,DCOM,AND GLOBE565

9.4.1 Philosophy566

9.4.2 Communication567

9.4.3 Processes567

9.4.4 Naming568

9.4.5 Synchronization569

9.4.6 Caching and Replication569

9.4.7 Fault Tolerance570

9.4.8 Security570

9.5 SUMMARY572

10 DISTRIBUTED FILE SYSTEMS575

10.1 SUN NETWORK FILE SYSTEM576

10.1.1 Overview of NFS576

10.1.2 Communication581

10.1.3 Processes582

10.1.4 Naming583

10.1.5 Synchronization590

10.1.6 Caching and Replication594

10.1.7 Fault Tolerance597

10.1.8 Security600

10.2.1 Overview of Coda604

10.2 THE CODA FILE SYSTEM604

10.2.2 Communication606

10.2.3 Processes608

10.2.4 Naming609

10.2.5 Synchronization610

10.2.6 Caching and Replication615

10.2.7 Fault Tolerance618

10.2.8 Security620

10.3.1 Plan 9:Resources Unified to Files623

10.3 OTHER DISTRIBUTED FILE SYSTEMS623

10.3.2 XFS:Serverless File System629

10.3.3 SFS:Scalable Security635

10.4 COMPARISON OF DISTRIBUTED FILE SYSTEMS638

10.4.1 Philosophy638

10.4.2 Communication639

10.4.3 Processes639

10.4.4 Naming640

10.4.5 Synchronization641

10.4.6 Caching and Replication641

10.4.8 Security642

10.4.7 Fault Tolerance642

10.5 SUMMARY643

11 DISTRIBUTED DOCUMENT-BASED SYSTEMS647

11.1 THE WORLD WIDE WEB648

11.1.1 Overview of WWW648

11.1.2 Communication657

11.1.3 Processes662

11.1.4 Naming668

11.1.5 Synchronization671

11.1.6 Caching and Replication672

11.1.7 Fault Tolerance676

11.1.8 Security676

11.2 LOTUS NOTES678

11.2.1 Overview of Lotus Notes678

11.2.2 Communication680

11.2.3 Processes681

11.2.4 Naming683

11.2.5 Synchronization685

11.2.6 Replication685

11.2.8 Security688

11.2.7 Fault Tolerance688

11.3 COMPARISON OF WWW AND LOTUS NOTES691

11.4 SUMMARY695

12 DISTRIBUTED COORDINATION-BASED SYSTEMS699

12.1 INTRODUCTION TO COORDINATION MODELS700

12.2 TIB/RENDEZVOUS702

12.2.1 Overview of TIB/Rendezvous702

12.2.2 Communication704

12.2.3 Processes708

12.2.4 Naming709

12.2.5 Synchronization710

12.2.6 Caching and Replication712

12.2.7 Fault Tolerance713

12.2.8 Security715

12.3 JINI716

12.3.1 Overview of Jini717

12.3.2 Communication719

12.3.3 Processes721

12.3.4 Naming724

12.3.5 Synchronization727

12.3.7 Fault Tolerance728

12.3.6 Caching and Replication728

12.3.8 Security729

12.4 COMPARISON OF TIB/RENDEZVOUS AND JINI730

12.5 SUMMARY733

13 READING LIST AND BIBLIOGRAPHY737

13.1 SUGGESTIONS FOR FURTHER READING737

13.1.1 Introduction and General Works737

13.1.2 Communication739

13.1.3 Processes739

13.1.4 Naming740

13.1.5 Synchronization741

13.1.6 Consistency and Replication742

13.1.7 Fault Tolerance743

13.1.8 Security744

13.1.9 Distributed Object-Based Systems745

13.1.10 Distributed File Systems746

13.1.11 Distributed Document-Based Systems747

13.1.12 Distributed Coordination-Based Systems748

13.2 ALPHABETICAL BIBLIOGRAPHY749

INDEX785

热门推荐