关于中间件的开发研究[4]
作者:居德华 来源:上海亚士帝信息工程公司
企业应用集成(EAI)中间件
中间件的重要应用就是EAI,正因为如此,许多中间件产品,喜欢直接打出EAI中间件的旗号,但它们的功能常可差别很大,但实际的EAI应用中常需要多类中间件的混合使用。
作为EAI 中间件,它至少应支持以下几个功能,支持应用间数据交换的信息中间件,支持业务过程规则,在这方面,Vitria 的产品是第一个支持这一功能的。
其他可举的厂商有:Tibco Software ,Level 8 Systems,WebMethods, Candle,NEON,Software Technologies Corp. (STC),iWay Software, SilverStream, Mercator Software等。
财务系统中间件
这是一类面向应用的特殊类中间件,由于存在大量的数据和信息交换,基本上是一类信息中间件,另外,出于行业业务需要,存在许多标准和协议,专业性要求较高,比较典型的产品供应商,有像:
Financial Fusion
它是头号Internet银行解决方案供应商,主要产品有STP (Straight-Through Processing)Solution,Financial Fusion Server,GlobalFIX™,SWIFT Adapter,GSTP,UniversalOFX™ Adapter 等, 都是纯Java解决。
另一个银行系统中间件,是Biveroni Batschelet Partners' (BBP) 公司的IGT (Interbank Gateway) 和ServiceBureau。
SunGuard Business Integration/ MINT Technologies 的MINT Knowledge family(MINT Knowledge Broker,MINT Knowledge Manager,MINT Knowledge Master,MINT FIX Engine),是又一个较完整的财务系统解决方案,集成了许多标准格式和协议。
Trace Financial Ltd 的财务中间件Trafic,能与Crest, CGO, SWIFT,Oasys Global等接口,实现STP处理,它提供的产品,包括:Cloverleaf 用于全球财务信息传输和实现STP,CAMS(The Corporate Actions Management System)支持自动工作流管理。
LiveBiz 的JOFX 财务构件,实现财务数据电子交换标准 Open Financial Exchange (OFX) 协议,可用于Internet支付、银行和投资应用,基于EJB平台。
TATA Consultancy Services 也结合其海外开发业务研制出有自主版权的财务中间件 FIG。
对财务中间件方面,国外有专门的指导手册,提供有关的资源信息,如:
The Who, What, Where Guide to Financial Messaging and Middleware 2000,&195.00
Middleware Issues for the Financial Sector,US$795
在附录六中,我们也收集了许多财务中间件产品,可供参考。
由于许多企业应用,会与财务或银行、通信或电信打交道,如可用于客户关系管理(CRM)呼叫中心(CallCenter)的计算机-电话集成(CTI)技术,所以也有些软件企业,根据已有的开发经验,搞出一些相关应用接口的中间件,这也不乏是一种方向,像国内的东方通科技公司,就是走这一方向的例子。
无线应用中间件
日益广泛的移动电话用户群,打开了广阔的应用前景,按美国的预测,到2004年,移动电话用户将达2900万,移动交易额(m-commerce)有可能突破 200亿美元,日本 DoCoMo模式的成功,也为市场带来无限遐想,我们中国目前的移动电话,已超过1.2亿门,成为世界上第一移动电话大国,这些数据,都是普遍看好无线应用和无线应用中间件的主要动力,从2000年起,美国不少(数以百计)新兴产公司,转向无线应用中间件的研制开发,造成过挤和过热的局面,
包括 IBM和微软,也表示将提供更多的无线应用支持,今年3月IBM宣布将为基于Intel's XScale 处理器的设备提供中间件软件,采用它的 WebSphere Everyplace Suite Embedded Edition,这将进一步加剧这一市场的竞争。但对这一过热现象,也有人泼冷水,认为是判断错误,移动用户并不代表实际的无线web存取用户,随着Java无线应用平台的广为接受和标准化,这一应用领域,跳进去容易,但要出人头地并不简单,许多企业是抱着希望进去的,但缺乏有特色的技术基础、开发队伍、以及明确的赢利模式,再加上受资源限制的影响,急于在某一垂直市场的突破,限制了技术的发展,这些均是不利的因素,虽然这一领域最后终究会有成功者,但对大多数,将面临失败的危险。
对中国的开发者,将如何进行我们的选择呢?特别,考虑到面临进入WTO后,将直接面对全球的竞争。这方面可参考的典型产品有,
Broadbeam的无线平台Axio,包括:
● ExpressQ - Wireless messaging server
● ExpressWeb - Wireless content server
●Application Connectors:Web Link,Email Link,MQ Series Link -
分布实时控制中间件
分布实时控制应用,也是中间件重要应用领域,一个典型产品是Real-Time Innovations (RTI) 公司的 NDDS,WaveWorks,WaveSurf ,还有相应的开发工具,可广泛应用于工业控制、通信、以及军事/空间应用。
在要求服务质量的场合,要求采用自适应中间件(见下节)。
嵌入式中间件
这一领域与无线和实时控制中间件直接相关,但由于其在目前的特殊性,我们把它明确独立开来,由于超大规模集成电路的发展,微处理器和微控制器的成本和应用变得越来越普遍,将出现所谓的“无处不在的计算“ (Ubiquitous Computing)时代,人与CPU的比例,将从PC时代的 1:1 ,走向1:N (N>;>;1),由于其巨大的市场前景,许多大的IT企业早就开始起前期研究,为巩固其垄断地位。微软早在1999年就枪先推出所谓的“维纳斯”和CE计划,我们中国的软件工作者,也针对性地提出“女娲”计划,这个领域当前的重点方向,是无线移动和手持设备,以及信息家电。
嵌入式系统由于其复杂性,有专家提出要解决嵌入式软件危机,只有从实时操作系统和嵌入式中间件着手。从软件开发角度讲,很自然会把分布对象的概念引伸到这一领域,提出开发嵌入式中间件(Embedded Middleware)的需要,成为软件开发的一个新热点,据说目前市场已超过10亿美元。一个可注意点是,IBM与Intel合作,将IBM的 WebSphere Everyplace Suite Embedded Edition,移植到Intel& Personal Internet Client Architecture (Intel PCA),包括Intel StrongARM 和Xscale微处理器,重点开发面向无线设备和信息家电的嵌入式软件,在这一方向上,IBM在去年10月,就已推出VisualAge Micro Edition Toolkit。嵌入式中间件开发方面,可举的例子有VTT Electronics的MIDAS,是用于移动分布应用的嵌入式中间件。
与此相关的研究领域很多,在嵌入式操作系统领域,一个有希望的潜在竞争者,是嵌入式 Linux, 它已经得到许多工业界的支持和采纳,为提高标准化程度,进一步增强竞争力,工业联盟组织Embedded Linux Consortium (ELC)今年4月宣布,将对Embedded Linux platform提出统一规范说明,在应用实例方面,著名的开放源程序公司,已将其嵌入式Linux 和实时操作系统eCos,移植至Hitachi's SuperH微处理机;其次一个领域是开发嵌入式Web服务器,已有的产品,像 Xerox PARC’s Hydra 和Dallas Semiconductor’s Tini,最有趣的是近年出现一个开发最小服务器热,不少研究生都参与其中;在实时Java开发方面,出现两个阵营,一是Sun 领导的实时Java 专家组(www.rti.org),参加的有CMU, IBM, Lucent, Motorola,另一个是由HP领导的 J-Consortium, 旨在打破Sun 对Java的垄断,参加者有Ericsson, Microsoft, MITRE等,从用户和开发人员角度,则希望两者能合而为一;在连接设备的分布计算平台上,比较出面和公认的是Sun提出的 Jini; 对无线设备网,希望是自组织和不费力的(Effortless Networking), 在这一领域目前竞争激烈,微软提出UPnP(Universal Plug and Play),已提交 IETF作建议标准,HP也推出相似的 CPnP(Chai Plug and Play),Sun/Philips/Sony联合提出Jini/HAVi,把Jini与家用设备规定 HAVi (Home Audio-Visual Interoperability) 结合起来,Lucent则提出 InfernoSpaces,基于它的网络OS Inferno之上,Jini的优点是设备代码较小。
在J-Consortium底下,有个实时和分布嵌入式中间件工作小组(RTDM-WG),其任务是提交一份关于Java平台的嵌入式中间件技术报告,实时Java扩充,API规定说明和中间件相关的Java类库。
在嵌入式领域,已出现一些标准的API,像Message Passing Interface (MPI)和实时MPI(MPI/RT),VSIPL(Vector, Signal, and Image Processing Library)等,但过去传统上把处理与通信分开,这带来软件不够紧凑,为此,MITRE和MIT研究人员,正在研究如何重构数据,使处理和通信能有效结合起来,同时引出新的嵌入式API。
是否能将分布对象技术CORBA 引进嵌入式系统,也是一个研究方向,但由于嵌入式系统存储容量较小,必须开发“小脚印”的CORBA,为此不少专家提出了许多改进建议,CORBA技术的领先者IONA Technologies,采用购并的办法, 把Object Oriented Concepts, Inc. (OOC)公司开发的技术ORBacus,集成到它原先的Orbix产品系列中,以进入实时嵌入式中间件市场,ORBacus 对非商业应用,仍保持免费开放源程序。
在众多嵌入式设备的无线网络环境中,如何简化设备的结构配置,互相发现存在的服务是一个重要的技术问题,目前已出现多种相关技术,用于服务的广告和发现,这些技术是:(1)由工业联盟兰牙特殊兴趣小组提出的兰牙(Bluetooth) 技术; (2) Sun公司提出的Jini结构;(3)Salutation联盟建议的 Salutation结构;(4)微软的UpnP; (5)确IETF提议的Service Location Protocol (SLP)协议; 由于这些方法各有优缺点,目前还没有一种占特别的优势,所以技术共存还可能持续一段时间,为解决互操作问题,相应的搭桥技术也应运而生,如Salutation-SLP,Salutation-Bluetooth, Jini-UPnP, Jini-Bluetooth, 这些技术自然带出一批中间件产品。
容易看出,对嵌入式中间件可研究的内容很多,国外对这一市场有详细的分析预测报告,可惜要价3950美元,无法一窥其内容。
安全中间件
网络经济为企业带来巨大好处的同时,也提出了极具挑战性的问题,就是网络信息系统的安全性问题,美国计算机安全协会做过一份调查,186家企业由于机密数据失窃和财政诈骗,一年损失超过3.77亿美元,十分惊人,但为了提高系统的安全性,对大多数企业来讲,不可能靠聘用昂贵的安全专家来解决问题,因此如何把安全性构造在系统之中,显得特别重要,安全中间件将在网络信息系统中发挥重要作用。
V-ONE 公司1995年推出号称第一个工业安全中间件产品SmartGATE,它采用 RSA加密技术和公司的最新专利,通过集成加密和基于令牌的认证,实现在TCP/IP协议之上的,透明的应用对应用安全性,使安全解决,在防火墙基础上,又加了一层安全中间件,中间件解决方案的优点是,保持与厂商的独立性,可直接插入,不要求修改原有的应用程序、细颗粒的存取控制、A2A安全性、远程用户注册、可监控服务、基于令牌或智能卡的认证、与加密算法的独立性、能与放火墙配合工作,能在边界上实现存取谈判、且独立于防火墙类型、可适合多类应用等。V-ONE 公司的产品系列包括:防火墙SmartWall™, 智能卡阅读器和软件 SmartCAT™,安全中间件SmartGATE™,和电子支付系统及服务器软件 Wallet Technology。
eSec 是一家澳大利亚公司,提供较完整的安全解决方案,包括防火墙、虚拟专有网(VPN)的管理、入侵检出系统(IDS)以及非管制区(DMZ--Demilitarised Zone)和公共网络服务的管理。eSec 也提供网上支付服务,包括常见信用卡支付,与WorldPay合作的多币种支付,对兑换不收手续费,非常强的加密手段(1,024-bit RSA & 128-bit RC4),eSec的中间件产品Igloo采用开放源程序,它实质上是一个模型和工具,以软件代理形式,帮助用户很快实现解决方案。
Global Privacy Solutions安全产品的特色,是保护客户的隐私,如如何保护病人的健康信息,它提供全方位的解决方案,包括咨询、授证,符合欧美有关的隐私保护法规,它特别提醒,安全性和保护隐私,并非一件事,需要不同解决手段。
Adiron公司的安全中间件工具产品ORBAsec SL3,实现OMG 2000年底刚采纳的新的Common Secure Interoperability Version 2 (CSIv2) 协议,CSIv2 是CORBA协议的一部分,它的API建立在数学模型基础上,具有更强安全性,认证和加密是建筑在TLS之上(原SSL)。CONTROL是用于存取控制的中间件产品,使这部分功能可脱开应用,存取政策可用专门语言定义在一个正文文件中。其它产品包括,ORBAsec 企业安全政策管理系统和定义语言。
开放SSL(www.openssl.org)组织,有个合作开发项目,按开放源程序,实现 SSL v2/v3 和 TLS v1,对商业和非商业用户,均免费提供,采取类似 Apache 的许可方式。
PGP Security有两个安全中间件研制项目,Sigma是基于CORBA 分布环境的安全互联,增加CORBA 存取控制,安全机制建筑在对Domain and Type Enforcement (DTE)的面向对象扩充上。Secure Virtual Enclaves (SVE) 研究安全技术,通过COTS OS 和COTS中间件,使能不同组织的分布合作计算。采用各种中间件安全机制(如SSL, DCE security, Sesame, SPKM),保护信息资源,强制各类分布应用(如DCOM, CORBA, DCE, WWW和其它网络应用)能贯彻规定的安全政策。
Kyberpass公司是一个领先的安全中间件公司,它的公开密钥结构(PKI)的解决方案是得奖的产品,已有四百万个用户,产品有安全服务器和Kyberpass 4.0套件,最近,又宣布参加著名安全性公司 RSA 的安全战略伙伴程序,并通过RSA 的 "RSA Keon™ Ready" 产品认定证书,标志着它的产品在PKI系列中已达到一定地位。
以大学为主的Internet2联盟有个专门的安全性工作组,为推动安全中间件发展和标准化,正着手一个Internet2 Middleware Initiative (I2-MI),并有许多相关的研究项目。EDUCAUSE, Internet2, NCSA, SURA, UCSD, University of Chicago, USC/ ISI, and University of Wisconsin 几家联合,今年9月获得美国自然科学基金(NSF)1200万美元的项目NSF Middleware Initiative (NMI),专门研究中间件,它将利用早先两个项目的成果,即Globus* project 和开发中间件工具的MACE,构成一个较完整的中间件框架,专家相信,大学的先锋作用将会带动中间件市场的发展。EDUCAUSE是一个非赢利性协会(www.educause.edu),会员包括 1800个大学和180个公司,旨在用IT技术推动高等教育。
在电子商务安全性方面,值得注意的一个动态是,Intel 发布公共数据安全结构Common Data Security Architecture(CDSA),它采用可免费下载的开放源程序,以帮助业界提供一种技术和厂商独立的安全性解决方案。CDSA是一组安全中间件的规范说明,和开放源程序的参考实现,可作为电子商务的安全解决方案积木块,它提供一组分层的、跨平台、互易操作的、和可扩充的安全服务,开放集团(TOP)已批准将CDSA作为推荐技术标准。为加速对CDSA采纳进程,还宣布它的Itanium™ 处理器将提供对CDSA 的优化能力,在服务器端提供开放源程序的Boot Integrity Services (BIS),并提供一些配套的支撑技术,像Internet Protocol Security (IPSEC) 和Intel Protected Aclearcase/" target="_blank" >ccess Architecture (IPAA),工业专家确信,CDSA的开放源程序性质,将会使其提供的安全解决方案,有很大的健壮性,有关内容和源程序下载,可访问网站: deve;per.intel.com/ial/security/。
为了加快国内实现安全中间件的步伐,建议充分利用这些开发源程序渠道,尽快学习引进新技术,尽早投入实际应用。
安全性相关课题包括:防火墙、3A (authentication, administration, and authorization)、存取控制、加密、容错、隐私保护、黑客防止、入侵检出、系统监控、抗病毒软件、预防服务阻止攻击(denial of service)、Certificate Authority (CA)。
牵涉技术和标准: Kerberos,Data Encryption Standard (DES), Rivest-Shamir-Adleman (RSA), Message Digest 5 (MD5), Public Key Infrastructure (PKI),Secure Shell (SSH),Secure Socket Layer(SSL),Transport Layer Security(TLS), Pretty Good Privacy (PGP),Secure Multimedia Internet Mail Extentions (S/MIME), Generic Security Service Application Programming Interface (GSS-API)。