移动代理系统

关键词: 代理 管理系统 移动 网络

移动代理系统(精选十篇)

移动代理系统 篇1

关键词:移动代理系统,电子商务,网络安全

1 概述

代理(Agent)是一种在分布式系统或协作系统中能持续自主发挥作用计算实体,也称为智能体。其概念最初出现于人工智能领域,随着分布式并行处理技术、面向对象技术和网络技术的发展,代理成为当前计算领域最活跃的研究内容之一。一般认为,代理具有独立性、自主性、协作性和适应性等特点[1]。

移动代理运行于网络环境中,是一种适应大型异构网络(如Internet)的分布式计算模型。与传统的计算模型相比,移动代理具有以下优点:

1)移动代理的处理工作通常是在嵌入到远程机器的服务主机程序后执行,直接处理主机提供的资源,执行中不需要传送中间结果,最后结果由代理携带返回给用户。这样有效避免网络带宽的浪费,对于带宽较小的网络环境尤其有效。

2)移动代理可以根据环境的反馈信息来做出决策,以及时地获取资源并实现较优的计算方式,从而提高分布式计算的效率。

3)移动代理可以感知环境并调整自己,比较典型的是可以自适应地导航。

4)移动代理可以异步地在不同节点上运行,不需要保持与网络的长时间稳定连接。在低宽带、稳定性差的网络环境能保持工作。

5)移动代理可以通过协作来实现对复杂问题的求解。

最早的移动代理系统是1995年由General Magic开发的Telescript系统[2],此后又相继提出了Tacoma系统、Agent Tcl系统、IBM Aglets系统、Voyager系统等多种移动代理系统,现在比较新的是Concordia系统和Ajanta系统。

2 安全性问题分析

威胁移动代理系统安全的问题可能发生在:

1)网络与主机之间:由于代理需在开放环境中移动,因此可能受到网络中其他程序的被动或主动攻击,从而导致代理系统私有信息泄漏或被篡改。

2)移动代理运行环境与主机之间:在计算机安全史上的一个著名攻击案例就是Unix的“蠕虫”病毒。它利用在执行sendmail程序过程中的漏洞,将病毒代码嵌入sendmail程序,对运行邮件服务的Unix系统进行攻击。我们可以将“蠕虫”病毒比作代理,将sendmail程序比作CE,由于CE可能执行从非信任节点上迁移来的代理,或即使代理来自于信任节点,也不能保证代理行为的安全性,因此CE可能受到代理攻击,使其运行出错,从而对主机造成安全威胁。

3)代理与运行环境之间:以上CE对主机可能的攻击便是代理攻击CE所导致的一例。但代理对CE的攻击远不止这些。例如,代理可能窃取或篡改CE的状态信息。另一方面,由于代理系统中存在信任与非信任主机,因此CE也可能攻击运行于其上的代理。它可能窃取代理的信息、篡改代理的状态或代码,使其成为恶意代理威胁其他主机。

4)代理与代理之间:运行在CE中的代理可以相互通信。与在开放网络系统中相似,代理可能受到同一CE中的其他恶意代理攻击。恶意代理可能窃听通信通道,篡改通道中的消息,发送假消息,也可能发送消息给其他代理以调用它本不能调用的代码。甚至可能建立隐蔽通道泄漏重要消息。总之,移动代理安全问题主要表现为以下两方面:

2.1 移动代理的安全问题

移动代理在网络环境中迁移时,其代码和数据可能会成为攻击的对象,攻击可分为主动和被动两类。主动攻击是指对代理携带信息的修改、删除和伪造;被动攻击则是指在网络中从代理的数据流窃取信息。被动攻击很难防止,但是可以用加密机制来保护信息不受侵害。而防止主动攻击则需要移动代理系统的代理传输协议有一套完整有效的认证和保护机制。

移动代理在服务器主机地址空间中执行时,其执行过程完全暴露在服务器主机程序的控制之下[3]。这时恶意的主机程序可以攻击代理,常见的攻击手段有:1)恶意主机可以仅仅破坏或终止代理程序,从而阻止该代理完成其任务;2)恶意主机偷窃代理所携带的有用信息,如代理在迁移过程的中间结果;3)恶意主机可以修改代理携带的数据,如当一个代理负责为用户收集某种商品的最佳报价,该主机通过篡改代理程序所收集的以前的服务器报价,以欺骗用户误以为其提供的报价为最佳价格;4)恶意主机可能修改代理的执行代码,使其在其他主机和代理的所有者运行时进行恶意操作。这种情况尤其危险,因为所有者对自己创建的代理常会认为是安全的并允许其使用各种资源。

为了执行移动代理,计算环境必须能够访问代理的代码和状态,而且主机也需要修改代理的数据。因此无法彻底防止恶意主机对代理的修改。但是代理系统必须确保代理的创建者能检查出主机所做的修改,一旦发觉被恶意主机攻击,创建者应能采取相应的措施,如限制代理的执行或抛弃代理。

2.2 服务器主机的安全问题

运行移动代理的主机也会受到恶意代理的攻击,可以归纳为如下几种:(1)偷窃敏感资料;(2)破坏服务器系统资源;(3)服务拒绝攻击;(4)扰乱性攻击[4]。

当一个恶意的代理程序访问服务器时,它有可能设法打开机密文件,并将这些信息泄漏,从中获得利益。另外,一个恶意代理也可以破坏服务器的系统资源,如删除文件甚至格式化整个硬盘等。而服务拒绝攻击是指该恶意代理程序故意用完系统资源(如硬盘空间、内存、网络端口等),从而使得服务器无法完成与其他代理程序的正常业务。相对而言,扰乱性攻击对于服务器系统的破坏较小,它通常是恶作剧性质的,如该代理可以不断地在服务器上打开各种应用程序的窗口或使机器不断地发出蜂鸣声等等。

显然,在设计移动代理系统时,必须考虑如何保证服务器抵抗以上攻击,同时,对于合法的代理程序,服务器也应给予足够的资源访问权限,这就需要对代理程序身份进行确认,同时设计相应的安全分级及权限接入控制。

3 安全性问题的解决方案

3.1 CE对代理访问控制机制

移动代理系统中,代理在CE间传输时不仅涉及通信安全问题,还涉及到应用于各个代理上的安全策略问题[5]。因为在一般系统中的通信安全策略是基于每个通信通道的,而在移动代理系统中的代理传输时,安全策略是基于每个代理的,即基于通信通道中的数据而不是通道本身。

一般实现的移动代理中,发送与接收方采用相同的安全策略。在代理传输过程中双方用特定的加/解密算法对代理进行加/解密,为保证传输的完整性,通常采用数据摘要算法,以便接收方验证其完整性。

由于CE可能受到代理攻击,使其运行出错,从而对主机安全造成威胁。为了保护主机以防这种漏洞,Goldberg[6]等提出了一种安全环境Janus,限制在运行系统中非信任CE的存取。其基本思想是提供一个用户级监视机制,根据安全模块决定非信任CE发出的系统调用是否允许。

这种策略存在几个限制。首先,要实行该技术,操作系统必须运行一个用户级进程监视另一个用户级进程的系统调用。其次,由于安全策略在系统调用级实现,用户必须熟悉系统以定义安全策略,因此,这种机制仍有其不灵活性。

3.2 代理执行时安全机制

若能为代理提供一个安全的运行环境,以防代理非法存取内存等资源,则可以有效保护CE的安全。有两种技术可以提供代理执行时安全机制。一种是代码验证(Code Verifying)技术,它要求CE验证代理代码的安全性以保证每一操作的合法性,验证可在执行前或执行时进行。另一种技术是名字空间(Name Space)技术,即CE为代理分配单独的名字空间,代理的任何非法操作所产生的影响仅限制在代理可见的资源空间内。

现在已有一些系统采用代码验证技术实现安全的运行环境。Java就使用了类文件校验器,用来保证载入的类文件具有正确的内部结构。类文件校验器校验的过程可以分为两个阶段:阶段1发生在类刚载入以后,类文件校验器检查类文件的内部结构,包括校验所含的字节码的完整性;然而即使经过第一阶段校验,仍不能说类文件是安全的,因为Java程序中存在动态数据结构。阶段2发生在字节码执行的时候,字节码校验器确定符号引用的类、域和方法是否存在。

为避免运行时验证和解释,Necula与Lee[7]提出了携带证明代码(Proof-Carrying Code)技术。其思想是在派送移动代理的同时携带一个有效的安全证明。这个安全证明由代理的产生者或用户给出。当代码生成器生成代码时,它同时提供满足接收方安全策略的形式化证明编码。当接收方接收代码时,它可以从中得出代码安全性断言,由接收方的证明产生器去证明此代码的执行不违反其安全策略,然后代码才被执行。

名字空间技术并不确定每一步操作都安全,而是允许不合法操作存在,但不允许这些非法操作对系统中其它部分产生影响。

为限制代理中非法操作所产生的影响,Wahbe[8]等提出了软件故障隔离技术。CE的名字空间被分为若干段,这些段分配给不同代理。每个代理包括两段,一个是代码段,一个是数据段。不安全操作便是那些被引用的操作数地址不能静态验证处于正确段中的操作。有两种方法用以保护CE免受这种威胁,一种方法是在每个不安全操作之前插入检测代码,以检查操作数是否处于正确段中。另一种方法是利用“沙箱”技术,即在每个不安全操作之前将段标设为代理本身段标,从而任何操作不会影响系统其它部分。

3.3 认证与存取资源安全机制

当运行在CE中的代理发出存取系统资源请求时,存取控制机制必须确定请求者身份,然后检验其安全策略以决定请求是否被允许。这个过程包括认证与授权阶段。其中认证阶段可与CE接收代理时对发送者的身份认证合并,因为一旦CE接收了一个代理,其身份将由CE维护。为实现授权,有两种主要技术。一种方法是与在操作系统中类似的存取控制机制ACL列表,另一种是使用引用监制器(Reference Monitor)。它提供资源存取接口,从而每次对资源的存取都要经过安全策略的检查[9]。

3.4 代理间通信安全机制

由于多数移动代理系统是用面向对象语言实现的,因此方法调用模式是在这些系统中代理间通信所使用的机制。在这种模式中,通常通过调用方传递对象的引用作为方法的参数,传递给被调用方,从而实现数据交换。这种方法有几个问题。首先,由于被调用方代理能存取调用方代理的对象,因此很难保证调用方代理对象的完整性。而且被调用方代理能进一步将对象的引用传递给其它代理,从而使安全策略复杂化。其次,由于代理的接口是静态的,并且对不同代理有不同的安全策略,这种方法会在代理接口上增加安全检测边界,即代理必须自己提供安全检测代码,这将会使代理的设计复杂化。

