书籍详情
分布式系统概念与设计(原书第3版)
作者:(英)George Coulouris,(英)Jean Dollimore,(英)Tim Kindberg著;金蓓弘等译;金蓓弘译
出版社:机械工业出版社
出版时间:2004-01-01
ISBN:9787111129561
定价:¥59.00
购买这本书可以去
内容简介
本书旨在提供深入的分布式系统设计原理和实践方面的知识,读者通过学习可以掌握评价已有系统或设计新系统的方法。书中结合分布式系统技术主要的新进展,重点介绍了因特网、企业内部网、Web和中间件,还包括故障建模和容错、分布式对象和分布式多媒体系统。本书非常强调算法,并结合其他相关技术讨论了安全问题。本书内容详实、覆盖面广且循序渐进,适合作为大中专院校计算机系高年级本科生及研究生的教科书和教学参考书,同时也可以作为计算机软件行业技术人员的参考书。在分布式系统领域,我不知道还有没有更好的书,但我毫不犹豫地推荐这本书。——JanMadey《IEEEParallelandDistributedTechnology》杂志“介绍分布式系统的最好教科书。”——E.DouglasJensenMitre公司首席科学家,世界分布式实时系统权威本书旨在提供深入的分布式系统设计原理和实践方面的知识,读者通过学习可以掌握评价已有系统或设计新系统的方法。书中的实例研究阐述了每个主要论题的设计概念。本书已被爱丁堡大学、伊利诺依大学、卡内基—梅隆大学、南加州大学、得克萨斯A&M大学、多伦多大学、罗彻斯特理工学院等世界众多名校采用为高级操作系统、计算机网络、分布式系统课程的教材。综合性网站www.cdk3.net和www.booksites.net/cdkbook为读者提供了补充资料(勘误、源代码等)。
作者简介
GeorgeCoulouris是伦敦大学QueenMaryandWestfield学院的荣誉教授,同时是剑桥大学通信工程实验室的资深客座研究员,他领导的项目研究有关可动态配置的多媒体系统的服务质量,最近他一直致力于计算机支持协同工作和应用、分布式多媒体中间件和群件安全模型方面的研究工作。JeanDollimore在退休前是伦敦大学QueenMaryandWestfield学院的高级研究员,最近一直在从事有关计算机支持协同工作、分布式多媒体中间件和群件安全模型方面的研究。
目录
出版者的话<br>专家指导委员会<br>前言<br>第1章 分布式系统的特征 1<br>1.1 简介 1<br>1.2 分布式系统实例 2<br>1.2.1 因特网 2<br>1.2.2 企业内部网 3<br>1.2.3 移动计算和无处不在的计算 4<br>1.3 资源共享和Web 5<br>1.4 挑战 12<br>1.4.1 异构性 12<br>1.4.2 开放性 13<br>1.4.3 安全性 14<br>1.4.4 可伸缩性 14<br>1.4.5 故障处理 16<br>1.4.6 并发 17<br>1.4.7 透明性 17<br>1.5 小结 18<br>第2章 系统模型 21<br>2.1 简介 21<br>2.2 体系结构模型 22<br>2.2.1 软件层 22<br>2.2.2 系统体系结构 24<br>2.2.3 客户-服务器模型的变种 27<br>2.2.4 接口和对象 31<br>2.2.5 分布式体系结构的设计需求 32<br>2.3 基础模型 34<br>2.3.1 交互模型 35<br>2.3.2 故障模型 39<br>2.3.3 安全模型 42<br>2.4 小结 45<br>第3章 网络和网络互联 47<br>3.1 简介 47<br>3.2 网络类型 50<br>3.3 网络原理 52<br>3.3.1 数据包的传输 52<br>3.3.2 数据流 53<br>3.3.3 交换模式 53<br>3.3.4 协议 54<br>3.3.5 路由 59<br>3.3.6 拥塞控制 62<br>3.3.7 网络互联 62<br>3.4 因特网协议 65<br>3.4.1 IP寻址 67<br>3.4.2 IP协议 68<br>3.4.3 IP路由 70<br>3.4.4 IPv6 72<br>3.4.5 移动IP 74<br>3.4.6 TCP和UDP 75<br>3.4.7 域名 77<br>3.4.8 防火墙 77<br>3.5 网络实例研究:以太网. 无线LAN<br> 和ATM 80<br>3.5.1 以太网 81<br>3.5.2 IEEE 802.11无线LAN 84<br>3.5.3 异步传输模式网络 86<br>3.6 小结 88<br>第4章 进程间通信 91<br>4.1 简介 91<br>4.2 因特网协议的API 92<br>4.2.1 进程间通信的特征 92<br>4.2.2 套接字 93<br>4.2.3 UDP数据报通信 94<br>4.2.4 TCP流通信 96<br>4.3 外部数据表示和编码 101<br>4.3.1 CORBA的公共数据表示(CDR) 102<br>4.3.2 Java对象序列化 103<br>4.3.3 远程对象引用 105<br>4.4 客户-服务器通信 106<br>4.5 组通信 111<br>4.5.1 IP组播—组通信的实现 112<br>4.5.2 组播的可靠性和排序 113<br>4.6 实例研究:UNIX系统的进程间通信 115<br>4.6.1 数据报通信 115<br>4.6.2 流通信 116<br>4.7 小结 117<br>第5章 分布式对象和远程调用 121<br>5.1 简介 121<br>5.2 分布式对象间的通信 124<br>5.2.1 对象模型 124<br>5.2.2 分布式对象 125<br>5.2.3 分布式对象模型 126<br>5.2.4 RMI的设计问题 127<br>5.2.5 RMI的实现 129<br>5.2.6 分布式无用单元回收 133<br>5.3 远程过程调用 134<br>5.4 事件和通知 137<br>5.4.1 分布式事件通知的参与者 138<br>5.4.2 Jini分布式事件规范 141<br>5.5 Java RMI实例研究 142<br>5.5.1 创建客户程序和服务器程序 145<br>5.5.2 Java RMI的设计和实现 147<br>5.6 小结 148<br>第6章 操作系统支持 153<br>6.1 简介 153<br>6.2 操作系统层 154<br>6.3 保护 156<br>6.4 进程和线程 157<br>6.4.1 地址空间 158<br>6.4.2 新进程的创建 160<br>6.4.3 线程 162<br>6.5 通信和调用 171<br>6.5.1 调用性能 172<br>6.5.2 异步操作 177<br>6.6 操作系统体系结构 179<br>6.7 小结 182<br>第7章 安全性 185<br>7.1 简介 185<br>7.1.1 威胁和攻击 187<br>7.1.2 保护电子事务 189<br>7.1.3 设计安全系统 190<br>7.2 安全技术概述 192<br>7.2.1 密码学 192<br>7.2.2 密码学的应用 192<br>7.2.3 证书 195<br>7.2.4 访问控制 196<br>7.2.5 凭证 198<br>7.2.6 防火墙 199<br>7.3 加密算法 200<br>7.3.1 保密密钥(对称)算法 203<br>7.3.2 公开密钥(非对称)算法 205<br>7.3.3 混合密码协议 207<br>7.4 数字签名 207<br>7.4.1 公开密钥数字签名 209<br>7.4.2 保密密钥数字签名—MAC 209<br>7.4.3 安全摘要函数 210<br>7.4.4 证书标准和证书权威机构 212<br>7.5 密码实用学 213<br>7.5.1 加密算法的性能 213<br>7.5.2 密码学的应用和政治障碍 213<br>7.6 实例研究:Needham-Schroeder. <br>Kerberos. SSL和Millicent 215<br>7.6.1 Needham-Schroeder认证协议 215<br>7.6.2 Kerberos 216<br>7.6.3 使用安全套接字确保电子交易安全 220<br>7.6.4 小额电子交易:Millicent协议 223<br>7.7 小结 226<br>第8章 分布式文件系统 229<br>8.1 简介 229<br>8.1.1 文件系统的特点 231<br>8.1.2 分布式文件系统的需求 233<br>8.1.3 实例研究 234<br>8.2 文件服务系统结构 235<br>8.3 Sun网络文件系统 239<br>8.4 Andrew文件系统 248<br>8.4.1 实现 250<br>8.4.2 缓存的一致性 253<br>8.4.3 其他方面 255<br>8.5 最新进展 255<br>8.6 小结 260<br>第9章 命名服务 263<br>9.1 简介 263<br>9.2 命名服务和域名系统 265<br>9.2.1 名字空间 266<br>9.2.2 名字解析 269<br>9.2.3 域名系统 271<br>9.3 目录服务和发现服务 277<br>9.4 实例研究:全局命名服务 279<br>9.5 实例研究:X.500目录服务 282<br>9.6 小结 285<br>第10章 时间和全局状态 289<br>10.1 简介 289<br>10.2 时钟. 事件和进程状态 290<br>10.3 同步物理时钟 292<br>10.3.1 同步系统中的同步 293<br>10.3.2 同步时钟的Cristian方法 293<br>10.3.3 Berkeley算法 294<br>10.3.4 网络时间协议 295<br>10.4 逻辑时间和逻辑时钟 297<br>10.5 全局状态 300<br>10.5.1 全局状态和一致割集 301<br>10.5.2 全局状态谓词. 稳定性. 安全性<br>和活性 303<br>10.5.3 Chandy和Lamport的“快照”算法 303<br>10.6 分布式调试 307<br>10.6.1 观察一致的全局状态 308<br>10.6.2 求解可能的f 309<br>10.6.3 求解明确的f 310<br>10.6.4 在同步系统中求解可能的f和<br>明确的f 311<br>10.7 小结 311<br>第11章 协调和协定 315<br>11.1 简介 315<br>11.2 分布式互斥 318<br>11.3 选举 324<br>11.4 组播通信 327<br>11.4.1 基本组播 329<br>11.4.2 可靠组播 329<br>11.4.3 有序组播 332<br>11.5 共识和相关问题 339<br>11.5.1 系统模型和问题定义 339<br>11.5.2 同步系统中的共识问题 342<br>11.5.3 同步系统中的拜占庭将军问题 343<br>11.5.4 异步系统的不可能性 346<br>11.6 小结 347<br>第12章 事务和并发控制 351<br>12.1 简介 351<br>12.1.1 简单的同步机制(无事务) 352<br>12.1.2 事务的故障模型 353<br>12.2 事务 354<br>12.2.1 并发控制 357<br>12.2.2 事务放弃时的恢复 360<br>12.3 嵌套事务 362<br>12.4 锁 364<br>12.4.1 死锁 369<br>12.4.2 在加锁机制中增加并发度 372<br>12.5 乐观并发控制 374<br>12.6 时间戳排序 377<br>12.7 并发控制方法的比较 383<br>12.8 小结 384<br>第13章 分布式事务 389<br>13.1 简介 389<br>13.2 平面分布式事务和嵌套分布式事务 390<br>13.3 原子提交协议 392<br>13.3.1 两阶段提交协议 393<br>13.3.2 嵌套事务的两阶段提交协议 395<br>13.4 分布式事务的并发控制 398<br>13.4.1 锁 399<br>13.4.2 时间戳排序并发控制 399<br>13.4.3 乐观并发控制 400<br>13.5 分布式死锁 401<br>13.6 事务恢复 406<br>13.6.1 日志 408<br>13.6.2 影子版本 410<br>13.6.3 为何恢复文件需要事务状态<br>和意图列表 411<br>13.6.4 两阶段提交协议的恢复 411<br>13.7 小结 414<br>第14章 复制 417<br>14.1 简介 417<br>14.2 系统模型和组通信 419<br>14.2.1 系统模型 419<br>14.2.2 组通信 421<br>14.3 容错服务 425<br>14.3.1 被动(主备份)复制 427<br>14.3.2 主动复制 429<br>14.4 高可用服务 430<br>14.4.1 gossip系统 431<br>14.4.2 Bayou系统的操作变换方法 438<br>14.4.3 Coda文件系统 439<br>14.5 复制数据上的事务 444<br>14.5.1 用于复制事务的体系结构 445<br>14.5.2 可用拷贝复制 446<br>14.5.3 网络分区 448<br>14.5.4 带验证的可用拷贝 449<br>14.5.5 法定数共识方法 449<br>14.5.6 虚拟分区算法 451<br>14.6 小结 453<br>第15章 分布式多媒体系统 457<br>15.1 简介 457<br>15.2 多媒体数据的特征 460<br>15.3 服务质量管理 461<br>15.3.1 服务质量协商 464<br>15.3.2 许可控制 468<br>15.4 资源管理 469<br>15.5 流适应 470<br>15.5.1 调整 471<br>15.5.2 过滤 471<br>15.6 实例研究:Tiger视频文件服务器 472<br>15.7 小结 475<br>第16章 分布式共享内存 477<br>16.1 简介 477<br>16.1.1 消息传递机制和DSM的比较 478<br>16.1.2 DSM的实现方法 479<br>16.2 设计问题和实现问题 481<br>16.2.1 结构 481<br>16.2.2 同步模型 482<br>16.2.3 一致性模型 483<br>16.2.4 更新选项 486<br>16.2.5 粒度 487<br>16.2.6 系统颠簸 488<br>16.3 顺序一致性和Ivy 488<br>16.3.1 系统模型 488<br>16.3.2 写失效 489<br>16.3.3 失效协议 491<br>16.3.4 一个动态分布式管理器算法 492<br>16.3.5 系统颠簸 494<br>16.4 释放一致性和Munin 494<br>16.4.1 内存访问 495<br>16.4.2 释放一致性 496<br>16.4.3 Munin 497<br>16.5 其他一致性模型 499<br>16.6 小结 500<br>第17章 CORBA实例研究 503<br>17.1 简介 503<br>17.2 CORBA RMI 504<br>17.2.1 CORBA客户和服务器举例 506<br>17.2.2 CORBA体系结构 509<br>17.2.3 CORBA接口定义语言 511<br>17.2.4 CORBA远程对象引用 515<br>17.2.5 CORBA语言映射 515<br>17.3 CORBA服务 516<br>17.3.1 CORBA命名服务 517<br>17.3.2 CORBA事件服务 519<br>17.3.3 CORBA通知服务 520<br>17.3.4 CORBA安全服务 522<br>17.4 小结 522<br>第18章 Mach实例研究 527<br>18.1 简介 527<br>18.1.1 设计目标和主要设计特点 528<br>18.1.2 Mach主要的抽象概述 529<br>18.2 端口. 命名和保护 530<br>18.3 任务和线程 531<br>18.4 通信模型 533<br>18.4.1 消息 533<br>18.4.2 端口 534<br>18.4.3 mach_msg 系统调用 535<br>18.5 通信实现 535<br>18.5.1 透明消息传递 535<br>18.5.2 开放性:协议和驱动程序 537<br>18.6 内存管理 537<br>18.6.1 地址空间结构 538<br>18.6.2 内存共享:继承和消息传递 538<br>18.6.3 对写时复制的评价 539<br>18.6.4 外部分页 540<br>18.6.5 对访问内存对象的支持 541<br>18.7 小结 542<br>参考文献 545<br>索引 575
猜您喜欢