MASIF
GeneralMagic,IBM等多家公司和研究机构联合向OMG组织提交的标准化文件
MASIF(Mobile AgentSystem Interoperability Facility)是GeneralMagic、IBM等多家公司和研究机构联合向OMG组织提交的一份标准化文件,旨在规范一些共性的术语定义,并为不同的Mobile Agent系统提供基于CORBA的可互操作的接口,同时注意了简单性和通用性的原则以支持Mobile Agent技术的未来发展。
服务
MASIF除了可以得用CORBA的特性实现互操作外,还可以使用CORBA提供的以下服务:
(1) 名字服务(Naming Service):CORBA 名字服务将名字(表现为字符串)与CORBA 对象绑定。应用程序可以利用该服务来公布命名对象,或通过对象名来查找对象引用。MASIF 定义了两种CORBA 对象界面(Object Interface):MAFAgentSystem和MAFFinder。对象通过名字服务来公布,这样可以带来一些编程上的方便。例如,当Agent进入某区域后可以利用名字服务查找MAFFinder 的对象引用,以便进一步使用MAFFinder 对象所提供的服务。
(2) 生命周期服务(Lifecycle Service):CORBA 生命周期服务用于创建、删除、拷贝静态的(Static)和被动的(Passive)CORBA 对象,但不能用于象Agent这样的可移动的(Mobile)和主动的(Active)对象。Agent系统则是一个可由CORBA 生命周期服务进行创建或删除的静态对象的例子。区域(Region)管理器可以利用这一特点,增加区域中Agent系统的数量以处理增加的Agent负载。
(3) 序列化服务(Externalization Service):CORBA 序列化服务提供了一种将对象状态记录为数据流或从数据流恢复为对象状态的标准化的机制。Agent系统可以选择该服务来对Agent的状态进行序列化和去序列化。当然,Agent系统也可以采用非CORBA 的序列化机制(比如Java 的对象序列化方法)。
(4) 安全服务(Security Service):移动Agent是可以在Agent系统之间移动的计算机程序,这对Agent系统的安全性提出了很高的要求。利用CORBA 的安全服务,可以向Agent系统提供以下的安全支持:远程Agent创建时的客户方认证、Agent系统间的相互认证、 Agent认证和经过传递的认证、信息的完整性、保密性及重放(Replay)检测。
界面
MASIF由一组定义和界面所组成,通过它们可保证移动Agent系统间的互操作性。考虑到移动Agent技术将来的发展,MASIF规范尽量以简单和通用为其原则。
MASIF 模块由两个界面所组成:
(1)MAFAgentSystem 界面
(2)MAFFinder 界面
MAFAgentSystem 界面定义了对Agent的有关操作,其中包括Agent的创建(Creat)、接收(Receive)、暂停(Suspend)和终止(Terminate)等操作。MAFFinder 界面定义了Agent登录(Register)、去登录(Unregister)以及Agent、场所(Place)和Agent系统定位(Locating)的有关操作,它的作用相当于是Agent、场所(Place)和Agent系统的名字与位置的动态数据库
出于互操作性的考虑,MASIF 是在Agent系统层上定义界面的。Agent系统和Agent都可以是CORBA 对象,但也并非必须是CORBA 对象。由于Agent居于Agent系统之内,所以它的具体实现要依赖于创建它的Agent系统的具体实现。
缺点
(1) MASIF 规范目前只定义了区域内Agent的互操作,但是,实际系统中,我们没有理由排除区域间Agent 的互操作,为解决此问题,需要扩展MASIF 规范中定位服务。
(2) MASIF规范只定义了单跳(One Hop)的安全机制,没有考虑多跳的安全。
(3) MASIF规范并没有定义和符合FIPA 规范的智能Agent的互操作。
(4) MASIF只定义了互操作外部界面,没有定义内部界面,用户工作量较大。
(5) MASIF利用的是CORBA 命名服务,而不是交易服务。
参考资料
最新修订时间:2023-12-27 23:41
目录
概述
服务
参考资料