专注SIP通讯产品与方案

物联网体系框架之应用层

应用层是物联网运行的驱动力,提供服务是物联网建设的价值所在。应用层的核心功能在于站在更高的层次上管理、运用资源。感知层和传输层将收集到的物品参数信息,汇总在应用层进行统一分析、挖掘、决策,用于支撑跨行业、跨应用、跨系统之间的信息协同、控制、共享、互通,提升信息的综合利用度。应用层是对物联网的信息进行处理和应用,面向各类应用,实现信息的存储、数据的分析和挖掘、应用的决策等,涉及海量信息的智能分析处理、分布式计算、中间件等多种技术。
应用层是物联网运行的驱动力
一、业务模式和流程
服务是一个或多个分布式业务流程的组成部分。
1.业务模式
目前,物联网业务主要有三种模式,分别是业务定制模式、公共服务模式和灾害应急模式。
1)业务定制模式
在业务定制模式下用户自己查询、确定业务的类型和内容。用户通过主动查询和信息推送两种方式,获取物联网系统提供的业务类型以及业务内容。
业务定制过程环节:用户挑选业务类型,确定业务内容后,向物联网应用系统定制业务。物联网应用系统受理业务请求后,确认业务已成功定制。建立用户与所定制业务的关联,将业务相关的操作以任务形式交付后台执行。任务执行返回的数据和信息由应用系统反馈给用户。
业务退订过程环节:用户向物联网应用系统提交退订的业务类型和内容,应用系统受理业务退订的要求,解除用户与业务之间的关联,给用户一个确认业务已成功退订。
业务定制模式如个人用户向物联网应用系统定制气象服务信息、交通服务信息等,企业用户向物联网应用系统定制的服务有智能电网、工业控制等。
2)公共服务模式
在公共服务模式下,常由政府或非盈利组织建立公共服务的业务平台,在业务平台之上定义业务类型、业务规则、业务内容、业务受众等。
业务平台的核心层包括业务规则、业务逻辑和业务决策,它们之间彼此关联、相互协调,保证公共服务业务顺利、有效地进行。业务逻辑与信息收集系统相连;业务决策与指挥调度系统、信息发布系统相连。信息收集系统、指挥调度系统和信息发布系统处在外围层,这三个系统由第三方厂商提供。
公共服务模式的例子包括公共安全系统、环境监测系统等。
3)灾害应急模式
随着突发自然灾害和社会公共安全复杂度的不断提高,应急事件牵涉面也会越来越广,这为灾害应急模式下的物联网系统的设计提出了更高的要求。
物联网体系框架之应用层(图2)
SIP通信业务层面,物联网系统必须提供宽带和实时服务,并将语音、数据和视频等融合于一体,为指挥中心和事发现场之间提供反映现场真实情况的宽带音视频融合通信手段,支持应急响应指挥中心和现场指挥系统之间的高速数据、语音和视频IP电话通信,支持对移动目标的实时定位。
在通信建立层面,物联网系统必须支持无线和移动通信方式。由于事发现场的不确定性,应急指挥平台必须具备移动特性,在任何地方、任何时间、任何情况下均能和指挥中心共享信息的能力,减少应急呼叫中心对固定场所的依赖,提高应急核心机构在紧急情况下的机动能力。
在信息感知层面,物联网系统必须实现对应急事件多个参数信息的采集和报送,并与应急综合数据库的各类信息相融合,同时结合电子地图,基于信息融合和预测技术,对突发性  
灾害发展趋势进行动态预测,进而为辅助决策提供依据,有效地协调指挥救援。典型的灾害应急模式的物联网应用场景包括地震、泥石流、森林火灾等。
2.业务描述语言
1)XML
XML是目前通用的表示结构化信息的一种标准文本格式,没有复杂的语法和包罗万象的数据定义,是一个用来定义其他语言的元语言,是一种既无标签集也无语法的标记语言。
XML的优势如下。
(1)可拓展性:企业可以用XML为电子商务和供应链集成等应用定义自己的标记语言,还可以为特定行业定义该领域的特殊标记语言,作为该领域信息共享与数据交换的基础。
(2)灵活性:XML提供一种结构化的数据表示方式,使得用户界面分离与结构化数据。Web用户追求的先进功能在XML环境下容易实现。
(3)自描述性:XML文档通常包含一个文档类型声明,除了人容易读懂XML文档,计算机也能处理。XML文档被看作是文档的数据库化和数据的文档化,做到了独立于应用系统,并且数据能够重用。
(4)简明性:它只有SGML约20%的复杂性,但却具有SGML80%的功能。XML简单、易学、易用并且易实现。另外.XML也吸收了在Web中使用HTML的经验。
2)UML
UML是用来对软件密集系统进行描述、构造、可视化和文档编制的一种语言。它融合了Booch.OMT和OOSE方法中的概念,是可以被使用者广泛采用的简单、一致、通用的建模语言。
UML是标准的建模语言,不是一个标准的开发流程。虽然UML的应用以系统的开发流程为背景,但根据现有开发经验,不同的组织不同的应用领域需要不同的开发过程建立自身的UML模型。
UML的重要内容由下列五类图来定义。
第一类是用例图。从用户角度描述系统功能并指出各功能的操作者。
第二类是静态图,包括类图、对象图和包图。其中,类图描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系,如关联、依赖、聚合等,还包括类的内部结构。
第三类是行为图,描述系统的动态模型和组成对象间的交互关系,包括状态图和活动图,状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件,状态图是对类图的补充,活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并进行活动。
第四类是交互图,描述对象间交互关系,包括顺序图和合作图。顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,合作图描述对象间的协作关系。合作图与顺序图相似,也显示对象间的动态合作关系。
第五类是实现图。其中的构件图描述代码部件的物理结构及各部件之间的依赖关系。
3)BPEL
业务过程执行语言(BusinessProcessExecutionLanguage»BPEL)是基于XML,用来 
描述业务过程的编程语言。被描写业务过程由Web服务来实现,这个描写的本身也由服务提供,并可以当作Web服务来使用。
BPEL提供的服务组装模型提供如下特性。
(1)灵活性:服务组装模型具有丰富的表现能力,能够描述复杂的交互场景,能够快速地适应变化。
(2)嵌套组装:一个业务流程可以表现为一个标准的Web服务,并被组装到其他流程或服务中,组成更粗粒度的服务,提高了服务的可伸缩性和重用性。
(3)关注点分离:BPEL只关注于服务组装的业务逻辑。其他关注点由具体实现平台进行处理。
(4)会话状态和生命周期管理:与无状态的Web服务不同,一个业务流程通常具有明确的生命周期模型。BPEL提供对长时间运行的、有状态交互的支持。
(5)可恢复性:对于业务流程(尤其对长时间运行的流程)是非常重要的。BPEL提供了内置的失败处理和补偿机制,对于可预测的错误进行必要的处理。
3.业务流程
业务流程与系统相似,拥有物理结构、功能组织以及为实现既定目标的协作行为。业务流程的组件是业务流程相关的人和系统,参与者具有物理结构,能按照功能进行组织,并相互协作产生业务流程的预期结果。
业务流程与系统相似
业务流程开发者设计和规划业务流程时,需要考虑如下问题:
(1)定义业务流程的组件和服务。
(2)为组件和服务分配活动职责。
(3)确定组件和服务之间所需的交互。
(4)确定业务流程组件与服务的网络地理位置。
(5)确定组件之间的通信机制。
(6)决定如何协调组件和服务的活动。
(7)定期评估业务流程,判断它是否符合需求,并进行反馈调整。
面向服务架构(Service-OrientedArchitecture,SOA)将信息系统模块化为服务的架构风格。一条业务流程是一个有组织的任务集合,SOA的思想就是用服务组件执行各个任务。
SOA定义的服务层和扩展阶段的关系分为三个阶段:
(1)第一个阶段只有基本服务。每个基本服务提供一个基本的业务功能,基本功能不会被进一步拆分。基本服务可以分为基本数据服务和基本逻辑服务两类。
(2)第二个阶段在基本服务之上增加组合服务。组合服务是由其他服务组合而成的服务。组合服务的运行层次高于基础服务。
(3)第三个阶段在第二个阶段基础上增加流程服务。流程服务代表了长期工作流程或业务流程。业务流程是可中断的、长期运行的服务流,与基本服务、组合服务不同,流程服务通常有一个状态,该状态在多个调用之间保持稳定。
基于SOA的思路进行业务流程的建模、设计,是业界推崇的方法,也是业务流程设计的一个重要原则。
根据业务流程管理(BusinessProcessManagement)提供的准则和方法,物联网业务流程包含以下三个层次。
(1)业务流程的建立:根据预计的输出结果,整理业务流程的具体要求,定义各种具体的业务规则,划分业务中各参与者的角色,为他们分配功能职责,设计和规划详细的业务方案,协调参与者之间的交互。
(2)业务流程的优化:由于环境、用户群的变化,业务流程提供的功能和服务也应随之调整变化,优化调整过程去除无用、低效和冗余流程环节,增加必须的新环节,之后重新排列调整优化各个环节之间的顺序,形成优化之后的业务流程。
(3)业务流程的重组:相对业务流程优化,业务流程重组是更为彻底的变革行动。对原有流程进行全面的功能和效率分析,发现存在的问题;设计新的业务流程改进方案,并进行评估;制定与新流程匹配的组织结构和业务规范,使三者形成一个体系。
目前市场上有许多公司(如IBM‘Microsoft、BEA、Oracle、SAP、金蝶软件、神州数码等)提供帮助企业用户进行业务流程建模分析和管理的系统软件。
二、服务资源
物联网系统的服务资源,包括标识、地址、存储系统、计算能力等。
物联网系统的服务资源
1.标识
在许多系统和业务中,都需要对不同的个体进行区分。需给每个对象起一个唯一的名字即标识。标识只是为每个对象创建和分配唯一的号码或字符串。之后,这些标识就可以用来代表系统中的每个对象。
大多数在物理世界中存在的实体并未真正出现在抽象的逻辑环境中。如果要在逻辑环境中为物理实体分配角色,描述它们的行为,需将物理实体和标识关联起来。
一个标识符代表唯一一个对象,说明标识符所包含的可以量化的值具有唯一性。不排除一个对象在不同的系统中扮演不同的角色,这样的对象通常具有多种类型的标识符。标识符的唯一性是针对某一种特定的标识符类型而言的。
由于组成物联网的设备种类繁多,数量巨大,为保证任何设备在身份上的唯一性,需要设立一个标识管理中心。标识管理中心基本职责如下:
(1)分配唯一标识符。
(2)关联标识符和它们应该标识的对象。
初级的唯一标识符分配做法是,指定GUID管理中心在数据库中维护一个标识符列表,然后确保每个分配的新标识符不在数据库中引发冲突即可。因为只有一个标识管理中心有时是不现实的。因此,实际中使用层次标识符。
全球唯一标识符(UniversallyUniqueIDentifier,UUID)属于层次标识符。创建UUID的方法很多,常见的有GUID标准和OID标准。
1)GUID标准
一个GUID是长度为128位的二进制数字序列。GUID使用计算机网卡(NIOMA的48位MAC地址作为发放者的唯一标识符。MAC地址本身包含两部分的24编码。第一部分标识了网卡制造商,它的标识管理中心是IEEE注册管理中心;MAC地址的其余部分由制造商唯一分配,唯一标识网卡,制造商因此就成了MAC地址的第二部分的标识管理中心。
GU1D的其余部分(唯一标识对象的部分)是从公历开始到分配标识符时刻之间流逝的时间(以100ns间隔进行度量),它将作为单个对象标识符。只要被分配的Mac地址的机器不在两个100ns之间产生多个标识符。就将为每个对象产生唯一的标识符。
GUID由24位网卡制造商ID.24位独立网卡ID和其余部分组成,GUID涉及三个层次的标识管理中心:
(1)IEEE注册管理中心分配网卡制造商的标识符,该标识符是分配给网卡MAC地址的第一部分。
(2)制造商发放各个网卡的标识符,该标识符是分配给网卡MAC地址的第二部分。
(3)负责分配GUID的组件运行在一台计算机上。组件使用计算机MAC地址,加上计算机时钟确定的值,生成一个完整的GUID,用于标识特定对象。
2)OID标准
对象标识符(ObjeCTIDentifier,OID)成为ISO和ITU标准工作组的对象标识方法。OID标识体系呈现树状结构,从树根上分出三支分别代表ITU-T标准工作组、ISO标准工作组以及ITU-T和ISO联合工作组。
0ID标识体系具有以下特点:
(1)OID标识树状结构由弧和节点组成,两个不同节点由弧连接。
(2)树上的每个节点代表一个对象,每个节点必须被编号,编号范围为0至无穷。
(3)每个节点可以生长出无穷多的弧,弧的另一端节点用于表示根节点分支之下的对象。
SNMPCSimpleNetworkManagementProtocol)是IETE工作组定义的一套网络管理协议。SNMP的管理信息库及MIB(ManagementInformationBase)是一种树状结构。MIB中一个0ID表示一个特定的SNMP目标。
2.地址
地址包含了网络拓扑信息,用于标识一个设备在网络中的位置。对于网络中的一个设备,标识符用于唯一标识它的身份,不随设备的接入位置变化而发生改变;而设备的地址是由其在网络中的接入位置决定的。标识如同人的名字,地址如同人的家庭住址,一个人搬家后,家庭住址会发生改变,而人的名字通常不会因搬家而变更。
标识符只保证被标识对象的身份唯一性,标识符的结构呈现扁平特点,没有内部结构,无法进行聚合,导致可扩展性不足。地址则需要采集层次性的名字空间,体现一定的拓扑结构,层次名字空间包含一定的结构特性,有利于聚合。
IP地址是目前最广泛使用的网络地址。互联网现在使用IP地址既表示节点的位置信息,又表示节点的身份信息。混淆了地址和标识的功能界限,就是IP地址语义过载。因此,在这里有必要指出的是,IP地址的功能是用于互联网中进行分组路由。而非标识一个网络设备的身份。
目前IP协议有两个不同的版本,即IPv4地址和IPv6地址。
IPv4地址长度是32位,以字节为单位划分成四段。用符号区分不同段的数值。将段数值用十进制表示。例如,123.125.71.111就是一个IPv4地址。IPv4地址被分为五类,A类地址首位是0,B类地址前两位是10,C类地址前三位是110,D类地址前四位是1110,E类地址前五位是llllOo
IPv6地址长度是128位,巨大的地址容量将彻底解决IPv4地址不足的问题,支持未来多年的需求。IPv6还提供了从传感器终端到最后的各类客户端的“端到端”的通信特点,为物联网的发展创造了良好的网络通信环境。
IPv6地址划分为以下三个类别。
IPV6地址演示
(1)单播地址(UnicastAddress):单播地址是点对点通信时使用的地址,此地址仅标识一个网络接口。网络负责将对单播地址发送的分组送到该网络接口上。
(2)组播地址(MulticastAddress):组播地址表示主机组。它标识一组网络接口,该组包括属于不同系统的多个网络接口。当分组的目的地址是组播地址时,网络尽可能将分组发到该组的所有网络接口上。
(3)任播地址(AnycastAddress):任播地址也标识接口组。它与组播的区别在于发送分组的方法,向任播地址发送的分组并未被发送给组内的所有成员。而只发给该地址标识的路由意义上最近的那个网络接口,它是IPv6新加入的功能。
从32位扩展到128位,不仅保证能够为数以亿万计的主机编址,而且也在为等级结构中插入更多的层次提供了余地。IPv6地址的层次远多于在IPv4中的网络、子网和主机三个基本层次。
3.存储资源
随着科技的进步,人们制造数据的方式有多种,制造的数据量也在高速增长,如互联网上的多媒体业务、电子商务等。
储存数据是进一步使用、加工数据的基础和必要前提,也是保存、记录数据的重要方法。常用的存储介质包括磁盘和光盘。衡量储存介质性能的重要指标包括储存容量和访问速度。
1)磁盘
磁盘属于计算机的外部储存器,如硬盘,其内部有圆形的磁性盘。硬盘接口有以下几种:
  • (1)ATA是用40针脚并口数据线连接主板与硬盘,分为Ultra-ATA/100和Ultra-ATA/133两种,表示硬盘接口的最大传输速率分别是lOOMB/s和133MB/s。
  • (2)SATA串口硬盘使用4支针脚,分别用于连接电源、连接地线、发送数据和接收数据,这样的结构可以降低系统能耗和系统复杂性。SATA定义的数据传输速率达到150MB/S。
  • (3)SATA2是在SATA基础上发展起来的,它采用原生命令队列技术,对硬盘的指令执行顺序进行优化,引导磁头以高效率的顺序进行寻址。SATA2的数据传输速率达到300MB/so