总之,该文针对移动代理系统中的安全问题进行了研究,分析了移动代理系统安全威胁并得出其安全需求,接着研究了目前的安全性解决方案,希望对IT行业从业人员能起到一定的作用。但由于目前Internet移动代理技术主要应用于电子商务中,而在电子支付中,通常考虑到保护用户的隐私性而采用匿名的电子现金支付系统,目前模型没有做到匿名性,所以下一步有待我们继续深入探讨。

参考文献

[1]何炎祥.基于Agent的分布式开放计算环境若干基本问题研究[A].武汉大学博士学位论文集[C],1999.

[2]White J E.Mobile Agents[R].Technical Reprot,General Magic,Inc,Sunnyvale,CA,1995.

[3]李旭晖,吕慧,等.移动代理系统的安全问题[J].计算机应用,2001(7):7-10.

[4]王常杰,张方国,王育民.Internet移动代理技术中的安全性研究[J].西安电子科技大学学报,2001,28(2):268-272.

[5]Robert GS.Agent Tcl:a Flexible and Secure Mobile-Agent System[A].Proceeding of the foureh Annual Tcl/Tk Worksshop'96[C].Mon-terey,Cal,USA,1996,9-23.

[6]Goldberg I,Wagner D,Thomas R et al.A Secure Environment for Untrusted Helper Application.In Proceedings of the6th Usenix Security Symposium,San Jose,ca.1996-07.

[7]Necula G C,Lee P.Safe,Untrusted Agents Using Proof-carrying Code.Submitted for an LNCS Special Volume on Mobile Agent Security,1997-10

[8]Wahbe R,Lucco S,Anderson T E et al.Efficient Software-based Fault Isolation.In Proc.14th ACM symp.On Operating System Princi-ples,1993.

移动卡代理计划书 篇2

1、本团队与移动公司共同合作与发展。

2、提供移动卡在丽水九县市的使用率。

3、霸占旧市场强占新市场提升移动卡的发放总量。

4、希望与贵公司一起打造一支具有绝对实力的销售团队长期于贵公司合作。

代理项目:移动卡的各项业务与号码的发放。

团队简介:本团队目前有成员20余名,大多数都是从事通讯行业多年具有经验的成员。其中大部分是即将毕业的大学生,在校期间我们几乎都是联通与电信的业务员,虽然谁都知道联通和电信小灵通没有移动好做,但是我们的坚持使得联通和电信业绩一直保持着不错的状态。由于我们大多数都是即将毕业的大学生,所以我们要为自己的事业而忙碌着,但是我们一班人毕竟有了多年的感情,也不想离开通讯行业,所以我们现在又聚在了一起准备开一家公司主要以推销移动卡为主,希望长期能与贵公司合作下去,让我们的团队我们的公司成为贵公司的一家附属公司。

合作理念:

1、本团队希望与贵公司长期合作与发展,长期代理贵公司各种卡的业务。

2、我方希望贵公司能在硬件和宣传上给予支持,帮助我们组建一家具有相当实力的销售团队公司。

3、由于我方目前不太熟悉贵公司相关业务,所以在合作时间:首度合作时间一年。

初期的合作期间我方我敢保证一定的业务量,当本团队熟悉贵公司的业务之后,本团队将给出每月的保量协议。

基于移动代理的网络业务体系结构 篇3

文章从灵活提供业务的角度,在分析传统业务体系结构的特点和发展趋势的基础上,介绍了移动代理的技术特征,重点探讨了如何利用移动代理技术构建下一代移动通信网络的业务提供体系结构。

关键词:

下一代网络;移动代理;移动通信网络;业务体系结构

ABSTRACT:

The mobile agent technology can be used to flexibly provide telecom services. Following the analyses of the characteristics and development trends of traditional communication network service architecture, the technical features of the mobile agent technology is presented and a discussion is made with emphasis on the establishment of next generation network service architecture by using the mobile agent technology.

KEY WORDS:

NGN; Mobile agent; Mobile communication network; Service architecture

传统通信网业务体系结构是面向过程的。其业务控制采用集中控制方式,业务的分层结构和底层连接控制功能紧密关联。随着移动网的迅猛发展和个人通信需求的日益高涨,现有通信网络体系结构在用户个人业务的灵活提供和配置、智能化以及网络融合等方面都存在一定问题,传统的业务体系结构已经不能满足进一步发展的需要。

下一代网络是可以提供包括话音、数据和多媒体等各种业务的综合开放的网络,其架构应能支持移动和固定网络的融合。任何新的网络结构和技术必须能为用户提供高质量、丰富多彩的业务,网络的发展需要更加灵活方便的业务提供方式。虽然我们正在把面向对象业务建模、分布对象技术和开放业务体系结构(OSA)等新技术逐步引入业务提供领域,但还不能满足未来通信系统对业务提供的灵活性需要。

移动代理技术作为第3代分布计算技术,在许多领域都得到了广泛关注。利用移动代理的移动性和智能性,可以构造出系统管理和配置方便、业务提供灵活、移动管理简单的新的网络业务体系结构。

1 网络业务体系结构的演进

在传统的智能网体系结构中,新业务的设计、开发、生成和部署都是基于业务无关构造块(SIB)模式的。SIB是标准化的可重用的功能块,在创建新业务时只需将所涉及到的SIB按照一定逻辑顺序组合起来,因此创建新业务时,可以在尽可能少地修改软件的前提下快速、灵活地创建新业务。然而SIB并不是采用面向对象技术构建的,而是面向过程的,它们虽然也能被重复利用和开发,但是由于它们自身的模块颗粒度过大,代码的重用率和可扩展性无法满足现在的业务设计和开发需要,新业务的生成周期比较长[1]。因此,业务体系结构的发展趋势之一是引入对象技术,使用面向对象的业务建模取代基于SIB的业务生成方式,这样开发出来的业务代码重用性比较高,而且也比较容易维护。

传统的智能网业务控制高度集中,业务控制逻辑驻留在少数业务控制点(SCP)上,所有业务都必须在SCP的控制下执行,SCP容易成为整个系统的“瓶颈”。而且,SCP和业务交换点(SSP)之间的通信均须通过七号信令网(SS7),一旦信令网出现故障,用户将无法使用智能网业务[2]。因此,业务体系结构的另一个发展趋势是在网络中引入分布计算技术,由集中控制转化为分散控制。对象管理组织(OMG)制订的公共对象请求代理体系结构(CORBA)规范作为分布对象的一个典型技术,在分布式环境中引入一种分布的、可互操作的对象机制,允许对对象的透明访问,从而使通信网具有异构网络环境互通、并发处理、负载平衡、故障恢复以及系统可扩展性等分布式系统服务机制。

传统网络业务大多是以垂直的综合方式开发的。在这种开发方式中,业务的分层结构是和底层连接控制功能缠绕在一起的。当要对这样的业务性能和可靠性进行优化时,往往相当复杂并且难以扩展和重用。未来网络,特别是移动网络运营商面临的最大问题是如何构建面向终端用户的、具有开放性和扩展性的业务平台,如何在各个网络发展阶段平滑地将各种业务快速引入到自己的网络中。因此,业务体系结构第3个发展趋势是在现有网络层和业务层分离的基础上,进一步开放网络控制接口,以促进独立的第3方业务提供商的形成,提供丰富多彩的网络业务。

下一代软交换网络和第3代移动通信网都十分重视业务体系结构的上述发展趋势,提出了分布式的开放架构。图1所示为3GPP提出的开放业务体系结构,它是第3代移动网络用于快速部署业务的开放业务平台,采用开放、分层的结构模型,实现业务与会话控制分离,以及会话控制与承载分离。OSA着眼于为移动通信用户提供个性化业务,希望通过将业务部署与底层网络的分离,使第3方业务提供商有机会参与竞争,有利于多厂商互通和快速地部署新业务。OSA实现方式是向业务提供商提供一种开放、标准、统一的网络应用编程接口(API),通过这些API,业务应用程序可以方便地利用承载网络的业务能力,如呼叫控制能力、用户信息查询能力等,而又不必了解承载网络信令细节,从而形成灵活的业务加载手段。移动运营者可以和其他机构合作,在网络提供的开放业务平台上开发出各种各样的灵活业务,从而满足移动用户的更高要求。

2 移动代理技术

代理指信息世界中具有一定程度智能、能够代表用户自治地完成特定任务的软件实体,而移动代理指具有跨地址空间持续运行机制的代理,它能够在需要的时候自主地从异构网络的一台主机迁移到另一台主机,并与其他代理或资源交互以完成其任务。移动代理技术是分布对象技术和人工智能技术的结合体[3,4]

CORBA中的对象是静止的,并且缺乏足够的智能,不利于动态多变的分布式环境。CORBA对象不能进行迁移,当我们需要一个CORBA对象服务时,必须建立连接,这将增加网络流量,在长时间对象交互时尤为如此。因此,单纯的CORBA技术在业务提供的灵活性和个性化业务配置方面尚无法满足通信运营商和移动用户的需求。而移动代理技术作为支持移动、拥有智能的第3代分布计算技术,可以为网络添加动态分布性能,更加方便地支持移动性管理和业务控制的动态按需部署,从而进一步提高移动通信网的服务性能[5]

移动代理技术改善了传统的对象技术和分布计算技术,这样我们就可以利用移动代理的自治性、智能性和移动性,构建能够灵活提供业务、个性化定制的下一代移动通信系统业务提供体系结构。

由于CORBA在电信界的广泛应用,因此在现有的CORBA为代表的分布处理环境(DPE)上架构移动代理环境(MAE),就可以为MAE上的代理传输、代理之间以及代理与非代理成分之间交互提供通信支持,这样可以综合利用这两种技术的优势。

如图2所示,在下一代移动通信系统的用户终端、归属地网络、访问地网络和业务提供系统中都构建起移动代理环境,从而建立分布代理环境(DAE)后,就可以在全网中部署移动代理了。通过业务提供系统生成的新业务用移动代理的形式部署到网络中,用户也可以用移动代理的形式个性化自己的业务,以便按需下载新业务。

3 基于移动代理的下一代移动业务提供体系结构

根据上述思路,适用于移动通信网应用的基于移动代理的业务提供体系结构如图3所示。

网络模型各部分的移动代理环境内都运行着一套代理,这些代理按照功能可以分为终端代理(TA)、用户代理(UA)、提供者代理(PA)、业务代理(SA)、位置管理代理(LMA)、网络能力代理(NCA)。另外,在归属地网络还有用户文档数据库。

用户文档数据库提供用户业务文档,如其所定制业务的业务属性描述、对每个业务的使用策略。用户文档数据还可以部分下载到TA或者UA内,从而在用户终端、访问地网络和归属地网络之间分配,建立起分布式用户轮廓。

