0引言近年来,公安信息网逐渐走向成熟,对应用集成的需求日益广泛。传统的应用集成技术只能在一定程度上实现公安系统的应用集成需求,它们都有一个共同的缺陷:普遍采用某种专用中间件技术,以专有的、偏向于系统实现方式的API 进行设计,系统间耦合度高,对业务需求适应性差
[3-4]
。如何节约投
资成本、追求工作高效、灵活适应需求变化,合理使用资源,实现应用系统、业务数据和流程的无缝集成,实现各个警种协同办公、办案,成为公安系统亟待解决的重要课题。
本文提出了一套基于SOA 架构的应用集成解决方案,很好地满足了公安系统的各项应用集成需求。首先介绍了SOA 基础概念与模型;介绍了实现SOA 架构的JBI 规范及技术原理;以及公安应用集成平台框架和公安应用集成平台的实现;最后总结了全文,并指出课题需改进的方面。
1SOA 基础概念和模型
关于SOA ,目前尚未有一个统一的、业界广泛接受的定义[10]。
一般认为,SOA 是一种计算模型,它将应用程序的不同功能单元——服务,通过服务间定义良好的接
口和契约联系起来。接口采用中立的方式定义,独立于具体实现服务的硬件平台、操作系统和编程语言,使得构建在这样的系统中的服务可以使用统一和标准的方式进行通信[1-2,5]。
SOA 模型(如图1所示)包含3个实体:①服务提供者;②服务请求者;③服务代理者。3个实体通过发布)、查、绑定3个基本操作相互作用。服务提供者向服务代理者发布服务。服务请求者通过服务代理者查所需的服务,并绑定到这些服务上。服务提供者、服务消费者的角只是逻辑上的,一个服务既可以作为服务提供者,也可作为服务消费者[1,4]。
SOA 是一种“抽象的、松散耦合的细粒度软件架构”。从
收稿日期:2006-10-10E-mail :flyinglx16@163
作者简介:刘翔(1972-),男,湖南长沙人,硕士研究生,研究方向为企业应用集成;刘家红(1980-),湖南浏阳人,博士研究生,研究方向为面向服务的计算与MDA ;吴泉源(1942-),男,教授,博士生导师,研究方向为智能软件与分布计算。
基于SOA 架构的公安应用集成平台的研究与实现
翔1,2,刘家红1,吴泉源1
(1.国防科技大学计算机学院网络与信息安全研究所,湖南长沙410073;
2.长沙市公安局,湖南长沙410007)
要:目前,公安部门对已有信息系统存在统一规划不足、系统建设缺乏规范化及标准化等问题。基于SOA 架构的应用集成使得应用系统可以实现灵活的业务流程,快速适应需求变化等业务发展需要。基于SOA 架构,提出了针对公安行业的应用集成解决方案,研究并实现了公安应用集成平台。基于SOA 架构的公安应用集成平台能够实现公安应用系统、业务数据、业务流程的无缝集成,有效解决公安信息孤岛问题,实现协同办公、办案。关键词:面向服务器的架构;Java 业务集成;应用集成;正规消息路由器;公安中图法分类号:TP311.5
文献标识码:A
文章编号:1000-7024(2007)18-4519-03
Research and implementation of SOA-based public security business
integration platform
LIU Xiang 1,2,
LIU Jia-hong 1,
WU Quan-yuan 1
(1.Institute of Network Technology and Information Security,School of Computer Science,National University of Defense Technology,Changsha 410073,China;2.Changsha Public Security Bureau,Changsha 410007,China )
Abstract :Currently,public security domain has information systems developed and deployed with proprietary technologies and skill sets,which in turn results in an accidental architecture.SOA-based application integration enables building distributed computing systems with agile business processes,thus promotes rapid response against changes of business requirements.An SOA-based application in-tegration solution for public security domain is presented,an SOA-based integration platform which enables seamless integration of ap-plications is studied and implemented,business dates and business processes in public security applications and achieves a fast solution for collaborative case and official business handling.
Key words :SOA;JBI;application integration;NMR;public security
2007年9月计算机工程与设计
Sept.2007
第28卷第18期Vol.28
No.18
Computer Engineering and Design
业务层面来看,SOA 的核心概念是“重用”和“互操作”,它将企业的IT 资源整合成可操作的、基于标准的服务,使其能被重新组合和应用。因此,SOA 不仅可以增强软件开发商的市场竞争力,也可以提升公安、税务等政府部门的战斗力[4]。
2基于SOA 架构的技术规范——JBI
目前,SOA 没有统一的标准和规范。2005年8月,Java 社
区JCP 组织提出了JBI (Java business integration )规范[8]。JBI 为SOA 定义了面向服务集成总线和构件架构的核心,同时它对公共消息总线服务、插件式构件接口,以及服务组合描述机制等进行了标准
化。JBI 是面向服务集成的标准元容器,允许多种第3方插件式构件嵌入;另一方面,JBI 提供了一个通用的消息基础架构,使得业务集成和服务通信通过抽象的服务模型进行交互,实现构件之间的松耦合。一个JBI 环境是驻留在单个JVM 中构件的集合,它由4个部分组成(如图2所示)。
(1)插拔式体系结构:JBI 定义了基于插件方式的架构,以便服务能融入“JBI 运行时”环境。JBI 提供了详细的接口,使服务能与“JBI 运行时”环境交互。“JBI 运行时”在SOA 环境中的服务间扮演仲裁者角。
(2)构件模型:JBI 定义了两种构件:服务引擎构件(service engine ,SE ):此类构件负责实现业务逻辑和其它服务。服务引
擎构件在其内部可使用多种技术和设计模式。服务引擎构件可提供数据传输和转换这种简单的基础服务,也可实现像WS-BPEL 实例一样复杂的业务处理。
绑定构件(binding component ,BC ):绑定构件主要为已部署服务提供传输级绑定。
JBI 的关键是分离服务引擎和绑定构件,以便业务逻辑不被下面的具体细节所干扰。这种方式促进了体系结构的灵活性和可扩展性。绑定构件和服务引擎构件在JBI 内部都可以是服务提供者或服务消费者。
(3)消息传输总线:消息传输总线的关键部分是正规化消
息路由器(normalized message router ,NMR )。NMR 基于WSDL
提供了主要的消息传输中枢,NMR 为部服务引擎构件和绑定构件间的消息传递提供松散耦合。服务需要有聚合业务处理的接口,每个业务处理由零个或多个消息组成。而一个接口有一个或多个传输级绑定。JBI 利用正规化格式描述消息。一个正规化消息由3个部分组成:消息属性、消息有效载荷、消息附件。NMR 支持服务生产者和消费者之间单向模式和服务响应模式的调用。
(4)基于标准的管理:JBI 利用JMX 实现运行时的服务安装、配置和监控。服务必须实现JBI 接口集,以便这些服务在JBI 环境中是可管理的。JBI 环境必须提供一套JMX MBeans 实现“JBI 运行时”的管理。
“JBI 运行时”环境允许服务引擎构件和绑定构件的相关操作如下:安装构件、部署构件附属单元、启动、停止服务以及进行相关服务分组。JBI 为构件及其附属单元定义了标准的部署描述符以及打包模型。
3基于SOA 架构的公安应用集成平台框架
针对公安系统复杂异构的IT 环境,适合选择基于SOA 框
架构建公安应用集成基础平台(如图3所示)。
公安应用集成平台是公安系统的软件基础构架。它遵循JBI 规范、Web 服务相关标准以及XML 等标准构建,支持消息的XML 表示、事务管理、集、可靠安全传输、永久存储和智能路由,可为公安应用提供丰富灵活的集成开发环境,能为公安应用集成从建模、开发、集成、部署、运行、监控、维护的完整生命周期过程管理提供基础环境,适用于公安信息化建设中
对数据集成和应用集成的广泛需求。基础平台可分为四个逻辑部件层和3个工具套件层。
从SOA 生命周期管理的视角看,提供3个配套工具套件:
集成开发环境套件:对应SOA 的建模与组装生命周期。建模生命周期主要完成业务需求分析、服务建模、服务设计;组装生命周期负责发现并重用已有服务来组合成聚合态服务,并提供调试组合服务的功能;
运行时管理监控套件:对应SOA 的部署生命周期。部署
生命周期负责在服务交互参与的人员、流程、信息资源间协调,提供管理监控控制台,利于服务使用者获取SOA 上运行
图1W3C 给出的SOA 模型
服务代理
绑定/调用
发布
服务消费者
协议绑定构件生命周期和服务
JBI 消息总线路由服务
JBI 容器
外部服务提供者
和服务消费者
界面集
成服务Portal
应用服务人口信息服务治安信息服务刑事信息服务
集成开发环境
符合JBI 规范的企业服务集成总线(ESB )
安全服务事务服务
作业管理服务
集服务消息服务监控服务部署服务UDDI 服务持久服务目录服务
的服务的全局视图。此时的管理监控主要聚焦于SOA运行系统的业务层面与服务层面;
服务管理、性能扩展套件:对应SOA的管理生命周期。管理生命周期负责SOA运行环境的缩放性、性能,例如集功能、容错功能、SOA运行环境的资源虚拟化功能、安全性考虑。性能扩展套件提供的管理功能主要聚焦于SOA运行系统的系统管理,如SOA运行系统的资源利用统计信息的监控管理等。
4个逻辑部件的组成及功能如下:
SOA运行框架:包括基础设施服务、服务集成总线。
基础设施服务包括:事务服务、安全服务、作业管理服务、集服务、消息服务、名字和目录服务以及UDDI服务。服务集成总线提供ESB功能,作为SOA的服务基础设施提供中介服务、传输服务、事件服务。中介服务主要负责服务间的路由、SOAP服务消息与内部ESB标准消息的转换。传
输服务提供同步、异步的传输服务,实现服务之间多种通信模型的交互。事件服务主要用于对服务容器响应外部事件消息作为快速反应而设计,提供事件驱动体系结构的处理模型,从而实现服务交互双方的松耦合交互;
应用集成适配框架:包括各种用于集成应用资源的构件,一般以构件框架的形式存在,包括用于访问遗留系统、预打包应用(如J2EE中间件上的EJB应用)的各种协议适配构件,用于访问业务逻辑应用系
统的服务引擎构件,以及用于集成各种表现层应用的界面集成构件。应用集成适配框架是集成平台与外部应用系统以及新应用的中间桥梁,实现应用集成平台与应用系统的适配;
业务组合框架:业务组合框架以面向公共业务应用的组合服务模型形式存在,通过服务间灵活的组合,实现跨业务、跨警种、跨行业的业务流程,且能适应业务变化的需求。由集成开发工具套件支持可视化的服务建模、服务组装,以所见即所得方式构建自己的复杂业务系统,其复杂的业务系统以组合服务模型形式存在。集成开发环境实现组合服务模型向组合服务运行系统的零编程映射,当需求变化或环境变化引起组合服务间协同关系发生变化时,通过更改或调整组合服务模型而实现简单、快速、高效的应用重构;
公安行业协同框架:公安行业协同框架以面向行业应用的组合服务模型形式存在,通过行业建模,把公安行业在长期实践过程中提炼的协同作战流程抽象成组合服务模型。可借助于集成开发工具套件来实现可视化的建模、组装、调试。与业务组合框架一样,公安行业协同框架可以通过更改、调整组合服务模型达到快速构建,随需而变。
4基于SOA架构的公安应用集成平台的实现
公安应用集成不是一个独立的技术实现,而是一个全面的、协同合作的解决方案。通过构建多层次的应用集成基础框架,结合目录服务、MDA和BEPL等技术模型,实现公安各警种的业务流程、应用系
统、数据资源无缝集成,真正做到公安“大整合、高共享、流程化”。其具体实现如图4所示。
公安应用集成框架包括6个部分:
(1)基于SOA架构的公安应用集成平台:集成平台是公安软件运行境体系架构中的核心部分,是公安应用集成实现的关键所在。其布局采用4个层次进行部署,公安部为第1层,公安厅为第2层,公安局为第3层,第4层为分局和支队等基层单位。在平台上登记的服务分为私有服务和公共服务。只有公共服务才对外发布,私有服务只向内发布,部署在本单位的私有服务区内。
(2)应用系统集成:在框架中,垂直应用系统是面向非SOA 技术构建的警务应用系统,适合采用企业应用集成的技术,也就是消息代理+应用适配器的方法,以消息驱动为核心,通过应用适配器实现应用系统之间的松耦合集成;同时,通过综合数据库的数据对象服务,实现水平应用系统(或综合应用系统)共享垂直应用系统的数据。对于水平应用系统,采用SOA和基于构件的技术,构建应用系统;水平应用系统通过业务系统和数据连接接口,访问垂直应用系统、综合业务数据库和综合数据库;在业务系统和数据连接接口的基础上,可以建立水平应用系统的服务端构件;在服务端构件的基础上提炼出能完成独立业务的粗粒度应用接口服务;将其发布为Web服务,供界面调用;也可以将应用接口服务发布到集成平台,供其它水平应用系统使用或供上级应用系统使用。
(3)业务数据集成:业务数据集成通过集成平台中的数据访问服务来实现,采用中心模式和对等模式相
结合的数据共享模式。中心模式的数据共享,以综合数据库为中心,实现各个应用系统之间的数据交换和同步。而对等模式的数据共享,应用系统的数据变化,会发布到业务整合平台,其它应用系统和综合数据库向业务整合平台订阅数据,并增加或更新相应的数据内容,从而实现应用系统之间的数据交换和同步。
(4)业务流程集成:通过平台的业务组合服务框架对公安系统内的服务进行编排,实现公安内部跨部门的业务流程集成;另外,通过行业协同服务框架对来自公安系统外的服务进行编排,实现公安与其它行业的业务流程集成。
(5)异地信息交换平台:它是实现公安系统与其它行业的通信接口,提供一个数据交换的通道。它可以是一个数据交换中间件,也可以是另一个集成平台。他们之间的通信是基于SOAP协议的XML消息。
(下转第4525页)
图4公安应用集成总体框架
数据资源
人口数据治安数据
刑事数据
(12)当UAC 结束会话时,UAC 向代理服务器发送BYE 消息。(13)代理服务器将该BYE 消息转发给UAS 。
(14)代理服务器从BYE 消息中提取出主叫方用户名、被叫方用户名,构造出RADIUS 计费请求结束包Accounting-Request (stop ),并将其发送给RADIUS 服务器。
(15)RADIUS 服务器接收到计费请求结束包后,向数据库中添加相应的计费结束信息,然后向代理服务器返回计费请求响应Accounting-Response 。
(16)UAS 向代理服务器返回200(OK )。
(17)代理服务器将200(OK )响应消息转发给UAC 。以上步骤中,
(8)与(9)、(13)与(14)是异步执行的,(10)、(15)与各自后续步骤没有严格的时序关系。
4结束语
随着网络的不断发展,VoIP 的应用将更加广泛,VoIP 系统
也面临着更为复杂的安全和计费问题。本文介绍了RADIUS 协议及SIP 认证方法,讨论了有关V oIP 认证与计费的问题,并分析了传统SIP 认证方式的不足,提出了如何扩展RADIUS 协议以支持SIP 认证的方法,最后给出了基于RADIUS 与SIP 协议的VoIP 计费实现方法,并设计开发了相关系统。
参考文献:
[1]RFC 3261-2002.SIP:Session Initiation Protocol [S ].
[2]RFC 2865-2000.Remote authentication dial in user service (RADIUS )[S ].
[3]RFC 2866-2000.RADIUS accounting [S ].
[4]张敬伟,周娅,周德新.RADIUS 在端口认证中的应用及其实现[J ].计算机应用,2004,24(6):36-38.
[5]RFC 2617-1999.HTTP authentication:Basic and digest access authentication [S ].
[6]司端锋,韩心慧,龙勤,等.SIP 标准中的核心技术与研究进展[J ].软件学报,2005,16(2):239-250.
soa
[7]
Casola V ,Rak M,Mazzeo A,et al.Security design and evaluation in a V oIP secure infrastructure:a policy based on approach [C ].Proceedings of the International Conference on Information Technology:Coding and Computing,2005:727-732.[8]
王宇飞,范明钰,王光卫.一种基于HTTP 摘要认证的SIP 安全机制[J ].重庆邮电学院学报(自然科学版),2005,17(6):749-751.
图4VoIP 计费过程
(
16)200OK
(17)200OK
(12)BYE
(1)INVITE
(4)180Ringing
(6)200OK (7)ACK
(2)INVITE (3)180Ringing (5)200OK (8)ACK
(9)Accounting-Request (start )(10)Accounting-Response
(11)Media Session
(13)BYE
(14)Accounting-Request (stop )(15)Accounting-Response
UAC SIP Proxy
RADIUS Server
UAS
(6)信息安全扩展平台:在公安应用系统中,确保信息的安全尤其重要,平台中提供的安全服务不足以满足公安信息安全的要求,必须通过设立身份认证、信息加密、日志审计机制,建立专门的信息安全平台,并把它部署成为平台的扩展套件。
5结束语
遵照SOA 的JBI 技术规范构建的公安应用集成平台能够
很好地实现公安应用无缝集成,适应公安业务发展的需求,从而全面提升公安系统的战斗力。目前,基于SOA 架构的公安应用集成平台在安全性以及性能方面考虑不周
[5,7,9]
,本课题将
不断深入,主要聚焦应用集成平台如下领域:为应用集成基础平台提供扩展,支持服务构件的事件驱动模型,以及服务粒度层的安全认证与授权等。
参考文献:
[1]Thomas Erl.Service-oriented architecture:Concepts,technology and design [M ].Indiana:Prentice Hall PTR,2004:12-14.[2]
Dirk Krafzig,Karl Banke,Dirk Slama.Enterprise SOA,service-oriented architecture best practices [M ].Indiana:Prentice Hall,2005:35-37.
[3]
Thomas Erl.Service-oriented architecture,a field guide to integ-rating xml and web services [M ].Indiana:Prentice Hall,2004:157-159.
[4]Papazoglou M,Georgakopoulos D.Service oriented computing [J ].Communications of the ACM,2003,46(10):25-28.
[5]Chappell D A.Enterprise service bus [M ].Sebastopol,CA,US:O'Reilley and Associates Inc,2004:204-206.
[6]Gregor Hohpe,Bobby Woolf.Enterprise integration patterns-de-signing,building and deploying messaging solutions [M ].Bos-ton,MA:Addison Wesley,2004:135-138.[7]BPEL4WS 1.1-2003business process execution language for web services [S ].
[8]JSR2081.0-2005Java business integration [S ].
[9]
Matt Welsh,David Culler,Eric Brewer.SEDA:An architecture for well-conditioned,scalable internet services [C ].Banff,Cana-da:Proceedings of the Eighteenth Symposium on Operating Sys-tems Principles (SOSP-18),2001:235-236.
[10]Carlo Ghezzi.Service-oriented computing:Where does it come
from?A software engineering perspective [C ].Amsterdam,Net-herlands:International Conference on Service-Oriented Compu-ting (ICSOC ),2005:30-35.
(上接第4521页)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。