物联网服务平台技术
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

3.2 物联网服务平台架构的概念模型

从概念上来说,“架构”是一个抽象的泛化模型,包含了与“物联网”领域相关的所有的抽象元素及其关系,是对主要概念元素、目标系统实际元素、它们之间的关系及体系结构设计原则的高层次描述,其中的概念元素泛指系统预期的功能、涵盖的数据、抽象的服务等。

3.2.1 物联网服务平台架构核心概念的抽象

当前,物联网服务平台架构技术的研究通常采用面向具体应用领域的方式进行,难以应对物联网设备的异构性问题,更没有完成对异构物联网设备在理论层面的抽象描述,无法实现跨应用平台环境下物联网应用实例间的互通。因此,需要构建统一的抽象模型对异构设备进行建模,为不同应用平台实例间的互通提供支持,实现设备数据与操作的一致性,并避免应用与设备的耦合度过高。同时,考虑到物联网设备互联网络的动态特性,需要利用抽象灵活的数据结构对网络拓扑进行表征及维护,以最小的开销为设备的数据同步与交互操作提供支持。

通用物联网服务平台架构如图3-2所示,作为支撑物联网设备与物联网应用的服务平台,其目标是使异构的物联网设备与物联网应用解耦,从而打破现有物联网应用的垂直开发模式,解决物联网服务平台架构的应用局限和封闭性问题,实现各平台实例间透明的互联互通。

img

图3-2 通用物联网服务平台架构

物联网服务平台架构应该具有以下技术特性。

(1)通用性。物联网服务平台架构的最终目标是带动物联网相关产业的整体发展,因此要具有足够的通用性,能够为各行业、各领域提供通用的物联网服务。

(2)先进性。物联网服务平台架构的设计需要充分考虑物联网技术的未来发展趋势,从而保持其先进性。

(3)兼容性。物联网服务平台架构应该充分利用现有的通信方式,结合电信系统与互联网的特点与优势,以互联网为基础,兼容现有的物联网应用技术。

(4)可扩展性。物联网服务平台架构模型应预留灵活的升级接口,并在技术层面保留充分的升级空间。

(5)标准化。物联网服务平台架构模型应充分采用业界开放标准,并利用标准的扩展及推广。

互联网是完成人与人、人与信息交互的网络,而物联网是完成人与物体、物体与物体交互的网络。物体与用户之间实际上并不能直接交互,必须通过某些操作接口或者交互接口实现。通过这些操作接口,用户可以获得物体的属性或者改变物体的状态。例如,用户可以通过网络远程操作打开和关闭摄像头,获取图像。在网络域中,这些操作接口其实就是软件领域中的服务。因此,从最本质的方面来说,物联网是使物理世界中的对象和位置能够在数字世界中具有相应表示的一种提供技术支持的基础设施,而我们要在数字世界中表示物理世界中的对象的原因是期望使用“软件”来实现对“物”的远程监控,并与物理世界进行交互。

从另一个维度来说,用户的直接交互对象并不是物体,而是物体在网络空间中的映像,即一个虚拟对象,这个虚拟对象就是物体在网络空间中的映像。这个虚拟对象是物体的属性、参数、操作接口(服务)在网络中的聚合。假设将这个对象称为虚拟实体(Virtual Entity,VE),则物体、虚拟实体交互模型如图3-3所示。

img

图3-3 物体、虚拟实体交互模型

基于上述最基本的模型抽象描述,根据视点的不同,可以用多个不同的视图来描述特定领域的体系结构参考模型,以捕获与模型相关的特定属性。在工程领域中广泛采用的视图有功能视图、信息视图、部署视图等,而所有视图的构建都是基于该领域的领域模型来实现的。领域模型是针对特定领域的“问题域”的最高层次的抽象表述,它通过领域场景的构建和用例分析来获得概念的抽象及功能的需求,以及非技术性约束的标识;是建立设计目标和原则、细化概念视图、确定所需功能及描述功能和信息逻辑的基础。

3.2.2 物联网服务平台架构的领域模型

领域模型用于定义特定领域中的主要概念,它从业务角色内部的观点来定义业务用例,是对业务角色和业务实体之间应该如何联系和协作以执行业务的一种抽象表述,它关注的是模型中的对象在业务中所承担的角色及其职责。

由于领域模型主要用来抽象某一领域中的核心概念及其基本属性,以及这些概念之间的相互关系,因此领域模型相对稳定,即使根据该领域模型所建立的体系结构参考模型(Architecture Reference Model,ARM)中的细节可能会随着时间的推移而不断进化或演变,领域模型中所抽象出的概念仍在一段相当长的时间内保持不变。领域模型一般使用统一建模语言(Unified Modeling Language,UML)来表示领域内的主要概念及彼此的关系,它可以作为相关领域研究人员之间、跨不同领域工作人员之间进行技术交流的有力工具。

可以看出,物联网和当今互联网有一个根本的区别:互联网服务是一个内容和服务的虚拟世界(尽管这些服务托管在真实的物理机器上),而物联网则完全通过互联网与真实的物理实体进行交互,即对于物联网模型来说,物的交互相对于通信的交互得到了提升。由此可知,与物理环境的交互是物联网技术的核心思想,因此需要在领域模型中明确地表述这种思想所涉及的核心对象及彼此间的关系。一个简化的物联网系统架构的领域模型如图3-4所示。该模型抽象出了物联网环境中最基本、最核心的概念(模型)及其相互关系。