TA位于用户终端,是用户与终端的一个接口。用户通过与驻留在终端上的TA交互,预览、定制新业务,发起、中止业务。TA描述终端设备的软硬件环境特征,用户及UA可以与TA交互以获取当前终端的能力,这样在业务定制阶段,可以根据终端的具体能力个性化用户所定制的业务。TA一般都可以有图形或文本界面,可以与UA通信或者加载某一具体业务的用户界面代理(UIA),从而能根据该业务的具体属性,动态调整对用户的界面。另外,用户经常使用并且不需要复杂网络资源来运行的SA也可以下载并封装到TA内。

UA代表用户在网络侧的实体,每一个用户都有且仅有一个与之对应的UA。当用户从一个区域漫游到另一个区域时,UA也跟随用户迁移到该区域。UA可以部分地存储用户轮廓数据,缓存当前终端的能力和设置,还可以保存经常使用的SA,以及一些业务的引用。当用户通过终端发起一个业务时,业务请求通过TA转发到UA,UA检测自身是否含有该业务的SA或者SA的引用,如果找不到,就向本地PA发送业务请求,由PA搜索本地网络,以定位用户所需业务。如果在本地网络还是找不到所需SA,则UA向归属地网络、业务提供系统的PA发起请求,让它们的PA搜索本地,以找到目标SA。找到该SA后,就可以把该SA的地址写入UA的引用中,通过远端执行或者代理下载执行。当用户从一个网络漫游到另外一个网络时,UA需要更新对SA的引用。用户修改、定制业务后,其UA所包含的SA或者SA引用也可能需要更改。

PA包括访问地提供者代理(VPA)、归属地提供者代理(HPA)、业务提供系统提供者代理(SPPA)。每个区域的PA含本区域所能提供的业务列表和功能描述,并对本地的SA进行管理。同时,每个区域内的PA还能和其他区域的PA进行协商,从而可以实现业务提供系统内的PA将新生成的业务向访问地网络、归属地网络进行广告或发布,以及访问地网络内的PA向归属地网络或者业务提供系统进行业务点播,这样就可以完成新业务在全网的部署以及业务的按需下载。

SA代表所提供的业务,可以被用户或者其他SA所调用。SA可以是一个完整的业务,也可以是一个业务的组成部分。多个SA根据一定的规则,可以组成一个新业务。SA是由业务提供系统所提供,并且可以通过下载分布到归属地网络和访问地网络。而经常使用的SA可以下载并驻留在终端移动代理系统,甚至可以装载入UA。其业务类型大致有两种:

(1)一般业务。这些业务的功能和可用性在全网都是相同的。

(2)其他业务。这些业务具有某些特性,或者其功能以及执行方式对于不同的业务提供商或者不同的网络而言是不同的。

LMA实现用户移动性管理。LMA提供精确定位用户的所有信息,通过对用户标识与UA所在访问地网络标识、用户代理标识之间的映射管理来定位用户。

NCA描述底层承载网络,提供在一定服务质量保证下的网络连接控制和业务交换控制。NCA向UA、PA、SA等上层实体封装底层网络具体实现技术,即可以是基于电路交换或者分组交换,并且可以是不同网络提供商的产品。NCA提供对网络资源的监视和接入,协商网络资源以建立连接,向上层实体提示网络的失败或者拥塞状态。

这样,多种代理密切协作,可以给用户和网络运营商、业务提供商提供灵活而又方便的业务提供体系结构,同时移动性管理也更加简单、方便了。

4 结束语

在利用移动代理技术构建的下一代移动通信网络的业务提供体系结构中,用户无论漫游到何种网络,使用何种终端,都可以在线预览新业务,定购新业务,修改正在使用的业务,在需要的时候动态下载新业务,甚至用一些基本SA动态组装新业务。然而,移动代理技术给移动通信带来新的使能技术的同时,也给安全问题带来新的挑战。UA或者SA从一个网络迁移到另一个网络后,可能会滥用本地网络资源,甚至会对本地网络或者用户进行恶意攻击[6]。因此,只有健全移动代理的安全机制后,才能更好地在该业务体系结构上进行灵活业务控制。□

参考文献

1 Fang Fang, Mi Zhengkun. Strategy of Evolution Towards Mobile Agent-Based Distributed Intelligent Network. Proc ICII‘2001, 2001: 747—752

2 Chai Yawei, Mi Zhengkun. An Agent-Based Distributed Service Architecture for Next Generation Network. Proc ICT‘2002, 2002: 889—892

3 Hartmann Jens, Song Wei. Agent Technology for Future Mobile Networks. Second Annual UCSD Conference on Wireless Communications in Cooperation with the IEEE Communications Society. San Diego, 1999

4 Hartmann Jens, G*9觟rg Carmelita, Farjami Peyman. Agent Technology for the UMTS VHE Concept. ACM/IEEE MobiCom‘98, Workshop on Wireless Mobile Multimedia. Dallas, 1998

5 André Leichsenring. The Mobile Agent Technology Applied to 3rd Generation Communication Systems. MTM‘99 Workshop. Heidelberg, 1999 Feb 25

6 Uskela Sami, Sivalingam Kengatharam, Ratschunas Kalevi, et al. Service Portability Across Mobile Networks. ACTS Mobile Communications Summit ‘99. Sorrento, 1999 June 8-11

(收稿日期:2002-08-04)

作者简介

陈金方,南京邮电学院通信工程系硕士研究生。目前参与国家自然科学基金项目“基于移动代理的可编程智能网关键技术研究”的研究和开发工作。

柴亚伟,南京邮电学院通信工程系硕士研究生。目前参与国家自然科学基金项目“基于移动代理的可编程智能网关键技术研究”的研究和开发工作。

基于移动代理的网络管理系统设计 篇4

1 基于移动代理网络管理系统的设计

1.1 移动代理技术

移动代理是一门新兴的技术,面世的时间较短,而且涉及到相当多的学术领域,所以迄今为止尚没有一个关于移动代理的完整且恰当的定义。一般认为,移动代理是一种独立的计算机程序,它可以将自己的过程代码、数据和控制状态打包,自主地在异构网络环境中,按照一定的规则移动,寻找合适的计算资源、信息资源或软件资源。利用与这些资源同处一台主机或网络的优势处理或使用这些资源,代表用户完成特定的任务,并可根据需要生成子代理,子代理具有同父代理相同的性质,代理间彼此独立工作或相互合作完成任务求解。移动代理技术具有自治性、智能性、协同性、定制性和安全性等特点[2,3]。

1.2 基于移动代理的应用系统结构

基于移动代理的应用系统,可由Agent用户、Agent服务器、Web服务系统、Agent转接系统4部分组成[4,5],Agent服务器和移动Agent取代了以往的Server和Client。当Agent用户需要搜索信息时,可通过连接管理器和执行引擎,根据用户的实际需求转移到相应的宿主系统,创建移动Agent,并通过Agent服务器访问Web服务器资源。通常宿主系统与资源服务系统在同一台服务器中,Agent对资源的访问只是同一系统中进程之间的通信,而不需要经过网络的传送。其结构如图1所示。

Agent服务器:由管理Agent、Agent库及Agent生成器组成。管理Agent负责管理和调度移动Agent,对多个Agent的活动进行协调。可以根据用户要求进行修改、删除、调用等操作。

代理坞:代理坞是移动代理生存和运行的环境。代理坞实质上是一个应用程序,它提供了相应的编程接口以支撑移动代理的装配和生成,每当该移动代理移动到一台目标主机时,相关的方法就会自动执行。Agent的移动路线在其移动时可以被其创建者动态地改变。

Agent用户:应用系统需要用户参与时,通过一个或多个接口Agent与用户交互。接口Agent主要是管理系统与用户的接口。

1.3 基于移动代理的网络管理系统

图2给出了基于移动代理的网络管理系统[2,6]的结构,包括以下几个部分:

(1)网络管理工作站(NMS):NMS除了与传统SNMP网络管理系统中的NMS提供相同的管理功能外,还负责根据任务移动代理的生成、派遣和回收以及处理移动代理的返回数据等;

(2)移动代理(MA):具有一定管理任务的代码(包括携带的数据),具有移动性和本地处理能力,负责在被管网元节点上执行预先安排好的管理任务,可以按照管理工作站预先规定的迁移路线和策略在各个被管网元节点间迁移并收集数据和进行网络管理操作;

(3)被管网元节点(NE):被管理的网络设备,可以是主机、服务器、路由器等;

(4)移动代理系统(MAS):即移动代理的运行环境,能够接收和执行代理,并对本地资源的访问提供相应的接口。为了使移动代理在网络管理系统中正常地迁移和运行,一般需要在NMS和NE上都具备MAS。

图3给出了基于移动代理的网络管理系统的工作流程图。

采用移动代理技术来设计网管系统,就是要充分发挥移动代理技术带来的好处。即它的远程数据处理能力和灵活性。移动代理在网管系统中的优势主要体现在网络的性能管理,故障管理和安全管理上,所以详细的设计了这3个模块。

这3个模块的设计原理和实现机制相似,都是采用静态代理加移动代理的方法。每一个模块由一个静态代理和一个移动代理组成,静态代理负责图形界面的生成,为移动代理提供执行的参数,负责产生和发送移动代理,并显示移动代理返回的结果。移动代理主要在远程设备上完成特定的任务,并把结果报告给静态代理。每一个模块的移动代理和静态代理密切协作,共同完成模块的功能。

(1)性能管理模块:性能管理模块提供对网元的流量、端口利用率和错误率等的监视功能,并能以文字或曲线图的形式显示出来;

(2)故障管理模块:故障管理模块通过计算网元的一些性能指标,并与预先设定的门限进行比较,来判断网络中是否出现了故障;

(3)安全管理模块:安全管理模块提供对网络中逻辑资源的安全管理,包括用户管理、访问控制、安全策略的制定和审计、入侵事件的检测和跟踪等。

2 与传统网络管理方式的比较

通过两者的比较,不难看出基于移动代理的网络管理系统有如下优点:

(1)缩短响应时间

采用MA技术后,移动代理的迁移计划是将一别被访问的被管节点进行列表。移动代理与有一定的智能,它具备足够的知识来处理各种管理情况,因此一旦网管站派遣出移动代理后,它将很少干预代理的行为,移动代理用根据各个被管节点和线路的具体情况作出动态的判断和决定,这样移动代理可以决定执行预先指定的任务还是选择其他更合适的操作,这就意味着对网络性能数据的采集和监控不需要在网络上传送,而是直接在被管节点上进行处理,大大地缩短了相应的时间;

(2)减少传输的数据流量

