分布式系统复习

上传人:jin****ng 文档编号:124903910 上传时间:2022-07-25 格式:DOC 页数:7 大小:69KB
收藏 版权申诉 举报 下载
分布式系统复习_第1页
第1页 / 共7页
分布式系统复习_第2页
第2页 / 共7页
分布式系统复习_第3页
第3页 / 共7页
资源描述:

《分布式系统复习》由会员分享,可在线阅读,更多相关《分布式系统复习(7页珍藏版)》请在装配图网上搜索。

1、分布式系统复习I1. 分布式系统目标:资源共享、协同计算。2. 分布式系统问题源于三大特点:并发性、无全局时钟、故障独立性。3. Internet & Intranet难点:可扩展性(DNS、IP)、资源的定位、异构。4. 移动计算要解决的问题:避免由于移动需要重新配置的问题(DHCP);无线带宽有限,需要考虑QoS;私密和安全问题;Ad hoc网络的路由问题。5. P2P 定义:计算机借助直接交换实现资源共享。6. P2P 与 C/S 的区别: P2P 网络中的节点既可以获取其他节点的资源或服务同时也是资 源或服务的提供者,即兼具client和sever双重身份。7. 挑战:异构性、开放性、

2、安全性、故障处理、可扩展性、并发性、透明性(访问、位置、 并发、复制、故障、移动、性能、扩展)。II1. 结构模型:构成系统各部分的位置、角色、它们之间的关系。 C/S、 P2P、 C/S 变种2. 基础模型:为分布式系统设计者揭示若干关键问题。 交互模型:处理消息发送的性能问题,解决分布式系统中设置时间限制的难题。 故障模型:试图给出对进程和信道故障的一个精确的约定,它定义了什么是可靠的信道 和正确的进程。安全模型:讨论对进程和信道的各种可能的威胁,引入了安全通道的概念,它可以保证 在存在各种威胁的情况下通信的安全。3. 中间件:软件层,一组计算机上的进程和对象,它们相互交互,实现分布式系统

3、的通信 和资源共享。为系统开发者屏蔽系统的异构性,提供更方便的编程模式。4. 交互模型: 进程之间通过消息传递进行交互,实现系统的通信和协作功能; 有较大的时延; 时间是进程间进行协调的参考,在分布式系统中,很难有相同的时间概念; 独立进程间相互配合的准确性受限于上面两个因素。5. 故障模型: 计算机和网络发生故障,会影响服务的正确性; 故障模型的意义在于定义可能出现的故障形式,为分析故障带来的影响提供依据; 设计系统时,知道如何考虑容错需求。6. 安全模型: 分布式系统的模块特性及开放性,使它们暴露在内部和外部的攻击下; 安全模型的目的是提供依据,以此分析系统可能受到的侵害,并在设计系统时防

4、止这些 侵害的发生。III1. 同步系统中的物理时钟同步一个进程发送时间t至另一个进程,且消息传输不确定性为u=max-min,则 接收进程:将时钟设置为t+min,时钟偏移至多为u 将时钟设置为t+max,时钟偏移至多为u将时钟设置为t+(max+min)/2,时钟偏移至多为u/22. Cristian 方法存在时间服务器,消息往返时间Tround,服务器返回时间t 设置时间为 t+Tround/2若消息最小传输时间为min,则精度为+/-(Tround/2-min)3. Berkeley 算法 主机周期轮询从属机的时间,主机计算容错平均值,主机发送每个从属机的调整量。4. 逻辑时钟:大题!

5、5. 快照算法 目的:捕获一致的全局状态。 假设:进程和通道均不会故障;单向通道,提供FIFO顺序的消息传递; 进程之间存在全连通关系; 任一进程在任一时间可以开始全局拍照; 拍照时,进程可继续执行,并发送和接收消息。 标记接收规则:强制没有记录状态的进程去记录状态。Pi 接收通道 C 上的标记消息:if (pi 还没有记录它的状态)pi 记录它的进程状态;将 C 的状态记为空集;开始记录从其他接收通道上到达的消息;elsepi 把 C 记录到从记录它状态以来它在 C 上接收到的消息集合中;endif 标记发送规则:强制进程在记录下自己状态后但在发送任何其他消息前发送一个标记 在pi记录了它的