硬盘记录密度决定了可以达到的硬盘储存容量。为提升单个硬盘储存容量的限制,出现了磁盘阵列,磁盘阵列是由多个容量较小、稳定性较高、速度较慢的磁盘组合成的一个大型的磁盘组,可以提升整个磁盘系统在储存容量和访问速度两方面的效能。
2)光盘
光盘是光学储存介质。根据光盘结构,光盘主要分为CD、DVD、蓝光光盘等。这几种光盘的主要结构原理一样,区别在于光盘的厚度和材料。光盘的记录密度受限于读出的光点大小,即光学的绕射极限,包括激光波长、物镜的数值孔径。缩短激光波长、增大物镜数值孔径可以缩小光点,提高记录密度。 
读取和烧录CD.DVD.蓝光光盘的激光是不同的。例如读出CD数据时,激光波长为780nm.物镜数值孔径为0.45;读出DVD数据时,激光波长为650nm,物镜数值孔径为0.6;读出蓝光光盘数据时,激光波长为405nm,物镜数值孔径为0.85。激光光束的不同导致了光盘容量的差另LCD的容量700MB左右,DVD达到4.7GB.蓝光光盘可以达到25GB。
4.计算能力
计算是分析、处理数据的基本操作。除了保证计算结果的正确性,谈及计算能力,常强调计算速度。
三、服务质量
物联网的服务质量可以分别从通信、数据和用户体验三个方面来细分。
1.通信为中心的服务质量
1)时延
时延是指一个报文或分组从网络的一端传输到另一端所需要的时间。它包括了发送时延、传播时延、处理时延、排队时延。
时延是通信信服务质量的一个重要指标。低时延是网络运营商追求的目标。时延过大通常是由于网络负载过重导致。
2)公平性
由于通信网络能够为网络节点提供带宽资源的总量是有限的,所以公平性是衡量网络通信质量的重要指标,按照公平性保证的强度分为:
(1)保证网络内的每个节点都能够绝对公平地获得信道带宽资源。
(2)保证网络内的每一个节点都能够有均等的机会获得信道带宽资源。
(3)保证网络内的每一个节点都有机会获得信道带宽资源。
第一种公平性在实际网络环境中是很难得到保证的。在实际运用过程中,更多的是强调后面两种公平性所代表的含义,并用于衡量网络性能。
3)优先级
网络通信中的优先级主要是指根据对网络承载的各种业务进行分类,并按照分类指定不同业务的优先等级。正常情况下,网络保证优先等级高的业务比优先等级低的业务有更低的等待时延、更高的吞吐量。网络资源紧张时网络会限制低优先的业务,尽力满足优先等级高的业务需求。
除了不同业务之间的优先等级之外,通信中也会考虑不同用户之间的优先等级。网络运营商根据与用户达成的服务条款协议确定优先等级,网络根据运营商与用户之间达成的协议提供相应优先等级的服务。
4)可靠性
通信的一个基本目的就是保证信息被完整地、准确地、实时地从源节点传输到目的节点。保证信息传输的可靠性也是通信的一个重要原则。
在网络中有些服务如HTTP.FTP等,对于数据的可靠性要求较高,在使用这些服务时,必须保证数据包能够完整无误地送达。而另外一些服务如邮件、即时聊天等并不需要这么高的可靠性。根据这两种服务不同的需求,对应地有面向连接的TCP协议和面向无连接的UDP协议(可能会出现分组丢失的问题,不能保证分组的有效传输,但实时性较好,适合实时业务)。
2.数据为中心的服务质量
1)真实性
数据的真实性是用于衡量使用数据的用户得到的数值和数据源的实际数据及真值之间的差异,对于数据真实性有三种理解:接收方和发送方持有数据的数值间的偏差程度;接收方和发送方持有数据所包含的内容在语义上的吻合程度;接收方和发送方持有数据所指代范围的重合程度。
2)安全性
数据安全的要求是通过采用各种技术和管理措施,使通信网络和数据库系统正常运行,从而确保数据的可用性、完整性和保密性,保证数据不因偶然或恶意的原因遭受破坏、更改和泄露。
3)完整性
数据完整性是指数据的精确性和可靠性。它防止数据库中存在不符合语义规定的数据和防止因错误信息的输入/输出造成无效操作或错误信息的出现,确保数据库中包含的数据尽可能地准确和一致。
数据完整性有四种类型:实体完整性、域完整性、引用完整性和用户定义完整性。
4)冗余性
数据冗余是指数据库的数据中有重复信息的存在,数据冗余会对资源造成浪费。完全没有任何数据冗余并不现实也有弊端。
一方面,应当避免出现过度的数据冗余,因为会浪费很多的存储空间,尤其是存储海量数据的时候。降低数据冗余度不仅可以节约存储空间,也可以提高数据传输效率。
另一方面,必须引入适当的数据冗余。数据库软件或操作系统的故障、设备的硬件故障、人为的操作失误等都将造成数据丢失和毁坏。为消除这些破坏数据的因素,数据备份是一个极为重要的手段。数据备份的基本思想就是在不同的地方重复储存数据,从而提高数据的抗毁能力。
5)实时性
对数据的实时性要求,与应用的背景有着密切关系。典型应用主要包括工业生产控制、应急处理、灾害预警等。
3.用户为中心的数据质量
无论网络通信还是各种数据,其最终目的是为不同的用户提供不同质量的服务。因此,用户对网络通信服务、数据质量的评价是最有意义的。体验质量(QualityofExperience,QoE)是指用户对设备、网络和系统、应用或业务的质量和性能的主观感受。
1)智能化
对于用户体验到的智能化服务,以搜索引擎百度(www.baidu.com)的功能为例。
户体验到的智能化服务
搜索引擎的目的是为不同的搜索提供准确的信息。用户搜索意图的研究主要包括两个步骤:一是通过搜索引擎获取用户意图;二是对用户意图进行分类。
用户搜索意图分为三类。
  • (1I导航型:寻找某类网站,该网站能够提供某个行业领域的导航。 
  • (2)信息型:寻找网站上静态形式的信息,这是一种用户常见的查询。
  • (3)事务型:寻找某类垂直网站,这类站点的信息能够直接被用户做进一步的在线操作,如购物、游戏等。
对于搜索引擎,通过获取和分类用户搜索意图可以实现为用户提供独特、贴切用户需求的信息,以满足用户个性化的需求,这就是智能化的重要体现。
2)吸引力
有用的服务是对用户产生吸引力的最重要因素,有用是针对用户的需求而言的。例如,电子邮件的出现使得在世界范围内信息传递的时间大大缩短,并极大降低邮件交互的成本。即时聊天工具如微信的出现,使得人们以低成本、友好的界面进行信息交互,并且交互及时性得到很好的保障,使得微信得以快速普及,很快形成庞大的用户群体。
新颖性是提升吸引力的重要措施,这种新颖性可以是服务内容上的,也可以是服务形式上的,前者是指设计出新颖的内容、功能,后者是对已有内容、功能进行新颖的组合,例如手机通话和短信是移动运营商提供的一种内容吸引的服务,而微信将通话和短信等功能重新组合等则属于提供新颖的服务形式。
人机交互过程中也强调通过人的感官建立服务的吸引力。人的感观包括触觉器官、视觉器官、听觉器官、嗅觉器官和味觉器官等。人通过感官感知世界。用户通过各种感官,体验服务质量。服务应该通过各种感官向用户传达信息,让服务本身产生吸引力。例如,通过增强现实、虚拟现实产生视觉上的吸引力。
3)友好度
服务的设计,应当符合人体工学原理,就是使工具使用方式尽量适合人体自然形态。这样就可以使人在使用工具的时候身体和精神不需要任何主动适应,减少使用工具造成人的疲劳。容易使用是友好度的另外一个重要方面。在服务过程中,人机界面的交互中相关的提示应该易于用户理解,并且服务本身具备对用户误操作的纠错能力。
避免服务过程过于复杂,友好度是制约用户接受服务的重要因素,必须重视。