通过派发Agent驻留在被管理节点上,由于中间网管不需要对设备发请求命令,这样就大大减少其中的数据交互,这点对于带宽资源较为紧张,网络拓扑复杂的网络至关重要;

(3)利用MA提高心理的轮询速度,减小网络管理负担

利用移动代理技术可以有效地解决两个问题,生成多个拓扑代理,同时向网络的不同节点派发,由代理在远端执行网管操作,将过去由网管统一进行的收集、处理工作交给在网络不同部分的各个代理进行,而网管只负责对最后信息的接收。由于网管工作范围由一个网络变成几台网络设备或局部网络,运行的效率提高,同时多个代理的并发执行也大大提高了信息的检索速度,使信息的轮询间隔不受节点数增加的限制;

(4)配置网络设备更加灵活

在基于Mobile Agent的管理模式中,可以突破原有的MIB定义的限制,根据需要,在网络异常情况下定义相应动作,从而提高配置网络设备的灵活性。

3 结束语

从移动代理技术的发展历程和目前传统集中式网络管理系统存在的问题出发,对移动代理技术以及移动代理技术在网络管理中的应用做了研究,并且设计了基于移动代理的网络管理系统,最后在性能方面通过理论分析对两种管理方式进行了比较。

总的来看,基于移动代理的网络管理已经成为网络管理技术发展的主要方向,有一定的发展前景。移动代理技术因其灵活性,智能性和可扩展性,尤其是较大规模的异构网络的独特适应性,为网络管理提供了一种切实可行的解决方法。

摘要:在介绍了移动代理技术的基础上,阐述了基于移动代理的网络管理系统的原理和结构。将移动代理的特点和优点引入到网络管理系统,不仅在系统的响应时间和控制网络流量上弥补了传统集中式网络管理系统的不足,而且,提供了一种更具智能性和灵活性,也更能够适应现今复杂异构性网络结构的易扩展的网络管理系统的概念。

关键词:移动代理,网络管理,简单网络管理协议

参考文献

[1]朱森良,邱瑜.移动代理系统综述[J].计算机研究与发展,2001,38(1):16-25.

[2]张普含,孙玉芳.一种基于移动代理的网络管理系统及性能分析[J].软件学报,2002,9(13):2090 -2091.

[3]Stevens M,Weiss W,Mahon H,et al.Policy Frame- work [S].IETF Internet Draft,1999.

[4]Guenther O,Mueller R,Schmidt PM.A www-Based Method Management System for Sharing Statistical Mod- eles [J].IEEE Internet Computing,1997,1(3) :59 -68.

[5]Deng Robert H,Shailendra K Bhonsle,Wang Weiguo, et al.Integrating Security in CORBA Based Object Ar- chitectures [C].In:Proceedings of 1995 IEEE Sympo- sium on Research in Security & Privacy,1995:50-61.

[6]向正权,耿志刚,邵培甫.基于移动代理的网络管理框架[J].计算机工程,2002,28(3):286-288.

移动代理系统 篇5

IPhone入华,花落谁家?成了媒体最关注的动向。

11月上旬,中国移动董事长王建宙在出席GSMA移动电话亚洲论坛时表示,目前正与苹果进行洽商,计划把iPhone引入内地市场。对于中国移动来说,iPhone的音乐下载等功能,可能会帮助它吸引更多高端用户。不过,中移动表示,目前尚未就收入分成达成协议。

联通似乎是中国移动的冤家,就在中移动传出与苹果接触的同时,联通一高层日前也表示,联通愿与苹果讨论将iPhone引入中国。联通的加入,使得iPhone入华增加了看点,但也使这件事突然变得扑朔迷离起来,它们之间究竟谁会成为iPhone在中国的独家代理商?

从苹果在美国和欧盟的选择标准来看,无论AT&T还是O2、T-Mobile、Orange,都是世界一流的移动运营商,因此,中国移动肯定更受欢迎。而从iPhone的商业模式来看,中移动的ARPU值比联通高,与移动合作所分得的利润就多。此外,中移动在网络布设和信道覆盖方面都有优势,这样看来,中移动从中胜出的机率无疑会更大些。但联通也可能趁虚而入,毕竟苹果看重的是利润的高低。

不过,iPhone的收入分成模式,在中国可能会遭遇阻力。原因是发达国家电信市场已对外开放,而我国依然处于垄断状态,苹果的“霸王条款”碰上我国移动运营商有可能失灵。因为,它们本身就是“霸王条款”的推行者。在美国,AT&T之所以能与苹果合作,是因为自己作出了巨大的让步,包括同意不在iPhone打上AT&T的标志,并向iPhone提供收入分成。

此外,也有业内分析师对移动和联通目前表现出的热情泼冷水,认为目前把iPhone引入中国,时机还不成熟。

移动联通谁将胜出

苹果iPhone自6月底在美国上市以来,其精美的外观与独特的操作方式令人大开眼界,是iPod音乐功能与手机通讯功能的完美结合,在业内掀起了轩然大波,粉丝们不惜彻夜排队,第一时间体验这款划时代的手机产品。据统计,iPhone上市不到3个月,就售出了100万台。现在,苹果iPhone的销量已经突破150万台。

但这只是一个开始,要想实现2008年之前销售1000万台的计划,苹果必须开辟新的战场。

11月,iPhone在欧洲上市。11月9日,iPhone在英国正式开始发售,在超过1300家苹果专卖店、O2营业厅、CarPhone Warehouse商店以及网上商店同步销售。11月29日,iPhone在法国登陆,整个欧洲将掀起一场风暴。

而作为全球移动电话用户最多的国家,苹果自然不会不关注。目前,中国有超过5亿的手机用户,是美国的2倍。

当然,中国的两大移动运营商早已对iPhone虎视眈眈。之前,iPhone的水货手机在中国卖到了8000元,是美国的近3倍。不过,它依然很受欢迎。这表明,iPhone在中国也有众多“粉丝”。移动和联通当然不愿放过这个机会。在中移动表示正在洽谈出售iPhone后,苹果股价在纳斯达克大涨11%,创下了自2006年7月份以来单日涨幅最高纪录。

在美国和欧洲,苹果均采用独家授权方式与各国运营商合作,美国是AT&T,英国为O2,德国为T-Mobile,在法国则是法国电信旗下的Orange。从这几家移动巨头来看,它们都是国内最大的移动运营商。因此,有人预测,苹果进军中国,必定以中移动为首选。

在中国超过5亿的手机用户中,中移动用户超过3.5亿,独占鳌头。更重要的是,中移动的ARPU值比联通高。从今年前3季度的数据来看,移动ARPU值为89元,而联通G网ARPU值只有46.8元,C网也不过59.8元。

分析师认为,ARPU值对苹果很重要,它的高低,决定着苹果获利的多少。因为苹果并不是靠销售iPhone终端赚钱,而是采取跟运营商按用户收入分成的方式获利,ARPU值越高,就意味着苹果可以从运营商手中分到更多收入。

日前,中移动表达出了这种意愿,其董事长王建宙表示,公司计划把iPhone引入内地市场。但他同时指出,在收入分成方面尚未与苹果达成一致。

冤家路窄,有移动的地方必有联通。就在中移动有意将iPhone引入中国时,联通执行董事兼副总裁李正茂公开表示,对成为iPhone的独家代理商很有信心。李正茂告诉记者,“iPhone在某些市场很畅销,联通愿与苹果磋商。”

从前3季来看,中移动在几大运营商中是表现最好的,盈利能力是中国电信、中国网通、中国联通总和的2.4倍。中国移动每天的净利润超过了2亿元,联通前3季度的盈利仅相当于移动半个月的水平。对于一直处在追赶状态的中国联通来说,iPhone的意义不言而喻,有了它,无疑会刺激用户量的猛增,缩短与移动的差距。更重要的是,买iPhone的都属于高端用户,这一群体对利润的贡献十分巨大。

有联通的加入,整件事情立马变得复杂起来。但分析师认为,联通在与移动的竞争中处于劣势,移动的胜算肯定要大一些。不过,也不一定意味着联通没有机会,中移动习惯了做老大,决定了它在与苹果谈判中的强硬。有知情人士向《IT时代周刊》透露,苹果与中移动的强势,可能会让它们处于僵持状态。如果联通乘虚而入,极有可能博得苹果的好感。

苹果可能遇冷

按照苹果的计划,iPhone进入中国市场要到2008年以后,因此结果如何,仍充满变数。

不过,iPhone进入中国只是迟早的事,苹果不可能放弃中国这样一个庞大的手机市场。如果不将产品打入中国市场,其此前承诺的2008年销售1000万台iPhone将成镜花水月。

但有一点无法回避的是,苹果进入中国,必将选择移动或联通,也就是说,iPhone无论如何都逃不出定制机的命运。在美国,定制手机已占了70%以上的市场份额,但在中国还不到10%。这表明我国在这方面发展迟缓,也说明我国用户对定制手机方式不太喜欢。

分析人士指出,虽然定制手机在某些方面也可以为用户提供极大帮助,但绝大多数用户对定制手机还是反感大于喜欢。

《IT时代周刊》对此作了一个调查,发现2/3以上的用户对定制手机不感兴趣。他们认为,从以往的经历来看,中国移动和中国联通定制的手机,会把菜单打乱,操作起来极不方便。这可能与移动与联通定制水平的能力不高有关。

因此,有分析指出,iPhone现在进入中国市场,并不是最佳时机,即使进了,也会面临冷遇。但若再推迟进入,iPhone热潮又过了。

而从运营商角度来看,iPhone入华也尚存不确定因素。中国移动某高层向记者透露,iPhone入华的最大难题是其商业模式不适合中国市场,苹果若不改变一直以来推行的与运营商收入分成的商业模式,有可能止步于中国市场。此话并非危言耸听。

iPhone商业模式被称为“霸王条款”。iPhone采用了捆绑运营商网络服务的方式进行销售,从运营商网络服务收入中分成。在美国,苹果与AT&T网络捆绑销售,AT&T每月向苹果支付的分成费为每个用户10~20美元,而AT&T收取的月使用费则从60~220美元不等。AT&T受制于苹果,是因为美国电信市场竞争激烈。

但中国电信市场不同,没有对外开放,只能在政府设定的小范围内进行竞争。因此,苹果的“霸王条款”在中国可能很难行得通。因为,移动和联通自身就是“霸王条款”的制定者,苹果与它们相比,不过是半斤八两。

一种移动代理协调系统的设计与实现 篇6

在网络教育过程中, 最频繁的动作是学生提出疑问并回答老师的问题, 另外, 老师通过不断测试来了解学生的学习效果, 这期间双方不断派遣移动代理去完成任务寻求结果。为了实现代理间的协作, 需要一种有效的协调模型。

