物联网图强 软件先行
控制物联网“中枢神经”
物联网软件和中间件处于DCM三层架构的中上层和顶层,如果把物联网系统和人体做比较,感知层好比人体的四肢,传输层好比人的身体和内脏,那么应用层就好比人的大脑,软件和中间件是物联网系统的灵魂和中枢神经,这应该是国内外业界的共识,这也是为什么泛在计算、智慧地球等概念是由作为软件和IT 服务商的IBM提出的原因。
软件巨头微软的CEO比尔·盖茨早在1995 年《未来之路》一书中就提到和看到了物联网的潜力,Google也推出了PowerMeter等物联网计划。按物联网的定义,任何末端设备和智能物件只要嵌入了芯片和软件都是物联网的连接对象,笔者认为,所有嵌入式软件都是为物联网服务的。图1所示M2M/泛在计算及物联网的厂商市场格局中,软件厂商占据了绝对主导地位。
在物联网概念被大众理解和接受以后,大家才发现,物联网并不是什么全新的东西,上万亿的末端“智能物件”和各种应用子系统早已经存在于工业和日常生活中。笔者认为,物联网产业发展的关键在于把现有的智能物件和子系统连接起来,实现应用的大集成(Grand Integration)和“管控营一体化”,为实现“高效、节能、安全、环保”的社会服务,软件(包括嵌入式软件)和中间件将作为核心和灵魂起到至关重要的作用。这并不是说发展传感器等末端不重要,而是在大集成工程中,系统变得更加智能化和网络化,反过来会对末端设备和传感器提出更高的要求,如此循环螺旋上升会推动整个产业链的发展。 因此,笔者认为,要占领物联网制高点,软件和中间件的作用至关重要,应该得到国家层面的高度重视。
在包括物联网软件在内的软件领域,美国长期引领潮流,基本上垄断了世界市场,欧盟(世界级的软件厂商只有SAP一家在欧洲)早已看到了软件和中间件在物联网产业链中的重要性,从2005年开始资助了Hydra项目,这是一个研发物联网中间件和“网络化嵌入式系统软件”的组织,已取得不少成果。目前在中国有很多传感器、传感网、RFID研究中心及产业(生产)基地,也有很多人呼吁建立物联网标准,唯独没有物联网软件和中间件研发基地和组织,这种本末倒置的现象很让人担心。 笔者认为,如果我们的软件不够强,制定物联网标准也一定是纸上谈兵,物联网产业基地一定是低层次重复建设造成生产过剩,我们在物联网产业永远不会有话语权,更谈不上占领什么制高点。
中间件是
物联网软件的核心
如果说软件是物联网的灵魂,中间件(Middleware)就是这个灵魂的核心。笔者作为一直从事中间件研发的工作者,早年在美国国家实验室从事“云计算”中间件的研发,后来又在IBM和BEA(现Oracle)等著名中间件公司从事商业中间件研发,回国后作为中国中间件理事会成员之一长期从事中间件的普及与推广。中间件与操作系统和数据库并列成为三足鼎立的“基础软件”,这一理念经过多年的探讨已经被国内业界和政府主管部门认可,但在国内长期 “重硬轻软”的大环境下,中间件产业并未得到足够的重视。
笔者认为,除操作系统、数据库和直接面向用户的客户端软件以外,凡是能批量生产、高度复用的软件都算是中间件。中间件有很多种类,如通用中间件、嵌入式中间件、数字电视中间件、RFID中间件和M2M物联网中间件等等,无处不在。IBM、 Oracle、微软等软件巨头都是引领潮流的中间件生产商; SAP等大型(ERP)应用软件厂商的产品也是基于中间件架构的; 国内的用友、金蝶等软件厂商也都有中间件部门或分公司。在操作系统和数据库市场格局早已确定的情况下,中间件,尤其是面向行业的业务基础中间件,也许是各国软件产业发展的惟一机会。可以毫不夸张地说,能否做大做强中间件,是整个中国IT产业能否做大做强的关键。 物联网产业的发展为物联网中间件的发展提供了新的机遇,图2展示了欧盟Hydra物联网中间件计划的技术架构,值得我们借鉴。
物联网中间件处于物联网的集成服务器端和感知层、传输层的嵌入式设备中。 服务器端中间件称为物联网业务基础中间件,一般都是基于传统的中间件(应用服务器、ESB/MQ等)构建,加入设备连接和图形化组态展示等模块; 嵌入式中间件是一些支持不同通信协议的模块和运行环境。中间件的特点是它固化了很多通用功能,但在具体应用中多半需要二次开发来实现个性化的行业业务需求,因此所有物联网中间件都要提供快速开发(RAD)工具。
620)this.style.width=620;" border=0>
620)this.style.width=620;" border=0>
620)this.style.width=620;" border=0>
620)this.style.width=620;" border=0>
部分嵌入式中间件及功能
服务器端软件
基于中央服务器的“大集成”(Grand Integration)是物联网应用系统的主要形式,大集成包括原有的消除信息孤岛的EAI信息集成和智能物件以及物联网监控子系统的集成。EAI、 SOA、ESB/MQ、SaaS等技术理念对物联网应用同样适用,原有面向互联网应用的基于MVC三层架构的应用服务器中间件,包括基于Java 技术的IBM Webshpere和Oracle BEA Weblogic,以及基于.NET技术的微软应用服务器,仍将扮演重要的角色。这些厂家必将利用它们现有的优势推出面向物联网应用的新的中间件产品,例如IBM推出的WebSphere EveryPlace Device Manager。
一些非传统中间件厂商也试图抓住物联网这个机遇推出自己的面向物联网应用的专用中间件产品,并提出了一些新的应用模式, 如Axeda公司仿照当年Siebel的CRM成功经验提出了DRM(设备关系管理),还有基于OMA(Open Mobile Alliance)标准的MDM(Mobile Device Management), 以及IDM(Intelligent Device Management)等。
同方软件也从2003年开始从事M2M物联网业务基础中间件及其行业套件系列产品的研发,服务于智能建筑、智能交通、消防安防、能源环境、光电水务等行业业务。
物联网应用要从Networks of Things(物连网) 走向真正的Internet of Things(物联网),MMO(M2M Mobile Operator,即M2M(虚拟)营运商)扮演着重要角色。MMO的ADC中心服务器上运行的软件系统需要支持多租户(Multi- Tenants)SaaS应用模式。这种系统最开始是由M2M虚拟营运商(MVNO)开发营运的,但后来由于越来越多看好M2M业务的移动营运商的直接参与,M2M虚拟营运商(如美国的 JasperWireless等公司)“被迫”成了M2M SaaS软件或中间件提供商,而中国移动和同方合资的同方合志公司是中国目前最大的MMO。
嵌入式软件
嵌入式系统越来越多地以中间件的形式出现,由第三方专业的软件厂商提供,而不是直接由嵌入式设备提供商的一个内部软件部门开发提供,这种产业分工更明确的方式更利于发挥软硬件专业厂家的优势和产业化发展,做大做强。表1展示了部分嵌入式中间件及其功能。
OSGi联盟推出的OSGi中间件技术架构(图3)在物联网产业的服务器端和嵌入式系统中都得到了广泛的应用。