6、状态之后,对每个外出通道C: (在pi从C上发送任何其他消息之前) pi 在 C 上发送一个标记;IV1. 分布式互斥目的:仅基于消息传递,实现对资源的互斥访问。 假设:异步系统、无故障进程、可靠的消息传递。 基本要求:安全性、活性、顺序。性能评价:带宽消耗、客户延迟、吞吐量。2. 中央服务器算法: 满足安全性和活性,不满足顺序要求。带宽消耗: enter() : 2 个消息,请求和授权;exit(): 1 个消息,释放。客户延迟: 1 个消息往返时间。同步延迟: 1 个消息往返时间。 性能瓶颈:服务器。3. 基于环的互斥算法: 满足安全性和活性,不满足顺序要求。 带宽消耗:由于令牌传递,持续

7、消耗带宽。 客户延迟: min: 0 个消息,正好收到令牌;max:N 个消息,刚刚传递令牌。同步延迟:min: 1个消息,进程一次进入临界区;Max: N 个消息,一个进程连续进入临界区。4. 使用组播和逻辑时钟的算法: 进程进入临界区需要其他所有进程的同意。(组播+应答) 并发控制: Lamport 时间戳避免死锁。 满足安全性、活性、顺序要求。带宽消耗:enter() : 2(N-1),请求和回应个N-1。 客户延迟: 1 个消息往返时间。同步延迟: 2 个消息传输时间。伪码: 初始化: state:=RELEASED;pi 为了进入临界区: state:=WANTED;将请求组播给所有