移动代理间的协调最重要的是避免时空同步约束。借助即时消息软件就可以很容易地在移动代理间实现相互协调工作。

1 基本概念

1.1 移动代理

移动代理技术出现于20世纪90年代中期。移动代理 (MA) 的基本原理是:代理收到使用者的请求命令时, 便实时地处理使用者所交付的任务, 并根据实际情况从网络某端主机移至另一端主机处理, 最后将结果回传给使用者。另外, 在终端间移动中的移动代理即使是在无法和使用者相互通信的情况下, 也能够将移动前的程序自主地分析、判断并继续执行处理, 因此使用移动代理技术可以减少网络信息流通量并实现异步交互。

移动代理除了在一台主机单独执行外, 更多的情况是与其他移动代理协作完成任务, 这个合作过程需利用某种统一的移动代理协调模式交换信息来实现。

1.2 移动代理协调模式

一种好的移动代理协调模式应该完全避免空间同步和时间同步。根据代理协调是否时空同步, 协调模式可分为以下四种类型:

(1) 直接协调模式 要求移动代理必须在同一时间和地点才能交换信息。该模式适用于同步学习环境, 其可扩充性和可靠性均差。

(2) 黑板协调模式 移动代理可以在不同时间, 但必须在同一地点交换信息。安全性提高了, 适用于非同步学习环境, 但效率低。

(3) 会议协调模式 移动代理可以在不同地点, 但必须在同一时间交换信息。适用于同步学习环境, 且必须创建一个会议室。

(4) Linda-like协调模式[1] 移动代理可在不同时间和地点的情况下交换信息。该模型需要共享空间来进行沟通, 较复杂、可调节性差。

以上这些协调模式都不具有一个随处可用的访问方式。为此, 可以整合会议模型、黑板模型以及即时消息软件来实现一个移动代理协调系统, 使得该系统具有:易于实现、时空异步并且提供随处可用的访问入口的特点。

1.3 即时消息软件

即时消息软件是网上非常流行的通信工具。利用即时消息软件, 用户可以与其他人不受时间空间限制进行即时通信、传输文件或留言。目前市场上有许多即时消息软件, 最流行的是腾迅QQ与MSN Messenger。本系统采用MSN Messenger。

2 协调系统的框架设计

本移动代理协调系统包括以下三个主要系统模块 (如图1 所示) 。

2.1 移动代理执行环境 (MAEE)

MAEE是每个移动代理执行时需要的一个环境[2], 移动代理在这个环境里被创建和执行。它是移动代理与其所在主机间的一个接口, 当移动代理请求资源时, MAEE代替移动代理从主机获得资源。

目前, 有许多移动代理系统提供MAEE, 如Aglet[3]、Mole[4]、Ara[5]等。本系统采用Aglet的MAEE。该代理环境是基于Java 虚拟机的, 具有平台独立、类的动态装载及多线程等好处。

2.2 移动代理 (MA)

在系统中, MA是一个主要角色。移动代理必须在MAEE环境里创建。利用即时消息软件发送信息之前, 移动代理必须登录到即时消息通信环境中。

2.3 即时消息通信环境

目前即时消息软件是一款流行的工具, 它为本系统提供一种基于会议的协调模式。即时消息通信环境包含三部分:派遣服务器、通知服务器和交换机服务器。

移动代理发送消息前, 先登录派遣服务器, 取得通知服务器的IP地址。然后, 移动代理利用取得的IP地址注册通知服务器, 通知服务器给出交换机服务器的IP地址。移动代理要与其他移动代理或真人协调时, 必须利用通知服务器给出的IP地址登录到交换机服务器, 并寄发协调数据到交换机服务器, 交换机服务器将寄发数据给目标对象。如果目标对象不在即时消息通信环境, 可以寄发邮件给即时消息服务器, 当目标对象在线时, 将接收邮件。

3 协调系统的实现

3.1 系统平台

本系统包括两个平台:一个是移动代理平台, 另一个是即时消息平台。在这里使用两个现有的平台:移动代理平台Aglets 和MSN Messenger。

利用Aglets 制作的移动代理在主机间移动时, 会传播一些消息或多媒体数据到目的地主机或转移一些消息给其他移动代理。通过交换这些消息, 移动代理们相互协调, 从而协同完成一些工作。

利用MSN Messenger, 能将消息从一台计算机发送到另一台计算机。

3.2 移动代理功能

本系统提供两个类:MSN.class 和Blackboard.class 。所有为移动代理定义的会议协调模型功能均包含在MSN.class 里。为了避免时间同步, 系统使用黑板协调模型, 这些功能定义在Blackboard.class里。

MSN.class 提供了Login () 、List () 、Analysis () 、Sendmsg () 和logout () 。Login () 和Logout () 函数帮助我们的程序登录以及从即时消息服务器注销。调用List () 函数可列出所有网上用户。调用Analysis () 函数能解析从其他用户传来的消息。当移动代理与其他用户协调时, 用Sendmsg () 函数发送消息到即时消息服务器。

Blackboard.class 提供了Writeboard () 和Readboard () 两个函数。Writeboard () 留下消息给即时信息服务器, Readboard () 则从即时信息服务器读取消息。

利用这两个类, 设计基于会议的协调模型和基于黑板的协调模型就很容易实现。

3.3 用户接口

这里, 利用移动代理协调情景来说明实现方法。辅导员的移动代理为用户提供一个GUI 接口来设置他的配置。辅导员命令移动代理去处理一些工作, 设置与他的学生协调的时间, 布置作业给学生, 辅导员还能检查他的移动代理带回的结果。

3.4 即时消息协议

即时消息协议[6]就是与即时消息服务器联络的语言。协议包括三部分:派遣服务器部分、通知服务器部分和交换机服务器部分。使用VER 、INF和USR协议, 能连接到派遣服务器和通知服务器。

3.5 邮件服务

本系统利用即时消息软件的邮件服务来实现黑板协调模型。某个移动代理与离线的目标代理协调时, 可以留消息给即时消息服务器;当目标代理上线时, 能从即时消息服务器收到消息。消息记录了移动代理留下的协调信息及时间。

4 系统原型

在传统教学环境里, 老师经常要为他的学生做一些事情, 如询问研究进展状况及布置家庭作业等。本系统中老师派遣移动代理去处理这些工作。老师只需设置好时间、学生、问题并派遣移动代理。图2 显示了老师移动代理的参数设置。利用本系统, 一个移动代理能在无须认识目标移动代理地点的情况下与其进行协调。图3 显示一个移动代理与另一个移动代理的协调状态。

本系统也考虑了学生离线的情况。移动代理能留下消息给离线的学生, 当学生上网时, 将从即时消息服务器获得邮件和协调信息。系统使用MSN messengeer客户端软件收取消息。另外, 通过该系统, 一个移动代理与一个真人协调, 就像与其他移动代理协调一样, 在协调期间, 学生并不知道询问者是一个真正的人还是一个移动代理。

5 总 结

本文提出利用即时消息软件建立一个移动代理协调系统, 它具有时空非同步的特点。另外, 本系统对于移动代理或真人来说都是一种随处可访问的协调模型。

MSN messenger是否拥有更多用户对于本系统来说是至关重要的。为了支持使用MSN即时信息来协调的设想, 分别为学生和老师设计了一张调查表。调查统计结果如表1所示。根据统计表明使用MSN messenger是一种趋势。这意味着本系统能随时发现目标并完成协调任务。实验结果表明本系统具有很好的可行性和有效性。

参考文献

[1] Zambonelli F, Cabri G, Leonardi L.Mobile-agent Coordination Models for Internet Applications.IEEE Transactions on Computer, 2000, 33 (2) :82-89.

[2] Lange D B, Oshima M.Programming and Deploying Java Mobile Agents with Aglets.Addison-Wesley, Reading, MA, 1998.

[3] Java Aglet Community.http://aglets.sourceforge.net/.

[4] The Home of the Mole.http://mole.informatik.uni-stuttgart.de/.

[5] The Ara Platform for Mobile Agents.http://wwwagss.informatik.uni-kl.de/Projekte/Ara/index_e.html.

移动代理系统 篇7

关键词:移动Agent,通信机制,多邮箱,通讯录

1、引言

现在入侵检测系统已经广泛使用移动代理 (Mobile Agent) 技术来保证检测的实时性和可靠性。相关的通信机制是一个必须要完善的关键问题。本文在现有通信机制的基础上, 将通讯录机制和多邮箱机制相结合, 提出新的通信机制, 并将其运用到入侵检测系统中。

2、移动Agent在入侵检测系统的应用

2.1 移动Agent

移动Agent是独立的计算机程序, 能在异构网络环境中按照一定的协议从一台主机迁移到另一台主机, 并可以与其它A-gent或资源交互的软件实体。它具有智能性、平台无关性、分布灵活性等特点, 适合于入侵检测系统的检测模式。

2.2 基于移动Agent的入侵检测系统结构

现有的基于移动Agent的入侵检测系统, 采用一个以移动Agent为组织单元的结构来实现。系统有两部分组成:一是分布于网络中的受检主机 (Host) , 每台受检主机提供移动代理的运行平台, 并负责管理部署到受检主机上的代理;二是部署于网络中一台或多台主机上的控制服务器 (Control Server) , 其负责部署、协调、管理、调度和控制受检主机端, 以检测针对多台主机或整个网络的攻击, 还可以通过派遣移动代理更新、升级、调整Host端。[4]

系统的通信包括控制服务器与其它Agent之间的通信以及其它Agent之间的通信。控制服务器要向移动代理发送指令, 控制它的运行;移动代理要向控制服务器传送运行状态、系统状态以及攻击报警信息等;各个代理之间要协同工作, 这些都需要它们之间的消息传递。在整个入侵检测系统中, 实体间消息传递是极其重要的组成部分, 如果系统中实体间的通信因故中断, 整个系统必然会停止工作。

3、移动Agent通信机制

3.1 Agent通信机制研究现状

在移动Agent间的通信过程中, 往往会发生因为Agent的迁移而使得消息随目标Agent在网络结点间迁移, 即消息追踪问题, 或者因为消息发送到某一网络结点而接收Agent已经离开该结点, 从而无法接收到该消息, 即通信失效问题。

文献[1]提出了基于多邮箱的Agent通信机制, 引入"邮箱"作为Agent的接收地址, 可以暂时存储发给Agent的消息。该邮箱可以和Agent分处不同的地址。可以解决消息追踪问题, 使Agent迁移不受限制。但其在寻找Agent逻辑名时对Agent中的记录其通信地址的Home结构有很强的依赖性。

文献[2]提出了基于Home的Agent通信录机制, 用通讯录从根本上解决了通信失效现象, 也改进了以往基于Home通信机制所存在的对Home有依赖性, Home的瓶颈问题。但在移动Agent进行迁移时受到限制。文献[3]则会出现消息发送时延大的情况。

