导图社区 分布式计算
分布式导论,进程,网络存储技术:第12章面向服务的分布计算:WSDL是基于XML的,它已于2007年成为W3C的推荐标准。WSDL文档用来描述和定位一个Web服务。
编辑于2022-05-03 10:13:47分布式计算
第14章 志愿参与式分布计算
14.1 P2P网格结构
14.1.1 集中式P2P
集中式拓扑的特点是含有中心索引服务器,多个中心索引服务器放置在不同的地理区域,它们通过互联网连接起来向客户节点提供统一的访问端口
14.1.2 全分布式非结构化P2P
全分布非结构化对等网络的特点是任意的网络拓扑,内容的存储位置与网络拓扑无关
14.1.3 全分布式结构化P2P
全分布式结构化对等网络是基于分布式哈希表
14.1.4 混合式P2P
混合式结构也称半分布式结构。半分布式结构吸取了集中式结构和全分布式非结构化拓扑的优点,选择处理、存储、带宽等方面性能较高的节点作为超级节点
14.2 P2P网格应用
14.2.1 应用领域
信息共享、志愿计算、协同工作、即时通信、信息检索、网络存储
14.2.2 应用实例:HPSMA
HPSMS体系结构、拓扑感知的覆盖网络、HPSMA路由查找模型、基于HPSMA的媒体流传输服务
14.3 志愿者计算
14.3.1 GIMPS计划
14.3.2 SETI@Home
志愿者计算是一种研究计划安排,在这种安排中,人们为该计划提供计算资源,用以进行分布式计算或数据信息存储
第13章 公用服务式分布计算
13.1 集群计算
13.1.1 集群结构
集群系统是相互连接的多个独立计算机的集合,一个计算节点可以是单机或多处理器系统,每个节点都有自己的存储器、I/O设备和操作系统
13.1.2 集群系统分类
1.按应用目标分:支持面向科学计算型的高性能集群和支持面向关键任务应用的高可用性集群
2.按处理机和操作系统:同构型集群和非同构型集群
3.按集群部署:工作组集群、部门集群和企业集群
4.按拥有和使用方式:专用集群和非专用集群
13.1.3 中间件
1.基本支持软件
特点
对用户透明、资源透明、极大简化了系统管理
2.资源管理和调度(RMS)
负责管理各种用户作业队列,负责收集监视集群内各种资源信息,根据当前系统的负载信息、资源状况和作业运行需求进行调度
3.集群编程
最常用的是消息传送接口(MPI)
4.并行调试器
HPDF论坛、TotalVIew
13.1.4 实例系统分析:Condor
特点、Condor的资源管理、工作原理、实现技术和系统管理
13.1.5 资源管理系统
是集群系统常配置的主要基础软件,其目的是使用系统资源的使用更加有效,提高系统的吞吐量
将一些主机连接起来,通过网络互连,使得计算机硬件、操作系统、中间件软件、各种系统管理软件有机结合起来,从而获得更高的性能性价比
13.2 多集群计算
13.2.1 多集群体系结构
1.集中式多集群管理
2.层次式多集群管理
3.分布式多集群管理
13.2.2 多集群可重复性
空闲集群加入多集群、多集群的合并、Master离开、Slave集群离开、多集群的拆分
13.3 网络计算
13.3.1 网格计算原理
基本概念、虚拟组织、网格体系结构
13.3.2 网格计算基础软件包:Globus项目
元计算实验床、Globus中间件构件GMT、高级服务、作业提交
13.3.3 基于Java的网格计算:Javalin项目
1.Javalin基本结构
Task、Hosts、Client、Broker、Server
2.Javalin工作原理
3.负载平衡
Clinent可以存储它的Task Applet到一个或多个Server上,并将其URL至少登记到一个Broker中
4.通信
13.3.4 开放式网格服务体系结构
网格服务结构、开放网格服务基础设施
13.4 云计算
13.4.1 云计算基本概念
13.4.2 云计算架构与构建
13.4.3 云计算主流技术
虚拟化技术
云计算是一种模型,人们可以使用它方便地按需通过网络访问一个可配置的计算资源,如网络、服务器、存储、应用和服务器等的共享池,只需最小化的管理工作量或服务提供商干预就可以快速地开通和释放资源
第12章 面向服务的分布计算
12.1 Web文档服务
12.1.1 超文本标记语言
1.HTML基本语法
元素、元素属性、文档字符集、字符编码、字符实体、数据类型、注释
2.HTML文档结构
版本信息、<HTML>元素、<HEAD>元素、<META>元素、<BODY>元素
12.1.2 超链接
1.web资源路径信息
绝对路径、相当路径、片断标识符
2.<A>元素
3.<LINK>元素
12.1.3 超文本传输协议
特点
HTTP采用客户/服务器工作模式、HTTP使用元信息作为头标、HTTP支持动态格式、HTTP支持两种请求和响应格式、HTTP是基于文本的简单协议
12.1.4 公共网关接口
使Web访问达到半自动化水平,让HTNL文档在客户机和服务器之间有了更多的交互性
12.2 Web服务
12.2.1 Web服务契约
服务功能描述
端口类型、操作定义、消息定义、类型定义、策略定义
服务访问描述
端口类型绑定、操作绑定、消息绑定、策略绑定
服务位置描述
服务定义、端口定义、地址定义、策略定义
12.2.2 扩展标记语言
XML文档、XML名字空间、XML Schema模式语言
12.2.3 Web服务描述语言
WSDL是基于XML的,它已于2007年成为W3C的推荐标准。WSDL文档用来描述和定位一个Web服务
12.2.4 简单对象访问协议(SOAP)
SOAP HTTP绑定、SOAP的元素、SOAP消息结构、SOAP消息实例
12.2.5 通用描述、发现和集成
注册中心、注册信息、服务接口、UDDI复制、接口文档实例与通信、web服务流程
12.3 面向服务构架
12.3.1 问题概述
12.3.2 SOA概念架构
服务框架
服务是可以独立操作的、是自描述的、是松耦合和异构的、是可组合的、是动态的、是标准和开放的、是有质量保证的
数据/消息模型
服务数据对象,可以与多种数据模式交互
服务编排和流程整合
12.3.3 服务组件架构
SCA组件、SCA构件、SCA域、策略框架
12.3.4 服务数据对象
SDD基本结构、SDD模型、SDD实例创建与使用、变更摘要、序列化服务、帮助类
12.3.5 业务流程执行语言
BPEL概述、流程资源、流程活动、流程处理器
12.3.6 企业服务总线
提供通信、整合、安全、事务支持和服务质量控制等满足SOA性能要求的基础架构
12.4 Jini服务
12.4.1 Jini概述
Jini系统是一个分布式系统,它联合了用户群和用户群所需要的资源,构成一个Jini网,这种网很灵活且易于管理,用户或客户端可以用来查找所需要的服务资源
12.4.2 系统结构
1.组件
三类
基础设施、编程模型、服务
2.服务结构
Jini协议和服务实现
第11章 面向对象的分布计算
11.1 分布式组件对象模型
11.1.1 概述
Microsoft的对象链接和嵌入技术是用于组合文档,即在页面中嵌入动画、视频和声音等对象
11.1.2 COM对象技术
1.COM对象接口
COM对象功能
IUnknown接口、函数指针表、接口继承、接口查询、COM对象生命期
2.COM对象的动态链接
动态链接库(DLL)是一个组件服务器或组件发布方式,它拥有创建类厂和组件的接口函数供客户调用
3.COM对象创建
创建类厂、创建组件、组件注册
4.COM对象复用
两种机制
包含/代理机制和聚合机制
5.可互连对象和事件服务
COM定义了一种发送接口,通过该接口服务器可以与客户进行双向对话
6.COM基本设施
持久存储、智能名字、一致数据传输
11.1.3 DCOM体系结构
COM的系统级实现称为COM库,它主要完成查找注册数据库,定位服务器,返回对象指针等工作
11.2 公共对象请求代理结构
11.2.1 OMA参考模型
OMA(对象管理结构),由对象模型和参考模型组成
11.2.2 CORBA组成
1.OPB核心
实现对所有OPB都相同的接口,这些接口包括动态调用接口、动态框架接口和ORB接口
2.对象适配器接口
对象适配器的作用
对象登记、对象引用生成、多路请求、对象向上调用
3.接口定义语言和静态接口
客户用ORB携带的IDL编译器,编码对象接口IDL文件,生成特定编码语言的Stub和Skeleton代码
4.动态接口
11.2.3 ORB功能与操作
ORB接口是用来执行ORB系统功能,包含对客户和服务器都有用的操作,不依赖与使用的对象适配器
11.2.4 静态调用的应用开发
1.CORBA接口定义语言
IDL模块、数据类型、构造类型、异常类型
2.分布式对象应用开发过程
分布式对象应用开发过程是:用IDL定义对象接口文件;用ORB携带的编译器编译对象接口文件,得到目标语言客户端Stub类和服务器端Skeleton类
3.客户端应用开发
ORB初始化与关机、处理对象引用、方法调用与参数传递
4.服务器端应用开发
CORBA对象存在于服务器应用程序中,通过特定语言实现的对象称为服务器程序
11.2.5 动态调用与接口库
1.动态调用接口DLL
2.动态框架接口DSI
3.接口库IR
11.2.6 CORBA公共对象服务
CORBA公共对象服务是一组COSS规范。COSS规范由一组接口和服务行为构成,其接口一般使用OMG IDL描述
11.3 Java RMI
11.3.1 RMI体系结构
RMI应用程序通常由两个独立的程序构成:一个服务器和一个客户端
11.3.2 RMI应用开发
分布式应用开发步骤、远程接口、服务端软件、客户端软件
11.4 分布式对象系统比较
对象模型
对象总线
对象服务
其他
面向对象的分布式计算也是一种客户/服务器计算模式
第10章 分布式事务处理
10.1 分布式数据库简介
10.1.1 分布式数据库组成
1,分布式数据库管理系统(DDBMS)
功能
用户接口、数据定位、策略选择、异构翻译
2.网络数据字典
网络数据字典(NDD)提供为确定逻辑节标识符所必需的信息
3.网络访问程序
网络访问程序(NAP)是连接分布式数据库系统的通信软件,执行分布式数据库大部分通信功能
10.1.2 分布式数据库分类
综合型结构
联合型结构
同构型和异构型
10.1.3 分布式数据库视图
全局视图、用户视图、分片视图、分布式视图和局部视图
10.2 事务与事务类型
10.2.1 计算机事务处理
1.基本事务模型
X/Open,现在易名为Open Group
2.全局事务模型
若一个事务跨接多个节点,除了访问本地资源外,还要访问其他节点的资源,这样的事务称为分布式事务,也称为全局事务
3.事务属性
原子性、一致性、隔离性、持久性
10.2.2 事务串行化
修改丢失、非一致性提取、串行化等效交叉
10.2.3 事务中止恢复
资源管理器(服务器)应该记录所有提交事务的结果,而不记录被中止事务的结果
10.2.4 事务分类
单层事务、嵌套事务、分布式事务
10.3 分布式事务并发控制
10.3.1 事务加锁
实施对象加锁的基本方法是在资源管理器(RM)中构造一个锁管理器
10.3.2 事务时间戳
当事务发送给事务管理器时,由事务管理器为事务指定一个唯一性时间戳,这个时间戳分别贴在事务发出的所有读操作和写操作上
10.3.3 乐观并发控制
加锁并发控制是食物网请求对对象进行读写操作时得到相应的锁,一直保持到事务结束,有人称其为悲观并发控制
10.4 两阶段提交协议
10.4.1 X/Open XA接口
X/Open XA接口主要是实现二阶段提交协议,也包括资源管理器参与事务进行登录向事务管理器的调用
10.4.2 两阶段提交协议
1.二阶段提交
“提交票”和“中止票”
2.事务中止
如果有一个资源管理器投“中止票”,事务管理器便决定中止事务
10.5 分布式死锁检测
10.5.1 死锁检测消息
事务表示、输入输出端口表示、I/O通路描述、死锁检测消息
10.5.2 集中式死锁检测
周期性检测、连续性检测
10.5.3 分布式死锁检测概述
10.5.4 死锁预防
防止死锁一个简单但不怎么好得多办法是,事务启动时对所要用的资源管理器都进行加锁
服务器产生的死锁,资源管理器有解除的措施
分布式事务处理的对象主要是分布式数据库
第9章 分布式文件系统
9.1 分布式文件系统概述
9.1.1 分布式文件系统抽象模型
1.客户端
客户端是一台式机或工作站,客户模块负责访问本地文件还能访问远程文件
2.服务器端
服务器端提供目录服务和文件服务,文件服务包括文件操作和文件属性操作
3.网络与远程过程调用
分布式文件系统的客户端和服务器端是通过企业内部网、局域网或广域网连在一起的
9.1.2 分布式文件系统设计问题
文件使用模式、命名与名字解析、结构与接口、缓存策略与一致性、文件共享语义、断开操作与容错
9.2 网络文件系统
9.2.1 NFS结构模型
NFS底层模型是远程文件访问模型,它为客户对远程服务器所管理的文件系统提供透明服务。NFS支持硬连接和符号连接
9.2.2 命名
1.名字空间
命名空间是用来组织和重用代码的
2.文件安转协议
远程文件服务器提供了一组过程,由客户调用在本地目录中选定的挂接点实现远程文件安装
3.文件属性
文件属性可以用布尔值、无符号整数或其他数据结构表示
4.文件句柄
持久文件句柄、可变(挥发)文件句柄
9.2.3 远程过程调用
1.复合调用
在NFS中,客户与文件服务器之间的通信是采用远程过程调用(RPC)的形式
2.RPC重传
NFC所用的RPC机制不能保证可靠性,因为客户端和服务器端生成的RPC桩可能基于可靠的、面向连接的TCP传输协议,也可能基于不可靠的、无连接的UDP传输协议
3.安全RPC
NFC建立在RPC层次之上,因此建立NFS安全通道的关键是建立安全RPC
9.2.4 文件共享
NFS支持文件共享,但文件共享对不同用户应有不同的限制
文件加锁
文件访问控制
9.2.5 客户端缓存和服务器复制
1.客户端缓存一致性与委托
2.服务器复制与迁移
9.3 Andrew/Coda文件系统
9.3.1 组织结构
1.Coda系统组成
数量相对少的专用Vice文件服务器
大量Virtue工作站
2.AFS/Coda内部组织
9.3.2 Coda文件命名
1.名字空间与文件共享
2.文件标识符
9.3.3 远程过程调用RPC2
1.客户与服务器连接
Host,Portal,Subsys,Bparms绑定参数,ConnHandle连接句柄
2.RPC2的副作用
副租用是RPC2实现的一个功能,是客户和服务器之间应用特定的协议
3.并行通信
AFS/Coda的一个重要的设计问题是服务器需要记录哪些客户具有文件的本地副本
9.3.4 共享文件语义
事务处理语义
访问控制
9.3.5 缓存与复制
客户端缓存
服务器复制
Coda允许以文件卷为单位将文件复制到多个服务器上
断开操作
9.4 SMB/MS-DFS文件系统
9.4.1 SMB/CIFS协议特点
1.传输层连接
服务器名断定
服务器名解析
2.版本协商
3.安全机制
客户认证
消息验证
文件与记录加(解)锁
9.4.2 SMB消息格式
消息交换
消息格式
同步消息头部格式
异步消息头部格式
9.4.3 SMB2消息实例
1.版本协商
协商请求
协商响应
2.会话的建立与撤销
会话连接建立
会话连接删除
3.共享的建立与断开
共享连接
共享断开
4.对共享的操作
读文件
文件加(解)锁(Lock)
9.4.4 分布式文件系统MS-DFS
1.MS-DFS名字空间
名字空间的创建、增加名字空间服务器、复制共享目标
2.MS-DFS名字解析
转交缓存与目标服务器排序、MS-DFS转交协议、MS-DFS转交消息
9.4.5 全球工作组
全球工作组概述、开源Samba、HP_CIFS实例
第8章 多副本一致性与DSM
8.1 一致性模型
8.1.1 数据为中心的一致性模型
严格一致性、顺序一致性、因果一致性、FIFO一致性、弱一致性、释放一致性、入口一致性
8.1.2 客户为中心的一致性模型
单调读、单调写、写后读、读后写
8.2 分发协议
8.2.1 副本放置
1.永久副本
永久副本是由数据存储的拥有者创建和管理,且作为数据拥有者的数据 固定存储
2.服务器启动的副本
目的是增强系统的性能
3.客户启动的副本
解析结果存放在客户的高速缓存中
8.2.2 更新传播
对分布式多副本数据存储的数据更新是由用户启动的。数据更新应传播到所有的副本,对所有副本执行修改操作,以保持副本的一致性
8.3 一致性协议
8.3.1 主-从副本协议
1.远程单副本协议
分布的、数据项单副本的且副本位置固定的数据存储服务
2.远程主副本协议
分布的、数据项多副本的且主副本位置固定的数据存储服务
3.迁移读/写协议
分布的、数据项为单副本的和副本位置可移动的数据存储服务
4.迁移主副本写协议
分布的、数据项多副本的且主副本位置可移动的数据存储服务
8.3.2 复制写协议
1.主动复制
作用:操作全局定序、防止多副本的重复调用
2.基于法定数量的协议
要求客户在读或写一个多副本共享数据项之前,向多个副本服务器提出请求,并得到他们的同意
8.3.3 高速缓存相关性协议
是客户启动的多副本,形成了一类特殊复制,一般由客户而不是由服务器控制
8.4 分布式共享存储器
8.4.1 分布式共享存储器的问题
目的与结构、同步、修改选择与一致性、粒度与假共享
8.4.2 基于页面的分布式共享存储器
系统模型、读写操作与顺序一致性、副本拥有者和副本集,页面替换
8.4.3 共享变量的分布式共享存储器
1.系统结构
2.变量类型
只读变量、迁移变量、写共享变量、生产者-消费者变量、结果、私有变量、大量读变量、常规变量
8.4.4 基于对象的分布式共享存储器
实例
Linda和Orca
数据存储多副本的目的是提高系统的可靠性和性能
1.提高系统容错能力
2.提高系统效率
3.增强系统可扩展性
第7章 网络存储技术
7.1 存储设备接入标准
7.1.1 SCSI结构模型
SCSI的组成
1.SCSI域
SCSI是一种客户/服务器结构。接口的客户称为启动器
2.启动器
启动总线连接并执行输入/输出操作的SCSI设备称为启动器
3.目标器
被启动选择的外围设备称为目标器
4.任务分送系统
任务分送系统即SCSI总线及其协议标准,负责服务请求与响应在启动器与目标器之间传送
7.1.2 SCSI命令集
1.命令格式
操作码、LUN、逻辑块地址、逻辑块数、控制字节
2.状态
命令被目标器执行后将进入状态阶段。在状态阶段,目标器将状态码字节返回启动器,报告命令执行情况
7.1.3 SCSI消息系统
1.消息系统的目的
是启动器向目标器提供问题信息的重要途径,利用消息系统把启动器不能预见的事件通知启动器
2.消息格式
固定字节数消息、可变字节数消息
3.消息分类
链路控制消息、任务消息、管理消息
7.1.4 SCSI任务管理
一个启动器发到LUM的多个命令便形成任务集。任务管理是处理任务属性和任务结束
7.2 光通道技术
7.2.1 光通道协议层1
1. FC-0层
网络连接:线路、连接器、收发器
2.FC-1层
传输控制:8b/10b编码解码、原语信令、原语序列
3.FC-2层
信令控制:帧打包解包、流量控制、服务类型
4.FC-3层
公共服务
5.FC_4层
高层协议映射:IPL、SCSI、HIPPI、SBCCS、802..2、IP、ATM
7.2.2 光通道拓展结构
光通道拓展
(1)点对点拓展
(2)仲裁环拓展
(3)交换式拓展
7.2.3 光通道信息单元
1.SCSI映射
SCSI功能
I/O操作、协议服务请求与响应、发送SCSI命令/任务管理、数据传送、返回命令执行状态、状态接受确认
2.光通道帧结构
SCSI功能映射到FCP的交换、序列和信息单元
3.信息单元类型
FCP的信息单元映射为帧的载荷,由FC帧承载信息单元的命令任务管理、数据、命令响应(状态)以及响应确认在启动器和目标器之间传送
4.光通道信息交换市例
FCP读操作、FCP写操作、FCP任务管理
7.2.4 光通道链路服务
1.定序集
一个定序集是由一个控制字符和三个数据字符组成的一个传输字
2.基本链路服务
FCP基本链路服务是由FC-2帧承载
3.扩展链路服务
FCP扩展链路服务用来建立光通道操作环境,执行错误恢复,检查两个FC设备之间的物理链路情况
4.进程登录与去登录
7.3 附网存储器和存储域网
7.3.1 存储域网
存储域网在主机(服务器)与存储设备之间提供块级I/O,用FC或Ethernet提供主机(服务器)和存储设备之间的网络连接
7.3.2 附网存储
附网存储是一个独立装置,具有自己的IP地址,能直接挂接到企业LAN上,可以部署到很远的地方
7.4 基于IP的存储域网
7.4.1 iSCSI
iSCSI协议将SCSI命令、数据和命令响应封装在TCP/IP分组中,允许I/O块数据在IP网上传送
7.4.2 IP网承载光通道FCIP
1.FCIP协议模型
2.FCIP数据帧
3.FCIP链路建立
第6章 分布计算系统安全
6.1 安全性问题陈述
1. 安全性问题陈述
窃听、中止、篡改、伪造
2. 安全策略与机制
(1)密码与加密
计算机安全的基础
(2)数字签名与身份认证
数字签名保证被签署消息的不可抵赖性。身份认证用于检验客户和服务器所声明的身份
(3)服务授权与服务控制
身份认证之后,检查是否授予该用户执行所请求操作的权限
(4)审计
审计工具用于跟踪客户的服务内容和访问方式
6.2密码体制
6.2.1 对称密码体制
用同一个密钥对一个消息进行加密和解密
AES加密算法
6.2.2 非对称密码体制
加密系统的加密秘钥和解密密钥不同
6.2.3 散列函数
也称Hash函数,是一种只能加密不能解密的单向密码体制,是从明文得到密文的不可逆映射
6.3 安全通道与认证
6.3.1 数字签名
1.数字签名体制
数字签名的特征
可验证性、不可伪造性
不可否认性、数据完整性
2.数字签名方案
凡是能够保证数据真实性的公钥密码系统都可以用来实现数字签名
3.带密钥的数字签名MAC
6.3.2 身份认证
单向认证
双向认证
6.3.3 会话密钥
6.4 通用安全服务
6.4.1 通用安全服务应用程序接口
6.4.2 Kerberos认证系统
6.5 访问控制与授权
6.5.1 访问控制
1.一般问题
2.访问控制矩阵
3.保护域
6.5.2 访问授权
1.授权证书
授权证书是一个由授权者签发的包含多个字段的信息体
2.委托
委托是授权证书持有者可以将证书指定的权限全部或部分交付给第三者
第5章 分布式系统同步
5.1 时钟同步
5.1.1 物理时钟
1.时钟硬件
所有的计算机都有一个计时电路,一般被称为时钟,或计时器
外同步
内同步
2.时间测量
太阳秒、国际原子时钟(TAI)、全球协调时钟(UTC)
5.1.2 时钟同步算法
Cristian算法、Berkeley算法
5.1.3 网络时间协议(NTP)
定义了一个时间服务结构和在Internet上分发时间信息的协议
NTP时间服务器的三种同步方式
1)多播模式
2)过程调用模式
3)对称模式
5.2 逻辑时钟
5.2.1 Lamport时间戳
1.事件先发生关系
2. 逻辑时钟
3. 逻辑时钟全定序
Lamport 逻辑时钟帮助我们得到了分布式系统中的事件全序关系
5.2.2 向量时间戳
基于向量时钟我们可以获得任意两个事件的顺序关系,结果要么是有因果关系(先后顺序),要么是没有因果关系(同时发生)
5.3 选举算法
5.3.1 环算法
所有进程能够在物理上或逻辑上组成一个环结构,每个进程都保留一个按进程编号逻辑排序的一个表,因此知道自己的所有后继进程
5.3.2 欺负算法
允许进程在选举过程中失效,通过超时机制来检测进程失效
5.4 互斥算法
互斥算法的适应性 静态互斥算法:算法的行为独立于系统的状态 动态互斥算法:算法的行为依赖于系统的状态 互斥算法应满足的条件 无死锁:当资源可用时进程不应该永远等待 无饥饿现象:每个对资源的访问请求最终都应能得到满足 公平性:进程对资源访问权的获得应是相对公平的
第4章分布式系统通信
4,1消息传送
1.消息传送模式
两个基本原语
发送原语send
接收原语receive
2.消息传送可靠性
(1)至少一次:保证正确完成消息传送至少一次
(2)至多一次:保证正确完成消息传送至多一次
(3)事务语义:保证消息的原子性
(4)精确一次:无论在什么情况下,保证正确完成一次消息传送
3.双向消息
在客户/服务器计算范型中,客户向服务器发出一个请求消息,并等待服务器返回一个响应消息
4.2组通信
4.2.1组通信的概念
1.进程组的组成
进程组的分类
封闭组与开放组
对等与层次组织
进程组成员的管理
组服务器
2.组通信的应用
(1)多副本容错
(2)提高多副本数据修改效率
(3)自发连网的服务发现
(4)事件通知传播
4.2.2组通信的实现
1.IP多播
2.Java多播类
4.2.3可靠的组通信
1.基本的可靠组通信
可靠的组通信是指发送到一个进程组的消息,被进程组的每个成员接受
2.可靠多播的扩展性
1)不分层反馈抑制
2)分层反馈抑制
3.原子多播
1)虚拟同步
2)消息排序
4.3远程过程调用
概念
调用方将调用参数通过消息传送给被调方,被调方将执行结果通过消息返回给调用方。这种方式对消息进行了包装,客户看不到这些消息的传送过程,这种方法称为远程过程调用(RPC )
4.3.1 RPC基本操作
1.本地过程调用
2.远程过程调用
4.3.2 参数传递
1.值参数传递
2.引用参数传递
3.参数的规范形式
4.桩的生成
4.3.3 RPC语义
1.客户不能定位服务器
2.请求消息丢失
3.应答消息丢失
4.服务器崩溃
5.客户崩溃
4.3.4 DEC/RPC
4.4远程对象方法调用
4.4.1 客户与对象绑定
1.远程对象引用
远程对象引用是访问对象的一种机制
2.客户与对象绑定
隐式绑定
显示绑定
3.对象通信
调用和被调对象同在一个进程中,称为本地调用
调用和被调对象在同一节点但不在同一进程中,称为进程外调用
调用和被调对象在不同的节点上,称为远程调用
4.4.2 远程方法调用
4.5事件与通知
4.5.1 分布式事件通知
4.5.2 Jini事件通知
1.事件涉及的对象
2.事件接口
远程事件监听者接口
远程事件类
事件生成器接口
3.第三方代理
第3章分布式进程
3.1分布式进程概述
3.1.1进程与多线程
1.进程
进程的概念来自操作系统,它定义为执行中的程序。它有就绪、运行、挂起和终止等状态,具有一定的生命期。
为了执行应用程序,操作系统创建了多个虚拟机处理机,每个虚拟处理机运行一个程序。这个运行中的程序称为进程。
进程的地址空间
文本区域
是一个固定的不可修改的区域,存放进程的程序代码
数据堆区域
由存储在程序二进制文件中的数值初始化,向高虚拟地址扩展
堆栈区域
程序调用时用来存放返回地址等,向地虚拟地址延伸
每次创建一个进程时,操作系统必须为它创建一个完整的独立的地址空间并为它进行初始化,即:数据初始化,将程序的可执行代码复制到文本段(代码段)并设置程序计数器,建立堆栈并设置堆栈指针,设置内存管理部件的寄存器和虚拟地址页表缓冲器等
2.多线程
定义:线程被看做程序的一部分在虚拟处理机上执行,但是线程系统一般只维护用来让多个线程共享CPU所必需的最少量信息
多线程系统的实现:线程一般是以线程包形式提供。线程包提供创建与销毁线程操作、对同步变量操作
线程包的实现方法
1.用户模式线程库
2.内核管理与调度的线程
3.混合形式
3.1.2分布式进程创建
1)目标主机选择
位置策略
传输策略
2)执行环境建立
3.2进程远程控制
需要远程执行
资源贫乏的简单用户终端
e-学科
3.3进程迁移
3.3.1进程迁移概念与过程
1.基本概念
动态进程迁移是将一个正在运行的进程挂起,它的状态从源处理机节点转移到目标处理机节点,并在目标处理机上恢复该进程运行
2.进程迁移机制
迁移协商-创建恢复进程-中断被迁进程运行-收集源处理机上被迁进程状态-传输被迁进程状态-恢复被迁进程状态-通告被迁进程的新位置-被迁进程恢复运行-操作转发
3.3.2进程迁移策略:动态负载平衡
1.信息管理模块
2.负载平衡模块
3.3.3进程迁移的实现
迁移算法主要采用了效率较低的Total-copy算法、网络通信量过重等
3.4分布式对象
特点
透明性、动态性、定义清晰的访问接口、面向对象的多层客户/服务器计算模型组织各种分布式对象
第2章.名字服务
2.1名字服务结构
2.1.1名字与属性
名字服务的形式
(1)名字服务
增加名字项和绑定
撤销名字项和绑定
名字解析
修改名字项和绑定
(2)目录服务
(3)合约服务
2.1.2名字空间
两种组织形式
扁平结构
分层结构
大型分布式系统的名字组织采用分层结构
2.1.3名字服务器
名字服务结构由客户端(客户与名字代理)和名字服务器通过网络互连而成,名字代理是名字服务器与客户之间的一个接口。缓存是将名字解析的结果存放在客户端或名字服务器中。
1.名字空间划分与多副本
上下文集中管理(分布式结构)
容易产生单点故障
上下文分布管理
多副本是指一个名字域存储在多个名字服务器上,为了提高名字访问的性能,常采用多副本
2.名字服务器组成
名字服务器操作、名字解析、缓存、多副本管理、通信、数据库
2.1.4名字解析
迭代名字解析、递归名字解析、比较
2.2域名系统
域名系统(DNS)为Internet提供名字服务,实施Internet的主机和电子邮件的域名解析,它是当今在工作中最大名字服务之一。
2.3目录服务X.500
2.3.1目录服务模型
2.3.2目录服务操作
1.查询链与转交
2.镜像操作绑定
3.层次操作绑定
2.3.3目录服务协议
1.X.500协议栈
2.目录访问协议
3.目录系统协议
4.目录信息镜像协议
5.目录操作绑定管理协议
2.3.4轻量目录访问协议
1.DAP协议问题
2.LDAP模型
3.LDAP操作集
2.3活动目录域服务
活动目录域服务(ADDS)存储目录信息,管理用户和域之间的通信,包括用户登录、认证和目录查询。
第1章.概论
1.1分布计算的定义与挑战
1.1.1分布计算系统的定义
分布式计算系统是由多个相互连接的计算机组成的一个整体,这些计算机在一组系统软件(分布式计算系统或中间件)环境下,合作执行一个共同的或不同的任务,最少依赖于集中的控制过程、数据和硬件。
分布式计算系统=分布式硬件+分布式控制+分布式数据
1.1.2分布式计算系统的要求
1.开放性
2.可扩展性
3.易构性
4.透明性
5.安全性
1.1.3分布式计算系统的应用
1.科学计算的高性能应用
2.现代跨企业的电子商务应用
3.容错应用
4.固有的分布式应用
1.2分布计算系统的互连
1.2.1共享存储器多处理机系统
1.基于总线的多处理机
特点:规模较小,易与使用
2.基于交换的多处理机系统
特点:规模很大,通常用几千个节点,称为大规模并行处理机(MPP)系统
1.2.2同构多计算机系统
1.2.3易构多计算机系统
1.3分布式操作系统
操作系统的主要目的是让多任务的应用程序方便地共享资源(CPU、主存储器、磁盘、打印机、进程和文件系统}
1.4计算机网络与中间件
1.4.1网络操作系统
1.4.2分布式系统中间件
中间件的服务
1.命名服务和作业调度
2.高级通信服务和资源管理
3.数据表的持久性和分布式事务
4.分布式文档系统和安全服务
1.4.3中间件LSF
1.5分布式计算的模式
1.面向对象模式
2.面向服务模式
3.公用计算模式
4.志愿参与模式