分布式算法设计基础(第三节).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
分布式算法设计基础 通信协议 计算两个结点之间可靠的数据交换,仅有send和receive命令是不行的,因为通信必须依靠物理媒介进行,必须依靠协议机制。我们在第一章介绍了七层协议作为计算机网络通信系统体系结构的一种设计的渊源,这种设计现在已经成为国际标准化组织推出的标准。 协议的主要功能是数据发送和传递,即在一个站点发送信息,在另外的站点接收和投递信息,同时保证数据交换的可靠性。 可靠的数据传递包括重复发送那些丢失的消息,拒收的消息,因混淆而校正后的消息,以及重复发送被丢弃的消息副本。为了使协议确保我们收到的信息准确无误,必然要涉及到间接管理的问题,这进一步涉及到初始化和丢弃与连接有关的状态信息。 初始化: 打开连接 (占用通信资源) 丢 弃: 关闭连接 (释放通信资源) 连接管理的困难在于有可能出现情况: 当关闭连接时,一条消息留在了通道内,这就使得在不存在连接的情况下,或下一个连接被打开时,这条消息被接收,干扰了当前连接的正确性。 本章讨论两个协议。第一个协议完全是异步的,它属于OSI模型的数据链路层。第二个协议设计用于两个站点,它们之间的通信必须经过中间媒介网网络,故它属于OSI模型的传输层。它们之间的差别以下列两种方式影响这些协议所要求的功能。 ⑴ 出错考虑 两种不同的协议要考虑在传输过程中出现不同种类的错误; ⑵ 连接管理 在分布式计算中,为了在一段很长的时间里连续操作,通常要支持物理连接,而不是反复打开/关闭连接。对第一种协议,由于通信是在固定的一条物理连线上进行,可以不考虑连接管理,但对第二种协议,我们要考虑。 消息的断章取义 因为噪声等多方面的原因,消息在传递过程中可能会发生断章取义,但我们可以设想它可以由连接进程检测到。例如,借助奇偶校验或更一般的总和检查机制等。 1.平衡的滑动窗协议 协议算法在两个进程p、q之间进行,两个进程之间的地位是对等的。进程p可以连续地向进程q发送邮包,但累积发送给对方q尚未接受的邮包的总数受到一个定值的限制,这个定值就是“开窗”的大小。同样,进程q可以连续接收来自p发送的邮包,但是,累积接收的总量不可能超出p已经发送的邮包总量,某个当前阶段累积接收的邮包数量也不能超出p已经发送的邮包总量减去q自己已经收到的邮包总量,换言之,q不可能在接收邮包的通道变空时继续接收邮包。 理解这个协议算法,首先要了解这个算法的基本思想,然后要记住算法的各个变量,通过反复阅读,实际模拟算法的执行状态来理解算法,最后,通过进一步了解算法的性质来加深对算法的认识。 滑动窗协议算法中一些重要变量参数的含义解释: Qp:存放目的地为p的邮包的通道;Qq类似。 inp:刻画由p必须发送给q的信息,是p的输入,可能为无穷; outp:刻画记录q发送给p的信息且p已经收到的信息。 p可以随机地读访问inp,而且也可以随机地写访问outp。 sp :表示p仍然期待着从q接收的当前最低位的字的序位号,即p已经从outp[0] 写到了outp[sp-1],收到了消息outp[0]- outp[sp-1]。 pack,w,i :交换邮包,其中w是一个数据字,自然数i称为邮包的序列号, 当邮包由p发送给q时,就将字w=inp [i]传送给q 。 如果我们设定把由p发送给q的邮包 pack,w,i 作为对p 从q已收到编号为0…i-lp的字的致谢,那么,进程p就会领先 于q(事先设定)固定数目为lp这么多个邮包数发送邮包。 lp:进程p可以先于q发送邮包的领先数,这是一个事先设定的固定数目。 ap:表示 p尚未接收到的已发送字的致谢中编号为最小的字的序位号。这样,编 号从0到ap -1的由p发送给q的邮包或字,p知道q进程已经收到了。 Sp:由p发送第i个字的通信操作,i由发送的邮包信息表出。 Rp:表示p接收一个字的通信操作。 Lp:表示丢掉一个目的地为p的邮包。 要说明协议是正确的,关键是要证明或说明协议满足安全性质和生存性质。协议要求满足的安全性质实际上就是每个进程仅输出正确的通信数据,而协议所要求满足的生存性质(即通信系统没有发生死锁)指所有的通信数据最终都会被发送和投递。 ? 协议的安全性质 安全发送和投递 outp[0…sp-1] = inq[0…sp-1] 且 outq[0…sq-1] = inp[0…sq-1] p收到的 向p发送 右边的含义是类似的 sp个字 的sp个字 ? 协议的生存性质 (2)终会发送和投递 对每个整数k≥0,具有sp≥k且sq≥k的形态最终会到达。 ? 协议的不变量(式)算法3.1的协议的不变式 P ( (i ( sp:outp[i] ( udef

文档评论(0)

kehan123 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档