3.2 改进的移动Agent通信机制

针对上述通信机制的优缺点, 本文以不考虑网络故障为前提, 将移动Agent通信机制中的通讯录机制与多邮箱机制相结合, 提出一种新型的基于入侵检测系统下的移动Agent通信机制。

3.2.1 Host主机通信结构

分布于网络中的每一移动Agent都分配有唯一的ID号, 用来标志该Agent身份。

分布于网络中的受检主机 (Host) 是各移动Agent的运行平台, 包含以下几部分:

HOME:存放着该Host所创建的Agent的信息, 包括Agent ID号以及该Agent现在所处Host地址。当移动Agent移动到一个新的Host主机时, 要将新的通信地址注册到创建该Agent的Host主机上的HOME中。其数据结构如下:

当发送Agent发送消息给目标Agent, 若不知其通信地址, 可以访问目标Agent的HOME进行寻址。

MIAILBOXS:是一个移动Agent邮箱群, 为Agent提供通信邮箱, 保存了移动Agent从该Host离开之后到达另一Host成功注册新地址之前所有发往该Agent的消息。一个Agent在一个Host最多只能有一个邮箱。[1]

CONTROLLER:是一个控制器, 其主要功能如下:

(1) 协助控制服务器 (Control Server) 负责入侵检测工作。

(2) 负责管理MIAILBOXS, 当消息到达该Host, 根据现有情况将消息提交给目标Agent或目标Agent对应的邮箱。

(3) 创建和销毁邮箱。当移动Agent移动到某Host主机, 并向其HOME成功注册后, 若该Host主机没有该Agent的邮箱则为其暂时创建一个新邮箱。当移动Agent邮箱在一个时间段内邮件数为0, 则自动销毁该邮箱。创建和销毁邮箱都要及时通知该Agent。

3.2.2 移动Agent通信结构

移动Agent的通信部分包含以下几部分:

MailBoxs:记录该Agent所拥有的所有的邮箱的Host主机地址。每当Host主机创建和销毁该Agent的邮箱时, 该邮箱记录都要发生相应的变化。

Receivers:记录该Agent访问情况, 包括所访问的Agent ID, 在一段时间内发送消息数和是否要求所访问的Agent迁移后组播新地址。其结构如下:

Senders:记录该Agent被访情况, 包括来访Agent ID, 在一段时间内发送消息数和是否要求来访的Agent迁移后组播新地址, 其结构同上。

当移动Agent在一段时间内通信消息数达到一定的数值, 则组播新地址, 反之, 若一段时间内消息数为0, 则不组播新地址。

使用Receivers和Senders通讯录来记录曾和自己通信的Agent, 把地址注册和组播方式结合起来, 使得发送Agent在通信绝大部分情况直接和目标Agent通信, 只有在通信失效的情况下才需要到Home处寻找目标Agent的地址, 再和目标Agent通信。[2]

3.2.3 通信过程

Agent1发送消息给Agent2, 通信过程如下:

(1) 首先Agent1查找自己的Recievers, 若有访问Agent2信息, 则看其是否组播新地址, 若有则直接通信, 若无则向Agent2的HOME处寻址, 再发送消息。消息数增加1。

(2) 当消息发往Agent2所在Host主机时, 若Agent2在该Host主机上, 则由直接提交消息给Agent2;若不在该Host主机上, 则CONTROLLER将消息提交给Agent2的邮箱。当Agent2迁移到新的Host主机后并成功注册, 再将该消息发往新的Hos主机。

4、结束语

移动Agent间的通信是Agent重要组成部分, 本文引入一种新型的Agent通信机制, 利用通讯录使得发送Agent在多数情况下直接找到目标Agent的通信地址, 不需要访问目标Agent的HOME, 只有在通信失败的时候才需要访问, 能减轻传统通信机制对HOME的依赖性。同时, 引入邮箱暂时存储发给Agent的消息, 使得Agent迁移不受限制。但该机制

参考文献

[1].贺敏伟, 扶卿妮, 李贵海, 林健.基于多邮箱的移动Agent通信算法[J].计算机工程, 2008 (12) :73-75

[2].王忠群, 李钧, 严楠, 等.基于通讯录的构件通信和动态迁移算法[J].安徽工程科技学院学报.2005 (4) :25-29

[3].王继曾, 满自斌, 周隽.基于信息表的移动Agent通信机制[J].计算机工程与设计, 2007 (11) :2566-2568

移动邮件代理网关的设计 篇8

电子邮件因特网上最常见的网络应用, 随着电子商务、电子政务的发展, 越来越多的公司企业通过邮件的方式传递信息, 但是这种传递信息的方式也有一定的缺点:一是人们必须依赖于电脑才能收发邮件, 二是收件人需要不断地查看邮件才能知道有没有新邮件到达。

随着移动通讯技术的发展, 手机终端的功能和无线网络的带宽和速度都得到了大幅度的提高, 特别是现在的很多手机, 能够运行JAVA或C语言的程序, 这就是使人们在手机上收发邮件成为可能。通过手机收发邮件, 不但可以使人们摆脱对电脑的依赖, 还可以实现邮件到达自动推送。但是由于带宽的限制, 手机在处理大附件的时候也有一定的难度。

手机邮件系统的构建需要手机终端软件和邮件服务器系统的支持。本文针对手机邮件系统描述了如何开发一个适用于企业邮件移动化的移动邮件代理网关。

移动邮件代理网关位于企业邮件与手机终端之间, 提供了用户手机和已有的企业邮箱相绑定的机制, 可以将邮件自动推送到手机终端, 在移动邮件收发过程中, 为了处理大容量附件, 其采用了改进的邮件协议。

1 系统的功能

移动邮件代理网关具备以下功能:

(1) 手机与邮箱的绑定

移动邮件代理网关通过手机号码与用户的企业邮箱帐号之间建立对应关系, 将用户手机与其邮箱对应起来。

(2) 移动邮件的接收与发送

手机在建立与企业邮箱帐号的绑定关系后, 便可以通过邮件代理网关接收与发送邮件, 作为手机终端和企业邮箱的连接通道, 邮件代理网关在此过程中起到邮件转发的作用。

(3) 邮件推送

移动邮件代理网关不断检测企业邮箱服务器, 当有新邮件时, 自动将邮件推送到移动终端, 该推送过程是借助移动的短消息行业网关实现的。

(4) 安全连接功能

处于无线信息开放性的考虑, 在移动终端与移动代理网关传递邮件时, 需要对传输信道进行加密等安全处理。

2 系统总体设计

2.1 系统拓扑结构

移动邮件代理系统的网络拓扑结构如图1所示, 系统涉及的实体主要有:企业邮件服务器、邮件代理网关、短消息网关和手机终端。邮件代理网关在其中处于核心位置, 其将系统的各部分连接起来, 实现移动邮件处理的功能。

2.2 系统处理流程

系统主要工作过程分为两部分, 一个是邮件的接收, 一个是邮件的发送。

在邮件接收过程中 (如图2所示) , 邮件代理网关定期从企业邮件服务器中检测是否有新邮件到达, 当有新邮件到达时, 邮件代理网关将通过移动的短消息网关以短消息的方式将新邮件通知发送到用户手机终端。手机终端软件可以检测到该消息, 并自动从邮件代理网关上取得该邮件。

在邮件发送过程中, 用户通过终端软件在手机上编写邮件, 并将邮件信息提交到邮件代理网关, 然后邮件代理网关通过企业邮件服务器将邮件发送出去。

对于以上两个过程来说, 移动终端和邮件代理网关之间采用安全的SSL协议进行通讯, 确保邮件在无线信道上传输时的安全性。

2.3 系统模块组成

如图3所示, 邮件代理网关主要七大模块构成。

(1) 企业邮件检测接收模块, 该模块负责与企业邮件的POP服务器进行通讯, 从企业邮件里检测是否有新邮件到达, 此时该模块作为一个POP客户端存在, 当有新邮件里, 该模块将会从企业邮箱里将该邮件缓存到本地数据库里, 并通知邮件推送模块有新邮件到达。

(2) 邮件推送模块, 负责与短消息网关通讯, 将邮件到达通知以短消息的形式发送到手机终端, 推送模块需要实现中国移动的CMPP协议、或中国联通的SGIP协议。

(3) WLPOP模块, 该模块是移动邮件接收服务模块, 相当于POP邮件服务器, 手机可以通过该模块接收移动邮件代理网关缓存的邮件, 不过处于无线信息速度慢的考虑, 实际上采用的是在POP协议基础上改进的WLPOP协议, 该协议在下节具体说明。

(4) WLSMTP模块, 该模块是移动邮件发送服务模块, 相当于SMTP邮件发送服务器, 手机可以通过该模块发送移动邮件, 同时考虑到无线环境, 实际上采用的是在SMTP协议基础上改进的W L S M T P协议, W L S M T P协议在下节具体说明。

(5) 邮件发送模块, 将用户终端通过WLSMTP发送到移动邮件代理网关上的邮件, 再次转至企业邮件进行处理, 该模块作为SMTP的客户端与邮件服务器的SMTP服务进行通讯。

(6) 安全模块, 负责与用户终端通讯时的加解密处理, 该模块实现了标准的SSL协议。

(7) 用户管理, 提供界面供管理员对用户的账户和绑定关系进行管理, 能够开通、注销、暂停用户的业务。

3 WLPOP与WLSMTP协议

无线信道的特点是带宽小, 普通的POP或者是SMTP协议传送的消息是MIME格式, MIME格式结构如图4所示, 从图中可以看出MIME格式的特点是邮件正方和附件都封装一起。

对于无线信息来说, 在收发带有附件的邮件时就有可能出现问题, 大附件会造成整个邮件无法传送, 为了解决这个问题, 系统采用了改进的POP协议——WLPOP协议, 和改进的SMTP协议——WLSMTP协议, 改进的方法主要是在原来的POP和SMTP协议命令里又增加了新的命令。

3.1 WLPOP协议

普通的POP协议接收邮件时使用的是retr msgno命令, 此时邮件服务器的返回内容是整个邮件内容, 附件比较大时难以处理, 改进的WLPOP协议增加了wret命令解决该问题, 该命令的格式是:

该命令有两个参数, msgno指邮件的编号, attchno指附件的编号, attchno是可选参数。

当接收邮件时, 可先使用WRET msgno命令, 此时服务器返回的并不是一个标准的M I M E结构的邮件, 而是将MIME信息中的附件内容去除掉的新M I M E消息, 如图5所示, 此消息中只保留附件的说明:编号、名称、大小、编码格式, 此时邮件体积将大大减小。

