物联网的中间件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第11章 物联网的中间件
应用需求组件
接 收 应 用 需 求 采 集 网 络 信 息
跨平台调度组件
消息分析模块
消息分配模块
一类协议接口
二类协议接口
传感网安全中 间件体系架构
信息处理转换
统一化处理组件
制 定 安 全 策 略
安 全 管 理 服 务 组 件
接口
安全模块提供组件
密钥服务 提供模块
入网认证服 务提供模块
根据组件提供的功能将安全中间件分为3 层。 应用需求组件:为不同类型网络用户的应用需求提供统一的应用编程接口,是 中间件系统软件和应用需求之间交流的窗口。 跨平台安全调度组件:对应用接口需求进行分析,以及网络平台分析,转化统 一的安全接口函数。 安全模块组件:提供各种安全服务模块和可扩展模块。 安全管理组件:是安全中间件的核心,是安全中间件灵活配置的体现,提供对 所有安全组件的管理功能,加载安全模块,可制定并发布安全策略。
(3) 通用API模块:通用API模块为网关内部各软件模块提供常用的通用 函数功能封装,如链表、哈希表、动态数组等常用数据结构操作,为软 件跨平台运行而设计的线程库、动态连接库、线程同步相关API等。
(4) 中间件管理模块:网关软件基于中间件架构,中间件管理模块实现 了中间件管理机制,包括中间件加载卸载、中间件注册注销、中间件服 务注册注销、中间件遍历、中间件服务遍历等功能。 (5) 消息管理模块:网关各中间件间通过消息的方式通信,消息管理模 块提供消息队列创建销毁、消息分配释放、消息发送接收及路由等功能。 (6) 功能性中间件模块:网关的业务类功能由各中间件模块实现。基本 功能性中间件模块包括:自有南向协议适配模块、北向平台适配模块、 网关管理中间件、设备管理中间件、定位应用模块、RPC中间件模块等。
统 计
代 码 管 理
域中间件
中间件管理器
中间件接口 网络协议栈 运行环境 (OS抽象/虚拟机) 操作系统(OS) 硬件抽象(HAL)
通用中间件 支撑接口
支撑软件
硬件
硬件
第11章 物联网的中间件
(1) 通用中间件。在底层运行支撑软件的支持下实现一系列基本的节点功 能,主要包括以下两个方面:①为域中间件提供基本的业务支撑服务;②实现 基本的管理功能。 (2) 域中间件。位于通用中间件之上。域中间件在单个或多个通用中间 件提供的基本功能服务基础上,实现较为复杂的业务功能,向上为应用提供 配置、控制、数据访问接口。
中间件是介于操作系统(包 括底层通信协议)和各种分布 式应用程序之间的一个软件 层。中间件技术给用户提供 了一个统一的运行平台和友 好的开发环境,物联网中间 件是减小用户高层应用需求 与网络复杂性差异的有效解 决方案,对加快物联网大规 模产业化发展具有重要作用。
物联网中间件总体架构 物联网中间件设计方法
性,包括硬件、操作系统、数据库等等。造成异构的原 因源自市场竞争、技术升级以及保护投资等因素。
实现互操作:在物联网中,同一个信息采集设备所采集的
信息可能要供给多个应用系统,不同的应用系统之间的数 据也需要相互共享和互通。
数据的预处理:物联网的感知层将采集海量的信息,如果
把这些信息直接传输给应用系统,那应用系统对于处理这 些信息将不堪重负。应用系统想要得到的并不是原始数据, 而是综合性信息。
第11章 物联网的中间件
11.1.3物联网中间件现状与发展趋势
随着物联网应用的普及和研究的深入以及Internet的发展,目前的中 间件技术主要呈现出三方面的趋势: 首先,中间件越来越多地向传统运行层渗透,提供更强的运行支撑, 特别地,分布式操作系统的诸多功能正逐步融入中间件。 其次,应用软件需要的支持机制越来越多地由中间件提供,中间件不 再局限于提供适用于大多数应用的支持机制,那些适用于某个领域内大部 分应用的支持机制(这些机制往往无法在其它领域使用)也开始得到重视。 最后,物联网中间件必将与云计算相结合,全面实现虚拟化,虚拟化是 实现资源整合的一种非常重要的技术手段。
(3) 中间件容器。域中间件、通用中间件均运行在中间件容器 内,受中间 件容器的统一控制与调度。每个中间件组件都提供至少一个服务访问接口 , 服务访问接口是中间件与其他软件模块之间信息交互的唯一通道。中间件容 器的另一项重要功能就是控制中间件组件的加载与卸载,并在模块加载与卸 载时向其他相关模块发送通知。
第11章 物联网的中间件
魏
旻
第11章 物联网的中间件
知识要点 物联网中间件简介
能力要求 (1) 了解什么是物联网中间件 (2) 了解中间件在物联网中的三个作用 (3) 了解物联网中间件的发展趋势 (1) 理解物联网系统服务分层结构 (2) 了解典型的无线传感器网络中间件软件体系结构 (1) 理解物联网中间件软件设计原则 (2) 了解物联网中间件主要设计方法 (1) 理解传感网网关中间件结构 (2) 理解传感网节点中间件结构 (3) 了解传感网安全中间件结构
第11章 物联网的中间件
11.4物联网典型中间件
11.4.1传感网网关中间件
传感网网关中间件软件系统结构(如下图)主要分为6个部 分:主控模块、公共信息中间件、通用API模块、中间件管理模 块、消息管理模块、功能性中间件模块。
API
公共信息库
应用中间件
网关管理 中间件
API 插件管理
设备管理 中间件 消息
网络适配器 无线传感网操作系统核心 无线传感网络基础设施
第11章 物联网的中间件
1.网络适配层
在该层中,网络适配器实现对网络底层(无线传 感器网络基础设施、操作系统)的封装。
2.基础软件层
(1) 网络中间件组件 (2) 配置中间件组件 基础软件层 (3) 功能中间件组件 (4) 管理中间件组件 (5)安全中间件组件
第11章 物联网的中间件
11.2 物联网中间件系统总体架构
物联网服 务分层
全局业务服务
局域服务用于底层 传感器节点之间、 底层传感器节点和 传感网网关间的业 务交互。
局域服务
全局业务服务用 于传感网网关、 主干网服务器、 远程终端等之间 的业务交互。
第11章 物联网的中间件
下图是物联网系统服务的分层结构图。
第11章 物联网的中间件
避免产品 的重复开 发过程 代码可移 植 避免产品 的重复开 发过程
中间件 的目标
屏蔽安全 技术细节 减少系统 维护、运 行和管理 的工作量 实现平台 无关性
第11章 物联网的中间件
11.2.2 中间件 在物联 网中的 作用
屏蔽异构性:异构性表现在计算机的软硬件之间的异构
本地服务
传感器
传感网网关 蜂窝网络 传感感知 数据查询/订阅/发布 执行与控制 定位 设备管理 代码管理 安全管理 业务管理 日志
管理服务
应用服务
公众服务
智能家居 远程医疗 设备管理 公众用户
互联网
源自文库代码管理
数据转换 命令分发
企业服务
认证与授权 计费 日志
工业监控 智能农业
企业用户
传感器网路
传感网运营商
典型的物联网中间件结构
第11章 物联网的中间件
11.1 物联网中间件简介
11.1.1 什么是物联网中间件
中间件是介于操作系统(包括底层通信协议)和各种分布式应用程序之间的一个 软件层。中间件面向传感器网络是一项新兴技术,传统的中间件技术如DCOM、COR BA等不能直接运用,同时, 物联网的应用类型与涉及的领域也远远超过传统中间 件设计所能涵盖的领域。 因此,需要设计一种简单、易实现、轻量级的中间件来满 足物联网本身的特性及广泛的应用需求。 设计物联网中间件软件时,需要考虑如下需求要素。 (1)健壮性。 (2) 灵活性和可扩展性。 (3) 简单性。
应用业务适配层
应用业务适配器
开发环境
应用层开发
工具集
无 线 传 感 网 络 应 用 支 撑
应用框架接口
基础软件层
管 理 中 间 件
功能中间件
配置中间件
网络中间件
安 全 中 间 件
无线 传感 器网 络节 点嵌 入式 软件 结构
无 线 传 感 器 网 中 间 件 和 平 台 软 件 体 系 结 构
网络适配层
第11章 物联网的中间件
11.3物联网中间件设计方法
1.基于虚拟机的物联网网络中间件 该类中间件一般由虚拟机、解释器和代理组成,提供虚拟机环境以简 化应用的开发和部署。Mate是这类中间件的典型代表,它是一种建立在Tin yOS基础上的传感器网络虚拟机。 2.基于数据库的物联网中间件 在该类中间件中,整个物联网被看作是一个虚拟的数据库系统,为 用户的查询提供简单的接口。Cougar、TinyDB及SINA是这类中间件的典 型代表。 3.基于应用驱动的物联网中间件 这类中间件主要由应用来决定网络协议栈的结构,允许用户根据 应用需求调整网络,其典型代表为MILAN中间件。 4.面向消息的物联网中间件 该类中间件主要采用异步模式和生产者/消费者模式,其典型代表为M ires。 5.基于移动代理的物联网中间件 基于移动代理的物联网中间件提供抽象的计算任务给上层应用,尽可 能使应用模块化,以便可以更容易地进行代码传输。Agilla是其典型代表。
第11章 物联网的中间件
11.4.2 传感网节点中间件
按其功能可分为通用中间件 (Common Middleware)和域中间件(Domain Middleware)。低功耗传感网节点中间件体系架构如下图:
智能家居 工业监控
域中间件
中间件管理器
传 感 探 测
网 络 管 理
安 全 管 理
定 位 通用中间件
第11章 物联网的中间件
3.应用开发层
(1) 应用框架接口 (2) 开发环境 (3) 工具集
4.应用业务适配层
应用业务适配层对各种应用业务进行封装,解决基 础软件层的变化和接口的不一致性问题。
第11章 物联网的中间件
11.3物联网中间件设计方法
物联网具有自身体系结构的差异性、网络中节点的部署和数据采集的多样性 以及通信的异构性等特点,在设计物联网中间件软件时必须遵循以下原则。 (1) 由于节点能量、计算、存储能力及通信带宽有限,因此传感网中间件必 须是轻量级的,且能够在性能和资源消耗间取得平衡。 (2) 物联网环境较为复杂,因此中间件软件还应提供较好的容错机制、自适 应和自维护机制。 (3) 中间件软件的下层支撑是各种不同类型的硬件节点和操作系统(TinyOS、 MantisOS、SOS),因此,其本身须能够屏蔽网络底层的异构性。 (4) 中间件软件的上层是各种应用,因此,它还需要为各类上层应用提供统 一的、可扩展的接口,以便于应用的开发。 围绕物联网在信息交互、任务分解、节点协同、数据处理和异构抽象等方面 的设计目标,物联网中间件设计方法主要可分为以下几类。
服务提供商
第11章 物联网的中间件
资源调度 技术
无线传感网 中间件关键 技术
安全保护 技术
异构系统 通信技术 分布式管 理技术
第11章 物联网的中间件
网络适配层 基础软件层
• 中间件软件 体系结构
应用开发层 应用业务适配层
第11章 物联网的中间件
典型的无线传感器网络中间件软件体系结构如下图:
基于无线传感器网络的应用业务
鉴别服务 提供模块
检测服务 提供模块
其他
发 布 安 全 命 令
RPC中间件
消息
主控模块
消息路由/分发模块API 消息
API
消息 北向适配 中间件
通用API
南向适配 中间件
南向网络接口
北向网络接口
第11章 物联网的中间件
(1) 主控模块:是网关启动后最先运行的软件模块。主控模块负责初始 化网关软件系统、解析配置文件、加载中间件、处理系统信号。 (2) 公共信息中间件:公共信息中间件存放网关内部各模块经常需要访 问的公共配置、状态信息。
(4) 底层支撑软件。底层支撑软件也WSN设备中间件正常运行所必需的软 件组成部分,这部分软件包括操作系统(OS)、软件运行环境(Runtime Suppor t)、硬件设备抽象模块(HAL)和网络协议栈(Network Stack)。
第11章 物联网的中间件
11.4.3传感网安全中间件
传感网安全中间件的具体内容如下。 (1) 提供安全机制(在协议栈)。 (2) 安全管理功能(部分在协议栈,上位机配合,功能可方便扩展)。 (3) 安全监控功能(上位机配合)。