基于移动Agent的瘦客户端手机LBS系统的设计与实现

2014-03-10 07:49林德树长江大学计算机科学学院湖北荆州434023
长江大学学报(自科版) 2014年1期
关键词:计算环境客户端服务器

林德树 (长江大学计算机科学学院,湖北 荆州434023)

程彩凤 (长江大学工程技术学院信息系,湖北 荆州434020)

Agent是模拟人类行为与关系具有一定智能并能够自主运行和提供相应服务的程序,其源于人工智能领域。移动Agen是一个能够在异构网络中自主地从一台主机迁移到另外一台主机,并可与其他Agent或资源交互的程序[1]。目前各种移动设备的上网过程中,网速和带宽都比较有限,这样就限制了移动网络的发展,移动Agent可以将请求Agent动态地移动到服务器端执行,由于Agent是跨平台的,可以做到异构网络传输,这样扩大了移动Agent系统的使用范围。目前,移动互联网发展迅猛,很多企业都建立了各自的手机应用程序,但据此开发出来的客户应用对网络流量有很大消耗。针对上述问题,笔者对一种基于移动Agent的LBS(Location Based Service,基于位置的服务)系统进行了研究。

1 基于移动Agent的LBS系统框架

LBS系统以移动用户为主要服务对象,是一种基于移动计算环境的应用系统。移动计算环境是指以移动互联网为核心平台、采用移动计算技术实现信息处理的一种计算环境,其物理含义包括随遇性、流动性和佩带性等3方面的内容[2]。随遇性是指用户在移动过程中随时可接受委托其使用的计算系统进行信息处理;流动性是指由于计算节点总处于移动状态,其网络环境不断变换,因而计算环境也在不断变化;佩带性是指人机紧密结合,其促成了一种新的 “以人为本”的人机交互方式,这种方式由微型的、依附在人体上的计算机系统来实现,可以认为是移动计算的最高表现。

在移动计算环境中,移动终端通常是通过移动服务支持节点 MSS(Mobile ServiceStation,移动基站)与固定网络连接的[3]。LBS系统由LBS服务器、LBS业务管理服务器、计费服务器、数据中心、移动服务网关和移动定位网关构成。在这样一种计算环境中,高速宽带互联网构成连接固定节点的主干,固定网络中拥有若干支持移动服务的节点MSS,每个MSS负责管理一个无线网络单元 (如无线广播单元、无线局域网单元等),单元内的移动终端与MSS之间通过无线通信连接。基于移动Agent的LBS系统结构图如图1所示。基于移动Agent的LBS系统相对于传统的LBS系统的主要变化是通信环境的改变,即增加了移动Agent通信和运行的环境,这样LBS服务器、LBS业务管理服务器、计费服务器和数据中心之间可以借助移动Agent进行通信。根据移动Agent处理任务复杂度的不同,在必要时还可单独设立移动Agent服务器,由此专门负责移动Agent代码库的管理和移动Agent任务的分派。

图1 基于移动Agent的LBS系统结构图

2 基于移动Agent的LBS系统在Android上的实现

基于Android的LBS系统按照层次结构来进行划分,可以分为服务层、用户层、管理层和数据层。用户可以通过客户端输入查询信息,客户端软件根据查询来生成相应的Agent来进行信息检索,数据库再根据Agent的检索反馈元数据信息给用户Agent和网络应用程序或浏览器。基于移动Agent的LBS系统在Android上的实现框图如图2所示。

2.1 数据库服务Agent的设计

数据库服务Agent主要负责对其他各个Agent的管理与协调工作,接受用户请求任务,转换数据请求格式,并分解成相应的子任务发送到集成Agent服务层由服务Agent来实现数据管理,具体包括用户Agent管理、Agent注册、查询任务、任务求解并返回结果[4]。用户Agent进行查询请求并利用元数据的方式提交,首先进行消息处理,检测消息格式是否正确,如果消息正确则移动到目标地址,根据用户Agent建立相应的任务请求。并发送给集成Agent,最后等待返回结果。如果消息错误则返回到消息处理过程并通知用户Agent消息。服务Agent流程图如图3所示。

图2 基于移动Agent的LBS系统在Android上的实现框图

图3 服务Agent流程图

2.2 数据库集成Agent的设计

集成Agent操作的对象为元数据,其为各层之间数据交换标准格式,可以采用较少的数据尽可能表示多而全的信息。虽然LBS系统中的数据较多,但是各种数据库的类型也比较多,为此通过元数据将各种数据转化成统一格式。通过对异构数据库进行转化,采用XML进行描述、交换与保存,可以保证LBS系统的灵活性与开放性。采用数据库实现基于内容的检索服务,能够有效保证LBS系统在大容量交换过程中有较高的查准率和查全率。用户提交的查询操作提供给Agent功能模块进行解析,然后可以进行元数据信息查询,这样就可以把元数据信息从XML格式转换并导入到数据库中以实现全局查询的分解,最终实现各个数据库的子查询[5]。

3 试验分析

采用JAVA开发了2个手机应用客户端 (即传统方式手机客户端和基于移动Agent的手机客户端)并分别进行网络访问流量监测。检测流量采用Android系统提供的数据, (见表1)。由表1可知,采用移动Agent技术处理大量查询数据时,其对异构网络访问速度更快。这是因为查询和处理操作都是在本地进行的,避免了大量中间数据的传送,因此大大降低了网络延迟,节省了网络带宽,能够实现负载平衡。

表1 试验数据统计表

4 结 语

为了解决传统手机客户端消耗较大网络流量的问题,设计了一种基于移动Agent的LBS系统。实际应用表明,利用该系统能够有效地降低网络流量,同时能够较好地完成客户端的各项功能。随着3G网络技术的不断发展,相信在不久的将来,移动Agent在分布式计算和分布式网络通信方面的应用会更加广泛。

[1]张云勇,刘锦德 .移动Agent技术 [M].北京:清华大学出版社,2003.

[2]丁建国,柳惠琳,陈涵生,等 .移动Agent的一种安全认证机制 [J].计算机工程,2001(2):74-75.

[3]申永军,史小平,李小青 .移动代理安全信任模型的研究 [J].微计算机信息,2009(25):39-41.

[4]杨晓元,魏立线 .计算机密码学 [M].西安:西安交通大学出版社,2007.

[5]Denis T,Johnson S.程序员密码学 [M].沈晓斌译 .北京:机械工业出版社,2007.

猜你喜欢
计算环境客户端服务器
云计算环境下网络安全等级保护的实现途径
通信控制服务器(CCS)维护终端的设计与实现
如何看待传统媒体新闻客户端的“断舍离”?
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
大枢纽 云平台 客户端——中央人民广播电台的探索之路
大数据云计算环境下的数据安全
中国服务器市场份额出炉
得形忘意的服务器标准
计算机网络安全服务器入侵与防御