如果用户再想接收其中某一个附件时, 可以利用WRET msgno attchno命令来获取该邮件的具体某一个附件, 这样即不影响邮件内容的阅读, 也可以让用户有选择性地下载附件。

改进的PROF msgno协议, 能够直接转发邮件, 而不用把邮件中的附件下载下来, 同时还能够改变邮件正文的内容。

3.2 WLSMTP协议

在对S M T P协议改进时, 主要增加了邮件转发命令, SMTP协议在转发邮件时, 只能将邮件下载到本地, 然后再重新发送, 在无线环境下, 这严重浪费了无线网络的资源。邮件转发命令的格式如下:

REDR msgno

该命令只有一个参数msgno, 相当于对该指定编号的邮件进行转发, 同SMTP协议一样, 转发的地址是由mail命令来指定的。

4 结论

基于移动邮件代理服务器的移动邮件解决方案, 很好地解决了手机终端收发邮件的问题, 相对于黑莓技术, 其在支持终端和价格上都有一定的优势, 具有一定的商业和实用价值。

摘要:本文针对企业电子邮件移动化的问题提出了基于邮件代理网关的设计思想, 对邮件代理网关的主要功能进行了分析, 对系统的总体结构进行了设计, 并详细说明了系统中所包含的主要功能模块, 然后提出了适用于无线信道的改进的邮件传输协议, 最后对系统设计进行了总结。

关键词:电子邮件,移动电子邮件,MIME,POP,SMTP

参考文献

[1]美.布卢姆.开放源码邮件系统安全.人民邮电出版社.2002.

[2]张孝祥, 方立勋.JAVA邮件开发详解.电子工业出版社.2007.

[3]汪晓平, 钟军等.VisualC++网络通信协议分析与应用实现.人民邮电出版社.2003.

移动代理系统 篇9

IP组播即从一个组播源同时把信息发送给组内所有成员,能够节省发送者自身的资源,并且具有较高的网络利用率,所以在带宽和节点能量非常有限的移动环境中有着广泛的应用前景。移动IP和组播的结合称之为移动IP[1]组播。目前Internet中的组播协议如DVMRP(Distance vector multicast routing Protocol)[2]、MOSPF(Multicast extensions to OSPF)[3]、PIM(Protocol independent Multicast)[4]等,都只适用于固定环境中的成员节点,而移动组播除了要和它们一样管理动态组播成员之外,还要考虑成员位置动态变化的问题,为了解决这一问题,IETF提出了双向隧道BT(Bi-directional tunneling)和远程签署RS(Remote Subscription)两种基本的移动组播算法。

在双向隧道中,HA(home agent)代表MN(mobile node)加入组播组,移动节点MN和家乡代理HA之间建立双向隧道,MN收发组播数据都是通过隧道由HA转发。这种方法隐藏了节点的移动性,组播树无需因MN的移动而被重构。其主要缺点是当移动节点远离HA时,数据传输路径远非最优,不仅增加了组播数据传输的时延,而且链路开销较大。

在远程签署中,每次移动节点移动到外地网络后,都需要重新加入到组播组,并重新计算与其对应的组播树。因此,当前网络的组播路由器必须也加入组播组,MN通过该组播路由器收发组播分组。这使得RS算法具有接近最优的组播传输路径,但同时也造成了组播树频繁重构的缺陷,当节点移动过于频繁时,会加大组播树重构开销。

目前,针对MIPv6的移动组播路由算法的研究正成为国际上的研究热点之一,但是成果并不多。以这两种算法为基础,TETF和IRTF投入大量精力研究移动网络中的组播,以改进其中存在的缺陷。例如,Jelger[5]博士等提出了一种在MIPv6中结合远程签署和双向隧道二者优点的方法,即FHSR算法,其他的还有基于移动管理的RHMOM算法,以及基于时间和距离的TDB-MA算法等。研究的新组播算法只是解决了移动组播所面临的部分新问题,而且目前仍然没有一个全面有效的解决方法。

为了更好的解决移动组播面临的缺陷,本文在MMA算法的基础上进行改进,给出一种在移动IPv6环境下新的移动组播算法。算法把MMA算法的思想引入到移动IPv6环境中,同时采用基于区域的分层结构,并且在节点移动时采用在移动代理间建立隧道的方法补充数据包,提高了组播的可靠性。

1 现有的移动组播算法

移动组播协议MoM[6](Mobile Multicast Protocol)对移动IPv4协议中的双向隧道方法进行改进,目的是解决双向隧道算法中隧道聚合问题。MOM算法为外地网络中的每一个组播组选择一个家乡代理作为组播分组转发者,称之为DMSP(Designated Multicast Service Provider),DMSP可以通过隧道将数据发送给相应外地代理,以避免多份拷贝传递给同一个外代理,同时外地代理再通过链路级组播方式将组播数据转发给移动节点。MOM算法解决了隧道汇聚问题,但同时也带来了DMSP的切换问题。

基于范围的移动组播协议RBMoM[7](Range-Based Mobile Multicast)也是以双向隧道作为基础,引入了新的功能实体组播家乡代理MHA(Multicast Home Agent)和服务范围的概念。MHA负责以隧道的方式向节点所在的外地网络转发组播数据,MHA只为其服务范围内的移动节点提供组播服务。但是它并没有提出如何确定合适的服务范围,所以,如何根据网络环境确定MHA的服务范围将是一个非常值得研究的方向。

移动组播代理算法MMA[8](Mobile Multicast Agent)中,引入了组播代理MA(Multicast Agent)和组播转发者MF(Multicast Forwarder)两个逻辑实体。MA为其子网移动主机提供组播服务,但它本身不一定加入组播树,可以在邻近多个MF中选择一个MF为其转发组播分组。MA选择的MF在位置上靠近该MA,MF加入到相应的组播树,并负责把组播数据转发给该MA。当本地子网的MA已经加入组播树,MA的MF可以是MA本身;当本地子网没有在组播传输树上时,MA的MF是附近网络中已经在组播树上的组播路由器。

2 基于分层移动组播代理的可靠移动组播算法

为了更好的解决移动组播算法中组播数据包丢失的问题,本文将MMA算法进行修改,并结合层次结构的思想将组播外部代理和组播子网代理MSA结合起来,提取各自的优点,给出一种新的基于移动IPv6协议的可靠移动组播算法RMMA(Reliable Mobile Multicast Agent)算法。该组播算法使用区域层次型路由结构,一个区域分成多个子网,这样就有效的降低了组播传输树的重构开销,引入组播子网代理MSA的思想,优化了组播数据传输路径,有效缩短了组播传输时延以及提高了算法的健壮性,在节点移动时采用在移动代理间建立隧道的方法补充丢失的组播数据包,提高了组播的可靠性。

2.1 RMMA移动组播算法的结构模型

本文提出的基于分层结构的移动组播代理的组播算法,把网络划分成许多个互不相交的区域,每个区域包含多个子网。在每个区域内设置一个组播外部代理MFA(multicast foreign agent)。区域内的组播外部代理MFA是参与Internet中组播路由的组播路由器,它为其所覆盖的每个子网提供组播转发服务,是组播子网代理和组播骨干网之间的访问接入点。每个子网设置一个组播子网代理MSA(multicast subnet agent),MSA为其子网内的移动节点提供组播服务。同时,该算法还引入了逻辑实体组播转发者MF(multicast forward),MF是邻近子网中已经加入组播组,并离当前子网最近的组播子网代理,MSA和MF只是逻辑上的层次关系,MF在其所在的子网中也是MSA。该算法的区域分层结构示意图见图1。

移动节点MN到达一个新的外地子网并接收到子网中的MSA发送的通告消息后,它会向新的MSA发送组成员报告消息。若当前子网中的MSA已经加入了该组播组,那么MSA就直接向移动节点MN转发组播数据包。若新的外地子网中还没有属于该组播组的MFA,则从移动节点MN处获得其原来的MFA,然后依此计算新的MSA与MFA之间的距离。若距离大于MFA的服务范围,则需要从新选择MFA。比较简单的方法就是直接指定新的MFA为移动节点当前的MFA,同时更新MN和MSA中的MFA信息。如果MFA已经加入该组播组,则直接通过隧道向MSA转发组播数据包;如果MFA没有加入该组播组,则申请加入组播组。若距离在服务范围之内,并且移动节点MN是该子网内该组的第一个成员,那么此子网的MSA就会从自己维护的MF列表中选择一个位置上离自己最近的MF作为自己的MF,并且向选出的MF发送消息请求与其建立隧道。同时,MSA向MFA发送组成员报告消息,申请加入组播组。当收到来自于MFA的组播数据包时,MSA向MF发送消息拆除两者之间建立的隧道。

为了降低切换时丢失的数据包,MN需要检查新老链路中组播包的序列号的差值。如果Seq-old≥Seq-new,则MN向PMSA发送离开消息,同时指明序号偏移量为0;否则,MN在发送离开消息的同时指明组播包偏移量为[Seq-old,Seq-new],PMSA通过隧道的形式向新的MSA补充这部分组播包。

2.2 组成员管理和组播数据包的传输

移动节点到达新的外地子网后,移动节点要向外地子网中的组播子网代理MSA发送组成员报告消息。MSA记录本子网内所有组成员的组播组,通过周期性发送组成员查询消息来维护组播组列表。当移动节点接收到MSA的通告消息后,响应MSA的查询消息。移动节点离开该子网时并不向MSA发送离开消息,而是MSA通过定时器超时发现移动节点的离开。如果本地子网中的MSA是其它子网选出的MF,那么它们之间通过隧道转发查询和组报告消息。当MSA与MF之间的隧道拆除时,对于MF而言,表明有移动节点离开相应的组播组。当MSA接收到组播数据包时,通过本地组播方式转发给子网内所有的组成员。如果需要通过隧道转发给其它MSA组播数据包时,需要对组播数据包进行隧道封装后再转发给相应的MSA。此外,MSA通过定期向MF列表中成员发送组查询消息来维护组播组中的MF列表信息。

当MSA维护的组播组列表有变化时,MSA会向MFA发送组播组报告消息,将此变化通告给MFA。组播外部代理MFA维护其管辖区域内移动节点加入的组播组列表,以及每个组播组包含的MSA列表。MFA加入到组播组列表中的组播组,参与组播路由。当接收到组播组数据包时,MFA转发给组播组内的每个MSA,然后MSA再将组播数据包转发给子网内组播组中的移动节点。

2.3 算法的数据结构

RMMA算法中使用的数据结构如图2所示。各个实体所要维护的数据结构为:MN:group_id,pMFA,Seq_old,p MSA

MSA:group_id,MF_list,MN_list,MFA_list,Cache,Tunneling_list,Timer_list

