移动Agent技术在分布式计算中的应用(可编辑).doc
《移动Agent技术在分布式计算中的应用(可编辑).doc》由会员分享,可在线阅读,更多相关《移动Agent技术在分布式计算中的应用(可编辑).doc(40页珍藏版)》请在三一办公上搜索。
1、 图书分类号:.:工学硕士学位论文移动技术在分布式计算中的应用硕士研究生: 刘杰导 师: 党德玉教授工学硕士申请学位级别:学科、专业: 计算机应用技术所在单位: 信息工程学院答辩日期: 年月授予学位单位: 东北电力大学摘 要摘 要目前,互联网己成为人们发布和获取信息的重要平台,如何有效合理地利用庞大的网络资源,得到最有效的服务已成为人们关注的焦点。随着网络用户数和信息量的爆炸性增加,传统的分布式计算技术越来越呈现出效率低的劣势,因此研究和开发新的、高效的分布式计算模型成为迫切需要。移动技术是一种新型的分布式计算技术,它是为解决复杂的、动态的、分布式的智能型应用问题而提出的一种全新的计算手段。移
2、动技术涉及计算机网络、分布式系统和人工智能等诸多领域,由于其具有移动性、自主性和协调性等优点,因而具有广阔的应用前景和发展空间。本文重点研究和探讨如何将移动技术应用于分布式计算中,成功搭建了分布式计算的平台,并在该平台上进行了初步尝试。本文首先分析比较了几种传统的分布式计算技术和常见的分布式对象模型,然后介绍了移动的概念、体系结构、计算模式和关键技术及移动的代理平台一一的相关理论,并根据分布式计算的特点提出了一个新的基于移动的分布式计算框架结构,详细阐述了基于移动技术的分布式计算框架的设计方法和实现的关键技术。最后用高阶矩阵乘法验证了该平台的高效性。关键词移动:;分布式计算东北电力大学硕士学位
3、论文酊 ., : ,. . . 、.,.,. ,. ., ,?一,.:;:.论文原创性声明本人声明,所呈交的学位论文系在导师指导下本人独立完成的研究成果。文中依法引用他人的成果,均已做出明确标注或得到许可。论文内容未包含法律意义上已属于他人的任何形式的研究成果,也不包含本人已用于其他学位申请的论文或成果。本人如违反上述声明,愿意承担以下责任和后果:.交回学校授予的学位证书:.学校可在相关媒体上对作者本人的行为进行通报;.本人按照学校规定的方式,对因不当取得学位给学校造成的名誉损害,进行公开道歉;.本人负责因论文成果不实产生的法律纠纷。日期:论文作者签名: 塑壹蕉 年?土月丑论文知识产权权属声明
4、本人在导师指导下所完成的论文及相关的职务作品,知识产权归属学校。学校享有以任何方式发表、复制、公开阅览、借阅以及申请专利等权利。本人离校后发表或使用学位论文或与该论文直接相关的学术论文或成果时,署名单位仍然为东北电力大学。论文作者签名:导师签名:第章前 言言第章前.课题研究的背景和意义人工智能和计算机网络的飞速发展,特别是近年来及其相关技术的普遍应用,为高性能计算提供了必要的方法和手段。在这样的背景下,计算已经不再像以前那样仅仅局限于网络中的几台服务器上,而是要求所有计算机都融入到高性能计算这一大环境中来,这就引发了高性能计算新一轮的研究热潮,其中分布式计算更是研究的热点。在科学研究中,一直存
5、在大规模高密度的巨型计算,但是巨型机开发困难,硬件成本昂贵,而且将一些中小规模的计算加载到巨型机上运行,不但巨型机本身的效能得不到充分的发挥,且对于巨型机上宝贵的计算资源而言,也是一种巨大浪费;但另一方面,世界上存在着大量的微型计算机和工作站,它们之间用局域网和广域网连接在一起,构成了一个巨大的计算资源,和巨型机相比,这种资源廉价。因此利用网络连接的机群系统进行分布式计算,成为业界近十年来研究的热点。在网络高速发展的今天,各个站点的资源都在不断地变化,即使在小范围的局域网上,计算机和计算机上的资源也在时刻动态地变化。如要利用这种资源进行计算,人为地去把握动态变化信息是很困难的;另一方面,网络低
6、带宽、高延迟越来越成为限制网络并行计算发展和推广的瓶颈,为解决这个矛盾,人们提出许多新的网络计算模型,移动就是在这种形势下提出的一种新的分布式计算模型。移动技术。咖是一种新型的分布式计算技术。世纪年代初,公司在推出其商业系统时第一次提出了移动的概念,即一个能在异构网络环境中自主地从一台主机迁移到另一台主机,并可与其它或资源交互的软件实体。移动是一类特殊的软件,它除了具有软件的基本特性?自治性、响应性、主动性和推理性外,还具有移动性,主动代表用户完成指定的任务。移动具有突出的优点,正因为如此,移动技术受到了来自于世界范围内的工业界及学术界的重视。移动可以移动到网络中的各个节点,因而可以充分地利用
7、网络上的资源。不少专家预言,移动将成为分布式计算模式的主流,其突出优点旧主要有以下几点:.有利于减轻网络负载;移动技术能较大程度地减轻网络上原始数据的流量。它不需要像请求与应答结构那样在网络问频繁地传送数据;不需要保持网络的始终连通,允许间断式的连接,提高了网络的利用率。分布式系统通常依赖于通信协议,这些协议在完成给定任务的过程中涉及多次交互行为,这将导致网络交通拥挤。移动可以将一个会话过程打包,然后将其派遣到目的主机上进行本地交互。此外当进行远地主机的大量数据处理时,这些数据不应在网络上传来传去,而应在本地被处理完成。理由很简单:应把计算移动到数据上去进行,而不是把数据移动到计算中来,这一特
8、点越是在通讯量大的情况下越能体现出优越性。.有利于并行处理:移动在进行任务处理时可以动态地创建多个使之并行工作,这就提高了效率并降低了任务的响应时间。.可以封装协议;当数据在分布式系统中进行交换时,每一台主机都有自己的网络协议,该协议将对传出的数据进行编码,并对传入的数据进行解码。但是,协议经常为满足新的效率和安全需要而改进,而实现该协议的代码升级工作要么几乎不可能,要么相当困难。而移动能够直接移动到远地主机,建立起一个基于私有规程的数据传输通道。.能以异步方式自主运行:通常,移动设备上的计算皆依赖于昂贵而脆弱的网络连接,它要求在移动设备和固定网络之间建立持续的连接,这种要求从经济和技术的角度
9、来讲都不易实现。但这些任务可以嵌入到移动中去,此后移动就可独立于生成它的进程异步自主操作了。移动设备则可在稍后的时间里再通过连接来收回。.具有较强的应变能力:移动具有感知其运行环境,并对坏境变化做出反应的能力。许多移动拥有在网络主机之间动态合理分布自身的独特能力,比如按一定规则来维持解决某个特定问题的最优配置。.具有天然的异构性:分布式网络计算平台往往是异构的,由于移动第章前 言通常独立于计算机和传输层,而仅仅依赖于其运行环境,所以移动提供了系统无缝集成的最优条件。.具有较强的坚定性和容错性:移动具有对非预期状态和事件做出应变的能力,这使我们更容易创建坚定和容错性好的分布式系统。当关闭一台主机
10、时,所有正在该主机上运行的会得到警告,并有足够的时间移动到另一台主机上继续运行。将移动的思想引入到分布式计算系统中,对系统进行组织和设计,这将在很大程度上解决以往分布式计算模式中的低带宽,高延迟问题,因此采用移动技术进行分布式计算是一个值得探索的研究课题。.国内外研究现状和发展趋势目前的分布式计算主要采用远程过程调用、进程迁移、/模式,移动代码等技术。随着面向对象技术的发展日趋成熟,出现了多种模型,其中的一,的/叫,的/是对的包装和扩展四是其中的主流。但这些模型都存在一定的局限性,最明显的就是要求所有参与计算的节点在进行交互时,必须同时在网络中存在,如果某些所需资源暂时无法访问到,则整个计算过
11、程将失败。并且目前分布式系统通常依赖于网络通信协议,在完成任务的过程中这些协议需要进行多次交互,从而很容易导致网络拥塞。而基于移动的分布计算模型就很好地解决了这些问题。在移动模式下,客户机向服务器提交的不再是一些简单的请求,而是包含代码和数据的移动对象。移动对象代表用户,按照“程序靠近数据”的原则,在服务器间自主的移动,完成数据处理的任务。移动的出现使得计算机之间的通信变成向其它计算机提供可执行的计算过程,通过网络传送的消息也是包含计算过程及其所处状态的计算实体。在移动计算模型中,计算过程及其相应状态在接收方计算机中完全代表了发送方的所有请求,此时网络的可靠性变得不再那么重要,这是因为:.移动
12、仅仅在移动时使用带宽。.移动在移动后即使此时已经失去了与创建者之间的网络连接仍东北电力大学硕士学位论文将继续执行。移动可以封装一个完整的会话过程,然后自主移动到目的主机上去进行本地交互。因此,如果一个客户机需要与网络上特定服务器进行大量的通信,最好的办法就是实现一个使用移动的系统,该能够自动移动到远程服务器上,执行计算任务并返回,这样可以减少网络拥塞。整个计算过程中客户机没有必要在网络中存在,仅仅在移动返回时,客户机才需要连接到网络上。从年代初移动的概念被提出以来,移动技术一直受到业界的广泛关注,并得到较快的发展。移动目前已经从理论探索进入到实用阶段,涌现出了一系列较为成熟的开发平台和执行环境
13、。考虑到移动本身需要对不同的软硬件环境进行支持,所以最好选择在一个解释性的、独立于具体语言的平台上开发移动。是目前开发移动的一门理想语言,因为经过编译后的二进制代码可以在任何具有解释器的系统上运行,具有很好的跨平台特性。目前使用的移动系统大致可以分为三类:一类是基于传统解释语言的,一类是基于语言的,另一类则是基于平台的。下面介绍几个典型的移动系统嗍,它们代表了当今移动技术的基本方向和潮流:.公司的:作为移动系统专用语言的最早尝试, 公司开发的曾经在过去的几年里被广泛采用。是一种面向对象的解释性语言。它在开始出现时还是一个比较成功的移动开发平台,其安全性和健壮性都比较好,执行效率也很高。但随着的
14、迅速崛起及其跨平台特性的逐步完善,的优势慢慢消失, 公司开始改变其策略,开发了一个完全用实现的, ,以移动系统,它能够支持及 。继承了的许多特性,是目前被广泛使用的一个移动开发平台。.公司的“:是最早基于的移动开发平台之一。的名字来源于和,可以简单地将其看成具有第章前 言行为的对象。以线程的形式产生于一台机器,需要时可以随时暂停正在执行的工作,并将整个分派到另一台机器上,然后继续执行尚未完成的任务。从概念上讲,一个就是一个移动对象,它支持自动运行的思想,可以从一个基于的主机移动到其它支持的主机上。构造了一个简单而全面的移动编程框架,为移动之间的通信提供了动态而有效的交互机制,同时还具备一整套详
15、细而易用的安全机制,这一切使得移动的开发变得相对简单起来。.公司的嘲:可以看成是一个增强了的对象请求代理,它是一个纯分布式计算平台,可用来迅速生成高性能分布式应用程序,是代表当前技术水平的一个优秀的移动开发平台。移动为设计和建造能很好地适合大规模网络动态环境的分布式应用提供了一个新的方法。基于移动的分布式计算系统具有较好的互操作性、扩展性、动态性和普遍性,但是由于基于移动的分布式计算技术的各项支撑技术,包括移动技术本身,还处于研究和发展的阶段,加之涉及的技术范围广、难度大,因而从总体上对其进行研究,进而形成分布式计算应用的比较通用的整体开发框架并投入使用的例子还鲜见报道。在国内目前关于这类系统
16、的研究尚处于起步阶段,很多理论和技术仍处于探索阶段,新的问题亟待解决,大量的方法和思想亟待研究与实现。因而开展基于移动的分布式计算程序开发框架的研究是一项具有挑战性,同时也极有意义的工作。.本课题的主要工作和组织结构.本课题的主要工作本课题的研究工作主要有六大部分:.移动系统的选择和平台的搭建:本文在分析比较了多种分布式计算技术和分布式对象模型后,发现移动技术能较好地弥补其它技术和模型的不足。由于肼是完全基于的移动平台,故决定采用 来搭建系统的分布式计算环境。东北电力大学硕十学位论文.在的基础上实现了一个适用于通用并行问题求解的计算环。目的是让用户透明的实境现分布式计算,即不必要求用户了解移动
17、机制和的就可以利用移动进行分布式计算。.在分析了一般并行数值计算程序的基本框架的基础上,提出了通用的并行问题求解设计模式。在程序框架中,具有和两个角色模型。开发者只需要在框架结构下完成创建分解计算任务和执行任务的组件,而创建、进行调度、迁移代码的全过程由系统完成,并且组件具有更好的重用性。.提出了通信与交互模型,参照和实现了的基础通信原语。这是一个基于消息队列的通信模型,支持发送和广播原语,以。及异步的接收原语。.在系统中实现了一个简单的平均分配任务的调度模型,然后提出了一个能够根据负载动态调度的调度模型的具体实现方案,并介绍了一个简单事务模型。.在局域网内用高阶矩阵乘法对该环境进行验证,结果
18、表明该框架能较好地完成用户指定的任务,有效地提高了计算的效率。.本文的组织结构本文共分为五个章节。第章为引言,简要介绍了课题研究的背景、意义和国内外的研究现状,然后介绍了本文的研究内容和组织结构。第章比较全面地分析比较了传统的分布式计算技术和几种常见的分布式对象模型。第章系统地介绍了移动技术及移动平台的相关理论。第章是本文的核心部分,详细介绍了基于移动技术开发分布式计算框架的设计与实现。本课题在推出的移动系统的基础上实现了一个适用于通用并行问题求解的计算环境。从通用并行问题求言第章前解的设计样式、消息通信机制、调度策略模型、简单事务模型等四个具体方面来详细分析系统的设计过程,并讨论实现中的技术
19、细节问题。第章给出了一个比较具体的分布式计算实例?高阶矩阵乘法的设计与实现,并对运行结果作了简要的说明。最后是结论部分,主要对本文的研究结果加以总结并对研究的发展和迸一步的工作加以展望。东北电力大学硕士学位论文第章分布式计算技术分布式计算技术是指在网络计算平台上开发、部署、管理和维护以资源共享和协同工作为主要目标的分布式应用系统。即开发者设计的应用必须在互连计算机组成的网络上分散计算以减轻系统负担,这些应用必须对已有的资源进行最优利用以满足业务的需求,从而达到性能、可扩展性、安全应用和维护等方面的要求。目前分布式计算技术有很多,本章主要对几种常见的分布式计算技术和分布式对象模型做一简要介绍。.
20、传统的分布式计算技术通信网络的出现使得计算能力的远程使用成为可能。下面简要讨论已有的几种分布式计算技术,并分析其各自的优缺点。.远程过程调用 ,远程过程调用是为缓解最初的消息传递模型编程的琐碎性而提出的。支持本机的程序通过标准过程调用机制调用远程机的过程。调用的客户机实际上调用的是本地的桩,桩将过程名以及调用参数放入调用信息中并将其发送给远程主机。远程机上服务器的桩接收到消息后,从中抽取过程名和参数,然后调用相应的过程,在过程完成后,远程机的桩将结果发回给客户机的桩,之后客户机的桩将结果返回给客户,但在通信过程中需要在远程和本地间进行频繁的交互,而且这种调用必须是单向的。.远程求值 ,显然,远
21、程过程调用正确执行的前提是被调用的过程事先存在。这个要求限制了在大型分布式系统中的应用。在很多情况下,要调用的过程在远程节点上并不存在,这就要求人们研究新的方式解决这个问题,远程求值“”方法第章分布式计算技术正是在这种情况下出现的,它具有较高的灵活性。它允许网络中的节点向远程节点发送子程序和参数信息,远程节点启动该“子程序”。一些初始请求可由该子程序发出,中间结果也由该子程序处理,而不需返回源节点,子程序只是将最后的处理结果返回源节点。.客户/服务器模式./,/分布式技术发展到今天,/模式成为主流技术。在/通信模型中,通信的实体双方有固定的、预先定义好的角色:服务器提供服务,客户使用服务。这种
22、模式隐含了一种严格的依赖关系:客户依赖于服务器所提供的服务而工作。客户发出服务请求,然后在服务器上完成任务,最后服务器将处理结果返回到客户机。引入客户和服务器的角色,模式和模式都是/模式的一种。/模式存在着一些固有的缺陷,如果服务器不确切提供客户方所要求的服务,比如它提供更为底层的服务,则客户就必须得通过一系列的远程调用来获得其所需的服务,这就导致了服务响应的延迟和网络带宽的浪费。另外,当客户请求较多时,服务器的效率会大大降低,客户请求的响应时间也会延长,这主要是由计算环境中的处理器资源计算资源、软件资源和信息资源等都集中在服务器上造成的。.移动代码?针对/结构中资源过于集中的缺点,?“”模式
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 移动 Agent 技术 分布式 计算 中的 应用 编辑

链接地址:https://www.31ppt.com/p-2393382.html