8、进程;wait until(接收到的应答数=(N-1) state:=HELD;在pj(ij)接收一个请求(Ti,pi):if (state=HELD or (state=WANTED and (T,pj)(Ti,pi) 将pi的请求放入队列,不予应答;else马上给pi应答; state:=HELD;endif 为了退出临界区:state:=RELEASED; 对已进入队列的请求给出应答;5. Maekawa 投票算法: 会产生死锁。 伪码: 初始化:state:=RELEASED; voted:=FALSE;pi 为了进入临界区: state:=WANTED; 将请求组播到 vi 中所有进

9、程; wait until (接收至U回应数=K) state:=HELD;pj(ij)接收到来自pi的请求:if (state=HELD or voted=TRUE) 将 pi 的请求放入队列,不予应答; else将应答发送给 pi;voted:=TRUE;endif pi 为了退出临界区:state:=RELEASED;将释放消息组播给vi中的所有进程; pj(ij)收到来自pi的释放:if ( 请求队列非空) 删除队列头 pk; 发送应答给 pk; voted:=TRUE;else voted:=FALSE;endif6. 基于环的选举算法: 目的:在异步系统中,选举具有最大标识符的进程

10、作为协调者。 算法:最初,每个进程标记为非参加者; 任何进程可以开始一次选举:将自身标记为参加者;idmsg=idlocal,发送elect,idmsg至邻居; 非参加者转发选举消息:将自身标记为参加者;发送elect,max(idmsg,idlocal)至邻居; 当 idlocal=idmsg 时,该进程成为协调者:将自身标记为非参加者;idcoordinator=idlocal,发送elected,idcoordinator至邻居; 参加者转发选举结果消息:将自身标记为非参加者;记录 idcoordinator;性能:最坏: 3N-1 个消息;最好: 2N 个消息。7. 霸道算法:同步系统

11、。、。8. 可靠组播:有可能是大题! 性质:完整性、有效性、协定。 算法: 初始化:Received:=;p 为了将 R-multicast 消息发送到 g:B-multicast(g,m);在 q 执行 B-deliver(m) 时,其中 g=group(m) :if (m 不属于 Received) Received:=ReceivedU m; if (q弄P)B-multicast(g,m);endifendif9. 拜占庭将军问题:N=3f,无解决方法。N=3, f=1 时, N=4, f=1 时的情况。V1. 事务:由客户定义的针对服务器的一组操作,它们组成一个不可分割的单元,由服务

12、器 执行。目标:当多个事务访问对象以及服务器面临故障时,保证所有由服务器管理的对象保持 一个一致的状态。ACID:原子性、一致性、隔离性、持久性。2. 四大问题:(能够根据图表判断问题原因,并给出相应解决办法) 更新丢失、不一致检索:串行等价性。脏数据读取、过早写入:严格两阶段加锁。3. 冲突操作:两个操作的执行效果与它们的执行次序相关。 读写操作的冲突规则:readread否readwrite是writewrite是串行等价性:两个事务中所有冲突操作都按相同次序在访问对象上执行。4. 事务的严格执行:read和write都推迟到写同一对象的其他事务提交或放弃后进行。 能真正保证事务的隔离性。

13、5. 锁:表格记住。 两阶段加锁:保证两个事务的所有冲突操作都必须以相同次序执行。增长阶段:不断获取新锁。收缩阶段:释放锁。 严格两阶段加锁:避免事务放弃导致的脏数据读取、过早写入等问题。所有获取的新锁必须在事务提交火放弃后才能释放。 读锁和写锁的相容性:已设置的锁申请的锁readwritenoneokokreadok等待write等待等待嵌套事务的加锁:父事务继承子事务的所有锁。子事务获得读锁,只有其父事务可以持有该写锁; 子事务获得写锁,只有其父事务可以持有该写锁或读锁。6. 乐观并发控制: 三个阶段:工作、验证、更新。(由于验证更新过程较短,每次只允许一个事务处于验证和更新阶段)冲突规则

14、:TvTi规则writereadTi 不能读 Tv 写的对象readwriteTv 不能读 Ti 写的对象writewriteTi不能写Tv写的对象,Tv不能写Ti写的对象向后验证:检查Tv的读集是否与其他较早重叠事务的写集重叠。startTn: Tv 进入工作阶段时已分配的最大事务号。 finishTn: Tv 进入验证阶段时已分配的最大事务号。 boolean valid=true;for(int Ti=startTn+1;Ti=finishTn;Ti+)if(Tv的读集与Ti的写集相交)valid=false; 向前验证:比较 Tv 的写集和所有重叠活动事务的读集。设活动事务具有连续的事

15、务标识符activelactiveN boolean valid=true;for(Tid=active1+1;Tid=active;Tid+) if(Tv的写集与Tid的读集相交)valid=false;7. 时间戳排序:每个事务启动时被赋予一个唯一的时间戳,时间戳定义了该事务在事务时 间序列中的位置,不会引起死锁。冲突规则: 写请求有效:对象的最后一次读访问或写访问由一个较早事务执行时; 读请求有效:对象的最后一次写访问由一个较早事务执行时。写规则:是否接受事务Tc对对象D的写操作。if(TcD的最大读时间戳&TcD的提交版本的写时间戳) 在D的临时版本上执行写操作,写时间戳置为Tc; e

16、lse放弃 Tc;读规则:是否接受事务Tc对对象D的读操作。if(TcD 的提交版本的写时间戳)设Dselected为D上具有最大写时间戳的版本=Tc if(Dselected 已提交)在Dselected版本上进行读操作;else 等待直到形成版本的事务提交或放弃,然后重新应用读规则; else放弃 Tc;8. 比较: 悲观:简单,并发度低。时间戳排序:静态的决定事务之间的串行顺序,适用于读操作占优的情况。 两阶段加锁:动态的决定事务之间的串行顺序,适用于更新操作占优的情况。 乐观:适用于并发事务之间冲突较少时,性能较高。放弃事务时,需要重复大量工作。VI1. 复制 动机:增强服务(增强性能

17、,提高可用性,增强容错能力)。 基本要求:复制透明性:对客户屏蔽多个物理拷贝的存在;客户只对一个逻辑对象进行操作。一致性:在不同应用中有不同强度的一致性需求;复制对象集合的操作必须满足应 用需求。2. 容错服务 被动(主备份)复制:一个主副本管理器+多个备份副本管理器。 主动复制:副本管理器的地位对等,前端组播消息至副本管理器组。3. gossip、bayou、coda:高可用性,较弱一致性。4. gossip查询:副本管理器收到查询 q.pre q.pre=valueTS 将消息保存到保留队列前端收到查询响应 合并时间戳 frontEndTS:=merge(frontEndTS,new);按因果次序处理更新:前端发送多个更新请求: (u.op,u.prev,u.id) 副本管理器 i 接收请求:丢弃:操作已处理过(查询操作表和日志记录)否则: tsi=tsi+1;logRocord:= 前端合并时间戳:frontEndTS:=merge(frontEndTS,ts);5. Coda:大题!VIIVIIIIX大题部分1. 逻辑时钟: lamport 时钟,全序逻辑时钟,向量时钟。割集的一致性:对它包含的每个事件,也包含在该事件之前发生的所有事件2. Coda 文件系统。3. GFS 的体系结构、读操作、互斥操作。4. P2P 四个算法异同。5. 伪码中的某一个。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!