在物联网环境中,一类最基本的交互是人或应用(程序)与物理世界中的对象或位置之间的交互。因此,用户(User)和物理实体(Physical Entity)是领域模型中的两个关键概念。模型中的用户可以是人,交互可以是物理的,这种物理上的交互是人类为了达到某一目的而产生的意图。此外,人类用户还可以选择通过服务(Service)或应用与物理环境进行交互,在这种情况下,应用(程序)也将承担领域模型中的用户角色。

与虚拟实体相关联的数字构件是仅存在数字世界中的构件,它可以是被动的(如数据库条目),也可以是主动的(如应用程序软件)。此外,领域模型将由物理实体和虚拟实体共同组成的特殊的设备描述为加强实体(Augmented Entity),即由两种不同类型的实体组合而成的实体。

img

图3-4 一个简化的物联网系统架构的领域模型

为了通过虚拟实体对相应的物理实体进行监控或实现彼此交互,物理实体或其所处的环境中需要装备特定类型的设备(Device),或者将特定的设备嵌入其环境中。设备通常是实现物理世界和虚拟环境之间交互的物理构件,也可以是完成某种类型的应用的物理实体,如管理应用程序。在物联网领域模型中,三种最重要的设备类型如下。

(1)传感器(Sensor):可以是简单的或复杂的设备,通常包含一个变换器(Transducer),以将物理属性(如温度)转换为电信号。一般来说,这类设备还具有将模拟电信号转换为所需的数字信号、进行简单计算、存储中间结果的能力,以及对获取的数字信号进行传输和接收命令的通信能力。

(2)执行器(Actuator):这类设备也可以是简单的或复杂的设备,一般内部包含变换器,以将电信号转换为物理特性的变化(如打开开关或启动电机)。这类设备还需要具备通信能力,中间命令的存储、处理及将数字信号转换为模拟电信号的能力。

(3)标签(Tag):标签用于标识其所依附的物理实体。在现实世界中,标签既可以是设备,也可以是物理实体,但不能二者都是。标签作为设备的一个例子是射频识别(RFID)标签,而作为物理实体的典型应用是纸质的不可变的条形码或快速响应(QR)代码。无论是电子设备标签还是纸质实体标签都包含一个唯一的标识,并且可以通过光学手段(条形码或二维码)或无线电信号(RFID标签)读取。本质上,用于操作标签的阅读器通常是一个传感器,特别是在可写RFID标签的情况下,传感器和执行器可以组合在一起。

设备也可以是多种设备的集合,如传感器节点可以包含温度传感器、发光二极管(执行器)和蜂鸣器(执行器)等。对于物联网中的任何设备来说,其通信、处理、存储,以及能量储备的能力决定了其所采用的设计决策,如设备是否应内置所有资源,为了节约能源设备是否应具备睡眠模式,收集到的数据是否可以保存在本地或必须尽快传播等。

领域模型中的资源(Resource)是为控制物理实体而提供的数据或作为数据端点的软件组件。资源有两种类型,即设备资源(on-Device Resources)和网络资源(Network Resources)。设备资源通常驻留在设备自身或者设备所连接的物理实体的控制点上,并且能够为设备提供所需的信息。例如,部署在房间内的温度节点上的温度传感器所承载的软件组件能够响应房间温度的查询操作。网络资源是托管在网络或云中的软件组件。一个虚拟实体可能与多种资源相关联,这些资源能够为虚拟实体提供信息或控制由虚拟实体所表示的物理实体。资源有以下多种类型。

(1)传感器资源:用于提供传感器数据。

(2)执行机构资源:能够提供驱动能力或执行器的状态。

(3)处理器资源:将所获得的传感器数据作为输入,并提供加工后的数据作为输出。

(4)存储器资源:存储与物理实体相关的数据。

(5)标签资源:提供识别物理实体的数据。

模型通过资源的概念将(监视或控制)功能抽象为具有开放和标准化接口的服务(Service),从而隐藏了资源的底层实现细节,即可以认为服务是用户通过虚拟实体与物理实体进行交互的数字构件。由此可知,与装备了某种设备的物理实体相关联的虚拟实体所使用的资源一定与相应的服务资源关联。虚拟实体与服务之间的这种关联使得虚拟实体可以通过多个冗余资源或服务进行监视或控制。因此,维护这些关联对于用户对资源进行查找或发现非常重要。在物联网环境中,服务可以根据其抽象程度分为以下三类。

(1)资源级服务(Resource-Level Services):通常采用开放设备上的资源来实现设备所提供的功能。此外,这种类型的服务通常需要考虑服务质量方面的相关问题,如安全性、可用性和服务性能等问题。除设备自身的资源外,还存在驻留在功能更强大的服务器或云中的网络资源,网络资源能够提供资源级服务并抽象实际资源的物理位置。资源级服务通常具有基于资源自身标识来访问资源信息的接口。

(2)虚拟实体级服务(Virtual Entity-Level Services):提供关于虚拟实体的信息及交互功能,因此其服务接口通常包含虚拟实体标识。

(3)集成服务(Integrated Services):是由资源级服务和虚拟实体级服务的任何组合所构成的服务。

为了实现用户通过数字环境与物理世界进行交互,在物联网系统中对物理实体的识别非常重要,典型实现方式如下。

(1)使用物理实体的自然特征进行识别。

(2)使用附加到物理实体上的标签进行识别。

除了识别问题,位置和时间信息对于收集特定的物理实体信息并在虚拟实体中进行表示也很重要。因此,可以将虚拟实体的位置(通常是位置的时间戳)建模为虚拟实体的属性,并通过位置感知资源来获取该属性。