MFA:group_id,MSA_list,timer

在MSA组列表中,group_id表示组播组名称;MF_list表示该组播组中可用的MF列表;MN_list表示子网中属于该组播组的移动节点列表;Cache用来缓存组播包;Tunneling_list记录那些在该链路进行过注册,但现在已经离开,并请求该MSA对丢失的组播包进行补充的移动节点,链表中还需要记录需要补充的组播包的序号。

在MFA列表中,group_id表示组播组名称;MSA_list表示属于该区域中的MSA列表。

在MN列表中,group_id表示组播组名称;pMFA表示移动节点需要记录的原来的MFA列表;pMSA表示移动节点需要记录的原来的MSA列表;Seq_old是移动节点记载的链路中组播包的序号。

3 性能分析

本文提出的基于分层移动组播代理的可靠移动组播算法有以下优点:第一,有效减少了组播树的频繁重构。由于引入了区域的概念,MFA为其所覆盖的的子网提供组播转发服务,移动节点只要在区域内的多个子网移动就不会造成组播树的重构;第二,通过设置MFA服务区域的大小,使传输路径接近最优,有效缩短的组播数据传输延时;第三,有效提高了组播的可靠性,节点移动时采用在移动代理间建立隧道的方法补充丢失的组播数据包,减低了组播包的丢失率。

4 结束

本文综合研究和分析了目前移动环境中多种IP组播算法,进而在MMA算法的基础上进行改进,给出一种在移动IPv6环境下的移动组播算法。通过分析,该算法在组播树重构开销、传输延迟和丢包率方面的综合性能是优化的,有效提高的组播传输的可靠性。

参考文献

[1]Perkins C.IP mobility support for IPv4.RFC3220,2002

[2]G.Malkin.RIP Version2 Carrying Additional Information[S].RFC1388.Januaryl993.

[3]MOYJ.RFC1584,Multicast extensions to OSPF[S].In:Internet Engineering Task Force,1994.

[4]ADAMSA,NICHOLASJ,SIADAKW.RFC3973,Protocol independent multicast densemode(PIM-DM):protocol specification[S].In:Internet Engineering Task Force,2005.

[5]Jelger C,Noel T.Multicast for mobile hosts in IP networks:Progress and challenges.IEEE Wireless Communications,2002,9(5):58-64.

[6]Harrison T,Williamson C,Mackrell W,Bunt R.Mobile multicast(MoM)protocol:multicast support for mobile hosts.In:Pro ceedings of the ACM Mobile’97.Budapest:IEEE Computer Society Press,1997:151-160.

[7]Lin CR,Wang KM.Mobile multicast support in IP networks.Proceedings of the InfoCom2000.Tel Aviv:IEEE Computer So ciety Press,2000:1664-1672.

[8]Suh Y,Shin H,Kwon D.An efficient multicast routing protocol in wireless mobile networks.Wireless Networks,2001,7(5):443-453.

[9]Wang Y,Chen W.Supporting multicast for mobile hosts.Mobile Networks and Applications,2001,5(6):57-66.

[10]吴茜,吴建平,徐恪,刘莹.移动Internet中的IP组播研究综述[J].软件学报,2003.

移动代理系统 篇10

关键词:移动代理,Aglets,Agent

0 引言

随着Internet复杂程度的不断提高和新型网络应用的出现, Client/Server模式的缺点日益明显, 远不能适应当今快速多变的网络应用发展。移动Agent技术集智能Agent、分布计算、通信技术于一体, 提供了一个强大、统一、开放的计算模式, 更适合于提供复杂的服务, 如复杂的Internet信息搜索、Internet智能信息管理等。在此情况下, 许多公司相继推出一些移动代理平台, 本文对Aglets代理平台及其应用程序开发环境进行了研究。

1 Agent和Mobile Agent

Agent的原意是“代理”, 即一个实体代表另一个实体去完成某件事情。在计算领域, 代理泛指处于特定环境下, 具有自主性、能动性、社交能力、反应能力等特征的硬件或给予软件计算机系统。MA (Mobile Agent, 移动代理) 是指能在同构或异构网络主机之间自主地进行迁移的有名字的程序。程序能自主地决定什么时候迁移到什么地方, 在程序运行的任一点挂起, 然后迁移到另一台主机上, 并接着这一点继续往下执行

传统分布式技术主要有C/S模式移动代码技术、DCOM技术等, 而移动代理技术集中了它们的优点, 它提供了一个开放的、简便的分布式应用开发框架。与传统的网络编程方式相比, MA更加适合于网络应用系统的开发, MA的这些优点使其具有广阔的应用范围。

2 Aglets平台

Aglets是最早基于Java的移动Agent开发平台之一, Aglet的名字来源于Agent和Applet, 可以简单地将其看成具有Agent行为的Applet对象。

Aglets中的移动Agent称为Aglet, 是一个可移动的Java对象。一个Aglet具有全球惟一的标识符 (Identifier) , 包含一些属性、方法和一个旅行计划 (Itinerary) , 该旅行计划包含移动信息和错误处理机制。考虑到安全性, Aglet不能直接被访问, 而必须通过其代理 (Proxy) , 代理的引人一方面防止Aglet中的属性和方法被直接使用, 另一方面也使Aglet的地址具有透明性———访问一个Aglet时, 只需获得其代理的引用, 而不必关心其具体位置。

Aglet以线程的形式产生于一台机器, 需要时可以随时暂停正在执行的工作, 并将整个Aglet分派到另一台机器上, 然后继续执行尚未完成的任务。从概念上讲, 一个Aglet就是一个移动Java对象, 它支持自动运行的思想, 可以从一个基于Agle的主机移动到其它支持Aglet的主机上。

Agelts包含了一个运行Mobile Agent的服务器———Tahit和一套类库, 基于它开发者可以轻松地开发各种Agent的应用。如, 创建移动Agent和将Aglets技术嵌入到他们的应用之中。

3 Aglets原理

Aglet基础环境主要分通信层和Aglet运行环境两层。通信层负责Aglet的传输和接收, 以及Aglet之间消息的发送和接收, 运行环境层提供Aglet创建、管理和移动的基本功能, 包括持久化管理、安全管理、缓冲管理以及引用管理和废区回收。Aglet运行环境层的对象模型如图1所示。

Aglet:是一个可移动的Java对象, 可以自主访问支持A-glet的主机。

Aglet Proxy:是Aglet的包装类, 封装了Aglet方法和自身信息。借助Proxy, Aglets实现了Agent之间的方法调用、通信寻址和安全管理。

Aglet Context:是Aglet工作的场所和执行的环境, 负责A-glet的维护和管理。一部主机可以放置多个的contexts。

当一个正在执行的Aglet想要将自己送到远端时, 会对A-glet Runtime层发出请求;接着Agelt Runtime层把Aglet的状态信息与代码转成序列化的字节数组;这时如果请求成功时, 系统会将字节数组传至ATCI (Agent Transport and Communication Interface) 层处理, 此层提供可使用的ATP (Agent Transfer Protocol) 等接口, 在此ATP为一个简单的应用层协议。之后, 系统会将字节数组附上相关的系统信息, 如, 系统名称以及Agle的ID等, 并以比特流方式通过网络传送至远端机。远端机利用ATCI层提供的ATP接口收到传来的字节数组及系统信息, 然后Aglet Runtime层对字节数组反串行化, 得到Aglet的状态信息与代码, 此时Aglet便可以在远端机执行

4 Aglets平台的下载与安装

(1) 建立Java运行环境

J2SE指定安装到C:java的目录下, 注意jdk不能装在深目录, 比如C:Program FilesJavajdk1.6.0_01, 否则会产生异常。并配置环境变量如下:

增加JAVA_HOME=C:java

增加CLASSPATH=.;%JAVA_HOME%lib;%JAVA_HOME%lib

增加PATH=C:javabin;

(2) 下载并解压缩Aglets开发包

首先到Sourceforge的Aglets项目组处下载:http://sourceforge.net/projects/Aglets/, 然后解压aglet2.0.2.zip到c盘目录下, 如c:aglet2.0.2;再在C:java下新建Aglets目录, 复制解压后的c:aglet2.0.2目录下的文件到C:javaAglets下。

(3) 运行ant自动安装

进入C:javaAgletsbin, 运行ant自动安装程序, ant成功运行后, 在Agletsbin目录下产生的两个文件:.keystore, .java.policy, 复制policy和key文件到C:Documents and SettingsAdministrator, 或采用ant install-home的批处理方式自动复制。

(4) 配置Aglets环境变量

回到Windows系统环境变量, 新增或添加如下配置:

(5) 运行Tahiti移动代理服务器

在C:javaAgletsbin下输入Agletsd-fcnfAglets.props, 出现Tahiti服务器。Aglets运行环境由一个被称为Tahiti的Agle服务器提供。Tahithi提供移动Agent产生、复制、派遣销毁等基本功能。

5 Aglets应用

在Aglets环境下, 可以开发分布式应用程序。因为在E-clipse下无法运行Aglets程序, 我们采用在Eclipse环境下编辑、编译Java源程序, 然后放到Tahiti下运行。下面以主从模式为例, 说明Aglets具体应用。在主从 (Master-slave) 模式中, Master Agent把任务委派给Slave Agent, Slave Agent移动到指定的目的地, 完成指定的任务后返回结果。

创建子Agent是在Aglet类中的run () 方法中进行, 主要代码如下:

首先使用getHostingURL () 方法获得当前执行环境的URL;接着创建一个URL对象, 指定子Agent将被派往的目标主机地址, 通过在getAgletProxy () 方法中指定当前Aglet, 即主Agent的ID来获得其代理;方法createAglet () 用于创建子A-gent, 其中:getCodeBase () 用来获得包含Aglet类代码所在的位置。当子Agent被创建时会首先调用方法:onCreation (Objec args) {}, 接着将自身派至目标主机dispatch (destination) 。

6 结束

近年来, 移动Agent技术无论在理论研究还是在实际应用中都取得了较大的进步, 并随之产生了一些成熟的移动Agen开发平台, Aglets就是其中的一个典型代表, 它的出现极大地推动了移动Agent的应用。21世纪是人类社会全面实现信息化的时代, 随着计算机网络和人工智能技术的进一步发展, 移动Agent必将在信息革命中扮演更加重要的角色

参考文献

[1]李长河.人工智能及其应用[M].北京:机械工业出版社, 2006.

[2]温惠容, 王志良, 牟世堂.Java平台下基于移动Agent的信息服务系统[J].计算机工程, 2006 (22) .

注:本文为网友上传,旨在传播知识,不代表本站观点,与本站立场无关。若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:66553826@qq.com

上一篇:移动3G系统 下一篇:未来移动通信系统